@lengkapp/edge 0.0.19 → 0.0.21

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.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @lengkapp/edge v0.0.19
2
+ * @lengkapp/edge v0.0.20
3
3
  * MIT License
4
4
  *
5
5
  * LengkApp Edge License
@@ -30,4 +30,4 @@
30
30
  * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
31
31
  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32
32
  */
33
- !function(){if(!window.__edge){window.__edge=!0;var t=document,e=t.head,n=t.documentElement,r=["get","post","put","patch","delete"].map(function(t){return"_"+t}),i={post:1,put:1,patch:1},o={post:1,put:1,patch:1,delete:1},a=r.map(function(t){return"["+t+"]"}).join(","),c=new Set(["click","dblclick","mousedown","mouseup","mouseover","mouseout","mousemove","contextmenu","focusin","focusout","keydown","keyup","keypress","change","input","submit","reset","wheel","touchstart","touchend","touchmove"]),u={__proto__:1,constructor:1,prototype:1},s=["href","src","action","formaction","xlink:href","data"],f=/^\s*(?:javascript|vbscript|data:text\/html)/i,l=new WeakSet,d=new WeakSet,h=new WeakMap,v=new WeakMap,p=new Map,m=new Set,w=new Set,g=null;if(window.trustedTypes&&window.trustedTypes.createPolicy)try{g=window.trustedTypes.createPolicy("edge-policy",{createHTML:function(e){return function(e){var n=t.createElement("template");n.innerHTML=e;for(var r=n.content,i=r.querySelectorAll('base,meta[http-equiv="refresh" i],iframe[srcdoc],object,embed,form[action^="javascript:" i]'),o=i.length-1;o>=0;o--)i[o].remove();for(var a=r.querySelectorAll("*"),c=0;c<a.length;c++)for(var u=a[c],l=0;l<s.length;l++){var d=u.getAttribute(s[l]);d&&f.test(d)&&u.removeAttribute(s[l])}return n.innerHTML}(String(e))}})}catch(t){g=null}var y=t.createElement("style");y.textContent=".aj-skel-wrap{box-sizing:border-box;width:100%;height:100%;min-width:80px;min-height:48px;max-width:100%;max-height:600px;display:flex;align-items:center;justify-content:center}.aj-skel-wrap svg{width:1.75em;height:1.75em;color:#c7c7c7;animation:aj-pulse 1.4s ease-in-out infinite}@keyframes aj-pulse{0%,100%{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}.aj-retry-wrap{box-sizing:border-box;width:100%;height:100%;min-width:80px;min-height:48px;max-height:600px;display:flex;align-items:center;justify-content:center}.aj-retry{width:2.5em;height:2.5em;padding:0;cursor:pointer;background:#007bff;color:#fff;border:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease}.aj-retry:hover{background:#0056b3}.aj-retry:hover svg{transform:rotate(-90deg)}.aj-retry svg{width:1.25em;height:1.25em;transition:transform .3s ease}",e.appendChild(y);var k=!1,b=new Set,x=new Set,j=!1;new MutationObserver(function(t){t.forEach(function(t){t.addedNodes.forEach(function(t){1===t.nodeType&&b.add(t)}),t.removedNodes.forEach(function(t){1===t.nodeType&&x.add(t)})}),j||(j=!0,queueMicrotask(W))}).observe(n,{childList:!0,subtree:!0}),"loading"===t.readyState?t.addEventListener("DOMContentLoaded",B,{once:!0}):B()}function M(t,e){t.innerHTML=g?g.createHTML(e):e}function S(t){for(var e=null,n=0;n<r.length;n++)if(t.hasAttribute(r[n])){e=r[n];break}if(!e)return null;var o=e.slice(1);return{url:t.getAttribute(e),method:o.toUpperCase(),hasBody:!!i[o],target:t.getAttribute("_target"),trigger:t.getAttribute("_trigger"),form:t.getAttribute("_form"),json:t.getAttribute("_json"),skeleton:"false"!==t.getAttribute("_skeleton"),retry:"false"!==t.getAttribute("_retry")}}function _(t){return(t.trigger||("this"===t.target?"load":"click")).split(",").map(function(t){return t.trim().toLowerCase()})}function q(t){return t?t.replace(/^\[|\]$/g,"").split(",").map(function(t){return t.trim().replace(/^['"]|['"]$/g,"")}).filter(Boolean):[]}function L(n,r){if(!d.has(n)){d.add(n);var i=function(e,n){if(!n.target||"this"===n.target)return e;var r=h.get(e);if(r&&r.isConnected)return r;var i=null;try{i=t.querySelector(n.target)}catch(t){i=null}return i&&h.set(e,i),i}(n,r);if(i){r.skeleton&&function(t){M(t,'<div class="aj-skel-wrap"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m12 14 4-4"/><path d="M3.34 19a10 10 0 1 1 17.32 0"/></svg></div>')}(i);var a={method:r.method,credentials:"same-origin",headers:{"X-Requested-With":"XMLHttpRequest"}};if(o[r.method.toLowerCase()]){var c=function(){var e=t.querySelector('meta[name="csrf-token"]');if(e)return e.getAttribute("content");var n=t.cookie.match(/(?:^|;\s*)XSRF-TOKEN=([^;]+)/);if(n)try{return decodeURIComponent(n[1])}catch(t){return n[1]}return null}();c&&(a.headers["X-CSRF-Token"]=c)}if(r.hasBody)if(r.json){var s=Object.create(null);r.json.split(",").forEach(function(e){if((e=e.trim())&&!u[e]){var n=null;try{n=t.querySelector('[name="'+e.replace(/["\\]/g,"")+'"]')}catch(t){n=null}s[e]=n?n.value:void 0}}),a.headers["Content-Type"]="application/json",a.body=JSON.stringify(s)}else if(r.form){var f=t.getElementById(r.form);a.headers["Content-Type"]="application/x-www-form-urlencoded",a.body=f?new URLSearchParams(new FormData(f)).toString():""}fetch(r.url,a).then(function(n){if(!n.ok)throw new Error("HTTP "+n.status);var r,i=(n.headers.get("content-type")||"").toLowerCase();if(i&&-1===i.indexOf("text/html")&&-1===i.indexOf("text/plain"))throw new Error("Unsupported content type: "+i);return q((r=n.headers).get("x-css-required")).forEach(function(n){if(!m.has(n)){m.add(n);var i=t.createElement("link");i.rel="stylesheet",i.href=n;var o=r.get("x-css-integrity");o&&(i.integrity=o,i.crossOrigin="anonymous"),e.appendChild(i)}}),q(r.get("x-js-required")).forEach(function(n){if(!m.has(n)){m.add(n);var i=t.createElement("script");i.src=n;var o=r.get("x-js-integrity");o&&(i.integrity=o,i.crossOrigin="anonymous"),e.appendChild(i)}}),n.text()}).then(function(e){!function(e,n){var r,i,o,a,c;e.textContent="",M(e,n),r=e,o=(i=t.querySelector("script[nonce]"))&&(i.nonce||i.getAttribute("nonce"))||null,a=Array.prototype.slice.call(r.querySelectorAll("script")),c=0,function e(){if(!(c>=a.length)){var n=a[c],r=n.nonce||n.getAttribute("nonce")||"";if(o&&r!==o)return n.remove(),c++,void e();for(var i=t.createElement("script"),u=0;u<n.attributes.length;u++)i.setAttribute(n.attributes[u].name,n.attributes[u].value);if(r&&(i.nonce=r),n.src){if(w.has(n.src))return n.remove(),c++,void e();w.add(n.src),i.onload=i.onerror=function(){c++,e()},n.replaceWith(i)}else i.textContent="{\n"+n.textContent+"\n}",n.replaceWith(i),c++,e()}}(),R(e)}(i,e)}).catch(function(t){console.error(t),r.retry&&function(t,e){M(t,'<div class="aj-retry-wrap"><button type="button" class="aj-retry" aria-label="Retry"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/><path d="M3 3v5h5"/></svg></button></div>');var n=t.querySelector(".aj-retry");n&&n.addEventListener("click",e,{once:!0})}(i,function(){L(n,r)})}).finally(function(){d.delete(n)})}else d.delete(n)}}function O(t){if(!l.has(t)){l.add(t);var e=S(t);e&&_(e).forEach(function(n){if("load"===n||"domcontentloaded"===n||"ready"===n)queueMicrotask(function(){L(t,e)});else if("visible"===n||"intersect"===n){v.set(t,!1);var r=new IntersectionObserver(function(n){n.forEach(function(n){if(!n.target.isConnected)return r.disconnect(),void p.delete(t);var i=n.isIntersecting&&function(t){var e=getComputedStyle(t);if("none"===e.display||"hidden"===e.visibility||"0"===e.opacity)return!1;var n=t.getBoundingClientRect();return n.width>0&&n.height>0}(t);i&&!v.get(t)&&L(t,e),v.set(t,i)})});r.observe(t),p.set(t,r)}else c.has(n)||t.addEventListener(n,function(){L(t,e)})})}}function R(t){1===t.nodeType&&(t.matches&&t.matches(a)&&O(t),t.querySelectorAll&&t.querySelectorAll(a).forEach(O))}function C(t){p.size&&p.forEach(function(e,n){(t===n||t.contains(n))&&(e.disconnect(),p.delete(n),l.delete(n))})}function W(){j=!1;var t=Array.from(b);b.clear();var e=Array.from(x);x.clear(),t.forEach(R),e.forEach(C)}function B(){k||(k=!0,c.forEach(function(e){var n="click"===e||"submit"===e;t.addEventListener(e,function(t){var r=t.target;if(r instanceof Element){var i=r.closest(a);if(i){var o=S(i);o&&-1!==_(o).indexOf(e)&&(n&&t.preventDefault(),L(i,o))}}},!n&&{passive:!0})})),R(n)}}();
33
+ !function(){"use strict";var e=document,t=window,r="ax-app-style",a=["@keyframes ax-spin{to{transform:rotate(360deg)}}","@keyframes ax-shimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}","@keyframes ax-fade-in{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}",".ax-state,.ax-state *,.ax-state *::before,.ax-state *::after{box-sizing:border-box;margin:0;padding:0}",".ax-state{","display:flex;flex-direction:column;align-items:center;justify-content:center;","gap:calc(var(--pad,1) * 12px);","width:100%;min-width:min(240px,100%);min-height:240px;","padding:calc(var(--pad,1) * 20px);","border:1px dashed var(--bd,#e4e4e7);border-radius:var(--br,10px);","background:inherit;","color:var(--fg2,#71717a);","font-family:var(--font,system-ui,-apple-system,sans-serif);","font-size:var(--fs,14px);line-height:1.45;text-align:center;","transition:var(--t,all .25s ease);","-webkit-user-select:none;user-select:none;","}",".ax-state--loading,.ax-state--skeleton{animation:ax-fade-in 220ms ease-out both}",".ax-state svg{display:block;flex:0 0 auto;width:24px;height:24px}",".ax-state--loading svg{color:var(--p,#6d28d9);animation:ax-spin .85s linear infinite}",".ax-state--skeleton{align-items:stretch}",".ax-skel{display:flex;flex-direction:column;gap:calc(var(--pad,1) * 10px);width:100%}",".ax-skel-line{","height:12px;border-radius:calc(var(--br,10px) / 2);","background-color:transparent;","background-image:linear-gradient(90deg,","var(--sk1,#e4e4e7) 25%,var(--sk2,#f4f4f5) 37%,var(--sk1,#e4e4e7) 63%);","background-size:400% 100%;","animation:ax-shimmer 1.4s ease-in-out infinite;","}",".ax-state-text{font-size:var(--fs,14px);color:var(--fg2,#71717a);max-width:34ch}",".ax-state--skeleton .ax-state-text{align-self:center}",".ax-state--error{border-style:solid;color:var(--fg,#18181b);animation:ax-fade-in 200ms ease-out both}",".ax-state--error .ax-state-text{color:var(--err,#ef4444)}",".ax-state-btn{","display:inline-flex;align-items:center;justify-content:center;","width:44px;height:44px;padding:0;font:inherit;color:var(--fg,#18181b);","background:var(--card,#fff);border:1px solid var(--bd,#e4e4e7);","border-radius:calc(var(--br,10px) - 2px);","box-shadow:var(--sh1,0 1px 2px rgba(0,0,0,.04));","cursor:pointer;transition:var(--t,all .25s ease);","}",".ax-state-btn:hover{color:var(--p,#6d28d9);border-color:var(--p,#6d28d9);box-shadow:var(--sh2,0 4px 12px rgba(0,0,0,.08))}",".ax-state-btn:focus-visible{outline:2px solid var(--p,#6d28d9);outline-offset:2px}",".ax-state-btn:active{transform:scale(.96)}",".ax-state-btn svg{transition:transform .25s ease}",".ax-state-btn:hover svg{transform:rotate(-45deg)}",".ax-hide{display:none !important}","@media (prefers-reduced-motion:reduce){",".ax-state,.ax-state--loading,.ax-state--skeleton,.ax-state--error{animation:none}",".ax-state--loading svg{animation-duration:2s}",".ax-skel-line{animation:none;background-image:none;background-color:var(--sk1,#e4e4e7)}",".ax-state-btn:hover svg{transform:none}","::view-transition-old(root),::view-transition-new(root){animation:none}","}"].join("\n");!function(){if(!e.getElementById(r)){var t=e.createElement("style");t.id=r,t.appendChild(e.createTextNode(a)),(e.head||e.documentElement).appendChild(t)}}();var n,i=new Set,o=new WeakSet,s=new WeakMap,l=new WeakMap,c="[_get],[_post]",u=["_in","_out","_before","_after"];function f(t){return new URL(t,e.baseURI).href}function d(e){return new Promise(function(t){var r=new FileReader;r.onload=function(){t({name:e.name,type:e.type||"application/octet-stream",size:e.size,data:r.result})},r.onerror=function(){t({name:e.name,type:e.type,size:e.size,data:null})},r.readAsDataURL(e)})}function v(e){if(e.disabled)return Promise.resolve(void 0);var t=e.type;if("file"===t){var r=e.files;return r&&r.length?e.multiple?Promise.all(Array.prototype.map.call(r,d)):d(r[0]):Promise.resolve(e.multiple?[]:null)}return"checkbox"===t?Promise.resolve(e.checked?e.value||"on":null):"radio"===t?Promise.resolve(e.checked?e.value:null):"SELECT"===e.tagName&&e.multiple?Promise.resolve(Array.prototype.map.call(e.selectedOptions,function(e){return e.value})):Promise.resolve(e.value)}function x(t){var r,a=null,n=null;for(r=0;r<u.length;r++)if(t.hasAttribute(u[r])){a=u[r],n=t.getAttribute(u[r]);break}if(!a)return null;var i=t;if(n&&"this"!==n)try{i=e.querySelector(n)}catch(e){return null}return i&&i.parentNode?{mode:a,el:i,parent:i.parentNode}:null}function p(e,t){"_before"===e.mode||"_out"===e.mode?e.parent.insertBefore(t,e.el):e.parent.insertBefore(t,e.el.nextSibling)}function m(e){var t=l.get(e);t&&(t.node&&t.node.parentNode&&t.node.parentNode.removeChild(t.node),t.target&&t.target.removeAttribute("aria-busy"),l.delete(e))}function g(e,t){var r=e.querySelector(".ax-state-btn");r&&r.addEventListener("click",function(e){e.preventDefault(),e.stopPropagation(),k(t)})}function h(t){var r=e.createElement("div");return r.className="ax-state ax-state--error",r.setAttribute("role","alert"),r.innerHTML='<button type="button" class="ax-state-btn" aria-label="Retry"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rotate-ccw preview-icon" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/><path d="M3 3v5h5"/></svg></button><span class="ax-state-text">'+String(t).replace(/[&<>"']/g,function(e){return{"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"}[e]})+"</span>",r}function b(t){if("function"==typeof e.startViewTransition)try{return void e.startViewTransition(t)}catch(e){}t()}function k(t){var r=t.hasAttribute("_get"),a=t.getAttribute(r?"_get":"_post");if(null!==a&&x(t)){var n=s.get(t),o=new AbortController;s.set(t,o),n&&n.abort(),m(t);var u=0,d=setTimeout(function(){s.get(t)===o&&(function(t){var r=x(t);if(!r)return null;var a=(t.getAttribute("_loader")||"spinner").toLowerCase();if("none"===a||"off"===a||"false"===a)return null;r.el.classList.add("ax-hide"),r.el.setAttribute("aria-busy","true");var n=function(t){var r="skeleton"===t,a=e.createElement("div");return a.className="ax-state ax-state--"+(r?"skeleton":"loading"),a.setAttribute("role","status"),a.setAttribute("aria-live","polite"),a.setAttribute("aria-busy","true"),a.innerHTML=r?'<div class="ax-skel" aria-hidden="true"><span class="ax-skel-line" style="width:48%"></span><span class="ax-skel-line"></span><span class="ax-skel-line" style="width:86%"></span><span class="ax-skel-line" style="width:64%"></span></div><span class="ax-state-text">Loading…</span>':'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-loader-circle preview-icon" aria-hidden="true"><path d="M21 12a9 9 0 1 1-6.219-8.56"/></svg><span class="ax-state-text">Loading…</span>',a}(a);p(r,n),l.set(t,{node:n,target:r.el})}(t),u=performance.now())},100),k=parseInt(t.getAttribute("_timeout"),10);k>0||(k=2e4);var w={method:r?"GET":"POST",credentials:"same-origin",headers:{"X-Requested-With":"XMLHttpRequest"},redirect:"follow",referrerPolicy:"same-origin",signal:o.signal},_=setTimeout(function(){o.abort()},k),P=Promise.resolve();if(!r)if(t.hasAttribute("_json"))P=function(t){var r=(t.getAttribute("_json")||"").trim();if(!r)return Promise.resolve(null);var a=r.split(",").map(function(e){return e.trim()}).filter(Boolean);if(!a.length)return Promise.resolve(null);var n=t.closest("form")||e;return Promise.all(a.map(function(t){return function(t,r){var a=e.getElementById(r);if(a&&t.contains(a))return v(a);var n=function(e,t){for(var r=e.querySelectorAll("input[name],select[name],textarea[name]"),a=[],n=0;n<r.length;n++)r[n].name===t&&a.push(r[n]);return a}(t,r);if(!n.length)return Promise.resolve(void 0);if(1===n.length)return v(n[0]);var i=n[0];if("radio"===i.type){for(var o=0;o<n.length;o++)if(n[o].checked)return Promise.resolve(n[o].value);return Promise.resolve(null)}if("checkbox"===i.type){for(var s=[],l=0;l<n.length;l++)n[l].checked&&!n[l].disabled&&s.push(n[l].value||"on");return Promise.resolve(s)}return v(i)}(n,t).then(function(e){return[t,e]})})).then(function(e){for(var t={},r=0;r<e.length;r++)void 0!==e[r][1]&&(t[e[r][0]]=e[r][1]);return JSON.stringify(t)})}(t).then(function(e){null!==e&&(w.headers["Content-Type"]="application/json",w.body=e)});else if(t.hasAttribute("_form")){var T=function(t){var r,a=t.getAttribute("_form");try{r=e.querySelector(a)||e.getElementById(a)}catch(e){r=null}return r?new FormData(r):null}(t);T&&(w.body=T)}P.then(function(){return fetch(a,w)}).then(function(e){if(clearTimeout(_),!e.ok){var t=new Error("HTTP "+e.status);throw t.status=e.status,t}return e.text()}).then(function(r){clearTimeout(d),M(function(){var a=function(){m(t),r&&function(t,r){var a=x(t);if(a){var n=e.createElement("template");n.innerHTML=r;var o,s,l=n.content,u=[],d=[];for(s=l.querySelectorAll("script"),o=0;o<s.length;o++)u.push(s[o]),s[o].parentNode.removeChild(s[o]);for(s=l.querySelectorAll(c),o=0;o<s.length;o++)d.push(s[o]);var v=a.el,p=a.parent;if("_in"===a.mode){for(;v.firstChild;)v.removeChild(v.firstChild);v.appendChild(l),v.classList.remove("ax-hide")}else"_out"===a.mode?p.replaceChild(l,v):"_before"===a.mode?(p.insertBefore(l,v),v.classList.remove("ax-hide")):(p.insertBefore(l,v.nextSibling),v.classList.remove("ax-hide"));for(o=0;o<d.length;o++)y(d[o]);!function(t){for(var r=0;r<t.length;r++){var a=t[r],n=a.getAttribute("src");if(n){if(n=f(n),i.has(n))continue;i.add(n)}for(var o=e.createElement("script"),s=0;s<a.attributes.length;s++)o.setAttribute(a.attributes[s].name,a.attributes[s].value);n||(o.text=a.text),o.async=!1,e.head.appendChild(o)}}(u)}}(t,r)};l.get(t)?b(a):a()})}).catch(function(e){var r;clearTimeout(_),clearTimeout(d),s.get(t)===o&&(r=e&&"AbortError"===e.name?"Request timed out":e&&e.message?e.message:"Request failed",e&&"AbortError"!==e.name&&console.error("[app]",e),M(function(){!function(e,t){var r=l.get(e),a=function(){if(r&&r.node&&r.node.parentNode){var a=r.node,n=h(t);a.parentNode.replaceChild(n,a),r.target&&r.target.removeAttribute("aria-busy"),l.set(e,{node:n,target:r.target}),g(n,e)}else{var i=x(e);if(!i)return;i.el.classList.add("ax-hide"),i.el.setAttribute("aria-busy","true");var o=h(t);p(i,o),l.set(e,{node:o,target:i.el}),g(o,e)}};r?b(a):a()}(t,r)}))})}function M(e){if(0!==u){var r=Math.max(0,240-(performance.now()-u));0===r?s.get(t)===o&&e():setTimeout(function(){s.get(t)===o&&e()},r)}else s.get(t)===o&&e()}}function w(e){var t=e.getAttribute("_trigger");"load"===t||"visible"===t?k(e):e.addEventListener(t,function(t){if("click"===t.type){var r=e.tagName;"BUTTON"!==r&&"A"!==r||t.preventDefault()}k(e)})}function y(e){o.has(e)||(o.add(e),"click"!==(e.getAttribute("_trigger")||"click")&&("IntersectionObserver"in t?(n||(n=new IntersectionObserver(function(e){for(var t=0;t<e.length;t++)e[t].isIntersecting&&(n.unobserve(e[t].target),w(e[t].target))},{rootMargin:"300px"})),n.observe(e)):w(e)))}function _(e){for(var t=e.querySelectorAll(c),r=0;r<t.length;r++)y(t[r])}e.addEventListener("click",function(e){if(!e.target.closest(".ax-state")){var t=e.target.closest(c);if(t&&"click"===(t.getAttribute("_trigger")||"click")){var r=t.tagName;"BUTTON"!==r&&"A"!==r||e.preventDefault(),k(t)}}},!0),function(){for(var t=e.querySelectorAll("script[src]"),r=0;r<t.length;r++)i.add(f(t[r].src));"loading"===e.readyState?e.addEventListener("DOMContentLoaded",function(){_(e)}):_(e)}()}();
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @lengkapp/edge v0.0.19
2
+ * @lengkapp/edge v0.0.20
3
3
  * MIT License
4
4
  *
5
5
  * LengkApp Edge License
@@ -32,7 +32,7 @@
32
32
  */
33
33
  // edge-server.d.ts
34
34
 
35
- export const Fragment: unique symbol;
35
+ export function Fragment(props: { children?: any }): JSXNode;
36
36
 
37
37
  export interface JSXNode {
38
38
  type: unknown;
@@ -169,12 +169,11 @@ export class Edge<E = any> {
169
169
 
170
170
  /* ---------------- JSX typing for this runtime ---------------- */
171
171
 
172
- export namespace JSX {
173
- type Element = JSXNode;
174
- interface IntrinsicElements {
175
- [elemName: string]: any;
176
- }
177
- interface ElementChildrenAttribute {
178
- children: {};
172
+ declare global {
173
+ namespace JSX {
174
+ type Element = JSXNode;
175
+ type ElementType = string | symbol | ((props: any) => JSXNode);
176
+ interface IntrinsicElements { [elemName: string]: any; }
177
+ interface ElementChildrenAttribute { children: {}; }
179
178
  }
180
179
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @lengkapp/edge v0.0.19
2
+ * @lengkapp/edge v0.0.20
3
3
  * MIT License
4
4
  *
5
5
  * LengkApp Edge License
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lengkapp/edge",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "description": "Edge framework used by Lengkapp",
5
5
  "main": "dist/edge-server.js",
6
6
  "types": "dist/edge-server.d.ts",
package/readme.md CHANGED
@@ -54,9 +54,51 @@ const app = new Edge();
54
54
  app.get('/', (ctx) => ctx.text('Hello World!'));
55
55
  app.get('/users/:id', (ctx) => ctx.json({ id: ctx.params.id }));
56
56
 
57
- export default {
58
- fetch: (request, env, ctx) => app.fetch(request, env, ctx),
59
- };
57
+ export default app;
58
+ ```
59
+
60
+ or if you will use jsx `worker.tsx`:
61
+
62
+ ```ts
63
+ import { Edge, jsx, Fragment } from '@lengkapp/edge';
64
+
65
+ const app = new Edge();
66
+
67
+ const Card = () => (
68
+ <div>card</div>
69
+ );
70
+
71
+ const LandingPage = () => (
72
+ <>
73
+ <h1>
74
+ hello world
75
+ </h1>
76
+ <Card />
77
+ </>
78
+ );
79
+ app.get('/', () => <LandingPage />);
80
+
81
+ export default app;
82
+ ```
83
+
84
+ if you use typescript `tsconfig.json`:
85
+
86
+ ```typescript
87
+ {
88
+ "compilerOptions": {
89
+ "jsx": "react",
90
+ "jsxFactory": "jsx",
91
+ "jsxFragmentFactory": "Fragment",
92
+ "paths": { "@/*": ["./src/*"] },
93
+ "types": ["@cloudflare/workers-types"],
94
+ "target": "ESNext",
95
+ "module": "ESNext",
96
+ "moduleResolution": "Bundler",
97
+ "strict": true,
98
+ "skipLibCheck": true,
99
+ "lib": ["ESNext", "WebWorker"]
100
+ }
101
+ }
60
102
  ```
61
103
 
62
104
  `wrangler.jsonc`:
@@ -66,11 +108,18 @@ export default {
66
108
  "$schema": "./node_modules/wrangler/config-schema.json",
67
109
  "name": "my-edge-app",
68
110
  "main": "worker.js",
69
- "compatibility_date": "2026-09-06",
70
- "observability": { "enabled": true }
111
+ "compatibility_date": "2026-09-06"
71
112
  }
72
113
  ```
73
114
 
115
+ or `wrangler.toml`:
116
+
117
+ ```toml
118
+ name = "my-edge-app"
119
+ main = "worker.js"
120
+ compatibility_date = "2026-09-14"
121
+ ```
122
+
74
123
  Deploy:
75
124
 
76
125
  ```bash