@base-framework/atoms 1.1.0 → 1.1.3
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/atoms.js +1 -1
- package/dist/atoms.js.map +3 -3
- package/dist/types/atoms.d.ts +83 -83
- package/package.json +2 -1
package/dist/atoms.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Atom as e}from"@base-framework/base";import{Builder as
|
|
1
|
+
import{Atom as e}from"@base-framework/base";import{Builder as v,dataBinder as q}from"@base-framework/base";var T=t=>({tag:"comment",textContent:`${t.type} placeholder`,onCreated:t.onCreated,onDestroyed:t.onDestroyed});import{Data as j}from"@base-framework/base";var g={xs:0,sm:640,md:768,lg:1024,xl:1280,"2xl":1536},B=t=>t>=g["2xl"]?"2xl":t>=g.xl?"xl":t>=g.lg?"lg":t>=g.md?"md":t>=g.sm?"sm":"xs",G=(t,o)=>{let r=g[t]||0,a=g[o]||0;return r>=a},p=new j({size:null,width:0}),J=()=>{if(typeof window>"u")return;let t=window.innerWidth,o=B(t);p.size=o,p.width=t;let r=()=>{let a=window.innerWidth,s=B(a);(a!==p.width||s!==p.size)&&(p.width=a,p.size=s)};return window.addEventListener("resize",r),()=>{window.removeEventListener("resize",r)}},Z=null;typeof window<"u"&&(Z=J());var d=t=>o=>typeof o!="function"?null:f(p,"size",(r,a,s)=>G(r,t)?o(p.size,s):null),L=d("xs"),k=d("sm"),w=d("md"),R=d("lg"),X=d("xl"),N=d("2xl");var m=t=>o=>typeof o!="function"?null:f(p,"size",(r,a,s)=>r===t?o(r,s):null),P=m("xs"),z=m("sm"),_=m("md"),H=m("lg"),M=m("xl"),I=m("2xl"),C=t=>o=>typeof o!="function"?null:f(p,"size",(r,a,s)=>t.includes(r)?o(p.size,s):null),U=C(["xs","sm"]),F=C(["md"]),W=C(["lg","xl","2xl"]);var c={PARENT:"parent",STATE:"state",ROUTE:"route"},K=(t,o)=>{switch(o){case c.PARENT:return tt(t);case c.STATE:return t.state;case c.ROUTE:return t.route;default:return null}},A=(t,o,r=null)=>(a,s,l)=>a===o?t(a,s,l):r,b=(t,o=null)=>A(t,!0,o),y=(t,o=null,r=null,a=2)=>(...s)=>{let l=[...s],i=l.pop();return typeof i!="function"?null:Q({onCreated:(O,x)=>{let u=[...l];if(u.length<a){let $=K(x,t);u.unshift($)}let S=o||u[1],E=r?r(i,u):i,Y=V(E,O,S,x);q.watch(O,u[0],S,Y)}})},h=(t,o,r)=>(...a)=>{let s=[...a],l=typeof s[0]=="function"?s[0]:s[1];return typeof l!="function"?null:Q({onCreated:(i,O)=>{let x=[...s];if(x.length<2||typeof x[0]=="function"){let E=K(O,t);x.unshift(E)}let u=r(l,x),S=V(u,i,o,O);q.watch(i,x[0],o,S)}})},V=(t,o,r,a)=>s=>{o._prevEle&&(v.removeNode(o._prevEle),o._prevEle=null);let l=t(s,o,a);if(l==null)return;let i=v.build(l,null,a);o._prevEle=i.childNodes[0],o.parentNode.insertBefore(i,o.nextSibling)},Q=t=>T({type:"on",onCreated:t.onCreated,onDestroyed:o=>{o._prevEle&&(v.removeNode(o._prevEle),o._prevEle=null)}}),tt=t=>t.data?t.data:t.context&&t.context.data?t.context.data:t.state?t.state:null,f=y(c.PARENT),ot=y(c.STATE),et=y(c.ROUTE),nt=y(c.PARENT,null,(t,o)=>A(t,o[2]),3),rt=y(c.STATE,null,(t,o)=>A(t,o[2]),3),st=h(c.PARENT,"loaded",(t,o)=>{let r=o.length===3?o[2]:null;return b(t,r)}),at=h(c.STATE,"loaded",(t,o)=>{let r=o.length===3?o[2]:null;return b(t,r)}),ct=h(c.PARENT,"open",t=>b(t)),pt=h(c.STATE,"open",t=>b(t));import{Builder as D}from"@base-framework/base";var lt=(t,o,r)=>{o._prevEle&&(D.removeNode(o._prevEle),o._prevEle=null);let a=t(r);if(a==null)return;let s=D.build(a,null,r);o._prevEle=s.childNodes[0],o.parentNode.insertBefore(s,o.nextSibling)},it=t=>T({type:"use",onCreated:t.onCreated,onDestroyed:o=>{o._prevEle&&(D.removeNode(o._prevEle),o._prevEle=null)}}),xt=t=>typeof t!="function"?null:it({onCreated:(o,r)=>{lt(t,o,r)}});var n=(t,o=null)=>({...t,children:o}),Bt=t=>({...t,tag:"DOCTYPE"}),Lt=e((t,o)=>n({...t,tag:"html"},o)),kt=e((t,o)=>n({...t,tag:"script"},o)),wt=e((t,o)=>n({...t,tag:"style"},o)),Rt=e((t,o)=>n({...t,tag:"head"},o)),Xt=t=>({...t,tag:"title"}),Nt=t=>({...t,tag:"meta"}),Pt=t=>({...t,tag:"link"}),zt=e((t,o)=>n({...t,tag:"body"},o)),_t=e((t,o)=>n(t,o)),Ht=e((t,o)=>n({...t,tag:"dialog"},o)),Mt=e((t,o)=>n({...t,tag:"span"},o)),It=e((t,o)=>n({...t,tag:"p"},o)),Ut=e((t,o)=>n({...t,tag:"a"},o)),ut=e((t,o)=>n({...t,tag:"button"},o)),Ft=e((t,o)=>ut({...t,type:"submit"},o)),Wt=e((t,o)=>n({...t,tag:"ul"},o)),qt=e((t,o)=>n({...t,tag:"li"},o)),Kt=e(t=>n({...t,tag:"img"})),Vt=e(t=>n({...t,tag:"br"})),Qt=e(t=>n({...t,tag:"hr"})),Yt=e((t,o)=>n({...t,tag:"text"},o)),$t=e((t,o)=>n({...t,tag:"h1"},o)),jt=e((t,o)=>n({...t,tag:"h2"},o)),Gt=e((t,o)=>n({...t,tag:"h3"},o)),Jt=e((t,o)=>n({...t,tag:"h4"},o)),Zt=e((t,o)=>n({...t,tag:"h5"},o)),to=e((t,o)=>n({...t,tag:"h6"},o)),gt=e(t=>n({...t,tag:"input"})),oo=e((t,o)=>n({...t,tag:"label"},o)),eo=e(t=>gt({...t,type:"checkbox"})),no=e((t,o)=>n({...t,tag:"section"},o)),ro=e((t,o)=>n({...t,tag:"article"},o)),so=e((t,o)=>n({...t,tag:"header"},o)),ao=e((t,o)=>n({...t,tag:"footer"},o)),co=e((t,o)=>n({...t,tag:"nav"},o)),po=e((t,o)=>n({...t,tag:"aside"},o)),lo=e((t,o)=>n({...t,tag:"figure"},o)),io=e((t,o)=>n({...t,tag:"figcaption"},o)),xo=e((t,o)=>n({...t,tag:"main"},o)),uo=e((t,o)=>n({...t,tag:"video"},o)),go=e((t,o)=>n({...t,tag:"audio"},o)),mo=e((t,o)=>n({...t,tag:"table"},o)),Oo=e((t,o)=>n({...t,tag:"tr"},o)),fo=e((t,o)=>n({...t,tag:"th"},o)),yo=e((t,o)=>n({...t,tag:"td"},o)),So=e((t,o)=>n({...t,tag:"thead"},o)),To=e((t,o)=>n({...t,tag:"tbody"},o)),bo=e((t,o)=>n({...t,tag:"tfoot"},o)),ho=e((t,o)=>n({...t,tag:"form"},o)),Eo=e((t,o)=>n({...t,tag:"select"},o)),Co=e((t,o)=>n({...t,tag:"option"},o)),vo=e((t,o)=>n({...t,tag:"textarea"},o)),Ao=e((t,o)=>n({...t,tag:"canvas"},o)),Do=e((t,o)=>n({...t,tag:"progress"},o)),Bo=e((t,o)=>n({...t,tag:"blockquote"},o)),Lo=e((t,o)=>n({...t,tag:"pre"},o)),ko=e((t,o)=>n({...t,tag:"code"},o)),wo=e((t,o)=>n({...t,tag:"ol"},o)),Ro=e((t,o)=>n({...t,tag:"dl"},o)),Xo=e((t,o)=>n({...t,tag:"dt"},o)),No=e((t,o)=>n({...t,tag:"dd"},o)),Po=e((t,o)=>n({...t,tag:"fieldset"},o)),zo=e((t,o)=>n({...t,tag:"legend"},o)),_o=e((t,o)=>n({...t,tag:"meter"},o)),Ho=e((t,o)=>n({...t,tag:"iframe"},o)),Mo=e((t,o)=>n({...t,tag:"details"},o)),Io=e((t,o)=>n({...t,tag:"summary"},o)),Uo=e((t,o)=>n({...t,tag:"em"},o)),Fo=e((t,o)=>n({...t,tag:"strong"},o)),Wo=e((t,o)=>n({...t,tag:"small"},o)),qo=e((t,o)=>n({...t,tag:"s"},o)),Ko=e((t,o)=>n({...t,tag:"cite"},o)),Vo=e((t,o)=>n({...t,tag:"q"},o)),Qo=e((t,o)=>n({...t,tag:"dfn"},o)),Yo=e((t,o)=>n({...t,tag:"abbr"},o)),$o=e((t,o)=>n({...t,tag:"data"},o)),jo=e((t,o)=>n({...t,tag:"time"},o)),Go=e((t,o)=>n({...t,tag:"var"},o)),Jo=e((t,o)=>n({...t,tag:"samp"},o)),Zo=e((t,o)=>n({...t,tag:"kbd"},o)),te=e((t,o)=>n({...t,tag:"sub"},o)),oe=e((t,o)=>n({...t,tag:"sup"},o)),ee=e((t,o)=>n({...t,tag:"i"},o)),ne=e((t,o)=>n({...t,tag:"b"},o)),re=e((t,o)=>n({...t,tag:"u"},o)),se=e((t,o)=>n({...t,tag:"mark"},o)),ae=e((t,o)=>n({...t,tag:"ruby"},o)),ce=e((t,o)=>n({...t,tag:"rt"},o)),pe=e((t,o)=>n({...t,tag:"rp"},o)),le=e((t,o)=>n({...t,tag:"bdi"},o)),ie=e((t,o)=>n({...t,tag:"bdo"},o)),xe=e(t=>n({...t,tag:"wbr"})),ue=e(t=>n({...t,tag:"comment"}));export{Ut as A,Yo as Abbr,ro as Article,po as Aside,go as Audio,ne as B,le as Bdi,ie as Bdo,Bo as Blockquote,zt as Body,Vt as Br,ut as Button,Ao as Canvas,eo as Checkbox,Ko as Cite,ko as Code,ue as Comment,$o as Data,No as Dd,Mo as Details,Qo as Dfn,Ht as Dialog,_t as Div,Ro as Dl,Bt as Doctype,Xo as Dt,Uo as Em,Po as Fieldset,io as Figcaption,lo as Figure,ao as Footer,ho as Form,$t as H1,jt as H2,Gt as H3,Jt as H4,Zt as H5,to as H6,Rt as Head,so as Header,Qt as Hr,Lt as Html,ee as I,nt as If,rt as IfState,Ho as Iframe,Kt as Img,gt as Input,Zo as Kbd,oo as Label,zo as Legend,qt as Li,Pt as Link,xo as Main,se as Mark,Nt as Meta,_o as Meter,co as Nav,wo as Ol,f as On,N as On2Xl,I as On2XlOnly,W as OnDesktop,R as OnLg,H as OnLgOnly,st as OnLoad,w as OnMd,_ as OnMdOnly,ct as OnOpen,U as OnPhone,et as OnRoute,k as OnSm,z as OnSmOnly,ot as OnState,at as OnStateLoad,pt as OnStateOpen,F as OnTablet,X as OnXl,M as OnXlOnly,L as OnXs,P as OnXsOnly,Co as Option,It as P,Lo as Pre,Do as Progress,Vo as Q,pe as Rp,ce as Rt,ae as Ruby,qo as S,Jo as Samp,kt as Script,no as Section,Eo as Select,Wo as Small,Mt as Span,Fo as Strong,wt as Style,te as Sub,Ft as SubmitButton,Io as Summary,oe as Sup,mo as Table,To as Tbody,yo as Td,Yt as Text,vo as Textarea,bo as Tfoot,fo as Th,So as Thead,jo as Time,Xt as Title,Oo as Tr,re as U,Wt as Ul,xt as UseParent,Go as Var,uo as Video,xe as Wbr};
|
|
2
2
|
//# sourceMappingURL=atoms.js.map
|
package/dist/atoms.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/atoms.js", "../src/on/on.js", "../src/comment.js", "../src/on/on-size.js", "../src/use/use.js"],
|
|
4
|
-
"sourcesContent": ["import { Atom } from '@base-framework/base';\r\nimport { If, IfState, On, On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnLoad, OnMd, OnMdOnly, OnOpen, OnPhone, OnRoute, OnSm, OnSmOnly, OnState, OnStateLoad, OnStateOpen, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly } from './on/on.js';\r\nimport { UseParent } from './use/use.js';\r\nexport { If, IfState, On, On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnLoad, OnMd, OnMdOnly, OnOpen, OnPhone, OnRoute, OnSm, OnSmOnly, OnState, OnStateLoad, OnStateOpen, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly, UseParent };\r\n\r\n/**\r\n * Creates a generic HTML tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {array} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nconst Tag = (props, children) => {\r\n return { ...props, children };\r\n};\r\n\r\n/**\r\n * Creates a Doctype tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Doctype = (props) => ({ ...props, tag: 'DOCTYPE' });\r\n\r\n/**\r\n * Creates an HTML tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {array} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Html = Atom((props, children) => Tag({ ...props, tag: 'html' }, children));\r\n\r\n/**\r\n * Creates a script tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {array} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Script = Atom((props, children) => Tag({ ...props, tag: 'script' }, children));\r\n\r\n/**\r\n * Creates a style tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {array} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Style = Atom((props, children) => Tag({ ...props, tag: 'style' }, children));\r\n\r\n/**\r\n * Creates a head tag.\r\n *\r\n * @param {object} props - Properties for the head element.\r\n * @param {array} children - Children elements of the head.\r\n * @returns {object} - Returns an object representing the head element.\r\n */\r\nexport const Head = Atom((props, children) => Tag({ ...props, tag: 'head' }, children));\r\n\r\n/**\r\n * Creates a title tag.\r\n *\r\n * @param {object} props - Properties for the title element.\r\n */\r\nexport const Title = (props) =>\r\n{\r\n return { ...props };\r\n};\r\n\r\n/**\r\n * Creates a meta tag.\r\n *\r\n * @param {object} props - Properties for the meta element.\r\n * @returns {object} - Returns an object representing the meta element.\r\n */\r\nexport const Meta = (props) => ({ ...props, tag: 'meta' });\r\n\r\n/**\r\n * Creates a link tag.\r\n *\r\n * @param {object} props - Properties for the link element.\r\n * @returns {object} - Returns an object representing the link element.\r\n */\r\nexport const Link = (props) => ({ ...props, tag: 'link' });\r\n\r\n/**\r\n * Creates a body tag.\r\n *\r\n * @param {object} props - Properties for the body element.\r\n * @param {array} children - Children elements of the body.\r\n * @returns {object} - Returns an object representing the body element.\r\n */\r\nexport const Body = Atom((props, children) => Tag({ ...props, tag: 'body' }, children));\r\n\r\n/**\r\n * Creates a div element.\r\n *\r\n * @param {object} props - Properties for the div element.\r\n * @param {array} children - Children elements of the div.\r\n * @returns {object} - Returns an object representing the div element.\r\n */\r\nexport const Div = Atom((props, children) => Tag(props, children));\r\n\r\n/**\r\n * Creates a dialog element.\r\n *\r\n * @param {object} props - Properties for the div element.\r\n * @param {array} children - Children elements of the div.\r\n * @returns {object} - Returns an object representing the dialog element.\r\n */\r\nexport const Dialog = Atom((props, children) => Tag({ ...props, tag: 'dialog' }, children));\r\n\r\n/**\r\n * Creates a span element.\r\n *\r\n * @param {object} props - Properties for the span element.\r\n * @param {array} children - Children elements of the span.\r\n * @returns {object} - Returns an object representing the span element.\r\n */\r\nexport const Span = Atom((props, children) => Tag({ ...props, tag: 'span' }, children));\r\n\r\n/**\r\n * Creates a paragraph (p) element.\r\n *\r\n * @param {object} props - Properties for the paragraph element.\r\n * @param {array} children - Children elements of the paragraph.\r\n * @returns {object} - Returns an object representing the paragraph element.\r\n */\r\nexport const P = Atom((props, children) => Tag({ ...props, tag: 'p' }, children));\r\n\r\n/**\r\n * Creates an anchor (a) element.\r\n *\r\n * @param {object} props - Properties for the anchor element.\r\n * @param {array} children - Children elements of the anchor.\r\n * @return {object} - Returns an object representing the anchor element.\r\n */\r\nexport const A = Atom((props, children) => Tag({ ...props, tag: 'a' }, children));\r\n\r\n/**\r\n * Creates a button element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Button = Atom((props, children) => Tag({ ...props, tag: 'button' }, children));\r\n\r\n/**\r\n * Creates a submit button element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const SubmitButton = Atom((props, children) => Button({ ...props, type: 'submit' }, children));\r\n\r\n/**\r\n * Creates an unordered list (ul) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ul = Atom((props, children) => Tag({ ...props, tag: 'ul' }, children));\r\n\r\n/**\r\n * Creates a list item (li) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Li = Atom((props, children) => Tag({ ...props, tag: 'li' }, children));\r\n\r\n/**\r\n * Creates an image (img) element.\r\n */\r\nexport const Img = Atom((props) => Tag({ ...props, tag: 'img' }, null));\r\n\r\n/**\r\n * Create a br element.\r\n *\r\n * @param {object} props - Properties for the br element.\r\n * @returns {object} - Returns an object representing the br element.\r\n */\r\nexport const Br = Atom((props) => Tag({ ...props, tag: 'br' }, null));\r\n\r\n/**\r\n * Creates a horizontal rule (hr) element.\r\n *\r\n * @param {object} props - Properties for the hr element.\r\n * @returns {object} - Returns an object representing the hr element.\r\n */\r\nexport const Hr = Atom((props) => Tag({ ...props, tag: 'hr' }, null));\r\n\r\n/**\r\n * Creates a text (text) element.\r\n *\r\n * @param {object} props - Properties for the text element.\r\n * @param {array} children - Children elements of the text element.\r\n * @returns {object} - Returns an object representing the text element.\r\n */\r\nexport const Text = Atom((props, children) => Tag({ ...props, tag: 'text' }, children));\r\n\r\n/**\r\n * Creates a header 1 (h1) element.\r\n *\r\n * @param {object} props - Properties for the h1 element.\r\n * @param {array} children - Children elements of the h1 element.\r\n * @returns {object} - Returns an object representing the h1 element.\r\n */\r\nexport const H1 = Atom((props, children) => Tag({ ...props, tag: 'h1' }, children));\r\n\r\n/**\r\n * Creates a header 2 (h2) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H2 = Atom((props, children) => Tag({ ...props, tag: 'h2' }, children));\r\n\r\n/**\r\n * Creates a header 3 (h3) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H3 = Atom((props, children) => Tag({ ...props, tag: 'h3' }, children));\r\n\r\n/**\r\n * Creates a header 4 (h4) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H4 = Atom((props, children) => Tag({ ...props, tag: 'h4' }, children));\r\n\r\n/**\r\n * Creates a header 5 (h5) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H5 = Atom((props, children) => Tag({ ...props, tag: 'h5' }, children));\r\n\r\n/**\r\n * Creates a header 6 (h6) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H6 = Atom((props, children) => Tag({ ...props, tag: 'h6' }, children));\r\n\r\n/**\r\n * Creates an input element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Input = Atom((props) => Tag({ ...props, tag: 'input' }, null));\r\n\r\n/**\r\n * Creates a label element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Label = Atom((props, children) => Tag({ ...props, tag: 'label' }, children));\r\n\r\n/**\r\n * Creates a checkbox input element.\r\n *\r\n * @param {object} props - Properties for the checkbox input element.\r\n * @returns {object} - Returns an object representing the checkbox input element.\r\n */\r\nexport const Checkbox = Atom((props) => Input({ ...props, type: 'checkbox' }));\r\n\r\n/**\r\n * Creates a section element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Section = Atom((props, children) => Tag({ ...props, tag: 'section' }, children));\r\n\r\n/**\r\n * Creates an article element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Article = Atom((props, children) => Tag({ ...props, tag: 'article' }, children));\r\n\r\n/**\r\n * Creates a header (header) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Header = Atom((props, children) => Tag({ ...props, tag: 'header' }, children));\r\n\r\n/**\r\n * Creates a footer element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Footer = Atom((props, children) => Tag({ ...props, tag: 'footer' }, children));\r\n\r\n/**\r\n * Creates a nav element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Nav = Atom((props, children) => Tag({ ...props, tag: 'nav' }, children));\r\n\r\n/**\r\n * Creates an aside element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Aside = Atom((props, children) => Tag({ ...props, tag: 'aside' }, children));\r\n\r\n/**\r\n * Creates a figure element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Figure = Atom((props, children) => Tag({ ...props, tag: 'figure' }, children));\r\n\r\n/**\r\n * Creates a figcaption element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Figcaption = Atom((props, children) => Tag({ ...props, tag: 'figcaption' }, children));\r\n\r\n/**\r\n * Creates a main element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Main = Atom((props, children) => Tag({ ...props, tag: 'main' }, children));\r\n\r\n/**\r\n * Creates a video element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Video = Atom((props, children) => Tag({ ...props, tag: 'video' }, children));\r\n\r\n/**\r\n * Creates an audio element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Audio = Atom((props, children) => Tag({ ...props, tag: 'audio' }, children));\r\n\r\n/**\r\n * Creates a table element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Table = Atom((props, children) => Tag({ ...props, tag: 'table' }, children));\r\n\r\n/**\r\n * Creates a table row (tr) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tr = Atom((props, children) => Tag({ ...props, tag: 'tr' }, children));\r\n\r\n/**\r\n * Creates a table header (th) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Th = Atom((props, children) => Tag({ ...props, tag: 'th' }, children));\r\n\r\n/**\r\n * Creates a table data (td) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Td = Atom((props, children) => Tag({ ...props, tag: 'td' }, children));\r\n\r\n/**\r\n * Creates a table header group (thead) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Thead = Atom((props, children) => Tag({ ...props, tag: 'thead' }, children));\r\n\r\n/**\r\n * Creates a table body (tbody) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tbody = Atom((props, children) => Tag({ ...props, tag: 'tbody' }, children));\r\n\r\n/**\r\n * Creates a table footer (tfoot) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tfoot = Atom((props, children) => Tag({ ...props, tag: 'tfoot' }, children));\r\n\r\n/**\r\n * Creates a form element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Form = Atom((props, children) => Tag({ ...props, tag: 'form' }, children));\r\n\r\n/**\r\n * Creates a select element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Select = Atom((props, children) => Tag({ ...props, tag: 'select' }, children));\r\n\r\n/**\r\n * Creates an option element for a select tag.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Option = Atom((props, children) => Tag({ ...props, tag: 'option' }, children));\r\n\r\n/**\r\n * Creates a textarea element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Textarea = Atom((props, children) => Tag({ ...props, tag: 'textarea' }, children));\r\n\r\n/**\r\n * Creates a canvas element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Canvas = Atom((props, children) => Tag({ ...props, tag: 'canvas' }, children));\r\n\r\n/**\r\n * Creates a progress element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Progress = Atom((props, children) => Tag({ ...props, tag: 'progress' }, children));\r\n\r\n/**\r\n * Creates a blockquote element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Blockquote = Atom((props, children) => Tag({ ...props, tag: 'blockquote' }, children));\r\n\r\n/**\r\n * Creates a preformatted text (pre) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Pre = Atom((props, children) => Tag({ ...props, tag: 'pre' }, children));\r\n\r\n/**\r\n * Creates a code element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Code = Atom((props, children) => Tag({ ...props, tag: 'code' }, children));\r\n\r\n/**\r\n * Creates an ordered list (ol) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ol = Atom((props, children) => Tag({ ...props, tag: 'ol' }, children));\r\n\r\n/**\r\n * Creates a definition list (dl) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dl = Atom((props, children) => Tag({ ...props, tag: 'dl' }, children));\r\n\r\n/**\r\n * Creates a definition term (dt) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dt = Atom((props, children) => Tag({ ...props, tag: 'dt' }, children));\r\n\r\n/**\r\n * Creates a definition description (dd) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dd = Atom((props, children) => Tag({ ...props, tag: 'dd' }, children));\r\n\r\n/**\r\n * Creates a fieldset element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Fieldset = Atom((props, children) => Tag({ ...props, tag: 'fieldset' }, children));\r\n\r\n/**\r\n * Creates a legend element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Legend = Atom((props, children) => Tag({ ...props, tag: 'legend' }, children));\r\n\r\n/**\r\n * Creates a meter element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Meter = Atom((props, children) => Tag({ ...props, tag: 'meter' }, children));\r\n\r\n/**\r\n * Creates an iframe element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Iframe = Atom((props, children) => Tag({ ...props, tag: 'iframe' }, children));\r\n\r\n/**\r\n * Creates a details element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Details = Atom((props, children) => Tag({ ...props, tag: 'details' }, children));\r\n\r\n/**\r\n * Creates a summary element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Summary = Atom((props, children) => Tag({ ...props, tag: 'summary' }, children));\r\n\r\n/**\r\n * Creates an em element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Em = Atom((props, children) => Tag({ ...props, tag: 'em' }, children));\r\n\r\n/**\r\n * Creates a strong element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Strong = Atom((props, children) => Tag({ ...props, tag: 'strong' }, children));\r\n\r\n/**\r\n * Creates a small element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Small = Atom((props, children) => Tag({ ...props, tag: 'small' }, children));\r\n\r\n/**\r\n * Creates a s element (strikethrough).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const S = Atom((props, children) => Tag({ ...props, tag: 's' }, children));\r\n\r\n/**\r\n * Creates a cite element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Cite = Atom((props, children) => Tag({ ...props, tag: 'cite' }, children));\r\n\r\n/**\r\n * Creates a q element (inline quotation).\r\n */\r\nexport const Q = Atom((props, children) => Tag({ ...props, tag: 'q' }, children));\r\n\r\n/**\r\n * Creates a dfn element (definition element).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dfn = Atom((props, children) => Tag({ ...props, tag: 'dfn' }, children));\r\n\r\n/**\r\n * Creates an abbr element (abbreviation).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Abbr = Atom((props, children) => Tag({ ...props, tag: 'abbr' }, children));\r\n\r\n/**\r\n * Creates a data element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Data = Atom((props, children) => Tag({ ...props, tag: 'data' }, children));\r\n\r\n/**\r\n * Creates a time element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Time = Atom((props, children) => Tag({ ...props, tag: 'time' }, children));\r\n\r\n/**\r\n * Creates a var element (variable).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Var = Atom((props, children) => Tag({ ...props, tag: 'var' }, children));\r\n\r\n/**\r\n * Creates a samp element (sample output).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Samp = Atom((props, children) => Tag({ ...props, tag: 'samp' }, children));\r\n\r\n/**\r\n * Creates a kbd element (keyboard input).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Kbd = Atom((props, children) => Tag({ ...props, tag: 'kbd' }, children));\r\n\r\n/**\r\n * Creates a sub element (subscript).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Sub = Atom((props, children) => Tag({ ...props, tag: 'sub' }, children));\r\n\r\n/**\r\n * Creates a sup element (superscript).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Sup = Atom((props, children) => Tag({ ...props, tag: 'sup' }, children));\r\n\r\n/**\r\n * Creates an i element (italic).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const I = Atom((props, children) => Tag({ ...props, tag: 'i' }, children));\r\n\r\n/**\r\n * Creates a b element (bold).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const B = Atom((props, children) => Tag({ ...props, tag: 'b' }, children));\r\n\r\n/**\r\n * Creates a u element (underline).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const U = Atom((props, children) => Tag({ ...props, tag: 'u' }, children));\r\n\r\n/**\r\n * Creates a mark element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Mark = Atom((props, children) => Tag({ ...props, tag: 'mark' }, children));\r\n\r\n/**\r\n * Creates a ruby element (for East Asian typography).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ruby = Atom((props, children) => Tag({ ...props, tag: 'ruby' }, children));\r\n\r\n/**\r\n * Creates an rt element (explanation/pronunciation of characters in East Asian typography).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Rt = Atom((props, children) => Tag({ ...props, tag: 'rt' }, children));\r\n\r\n/**\r\n * Creates an rp element (for East Asian fallback parenthesis).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Rp = Atom((props, children) => Tag({ ...props, tag: 'rp' }, children));\r\n\r\n/**\r\n * Creates a bdi element (Bi-Directional Isolation).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Bdi = Atom((props, children) => Tag({ ...props, tag: 'bdi' }, children));\r\n\r\n/**\r\n * Creates a bdo element (Bi-Directional Override).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Bdo = Atom((props, children) => Tag({ ...props, tag: 'bdo' }, children));\r\n\r\n/**\r\n * Creates a wbr element (Word Break Opportunity).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {array} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Wbr = Atom((props) => Tag({ ...props, tag: 'wbr' }, null));\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nexport const Comment = Atom((props) => Tag({ ...props, tag: 'comment' }, null));", "import { Builder, dataBinder } from \"@base-framework/base\";\r\nimport { Comment as BaseComment } from \"../comment.js\";\r\n\r\n/**\r\n * Data source types for conditional rendering atoms.\r\n */\r\nconst DATA_SOURCES =\r\n{\r\n\tPARENT: 'parent',\r\n\tSTATE: 'state',\r\n\tROUTE: 'route'\r\n};\r\n\r\n/**\r\n * Gets the appropriate data source based on the type.\r\n *\r\n * @param {object} parent - The parent component\r\n * @param {string} sourceType - The data source type\r\n * @returns {object|null} The data source\r\n */\r\nconst getDataSource = (parent, sourceType) =>\r\n{\r\n\tswitch (sourceType)\r\n\t{\r\n\t\tcase DATA_SOURCES.PARENT:\r\n\t\t\treturn getParentData(parent);\r\n\t\tcase DATA_SOURCES.STATE:\r\n\t\t\treturn parent.state;\r\n\t\tcase DATA_SOURCES.ROUTE:\r\n\t\t\treturn parent.route;\r\n\t\tdefault:\r\n\t\t\treturn null;\r\n\t}\r\n};\r\n\r\n/**\r\n * Creates a conditional callback that only executes when the value equals the expected value.\r\n *\r\n * @param {function} callback - The callback to execute\r\n * @param {*} expectedValue - The value to compare against\r\n * @param {*} [fallback=null] - The fallback value when condition is not met\r\n * @returns {function} The conditional callback\r\n */\r\nconst createEqualityCallback = (callback, expectedValue, fallback = null) =>\r\n{\r\n\treturn (value, ele, parent) =>\r\n\t{\r\n\t\treturn (value === expectedValue) ? callback(value, ele, parent) : fallback;\r\n\t};\r\n};\r\n\r\n/**\r\n * Creates a conditional callback that only executes when the value is truthy.\r\n *\r\n * @param {function} callback - The callback to execute\r\n * @param {*} [fallback=null] - The fallback value when condition is not met\r\n * @returns {function} The conditional callback\r\n */\r\nconst createBooleanCallback = (callback, fallback = null) =>\r\n{\r\n\treturn createEqualityCallback(callback, true, fallback);\r\n};\r\n\r\n/**\r\n * Generic factory for creating conditional rendering atoms.\r\n *\r\n * @param {string} dataSourceType - The type of data source to use\r\n * @param {string|null} [defaultProp=null] - Default property name for this atom type\r\n * @param {function|null} [callbackTransformer=null] - Function to transform the callback\r\n * @returns {function} The atom factory function\r\n */\r\nconst createConditionalAtom = (dataSourceType, defaultProp = null, callbackTransformer = null) =>\r\n{\r\n\treturn (...args) =>\r\n\t{\r\n\t\tconst settings = [...args];\r\n\t\tconst callback = settings.pop();\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\treturn Comment(\r\n\t\t{\r\n\t\t\tonCreated: (ele, parent) =>\r\n\t\t\t{\r\n\t\t\t\t// Auto-inject data source if not provided\r\n\t\t\t\tif (settings.length < (defaultProp ? 1 : 2))\r\n\t\t\t\t{\r\n\t\t\t\t\tconst data = getDataSource(parent, dataSourceType);\r\n\t\t\t\t\tsettings.unshift(data);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Use default property if provided and not specified\r\n\t\t\t\tconst prop = defaultProp || settings[1];\r\n\t\t\t\tconst finalCallback = callbackTransformer ? callbackTransformer(callback, settings) : callback;\r\n\r\n\t\t\t\tconst update = updateLayout(finalCallback, ele, prop, parent);\r\n\t\t\t\tdataBinder.watch(ele, settings[0], prop, update);\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Special factory for OnLoad-style functions that have different argument patterns.\r\n *\r\n * @param {string} dataSourceType - The type of data source to use\r\n * @param {string} prop - The property name to watch\r\n * @param {function} callbackTransformer - Function to transform the callback\r\n * @returns {function} The atom factory function\r\n */\r\nconst createLoadStyleAtom = (dataSourceType, prop, callbackTransformer) =>\r\n{\r\n\treturn (...args) =>\r\n\t{\r\n\t\tconst settings = [...args];\r\n\t\tconst callback = (typeof settings[0] === 'function') ? settings[0] : settings[1];\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\treturn Comment(\r\n\t\t{\r\n\t\t\tonCreated: (ele, parent) =>\r\n\t\t\t{\r\n\t\t\t\tif (settings.length < 2 || typeof settings[0] === 'function')\r\n\t\t\t\t{\r\n\t\t\t\t\tconst data = getDataSource(parent, dataSourceType);\r\n\t\t\t\t\tsettings.unshift(data);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst finalCallback = callbackTransformer(callback, settings);\r\n\t\t\t\tconst update = updateLayout(finalCallback, ele, prop, parent);\r\n\t\t\t\tdataBinder.watch(ele, settings[0], prop, update);\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * This will set up the update layout function.\r\n *\r\n * @param {function} callBack\r\n * @param {object} ele\r\n * @param {string} prop\r\n * @param {object} parent\r\n * @returns {function}\r\n */\r\nconst updateLayout = (callBack, ele, prop, parent) =>\r\n{\r\n\t/**\r\n\t * This will update the layout.\r\n\t *\r\n\t * @param {object} value\r\n\t * @returns {void}\r\n\t */\r\n\treturn (value) =>\r\n\t{\r\n\t\t/**\r\n\t\t * This will remove the previous element if it exists.\r\n\t\t */\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\r\n\t\tlet layout = callBack(value, ele, parent);\r\n\t\tif (layout === undefined)\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * This will build the layout and insert it after the\r\n\t\t * comment element.\r\n\t\t */\r\n\t\tconst frag = Builder.build(layout, null, parent);\r\n\t\tele._prevEle = frag.childNodes[0];\r\n\r\n\t\tele.parentNode.insertBefore(frag, ele.nextSibling);\r\n\t};\r\n};\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nconst Comment = (props) => BaseComment({\r\n\ttype: 'on',\r\n\tonCreated: props.onCreated,\r\n\tonDestroyed: (ele) =>\r\n\t{\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * This will get the parent set data.\r\n *\r\n * @param {object} parent\r\n * @returns {object|null}\r\n */\r\nexport const getParentData = (parent) =>\r\n{\r\n\tif (parent.data)\r\n\t{\r\n\t\treturn parent.data;\r\n\t}\r\n\r\n\tif (parent.context && parent.context.data)\r\n\t{\r\n\t\treturn parent.context.data;\r\n\t}\r\n\r\n\tif (parent.state)\r\n\t{\r\n\t\treturn parent.state;\r\n\t}\r\n\r\n\treturn null;\r\n};\r\n\r\n/**\r\n * This will create an on data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const On = createConditionalAtom(DATA_SOURCES.PARENT);\r\n\r\n/**\r\n * This will create an on state tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnState = createConditionalAtom(DATA_SOURCES.STATE);\r\n\r\n/**\r\n * This will create an on route tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnRoute = createConditionalAtom(DATA_SOURCES.ROUTE);\r\n\r\n/**\r\n * This will create an if data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const If = createConditionalAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\tnull,\r\n\t(callback, settings) => createEqualityCallback(callback, settings[2])\r\n);\r\n\r\n/**\r\n * This will create an if state tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const IfState = createConditionalAtom(\r\n\tDATA_SOURCES.STATE,\r\n\tnull,\r\n\t(callback, settings) => createEqualityCallback(callback, settings[2])\r\n);\r\n\r\n/**\r\n * This will create an on load data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnLoad = createLoadStyleAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\t'loaded',\r\n\t(callback, settings) =>\r\n\t{\r\n\t\tconst notLoaded = (settings.length === 3) ? settings[2] : null;\r\n\t\treturn createBooleanCallback(callback, notLoaded);\r\n\t}\r\n);\r\n\r\n/**\r\n * This will create an on state load tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnStateLoad = createLoadStyleAtom(\r\n\tDATA_SOURCES.STATE,\r\n\t'loaded',\r\n\t(callback, settings) =>\r\n\t{\r\n\t\tconst notLoaded = (settings.length === 3) ? settings[2] : null;\r\n\t\treturn createBooleanCallback(callback, notLoaded);\r\n\t}\r\n);\r\n\r\n/**\r\n * This will create an on open data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnOpen = createLoadStyleAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\t'open',\r\n\t(callback) => createBooleanCallback(callback)\r\n);\r\n\r\n/**\r\n * This will create an on state open tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnStateOpen = createLoadStyleAtom(\r\n\tDATA_SOURCES.STATE,\r\n\t'open',\r\n\t(callback) => createBooleanCallback(callback)\r\n);\r\n\r\n// Re-export responsive atoms from on-size.js for backward compatibility\r\nexport { On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnMd, OnMdOnly, OnPhone, OnSm, OnSmOnly, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly } from './on-size.js';\r\n\r\n", "/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nexport const Comment = (props) => ({\r\n tag: 'comment',\r\n textContent: `${props.type} placeholder`,\r\n onCreated: props.onCreated,\r\n onDestroyed: props.onDestroyed\r\n});", "import { Data } from \"@base-framework/base\";\r\nimport { On } from \"./on.js\";\r\n\r\n/**\r\n * Tailwind CSS breakpoint sizes (mobile-first).\r\n */\r\nconst BREAKPOINTS =\r\n{\r\n\txs: 0, // Extra small devices\r\n\tsm: 640, // Small devices\r\n\tmd: 768, // Medium devices\r\n\tlg: 1024, // Large devices\r\n\txl: 1280, // Extra large devices\r\n\t'2xl': 1536 // 2x extra large devices\r\n};\r\n\r\n/**\r\n * Gets the current breakpoint name based on window width.\r\n *\r\n * @param {number} width - The window width\r\n * @returns {string} The breakpoint name\r\n */\r\nconst getBreakpointName = (width) =>\r\n{\r\n\tif (width >= BREAKPOINTS['2xl']) return '2xl';\r\n\tif (width >= BREAKPOINTS.xl) return 'xl';\r\n\tif (width >= BREAKPOINTS.lg) return 'lg';\r\n\tif (width >= BREAKPOINTS.md) return 'md';\r\n\tif (width >= BREAKPOINTS.sm) return 'sm';\r\n\treturn 'xs';\r\n};\r\n\r\n/**\r\n * Checks if current window width meets the breakpoint requirement.\r\n *\r\n * @param {string} currentBreakpoint - Current breakpoint name\r\n * @param {string} targetBreakpoint - Target breakpoint to check\r\n * @returns {boolean} True if current breakpoint is >= target breakpoint\r\n */\r\nconst matchesBreakpoint = (currentBreakpoint, targetBreakpoint) =>\r\n{\r\n\tconst current = BREAKPOINTS[currentBreakpoint] || 0;\r\n\tconst target = BREAKPOINTS[targetBreakpoint] || 0;\r\n\treturn current >= target;\r\n};\r\n\r\n/**\r\n * Global data object for window size tracking.\r\n */\r\nconst sizeData = new Data({\r\n\tsize: null,\r\n\twidth: 0\r\n});\r\n\r\n/**\r\n * Initialize the size tracking system.\r\n */\r\nconst initializeSizeTracker = () =>\r\n{\r\n\tif (typeof window === 'undefined')\r\n\t{\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Set initial values\r\n\tconst currentWidth = window.innerWidth;\r\n\tconst currentBreakpoint = getBreakpointName(currentWidth);\r\n\r\n\t// @ts-ignore\r\n\tsizeData.size = currentBreakpoint;\r\n\t// @ts-ignore\r\n\tsizeData.width = currentWidth;\r\n\r\n\t/**\r\n\t * Handle window resize events.\r\n\t */\r\n\tconst handleResize = () =>\r\n\t{\r\n\t\tconst newWidth = window.innerWidth;\r\n\t\tconst newBreakpoint = getBreakpointName(newWidth);\r\n\r\n\t\t// Only update if the breakpoint or width actually changed\r\n\t\t// @ts-ignore\r\n\t\tif (newWidth !== sizeData.width || newBreakpoint !== sizeData.size)\r\n\t\t{\r\n\t\t\t// @ts-ignore\r\n\t\t\tsizeData.width = newWidth;\r\n\t\t\t// @ts-ignore\r\n\t\t\tsizeData.size = newBreakpoint;\r\n\t\t}\r\n\t};\r\n\r\n\t// Add resize listener\r\n\twindow.addEventListener('resize', handleResize);\r\n\r\n\t// Return cleanup function\r\n\treturn () =>\r\n\t{\r\n\t\twindow.removeEventListener('resize', handleResize);\r\n\t};\r\n};\r\n\r\n// Initialize the tracker immediately\r\nlet cleanup = null;\r\nif (typeof window !== 'undefined')\r\n{\r\n\tcleanup = initializeSizeTracker();\r\n}\r\n\r\n/**\r\n * Factory for creating responsive breakpoint atoms.\r\n *\r\n * @param {string} targetBreakpoint - The breakpoint name (xs, sm, md, lg, xl, 2xl)\r\n * @returns {function} The responsive atom factory function\r\n */\r\nconst createResponsiveAtom = (targetBreakpoint) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Check if current breakpoint meets the target requirement\r\n\t\t\tif (matchesBreakpoint(currentBreakpoint, targetBreakpoint))\r\n\t\t\t{\r\n\t\t\t\t// Pass the current size to the callback for additional context\r\n\t\t\t\t// @ts-ignore\r\n\t\t\t\treturn callback(sizeData.size, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * This will create a responsive xs breakpoint atom (0px+).\r\n * Renders when window width is 0px or larger (always renders).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXs = createResponsiveAtom('xs');\r\n\r\n/**\r\n * This will create a responsive sm breakpoint atom (640px+).\r\n * Renders when window width is 640px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnSm = createResponsiveAtom('sm');\r\n\r\n/**\r\n * This will create a responsive md breakpoint atom (768px+).\r\n * Renders when window width is 768px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnMd = createResponsiveAtom('md');\r\n\r\n/**\r\n * This will create a responsive lg breakpoint atom (1024px+).\r\n * Renders when window width is 1024px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnLg = createResponsiveAtom('lg');\r\n\r\n/**\r\n * This will create a responsive xl breakpoint atom (1280px+).\r\n * Renders when window width is 1280px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXl = createResponsiveAtom('xl');\r\n\r\n/**\r\n * This will create a responsive 2xl breakpoint atom (1536px+).\r\n * Renders when window width is 1536px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const On2Xl = createResponsiveAtom('2xl');\r\n\r\n/**\r\n * Export the size data for external access if needed.\r\n */\r\nexport { sizeData };\r\n\r\n/**\r\n * Factory for creating exact breakpoint atoms (only renders on specific size).\r\n *\r\n * @param {string} targetBreakpoint - The exact breakpoint name\r\n * @returns {function} The exact responsive atom factory function\r\n */\r\nconst createExactBreakpointAtom = (targetBreakpoint) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Only render if current breakpoint exactly matches target\r\n\t\t\tif (currentBreakpoint === targetBreakpoint)\r\n\t\t\t{\r\n\t\t\t\treturn callback(currentBreakpoint, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Renders only on xs breakpoint (0-639px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXsOnly = createExactBreakpointAtom('xs');\r\n\r\n/**\r\n * Renders only on sm breakpoint (640-767px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnSmOnly = createExactBreakpointAtom('sm');\r\n\r\n/**\r\n * Renders only on md breakpoint (768-1023px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnMdOnly = createExactBreakpointAtom('md');\r\n\r\n/**\r\n * Renders only on lg breakpoint (1024-1279px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnLgOnly = createExactBreakpointAtom('lg');\r\n\r\n/**\r\n * Renders only on xl breakpoint (1280-1535px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXlOnly = createExactBreakpointAtom('xl');\r\n\r\n/**\r\n * Renders only on 2xl breakpoint (1536px+).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const On2XlOnly = createExactBreakpointAtom('2xl');\r\n\r\n/**\r\n * Factory for creating semantic device breakpoint atoms.\r\n *\r\n * @param {string[]} targetBreakpoints - Array of breakpoint names that match this device\r\n * @returns {function} The semantic responsive atom factory function\r\n */\r\nconst createSemanticBreakpointAtom = (targetBreakpoints) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Check if current breakpoint is in the target breakpoints array\r\n\t\t\tif (targetBreakpoints.includes(currentBreakpoint))\r\n\t\t\t{\r\n\t\t\t\t// @ts-ignore - Data class supports proxy access\r\n\t\t\t\treturn callback(sizeData.size, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Renders on phone-sized devices (xs and sm breakpoints: 0-767px).\r\n * Includes extra small and small devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnPhone = createSemanticBreakpointAtom(['xs', 'sm']);\r\n\r\n/**\r\n * Renders on tablet-sized devices (md breakpoint: 768-1023px).\r\n * Includes medium devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnTablet = createSemanticBreakpointAtom(['md']);\r\n\r\n/**\r\n * Renders on desktop-sized devices (lg, xl, 2xl breakpoints: 1024px+).\r\n * Includes large, extra large, and 2x extra large devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnDesktop = createSemanticBreakpointAtom(['lg', 'xl', '2xl']);\r\n\r\n/**\r\n * Export cleanup function for testing or manual cleanup.\r\n */\r\nexport { cleanup as cleanupSizeTracker };\r\n\r\n\r\n", "import { Builder } from \"@base-framework/base\";\r\nimport { Comment as BaseComment } from \"../comment.js\";\r\n\r\n/**\r\n * This will set up the update layout function.\r\n *\r\n * @param {function} callBack\r\n * @param {object} ele\r\n * @param {object} parent\r\n * @returns {function}\r\n */\r\nconst updateLayout = (callBack, ele, parent) =>\r\n{\r\n\t/**\r\n\t * This will remove the previous element if it exists.\r\n\t */\r\n\tif (ele._prevEle)\r\n\t{\r\n\t\tBuilder.removeNode(ele._prevEle);\r\n\t\tele._prevEle = null;\r\n\t}\r\n\r\n\tconst layout = callBack(parent);\r\n\tif (layout === undefined)\r\n\t{\r\n\t\treturn;\r\n\t}\r\n\r\n\t/**\r\n\t * This will build the layout and insert it after the\r\n\t * comment element.\r\n\t */\r\n\tconst frag = Builder.build(layout, null, parent);\r\n\tele._prevEle = frag.childNodes[0];\r\n\r\n\tele.parentNode.insertBefore(frag, ele.nextSibling);\r\n};\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nconst Comment = (props) => BaseComment({\r\n\ttype: 'use',\r\n\tonCreated: props.onCreated,\r\n\tonDestroyed: (ele) =>\r\n\t{\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * This will create a use parent tag.\r\n *\r\n * @param {function} callBack\r\n * @returns {object}\r\n */\r\nexport const UseParent = (callBack) =>\r\n{\r\n\t/**\r\n\t * This will create a comment to use as a placeholder\r\n\t * to keep the layout in place.\r\n\t */\r\n\treturn Comment({\r\n\t\tonCreated: (ele, parent) =>\r\n\t\t{\r\n\t\t\tupdateLayout(callBack, ele, parent);\r\n\t\t}\r\n\t});\r\n};"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Atom", "Builder", "dataBinder", "Comment", "props", "Data", "BREAKPOINTS", "getBreakpointName", "width", "matchesBreakpoint", "currentBreakpoint", "targetBreakpoint", "current", "target", "sizeData", "Data", "initializeSizeTracker", "currentWidth", "handleResize", "newWidth", "newBreakpoint", "cleanup", "createResponsiveAtom", "callback", "On", "ele", "parent", "OnXs", "OnSm", "OnMd", "OnLg", "OnXl", "On2Xl", "createExactBreakpointAtom", "targetBreakpoint", "callback", "On", "sizeData", "currentBreakpoint", "ele", "parent", "OnXsOnly", "OnSmOnly", "OnMdOnly", "OnLgOnly", "OnXlOnly", "On2XlOnly", "createSemanticBreakpointAtom", "targetBreakpoints", "OnPhone", "OnTablet", "OnDesktop", "DATA_SOURCES", "getDataSource", "parent", "sourceType", "getParentData", "createEqualityCallback", "callback", "expectedValue", "fallback", "value", "ele", "createBooleanCallback", "createConditionalAtom", "dataSourceType", "defaultProp", "callbackTransformer", "args", "settings", "Comment", "data", "prop", "finalCallback", "update", "updateLayout", "dataBinder", "createLoadStyleAtom", "callBack", "Builder", "layout", "frag", "props", "On", "OnState", "OnRoute", "If", "IfState", "OnLoad", "notLoaded", "OnStateLoad", "OnOpen", "OnStateOpen", "Builder", "updateLayout", "callBack", "ele", "parent", "Builder", "layout", "frag", "Comment", "props", "UseParent", "Tag", "props", "children", "Doctype", "Html", "Atom", "Script", "Style", "Head", "Title", "Meta", "Link", "Body", "Div", "Dialog", "Span", "P", "A", "Button", "SubmitButton", "Ul", "Li", "Img", "Br", "Hr", "Text", "H1", "H2", "H3", "H4", "H5", "H6", "Input", "Label", "Checkbox", "Section", "Article", "Header", "Footer", "Nav", "Aside", "Figure", "Figcaption", "Main", "Video", "Audio", "Table", "Tr", "Th", "Td", "Thead", "Tbody", "Tfoot", "Form", "Select", "Option", "Textarea", "Canvas", "Progress", "Blockquote", "Pre", "Code", "Ol", "Dl", "Dt", "Dd", "Fieldset", "Legend", "Meter", "Iframe", "Details", "Summary", "Em", "Strong", "Small", "S", "Cite", "Q", "Dfn", "Abbr", "Data", "Time", "Var", "Samp", "Kbd", "Sub", "Sup", "I", "B", "U", "Mark", "Ruby", "Rt", "Rp", "Bdi", "Bdo", "Wbr", "Comment"]
|
|
4
|
+
"sourcesContent": ["import { Atom } from '@base-framework/base';\r\nimport { If, IfState, On, On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnLoad, OnMd, OnMdOnly, OnOpen, OnPhone, OnRoute, OnSm, OnSmOnly, OnState, OnStateLoad, OnStateOpen, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly } from './on/on.js';\r\nimport { UseParent } from './use/use.js';\r\nexport { If, IfState, On, On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnLoad, OnMd, OnMdOnly, OnOpen, OnPhone, OnRoute, OnSm, OnSmOnly, OnState, OnStateLoad, OnStateOpen, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly, UseParent };\r\n\r\n/**\r\n * Creates a generic HTML tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {?Array<any>} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nconst Tag = (props, children = null) => {\r\n return { ...props, children };\r\n};\r\n\r\n/**\r\n * Creates a Doctype tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Doctype = (props) => ({ ...props, tag: 'DOCTYPE' });\r\n\r\n/**\r\n * Creates an HTML tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {?Array<any>} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Html = Atom((props, children) => Tag({ ...props, tag: 'html' }, children));\r\n\r\n/**\r\n * Creates a script tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {?Array<any>} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Script = Atom((props, children) => Tag({ ...props, tag: 'script' }, children));\r\n\r\n/**\r\n * Creates a style tag.\r\n *\r\n * @param {object} props - Properties for the HTML element.\r\n * @param {?Array<any>} children - Children elements of the HTML element.\r\n * @returns {object} - Returns an object representing the HTML element.\r\n */\r\nexport const Style = Atom((props, children) => Tag({ ...props, tag: 'style' }, children));\r\n\r\n/**\r\n * Creates a head tag.\r\n *\r\n * @param {object} props - Properties for the head element.\r\n * @param {?Array<any>} children - Children elements of the head.\r\n * @returns {object} - Returns an object representing the head element.\r\n */\r\nexport const Head = Atom((props, children) => Tag({ ...props, tag: 'head' }, children));\r\n\r\n/**\r\n * Creates a title tag.\r\n *\r\n * @param {object} props - Properties for the title element.\r\n */\r\nexport const Title = (props) =>\r\n{\r\n return { ...props, tag: 'title' };\r\n};\r\n\r\n/**\r\n * Creates a meta tag.\r\n *\r\n * @param {object} props - Properties for the meta element.\r\n * @returns {object} - Returns an object representing the meta element.\r\n */\r\nexport const Meta = (props) => ({ ...props, tag: 'meta' });\r\n\r\n/**\r\n * Creates a link tag.\r\n *\r\n * @param {object} props - Properties for the link element.\r\n * @returns {object} - Returns an object representing the link element.\r\n */\r\nexport const Link = (props) => ({ ...props, tag: 'link' });\r\n\r\n/**\r\n * Creates a body tag.\r\n *\r\n * @param {object} props - Properties for the body element.\r\n * @param {array} children - Children elements of the body.\r\n * @returns {object} - Returns an object representing the body element.\r\n */\r\nexport const Body = Atom((props, children) => Tag({ ...props, tag: 'body' }, children));\r\n\r\n/**\r\n * Creates a div element.\r\n *\r\n * @param {object} props - Properties for the div element.\r\n * @param {?Array<any>} children - Children elements of the div.\r\n * @returns {object} - Returns an object representing the div element.\r\n */\r\nexport const Div = Atom((props, children) => Tag(props, children));\r\n\r\n/**\r\n * Creates a dialog element.\r\n *\r\n * @param {object} props - Properties for the div element.\r\n * @param {?Array<any>} children - Children elements of the div.\r\n * @returns {object} - Returns an object representing the dialog element.\r\n */\r\nexport const Dialog = Atom((props, children) => Tag({ ...props, tag: 'dialog' }, children));\r\n\r\n/**\r\n * Creates a span element.\r\n *\r\n * @param {object} props - Properties for the span element.\r\n * @param {?Array<any>} children - Children elements of the span.\r\n * @returns {object} - Returns an object representing the span element.\r\n */\r\nexport const Span = Atom((props, children) => Tag({ ...props, tag: 'span' }, children));\r\n\r\n/**\r\n * Creates a paragraph (p) element.\r\n *\r\n * @param {object} props - Properties for the paragraph element.\r\n * @param {?Array<any>} children - Children elements of the paragraph.\r\n * @returns {object} - Returns an object representing the paragraph element.\r\n */\r\nexport const P = Atom((props, children) => Tag({ ...props, tag: 'p' }, children));\r\n\r\n/**\r\n * Creates an anchor (a) element.\r\n *\r\n * @param {object} props - Properties for the anchor element.\r\n * @param {?Array<any>} children - Children elements of the anchor.\r\n * @return {object} - Returns an object representing the anchor element.\r\n */\r\nexport const A = Atom((props, children) => Tag({ ...props, tag: 'a' }, children));\r\n\r\n/**\r\n * Creates a button element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Button = Atom((props, children) => Tag({ ...props, tag: 'button' }, children));\r\n\r\n/**\r\n * Creates a submit button element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const SubmitButton = Atom((props, children) => Button({ ...props, type: 'submit' }, children));\r\n\r\n/**\r\n * Creates an unordered list (ul) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ul = Atom((props, children) => Tag({ ...props, tag: 'ul' }, children));\r\n\r\n/**\r\n * Creates a list item (li) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Li = Atom((props, children) => Tag({ ...props, tag: 'li' }, children));\r\n\r\n/**\r\n * Creates an image (img) element.\r\n */\r\nexport const Img = Atom((props) => Tag({ ...props, tag: 'img' }));\r\n\r\n/**\r\n * Create a br element.\r\n *\r\n * @param {object} props - Properties for the br element.\r\n * @returns {object} - Returns an object representing the br element.\r\n */\r\nexport const Br = Atom((props) => Tag({ ...props, tag: 'br' }));\r\n\r\n/**\r\n * Creates a horizontal rule (hr) element.\r\n *\r\n * @param {object} props - Properties for the hr element.\r\n * @returns {object} - Returns an object representing the hr element.\r\n */\r\nexport const Hr = Atom((props) => Tag({ ...props, tag: 'hr' }));\r\n\r\n/**\r\n * Creates a text (text) element.\r\n *\r\n * @param {object} props - Properties for the text element.\r\n * @param {?Array<any>} children - Children elements of the text element.\r\n * @returns {object} - Returns an object representing the text element.\r\n */\r\nexport const Text = Atom((props, children) => Tag({ ...props, tag: 'text' }, children));\r\n\r\n/**\r\n * Creates a header 1 (h1) element.\r\n *\r\n * @param {object} props - Properties for the h1 element.\r\n * @param {?Array<any>} children - Children elements of the h1 element.\r\n * @returns {object} - Returns an object representing the h1 element.\r\n */\r\nexport const H1 = Atom((props, children) => Tag({ ...props, tag: 'h1' }, children));\r\n\r\n/**\r\n * Creates a header 2 (h2) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H2 = Atom((props, children) => Tag({ ...props, tag: 'h2' }, children));\r\n\r\n/**\r\n * Creates a header 3 (h3) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H3 = Atom((props, children) => Tag({ ...props, tag: 'h3' }, children));\r\n\r\n/**\r\n * Creates a header 4 (h4) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H4 = Atom((props, children) => Tag({ ...props, tag: 'h4' }, children));\r\n\r\n/**\r\n * Creates a header 5 (h5) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H5 = Atom((props, children) => Tag({ ...props, tag: 'h5' }, children));\r\n\r\n/**\r\n * Creates a header 6 (h6) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const H6 = Atom((props, children) => Tag({ ...props, tag: 'h6' }, children));\r\n\r\n/**\r\n * Creates an input element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Input = Atom((props) => Tag({ ...props, tag: 'input' }));\r\n\r\n/**\r\n * Creates a label element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Label = Atom((props, children) => Tag({ ...props, tag: 'label' }, children));\r\n\r\n/**\r\n * Creates a checkbox input element.\r\n *\r\n * @param {object} props - Properties for the checkbox input element.\r\n * @returns {object} - Returns an object representing the checkbox input element.\r\n */\r\nexport const Checkbox = Atom((props) => Input({ ...props, type: 'checkbox' }));\r\n\r\n/**\r\n * Creates a section element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Section = Atom((props, children) => Tag({ ...props, tag: 'section' }, children));\r\n\r\n/**\r\n * Creates an article element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Article = Atom((props, children) => Tag({ ...props, tag: 'article' }, children));\r\n\r\n/**\r\n * Creates a header (header) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Header = Atom((props, children) => Tag({ ...props, tag: 'header' }, children));\r\n\r\n/**\r\n * Creates a footer element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Footer = Atom((props, children) => Tag({ ...props, tag: 'footer' }, children));\r\n\r\n/**\r\n * Creates a nav element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Nav = Atom((props, children) => Tag({ ...props, tag: 'nav' }, children));\r\n\r\n/**\r\n * Creates an aside element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Aside = Atom((props, children) => Tag({ ...props, tag: 'aside' }, children));\r\n\r\n/**\r\n * Creates a figure element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Figure = Atom((props, children) => Tag({ ...props, tag: 'figure' }, children));\r\n\r\n/**\r\n * Creates a figcaption element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Figcaption = Atom((props, children) => Tag({ ...props, tag: 'figcaption' }, children));\r\n\r\n/**\r\n * Creates a main element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Main = Atom((props, children) => Tag({ ...props, tag: 'main' }, children));\r\n\r\n/**\r\n * Creates a video element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Video = Atom((props, children) => Tag({ ...props, tag: 'video' }, children));\r\n\r\n/**\r\n * Creates an audio element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Audio = Atom((props, children) => Tag({ ...props, tag: 'audio' }, children));\r\n\r\n/**\r\n * Creates a table element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Table = Atom((props, children) => Tag({ ...props, tag: 'table' }, children));\r\n\r\n/**\r\n * Creates a table row (tr) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tr = Atom((props, children) => Tag({ ...props, tag: 'tr' }, children));\r\n\r\n/**\r\n * Creates a table header (th) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Th = Atom((props, children) => Tag({ ...props, tag: 'th' }, children));\r\n\r\n/**\r\n * Creates a table data (td) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Td = Atom((props, children) => Tag({ ...props, tag: 'td' }, children));\r\n\r\n/**\r\n * Creates a table header group (thead) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Thead = Atom((props, children) => Tag({ ...props, tag: 'thead' }, children));\r\n\r\n/**\r\n * Creates a table body (tbody) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tbody = Atom((props, children) => Tag({ ...props, tag: 'tbody' }, children));\r\n\r\n/**\r\n * Creates a table footer (tfoot) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Tfoot = Atom((props, children) => Tag({ ...props, tag: 'tfoot' }, children));\r\n\r\n/**\r\n * Creates a form element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Form = Atom((props, children) => Tag({ ...props, tag: 'form' }, children));\r\n\r\n/**\r\n * Creates a select element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Select = Atom((props, children) => Tag({ ...props, tag: 'select' }, children));\r\n\r\n/**\r\n * Creates an option element for a select tag.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Option = Atom((props, children) => Tag({ ...props, tag: 'option' }, children));\r\n\r\n/**\r\n * Creates a textarea element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Textarea = Atom((props, children) => Tag({ ...props, tag: 'textarea' }, children));\r\n\r\n/**\r\n * Creates a canvas element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Canvas = Atom((props, children) => Tag({ ...props, tag: 'canvas' }, children));\r\n\r\n/**\r\n * Creates a progress element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Progress = Atom((props, children) => Tag({ ...props, tag: 'progress' }, children));\r\n\r\n/**\r\n * Creates a blockquote element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Blockquote = Atom((props, children) => Tag({ ...props, tag: 'blockquote' }, children));\r\n\r\n/**\r\n * Creates a preformatted text (pre) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Pre = Atom((props, children) => Tag({ ...props, tag: 'pre' }, children));\r\n\r\n/**\r\n * Creates a code element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Code = Atom((props, children) => Tag({ ...props, tag: 'code' }, children));\r\n\r\n/**\r\n * Creates an ordered list (ol) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ol = Atom((props, children) => Tag({ ...props, tag: 'ol' }, children));\r\n\r\n/**\r\n * Creates a definition list (dl) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dl = Atom((props, children) => Tag({ ...props, tag: 'dl' }, children));\r\n\r\n/**\r\n * Creates a definition term (dt) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dt = Atom((props, children) => Tag({ ...props, tag: 'dt' }, children));\r\n\r\n/**\r\n * Creates a definition description (dd) element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dd = Atom((props, children) => Tag({ ...props, tag: 'dd' }, children));\r\n\r\n/**\r\n * Creates a fieldset element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Fieldset = Atom((props, children) => Tag({ ...props, tag: 'fieldset' }, children));\r\n\r\n/**\r\n * Creates a legend element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Legend = Atom((props, children) => Tag({ ...props, tag: 'legend' }, children));\r\n\r\n/**\r\n * Creates a meter element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Meter = Atom((props, children) => Tag({ ...props, tag: 'meter' }, children));\r\n\r\n/**\r\n * Creates an iframe element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Iframe = Atom((props, children) => Tag({ ...props, tag: 'iframe' }, children));\r\n\r\n/**\r\n * Creates a details element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Details = Atom((props, children) => Tag({ ...props, tag: 'details' }, children));\r\n\r\n/**\r\n * Creates a summary element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Summary = Atom((props, children) => Tag({ ...props, tag: 'summary' }, children));\r\n\r\n/**\r\n * Creates an em element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Em = Atom((props, children) => Tag({ ...props, tag: 'em' }, children));\r\n\r\n/**\r\n * Creates a strong element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Strong = Atom((props, children) => Tag({ ...props, tag: 'strong' }, children));\r\n\r\n/**\r\n * Creates a small element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Small = Atom((props, children) => Tag({ ...props, tag: 'small' }, children));\r\n\r\n/**\r\n * Creates a s element (strikethrough).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const S = Atom((props, children) => Tag({ ...props, tag: 's' }, children));\r\n\r\n/**\r\n * Creates a cite element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Cite = Atom((props, children) => Tag({ ...props, tag: 'cite' }, children));\r\n\r\n/**\r\n * Creates a q element (inline quotation).\r\n */\r\nexport const Q = Atom((props, children) => Tag({ ...props, tag: 'q' }, children));\r\n\r\n/**\r\n * Creates a dfn element (definition element).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Dfn = Atom((props, children) => Tag({ ...props, tag: 'dfn' }, children));\r\n\r\n/**\r\n * Creates an abbr element (abbreviation).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Abbr = Atom((props, children) => Tag({ ...props, tag: 'abbr' }, children));\r\n\r\n/**\r\n * Creates a data element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Data = Atom((props, children) => Tag({ ...props, tag: 'data' }, children));\r\n\r\n/**\r\n * Creates a time element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Time = Atom((props, children) => Tag({ ...props, tag: 'time' }, children));\r\n\r\n/**\r\n * Creates a var element (variable).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Var = Atom((props, children) => Tag({ ...props, tag: 'var' }, children));\r\n\r\n/**\r\n * Creates a samp element (sample output).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Samp = Atom((props, children) => Tag({ ...props, tag: 'samp' }, children));\r\n\r\n/**\r\n * Creates a kbd element (keyboard input).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Kbd = Atom((props, children) => Tag({ ...props, tag: 'kbd' }, children));\r\n\r\n/**\r\n * Creates a sub element (subscript).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Sub = Atom((props, children) => Tag({ ...props, tag: 'sub' }, children));\r\n\r\n/**\r\n * Creates a sup element (superscript).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Sup = Atom((props, children) => Tag({ ...props, tag: 'sup' }, children));\r\n\r\n/**\r\n * Creates an i element (italic).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const I = Atom((props, children) => Tag({ ...props, tag: 'i' }, children));\r\n\r\n/**\r\n * Creates a b element (bold).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const B = Atom((props, children) => Tag({ ...props, tag: 'b' }, children));\r\n\r\n/**\r\n * Creates a u element (underline).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const U = Atom((props, children) => Tag({ ...props, tag: 'u' }, children));\r\n\r\n/**\r\n * Creates a mark element.\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Mark = Atom((props, children) => Tag({ ...props, tag: 'mark' }, children));\r\n\r\n/**\r\n * Creates a ruby element (for East Asian typography).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Ruby = Atom((props, children) => Tag({ ...props, tag: 'ruby' }, children));\r\n\r\n/**\r\n * Creates an rt element (explanation/pronunciation of characters in East Asian typography).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Rt = Atom((props, children) => Tag({ ...props, tag: 'rt' }, children));\r\n\r\n/**\r\n * Creates an rp element (for East Asian fallback parenthesis).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Rp = Atom((props, children) => Tag({ ...props, tag: 'rp' }, children));\r\n\r\n/**\r\n * Creates a bdi element (Bi-Directional Isolation).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Bdi = Atom((props, children) => Tag({ ...props, tag: 'bdi' }, children));\r\n\r\n/**\r\n * Creates a bdo element (Bi-Directional Override).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Bdo = Atom((props, children) => Tag({ ...props, tag: 'bdo' }, children));\r\n\r\n/**\r\n * Creates a wbr element (Word Break Opportunity).\r\n *\r\n * @param {object} props - Properties for the element.\r\n * @param {?Array<any>} children - Children elements.\r\n * @returns {object} - Returns an object representing the element.\r\n */\r\nexport const Wbr = Atom((props) => Tag({ ...props, tag: 'wbr' }));\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nexport const Comment = Atom((props) => Tag({ ...props, tag: 'comment' }));", "import { Builder, dataBinder } from \"@base-framework/base\";\r\nimport { Comment as BaseComment } from \"../comment.js\";\r\n\r\n/**\r\n * Data source types for conditional rendering atoms.\r\n */\r\nconst DATA_SOURCES =\r\n{\r\n\tPARENT: 'parent',\r\n\tSTATE: 'state',\r\n\tROUTE: 'route'\r\n};\r\n\r\n/**\r\n * Gets the appropriate data source based on the type.\r\n *\r\n * @param {object} parent - The parent component\r\n * @param {string} sourceType - The data source type\r\n * @returns {object|null} The data source\r\n */\r\nconst getDataSource = (parent, sourceType) =>\r\n{\r\n\tswitch (sourceType)\r\n\t{\r\n\t\tcase DATA_SOURCES.PARENT:\r\n\t\t\treturn getParentData(parent);\r\n\t\tcase DATA_SOURCES.STATE:\r\n\t\t\treturn parent.state;\r\n\t\tcase DATA_SOURCES.ROUTE:\r\n\t\t\treturn parent.route;\r\n\t\tdefault:\r\n\t\t\treturn null;\r\n\t}\r\n};\r\n\r\n/**\r\n * Creates a conditional callback that only executes when the value equals the expected value.\r\n *\r\n * @param {function} callback - The callback to execute\r\n * @param {*} expectedValue - The value to compare against\r\n * @param {*} [fallback=null] - The fallback value when condition is not met\r\n * @returns {function} The conditional callback\r\n */\r\nconst createEqualityCallback = (callback, expectedValue, fallback = null) =>\r\n{\r\n\treturn (value, ele, parent) =>\r\n\t{\r\n\t\treturn (value === expectedValue) ? callback(value, ele, parent) : fallback;\r\n\t};\r\n};\r\n\r\n/**\r\n * Creates a conditional callback that only executes when the value is truthy.\r\n *\r\n * @param {function} callback - The callback to execute\r\n * @param {*} [fallback=null] - The fallback value when condition is not met\r\n * @returns {function} The conditional callback\r\n */\r\nconst createBooleanCallback = (callback, fallback = null) =>\r\n{\r\n\treturn createEqualityCallback(callback, true, fallback);\r\n};\r\n\r\n/**\r\n * Generic factory for creating conditional rendering atoms.\r\n *\r\n * @param {string} dataSourceType - The type of data source to use\r\n * @param {string|null} [defaultProp=null] - Default property name for this atom type\r\n * @param {function|null} [callbackTransformer=null] - Function to transform the callback\r\n * @param {number} [requiredArgs=2] - Number of args (excluding callback) that indicate data source was provided\r\n * @returns {function} The atom factory function\r\n */\r\nconst createConditionalAtom = (dataSourceType, defaultProp = null, callbackTransformer = null, requiredArgs = 2) =>\r\n{\r\n\treturn (...args) =>\r\n\t{\r\n\t\tconst settings = [...args];\r\n\t\tconst callback = settings.pop();\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\treturn Comment(\r\n\t\t{\r\n\t\t\tonCreated: (ele, parent) =>\r\n\t\t\t{\r\n\t\t\t\tconst localSettings = [...settings];\r\n\r\n\t\t\t\t// Auto-inject data source if not provided\r\n\t\t\t\tif (localSettings.length < requiredArgs)\r\n\t\t\t\t{\r\n\t\t\t\t\tconst data = getDataSource(parent, dataSourceType);\r\n\t\t\t\t\tlocalSettings.unshift(data);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Use default property if provided and not specified\r\n\t\t\t\tconst prop = defaultProp || localSettings[1];\r\n\t\t\t\tconst finalCallback = callbackTransformer ? callbackTransformer(callback, localSettings) : callback;\r\n\r\n\t\t\t\tconst update = updateLayout(finalCallback, ele, prop, parent);\r\n\t\t\t\tdataBinder.watch(ele, localSettings[0], prop, update);\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Special factory for OnLoad-style functions that have different argument patterns.\r\n *\r\n * @param {string} dataSourceType - The type of data source to use\r\n * @param {string} prop - The property name to watch\r\n * @param {function} callbackTransformer - Function to transform the callback\r\n * @returns {function} The atom factory function\r\n */\r\nconst createLoadStyleAtom = (dataSourceType, prop, callbackTransformer) =>\r\n{\r\n\treturn (...args) =>\r\n\t{\r\n\t\tconst settings = [...args];\r\n\t\tconst callback = (typeof settings[0] === 'function') ? settings[0] : settings[1];\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\treturn Comment(\r\n\t\t{\r\n\t\t\tonCreated: (ele, parent) =>\r\n\t\t\t{\r\n\t\t\t\tconst localSettings = [...settings];\r\n\r\n\t\t\t\tif (localSettings.length < 2 || typeof localSettings[0] === 'function')\r\n\t\t\t\t{\r\n\t\t\t\t\tconst data = getDataSource(parent, dataSourceType);\r\n\t\t\t\t\tlocalSettings.unshift(data);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst finalCallback = callbackTransformer(callback, localSettings);\r\n\t\t\t\tconst update = updateLayout(finalCallback, ele, prop, parent);\r\n\t\t\t\tdataBinder.watch(ele, localSettings[0], prop, update);\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * This will set up the update layout function.\r\n *\r\n * @param {function} callBack\r\n * @param {object} ele\r\n * @param {string} prop\r\n * @param {object} parent\r\n * @returns {function}\r\n */\r\nconst updateLayout = (callBack, ele, prop, parent) =>\r\n{\r\n\t/**\r\n\t * This will update the layout.\r\n\t *\r\n\t * @param {object} value\r\n\t * @returns {void}\r\n\t */\r\n\treturn (value) =>\r\n\t{\r\n\t\t/**\r\n\t\t * This will remove the previous element if it exists.\r\n\t\t */\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\r\n\t\tlet layout = callBack(value, ele, parent);\r\n\t\tif (layout == null)\r\n\t\t{\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * This will build the layout and insert it after the\r\n\t\t * comment element.\r\n\t\t */\r\n\t\tconst frag = Builder.build(layout, null, parent);\r\n\t\tele._prevEle = frag.childNodes[0];\r\n\r\n\t\tele.parentNode.insertBefore(frag, ele.nextSibling);\r\n\t};\r\n};\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nconst Comment = (props) => BaseComment({\r\n\ttype: 'on',\r\n\tonCreated: props.onCreated,\r\n\tonDestroyed: (ele) =>\r\n\t{\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * This will get the parent set data.\r\n *\r\n * @param {object} parent\r\n * @returns {object|null}\r\n */\r\nexport const getParentData = (parent) =>\r\n{\r\n\tif (parent.data)\r\n\t{\r\n\t\treturn parent.data;\r\n\t}\r\n\r\n\tif (parent.context && parent.context.data)\r\n\t{\r\n\t\treturn parent.context.data;\r\n\t}\r\n\r\n\tif (parent.state)\r\n\t{\r\n\t\treturn parent.state;\r\n\t}\r\n\r\n\treturn null;\r\n};\r\n\r\n/**\r\n * This will create an on data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const On = createConditionalAtom(DATA_SOURCES.PARENT);\r\n\r\n/**\r\n * This will create an on state tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnState = createConditionalAtom(DATA_SOURCES.STATE);\r\n\r\n/**\r\n * This will create an on route tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnRoute = createConditionalAtom(DATA_SOURCES.ROUTE);\r\n\r\n/**\r\n * This will create an if data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const If = createConditionalAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\tnull,\r\n\t(callback, settings) => createEqualityCallback(callback, settings[2]),\r\n\t3\r\n);\r\n\r\n/**\r\n * This will create an if state tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {string} prop\r\n * @param {*} value\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const IfState = createConditionalAtom(\r\n\tDATA_SOURCES.STATE,\r\n\tnull,\r\n\t(callback, settings) => createEqualityCallback(callback, settings[2]),\r\n\t3\r\n);\r\n\r\n/**\r\n * This will create an on load data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnLoad = createLoadStyleAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\t'loaded',\r\n\t(callback, settings) =>\r\n\t{\r\n\t\tconst notLoaded = (settings.length === 3) ? settings[2] : null;\r\n\t\treturn createBooleanCallback(callback, notLoaded);\r\n\t}\r\n);\r\n\r\n/**\r\n * This will create an on state load tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n * @param {function|object|null} [notLoaded=null]\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnStateLoad = createLoadStyleAtom(\r\n\tDATA_SOURCES.STATE,\r\n\t'loaded',\r\n\t(callback, settings) =>\r\n\t{\r\n\t\tconst notLoaded = (settings.length === 3) ? settings[2] : null;\r\n\t\treturn createBooleanCallback(callback, notLoaded);\r\n\t}\r\n);\r\n\r\n/**\r\n * This will create an on open data tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnOpen = createLoadStyleAtom(\r\n\tDATA_SOURCES.PARENT,\r\n\t'open',\r\n\t(callback) => createBooleanCallback(callback)\r\n);\r\n\r\n/**\r\n * This will create an on state open tag.\r\n *\r\n * @overload\r\n * @param {object} data\r\n * @param {function} callBack\r\n *\r\n * @overload\r\n * @param {function} callBack\r\n *\r\n * @returns {object}\r\n */\r\nexport const OnStateOpen = createLoadStyleAtom(\r\n\tDATA_SOURCES.STATE,\r\n\t'open',\r\n\t(callback) => createBooleanCallback(callback)\r\n);\r\n\r\n// Re-export responsive atoms from on-size.js for backward compatibility\r\nexport { On2Xl, On2XlOnly, OnDesktop, OnLg, OnLgOnly, OnMd, OnMdOnly, OnPhone, OnSm, OnSmOnly, OnTablet, OnXl, OnXlOnly, OnXs, OnXsOnly } from './on-size.js';\r\n\r\n", "/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nexport const Comment = (props) => ({\r\n tag: 'comment',\r\n textContent: `${props.type} placeholder`,\r\n onCreated: props.onCreated,\r\n onDestroyed: props.onDestroyed\r\n});", "import { Data } from \"@base-framework/base\";\r\nimport { On } from \"./on.js\";\r\n\r\n/**\r\n * Tailwind CSS breakpoint sizes (mobile-first).\r\n */\r\nconst BREAKPOINTS =\r\n{\r\n\txs: 0, // Extra small devices\r\n\tsm: 640, // Small devices\r\n\tmd: 768, // Medium devices\r\n\tlg: 1024, // Large devices\r\n\txl: 1280, // Extra large devices\r\n\t'2xl': 1536 // 2x extra large devices\r\n};\r\n\r\n/**\r\n * Gets the current breakpoint name based on window width.\r\n *\r\n * @param {number} width - The window width\r\n * @returns {string} The breakpoint name\r\n */\r\nconst getBreakpointName = (width) =>\r\n{\r\n\tif (width >= BREAKPOINTS['2xl']) return '2xl';\r\n\tif (width >= BREAKPOINTS.xl) return 'xl';\r\n\tif (width >= BREAKPOINTS.lg) return 'lg';\r\n\tif (width >= BREAKPOINTS.md) return 'md';\r\n\tif (width >= BREAKPOINTS.sm) return 'sm';\r\n\treturn 'xs';\r\n};\r\n\r\n/**\r\n * Checks if current window width meets the breakpoint requirement.\r\n *\r\n * @param {string} currentBreakpoint - Current breakpoint name\r\n * @param {string} targetBreakpoint - Target breakpoint to check\r\n * @returns {boolean} True if current breakpoint is >= target breakpoint\r\n */\r\nconst matchesBreakpoint = (currentBreakpoint, targetBreakpoint) =>\r\n{\r\n\tconst current = BREAKPOINTS[currentBreakpoint] || 0;\r\n\tconst target = BREAKPOINTS[targetBreakpoint] || 0;\r\n\treturn current >= target;\r\n};\r\n\r\n/**\r\n * Global data object for window size tracking.\r\n */\r\nconst sizeData = new Data({\r\n\tsize: null,\r\n\twidth: 0\r\n});\r\n\r\n/**\r\n * Initialize the size tracking system.\r\n */\r\nconst initializeSizeTracker = () =>\r\n{\r\n\tif (typeof window === 'undefined')\r\n\t{\r\n\t\treturn;\r\n\t}\r\n\r\n\t// Set initial values\r\n\tconst currentWidth = window.innerWidth;\r\n\tconst currentBreakpoint = getBreakpointName(currentWidth);\r\n\r\n\t// @ts-ignore\r\n\tsizeData.size = currentBreakpoint;\r\n\t// @ts-ignore\r\n\tsizeData.width = currentWidth;\r\n\r\n\t/**\r\n\t * Handle window resize events.\r\n\t */\r\n\tconst handleResize = () =>\r\n\t{\r\n\t\tconst newWidth = window.innerWidth;\r\n\t\tconst newBreakpoint = getBreakpointName(newWidth);\r\n\r\n\t\t// Only update if the breakpoint or width actually changed\r\n\t\t// @ts-ignore\r\n\t\tif (newWidth !== sizeData.width || newBreakpoint !== sizeData.size)\r\n\t\t{\r\n\t\t\t// @ts-ignore\r\n\t\t\tsizeData.width = newWidth;\r\n\t\t\t// @ts-ignore\r\n\t\t\tsizeData.size = newBreakpoint;\r\n\t\t}\r\n\t};\r\n\r\n\t// Add resize listener\r\n\twindow.addEventListener('resize', handleResize);\r\n\r\n\t// Return cleanup function\r\n\treturn () =>\r\n\t{\r\n\t\twindow.removeEventListener('resize', handleResize);\r\n\t};\r\n};\r\n\r\n// Initialize the tracker immediately\r\nlet cleanup = null;\r\nif (typeof window !== 'undefined')\r\n{\r\n\tcleanup = initializeSizeTracker();\r\n}\r\n\r\n/**\r\n * Factory for creating responsive breakpoint atoms.\r\n *\r\n * @param {string} targetBreakpoint - The breakpoint name (xs, sm, md, lg, xl, 2xl)\r\n * @returns {function} The responsive atom factory function\r\n */\r\nconst createResponsiveAtom = (targetBreakpoint) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Check if current breakpoint meets the target requirement\r\n\t\t\tif (matchesBreakpoint(currentBreakpoint, targetBreakpoint))\r\n\t\t\t{\r\n\t\t\t\t// Pass the current size to the callback for additional context\r\n\t\t\t\t// @ts-ignore\r\n\t\t\t\treturn callback(sizeData.size, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * This will create a responsive xs breakpoint atom (0px+).\r\n * Renders when window width is 0px or larger (always renders).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXs = createResponsiveAtom('xs');\r\n\r\n/**\r\n * This will create a responsive sm breakpoint atom (640px+).\r\n * Renders when window width is 640px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnSm = createResponsiveAtom('sm');\r\n\r\n/**\r\n * This will create a responsive md breakpoint atom (768px+).\r\n * Renders when window width is 768px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnMd = createResponsiveAtom('md');\r\n\r\n/**\r\n * This will create a responsive lg breakpoint atom (1024px+).\r\n * Renders when window width is 1024px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnLg = createResponsiveAtom('lg');\r\n\r\n/**\r\n * This will create a responsive xl breakpoint atom (1280px+).\r\n * Renders when window width is 1280px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXl = createResponsiveAtom('xl');\r\n\r\n/**\r\n * This will create a responsive 2xl breakpoint atom (1536px+).\r\n * Renders when window width is 1536px or larger.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const On2Xl = createResponsiveAtom('2xl');\r\n\r\n/**\r\n * Export the size data for external access if needed.\r\n */\r\nexport { sizeData };\r\n\r\n/**\r\n * Factory for creating exact breakpoint atoms (only renders on specific size).\r\n *\r\n * @param {string} targetBreakpoint - The exact breakpoint name\r\n * @returns {function} The exact responsive atom factory function\r\n */\r\nconst createExactBreakpointAtom = (targetBreakpoint) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Only render if current breakpoint exactly matches target\r\n\t\t\tif (currentBreakpoint === targetBreakpoint)\r\n\t\t\t{\r\n\t\t\t\treturn callback(currentBreakpoint, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Renders only on xs breakpoint (0-639px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXsOnly = createExactBreakpointAtom('xs');\r\n\r\n/**\r\n * Renders only on sm breakpoint (640-767px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnSmOnly = createExactBreakpointAtom('sm');\r\n\r\n/**\r\n * Renders only on md breakpoint (768-1023px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnMdOnly = createExactBreakpointAtom('md');\r\n\r\n/**\r\n * Renders only on lg breakpoint (1024-1279px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnLgOnly = createExactBreakpointAtom('lg');\r\n\r\n/**\r\n * Renders only on xl breakpoint (1280-1535px).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnXlOnly = createExactBreakpointAtom('xl');\r\n\r\n/**\r\n * Renders only on 2xl breakpoint (1536px+).\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const On2XlOnly = createExactBreakpointAtom('2xl');\r\n\r\n/**\r\n * Factory for creating semantic device breakpoint atoms.\r\n *\r\n * @param {string[]} targetBreakpoints - Array of breakpoint names that match this device\r\n * @returns {function} The semantic responsive atom factory function\r\n */\r\nconst createSemanticBreakpointAtom = (targetBreakpoints) =>\r\n{\r\n\treturn (callback) =>\r\n\t{\r\n\t\tif (typeof callback !== 'function')\r\n\t\t{\r\n\t\t\treturn null;\r\n\t\t}\r\n\r\n\t\t// Use the On atom to watch the sizeData.size property\r\n\t\treturn On(sizeData, 'size', (currentBreakpoint, ele, parent) =>\r\n\t\t{\r\n\t\t\t// Check if current breakpoint is in the target breakpoints array\r\n\t\t\tif (targetBreakpoints.includes(currentBreakpoint))\r\n\t\t\t{\r\n\t\t\t\t// @ts-ignore - Data class supports proxy access\r\n\t\t\t\treturn callback(sizeData.size, parent);\r\n\t\t\t}\r\n\r\n\t\t\t// Return null to prevent rendering when breakpoint doesn't match\r\n\t\t\treturn null;\r\n\t\t});\r\n\t};\r\n};\r\n\r\n/**\r\n * Renders on phone-sized devices (xs and sm breakpoints: 0-767px).\r\n * Includes extra small and small devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnPhone = createSemanticBreakpointAtom(['xs', 'sm']);\r\n\r\n/**\r\n * Renders on tablet-sized devices (md breakpoint: 768-1023px).\r\n * Includes medium devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnTablet = createSemanticBreakpointAtom(['md']);\r\n\r\n/**\r\n * Renders on desktop-sized devices (lg, xl, 2xl breakpoints: 1024px+).\r\n * Includes large, extra large, and 2x extra large devices.\r\n *\r\n * @param {function} callback - The callback function to render the layout\r\n * @returns {object} The responsive atom\r\n */\r\nexport const OnDesktop = createSemanticBreakpointAtom(['lg', 'xl', '2xl']);\r\n\r\n/**\r\n * Export cleanup function for testing or manual cleanup.\r\n */\r\nexport { cleanup as cleanupSizeTracker };\r\n\r\n\r\n", "import { Builder } from \"@base-framework/base\";\r\nimport { Comment as BaseComment } from \"../comment.js\";\r\n\r\n/**\r\n * This will set up the update layout function.\r\n *\r\n * @param {function} callBack\r\n * @param {object} ele\r\n * @param {object} parent\r\n * @returns {void}\r\n */\r\nconst updateLayout = (callBack, ele, parent) =>\r\n{\r\n\t/**\r\n\t * This will remove the previous element if it exists.\r\n\t */\r\n\tif (ele._prevEle)\r\n\t{\r\n\t\tBuilder.removeNode(ele._prevEle);\r\n\t\tele._prevEle = null;\r\n\t}\r\n\r\n\tconst layout = callBack(parent);\r\n\tif (layout == null)\r\n\t{\r\n\t\treturn;\r\n\t}\r\n\r\n\t/**\r\n\t * This will build the layout and insert it after the\r\n\t * comment element.\r\n\t */\r\n\tconst frag = Builder.build(layout, null, parent);\r\n\tele._prevEle = frag.childNodes[0];\r\n\r\n\tele.parentNode.insertBefore(frag, ele.nextSibling);\r\n};\r\n\r\n/**\r\n * This will create a comment.\r\n *\r\n * @param {object} props\r\n * @returns {object}\r\n */\r\nconst Comment = (props) => BaseComment({\r\n\ttype: 'use',\r\n\tonCreated: props.onCreated,\r\n\tonDestroyed: (ele) =>\r\n\t{\r\n\t\tif (ele._prevEle)\r\n\t\t{\r\n\t\t\tBuilder.removeNode(ele._prevEle);\r\n\t\t\tele._prevEle = null;\r\n\t\t}\r\n\t}\r\n});\r\n\r\n/**\r\n * This will create a use parent tag.\r\n *\r\n * @param {function} callBack\r\n * @returns {object}\r\n */\r\nexport const UseParent = (callBack) =>\r\n{\r\n\tif (typeof callBack !== 'function')\r\n\t{\r\n\t\treturn null;\r\n\t}\r\n\r\n\t/**\r\n\t * This will create a comment to use as a placeholder\r\n\t * to keep the layout in place.\r\n\t */\r\n\treturn Comment({\r\n\t\tonCreated: (ele, parent) =>\r\n\t\t{\r\n\t\t\tupdateLayout(callBack, ele, parent);\r\n\t\t}\r\n\t});\r\n};"],
|
|
5
|
+
"mappings": "AAAA,OAAS,QAAAA,MAAY,uBCArB,OAAS,WAAAC,EAAS,cAAAC,MAAkB,uBCM7B,IAAMC,EAAWC,IAAW,CAC/B,IAAK,UACL,YAAa,GAAGA,EAAM,IAAI,eAC1B,UAAWA,EAAM,UACjB,YAAaA,EAAM,WACvB,GCXA,OAAS,QAAAC,MAAY,uBAMrB,IAAMC,EACN,CACC,GAAI,EACJ,GAAI,IACJ,GAAI,IACJ,GAAI,KACJ,GAAI,KACJ,MAAO,IACR,EAQMC,EAAqBC,GAEtBA,GAASF,EAAY,KAAK,EAAU,MACpCE,GAASF,EAAY,GAAW,KAChCE,GAASF,EAAY,GAAW,KAChCE,GAASF,EAAY,GAAW,KAChCE,GAASF,EAAY,GAAW,KAC7B,KAUFG,EAAoB,CAACC,EAAmBC,IAC9C,CACC,IAAMC,EAAUN,EAAYI,CAAiB,GAAK,EAC5CG,EAASP,EAAYK,CAAgB,GAAK,EAChD,OAAOC,GAAWC,CACnB,EAKMC,EAAW,IAAIC,EAAK,CACzB,KAAM,KACN,MAAO,CACR,CAAC,EAKKC,EAAwB,IAC9B,CACC,GAAI,OAAO,OAAW,IAErB,OAID,IAAMC,EAAe,OAAO,WACtBP,EAAoBH,EAAkBU,CAAY,EAGxDH,EAAS,KAAOJ,EAEhBI,EAAS,MAAQG,EAKjB,IAAMC,EAAe,IACrB,CACC,IAAMC,EAAW,OAAO,WAClBC,EAAgBb,EAAkBY,CAAQ,GAI5CA,IAAaL,EAAS,OAASM,IAAkBN,EAAS,QAG7DA,EAAS,MAAQK,EAEjBL,EAAS,KAAOM,EAElB,EAGA,cAAO,iBAAiB,SAAUF,CAAY,EAGvC,IACP,CACC,OAAO,oBAAoB,SAAUA,CAAY,CAClD,CACD,EAGIG,EAAU,KACV,OAAO,OAAW,MAErBA,EAAUL,EAAsB,GASjC,IAAMM,EAAwBX,GAErBY,GAEH,OAAOA,GAAa,WAEhB,KAIDC,EAAGV,EAAU,OAAQ,CAACJ,EAAmBe,EAAKC,IAGhDjB,EAAkBC,EAAmBC,CAAgB,EAIjDY,EAAST,EAAS,KAAMY,CAAM,EAI/B,IACP,EAWUC,EAAOL,EAAqB,IAAI,EAShCM,EAAON,EAAqB,IAAI,EAShCO,EAAOP,EAAqB,IAAI,EAShCQ,EAAOR,EAAqB,IAAI,EAShCS,EAAOT,EAAqB,IAAI,EAShCU,EAAQV,EAAqB,KAAK,EAa/C,IAAMW,EAA6BC,GAE1BC,GAEH,OAAOA,GAAa,WAEhB,KAIDC,EAAGC,EAAU,OAAQ,CAACC,EAAmBC,EAAKC,IAGhDF,IAAsBJ,EAElBC,EAASG,EAAmBE,CAAM,EAInC,IACP,EAUUC,EAAWR,EAA0B,IAAI,EAQzCS,EAAWT,EAA0B,IAAI,EAQzCU,EAAWV,EAA0B,IAAI,EAQzCW,EAAWX,EAA0B,IAAI,EAQzCY,EAAWZ,EAA0B,IAAI,EAQzCa,EAAYb,EAA0B,KAAK,EAQlDc,EAAgCC,GAE7Bb,GAEH,OAAOA,GAAa,WAEhB,KAIDC,EAAGC,EAAU,OAAQ,CAACC,EAAmBC,EAAKC,IAGhDQ,EAAkB,SAASV,CAAiB,EAGxCH,EAASE,EAAS,KAAMG,CAAM,EAI/B,IACP,EAWUS,EAAUF,EAA6B,CAAC,KAAM,IAAI,CAAC,EASnDG,EAAWH,EAA6B,CAAC,IAAI,CAAC,EAS9CI,EAAYJ,EAA6B,CAAC,KAAM,KAAM,KAAK,CAAC,EFxUzE,IAAMK,EACN,CACC,OAAQ,SACR,MAAO,QACP,MAAO,OACR,EASMC,EAAgB,CAACC,EAAQC,IAC/B,CACC,OAAQA,EACR,CACC,KAAKH,EAAa,OACjB,OAAOI,GAAcF,CAAM,EAC5B,KAAKF,EAAa,MACjB,OAAOE,EAAO,MACf,KAAKF,EAAa,MACjB,OAAOE,EAAO,MACf,QACC,OAAO,IACT,CACD,EAUMG,EAAyB,CAACC,EAAUC,EAAeC,EAAW,OAE5D,CAACC,EAAOC,EAAKR,IAEXO,IAAUF,EAAiBD,EAASG,EAAOC,EAAKR,CAAM,EAAIM,EAW9DG,EAAwB,CAACL,EAAUE,EAAW,OAE5CH,EAAuBC,EAAU,GAAME,CAAQ,EAYjDI,EAAwB,CAACC,EAAgBC,EAAc,KAAMC,EAAsB,KAAMC,EAAe,IAEtG,IAAIC,IACX,CACC,IAAMC,EAAW,CAAC,GAAGD,CAAI,EACnBX,EAAWY,EAAS,IAAI,EAC9B,OAAI,OAAOZ,GAAa,WAEhB,KAGDa,EACP,CACC,UAAW,CAACT,EAAKR,IACjB,CACC,IAAMkB,EAAgB,CAAC,GAAGF,CAAQ,EAGlC,GAAIE,EAAc,OAASJ,EAC3B,CACC,IAAMK,EAAOpB,EAAcC,EAAQW,CAAc,EACjDO,EAAc,QAAQC,CAAI,CAC3B,CAGA,IAAMC,EAAOR,GAAeM,EAAc,CAAC,EACrCG,EAAgBR,EAAsBA,EAAoBT,EAAUc,CAAa,EAAId,EAErFkB,EAASC,EAAaF,EAAeb,EAAKY,EAAMpB,CAAM,EAC5DwB,EAAW,MAAMhB,EAAKU,EAAc,CAAC,EAAGE,EAAME,CAAM,CACrD,CACD,CAAC,CACF,EAWKG,EAAsB,CAACd,EAAgBS,EAAMP,IAE3C,IAAIE,IACX,CACC,IAAMC,EAAW,CAAC,GAAGD,CAAI,EACnBX,EAAY,OAAOY,EAAS,CAAC,GAAM,WAAcA,EAAS,CAAC,EAAIA,EAAS,CAAC,EAC/E,OAAI,OAAOZ,GAAa,WAEhB,KAGDa,EACP,CACC,UAAW,CAACT,EAAKR,IACjB,CACC,IAAMkB,EAAgB,CAAC,GAAGF,CAAQ,EAElC,GAAIE,EAAc,OAAS,GAAK,OAAOA,EAAc,CAAC,GAAM,WAC5D,CACC,IAAMC,EAAOpB,EAAcC,EAAQW,CAAc,EACjDO,EAAc,QAAQC,CAAI,CAC3B,CAEA,IAAME,EAAgBR,EAAoBT,EAAUc,CAAa,EAC3DI,EAASC,EAAaF,EAAeb,EAAKY,EAAMpB,CAAM,EAC5DwB,EAAW,MAAMhB,EAAKU,EAAc,CAAC,EAAGE,EAAME,CAAM,CACrD,CACD,CAAC,CACF,EAYKC,EAAe,CAACG,EAAUlB,EAAKY,EAAMpB,IAQlCO,GACR,CAIKC,EAAI,WAEPmB,EAAQ,WAAWnB,EAAI,QAAQ,EAC/BA,EAAI,SAAW,MAGhB,IAAIoB,EAASF,EAASnB,EAAOC,EAAKR,CAAM,EACxC,GAAI4B,GAAU,KAEb,OAOD,IAAMC,EAAOF,EAAQ,MAAMC,EAAQ,KAAM5B,CAAM,EAC/CQ,EAAI,SAAWqB,EAAK,WAAW,CAAC,EAEhCrB,EAAI,WAAW,aAAaqB,EAAMrB,EAAI,WAAW,CAClD,EASKS,EAAWa,GAAUb,EAAY,CACtC,KAAM,KACN,UAAWa,EAAM,UACjB,YAActB,GACd,CACKA,EAAI,WAEPmB,EAAQ,WAAWnB,EAAI,QAAQ,EAC/BA,EAAI,SAAW,KAEjB,CACD,CAAC,EAQYN,GAAiBF,GAEzBA,EAAO,KAEHA,EAAO,KAGXA,EAAO,SAAWA,EAAO,QAAQ,KAE7BA,EAAO,QAAQ,KAGnBA,EAAO,MAEHA,EAAO,MAGR,KAiBK+B,EAAKrB,EAAsBZ,EAAa,MAAM,EAgB9CkC,GAAUtB,EAAsBZ,EAAa,KAAK,EAgBlDmC,GAAUvB,EAAsBZ,EAAa,KAAK,EAkBlDoC,GAAKxB,EACjBZ,EAAa,OACb,KACA,CAACM,EAAUY,IAAab,EAAuBC,EAAUY,EAAS,CAAC,CAAC,EACpE,CACD,EAkBamB,GAAUzB,EACtBZ,EAAa,MACb,KACA,CAACM,EAAUY,IAAab,EAAuBC,EAAUY,EAAS,CAAC,CAAC,EACpE,CACD,EAgBaoB,GAASX,EACrB3B,EAAa,OACb,SACA,CAACM,EAAUY,IACX,CACC,IAAMqB,EAAarB,EAAS,SAAW,EAAKA,EAAS,CAAC,EAAI,KAC1D,OAAOP,EAAsBL,EAAUiC,CAAS,CACjD,CACD,EAgBaC,GAAcb,EAC1B3B,EAAa,MACb,SACA,CAACM,EAAUY,IACX,CACC,IAAMqB,EAAarB,EAAS,SAAW,EAAKA,EAAS,CAAC,EAAI,KAC1D,OAAOP,EAAsBL,EAAUiC,CAAS,CACjD,CACD,EAcaE,GAASd,EACrB3B,EAAa,OACb,OACCM,GAAaK,EAAsBL,CAAQ,CAC7C,EAcaoC,GAAcf,EAC1B3B,EAAa,MACb,OACCM,GAAaK,EAAsBL,CAAQ,CAC7C,EG5ZA,OAAS,WAAAqC,MAAe,uBAWxB,IAAMC,GAAe,CAACC,EAAUC,EAAKC,IACrC,CAIKD,EAAI,WAEPE,EAAQ,WAAWF,EAAI,QAAQ,EAC/BA,EAAI,SAAW,MAGhB,IAAMG,EAASJ,EAASE,CAAM,EAC9B,GAAIE,GAAU,KAEb,OAOD,IAAMC,EAAOF,EAAQ,MAAMC,EAAQ,KAAMF,CAAM,EAC/CD,EAAI,SAAWI,EAAK,WAAW,CAAC,EAEhCJ,EAAI,WAAW,aAAaI,EAAMJ,EAAI,WAAW,CAClD,EAQMK,GAAWC,GAAUD,EAAY,CACtC,KAAM,MACN,UAAWC,EAAM,UACjB,YAAcN,GACd,CACKA,EAAI,WAEPE,EAAQ,WAAWF,EAAI,QAAQ,EAC/BA,EAAI,SAAW,KAEjB,CACD,CAAC,EAQYO,GAAaR,GAErB,OAAOA,GAAa,WAEhB,KAODM,GAAQ,CACd,UAAW,CAACL,EAAKC,IACjB,CACCH,GAAaC,EAAUC,EAAKC,CAAM,CACnC,CACD,CAAC,EJnEF,IAAMO,EAAM,CAACC,EAAOC,EAAW,QACpB,CAAE,GAAGD,EAAO,SAAAC,CAAS,GASnBC,GAAWF,IAAW,CAAE,GAAGA,EAAO,IAAK,SAAU,GASjDG,GAAOC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEI,GAASD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EK,GAAQF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EM,GAAOH,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EAOzEO,GAASR,IAEX,CAAE,GAAGA,EAAO,IAAK,OAAQ,GASvBS,GAAQT,IAAW,CAAE,GAAGA,EAAO,IAAK,MAAO,GAQ3CU,GAAQV,IAAW,CAAE,GAAGA,EAAO,IAAK,MAAO,GAS3CW,GAAOP,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEW,GAAMR,EAAK,CAACJ,EAAOC,IAAaF,EAAIC,EAAOC,CAAQ,CAAC,EASpDY,GAAST,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7Ea,GAAOV,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEc,GAAIX,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnEe,GAAIZ,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnEgB,GAASb,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EiB,GAAed,EAAK,CAACJ,EAAOC,IAAagB,GAAO,CAAE,GAAGjB,EAAO,KAAM,QAAS,EAAGC,CAAQ,CAAC,EASvFkB,GAAKf,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrEmB,GAAKhB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EAKrEoB,GAAMjB,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,CAAC,CAAC,EAQnDsB,GAAKlB,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,CAAC,CAAC,EAQjDuB,GAAKnB,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,CAAC,CAAC,EASjDwB,GAAOpB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEwB,GAAKrB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrEyB,GAAKtB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE0B,GAAKvB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE2B,GAAKxB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE4B,GAAKzB,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE6B,GAAK1B,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE8B,GAAQ3B,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,CAAC,CAAC,EASvDgC,GAAQ5B,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAQ3EgC,GAAW7B,EAAMJ,GAAU+B,GAAM,CAAE,GAAG/B,EAAO,KAAM,UAAW,CAAC,CAAC,EAShEkC,GAAU9B,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,SAAU,EAAGC,CAAQ,CAAC,EAS/EkC,GAAU/B,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,SAAU,EAAGC,CAAQ,CAAC,EAS/EmC,GAAShC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EoC,GAASjC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EqC,GAAMlC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvEsC,GAAQnC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EuC,GAASpC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EwC,GAAarC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,YAAa,EAAGC,CAAQ,CAAC,EASrFyC,GAAOtC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzE0C,GAAQvC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3E2C,GAAQxC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3E4C,GAAQzC,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3E6C,GAAK1C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE8C,GAAK3C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE+C,GAAK5C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrEgD,GAAQ7C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EiD,GAAQ9C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EkD,GAAQ/C,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EmD,GAAOhD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEoD,GAASjD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EqD,GAASlD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EsD,GAAWnD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,UAAW,EAAGC,CAAQ,CAAC,EASjFuD,GAASpD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EwD,GAAWrD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,UAAW,EAAGC,CAAQ,CAAC,EASjFyD,GAAatD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,YAAa,EAAGC,CAAQ,CAAC,EASrF0D,GAAMvD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvE2D,GAAOxD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzE4D,GAAKzD,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE6D,GAAK1D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE8D,GAAK3D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE+D,GAAK5D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrEgE,GAAW7D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,UAAW,EAAGC,CAAQ,CAAC,EASjFiE,GAAS9D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EkE,GAAQ/D,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EmE,GAAShE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EoE,GAAUjE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,SAAU,EAAGC,CAAQ,CAAC,EAS/EqE,GAAUlE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,SAAU,EAAGC,CAAQ,CAAC,EAS/EsE,GAAKnE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrEuE,GAASpE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,QAAS,EAAGC,CAAQ,CAAC,EAS7EwE,GAAQrE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,OAAQ,EAAGC,CAAQ,CAAC,EAS3EyE,GAAItE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnE0E,GAAOvE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EAKzE2E,GAAIxE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnE4E,GAAMzE,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvE6E,GAAO1E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzE8E,GAAO3E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzE+E,GAAO5E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEgF,GAAM7E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvEiF,GAAO9E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEkF,GAAM/E,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvEmF,GAAMhF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvEoF,GAAMjF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvEqF,GAAIlF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnEsF,GAAInF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnEuF,GAAIpF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,GAAI,EAAGC,CAAQ,CAAC,EASnEwF,GAAOrF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzEyF,GAAOtF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,MAAO,EAAGC,CAAQ,CAAC,EASzE0F,GAAKvF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE2F,GAAKxF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,IAAK,EAAGC,CAAQ,CAAC,EASrE4F,GAAMzF,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvE6F,GAAM1F,EAAK,CAACJ,EAAOC,IAAaF,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,EAAGC,CAAQ,CAAC,EASvE8F,GAAM3F,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,KAAM,CAAC,CAAC,EAQnDgG,GAAU5F,EAAMJ,GAAUD,EAAI,CAAE,GAAGC,EAAO,IAAK,SAAU,CAAC,CAAC",
|
|
6
|
+
"names": ["Atom", "Builder", "dataBinder", "Comment", "props", "Data", "BREAKPOINTS", "getBreakpointName", "width", "matchesBreakpoint", "currentBreakpoint", "targetBreakpoint", "current", "target", "sizeData", "Data", "initializeSizeTracker", "currentWidth", "handleResize", "newWidth", "newBreakpoint", "cleanup", "createResponsiveAtom", "callback", "On", "ele", "parent", "OnXs", "OnSm", "OnMd", "OnLg", "OnXl", "On2Xl", "createExactBreakpointAtom", "targetBreakpoint", "callback", "On", "sizeData", "currentBreakpoint", "ele", "parent", "OnXsOnly", "OnSmOnly", "OnMdOnly", "OnLgOnly", "OnXlOnly", "On2XlOnly", "createSemanticBreakpointAtom", "targetBreakpoints", "OnPhone", "OnTablet", "OnDesktop", "DATA_SOURCES", "getDataSource", "parent", "sourceType", "getParentData", "createEqualityCallback", "callback", "expectedValue", "fallback", "value", "ele", "createBooleanCallback", "createConditionalAtom", "dataSourceType", "defaultProp", "callbackTransformer", "requiredArgs", "args", "settings", "Comment", "localSettings", "data", "prop", "finalCallback", "update", "updateLayout", "dataBinder", "createLoadStyleAtom", "callBack", "Builder", "layout", "frag", "props", "On", "OnState", "OnRoute", "If", "IfState", "OnLoad", "notLoaded", "OnStateLoad", "OnOpen", "OnStateOpen", "Builder", "updateLayout", "callBack", "ele", "parent", "Builder", "layout", "frag", "Comment", "props", "UseParent", "Tag", "props", "children", "Doctype", "Html", "Atom", "Script", "Style", "Head", "Title", "Meta", "Link", "Body", "Div", "Dialog", "Span", "P", "A", "Button", "SubmitButton", "Ul", "Li", "Img", "Br", "Hr", "Text", "H1", "H2", "H3", "H4", "H5", "H6", "Input", "Label", "Checkbox", "Section", "Article", "Header", "Footer", "Nav", "Aside", "Figure", "Figcaption", "Main", "Video", "Audio", "Table", "Tr", "Th", "Td", "Thead", "Tbody", "Tfoot", "Form", "Select", "Option", "Textarea", "Canvas", "Progress", "Blockquote", "Pre", "Code", "Ol", "Dl", "Dt", "Dd", "Fieldset", "Legend", "Meter", "Iframe", "Details", "Summary", "Em", "Strong", "Small", "S", "Cite", "Q", "Dfn", "Abbr", "Data", "Time", "Var", "Samp", "Kbd", "Sub", "Sup", "I", "B", "U", "Mark", "Ruby", "Rt", "Rp", "Bdi", "Bdo", "Wbr", "Comment"]
|
|
7
7
|
}
|
package/dist/types/atoms.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export function Doctype(props: object): object;
|
|
|
3
3
|
* Creates an HTML tag.
|
|
4
4
|
*
|
|
5
5
|
* @param {object} props - Properties for the HTML element.
|
|
6
|
-
* @param {
|
|
6
|
+
* @param {?Array<any>} children - Children elements of the HTML element.
|
|
7
7
|
* @returns {object} - Returns an object representing the HTML element.
|
|
8
8
|
*/
|
|
9
9
|
export const Html: (...args: any[]) => object;
|
|
@@ -11,7 +11,7 @@ export const Html: (...args: any[]) => object;
|
|
|
11
11
|
* Creates a script tag.
|
|
12
12
|
*
|
|
13
13
|
* @param {object} props - Properties for the HTML element.
|
|
14
|
-
* @param {
|
|
14
|
+
* @param {?Array<any>} children - Children elements of the HTML element.
|
|
15
15
|
* @returns {object} - Returns an object representing the HTML element.
|
|
16
16
|
*/
|
|
17
17
|
export const Script: (...args: any[]) => object;
|
|
@@ -19,7 +19,7 @@ export const Script: (...args: any[]) => object;
|
|
|
19
19
|
* Creates a style tag.
|
|
20
20
|
*
|
|
21
21
|
* @param {object} props - Properties for the HTML element.
|
|
22
|
-
* @param {
|
|
22
|
+
* @param {?Array<any>} children - Children elements of the HTML element.
|
|
23
23
|
* @returns {object} - Returns an object representing the HTML element.
|
|
24
24
|
*/
|
|
25
25
|
export const Style: (...args: any[]) => object;
|
|
@@ -27,7 +27,7 @@ export const Style: (...args: any[]) => object;
|
|
|
27
27
|
* Creates a head tag.
|
|
28
28
|
*
|
|
29
29
|
* @param {object} props - Properties for the head element.
|
|
30
|
-
* @param {
|
|
30
|
+
* @param {?Array<any>} children - Children elements of the head.
|
|
31
31
|
* @returns {object} - Returns an object representing the head element.
|
|
32
32
|
*/
|
|
33
33
|
export const Head: (...args: any[]) => object;
|
|
@@ -46,7 +46,7 @@ export const Body: (...args: any[]) => object;
|
|
|
46
46
|
* Creates a div element.
|
|
47
47
|
*
|
|
48
48
|
* @param {object} props - Properties for the div element.
|
|
49
|
-
* @param {
|
|
49
|
+
* @param {?Array<any>} children - Children elements of the div.
|
|
50
50
|
* @returns {object} - Returns an object representing the div element.
|
|
51
51
|
*/
|
|
52
52
|
export const Div: (...args: any[]) => object;
|
|
@@ -54,7 +54,7 @@ export const Div: (...args: any[]) => object;
|
|
|
54
54
|
* Creates a dialog element.
|
|
55
55
|
*
|
|
56
56
|
* @param {object} props - Properties for the div element.
|
|
57
|
-
* @param {
|
|
57
|
+
* @param {?Array<any>} children - Children elements of the div.
|
|
58
58
|
* @returns {object} - Returns an object representing the dialog element.
|
|
59
59
|
*/
|
|
60
60
|
export const Dialog: (...args: any[]) => object;
|
|
@@ -62,7 +62,7 @@ export const Dialog: (...args: any[]) => object;
|
|
|
62
62
|
* Creates a span element.
|
|
63
63
|
*
|
|
64
64
|
* @param {object} props - Properties for the span element.
|
|
65
|
-
* @param {
|
|
65
|
+
* @param {?Array<any>} children - Children elements of the span.
|
|
66
66
|
* @returns {object} - Returns an object representing the span element.
|
|
67
67
|
*/
|
|
68
68
|
export const Span: (...args: any[]) => object;
|
|
@@ -70,7 +70,7 @@ export const Span: (...args: any[]) => object;
|
|
|
70
70
|
* Creates a paragraph (p) element.
|
|
71
71
|
*
|
|
72
72
|
* @param {object} props - Properties for the paragraph element.
|
|
73
|
-
* @param {
|
|
73
|
+
* @param {?Array<any>} children - Children elements of the paragraph.
|
|
74
74
|
* @returns {object} - Returns an object representing the paragraph element.
|
|
75
75
|
*/
|
|
76
76
|
export const P: (...args: any[]) => object;
|
|
@@ -78,7 +78,7 @@ export const P: (...args: any[]) => object;
|
|
|
78
78
|
* Creates an anchor (a) element.
|
|
79
79
|
*
|
|
80
80
|
* @param {object} props - Properties for the anchor element.
|
|
81
|
-
* @param {
|
|
81
|
+
* @param {?Array<any>} children - Children elements of the anchor.
|
|
82
82
|
* @return {object} - Returns an object representing the anchor element.
|
|
83
83
|
*/
|
|
84
84
|
export const A: (...args: any[]) => object;
|
|
@@ -86,7 +86,7 @@ export const A: (...args: any[]) => object;
|
|
|
86
86
|
* Creates a button element.
|
|
87
87
|
*
|
|
88
88
|
* @param {object} props - Properties for the element.
|
|
89
|
-
* @param {
|
|
89
|
+
* @param {?Array<any>} children - Children elements.
|
|
90
90
|
* @returns {object} - Returns an object representing the element.
|
|
91
91
|
*/
|
|
92
92
|
export const Button: (...args: any[]) => object;
|
|
@@ -94,7 +94,7 @@ export const Button: (...args: any[]) => object;
|
|
|
94
94
|
* Creates a submit button element.
|
|
95
95
|
*
|
|
96
96
|
* @param {object} props - Properties for the element.
|
|
97
|
-
* @param {
|
|
97
|
+
* @param {?Array<any>} children - Children elements.
|
|
98
98
|
* @returns {object} - Returns an object representing the element.
|
|
99
99
|
*/
|
|
100
100
|
export const SubmitButton: (...args: any[]) => object;
|
|
@@ -102,7 +102,7 @@ export const SubmitButton: (...args: any[]) => object;
|
|
|
102
102
|
* Creates an unordered list (ul) element.
|
|
103
103
|
*
|
|
104
104
|
* @param {object} props - Properties for the element.
|
|
105
|
-
* @param {
|
|
105
|
+
* @param {?Array<any>} children - Children elements.
|
|
106
106
|
* @returns {object} - Returns an object representing the element.
|
|
107
107
|
*/
|
|
108
108
|
export const Ul: (...args: any[]) => object;
|
|
@@ -110,7 +110,7 @@ export const Ul: (...args: any[]) => object;
|
|
|
110
110
|
* Creates a list item (li) element.
|
|
111
111
|
*
|
|
112
112
|
* @param {object} props - Properties for the element.
|
|
113
|
-
* @param {
|
|
113
|
+
* @param {?Array<any>} children - Children elements.
|
|
114
114
|
* @returns {object} - Returns an object representing the element.
|
|
115
115
|
*/
|
|
116
116
|
export const Li: (...args: any[]) => object;
|
|
@@ -136,7 +136,7 @@ export const Hr: (...args: any[]) => object;
|
|
|
136
136
|
* Creates a text (text) element.
|
|
137
137
|
*
|
|
138
138
|
* @param {object} props - Properties for the text element.
|
|
139
|
-
* @param {
|
|
139
|
+
* @param {?Array<any>} children - Children elements of the text element.
|
|
140
140
|
* @returns {object} - Returns an object representing the text element.
|
|
141
141
|
*/
|
|
142
142
|
export const Text: (...args: any[]) => object;
|
|
@@ -144,7 +144,7 @@ export const Text: (...args: any[]) => object;
|
|
|
144
144
|
* Creates a header 1 (h1) element.
|
|
145
145
|
*
|
|
146
146
|
* @param {object} props - Properties for the h1 element.
|
|
147
|
-
* @param {
|
|
147
|
+
* @param {?Array<any>} children - Children elements of the h1 element.
|
|
148
148
|
* @returns {object} - Returns an object representing the h1 element.
|
|
149
149
|
*/
|
|
150
150
|
export const H1: (...args: any[]) => object;
|
|
@@ -152,7 +152,7 @@ export const H1: (...args: any[]) => object;
|
|
|
152
152
|
* Creates a header 2 (h2) element.
|
|
153
153
|
*
|
|
154
154
|
* @param {object} props - Properties for the element.
|
|
155
|
-
* @param {
|
|
155
|
+
* @param {?Array<any>} children - Children elements.
|
|
156
156
|
* @returns {object} - Returns an object representing the element.
|
|
157
157
|
*/
|
|
158
158
|
export const H2: (...args: any[]) => object;
|
|
@@ -160,7 +160,7 @@ export const H2: (...args: any[]) => object;
|
|
|
160
160
|
* Creates a header 3 (h3) element.
|
|
161
161
|
*
|
|
162
162
|
* @param {object} props - Properties for the element.
|
|
163
|
-
* @param {
|
|
163
|
+
* @param {?Array<any>} children - Children elements.
|
|
164
164
|
* @returns {object} - Returns an object representing the element.
|
|
165
165
|
*/
|
|
166
166
|
export const H3: (...args: any[]) => object;
|
|
@@ -168,7 +168,7 @@ export const H3: (...args: any[]) => object;
|
|
|
168
168
|
* Creates a header 4 (h4) element.
|
|
169
169
|
*
|
|
170
170
|
* @param {object} props - Properties for the element.
|
|
171
|
-
* @param {
|
|
171
|
+
* @param {?Array<any>} children - Children elements.
|
|
172
172
|
* @returns {object} - Returns an object representing the element.
|
|
173
173
|
*/
|
|
174
174
|
export const H4: (...args: any[]) => object;
|
|
@@ -176,7 +176,7 @@ export const H4: (...args: any[]) => object;
|
|
|
176
176
|
* Creates a header 5 (h5) element.
|
|
177
177
|
*
|
|
178
178
|
* @param {object} props - Properties for the element.
|
|
179
|
-
* @param {
|
|
179
|
+
* @param {?Array<any>} children - Children elements.
|
|
180
180
|
* @returns {object} - Returns an object representing the element.
|
|
181
181
|
*/
|
|
182
182
|
export const H5: (...args: any[]) => object;
|
|
@@ -184,7 +184,7 @@ export const H5: (...args: any[]) => object;
|
|
|
184
184
|
* Creates a header 6 (h6) element.
|
|
185
185
|
*
|
|
186
186
|
* @param {object} props - Properties for the element.
|
|
187
|
-
* @param {
|
|
187
|
+
* @param {?Array<any>} children - Children elements.
|
|
188
188
|
* @returns {object} - Returns an object representing the element.
|
|
189
189
|
*/
|
|
190
190
|
export const H6: (...args: any[]) => object;
|
|
@@ -192,7 +192,7 @@ export const H6: (...args: any[]) => object;
|
|
|
192
192
|
* Creates an input element.
|
|
193
193
|
*
|
|
194
194
|
* @param {object} props - Properties for the element.
|
|
195
|
-
* @param {
|
|
195
|
+
* @param {?Array<any>} children - Children elements.
|
|
196
196
|
* @returns {object} - Returns an object representing the element.
|
|
197
197
|
*/
|
|
198
198
|
export const Input: (...args: any[]) => object;
|
|
@@ -200,7 +200,7 @@ export const Input: (...args: any[]) => object;
|
|
|
200
200
|
* Creates a label element.
|
|
201
201
|
*
|
|
202
202
|
* @param {object} props - Properties for the element.
|
|
203
|
-
* @param {
|
|
203
|
+
* @param {?Array<any>} children - Children elements.
|
|
204
204
|
* @returns {object} - Returns an object representing the element.
|
|
205
205
|
*/
|
|
206
206
|
export const Label: (...args: any[]) => object;
|
|
@@ -215,7 +215,7 @@ export const Checkbox: (...args: any[]) => object;
|
|
|
215
215
|
* Creates a section element.
|
|
216
216
|
*
|
|
217
217
|
* @param {object} props - Properties for the element.
|
|
218
|
-
* @param {
|
|
218
|
+
* @param {?Array<any>} children - Children elements.
|
|
219
219
|
* @returns {object} - Returns an object representing the element.
|
|
220
220
|
*/
|
|
221
221
|
export const Section: (...args: any[]) => object;
|
|
@@ -223,7 +223,7 @@ export const Section: (...args: any[]) => object;
|
|
|
223
223
|
* Creates an article element.
|
|
224
224
|
*
|
|
225
225
|
* @param {object} props - Properties for the element.
|
|
226
|
-
* @param {
|
|
226
|
+
* @param {?Array<any>} children - Children elements.
|
|
227
227
|
* @returns {object} - Returns an object representing the element.
|
|
228
228
|
*/
|
|
229
229
|
export const Article: (...args: any[]) => object;
|
|
@@ -231,7 +231,7 @@ export const Article: (...args: any[]) => object;
|
|
|
231
231
|
* Creates a header (header) element.
|
|
232
232
|
*
|
|
233
233
|
* @param {object} props - Properties for the element.
|
|
234
|
-
* @param {
|
|
234
|
+
* @param {?Array<any>} children - Children elements.
|
|
235
235
|
* @returns {object} - Returns an object representing the element.
|
|
236
236
|
*/
|
|
237
237
|
export const Header: (...args: any[]) => object;
|
|
@@ -239,7 +239,7 @@ export const Header: (...args: any[]) => object;
|
|
|
239
239
|
* Creates a footer element.
|
|
240
240
|
*
|
|
241
241
|
* @param {object} props - Properties for the element.
|
|
242
|
-
* @param {
|
|
242
|
+
* @param {?Array<any>} children - Children elements.
|
|
243
243
|
* @returns {object} - Returns an object representing the element.
|
|
244
244
|
*/
|
|
245
245
|
export const Footer: (...args: any[]) => object;
|
|
@@ -247,7 +247,7 @@ export const Footer: (...args: any[]) => object;
|
|
|
247
247
|
* Creates a nav element.
|
|
248
248
|
*
|
|
249
249
|
* @param {object} props - Properties for the element.
|
|
250
|
-
* @param {
|
|
250
|
+
* @param {?Array<any>} children - Children elements.
|
|
251
251
|
* @returns {object} - Returns an object representing the element.
|
|
252
252
|
*/
|
|
253
253
|
export const Nav: (...args: any[]) => object;
|
|
@@ -255,7 +255,7 @@ export const Nav: (...args: any[]) => object;
|
|
|
255
255
|
* Creates an aside element.
|
|
256
256
|
*
|
|
257
257
|
* @param {object} props - Properties for the element.
|
|
258
|
-
* @param {
|
|
258
|
+
* @param {?Array<any>} children - Children elements.
|
|
259
259
|
* @returns {object} - Returns an object representing the element.
|
|
260
260
|
*/
|
|
261
261
|
export const Aside: (...args: any[]) => object;
|
|
@@ -263,7 +263,7 @@ export const Aside: (...args: any[]) => object;
|
|
|
263
263
|
* Creates a figure element.
|
|
264
264
|
*
|
|
265
265
|
* @param {object} props - Properties for the element.
|
|
266
|
-
* @param {
|
|
266
|
+
* @param {?Array<any>} children - Children elements.
|
|
267
267
|
* @returns {object} - Returns an object representing the element.
|
|
268
268
|
*/
|
|
269
269
|
export const Figure: (...args: any[]) => object;
|
|
@@ -271,7 +271,7 @@ export const Figure: (...args: any[]) => object;
|
|
|
271
271
|
* Creates a figcaption element.
|
|
272
272
|
*
|
|
273
273
|
* @param {object} props - Properties for the element.
|
|
274
|
-
* @param {
|
|
274
|
+
* @param {?Array<any>} children - Children elements.
|
|
275
275
|
* @returns {object} - Returns an object representing the element.
|
|
276
276
|
*/
|
|
277
277
|
export const Figcaption: (...args: any[]) => object;
|
|
@@ -279,7 +279,7 @@ export const Figcaption: (...args: any[]) => object;
|
|
|
279
279
|
* Creates a main element.
|
|
280
280
|
*
|
|
281
281
|
* @param {object} props - Properties for the element.
|
|
282
|
-
* @param {
|
|
282
|
+
* @param {?Array<any>} children - Children elements.
|
|
283
283
|
* @returns {object} - Returns an object representing the element.
|
|
284
284
|
*/
|
|
285
285
|
export const Main: (...args: any[]) => object;
|
|
@@ -287,7 +287,7 @@ export const Main: (...args: any[]) => object;
|
|
|
287
287
|
* Creates a video element.
|
|
288
288
|
*
|
|
289
289
|
* @param {object} props - Properties for the element.
|
|
290
|
-
* @param {
|
|
290
|
+
* @param {?Array<any>} children - Children elements.
|
|
291
291
|
* @returns {object} - Returns an object representing the element.
|
|
292
292
|
*/
|
|
293
293
|
export const Video: (...args: any[]) => object;
|
|
@@ -295,7 +295,7 @@ export const Video: (...args: any[]) => object;
|
|
|
295
295
|
* Creates an audio element.
|
|
296
296
|
*
|
|
297
297
|
* @param {object} props - Properties for the element.
|
|
298
|
-
* @param {
|
|
298
|
+
* @param {?Array<any>} children - Children elements.
|
|
299
299
|
* @returns {object} - Returns an object representing the element.
|
|
300
300
|
*/
|
|
301
301
|
export const Audio: (...args: any[]) => object;
|
|
@@ -303,7 +303,7 @@ export const Audio: (...args: any[]) => object;
|
|
|
303
303
|
* Creates a table element.
|
|
304
304
|
*
|
|
305
305
|
* @param {object} props - Properties for the element.
|
|
306
|
-
* @param {
|
|
306
|
+
* @param {?Array<any>} children - Children elements.
|
|
307
307
|
* @returns {object} - Returns an object representing the element.
|
|
308
308
|
*/
|
|
309
309
|
export const Table: (...args: any[]) => object;
|
|
@@ -311,7 +311,7 @@ export const Table: (...args: any[]) => object;
|
|
|
311
311
|
* Creates a table row (tr) element.
|
|
312
312
|
*
|
|
313
313
|
* @param {object} props - Properties for the element.
|
|
314
|
-
* @param {
|
|
314
|
+
* @param {?Array<any>} children - Children elements.
|
|
315
315
|
* @returns {object} - Returns an object representing the element.
|
|
316
316
|
*/
|
|
317
317
|
export const Tr: (...args: any[]) => object;
|
|
@@ -319,7 +319,7 @@ export const Tr: (...args: any[]) => object;
|
|
|
319
319
|
* Creates a table header (th) element.
|
|
320
320
|
*
|
|
321
321
|
* @param {object} props - Properties for the element.
|
|
322
|
-
* @param {
|
|
322
|
+
* @param {?Array<any>} children - Children elements.
|
|
323
323
|
* @returns {object} - Returns an object representing the element.
|
|
324
324
|
*/
|
|
325
325
|
export const Th: (...args: any[]) => object;
|
|
@@ -327,7 +327,7 @@ export const Th: (...args: any[]) => object;
|
|
|
327
327
|
* Creates a table data (td) element.
|
|
328
328
|
*
|
|
329
329
|
* @param {object} props - Properties for the element.
|
|
330
|
-
* @param {
|
|
330
|
+
* @param {?Array<any>} children - Children elements.
|
|
331
331
|
* @returns {object} - Returns an object representing the element.
|
|
332
332
|
*/
|
|
333
333
|
export const Td: (...args: any[]) => object;
|
|
@@ -335,7 +335,7 @@ export const Td: (...args: any[]) => object;
|
|
|
335
335
|
* Creates a table header group (thead) element.
|
|
336
336
|
*
|
|
337
337
|
* @param {object} props - Properties for the element.
|
|
338
|
-
* @param {
|
|
338
|
+
* @param {?Array<any>} children - Children elements.
|
|
339
339
|
* @returns {object} - Returns an object representing the element.
|
|
340
340
|
*/
|
|
341
341
|
export const Thead: (...args: any[]) => object;
|
|
@@ -343,7 +343,7 @@ export const Thead: (...args: any[]) => object;
|
|
|
343
343
|
* Creates a table body (tbody) element.
|
|
344
344
|
*
|
|
345
345
|
* @param {object} props - Properties for the element.
|
|
346
|
-
* @param {
|
|
346
|
+
* @param {?Array<any>} children - Children elements.
|
|
347
347
|
* @returns {object} - Returns an object representing the element.
|
|
348
348
|
*/
|
|
349
349
|
export const Tbody: (...args: any[]) => object;
|
|
@@ -351,7 +351,7 @@ export const Tbody: (...args: any[]) => object;
|
|
|
351
351
|
* Creates a table footer (tfoot) element.
|
|
352
352
|
*
|
|
353
353
|
* @param {object} props - Properties for the element.
|
|
354
|
-
* @param {
|
|
354
|
+
* @param {?Array<any>} children - Children elements.
|
|
355
355
|
* @returns {object} - Returns an object representing the element.
|
|
356
356
|
*/
|
|
357
357
|
export const Tfoot: (...args: any[]) => object;
|
|
@@ -359,7 +359,7 @@ export const Tfoot: (...args: any[]) => object;
|
|
|
359
359
|
* Creates a form element.
|
|
360
360
|
*
|
|
361
361
|
* @param {object} props - Properties for the element.
|
|
362
|
-
* @param {
|
|
362
|
+
* @param {?Array<any>} children - Children elements.
|
|
363
363
|
* @returns {object} - Returns an object representing the element.
|
|
364
364
|
*/
|
|
365
365
|
export const Form: (...args: any[]) => object;
|
|
@@ -367,7 +367,7 @@ export const Form: (...args: any[]) => object;
|
|
|
367
367
|
* Creates a select element.
|
|
368
368
|
*
|
|
369
369
|
* @param {object} props - Properties for the element.
|
|
370
|
-
* @param {
|
|
370
|
+
* @param {?Array<any>} children - Children elements.
|
|
371
371
|
* @returns {object} - Returns an object representing the element.
|
|
372
372
|
*/
|
|
373
373
|
export const Select: (...args: any[]) => object;
|
|
@@ -375,7 +375,7 @@ export const Select: (...args: any[]) => object;
|
|
|
375
375
|
* Creates an option element for a select tag.
|
|
376
376
|
*
|
|
377
377
|
* @param {object} props - Properties for the element.
|
|
378
|
-
* @param {
|
|
378
|
+
* @param {?Array<any>} children - Children elements.
|
|
379
379
|
* @returns {object} - Returns an object representing the element.
|
|
380
380
|
*/
|
|
381
381
|
export const Option: (...args: any[]) => object;
|
|
@@ -383,7 +383,7 @@ export const Option: (...args: any[]) => object;
|
|
|
383
383
|
* Creates a textarea element.
|
|
384
384
|
*
|
|
385
385
|
* @param {object} props - Properties for the element.
|
|
386
|
-
* @param {
|
|
386
|
+
* @param {?Array<any>} children - Children elements.
|
|
387
387
|
* @returns {object} - Returns an object representing the element.
|
|
388
388
|
*/
|
|
389
389
|
export const Textarea: (...args: any[]) => object;
|
|
@@ -391,7 +391,7 @@ export const Textarea: (...args: any[]) => object;
|
|
|
391
391
|
* Creates a canvas element.
|
|
392
392
|
*
|
|
393
393
|
* @param {object} props - Properties for the element.
|
|
394
|
-
* @param {
|
|
394
|
+
* @param {?Array<any>} children - Children elements.
|
|
395
395
|
* @returns {object} - Returns an object representing the element.
|
|
396
396
|
*/
|
|
397
397
|
export const Canvas: (...args: any[]) => object;
|
|
@@ -399,7 +399,7 @@ export const Canvas: (...args: any[]) => object;
|
|
|
399
399
|
* Creates a progress element.
|
|
400
400
|
*
|
|
401
401
|
* @param {object} props - Properties for the element.
|
|
402
|
-
* @param {
|
|
402
|
+
* @param {?Array<any>} children - Children elements.
|
|
403
403
|
* @returns {object} - Returns an object representing the element.
|
|
404
404
|
*/
|
|
405
405
|
export const Progress: (...args: any[]) => object;
|
|
@@ -407,7 +407,7 @@ export const Progress: (...args: any[]) => object;
|
|
|
407
407
|
* Creates a blockquote element.
|
|
408
408
|
*
|
|
409
409
|
* @param {object} props - Properties for the element.
|
|
410
|
-
* @param {
|
|
410
|
+
* @param {?Array<any>} children - Children elements.
|
|
411
411
|
* @returns {object} - Returns an object representing the element.
|
|
412
412
|
*/
|
|
413
413
|
export const Blockquote: (...args: any[]) => object;
|
|
@@ -415,7 +415,7 @@ export const Blockquote: (...args: any[]) => object;
|
|
|
415
415
|
* Creates a preformatted text (pre) element.
|
|
416
416
|
*
|
|
417
417
|
* @param {object} props - Properties for the element.
|
|
418
|
-
* @param {
|
|
418
|
+
* @param {?Array<any>} children - Children elements.
|
|
419
419
|
* @returns {object} - Returns an object representing the element.
|
|
420
420
|
*/
|
|
421
421
|
export const Pre: (...args: any[]) => object;
|
|
@@ -423,7 +423,7 @@ export const Pre: (...args: any[]) => object;
|
|
|
423
423
|
* Creates a code element.
|
|
424
424
|
*
|
|
425
425
|
* @param {object} props - Properties for the element.
|
|
426
|
-
* @param {
|
|
426
|
+
* @param {?Array<any>} children - Children elements.
|
|
427
427
|
* @returns {object} - Returns an object representing the element.
|
|
428
428
|
*/
|
|
429
429
|
export const Code: (...args: any[]) => object;
|
|
@@ -431,7 +431,7 @@ export const Code: (...args: any[]) => object;
|
|
|
431
431
|
* Creates an ordered list (ol) element.
|
|
432
432
|
*
|
|
433
433
|
* @param {object} props - Properties for the element.
|
|
434
|
-
* @param {
|
|
434
|
+
* @param {?Array<any>} children - Children elements.
|
|
435
435
|
* @returns {object} - Returns an object representing the element.
|
|
436
436
|
*/
|
|
437
437
|
export const Ol: (...args: any[]) => object;
|
|
@@ -439,7 +439,7 @@ export const Ol: (...args: any[]) => object;
|
|
|
439
439
|
* Creates a definition list (dl) element.
|
|
440
440
|
*
|
|
441
441
|
* @param {object} props - Properties for the element.
|
|
442
|
-
* @param {
|
|
442
|
+
* @param {?Array<any>} children - Children elements.
|
|
443
443
|
* @returns {object} - Returns an object representing the element.
|
|
444
444
|
*/
|
|
445
445
|
export const Dl: (...args: any[]) => object;
|
|
@@ -447,7 +447,7 @@ export const Dl: (...args: any[]) => object;
|
|
|
447
447
|
* Creates a definition term (dt) element.
|
|
448
448
|
*
|
|
449
449
|
* @param {object} props - Properties for the element.
|
|
450
|
-
* @param {
|
|
450
|
+
* @param {?Array<any>} children - Children elements.
|
|
451
451
|
* @returns {object} - Returns an object representing the element.
|
|
452
452
|
*/
|
|
453
453
|
export const Dt: (...args: any[]) => object;
|
|
@@ -455,7 +455,7 @@ export const Dt: (...args: any[]) => object;
|
|
|
455
455
|
* Creates a definition description (dd) element.
|
|
456
456
|
*
|
|
457
457
|
* @param {object} props - Properties for the element.
|
|
458
|
-
* @param {
|
|
458
|
+
* @param {?Array<any>} children - Children elements.
|
|
459
459
|
* @returns {object} - Returns an object representing the element.
|
|
460
460
|
*/
|
|
461
461
|
export const Dd: (...args: any[]) => object;
|
|
@@ -463,7 +463,7 @@ export const Dd: (...args: any[]) => object;
|
|
|
463
463
|
* Creates a fieldset element.
|
|
464
464
|
*
|
|
465
465
|
* @param {object} props - Properties for the element.
|
|
466
|
-
* @param {
|
|
466
|
+
* @param {?Array<any>} children - Children elements.
|
|
467
467
|
* @returns {object} - Returns an object representing the element.
|
|
468
468
|
*/
|
|
469
469
|
export const Fieldset: (...args: any[]) => object;
|
|
@@ -471,7 +471,7 @@ export const Fieldset: (...args: any[]) => object;
|
|
|
471
471
|
* Creates a legend element.
|
|
472
472
|
*
|
|
473
473
|
* @param {object} props - Properties for the element.
|
|
474
|
-
* @param {
|
|
474
|
+
* @param {?Array<any>} children - Children elements.
|
|
475
475
|
* @returns {object} - Returns an object representing the element.
|
|
476
476
|
*/
|
|
477
477
|
export const Legend: (...args: any[]) => object;
|
|
@@ -479,7 +479,7 @@ export const Legend: (...args: any[]) => object;
|
|
|
479
479
|
* Creates a meter element.
|
|
480
480
|
*
|
|
481
481
|
* @param {object} props - Properties for the element.
|
|
482
|
-
* @param {
|
|
482
|
+
* @param {?Array<any>} children - Children elements.
|
|
483
483
|
* @returns {object} - Returns an object representing the element.
|
|
484
484
|
*/
|
|
485
485
|
export const Meter: (...args: any[]) => object;
|
|
@@ -487,7 +487,7 @@ export const Meter: (...args: any[]) => object;
|
|
|
487
487
|
* Creates an iframe element.
|
|
488
488
|
*
|
|
489
489
|
* @param {object} props - Properties for the element.
|
|
490
|
-
* @param {
|
|
490
|
+
* @param {?Array<any>} children - Children elements.
|
|
491
491
|
* @returns {object} - Returns an object representing the element.
|
|
492
492
|
*/
|
|
493
493
|
export const Iframe: (...args: any[]) => object;
|
|
@@ -495,7 +495,7 @@ export const Iframe: (...args: any[]) => object;
|
|
|
495
495
|
* Creates a details element.
|
|
496
496
|
*
|
|
497
497
|
* @param {object} props - Properties for the element.
|
|
498
|
-
* @param {
|
|
498
|
+
* @param {?Array<any>} children - Children elements.
|
|
499
499
|
* @returns {object} - Returns an object representing the element.
|
|
500
500
|
*/
|
|
501
501
|
export const Details: (...args: any[]) => object;
|
|
@@ -503,7 +503,7 @@ export const Details: (...args: any[]) => object;
|
|
|
503
503
|
* Creates a summary element.
|
|
504
504
|
*
|
|
505
505
|
* @param {object} props - Properties for the element.
|
|
506
|
-
* @param {
|
|
506
|
+
* @param {?Array<any>} children - Children elements.
|
|
507
507
|
* @returns {object} - Returns an object representing the element.
|
|
508
508
|
*/
|
|
509
509
|
export const Summary: (...args: any[]) => object;
|
|
@@ -511,7 +511,7 @@ export const Summary: (...args: any[]) => object;
|
|
|
511
511
|
* Creates an em element.
|
|
512
512
|
*
|
|
513
513
|
* @param {object} props - Properties for the element.
|
|
514
|
-
* @param {
|
|
514
|
+
* @param {?Array<any>} children - Children elements.
|
|
515
515
|
* @returns {object} - Returns an object representing the element.
|
|
516
516
|
*/
|
|
517
517
|
export const Em: (...args: any[]) => object;
|
|
@@ -519,7 +519,7 @@ export const Em: (...args: any[]) => object;
|
|
|
519
519
|
* Creates a strong element.
|
|
520
520
|
*
|
|
521
521
|
* @param {object} props - Properties for the element.
|
|
522
|
-
* @param {
|
|
522
|
+
* @param {?Array<any>} children - Children elements.
|
|
523
523
|
* @returns {object} - Returns an object representing the element.
|
|
524
524
|
*/
|
|
525
525
|
export const Strong: (...args: any[]) => object;
|
|
@@ -527,7 +527,7 @@ export const Strong: (...args: any[]) => object;
|
|
|
527
527
|
* Creates a small element.
|
|
528
528
|
*
|
|
529
529
|
* @param {object} props - Properties for the element.
|
|
530
|
-
* @param {
|
|
530
|
+
* @param {?Array<any>} children - Children elements.
|
|
531
531
|
* @returns {object} - Returns an object representing the element.
|
|
532
532
|
*/
|
|
533
533
|
export const Small: (...args: any[]) => object;
|
|
@@ -535,7 +535,7 @@ export const Small: (...args: any[]) => object;
|
|
|
535
535
|
* Creates a s element (strikethrough).
|
|
536
536
|
*
|
|
537
537
|
* @param {object} props - Properties for the element.
|
|
538
|
-
* @param {
|
|
538
|
+
* @param {?Array<any>} children - Children elements.
|
|
539
539
|
* @returns {object} - Returns an object representing the element.
|
|
540
540
|
*/
|
|
541
541
|
export const S: (...args: any[]) => object;
|
|
@@ -543,7 +543,7 @@ export const S: (...args: any[]) => object;
|
|
|
543
543
|
* Creates a cite element.
|
|
544
544
|
*
|
|
545
545
|
* @param {object} props - Properties for the element.
|
|
546
|
-
* @param {
|
|
546
|
+
* @param {?Array<any>} children - Children elements.
|
|
547
547
|
* @returns {object} - Returns an object representing the element.
|
|
548
548
|
*/
|
|
549
549
|
export const Cite: (...args: any[]) => object;
|
|
@@ -555,7 +555,7 @@ export const Q: (...args: any[]) => object;
|
|
|
555
555
|
* Creates a dfn element (definition element).
|
|
556
556
|
*
|
|
557
557
|
* @param {object} props - Properties for the element.
|
|
558
|
-
* @param {
|
|
558
|
+
* @param {?Array<any>} children - Children elements.
|
|
559
559
|
* @returns {object} - Returns an object representing the element.
|
|
560
560
|
*/
|
|
561
561
|
export const Dfn: (...args: any[]) => object;
|
|
@@ -563,7 +563,7 @@ export const Dfn: (...args: any[]) => object;
|
|
|
563
563
|
* Creates an abbr element (abbreviation).
|
|
564
564
|
*
|
|
565
565
|
* @param {object} props - Properties for the element.
|
|
566
|
-
* @param {
|
|
566
|
+
* @param {?Array<any>} children - Children elements.
|
|
567
567
|
* @returns {object} - Returns an object representing the element.
|
|
568
568
|
*/
|
|
569
569
|
export const Abbr: (...args: any[]) => object;
|
|
@@ -571,7 +571,7 @@ export const Abbr: (...args: any[]) => object;
|
|
|
571
571
|
* Creates a data element.
|
|
572
572
|
*
|
|
573
573
|
* @param {object} props - Properties for the element.
|
|
574
|
-
* @param {
|
|
574
|
+
* @param {?Array<any>} children - Children elements.
|
|
575
575
|
* @returns {object} - Returns an object representing the element.
|
|
576
576
|
*/
|
|
577
577
|
export const Data: (...args: any[]) => object;
|
|
@@ -579,7 +579,7 @@ export const Data: (...args: any[]) => object;
|
|
|
579
579
|
* Creates a time element.
|
|
580
580
|
*
|
|
581
581
|
* @param {object} props - Properties for the element.
|
|
582
|
-
* @param {
|
|
582
|
+
* @param {?Array<any>} children - Children elements.
|
|
583
583
|
* @returns {object} - Returns an object representing the element.
|
|
584
584
|
*/
|
|
585
585
|
export const Time: (...args: any[]) => object;
|
|
@@ -587,7 +587,7 @@ export const Time: (...args: any[]) => object;
|
|
|
587
587
|
* Creates a var element (variable).
|
|
588
588
|
*
|
|
589
589
|
* @param {object} props - Properties for the element.
|
|
590
|
-
* @param {
|
|
590
|
+
* @param {?Array<any>} children - Children elements.
|
|
591
591
|
* @returns {object} - Returns an object representing the element.
|
|
592
592
|
*/
|
|
593
593
|
export const Var: (...args: any[]) => object;
|
|
@@ -595,7 +595,7 @@ export const Var: (...args: any[]) => object;
|
|
|
595
595
|
* Creates a samp element (sample output).
|
|
596
596
|
*
|
|
597
597
|
* @param {object} props - Properties for the element.
|
|
598
|
-
* @param {
|
|
598
|
+
* @param {?Array<any>} children - Children elements.
|
|
599
599
|
* @returns {object} - Returns an object representing the element.
|
|
600
600
|
*/
|
|
601
601
|
export const Samp: (...args: any[]) => object;
|
|
@@ -603,7 +603,7 @@ export const Samp: (...args: any[]) => object;
|
|
|
603
603
|
* Creates a kbd element (keyboard input).
|
|
604
604
|
*
|
|
605
605
|
* @param {object} props - Properties for the element.
|
|
606
|
-
* @param {
|
|
606
|
+
* @param {?Array<any>} children - Children elements.
|
|
607
607
|
* @returns {object} - Returns an object representing the element.
|
|
608
608
|
*/
|
|
609
609
|
export const Kbd: (...args: any[]) => object;
|
|
@@ -611,7 +611,7 @@ export const Kbd: (...args: any[]) => object;
|
|
|
611
611
|
* Creates a sub element (subscript).
|
|
612
612
|
*
|
|
613
613
|
* @param {object} props - Properties for the element.
|
|
614
|
-
* @param {
|
|
614
|
+
* @param {?Array<any>} children - Children elements.
|
|
615
615
|
* @returns {object} - Returns an object representing the element.
|
|
616
616
|
*/
|
|
617
617
|
export const Sub: (...args: any[]) => object;
|
|
@@ -619,7 +619,7 @@ export const Sub: (...args: any[]) => object;
|
|
|
619
619
|
* Creates a sup element (superscript).
|
|
620
620
|
*
|
|
621
621
|
* @param {object} props - Properties for the element.
|
|
622
|
-
* @param {
|
|
622
|
+
* @param {?Array<any>} children - Children elements.
|
|
623
623
|
* @returns {object} - Returns an object representing the element.
|
|
624
624
|
*/
|
|
625
625
|
export const Sup: (...args: any[]) => object;
|
|
@@ -627,7 +627,7 @@ export const Sup: (...args: any[]) => object;
|
|
|
627
627
|
* Creates an i element (italic).
|
|
628
628
|
*
|
|
629
629
|
* @param {object} props - Properties for the element.
|
|
630
|
-
* @param {
|
|
630
|
+
* @param {?Array<any>} children - Children elements.
|
|
631
631
|
* @returns {object} - Returns an object representing the element.
|
|
632
632
|
*/
|
|
633
633
|
export const I: (...args: any[]) => object;
|
|
@@ -635,7 +635,7 @@ export const I: (...args: any[]) => object;
|
|
|
635
635
|
* Creates a b element (bold).
|
|
636
636
|
*
|
|
637
637
|
* @param {object} props - Properties for the element.
|
|
638
|
-
* @param {
|
|
638
|
+
* @param {?Array<any>} children - Children elements.
|
|
639
639
|
* @returns {object} - Returns an object representing the element.
|
|
640
640
|
*/
|
|
641
641
|
export const B: (...args: any[]) => object;
|
|
@@ -643,7 +643,7 @@ export const B: (...args: any[]) => object;
|
|
|
643
643
|
* Creates a u element (underline).
|
|
644
644
|
*
|
|
645
645
|
* @param {object} props - Properties for the element.
|
|
646
|
-
* @param {
|
|
646
|
+
* @param {?Array<any>} children - Children elements.
|
|
647
647
|
* @returns {object} - Returns an object representing the element.
|
|
648
648
|
*/
|
|
649
649
|
export const U: (...args: any[]) => object;
|
|
@@ -651,7 +651,7 @@ export const U: (...args: any[]) => object;
|
|
|
651
651
|
* Creates a mark element.
|
|
652
652
|
*
|
|
653
653
|
* @param {object} props - Properties for the element.
|
|
654
|
-
* @param {
|
|
654
|
+
* @param {?Array<any>} children - Children elements.
|
|
655
655
|
* @returns {object} - Returns an object representing the element.
|
|
656
656
|
*/
|
|
657
657
|
export const Mark: (...args: any[]) => object;
|
|
@@ -659,7 +659,7 @@ export const Mark: (...args: any[]) => object;
|
|
|
659
659
|
* Creates a ruby element (for East Asian typography).
|
|
660
660
|
*
|
|
661
661
|
* @param {object} props - Properties for the element.
|
|
662
|
-
* @param {
|
|
662
|
+
* @param {?Array<any>} children - Children elements.
|
|
663
663
|
* @returns {object} - Returns an object representing the element.
|
|
664
664
|
*/
|
|
665
665
|
export const Ruby: (...args: any[]) => object;
|
|
@@ -667,7 +667,7 @@ export const Ruby: (...args: any[]) => object;
|
|
|
667
667
|
* Creates an rt element (explanation/pronunciation of characters in East Asian typography).
|
|
668
668
|
*
|
|
669
669
|
* @param {object} props - Properties for the element.
|
|
670
|
-
* @param {
|
|
670
|
+
* @param {?Array<any>} children - Children elements.
|
|
671
671
|
* @returns {object} - Returns an object representing the element.
|
|
672
672
|
*/
|
|
673
673
|
export const Rt: (...args: any[]) => object;
|
|
@@ -675,7 +675,7 @@ export const Rt: (...args: any[]) => object;
|
|
|
675
675
|
* Creates an rp element (for East Asian fallback parenthesis).
|
|
676
676
|
*
|
|
677
677
|
* @param {object} props - Properties for the element.
|
|
678
|
-
* @param {
|
|
678
|
+
* @param {?Array<any>} children - Children elements.
|
|
679
679
|
* @returns {object} - Returns an object representing the element.
|
|
680
680
|
*/
|
|
681
681
|
export const Rp: (...args: any[]) => object;
|
|
@@ -683,7 +683,7 @@ export const Rp: (...args: any[]) => object;
|
|
|
683
683
|
* Creates a bdi element (Bi-Directional Isolation).
|
|
684
684
|
*
|
|
685
685
|
* @param {object} props - Properties for the element.
|
|
686
|
-
* @param {
|
|
686
|
+
* @param {?Array<any>} children - Children elements.
|
|
687
687
|
* @returns {object} - Returns an object representing the element.
|
|
688
688
|
*/
|
|
689
689
|
export const Bdi: (...args: any[]) => object;
|
|
@@ -691,7 +691,7 @@ export const Bdi: (...args: any[]) => object;
|
|
|
691
691
|
* Creates a bdo element (Bi-Directional Override).
|
|
692
692
|
*
|
|
693
693
|
* @param {object} props - Properties for the element.
|
|
694
|
-
* @param {
|
|
694
|
+
* @param {?Array<any>} children - Children elements.
|
|
695
695
|
* @returns {object} - Returns an object representing the element.
|
|
696
696
|
*/
|
|
697
697
|
export const Bdo: (...args: any[]) => object;
|
|
@@ -699,7 +699,7 @@ export const Bdo: (...args: any[]) => object;
|
|
|
699
699
|
* Creates a wbr element (Word Break Opportunity).
|
|
700
700
|
*
|
|
701
701
|
* @param {object} props - Properties for the element.
|
|
702
|
-
* @param {
|
|
702
|
+
* @param {?Array<any>} children - Children elements.
|
|
703
703
|
* @returns {object} - Returns an object representing the element.
|
|
704
704
|
*/
|
|
705
705
|
export const Wbr: (...args: any[]) => object;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@base-framework/atoms",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.3",
|
|
4
4
|
"description": "This will add default atoms to the base framework.",
|
|
5
5
|
"main": "./dist/atoms.js",
|
|
6
6
|
"scripts": {
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
"exports": {
|
|
42
42
|
"./package.json": "./package.json",
|
|
43
43
|
".": {
|
|
44
|
+
"types": "./dist/types/atoms.d.ts",
|
|
44
45
|
"import": "./dist/atoms.js",
|
|
45
46
|
"require": "./dist/atoms.js"
|
|
46
47
|
},
|