@hienlh/ppm 0.8.42 → 0.8.43

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/web/assets/{api-client-TUmacMRS.js → api-client-BNaaEdcl.js} +1 -1
  3. package/dist/web/assets/{api-settings-CaKDC7_s.js → api-settings-BDsNFa7H.js} +1 -1
  4. package/dist/web/assets/chat-tab-C81chgQG.js +7 -0
  5. package/dist/web/assets/code-editor-4B9puD8R.js +1 -0
  6. package/dist/web/assets/columns-2-BSNHGqVP.js +1 -0
  7. package/dist/web/assets/database-viewer-CQ_Iv4MI.js +1 -0
  8. package/dist/web/assets/diff-viewer-jSaJ4CFA.js +4 -0
  9. package/dist/web/assets/{dist-QgqOdSYG.js → dist-DfBZTiXd.js} +2 -2
  10. package/dist/web/assets/git-graph-DV8iKnAu.js +1 -0
  11. package/dist/web/assets/index-DhXnbgjx.js +237 -0
  12. package/dist/web/assets/input-BWEh96zn.js +45 -0
  13. package/dist/web/assets/jsx-dev-runtime-B0R0R7SH.js +6 -0
  14. package/dist/web/assets/jsx-runtime-LVf5-VFx.js +6 -0
  15. package/dist/web/assets/keybindings-store-B4yeJxfn.js +1 -0
  16. package/dist/web/assets/{markdown-renderer-Cr3-VbIg.js → markdown-renderer-DwURR8PW.js} +2 -2
  17. package/dist/web/assets/postgres-viewer-GqUFwfIN.js +1 -0
  18. package/dist/web/assets/react-4j_0SqET.js +13 -0
  19. package/dist/web/assets/{react-rgzL83kk.js → react-DUP4AMtY.js} +1 -1
  20. package/dist/web/assets/{settings-store-xG6mKqkD.js → settings-store-CQtPmfWa.js} +2 -2
  21. package/dist/web/assets/settings-tab-Dsgl3Ycw.js +1 -0
  22. package/dist/web/assets/sqlite-viewer-CocoGKcm.js +1 -0
  23. package/dist/web/assets/tab-store-Cc-uKiGz.js +1 -0
  24. package/dist/web/assets/table-CSrbr8mU.js +1 -0
  25. package/dist/web/assets/tag-hTfy1l_p.js +1 -0
  26. package/dist/web/assets/{terminal-tab-BBy02Lde.js → terminal-tab-Bb45nDqy.js} +2 -2
  27. package/dist/web/assets/{use-monaco-theme-DlFSiqvG.js → use-monaco-theme-Cl5VMZKe.js} +1 -1
  28. package/dist/web/index.html +11 -10
  29. package/dist/web/sw.js +1 -1
  30. package/package.json +1 -1
  31. package/src/web/components/chat/message-list.tsx +10 -7
  32. package/dist/web/assets/chat-tab-CN-ULuHd.js +0 -7
  33. package/dist/web/assets/code-editor-CFZAz_WA.js +0 -1
  34. package/dist/web/assets/columns-2-BZ5wv2wA.js +0 -1
  35. package/dist/web/assets/database-viewer-DT9IEf-4.js +0 -1
  36. package/dist/web/assets/diff-viewer-SZcQ0Arc.js +0 -4
  37. package/dist/web/assets/git-graph-DsKiCtcj.js +0 -1
  38. package/dist/web/assets/index-BiOW8qrf.js +0 -28
  39. package/dist/web/assets/input-CE3bFwLk.js +0 -41
  40. package/dist/web/assets/jsx-runtime-wQxeESYQ.js +0 -1
  41. package/dist/web/assets/keybindings-store-BShKvCCo.js +0 -1
  42. package/dist/web/assets/postgres-viewer-BhTz35TV.js +0 -1
  43. package/dist/web/assets/react-CYzKIDNi.js +0 -1
  44. package/dist/web/assets/settings-tab-TlZunMhi.js +0 -1
  45. package/dist/web/assets/sqlite-viewer-CnZbwR2F.js +0 -1
  46. package/dist/web/assets/tab-store-NOBndc0_.js +0 -1
  47. package/dist/web/assets/table-B6neW6Hr.js +0 -1
  48. package/dist/web/assets/tag-DJUYe5BQ.js +0 -1
  49. /package/dist/web/assets/{utils-DC-bdPS3.js → utils-Bmf_8h7Y.js} +0 -0
@@ -0,0 +1,45 @@
1
+ import{i as e,n as t,t as n}from"./react-4j_0SqET.js";import{n as r,t as i}from"./jsx-dev-runtime-B0R0R7SH.js";import{t as a}from"./jsx-runtime-LVf5-VFx.js";import{n as o}from"./utils-Bmf_8h7Y.js";var s=t((e=>{(function(){function t(){}function r(e){return``+e}function i(e,t,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{r(i);var a=!1}catch{a=!0}return a&&(console.error(`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,typeof Symbol==`function`&&Symbol.toStringTag&&i[Symbol.toStringTag]||i.constructor.name||`Object`),r(i)),{$$typeof:d,key:i==null?null:``+i,children:e,containerInfo:t,implementation:n}}function a(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}function o(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:`something with type "`+typeof e+`"`}function s(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:typeof e==`string`?JSON.stringify(e):typeof e==`number`?"`"+e+"`":`something with type "`+typeof e+`"`}function c(){var e=f.H;return e===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
2
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
3
+ 2. You might be breaking the Rules of Hooks
4
+ 3. You might have more than one copy of React in the same app
5
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var l=n(),u={d:{f:t,r:function(){throw Error(`Invalid form element. requestFormReset must be passed a form that was rendered by React.`)},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},d=Symbol.for(`react.portal`),f=l.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map==`function`&&Map.prototype!=null&&typeof Map.prototype.forEach==`function`&&typeof Set==`function`&&Set.prototype!=null&&typeof Set.prototype.clear==`function`&&typeof Set.prototype.forEach==`function`||console.error(`React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills`),e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(`Target container is not a DOM element.`);return i(e,t,null,n)},e.flushSync=function(e){var t=f.T,n=u.p;try{if(f.T=null,u.p=2,e)return e()}finally{f.T=t,u.p=n,u.d.f()&&console.error(`flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.`)}},e.preconnect=function(e,t){typeof e==`string`&&e?t!=null&&typeof t!=`object`?console.error("ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",s(t)):t!=null&&typeof t.crossOrigin!=`string`&&console.error("ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",o(t.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",o(e)),typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,u.d.C(e,t))},e.prefetchDNS=function(e){if(typeof e!=`string`||!e)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",o(e));else if(1<arguments.length){var t=arguments[1];typeof t==`object`&&t.hasOwnProperty(`crossOrigin`)?console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",s(t)):console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",s(t))}typeof e==`string`&&u.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&e?typeof t!=`object`||!t?console.error("ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",s(t)):t.as!==`style`&&t.as!==`script`&&console.error('ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',s(t.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",o(e)),typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=a(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,c=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?u.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:c}):n===`script`&&u.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:c,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+o(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+o(t)+`.`:t&&`as`in t&&t.as!==`script`&&(n+=" The `as` option encountered was "+s(t.as)+`.`),n)console.error("ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",n);else switch(n=t&&typeof t.as==`string`?t.as:`script`,n){case`script`:break;default:n=s(n),console.error('ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',n,e)}typeof e==`string`&&(typeof t==`object`&&t?(t.as==null||t.as===`script`)&&(n=a(t.as,t.crossOrigin),u.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})):t??u.d.M(e))},e.preload=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+o(e)+`.`),typeof t!=`object`||!t?n+=" The `options` argument encountered was "+o(t)+`.`:typeof t.as==`string`&&t.as||(n+=" The `as` option encountered was "+o(t.as)+`.`),n&&console.error('ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',n),typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){n=t.as;var r=a(n,t.crossOrigin);u.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){var n=``;typeof e==`string`&&e||(n+=" The `href` argument encountered was "+o(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+o(t)+`.`:t&&`as`in t&&typeof t.as!=`string`&&(n+=" The `as` option encountered was "+o(t.as)+`.`),n&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',n),typeof e==`string`&&(t?(n=a(t.as,t.crossOrigin),u.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})):u.d.m(e))},e.requestFormReset=function(e){u.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c().useFormState(e,t,n)},e.useFormStatus=function(){return c().useHostTransitionStatus()},e.version=`19.2.4`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),c=t(((e,t)=>{t.exports=s()})),l=r(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),u=r(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),d=r(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),f=r(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),p=e(n(),1);function m(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function h(...e){return t=>{let n=!1,r=e.map(e=>{let r=m(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():m(e[t],null)}}}}function g(...e){return p.useCallback(h(...e),e)}var _=a();function v(e){let t=b(e),n=p.forwardRef((e,n)=>{let{children:r,...i}=e,a=p.Children.toArray(r),o=a.find(C);if(o){let e=o.props.children,r=a.map(t=>t===o?p.Children.count(e)>1?p.Children.only(null):p.isValidElement(e)?e.props.children:null:t);return(0,_.jsx)(t,{...i,ref:n,children:p.isValidElement(e)?p.cloneElement(e,void 0,r):null})}return(0,_.jsx)(t,{...i,ref:n,children:r})});return n.displayName=`${e}.Slot`,n}var y=v(`Slot`);function b(e){let t=p.forwardRef((e,t)=>{let{children:n,...r}=e;if(p.isValidElement(n)){let e=T(n),i=w(r,n.props);return n.type!==p.Fragment&&(i.ref=t?h(t,e):e),p.cloneElement(n,i)}return p.Children.count(n)>1?p.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var x=Symbol(`radix.slottable`);function S(e){let t=({children:e})=>(0,_.jsx)(_.Fragment,{children:e});return t.displayName=`${e}.Slottable`,t.__radixId=x,t}function C(e){return p.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===x}function w(e,t){let n={...t};for(let r in t){let i=e[r],a=t[r];/^on[A-Z]/.test(r)?i&&a?n[r]=(...e)=>{let t=a(...e);return i(...e),t}:i&&(n[r]=i):r===`style`?n[r]={...i,...a}:r===`className`&&(n[r]=[i,a].filter(Boolean).join(` `))}return{...e,...n}}function T(e){let t=Object.getOwnPropertyDescriptor(e.props,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,`ref`)?.get,n=t&&`isReactWarning`in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}var E=e(c(),1),D=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=v(`Primitive.${t}`),r=p.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,_.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function O(e,t){e&&E.flushSync(()=>e.dispatchEvent(t))}function k(e,t){let n=p.createContext(t),r=e=>{let{children:t,...r}=e,i=p.useMemo(()=>r,Object.values(r));return(0,_.jsx)(n.Provider,{value:i,children:t})};r.displayName=e+`Provider`;function i(r){let i=p.useContext(n);if(i)return i;if(t!==void 0)return t;throw Error(`\`${r}\` must be used within \`${e}\``)}return[r,i]}function A(e,t=[]){let n=[];function r(t,r){let i=p.createContext(r),a=n.length;n=[...n,r];let o=t=>{let{scope:n,children:r,...o}=t,s=n?.[e]?.[a]||i,c=p.useMemo(()=>o,Object.values(o));return(0,_.jsx)(s.Provider,{value:c,children:r})};o.displayName=t+`Provider`;function s(n,o){let s=o?.[e]?.[a]||i,c=p.useContext(s);if(c)return c;if(r!==void 0)return r;throw Error(`\`${n}\` must be used within \`${t}\``)}return[o,s]}let i=()=>{let t=n.map(e=>p.createContext(e));return function(n){let r=n?.[e]||t;return p.useMemo(()=>({[`__scope${e}`]:{...n,[e]:r}}),[n,r])}};return i.scopeName=e,[r,j(i,...t)]}function j(...e){let t=e[0];if(e.length===1)return t;let n=()=>{let n=e.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(e){let r=n.reduce((t,{useScope:n,scopeName:r})=>{let i=n(e)[`__scope${r}`];return{...t,...i}},{});return p.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return n.scopeName=t.scopeName,n}function M(e){let t=e+`CollectionProvider`,[n,r]=A(t),[i,a]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=e=>{let{scope:t,children:n}=e,r=p.useRef(null),a=p.useRef(new Map).current;return(0,_.jsx)(i,{scope:t,itemMap:a,collectionRef:r,children:n})};o.displayName=t;let s=e+`CollectionSlot`,c=v(s),l=p.forwardRef((e,t)=>{let{scope:n,children:r}=e;return(0,_.jsx)(c,{ref:g(t,a(s,n).collectionRef),children:r})});l.displayName=s;let u=e+`CollectionItemSlot`,d=`data-radix-collection-item`,f=v(u),m=p.forwardRef((e,t)=>{let{scope:n,children:r,...i}=e,o=p.useRef(null),s=g(t,o),c=a(u,n);return p.useEffect(()=>(c.itemMap.set(o,{ref:o,...i}),()=>void c.itemMap.delete(o))),(0,_.jsx)(f,{[d]:``,ref:s,children:r})});m.displayName=u;function h(t){let n=a(e+`CollectionConsumer`,t);return p.useCallback(()=>{let e=n.collectionRef.current;if(!e)return[];let t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(n.itemMap.values()).sort((e,n)=>t.indexOf(e.ref.current)-t.indexOf(n.ref.current))},[n.collectionRef,n.itemMap])}return[{Provider:o,Slot:l,ItemSlot:m},h,r]}typeof window<`u`&&window.document&&window.document.createElement;function N(e,t,{checkForDefaultPrevented:n=!0}={}){return function(r){if(e?.(r),n===!1||!r.defaultPrevented)return t?.(r)}}var P=globalThis?.document?p.useLayoutEffect:()=>{},ee=p.useInsertionEffect||P;function te({prop:e,defaultProp:t,onChange:n=()=>{},caller:r}){let[i,a,o]=ne({defaultProp:t,onChange:n}),s=e!==void 0,c=s?e:i;{let t=p.useRef(e!==void 0);p.useEffect(()=>{let e=t.current;if(e!==s){let t=e?`controlled`:`uncontrolled`,n=s?`controlled`:`uncontrolled`;console.warn(`${r} is changing from ${t} to ${n}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`)}t.current=s},[s,r])}return[c,p.useCallback(t=>{if(s){let n=re(t)?t(e):t;n!==e&&o.current?.(n)}else a(t)},[s,e,a,o])]}function ne({defaultProp:e,onChange:t}){let[n,r]=p.useState(e),i=p.useRef(n),a=p.useRef(t);return ee(()=>{a.current=t},[t]),p.useEffect(()=>{i.current!==n&&(a.current?.(n),i.current=n)},[n,i]),[n,r,a]}function re(e){return typeof e==`function`}var F=p.useId||(()=>void 0),ie=0;function ae(e){let[t,n]=p.useState(F());return P(()=>{e||n(e=>e??String(ie++))},[e]),e||(t?`radix-${t}`:``)}var oe=p.createContext(void 0);function se(e){let t=p.useContext(oe);return e||t||`ltr`}function I(e){let t=p.useRef(e);return p.useEffect(()=>{t.current=e}),p.useMemo(()=>(...e)=>t.current?.(...e),[])}function ce(e,t=globalThis?.document){let n=I(e);p.useEffect(()=>{let e=e=>{e.key===`Escape`&&n(e)};return t.addEventListener(`keydown`,e,{capture:!0}),()=>t.removeEventListener(`keydown`,e,{capture:!0})},[n,t])}var le=`DismissableLayer`,ue=`dismissableLayer.update`,de=`dismissableLayer.pointerDownOutside`,fe=`dismissableLayer.focusOutside`,pe,me=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),he=p.forwardRef((e,t)=>{let{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...c}=e,l=p.useContext(me),[u,d]=p.useState(null),f=u?.ownerDocument??globalThis?.document,[,m]=p.useState({}),h=g(t,e=>d(e)),v=Array.from(l.layers),[y]=[...l.layersWithOutsidePointerEventsDisabled].slice(-1),b=v.indexOf(y),x=u?v.indexOf(u):-1,S=l.layersWithOutsidePointerEventsDisabled.size>0,C=x>=b,w=ve(e=>{let t=e.target,n=[...l.branches].some(e=>e.contains(t));!C||n||(i?.(e),o?.(e),e.defaultPrevented||s?.())},f),T=ye(e=>{let t=e.target;[...l.branches].some(e=>e.contains(t))||(a?.(e),o?.(e),e.defaultPrevented||s?.())},f);return ce(e=>{x===l.layers.size-1&&(r?.(e),!e.defaultPrevented&&s&&(e.preventDefault(),s()))},f),p.useEffect(()=>{if(u)return n&&(l.layersWithOutsidePointerEventsDisabled.size===0&&(pe=f.body.style.pointerEvents,f.body.style.pointerEvents=`none`),l.layersWithOutsidePointerEventsDisabled.add(u)),l.layers.add(u),be(),()=>{n&&l.layersWithOutsidePointerEventsDisabled.size===1&&(f.body.style.pointerEvents=pe)}},[u,f,n,l]),p.useEffect(()=>()=>{u&&(l.layers.delete(u),l.layersWithOutsidePointerEventsDisabled.delete(u),be())},[u,l]),p.useEffect(()=>{let e=()=>m({});return document.addEventListener(ue,e),()=>document.removeEventListener(ue,e)},[]),(0,_.jsx)(D.div,{...c,ref:h,style:{pointerEvents:S?C?`auto`:`none`:void 0,...e.style},onFocusCapture:N(e.onFocusCapture,T.onFocusCapture),onBlurCapture:N(e.onBlurCapture,T.onBlurCapture),onPointerDownCapture:N(e.onPointerDownCapture,w.onPointerDownCapture)})});he.displayName=le;var ge=`DismissableLayerBranch`,_e=p.forwardRef((e,t)=>{let n=p.useContext(me),r=p.useRef(null),i=g(t,r);return p.useEffect(()=>{let e=r.current;if(e)return n.branches.add(e),()=>{n.branches.delete(e)}},[n.branches]),(0,_.jsx)(D.div,{...e,ref:i})});_e.displayName=ge;function ve(e,t=globalThis?.document){let n=I(e),r=p.useRef(!1),i=p.useRef(()=>{});return p.useEffect(()=>{let e=e=>{if(e.target&&!r.current){let r=function(){xe(de,n,a,{discrete:!0})},a={originalEvent:e};e.pointerType===`touch`?(t.removeEventListener(`click`,i.current),i.current=r,t.addEventListener(`click`,i.current,{once:!0})):r()}else t.removeEventListener(`click`,i.current);r.current=!1},a=window.setTimeout(()=>{t.addEventListener(`pointerdown`,e)},0);return()=>{window.clearTimeout(a),t.removeEventListener(`pointerdown`,e),t.removeEventListener(`click`,i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function ye(e,t=globalThis?.document){let n=I(e),r=p.useRef(!1);return p.useEffect(()=>{let e=e=>{e.target&&!r.current&&xe(fe,n,{originalEvent:e},{discrete:!1})};return t.addEventListener(`focusin`,e),()=>t.removeEventListener(`focusin`,e)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function be(){let e=new CustomEvent(ue);document.dispatchEvent(e)}function xe(e,t,n,{discrete:r}){let i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?O(i,a):i.dispatchEvent(a)}var Se=`focusScope.autoFocusOnMount`,Ce=`focusScope.autoFocusOnUnmount`,we={bubbles:!1,cancelable:!0},Te=`FocusScope`,Ee=p.forwardRef((e,t)=>{let{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:a,...o}=e,[s,c]=p.useState(null),l=I(i),u=I(a),d=p.useRef(null),f=g(t,e=>c(e)),m=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(r){let e=function(e){if(m.paused||!s)return;let t=e.target;s.contains(t)?d.current=t:L(d.current,{select:!0})},t=function(e){if(m.paused||!s)return;let t=e.relatedTarget;t!==null&&(s.contains(t)||L(d.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&L(s)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return s&&r.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[r,s,m.paused]),p.useEffect(()=>{if(s){Ne.add(m);let e=document.activeElement;if(!s.contains(e)){let t=new CustomEvent(Se,we);s.addEventListener(Se,l),s.dispatchEvent(t),t.defaultPrevented||(De(Ie(ke(s)),{select:!0}),document.activeElement===e&&L(s))}return()=>{s.removeEventListener(Se,l),setTimeout(()=>{let t=new CustomEvent(Ce,we);s.addEventListener(Ce,u),s.dispatchEvent(t),t.defaultPrevented||L(e??document.body,{select:!0}),s.removeEventListener(Ce,u),Ne.remove(m)},0)}}},[s,l,u,m]);let h=p.useCallback(e=>{if(!n&&!r||m.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,i=document.activeElement;if(t&&i){let t=e.currentTarget,[r,a]=Oe(t);r&&a?!e.shiftKey&&i===a?(e.preventDefault(),n&&L(r,{select:!0})):e.shiftKey&&i===r&&(e.preventDefault(),n&&L(a,{select:!0})):i===t&&e.preventDefault()}},[n,r,m.paused]);return(0,_.jsx)(D.div,{tabIndex:-1,...o,ref:f,onKeyDown:h})});Ee.displayName=Te;function De(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(L(r,{select:t}),document.activeElement!==n)return}function Oe(e){let t=ke(e);return[Ae(t,e),Ae(t.reverse(),e)]}function ke(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Ae(e,t){for(let n of e)if(!je(n,{upTo:t}))return n}function je(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function Me(e){return e instanceof HTMLInputElement&&`select`in e}function L(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&Me(e)&&t&&e.select()}}var Ne=Pe();function Pe(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=Fe(e,t),e.unshift(t)},remove(t){e=Fe(e,t),e[0]?.resume()}}}function Fe(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function Ie(e){return e.filter(e=>e.tagName!==`A`)}var Le=`Portal`,Re=p.forwardRef((e,t)=>{let{container:n,...r}=e,[i,a]=p.useState(!1);P(()=>a(!0),[]);let o=n||i&&globalThis?.document?.body;return o?E.createPortal((0,_.jsx)(D.div,{...r,ref:t}),o):null});Re.displayName=Le;var ze=0;function Be(){p.useEffect(()=>{let e=document.querySelectorAll(`[data-radix-focus-guard]`);return document.body.insertAdjacentElement(`afterbegin`,e[0]??Ve()),document.body.insertAdjacentElement(`beforeend`,e[1]??Ve()),ze++,()=>{ze===1&&document.querySelectorAll(`[data-radix-focus-guard]`).forEach(e=>e.remove()),ze--}},[])}function Ve(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var R=function(){return R=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},R.apply(this,arguments)};function He(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function Ue(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var We=`right-scroll-bar-position`,Ge=`width-before-scroll-bar`,Ke=`with-scroll-bars-hidden`,qe=`--removed-body-scroll-bar-size`;function Je(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function Ye(e,t){var n=(0,p.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var Xe=typeof window<`u`?p.useLayoutEffect:p.useEffect,Ze=new WeakMap;function Qe(e,t){var n=Ye(t||null,function(t){return e.forEach(function(e){return Je(e,t)})});return Xe(function(){var t=Ze.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||Je(e,null)}),i.forEach(function(e){r.has(e)||Je(e,a)})}Ze.set(n,e)},[e]),n}function $e(e){return e}function et(e,t){t===void 0&&(t=$e);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function tt(e){e===void 0&&(e={});var t=et(null);return t.options=R({async:!0,ssr:!1},e),t}var nt=function(e){var t=e.sideCar,n=He(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return p.createElement(r,R({},n))};nt.isSideCarExport=!0;function rt(e,t){return e.useMedium(t),nt}var it=tt(),at=function(){},ot=p.forwardRef(function(e,t){var n=p.useRef(null),r=p.useState({onScrollCapture:at,onWheelCapture:at,onTouchMoveCapture:at}),i=r[0],a=r[1],o=e.forwardProps,s=e.children,c=e.className,l=e.removeScrollBar,u=e.enabled,d=e.shards,f=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=He(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=f,C=Qe([n,t]),w=R(R({},x),i);return p.createElement(p.Fragment,null,u&&p.createElement(S,{sideCar:it,removeScrollBar:l,shards:d,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),o?p.cloneElement(p.Children.only(s),R(R({},w),{ref:C})):p.createElement(y,R({},w,{className:c,ref:C}),s))});ot.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},ot.classNames={fullWidth:Ge,zeroRight:We};var st,ct=function(){if(st)return st;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function lt(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=ct();return t&&e.setAttribute(`nonce`,t),e}function ut(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function dt(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ft=function(){var e=0,t=null;return{add:function(n){e==0&&(t=lt())&&(ut(t,n),dt(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},pt=function(){var e=ft();return function(t,n){p.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},mt=function(){var e=pt();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},ht={left:0,top:0,right:0,gap:0},gt=function(e){return parseInt(e||``,10)||0},_t=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[gt(n),gt(r),gt(i)]},vt=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return ht;var t=_t(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},yt=mt(),bt=`data-scroll-locked`,xt=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
6
+ .${Ke} {
7
+ overflow: hidden ${r};
8
+ padding-right: ${s}px ${r};
9
+ }
10
+ body[${bt}] {
11
+ overflow: hidden ${r};
12
+ overscroll-behavior: contain;
13
+ ${[t&&`position: relative ${r};`,n===`margin`&&`
14
+ padding-left: ${i}px;
15
+ padding-top: ${a}px;
16
+ padding-right: ${o}px;
17
+ margin-left:0;
18
+ margin-top:0;
19
+ margin-right: ${s}px ${r};
20
+ `,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
21
+ }
22
+
23
+ .${We} {
24
+ right: ${s}px ${r};
25
+ }
26
+
27
+ .${Ge} {
28
+ margin-right: ${s}px ${r};
29
+ }
30
+
31
+ .${We} .${We} {
32
+ right: 0 ${r};
33
+ }
34
+
35
+ .${Ge} .${Ge} {
36
+ margin-right: 0 ${r};
37
+ }
38
+
39
+ body[${bt}] {
40
+ ${qe}: ${s}px;
41
+ }
42
+ `},St=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Ct=function(){p.useEffect(function(){return document.body.setAttribute(bt,(St()+1).toString()),function(){var e=St()-1;e<=0?document.body.removeAttribute(bt):document.body.setAttribute(bt,e.toString())}},[])},wt=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Ct();var a=p.useMemo(function(){return vt(i)},[i]);return p.createElement(yt,{styles:xt(a,!t,i,n?``:`!important`)})},Tt=!1;if(typeof window<`u`)try{var Et=Object.defineProperty({},`passive`,{get:function(){return Tt=!0,!0}});window.addEventListener(`test`,Et,Et),window.removeEventListener(`test`,Et,Et)}catch{Tt=!1}var z=Tt?{passive:!1}:!1,Dt=function(e){return e.tagName===`TEXTAREA`},Ot=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!Dt(e)&&n[t]===`visible`)},kt=function(e){return Ot(e,`overflowY`)},At=function(e){return Ot(e,`overflowX`)},jt=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Pt(e,r)){var i=Ft(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Mt=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},Nt=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Pt=function(e,t){return e===`v`?kt(t):At(t)},Ft=function(e,t){return e===`v`?Mt(t):Nt(t)},It=function(e,t){return e===`h`&&t===`rtl`?-1:1},Lt=function(e,t,n,r,i){var a=It(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Ft(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Pt(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},Rt=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},zt=function(e){return[e.deltaX,e.deltaY]},Bt=function(e){return e&&`current`in e?e.current:e},Vt=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Ht=function(e){return`
43
+ .block-interactivity-${e} {pointer-events: none;}
44
+ .allow-interactivity-${e} {pointer-events: all;}
45
+ `},Ut=0,Wt=[];function Gt(e){var t=p.useRef([]),n=p.useRef([0,0]),r=p.useRef(),i=p.useState(Ut++)[0],a=p.useState(mt)[0],o=p.useRef(e);p.useEffect(function(){o.current=e},[e]),p.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=Ue([e.lockRef.current],(e.shards||[]).map(Bt),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var s=p.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!o.current.allowPinchZoom;var i=Rt(e),a=n.current,s=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(s)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=jt(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=jt(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(s||c)&&(r.current=l),!l)return!0;var h=r.current||l;return Lt(h,t,e,h===`h`?s:c,!0)},[]),c=p.useCallback(function(e){var n=e;if(!(!Wt.length||Wt[Wt.length-1]!==a)){var r=`deltaY`in n?zt(n):Rt(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&Vt(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var c=(o.current.shards||[]).map(Bt).filter(Boolean).filter(function(e){return e.contains(n.target)});(c.length>0?s(n,c[0]):!o.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),l=p.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:Kt(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),u=p.useCallback(function(e){n.current=Rt(e),r.current=void 0},[]),d=p.useCallback(function(t){l(t.type,zt(t),t.target,s(t,e.lockRef.current))},[]),f=p.useCallback(function(t){l(t.type,Rt(t),t.target,s(t,e.lockRef.current))},[]);p.useEffect(function(){return Wt.push(a),e.setCallbacks({onScrollCapture:d,onWheelCapture:d,onTouchMoveCapture:f}),document.addEventListener(`wheel`,c,z),document.addEventListener(`touchmove`,c,z),document.addEventListener(`touchstart`,u,z),function(){Wt=Wt.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,c,z),document.removeEventListener(`touchmove`,c,z),document.removeEventListener(`touchstart`,u,z)}},[]);var m=e.removeScrollBar,h=e.inert;return p.createElement(p.Fragment,null,h?p.createElement(a,{styles:Ht(i)}):null,m?p.createElement(wt,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Kt(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var qt=rt(it,Gt),Jt=p.forwardRef(function(e,t){return p.createElement(ot,R({},e,{ref:t,sideCar:qt}))});Jt.classNames=ot.classNames;var Yt=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},Xt=new WeakMap,Zt=new WeakMap,Qt={},$t=0,en=function(e){return e&&(e.host||en(e.parentNode))},tn=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=en(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},nn=function(e,t,n,r){var i=tn(t,Array.isArray(e)?e:[e]);Qt[n]||(Qt[n]=new WeakMap);var a=Qt[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(Xt.get(e)||0)+1,l=(a.get(e)||0)+1;Xt.set(e,c),a.set(e,l),o.push(e),c===1&&i&&Zt.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),$t++,function(){o.forEach(function(e){var t=Xt.get(e)-1,i=a.get(e)-1;Xt.set(e,t),a.set(e,i),t||(Zt.has(e)||e.removeAttribute(r),Zt.delete(e)),i||e.removeAttribute(n)}),$t--,$t||(Xt=new WeakMap,Xt=new WeakMap,Zt=new WeakMap,Qt={})}},rn=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||Yt(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),nn(r,i,n,`aria-hidden`)):function(){return null}};function an(e){let[t,n]=p.useState(void 0);return P(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});let t=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;let r=t[0],i,a;if(`borderBoxSize`in r){let e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,a=t.blockSize}else i=e.offsetWidth,a=e.offsetHeight;n({width:i,height:a})});return t.observe(e,{box:`border-box`}),()=>t.unobserve(e)}else n(void 0)},[e]),t}var on=[`top`,`right`,`bottom`,`left`],B=Math.min,V=Math.max,sn=Math.round,cn=Math.floor,H=e=>({x:e,y:e}),ln={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function un(e,t,n){return V(e,B(t,n))}function U(e,t){return typeof e==`function`?e(t):e}function W(e){return e.split(`-`)[0]}function dn(e){return e.split(`-`)[1]}function fn(e){return e===`x`?`y`:`x`}function pn(e){return e===`y`?`height`:`width`}function G(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function mn(e){return fn(G(e))}function hn(e,t,n){n===void 0&&(n=!1);let r=dn(e),i=mn(e),a=pn(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=wn(o)),[o,wn(o)]}function gn(e){let t=wn(e);return[_n(e),t,_n(t)]}function _n(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var vn=[`left`,`right`],yn=[`right`,`left`],bn=[`top`,`bottom`],xn=[`bottom`,`top`];function Sn(e,t,n){switch(e){case`top`:case`bottom`:return n?t?yn:vn:t?vn:yn;case`left`:case`right`:return t?bn:xn;default:return[]}}function Cn(e,t,n,r){let i=dn(e),a=Sn(W(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(_n)))),a}function wn(e){let t=W(e);return ln[t]+e.slice(t.length)}function Tn(e){return{top:0,right:0,bottom:0,left:0,...e}}function En(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Tn(e)}function Dn(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function On(e,t,n){let{reference:r,floating:i}=e,a=G(t),o=mn(t),s=pn(o),c=W(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(dn(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function kn(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=U(t,e),p=En(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Dn(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=Dn(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var An=50,jn=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:kn},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=On(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<An&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=On(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Mn=e=>({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=U(e,t)||{};if(l==null)return{};let d=En(u),f={x:n,y:r},p=mn(i),m=pn(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=B(d[_],T),D=B(d[v],T),O=E,k=C-h[m]-D,A=C/2-h[m]/2+w,j=un(O,A,k),M=!c.arrow&&dn(i)!=null&&A!==j&&a.reference[m]/2-(A<O?E:D)-h[m]/2<0,N=M?A<O?A-O:A-k:0;return{[p]:f[p]+N,data:{[p]:j,centerOffset:A-j-N,...M&&{alignmentOffset:N}},reset:M}}}),Nn=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=U(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=W(r),_=G(o),v=W(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[wn(o)]:gn(o)),x=p!==`none`;!d&&x&&b.push(...Cn(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=hn(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(!(u===`alignment`&&_!==G(t))||T.every(e=>G(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=G(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}};function Pn(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function Fn(e){return on.some(t=>e[t]>=0)}var In=function(e){return e===void 0&&(e={}),{name:`hide`,options:e,async fn(t){let{rects:n,platform:r}=t,{strategy:i=`referenceHidden`,...a}=U(e,t);switch(i){case`referenceHidden`:{let e=Pn(await r.detectOverflow(t,{...a,elementContext:`reference`}),n.reference);return{data:{referenceHiddenOffsets:e,referenceHidden:Fn(e)}}}case`escaped`:{let e=Pn(await r.detectOverflow(t,{...a,altBoundary:!0}),n.floating);return{data:{escapedOffsets:e,escaped:Fn(e)}}}default:return{}}}}},Ln=new Set([`left`,`top`]);async function Rn(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=W(n),s=dn(n),c=G(n)===`y`,l=Ln.has(o)?-1:1,u=a&&c?-1:1,d=U(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var zn=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await Rn(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Bn=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=U(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=G(W(i)),p=fn(f),m=u[p],h=u[f];if(o){let e=p===`y`?`top`:`left`,t=p===`y`?`bottom`:`right`,n=m+d[e],r=m-d[t];m=un(n,m,r)}if(s){let e=f===`y`?`top`:`left`,t=f===`y`?`bottom`:`right`,n=h+d[e],r=h-d[t];h=un(n,h,r)}let g=c.fn({...t,[p]:m,[f]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:o,[f]:s}}}}}},Vn=function(e){return e===void 0&&(e={}),{options:e,fn(t){let{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:c=!0,crossAxis:l=!0}=U(e,t),u={x:n,y:r},d=G(i),f=fn(d),p=u[f],m=u[d],h=U(s,t),g=typeof h==`number`?{mainAxis:h,crossAxis:0}:{mainAxis:0,crossAxis:0,...h};if(c){let e=f===`y`?`height`:`width`,t=a.reference[f]-a.floating[e]+g.mainAxis,n=a.reference[f]+a.reference[e]-g.mainAxis;p<t?p=t:p>n&&(p=n)}if(l){let e=f===`y`?`width`:`height`,t=Ln.has(W(i)),n=a.reference[d]-a.floating[e]+(t&&o.offset?.[d]||0)+(t?0:g.crossAxis),r=a.reference[d]+a.reference[e]+(t?0:o.offset?.[d]||0)-(t?g.crossAxis:0);m<n?m=n:m>r&&(m=r)}return{[f]:p,[d]:m}}}},Hn=function(e){return e===void 0&&(e={}),{name:`size`,options:e,async fn(t){var n,r;let{placement:i,rects:a,platform:o,elements:s}=t,{apply:c=()=>{},...l}=U(e,t),u=await o.detectOverflow(t,l),d=W(i),f=dn(i),p=G(i)===`y`,{width:m,height:h}=a.floating,g,_;d===`top`||d===`bottom`?(g=d,_=f===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?`start`:`end`)?`left`:`right`):(_=d,g=f===`end`?`top`:`bottom`);let v=h-u.top-u.bottom,y=m-u.left-u.right,b=B(h-u[g],v),x=B(m-u[_],y),S=!t.middlewareData.shift,C=b,w=x;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(w=y),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(C=v),S&&!f){let e=V(u.left,0),t=V(u.right,0),n=V(u.top,0),r=V(u.bottom,0);p?w=m-2*(e!==0||t!==0?e+t:V(u.left,u.right)):C=h-2*(n!==0||r!==0?n+r:V(u.top,u.bottom))}await c({...t,availableWidth:w,availableHeight:C});let T=await o.getDimensions(s.floating);return m!==T.width||h!==T.height?{reset:{rects:!0}}:{}}}};function Un(){return typeof window<`u`}function Wn(e){return Gn(e)?(e.nodeName||``).toLowerCase():`#document`}function K(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function q(e){return((Gn(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Gn(e){return Un()?e instanceof Node||e instanceof K(e).Node:!1}function J(e){return Un()?e instanceof Element||e instanceof K(e).Element:!1}function Y(e){return Un()?e instanceof HTMLElement||e instanceof K(e).HTMLElement:!1}function Kn(e){return!Un()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof K(e).ShadowRoot}function qn(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Z(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Jn(e){return/^(table|td|th)$/.test(Wn(e))}function Yn(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Xn=/transform|translate|scale|rotate|perspective|filter/,Zn=/paint|layout|strict|content/,X=e=>!!e&&e!==`none`,Qn;function $n(e){let t=J(e)?Z(e):e;return X(t.transform)||X(t.translate)||X(t.scale)||X(t.rotate)||X(t.perspective)||!tr()&&(X(t.backdropFilter)||X(t.filter))||Xn.test(t.willChange||``)||Zn.test(t.contain||``)}function er(e){let t=Q(e);for(;Y(t)&&!nr(t);){if($n(t))return t;if(Yn(t))return null;t=Q(t)}return null}function tr(){return Qn??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Qn}function nr(e){return/^(html|body|#document)$/.test(Wn(e))}function Z(e){return K(e).getComputedStyle(e)}function rr(e){return J(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Q(e){if(Wn(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Kn(e)&&e.host||q(e);return Kn(t)?t.host:t}function ir(e){let t=Q(e);return nr(t)?e.ownerDocument?e.ownerDocument.body:e.body:Y(t)&&qn(t)?t:ir(t)}function ar(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=ir(e),i=r===e.ownerDocument?.body,a=K(r);if(i){let e=or(a);return t.concat(a,a.visualViewport||[],qn(r)?r:[],e&&n?ar(e):[])}else return t.concat(r,ar(r,[],n))}function or(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function sr(e){let t=Z(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=Y(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=sn(n)!==a||sn(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function cr(e){return J(e)?e:e.contextElement}function lr(e){let t=cr(e);if(!Y(t))return H(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=sr(t),o=(a?sn(n.width):n.width)/r,s=(a?sn(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var ur=H(0);function dr(e){let t=K(e);return!tr()||!t.visualViewport?ur:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function fr(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==K(e)?!1:t}function $(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=cr(e),o=H(1);t&&(r?J(r)&&(o=lr(r)):o=lr(e));let s=fr(a,n,r)?dr(a):H(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=K(a),t=r&&J(r)?K(r):r,n=e,i=or(n);for(;i&&r&&t!==n;){let e=lr(i),t=i.getBoundingClientRect(),r=Z(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=K(i),i=or(n)}}return Dn({width:u,height:d,x:c,y:l})}function pr(e,t){let n=rr(e).scrollLeft;return t?t.left+n:$(q(e)).left+n}function mr(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-pr(e,n),y:n.top+t.scrollTop}}function hr(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=q(r),s=t?Yn(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=H(1),u=H(0),d=Y(r);if((d||!d&&!a)&&((Wn(r)!==`body`||qn(o))&&(c=rr(r)),d)){let e=$(r);l=lr(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?mr(o,c):H(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function gr(e){return Array.from(e.getClientRects())}function _r(e){let t=q(e),n=rr(e),r=e.ownerDocument.body,i=V(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=V(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+pr(e),s=-n.scrollTop;return Z(r).direction===`rtl`&&(o+=V(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var vr=25;function yr(e,t){let n=K(e),r=q(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=tr();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=pr(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=vr&&(a-=o)}else l<=vr&&(a+=l);return{width:a,height:o,x:s,y:c}}function br(e,t){let n=$(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Y(e)?lr(e):H(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function xr(e,t,n){let r;if(t===`viewport`)r=yr(e,n);else if(t===`document`)r=_r(q(e));else if(J(t))r=br(t,n);else{let n=dr(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Dn(r)}function Sr(e,t){let n=Q(e);return n===t||!J(n)||nr(n)?!1:Z(n).position===`fixed`||Sr(n,t)}function Cr(e,t){let n=t.get(e);if(n)return n;let r=ar(e,[],!1).filter(e=>J(e)&&Wn(e)!==`body`),i=null,a=Z(e).position===`fixed`,o=a?Q(e):e;for(;J(o)&&!nr(o);){let t=Z(o),n=$n(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||qn(o)&&!n&&Sr(e,o))?r=r.filter(e=>e!==o):i=t,o=Q(o)}return t.set(e,r),r}function wr(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Yn(t)?[]:Cr(t,this._c):[].concat(n),r],o=xr(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=xr(t,a[e],i);s=V(n.top,s),c=B(n.right,c),l=B(n.bottom,l),u=V(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function Tr(e){let{width:t,height:n}=sr(e);return{width:t,height:n}}function Er(e,t,n){let r=Y(t),i=q(t),a=n===`fixed`,o=$(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=H(0);function l(){c.x=pr(i)}if(r||!r&&!a)if((Wn(t)!==`body`||qn(i))&&(s=rr(t)),r){let e=$(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?mr(i,s):H(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function Dr(e){return Z(e).position===`static`}function Or(e,t){if(!Y(e)||Z(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return q(e)===n&&(n=n.ownerDocument.body),n}function kr(e,t){let n=K(e);if(Yn(e))return n;if(!Y(e)){let t=Q(e);for(;t&&!nr(t);){if(J(t)&&!Dr(t))return t;t=Q(t)}return n}let r=Or(e,t);for(;r&&Jn(r)&&Dr(r);)r=Or(r,t);return r&&nr(r)&&Dr(r)&&!$n(r)?n:r||er(e)||n}var Ar=async function(e){let t=this.getOffsetParent||kr,n=this.getDimensions,r=await n(e.floating);return{reference:Er(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function jr(e){return Z(e).direction===`rtl`}var Mr={convertOffsetParentRelativeRectToViewportRelativeRect:hr,getDocumentElement:q,getClippingRect:wr,getOffsetParent:kr,getElementRects:Ar,getClientRects:gr,getDimensions:Tr,getScale:lr,isElement:J,isRTL:jr};function Nr(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function Pr(e,t){let n=null,r,i=q(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=cn(d),h=cn(i.clientWidth-(u+f)),g=cn(i.clientHeight-(d+p)),_=cn(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:V(0,B(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!Nr(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function Fr(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=cr(e),u=i||a?[...l?ar(l):[],...t?ar(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?Pr(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?$(e):null;c&&g();function g(){let t=$(e);h&&!Nr(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var Ir=zn,Lr=Bn,Rr=Nn,zr=Hn,Br=In,Vr=Mn,Hr=Vn,Ur=(e,t,n)=>{let r=new Map,i={platform:Mr,...n},a={...i.platform,_c:r};return jn(e,t,{...i,platform:a})},Wr=typeof document<`u`?p.useLayoutEffect:function(){};function Gr(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e==`function`&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e==`object`){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!Gr(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){let n=i[r];if(!(n===`_owner`&&e.$$typeof)&&!Gr(e[n],t[n]))return!1}return!0}return e!==e&&t!==t}function Kr(e){return typeof window>`u`?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function qr(e,t){let n=Kr(e);return Math.round(t*n)/n}function Jr(e){let t=p.useRef(e);return Wr(()=>{t.current=e}),t}function Yr(e){e===void 0&&(e={});let{placement:t=`bottom`,strategy:n=`absolute`,middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:c,open:l}=e,[u,d]=p.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[f,m]=p.useState(r);Gr(f,r)||m(r);let[h,g]=p.useState(null),[_,v]=p.useState(null),y=p.useCallback(e=>{e!==C.current&&(C.current=e,g(e))},[]),b=p.useCallback(e=>{e!==w.current&&(w.current=e,v(e))},[]),x=a||h,S=o||_,C=p.useRef(null),w=p.useRef(null),T=p.useRef(u),D=c!=null,O=Jr(c),k=Jr(i),A=Jr(l),j=p.useCallback(()=>{if(!C.current||!w.current)return;let e={placement:t,strategy:n,middleware:f};k.current&&(e.platform=k.current),Ur(C.current,w.current,e).then(e=>{let t={...e,isPositioned:A.current!==!1};M.current&&!Gr(T.current,t)&&(T.current=t,E.flushSync(()=>{d(t)}))})},[f,t,n,k,A]);Wr(()=>{l===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,d(e=>({...e,isPositioned:!1})))},[l]);let M=p.useRef(!1);Wr(()=>(M.current=!0,()=>{M.current=!1}),[]),Wr(()=>{if(x&&(C.current=x),S&&(w.current=S),x&&S){if(O.current)return O.current(x,S,j);j()}},[x,S,j,O,D]);let N=p.useMemo(()=>({reference:C,floating:w,setReference:y,setFloating:b}),[y,b]),P=p.useMemo(()=>({reference:x,floating:S}),[x,S]),ee=p.useMemo(()=>{let e={position:n,left:0,top:0};if(!P.floating)return e;let t=qr(P.floating,u.x),r=qr(P.floating,u.y);return s?{...e,transform:`translate(`+t+`px, `+r+`px)`,...Kr(P.floating)>=1.5&&{willChange:`transform`}}:{position:n,left:t,top:r}},[n,s,P.floating,u.x,u.y]);return p.useMemo(()=>({...u,update:j,refs:N,elements:P,floatingStyles:ee}),[u,j,N,P,ee])}var Xr=e=>{function t(e){return{}.hasOwnProperty.call(e,`current`)}return{name:`arrow`,options:e,fn(n){let{element:r,padding:i}=typeof e==`function`?e(n):e;return r&&t(r)?r.current==null?{}:Vr({element:r.current,padding:i}).fn(n):r?Vr({element:r,padding:i}).fn(n):{}}}},Zr=(e,t)=>{let n=Ir(e);return{name:n.name,fn:n.fn,options:[e,t]}},Qr=(e,t)=>{let n=Lr(e);return{name:n.name,fn:n.fn,options:[e,t]}},$r=(e,t)=>({fn:Hr(e).fn,options:[e,t]}),ei=(e,t)=>{let n=Rr(e);return{name:n.name,fn:n.fn,options:[e,t]}},ti=(e,t)=>{let n=zr(e);return{name:n.name,fn:n.fn,options:[e,t]}},ni=(e,t)=>{let n=Br(e);return{name:n.name,fn:n.fn,options:[e,t]}},ri=(e,t)=>{let n=Xr(e);return{name:n.name,fn:n.fn,options:[e,t]}},ii=`Arrow`,ai=p.forwardRef((e,t)=>{let{children:n,width:r=10,height:i=5,...a}=e;return(0,_.jsx)(D.svg,{...a,ref:t,width:r,height:i,viewBox:`0 0 30 10`,preserveAspectRatio:`none`,children:e.asChild?n:(0,_.jsx)(`polygon`,{points:`0,0 30,0 15,10`})})});ai.displayName=ii;var oi=ai,si=`Popper`,[ci,li]=A(si),[ui,di]=ci(si),fi=e=>{let{__scopePopper:t,children:n}=e,[r,i]=p.useState(null);return(0,_.jsx)(ui,{scope:t,anchor:r,onAnchorChange:i,children:n})};fi.displayName=si;var pi=`PopperAnchor`,mi=p.forwardRef((e,t)=>{let{__scopePopper:n,virtualRef:r,...i}=e,a=di(pi,n),o=p.useRef(null),s=g(t,o),c=p.useRef(null);return p.useEffect(()=>{let e=c.current;c.current=r?.current||o.current,e!==c.current&&a.onAnchorChange(c.current)}),r?null:(0,_.jsx)(D.div,{...i,ref:s})});mi.displayName=pi;var hi=`PopperContent`,[gi,_i]=ci(hi),vi=p.forwardRef((e,t)=>{let{__scopePopper:n,side:r=`bottom`,sideOffset:i=0,align:a=`center`,alignOffset:o=0,arrowPadding:s=0,avoidCollisions:c=!0,collisionBoundary:l=[],collisionPadding:u=0,sticky:d=`partial`,hideWhenDetached:f=!1,updatePositionStrategy:m=`optimized`,onPlaced:h,...v}=e,y=di(hi,n),[b,x]=p.useState(null),S=g(t,e=>x(e)),[C,w]=p.useState(null),T=an(C),E=T?.width??0,O=T?.height??0,k=r+(a===`center`?``:`-`+a),A=typeof u==`number`?u:{top:0,right:0,bottom:0,left:0,...u},j=Array.isArray(l)?l:[l],M=j.length>0,N={padding:A,boundary:j.filter(Si),altBoundary:M},{refs:ee,floatingStyles:te,placement:ne,isPositioned:re,middlewareData:F}=Yr({strategy:`fixed`,placement:k,whileElementsMounted:(...e)=>Fr(...e,{animationFrame:m===`always`}),elements:{reference:y.anchor},middleware:[Zr({mainAxis:i+O,alignmentAxis:o}),c&&Qr({mainAxis:!0,crossAxis:!1,limiter:d===`partial`?$r():void 0,...N}),c&&ei({...N}),ti({...N,apply:({elements:e,rects:t,availableWidth:n,availableHeight:r})=>{let{width:i,height:a}=t.reference,o=e.floating.style;o.setProperty(`--radix-popper-available-width`,`${n}px`),o.setProperty(`--radix-popper-available-height`,`${r}px`),o.setProperty(`--radix-popper-anchor-width`,`${i}px`),o.setProperty(`--radix-popper-anchor-height`,`${a}px`)}}),C&&ri({element:C,padding:s}),Ci({arrowWidth:E,arrowHeight:O}),f&&ni({strategy:`referenceHidden`,...N})]}),[ie,ae]=wi(ne),oe=I(h);P(()=>{re&&oe?.()},[re,oe]);let se=F.arrow?.x,ce=F.arrow?.y,le=F.arrow?.centerOffset!==0,[ue,de]=p.useState();return P(()=>{b&&de(window.getComputedStyle(b).zIndex)},[b]),(0,_.jsx)(`div`,{ref:ee.setFloating,"data-radix-popper-content-wrapper":``,style:{...te,transform:re?te.transform:`translate(0, -200%)`,minWidth:`max-content`,zIndex:ue,"--radix-popper-transform-origin":[F.transformOrigin?.x,F.transformOrigin?.y].join(` `),...F.hide?.referenceHidden&&{visibility:`hidden`,pointerEvents:`none`}},dir:e.dir,children:(0,_.jsx)(gi,{scope:n,placedSide:ie,onArrowChange:w,arrowX:se,arrowY:ce,shouldHideArrow:le,children:(0,_.jsx)(D.div,{"data-side":ie,"data-align":ae,...v,ref:S,style:{...v.style,animation:re?void 0:`none`}})})})});vi.displayName=hi;var yi=`PopperArrow`,bi={top:`bottom`,right:`left`,bottom:`top`,left:`right`},xi=p.forwardRef(function(e,t){let{__scopePopper:n,...r}=e,i=_i(yi,n),a=bi[i.placedSide];return(0,_.jsx)(`span`,{ref:i.onArrowChange,style:{position:`absolute`,left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:``,right:`0 0`,bottom:`center 0`,left:`100% 0`}[i.placedSide],transform:{top:`translateY(100%)`,right:`translateY(50%) rotate(90deg) translateX(-50%)`,bottom:`rotate(180deg)`,left:`translateY(50%) rotate(-90deg) translateX(50%)`}[i.placedSide],visibility:i.shouldHideArrow?`hidden`:void 0},children:(0,_.jsx)(oi,{...r,ref:t,style:{...r.style,display:`block`}})})});xi.displayName=yi;function Si(e){return e!==null}var Ci=e=>({name:`transformOrigin`,options:e,fn(t){let{placement:n,rects:r,middlewareData:i}=t,a=i.arrow?.centerOffset!==0,o=a?0:e.arrowWidth,s=a?0:e.arrowHeight,[c,l]=wi(n),u={start:`0%`,center:`50%`,end:`100%`}[l],d=(i.arrow?.x??0)+o/2,f=(i.arrow?.y??0)+s/2,p=``,m=``;return c===`bottom`?(p=a?u:`${d}px`,m=`${-s}px`):c===`top`?(p=a?u:`${d}px`,m=`${r.floating.height+s}px`):c===`right`?(p=`${-s}px`,m=a?u:`${f}px`):c===`left`&&(p=`${r.floating.width+s}px`,m=a?u:`${f}px`),{data:{x:p,y:m}}}});function wi(e){let[t,n=`center`]=e.split(`-`);return[t,n]}var Ti=fi,Ei=mi,Di=vi,Oi=xi,ki=i(),Ai=`/Users/hienlh/Projects/ppm/src/web/components/ui/input.tsx`;function ji({className:e,type:t,...n}){return(0,ki.jsxDEV)(`input`,{type:t,"data-slot":`input`,className:o(`h-9 w-full min-w-0 rounded-lg border border-border bg-surface px-3 py-2 text-base md:text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:border-ring disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50`,`selection:bg-primary selection:text-primary-foreground`,`file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground`,`aria-invalid:border-destructive`,e),...n},void 0,!1,{fileName:Ai,lineNumber:7,columnNumber:5},this)}export{f as A,D as C,S as D,v as E,u as M,l as N,h as O,c as P,A as S,y as T,te as _,Ti as a,M as b,rn as c,Re as d,Ee as f,ae as g,se as h,Di as i,d as j,g as k,Jt as l,I as m,Ei as n,li as o,he as p,Oi as r,an as s,ji as t,Be as u,P as v,O as w,k as x,N as y};
@@ -0,0 +1,6 @@
1
+ import{i as e,n as t,t as n}from"./react-4j_0SqET.js";var r=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),i=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),a=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),o=e=>{let t=a(e);return t.charAt(0).toUpperCase()+t.slice(1)},s={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},c=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},l=e(n()),u=(0,l.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:i,className:a=``,children:o,iconNode:u,...d},f)=>(0,l.createElement)(`svg`,{ref:f,...s,width:t,height:t,stroke:e,strokeWidth:i?Number(n)*24/Number(t):n,className:r(`lucide`,a),...!o&&!c(d)&&{"aria-hidden":`true`},...d},[...u.map(([e,t])=>(0,l.createElement)(e,t)),...Array.isArray(o)?o:[o]])),d=(e,t)=>{let n=(0,l.forwardRef)(({className:n,...a},s)=>(0,l.createElement)(u,{ref:s,iconNode:t,className:r(`lucide-${i(o(e))}`,`lucide-${e}`,n),...a}));return n.displayName=o(e),n},f=t((e=>{(function(){function t(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===k?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case w:return`Suspense`;case T:return`SuspenseList`;case O:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case C:var n=e.render;return e=e.displayName,e||=(e=n.displayName||n.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case E:return n=e.displayName||null,n===null?t(e.type)||`Memo`:n;case D:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function r(e){return``+e}function i(e){try{r(e);var t=!1}catch{t=!0}if(t){t=console;var n=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return n.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),r(e)}}function a(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===D)return`<...>`;try{var n=t(e);return n?`<`+n+`>`:`<...>`}catch{return`<...>`}}function o(){var e=A.A;return e===null?null:e.getOwner()}function s(){return Error(`react-stack-top-frame`)}function c(e){if(j.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function l(e,t){function n(){P||(P=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,`key`,{get:n,configurable:!0})}function u(){var e=t(this.type);return F[e]||(F[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function d(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,`ref`,{enumerable:!1,value:null}):Object.defineProperty(e,`ref`,{enumerable:!1,get:u}),e._store={},Object.defineProperty(e._store,`validated`,{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,`_debugInfo`,{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,`_debugStack`,{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,`_debugTask`,{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,n,r,a,s,u){var f=n.children;if(f!==void 0)if(a)if(M(f)){for(a=0;a<f.length;a++)p(f[a]);Object.freeze&&Object.freeze(f)}else console.error(`React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.`);else p(f);if(j.call(n,`key`)){f=t(e);var m=Object.keys(n).filter(function(e){return e!==`key`});a=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,R[f+a]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}`,console.error(`A props object containing a "key" prop is being spread into JSX:
2
+ let props = %s;
3
+ <%s {...props} />
4
+ React keys must be passed directly to JSX without using spread:
5
+ let props = %s;
6
+ <%s key={someKey} {...props} />`,a,f,m,f),R[f+a]=!0)}if(f=null,r!==void 0&&(i(r),f=``+r),c(n)&&(i(n.key),f=``+n.key),`key`in n)for(var h in r={},n)h!==`key`&&(r[h]=n[h]);else r=n;return f&&l(r,typeof e==`function`?e.displayName||e.name||`Unknown`:e),d(e,f,r,o(),s,u)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===D&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=n(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),C=Symbol.for(`react.forward_ref`),w=Symbol.for(`react.suspense`),T=Symbol.for(`react.suspense_list`),E=Symbol.for(`react.memo`),D=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),k=Symbol.for(`react.client.reference`),A=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,j=Object.prototype.hasOwnProperty,M=Array.isArray,N=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var P,F={},I=h.react_stack_bottom_frame.bind(h,s)(),L=N(a(s)),R={};e.Fragment=v,e.jsxDEV=function(e,t,n,r){var i=1e4>A.recentlyCreatedOwnerStacks++;return f(e,t,n,r,i?Error(`react-stack-top-frame`):I,i?N(a(e)):L)}})()})),p=t(((e,t)=>{t.exports=f()}));export{d as n,p as t};
@@ -0,0 +1,6 @@
1
+ import{n as e,t}from"./react-4j_0SqET.js";var n=e((e=>{(function(){function n(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===k?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case w:return`Suspense`;case T:return`SuspenseList`;case O:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case S:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case C:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case E:return t=e.displayName||null,t===null?n(e.type)||`Memo`:t;case D:t=e._payload,e=e._init;try{return n(e(t))}catch{}}return null}function r(e){return``+e}function i(e){try{r(e);var t=!1}catch{t=!0}if(t){t=console;var n=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return n.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),r(e)}}function a(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===D)return`<...>`;try{var t=n(e);return t?`<`+t+`>`:`<...>`}catch{return`<...>`}}function o(){var e=A.A;return e===null?null:e.getOwner()}function s(){return Error(`react-stack-top-frame`)}function c(e){if(j.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function l(e,t){function n(){P||(P=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,`key`,{get:n,configurable:!0})}function u(){var e=n(this.type);return F[e]||(F[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function d(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,`ref`,{enumerable:!1,value:null}):Object.defineProperty(e,`ref`,{enumerable:!1,get:u}),e._store={},Object.defineProperty(e._store,`validated`,{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,`_debugInfo`,{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,`_debugStack`,{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,`_debugTask`,{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,t,r,a,s,u){var f=t.children;if(f!==void 0)if(a)if(M(f)){for(a=0;a<f.length;a++)p(f[a]);Object.freeze&&Object.freeze(f)}else console.error(`React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.`);else p(f);if(j.call(t,`key`)){f=n(e);var m=Object.keys(t).filter(function(e){return e!==`key`});a=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,R[f+a]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}`,console.error(`A props object containing a "key" prop is being spread into JSX:
2
+ let props = %s;
3
+ <%s {...props} />
4
+ React keys must be passed directly to JSX without using spread:
5
+ let props = %s;
6
+ <%s key={someKey} {...props} />`,a,f,m,f),R[f+a]=!0)}if(f=null,r!==void 0&&(i(r),f=``+r),c(t)&&(i(t.key),f=``+t.key),`key`in t)for(var h in r={},t)h!==`key`&&(r[h]=t[h]);else r=t;return f&&l(r,typeof e==`function`?e.displayName||e.name||`Unknown`:e),d(e,f,r,o(),s,u)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===D&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=t(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),S=Symbol.for(`react.context`),C=Symbol.for(`react.forward_ref`),w=Symbol.for(`react.suspense`),T=Symbol.for(`react.suspense_list`),E=Symbol.for(`react.memo`),D=Symbol.for(`react.lazy`),O=Symbol.for(`react.activity`),k=Symbol.for(`react.client.reference`),A=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,j=Object.prototype.hasOwnProperty,M=Array.isArray,N=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var P,F={},I=h.react_stack_bottom_frame.bind(h,s)(),L=N(a(s)),R={};e.Fragment=v,e.jsx=function(e,t,n){var r=1e4>A.recentlyCreatedOwnerStacks++;return f(e,t,n,!1,r?Error(`react-stack-top-frame`):I,r?N(a(e)):L)},e.jsxs=function(e,t,n){var r=1e4>A.recentlyCreatedOwnerStacks++;return f(e,t,n,!0,r?Error(`react-stack-top-frame`):I,r?N(a(e)):L)}})()})),r=e(((e,t)=>{t.exports=n()}));export{r as t};
@@ -0,0 +1 @@
1
+ import"./react-4j_0SqET.js";import"./api-client-BNaaEdcl.js";import{S as e}from"./index-DhXnbgjx.js";export{e as useKeybindingsStore};
@@ -1,4 +1,4 @@
1
- import{i as e,t}from"./react-CYzKIDNi.js";import{t as n}from"./jsx-runtime-wQxeESYQ.js";import{t as r}from"./tab-store-NOBndc0_.js";import{t as i}from"./utils-DC-bdPS3.js";import{i as a,r as o,t as s}from"./api-client-TUmacMRS.js";import{g as c,v as l}from"./index-BiOW8qrf.js";function u(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var d=u();function f(e){d=e}var p={exec:()=>null};function m(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(g.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var h=(()=>{try{return!0}catch{return!1}})(),g={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},ee=/^(?:[ \t]*(?:\n|$))+/,te=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,ne=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,_=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,re=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,v=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,ie=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,ae=m(ie).replace(/bull/g,v).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),oe=m(ie).replace(/bull/g,v).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),y=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,se=/^[^\n]+/,b=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ce=m(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,b).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),le=m(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,v).getRegex(),x=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,S=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,ue=m(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,S).replace(`tag`,x).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),C=m(y).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),w={blockquote:m(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,C).getRegex(),code:te,def:ce,fences:ne,heading:re,hr:_,html:ue,lheading:ae,list:le,newline:ee,paragraph:C,table:p,text:se},de=m(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),fe={...w,lheading:oe,table:de,paragraph:m(y).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,de).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex()},pe={...w,html:m(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,S).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:p,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:m(y).replace(`hr`,_).replace(`heading`,` *#{1,6} *[^
1
+ import{i as e,t}from"./react-4j_0SqET.js";import{t as n}from"./jsx-dev-runtime-B0R0R7SH.js";import{t as r}from"./tab-store-Cc-uKiGz.js";import{t as i}from"./utils-Bmf_8h7Y.js";import{i as a,r as o,t as s}from"./api-client-BNaaEdcl.js";import{g as c,v as l}from"./index-DhXnbgjx.js";function u(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var d=u();function f(e){d=e}var p={exec:()=>null};function m(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(g.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var h=(()=>{try{return!0}catch{return!1}})(),g={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,`i`),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},ee=/^(?:[ \t]*(?:\n|$))+/,te=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,ne=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,_=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,re=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,v=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,ie=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,ae=m(ie).replace(/bull/g,v).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),oe=m(ie).replace(/bull/g,v).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),y=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,se=/^[^\n]+/,b=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ce=m(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,b).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),le=m(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,v).getRegex(),x=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,S=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,ue=m(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,S).replace(`tag`,x).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),C=m(y).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),w={blockquote:m(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,C).getRegex(),code:te,def:ce,fences:ne,heading:re,hr:_,html:ue,lheading:ae,list:le,newline:ee,paragraph:C,table:p,text:se},de=m(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex(),fe={...w,lheading:oe,table:de,paragraph:m(y).replace(`hr`,_).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,de).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,x).getRegex()},pe={...w,html:m(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,S).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:p,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:m(y).replace(`hr`,_).replace(`heading`,` *#{1,6} *[^
2
2
  ]`).replace(`lheading`,ae).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},me=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,he=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,T=/^( {2,}|\\)\n(?!\s*$)/,ge=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,E=/[\p{P}\p{S}]/u,D=/[\s\p{P}\p{S}]/u,O=/[^\s\p{P}\p{S}]/u,_e=m(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,D).getRegex(),k=/(?!~)[\p{P}\p{S}]/u,ve=/(?!~)[\s\p{P}\p{S}]/u,ye=/(?:[^\s\p{P}\p{S}]|~)/u,A=/(?![*_])[\p{P}\p{S}]/u,be=/(?![*_])[\s\p{P}\p{S}]/u,xe=/(?:[^\s\p{P}\p{S}]|[*_])/u,Se=m(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,h?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),j=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Ce=m(j,`u`).replace(/punct/g,E).getRegex(),we=m(j,`u`).replace(/punct/g,k).getRegex(),M=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,Te=m(M,`gu`).replace(/notPunctSpace/g,O).replace(/punctSpace/g,D).replace(/punct/g,E).getRegex(),Ee=m(M,`gu`).replace(/notPunctSpace/g,ye).replace(/punctSpace/g,ve).replace(/punct/g,k).getRegex(),De=m(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,O).replace(/punctSpace/g,D).replace(/punct/g,E).getRegex(),Oe=m(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,A).getRegex(),ke=m(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,xe).replace(/punctSpace/g,be).replace(/punct/g,A).getRegex(),Ae=m(/\\(punct)/,`gu`).replace(/punct/g,E).getRegex(),je=m(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Me=m(S).replace(`(?:-->|$)`,`-->`).getRegex(),Ne=m(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,Me).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),N=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Pe=m(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,N).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),P=m(/^!?\[(label)\]\[(ref)\]/).replace(`label`,N).replace(`ref`,b).getRegex(),F=m(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,b).getRegex(),Fe=m(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,P).replace(`nolink`,F).getRegex(),I=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,L={_backpedal:p,anyPunctuation:Ae,autolink:je,blockSkip:Se,br:T,code:he,del:p,delLDelim:p,delRDelim:p,emStrongLDelim:Ce,emStrongRDelimAst:Te,emStrongRDelimUnd:De,escape:me,link:Pe,nolink:F,punctuation:_e,reflink:P,reflinkSearch:Fe,tag:Ne,text:ge,url:p},Ie={...L,link:m(/^!?\[(label)\]\((.*?)\)/).replace(`label`,N).getRegex(),reflink:m(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,N).getRegex()},R={...L,emStrongRDelimAst:Ee,emStrongLDelim:we,delLDelim:Oe,delRDelim:ke,url:m(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,I).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:m(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,I).getRegex()},Le={...R,br:m(T).replace(`{2,}`,`*`).getRegex(),text:m(R.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},z={normal:w,gfm:fe,pedantic:pe},B={normal:L,gfm:R,breaks:Le,pedantic:Ie},Re={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},V=e=>Re[e];function H(e,t){if(t){if(g.escapeTest.test(e))return e.replace(g.escapeReplace,V)}else if(g.escapeTestNoEncode.test(e))return e.replace(g.escapeReplaceNoEncode,V);return e}function U(e){try{e=encodeURI(e).replace(g.percentDecode,`%`)}catch{return null}return e}function ze(e,t){let n=e.replace(g.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(g.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``);for(;r<n.length;r++)n[r]=n[r].trim().replace(g.slashPipe,`|`);return n}function W(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function Be(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]===`\\`)r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function Ve(e,t=0){let n=t,r=``;for(let t of e)if(t===` `){let e=4-n%4;r+=` `.repeat(e),n+=e}else r+=t,n++;return r}function He(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`);r.state.inLink=!0;let c={type:e[0].charAt(0)===`!`?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:r.inlineTokens(s)};return r.state.inLink=!1,c}function Ue(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
3
3
  `).map(e=>{let t=e.match(n.other.beginningSpace);if(t===null)return e;let[r]=t;return r.length>=i.length?e.slice(i.length):e}).join(`
4
4
  `)}var G=class{options;rules;lexer;constructor(e){this.options=e||d}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:`space`,raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,``);return{type:`code`,raw:t[0],codeBlockStyle:`indented`,text:this.options.pedantic?e:W(e,`
@@ -56,4 +56,4 @@ ${this.parser.parse(e)}</blockquote>
56
56
  ${e}</tr>
57
57
  `}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?`th`:`td`;return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>
58
58
  `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${H(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=U(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+H(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=U(e);if(i===null)return H(n);e=i;let a=`<img src="${e}" alt="${H(n)}"`;return t&&(a+=` title="${H(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:H(e.text)}},J=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},Y=class e{options;renderer;textRenderer;constructor(e){this.options=e||d,this.options.renderer=this.options.renderer||new q,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new J}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},X=class{options;block;constructor(e){this.options=e||d}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?K.lex:K.lexInline}provideParser(){return this.block?Y.parse:Y.parseInline}},Z=new class{defaults=u();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=Y;Renderer=q;TextRenderer=J;Lexer=K;Tokenizer=G;Hooks=X;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new q(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new G(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new X;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];X.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async&&X.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:t[r]=(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return K.lex(e,t??this.defaults)}parser(e,t){return Y.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer():e?K.lex:K.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser():e?Y.parse:Y.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer():e?K.lex:K.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser():e?Y.parse:Y.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
59
- Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+H(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function Q(e,t){return Z.parse(e,t)}Q.options=Q.setOptions=function(e){return Z.setOptions(e),Q.defaults=Z.defaults,f(Q.defaults),Q},Q.getDefaults=u,Q.defaults=d,Q.use=function(...e){return Z.use(...e),Q.defaults=Z.defaults,f(Q.defaults),Q},Q.walkTokens=function(e,t){return Z.walkTokens(e,t)},Q.parseInline=Z.parseInline,Q.Parser=Y,Q.parser=Y.parse,Q.Renderer=q,Q.TextRenderer=J,Q.Lexer=K,Q.lexer=K.lex,Q.Tokenizer=G,Q.Hooks=X,Q.parse=Q,Q.options,Q.setOptions,Q.use,Q.walkTokens,Q.parseInline,Y.parse,K.lex;var $=e(t(),1),We=n(),Ge=/^(\/|[A-Za-z]:[/\\])/;Q.use({gfm:!0,breaks:!0});var Ke=RegExp(`\\.(ts|tsx|js|jsx|mjs|cjs|py|json|md|mdx|yaml|yml|toml|css|scss|less|html|htm|sh|bash|zsh|go|rs|sql|rb|java|kt|swift|c|cpp|h|hpp|cs|vue|svelte|txt|env|cfg|conf|ini|xml|csv|log|dockerfile|makefile|gradle)$`,`i`),qe=/[*?{}\[\]]/;function Je(e){let t=e;return t=t.replace(/<table/g,`<div class="table-scroll-wrapper overflow-x-auto"><table`),t=t.replace(/<\/table>/g,`</table></div>`),t=t.replace(/<a\s+href="(https?:\/\/[^"]+)"/g,`<a href="$1" target="_blank" rel="noopener noreferrer"`),t=t.replace(/<a\s+href="([^"]+)"/g,(e,t)=>/^https?:\/\//.test(t)||qe.test(t)||!Ke.test(t)?e:`<a href="${t}" data-file-path="${t}"`),t=t.split(/(<pre[\s\S]*?<\/pre>)/g).map(e=>e.startsWith(`<pre`)?e:e.replace(/<code>([^<]+)<\/code>/g,(e,t)=>{let n=t.trim();return!n||n.includes(` `)||qe.test(n)||!Ke.test(n)?e:`<code data-file-clickable="${n}" style="cursor:pointer;text-decoration:underline;text-decoration-style:dotted">${t}</code>`})).join(``),t}function Ye({content:e,projectName:t,className:n=``,codeActions:u=!1}){let d=(0,$.useMemo)(()=>{try{return Je(Q.parse(e))}catch{return e}},[e]),f=(0,$.useRef)(null),p=r(e=>e.openTab),m=c(e=>e.tree);return(0,$.useEffect)(()=>{let e=f.current;if(!e)return;let n=t=>{let n=t.target,r=n.closest(`a[data-file-path]`);if(r&&e.contains(r)){t.preventDefault(),c(r.getAttribute(`data-file-path`)??``);return}let i=n.closest(`code[data-file-clickable]`);if(i&&e.contains(i)){c(i.getAttribute(`data-file-clickable`)??``);return}};function r(e,t){let n=[];for(let i of e)i.type===`file`&&i.name===t&&n.push(i.path),i.children&&n.push(...r(i.children,t));return n}function c(e){if(!e)return;let n=/^(\/|[A-Za-z]:[/\\])/.test(e),r=/^(\.\/|\.\.\/)/.test(e),o=i(e);if(n){let n={filePath:e};t&&(n.projectName=t),s.get(`/api/fs/read?path=${encodeURIComponent(e)}`).then(()=>{p({type:`editor`,title:o,metadata:n,projectId:null,closable:!0})}).catch(()=>l(e));return}if(r&&t){let n={filePath:e,projectName:t};s.get(`${a(t)}/files/read?path=${encodeURIComponent(e)}`).then(()=>{p({type:`editor`,title:o,metadata:n,projectId:t,closable:!0})}).catch(()=>d(e));return}d(e)}function d(e){let n=i(e),a=r(m,n);if(a.length===1){let e=a[0];p({type:`editor`,title:n,metadata:{filePath:e,projectName:t},projectId:t??null,closable:!0})}else l(e)}e.addEventListener(`click`,n);let h=[];return e.querySelectorAll(`img`).forEach(e=>{let t=e.getAttribute(`src`)??``;if(!Ge.test(t))return;e.style.opacity=`0.3`,e.style.minHeight=`48px`,e.style.minWidth=`48px`;let n=o();fetch(`/api/fs/raw?path=${encodeURIComponent(t)}`,{headers:n?{Authorization:`Bearer ${n}`}:{}}).then(e=>{if(!e.ok)throw Error(`Failed to load`);return e.blob()}).then(t=>{let n=URL.createObjectURL(t);h.push(n),e.src=n,e.style.opacity=``,e.style.minHeight=``,e.style.minWidth=``,e.style.maxHeight=`400px`,e.style.maxWidth=`100%`,e.style.objectFit=`contain`,e.style.borderRadius=`0.375rem`,e.style.border=`1px solid var(--color-border)`,e.style.cursor=`pointer`,e.onclick=()=>window.open(n,`_blank`)}).catch(()=>{e.style.opacity=`0.5`,e.alt=`[Image not found: ${i(t)}]`})}),u&&e.querySelectorAll(`pre`).forEach(e=>{if(e.querySelector(`.code-actions`))return;let n=e.querySelector(`code`),r=n?.textContent??e.textContent??``,i=n?.className??``,a=/language-(bash|sh|shell|zsh)/.test(i)||!i.includes(`language-`)&&r.startsWith(`$`);e.style.position=`relative`,e.classList.add(`group`);let o=document.createElement(`div`);o.className=`code-actions absolute top-1 right-1 flex gap-1`;let s=document.createElement(`button`);if(s.className=`flex items-center justify-center size-6 rounded bg-surface-elevated/80 hover:bg-surface-elevated text-text-secondary hover:text-text-primary transition-colors border border-border/50`,s.title=`Copy`,s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`,s.addEventListener(`click`,()=>{navigator.clipboard.writeText(r),s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>`,setTimeout(()=>{s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`},2e3)}),o.appendChild(s),a&&t){let e=document.createElement(`button`);e.className=`flex items-center justify-center size-6 rounded bg-surface-elevated/80 hover:bg-surface-elevated text-text-secondary hover:text-text-primary transition-colors border border-border/50`,e.title=`Run in terminal`,e.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"/><line x1="12" y1="19" x2="20" y2="19"/></svg>`,e.addEventListener(`click`,()=>{navigator.clipboard.writeText(r.replace(/^\$\s*/gm,``)),p({type:`terminal`,title:`Terminal`,metadata:{projectName:t},projectId:t,closable:!0})}),o.appendChild(e)}e.appendChild(o)}),()=>{e.removeEventListener(`click`,n),h.forEach(e=>URL.revokeObjectURL(e))}},[d,t,p,u]),(0,We.jsx)(`div`,{ref:f,className:`markdown-content prose-sm ${n}`,dangerouslySetInnerHTML:{__html:d}})}export{Ye as t};
59
+ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+H(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function Q(e,t){return Z.parse(e,t)}Q.options=Q.setOptions=function(e){return Z.setOptions(e),Q.defaults=Z.defaults,f(Q.defaults),Q},Q.getDefaults=u,Q.defaults=d,Q.use=function(...e){return Z.use(...e),Q.defaults=Z.defaults,f(Q.defaults),Q},Q.walkTokens=function(e,t){return Z.walkTokens(e,t)},Q.parseInline=Z.parseInline,Q.Parser=Y,Q.parser=Y.parse,Q.Renderer=q,Q.TextRenderer=J,Q.Lexer=K,Q.lexer=K.lex,Q.Tokenizer=G,Q.Hooks=X,Q.parse=Q,Q.options,Q.setOptions,Q.use,Q.walkTokens,Q.parseInline,Y.parse,K.lex;var $=e(t(),1),We=n(),Ge=`/Users/hienlh/Projects/ppm/src/web/components/shared/markdown-renderer.tsx`,Ke=/^(\/|[A-Za-z]:[/\\])/;Q.use({gfm:!0,breaks:!0});var qe=RegExp(`\\.(ts|tsx|js|jsx|mjs|cjs|py|json|md|mdx|yaml|yml|toml|css|scss|less|html|htm|sh|bash|zsh|go|rs|sql|rb|java|kt|swift|c|cpp|h|hpp|cs|vue|svelte|txt|env|cfg|conf|ini|xml|csv|log|dockerfile|makefile|gradle)$`,`i`),Je=/[*?{}\[\]]/;function Ye(e){let t=e;return t=t.replace(/<table/g,`<div class="table-scroll-wrapper overflow-x-auto"><table`),t=t.replace(/<\/table>/g,`</table></div>`),t=t.replace(/<a\s+href="(https?:\/\/[^"]+)"/g,`<a href="$1" target="_blank" rel="noopener noreferrer"`),t=t.replace(/<a\s+href="([^"]+)"/g,(e,t)=>/^https?:\/\//.test(t)||Je.test(t)||!qe.test(t)?e:`<a href="${t}" data-file-path="${t}"`),t=t.split(/(<pre[\s\S]*?<\/pre>)/g).map(e=>e.startsWith(`<pre`)?e:e.replace(/<code>([^<]+)<\/code>/g,(e,t)=>{let n=t.trim();return!n||n.includes(` `)||Je.test(n)||!qe.test(n)?e:`<code data-file-clickable="${n}" style="cursor:pointer;text-decoration:underline;text-decoration-style:dotted">${t}</code>`})).join(``),t}function Xe({content:e,projectName:t,className:n=``,codeActions:u=!1}){let d=(0,$.useMemo)(()=>{try{return Ye(Q.parse(e))}catch{return e}},[e]),f=(0,$.useRef)(null),p=r(e=>e.openTab),m=c(e=>e.tree);return(0,$.useEffect)(()=>{let e=f.current;if(!e)return;let n=t=>{let n=t.target,r=n.closest(`a[data-file-path]`);if(r&&e.contains(r)){t.preventDefault(),c(r.getAttribute(`data-file-path`)??``);return}let i=n.closest(`code[data-file-clickable]`);if(i&&e.contains(i)){c(i.getAttribute(`data-file-clickable`)??``);return}};function r(e,t){let n=[];for(let i of e)i.type===`file`&&i.name===t&&n.push(i.path),i.children&&n.push(...r(i.children,t));return n}function c(e){if(!e)return;let n=/^(\/|[A-Za-z]:[/\\])/.test(e),r=/^(\.\/|\.\.\/)/.test(e),o=i(e);if(n){let n={filePath:e};t&&(n.projectName=t),s.get(`/api/fs/read?path=${encodeURIComponent(e)}`).then(()=>{p({type:`editor`,title:o,metadata:n,projectId:null,closable:!0})}).catch(()=>l(e));return}if(r&&t){let n={filePath:e,projectName:t};s.get(`${a(t)}/files/read?path=${encodeURIComponent(e)}`).then(()=>{p({type:`editor`,title:o,metadata:n,projectId:t,closable:!0})}).catch(()=>d(e));return}d(e)}function d(e){let n=i(e),a=r(m,n);if(a.length===1){let e=a[0];p({type:`editor`,title:n,metadata:{filePath:e,projectName:t},projectId:t??null,closable:!0})}else l(e)}e.addEventListener(`click`,n);let h=[];return e.querySelectorAll(`img`).forEach(e=>{let t=e.getAttribute(`src`)??``;if(!Ke.test(t))return;e.style.opacity=`0.3`,e.style.minHeight=`48px`,e.style.minWidth=`48px`;let n=o();fetch(`/api/fs/raw?path=${encodeURIComponent(t)}`,{headers:n?{Authorization:`Bearer ${n}`}:{}}).then(e=>{if(!e.ok)throw Error(`Failed to load`);return e.blob()}).then(t=>{let n=URL.createObjectURL(t);h.push(n),e.src=n,e.style.opacity=``,e.style.minHeight=``,e.style.minWidth=``,e.style.maxHeight=`400px`,e.style.maxWidth=`100%`,e.style.objectFit=`contain`,e.style.borderRadius=`0.375rem`,e.style.border=`1px solid var(--color-border)`,e.style.cursor=`pointer`,e.onclick=()=>window.open(n,`_blank`)}).catch(()=>{e.style.opacity=`0.5`,e.alt=`[Image not found: ${i(t)}]`})}),u&&e.querySelectorAll(`pre`).forEach(e=>{if(e.querySelector(`.code-actions`))return;let n=e.querySelector(`code`),r=n?.textContent??e.textContent??``,i=n?.className??``,a=/language-(bash|sh|shell|zsh)/.test(i)||!i.includes(`language-`)&&r.startsWith(`$`);e.style.position=`relative`,e.classList.add(`group`);let o=document.createElement(`div`);o.className=`code-actions absolute top-1 right-1 flex gap-1`;let s=document.createElement(`button`);if(s.className=`flex items-center justify-center size-6 rounded bg-surface-elevated/80 hover:bg-surface-elevated text-text-secondary hover:text-text-primary transition-colors border border-border/50`,s.title=`Copy`,s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`,s.addEventListener(`click`,()=>{navigator.clipboard.writeText(r),s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"/></svg>`,setTimeout(()=>{s.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>`},2e3)}),o.appendChild(s),a&&t){let e=document.createElement(`button`);e.className=`flex items-center justify-center size-6 rounded bg-surface-elevated/80 hover:bg-surface-elevated text-text-secondary hover:text-text-primary transition-colors border border-border/50`,e.title=`Run in terminal`,e.innerHTML=`<svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"/><line x1="12" y1="19" x2="20" y2="19"/></svg>`,e.addEventListener(`click`,()=>{navigator.clipboard.writeText(r.replace(/^\$\s*/gm,``)),p({type:`terminal`,title:`Terminal`,metadata:{projectName:t},projectId:t,closable:!0})}),o.appendChild(e)}e.appendChild(o)}),()=>{e.removeEventListener(`click`,n),h.forEach(e=>URL.revokeObjectURL(e))}},[d,t,p,u]),(0,We.jsxDEV)(`div`,{ref:f,className:`markdown-content prose-sm ${n}`,dangerouslySetInnerHTML:{__html:d}},void 0,!1,{fileName:Ge,lineNumber:269,columnNumber:5},this)}export{Xe as t};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"./react-4j_0SqET.js";import{t as n}from"./jsx-dev-runtime-B0R0R7SH.js";import{a as r,c as i,i as a,o,r as s,s as c,t as l}from"./dist-DfBZTiXd.js";import{t as u}from"./table-CSrbr8mU.js";import"./jsx-runtime-LVf5-VFx.js";import{t as d}from"./api-client-BNaaEdcl.js";import{B as f,K as p,M as m,O as h,W as g,q as _}from"./index-DhXnbgjx.js";var v=e(t(),1),y=`/api/postgres`;function b(e){let[t,n]=(0,v.useState)(``),[r,i]=(0,v.useState)(!1),a=e?`/api/db/connections/${e}`:null,[o,s]=(0,v.useState)([]),[c,l]=(0,v.useState)(null),[u,f]=(0,v.useState)(`public`),[p,m]=(0,v.useState)(null),[h,g]=(0,v.useState)([]),[_,b]=(0,v.useState)(!1),[x,S]=(0,v.useState)(null),[C,w]=(0,v.useState)(1),[T,E]=(0,v.useState)(null),[D,O]=(0,v.useState)(null),[k,A]=(0,v.useState)(!1),j=(0,v.useCallback)(async e=>{b(!0),S(null);try{let t=await d.post(`${y}/test`,{connectionString:e});if(!t.ok){S(t.error??`Connection failed`);return}n(e),i(!0);let r=await d.post(`${y}/tables`,{connectionString:e});s(r),r.length>0&&(l(r[0].name),f(r[0].schema))}catch(e){S(e.message)}finally{b(!1)}},[]),M=(0,v.useCallback)(async()=>{if(a){b(!0);try{s(await d.get(`${a}/tables?cached=1`))}catch(e){S(e.message)}finally{b(!1)}return}if(t){b(!0);try{s(await d.post(`${y}/tables`,{connectionString:t}))}catch(e){S(e.message)}finally{b(!1)}}},[a,t,c]);(0,v.useEffect)(()=>{a&&(i(!0),M())},[a]);let N=(0,v.useCallback)(async(e,n,r)=>{let i=e??c,o=n??u;if(i){b(!0);try{if(a){let[e,t]=await Promise.all([d.get(`${a}/data?table=${encodeURIComponent(i)}&schema=${o}&page=${r??C}&limit=100`),d.get(`${a}/schema?table=${encodeURIComponent(i)}&schema=${o}`)]);m(e),g(t)}else{if(!t)return;let[e,n]=await Promise.all([d.post(`${y}/data`,{connectionString:t,table:i,schema:o,page:r??C,limit:100}),d.post(`${y}/schema`,{connectionString:t,table:i,schema:o})]);m(e),g(n)}}catch(e){S(e.message)}finally{b(!1)}}},[a,t,c,u,C]);return{connectionString:t,connected:r,connect:j,tables:o,selectedTable:c,selectTable:(0,v.useCallback)((e,t=`public`)=>{l(e),f(t),w(1),E(null),N(e,t,1)},[N]),tableData:p,schema:h,loading:_,error:x,page:C,setPage:(0,v.useCallback)(e=>{w(e),N(void 0,void 0,e)},[N]),queryResult:T,queryError:D,queryLoading:k,executeQuery:(0,v.useCallback)(async e=>{if(!(!a&&!t)){A(!0),O(null);try{let n=a?await d.post(`${a}/query`,{sql:e}):await d.post(`${y}/query`,{connectionString:t,sql:e});E(n),n.changeType===`modify`&&N()}catch(e){O(e.message)}finally{A(!1)}}},[a,t,N]),updateCell:(0,v.useCallback)(async(e,n,r,i)=>{if(c)try{if(a)await d.put(`${a}/cell`,{table:c,schema:u,pkColumn:e,pkValue:n,column:r,value:i});else{if(!t)return;await d.post(`${y}/cell`,{connectionString:t,table:c,schema:u,pkColumn:e,pkValue:n,column:r,value:i})}N()}catch(e){S(e.message)}},[a,t,c,u,N]),refreshTables:M,refreshData:N}}var x=n(),S=`/Users/hienlh/Projects/ppm/src/web/components/postgres/postgres-viewer.tsx`;function C({metadata:e}){let t=e?.connectionString??``,n=e?.connectionId,r=b(n);return r.connected?(0,x.jsxDEV)(T,{pg:r,initialTable:e?.tableName,hideTableList:!!n,connectionName:e?.connectionName},void 0,!1,{fileName:S,lineNumber:18,columnNumber:10},this):(0,x.jsxDEV)(w,{initialValue:t,onConnect:r.connect,loading:r.loading,error:r.error},void 0,!1,{fileName:S,lineNumber:16,columnNumber:29},this)}function w({initialValue:e,onConnect:t,loading:n,error:r}){let[i,a]=(0,v.useState)(e);return(0,x.jsxDEV)(`div`,{className:`flex items-center justify-center h-full`,children:(0,x.jsxDEV)(`div`,{className:`flex flex-col gap-3 w-full max-w-lg px-4`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-center gap-2 text-sm font-medium`,children:[(0,x.jsxDEV)(f,{className:`size-4`},void 0,!1,{fileName:S,lineNumber:29,columnNumber:70},this),` Connect to PostgreSQL`]},void 0,!0,{fileName:S,lineNumber:29,columnNumber:9},this),(0,x.jsxDEV)(`input`,{className:`w-full px-3 py-2 rounded border border-border bg-background text-sm font-mono outline-none focus:border-primary`,placeholder:`postgresql://user:pass@host:5432/db`,value:i,onChange:e=>a(e.target.value),onKeyDown:e=>{e.key===`Enter`&&i.trim()&&t(i.trim())}},void 0,!1,{fileName:S,lineNumber:30,columnNumber:9},this),r&&(0,x.jsxDEV)(`p`,{className:`text-xs text-destructive flex items-center gap-1`,children:[(0,x.jsxDEV)(g,{className:`size-3`},void 0,!1,{fileName:S,lineNumber:36,columnNumber:83},this),r]},void 0,!0,{fileName:S,lineNumber:36,columnNumber:19},this),(0,x.jsxDEV)(`button`,{type:`button`,disabled:n||!i.trim(),onClick:()=>t(i.trim()),className:`px-4 py-2 rounded bg-primary text-primary-foreground text-sm hover:bg-primary/90 disabled:opacity-50 transition-colors`,children:n?(0,x.jsxDEV)(m,{className:`size-4 animate-spin mx-auto`},void 0,!1,{fileName:S,lineNumber:39,columnNumber:22},this):`Connect`},void 0,!1,{fileName:S,lineNumber:37,columnNumber:9},this)]},void 0,!0,{fileName:S,lineNumber:28,columnNumber:7},this)},void 0,!1,{fileName:S,lineNumber:27,columnNumber:5},this)}function T({pg:e,initialTable:t,hideTableList:n,connectionName:r}){let[i,a]=(0,v.useState)(!1),o=(0,v.useRef)(!1);return(0,v.useEffect)(()=>{if(!(!t||o.current)){if(n&&e.connected)o.current=!0,e.selectTable(t);else if(e.tables.length>0){let n=e.tables.find(e=>e.name===t);n&&(o.current=!0,e.selectTable(n.name,n.schema))}}},[t,e.connected,e.tables]),(0,x.jsxDEV)(`div`,{className:`flex h-full w-full overflow-hidden`,children:[!n&&(0,x.jsxDEV)(`div`,{className:`w-48 shrink-0 flex flex-col bg-background overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,x.jsxDEV)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Tables`},void 0,!1,{fileName:S,lineNumber:69,columnNumber:13},this),(0,x.jsxDEV)(`button`,{type:`button`,onClick:e.refreshTables,className:`text-muted-foreground hover:text-foreground transition-colors`,title:`Refresh`,children:(0,x.jsxDEV)(h,{className:`size-3`},void 0,!1,{fileName:S,lineNumber:71,columnNumber:15},this)},void 0,!1,{fileName:S,lineNumber:70,columnNumber:13},this)]},void 0,!0,{fileName:S,lineNumber:68,columnNumber:11},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:[e.tables.map(t=>(0,x.jsxDEV)(`button`,{type:`button`,onClick:()=>e.selectTable(t.name,t.schema),className:`w-full flex items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors ${e.selectedTable===t.name?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`}`,children:[(0,x.jsxDEV)(u,{className:`size-3 shrink-0`},void 0,!1,{fileName:S,lineNumber:79,columnNumber:17},this),(0,x.jsxDEV)(`span`,{className:`truncate flex-1`,children:[t.schema===`public`?``:`${t.schema}.`,t.name]},void 0,!0,{fileName:S,lineNumber:80,columnNumber:17},this),(0,x.jsxDEV)(`span`,{className:`text-[10px] opacity-60`,children:t.rowCount},void 0,!1,{fileName:S,lineNumber:81,columnNumber:17},this)]},`${t.schema}.${t.name}`,!0,{fileName:S,lineNumber:76,columnNumber:15},this)),e.tables.length===0&&(0,x.jsxDEV)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground text-center`,children:`No tables found`},void 0,!1,{fileName:S,lineNumber:84,columnNumber:40},this)]},void 0,!0,{fileName:S,lineNumber:74,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:67,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex-1 flex flex-col overflow-hidden ${n?``:`border-l border-border`}`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,x.jsxDEV)(f,{className:`size-3.5 text-muted-foreground`},void 0,!1,{fileName:S,lineNumber:92,columnNumber:11},this),(0,x.jsxDEV)(`span`,{className:`text-xs text-muted-foreground truncate`,children:r??`PostgreSQL`},void 0,!1,{fileName:S,lineNumber:93,columnNumber:11},this),e.selectedTable&&(0,x.jsxDEV)(`span`,{className:`text-xs text-muted-foreground`,children:[`/ `,e.selectedTable]},void 0,!0,{fileName:S,lineNumber:94,columnNumber:32},this),(0,x.jsxDEV)(`div`,{className:`ml-auto`,children:(0,x.jsxDEV)(`button`,{type:`button`,onClick:()=>a(e=>!e),className:`px-2 py-1 rounded text-xs transition-colors ${i?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:`SQL`},void 0,!1,{fileName:S,lineNumber:96,columnNumber:13},this)},void 0,!1,{fileName:S,lineNumber:95,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:91,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-hidden ${i?`max-h-[60%]`:``}`,children:(0,x.jsxDEV)(E,{tableData:e.tableData,schema:e.schema,loading:e.loading,page:e.page,onPageChange:e.setPage,onCellUpdate:e.updateCell},void 0,!1,{fileName:S,lineNumber:104,columnNumber:11},this)},void 0,!1,{fileName:S,lineNumber:103,columnNumber:9},this),i&&(0,x.jsxDEV)(`div`,{className:`border-t border-border h-[40%] shrink-0`,children:(0,x.jsxDEV)(D,{onExecute:e.executeQuery,result:e.queryResult,error:e.queryError,loading:e.queryLoading},void 0,!1,{fileName:S,lineNumber:110,columnNumber:13},this)},void 0,!1,{fileName:S,lineNumber:109,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:90,columnNumber:7},this)]},void 0,!0,{fileName:S,lineNumber:64,columnNumber:5},this)}function E({tableData:e,schema:t,loading:n,page:i,onPageChange:a,onCellUpdate:s}){let[l,u]=(0,v.useState)(null),[d,f]=(0,v.useState)(``),h=(0,v.useMemo)(()=>t.find(e=>e.pk)?.name??null,[t]),g=(0,v.useCallback)((e,t,n)=>{u({rowIdx:e,col:t}),f(n==null?``:String(n))},[]),y=(0,v.useCallback)(()=>{if(!l||!e||!h)return;let t=e.rows[l.rowIdx];if(!t)return;let n=t[l.col];String(n??``)!==d&&s(h,t[h],l.col,d===``?null:d),u(null)},[l,d,e,h,s]),b=(0,v.useCallback)(()=>u(null),[]),C=(0,v.useMemo)(()=>(e?.columns??[]).map(e=>({id:e,accessorFn:t=>t[e],header:()=>(0,x.jsxDEV)(`span`,{className:t.find(t=>t.name===e)?.pk?`font-bold`:``,children:e},void 0,!1,{fileName:S,lineNumber:152,columnNumber:21},this),cell:({row:t,getValue:n})=>{let r=l?.rowIdx===t.index&&l?.col===e,i=n();return r?(0,x.jsxDEV)(`input`,{autoFocus:!0,className:`w-full bg-transparent border border-primary/50 rounded px-1 py-0 text-xs outline-none`,value:d,onChange:e=>f(e.target.value),onBlur:y,onKeyDown:e=>{e.key===`Enter`&&y(),e.key===`Escape`&&b()}},void 0,!1,{fileName:S,lineNumber:158,columnNumber:13},this):(0,x.jsxDEV)(`span`,{className:`cursor-pointer truncate block ${i==null?`text-muted-foreground/40 italic`:``}`,onDoubleClick:()=>h&&g(t.index,e,i),title:i==null?`NULL`:String(i),children:i==null?`NULL`:String(i)},void 0,!1,{fileName:S,lineNumber:164,columnNumber:11},this)}})),[e?.columns,t,l,d,y,b,g,h]),w=o({data:e?.rows??[],columns:C,getCoreRowModel:c()});if(!e)return(0,x.jsxDEV)(`div`,{className:`flex items-center justify-center h-full text-xs text-muted-foreground`,children:n?(0,x.jsxDEV)(m,{className:`size-4 animate-spin`},void 0,!1,{fileName:S,lineNumber:178,columnNumber:20},this):`Select a table`},void 0,!1,{fileName:S,lineNumber:177,columnNumber:7},this);let T=Math.ceil(e.total/e.limit)||1;return(0,x.jsxDEV)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-auto`,children:(0,x.jsxDEV)(`table`,{className:`w-full text-xs border-collapse`,children:[(0,x.jsxDEV)(`thead`,{className:`sticky top-0 z-10 bg-muted`,children:w.getHeaderGroups().map(e=>(0,x.jsxDEV)(`tr`,{children:e.headers.map(e=>(0,x.jsxDEV)(`th`,{className:`px-2 py-1.5 text-left font-medium text-muted-foreground border-b border-border whitespace-nowrap`,children:r(e.column.columnDef.header,e.getContext())},e.id,!1,{fileName:S,lineNumber:193,columnNumber:19},this))},e.id,!1,{fileName:S,lineNumber:191,columnNumber:15},this))},void 0,!1,{fileName:S,lineNumber:189,columnNumber:11},this),(0,x.jsxDEV)(`tbody`,{children:[w.getRowModel().rows.map(e=>(0,x.jsxDEV)(`tr`,{className:`hover:bg-muted/30 border-b border-border/50`,children:e.getVisibleCells().map(e=>(0,x.jsxDEV)(`td`,{className:`px-2 py-1 max-w-[300px]`,children:r(e.column.columnDef.cell,e.getContext())},e.id,!1,{fileName:S,lineNumber:204,columnNumber:19},this))},e.id,!1,{fileName:S,lineNumber:202,columnNumber:15},this)),e.rows.length===0&&(0,x.jsxDEV)(`tr`,{children:(0,x.jsxDEV)(`td`,{colSpan:e.columns.length,className:`px-2 py-8 text-center text-muted-foreground`,children:`No data`},void 0,!1,{fileName:S,lineNumber:211,columnNumber:19},this)},void 0,!1,{fileName:S,lineNumber:211,columnNumber:15},this)]},void 0,!0,{fileName:S,lineNumber:200,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:188,columnNumber:9},this)},void 0,!1,{fileName:S,lineNumber:187,columnNumber:7},this),(0,x.jsxDEV)(`div`,{className:`flex items-center justify-between px-3 py-1.5 border-t border-border bg-background shrink-0 text-xs text-muted-foreground`,children:[(0,x.jsxDEV)(`span`,{children:[e.total.toLocaleString(),` rows`]},void 0,!0,{fileName:S,lineNumber:217,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsxDEV)(`button`,{type:`button`,disabled:i<=1,onClick:()=>a(i-1),className:`p-0.5 rounded hover:bg-muted disabled:opacity-30`,children:(0,x.jsxDEV)(_,{className:`size-3.5`},void 0,!1,{fileName:S,lineNumber:220,columnNumber:13},this)},void 0,!1,{fileName:S,lineNumber:219,columnNumber:11},this),(0,x.jsxDEV)(`span`,{children:[i,` / `,T]},void 0,!0,{fileName:S,lineNumber:222,columnNumber:11},this),(0,x.jsxDEV)(`button`,{type:`button`,disabled:i>=T,onClick:()=>a(i+1),className:`p-0.5 rounded hover:bg-muted disabled:opacity-30`,children:(0,x.jsxDEV)(p,{className:`size-3.5`},void 0,!1,{fileName:S,lineNumber:224,columnNumber:13},this)},void 0,!1,{fileName:S,lineNumber:223,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:218,columnNumber:9},this)]},void 0,!0,{fileName:S,lineNumber:216,columnNumber:7},this)]},void 0,!0,{fileName:S,lineNumber:186,columnNumber:5},this)}function D({onExecute:e,result:t,error:n,loading:r}){let[o,c]=(0,v.useState)(`SELECT * FROM `),u=(0,v.useCallback)(()=>{let t=o.trim();t&&e(t)},[o,e]);return(0,x.jsxDEV)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-start gap-1 border-b border-border bg-background`,onKeyDown:(0,v.useCallback)(e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),u())},[u]),children:[(0,x.jsxDEV)(`div`,{className:`flex-1 max-h-[120px] overflow-auto`,children:(0,x.jsxDEV)(a,{value:o,onChange:c,extensions:[s({dialect:l})],basicSetup:{lineNumbers:!1,foldGutter:!1,highlightActiveLine:!1},className:`text-xs [&_.cm-editor]:!outline-none [&_.cm-scroller]:!overflow-auto`},void 0,!1,{fileName:S,lineNumber:247,columnNumber:11},this)},void 0,!1,{fileName:S,lineNumber:246,columnNumber:9},this),(0,x.jsxDEV)(`button`,{type:`button`,onClick:u,disabled:r,title:`Execute (Cmd+Enter)`,className:`shrink-0 m-1 p-1.5 rounded bg-primary text-primary-foreground hover:bg-primary/90 disabled:opacity-50 transition-colors`,children:r?(0,x.jsxDEV)(m,{className:`size-3.5 animate-spin`},void 0,!1,{fileName:S,lineNumber:253,columnNumber:22},this):(0,x.jsxDEV)(i,{className:`size-3.5`},void 0,!1,{fileName:S,lineNumber:253,columnNumber:70},this)},void 0,!1,{fileName:S,lineNumber:251,columnNumber:9},this)]},void 0,!0,{fileName:S,lineNumber:245,columnNumber:7},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-auto text-xs`,children:[n&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-destructive bg-destructive/5`,children:n},void 0,!1,{fileName:S,lineNumber:257,columnNumber:19},this),t?.changeType===`modify`&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-green-500`,children:[`Query executed. `,t.rowsAffected,` row(s) affected.`]},void 0,!0,{fileName:S,lineNumber:258,columnNumber:45},this),t?.changeType===`select`&&t.rows.length>0&&(0,x.jsxDEV)(`table`,{className:`w-full border-collapse`,children:[(0,x.jsxDEV)(`thead`,{className:`sticky top-0 bg-muted`,children:(0,x.jsxDEV)(`tr`,{children:t.columns.map(e=>(0,x.jsxDEV)(`th`,{className:`px-2 py-1 text-left font-medium text-muted-foreground border-b border-border whitespace-nowrap`,children:e},e,!1,{fileName:S,lineNumber:262,columnNumber:46},this))},void 0,!1,{fileName:S,lineNumber:262,columnNumber:15},this)},void 0,!1,{fileName:S,lineNumber:261,columnNumber:13},this),(0,x.jsxDEV)(`tbody`,{children:t.rows.map((e,n)=>(0,x.jsxDEV)(`tr`,{className:`hover:bg-muted/30 border-b border-border/50`,children:t.columns.map(t=>(0,x.jsxDEV)(`td`,{className:`px-2 py-1 max-w-[300px] truncate`,title:e[t]==null?`NULL`:String(e[t]),children:e[t]==null?(0,x.jsxDEV)(`span`,{className:`text-muted-foreground/40 italic`,children:`NULL`},void 0,!1,{fileName:S,lineNumber:269,columnNumber:41},this):String(e[t])},t,!1,{fileName:S,lineNumber:268,columnNumber:21},this))},n,!1,{fileName:S,lineNumber:266,columnNumber:17},this))},void 0,!1,{fileName:S,lineNumber:264,columnNumber:13},this)]},void 0,!0,{fileName:S,lineNumber:260,columnNumber:11},this),t?.changeType===`select`&&t.rows.length===0&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-muted-foreground`,children:`No results`},void 0,!1,{fileName:S,lineNumber:277,columnNumber:73},this)]},void 0,!0,{fileName:S,lineNumber:256,columnNumber:7},this)]},void 0,!0,{fileName:S,lineNumber:244,columnNumber:5},this)}export{C as PostgresViewer};
@@ -0,0 +1,13 @@
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),u=o(((e,t)=>{(function(){function n(e,t){Object.defineProperty(a.prototype,e,{get:function(){console.warn(`%s(...) is deprecated in plain JavaScript React classes. %s`,t[0],t[1])}})}function r(e){return typeof e!=`object`||!e?null:(e=L&&e[L]||e[`@@iterator`],typeof e==`function`?e:null)}function i(e,t){e=(e=e.constructor)&&(e.displayName||e.name)||`ReactClass`;var n=e+`.`+t;R[n]||(console.error("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,e),R[n]=!0)}function a(e,t,n){this.props=e,this.context=t,this.refs=V,this.updater=n||z}function o(){}function s(e,t,n){this.props=e,this.context=t,this.refs=V,this.updater=n||z}function c(){}function l(e){return``+e}function u(e){try{l(e);var t=!1}catch{t=!0}if(t){t=console;var n=t.error,r=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return n.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,r),l(e)}}function d(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===fe?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case D:return`Fragment`;case k:return`Profiler`;case O:return`StrictMode`;case N:return`Suspense`;case ue:return`SuspenseList`;case I:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case le:return`Portal`;case j:return e.displayName||`Context`;case A:return(e._context.displayName||`Context`)+`.Consumer`;case M:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case P:return t=e.displayName||null,t===null?d(e.type)||`Memo`:t;case F:t=e._payload,e=e._init;try{return d(e(t))}catch{}}return null}function f(e){if(e===D)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===F)return`<...>`;try{var t=d(e);return t?`<`+t+`>`:`<...>`}catch{return`<...>`}}function ee(){var e=U.A;return e===null?null:e.getOwner()}function te(){return Error(`react-stack-top-frame`)}function p(e){if(W.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function ne(e,t){function n(){K||(K=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,`key`,{get:n,configurable:!0})}function re(){var e=d(this.type);return pe[e]||(pe[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function m(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:E,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,`ref`,{enumerable:!1,value:null}):Object.defineProperty(e,`ref`,{enumerable:!1,get:re}),e._store={},Object.defineProperty(e._store,`validated`,{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,`_debugInfo`,{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,`_debugStack`,{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,`_debugTask`,{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function ie(e,t){return t=m(e.type,t,e.props,e._owner,e._debugStack,e._debugTask),e._store&&(t._store.validated=e._store.validated),t}function ae(e){h(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===F&&(e._payload.status===`fulfilled`?h(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function h(e){return typeof e==`object`&&!!e&&e.$$typeof===E}function oe(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}function g(e,t){return typeof e==`object`&&e&&e.key!=null?(u(e.key),oe(``+e.key)):t.toString(36)}function se(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(c,c):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function _(e,t,n,i,a){var o=typeof e;(o===`undefined`||o===`boolean`)&&(e=null);var s=!1;if(e===null)s=!0;else switch(o){case`bigint`:case`string`:case`number`:s=!0;break;case`object`:switch(e.$$typeof){case E:case le:s=!0;break;case F:return s=e._init,_(s(e._payload),t,n,i,a)}}if(s){s=e,a=a(s);var c=i===``?`.`+g(s,0):i;return de(a)?(n=``,c!=null&&(n=c.replace(_e,`$&/`)+`/`),_(a,t,n,``,function(e){return e})):a!=null&&(h(a)&&(a.key!=null&&(s&&s.key===a.key||u(a.key)),n=ie(a,n+(a.key==null||s&&s.key===a.key?``:(``+a.key).replace(_e,`$&/`)+`/`)+c),i!==``&&s!=null&&h(s)&&s.key==null&&s._store&&!s._store.validated&&(n._store.validated=2),a=n),t.push(a)),1}if(s=0,c=i===``?`.`:i+`:`,de(e))for(var l=0;l<e.length;l++)i=e[l],o=c+g(i,l),s+=_(i,t,n,o,a);else if(l=r(e),typeof l==`function`)for(l===e.entries&&(ge||console.warn(`Using Maps as children is not supported. Use an array of keyed ReactElements instead.`),ge=!0),e=l.call(e),l=0;!(i=e.next()).done;)i=i.value,o=c+g(i,l++),s+=_(i,t,n,o,a);else if(o===`object`){if(typeof e.then==`function`)return _(se(e),t,n,i,a);throw t=String(e),Error(`Objects are not valid as a React child (found: `+(t===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:t)+`). If you meant to render a collection of children, use an array instead.`)}return s}function v(e,t,n){if(e==null)return e;var r=[],i=0;return _(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function ce(e){if(e._status===-1){var t=e._ioInfo;t!=null&&(t.start=t.end=performance.now()),t=e._result;var n=t();if(n.then(function(t){if(e._status===0||e._status===-1){e._status=1,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`fulfilled`,n.value=t)}},function(t){if(e._status===0||e._status===-1){e._status=2,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`rejected`,n.reason=t)}}),t=e._ioInfo,t!=null){t.value=n;var r=n.displayName;typeof r==`string`&&(t.name=r)}e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return t=e._result,t===void 0&&console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
2
+
3
+ Your code should look like:
4
+ const MyComponent = lazy(() => import('./MyComponent'))
5
+
6
+ Did you accidentally put curly braces around the import?`,t),`default`in t||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
7
+
8
+ Your code should look like:
9
+ const MyComponent = lazy(() => import('./MyComponent'))`,t),t.default;throw e._result}function y(){var e=U.H;return e===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
10
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
11
+ 2. You might be breaking the Rules of Hooks
12
+ 3. You might have more than one copy of React in the same app
13
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}function b(){U.asyncTransitions--}function x(e){if(Y===null)try{var n=(`require`+Math.random()).slice(0,7);Y=(t&&t[n]).call(t,`timers`).setImmediate}catch{Y=function(e){!1===J&&(J=!0,typeof MessageChannel>`u`&&console.error(`This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.`));var t=new MessageChannel;t.port1.onmessage=e,t.port2.postMessage(void 0)}}return Y(e)}function S(e){return 1<e.length&&typeof AggregateError==`function`?AggregateError(e):e[0]}function C(e,t){t!==X-1&&console.error(`You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. `),X=t}function w(e,t,n){var r=U.actQueue;if(r!==null)if(r.length!==0)try{T(r),x(function(){return w(e,t,n)});return}catch(e){U.thrownErrors.push(e)}else U.actQueue=null;0<U.thrownErrors.length?(r=S(U.thrownErrors),U.thrownErrors.length=0,n(r)):t(e)}function T(e){if(!Q){Q=!0;var t=0;try{for(;t<e.length;t++){var n=e[t];do{U.didUsePromise=!1;var r=n(!1);if(r!==null){if(U.didUsePromise){e[t]=n,e.splice(0,t);return}n=r}else break}while(1)}e.length=0}catch(n){e.splice(0,t+1),U.thrownErrors.push(n)}finally{Q=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var E=Symbol.for(`react.transitional.element`),le=Symbol.for(`react.portal`),D=Symbol.for(`react.fragment`),O=Symbol.for(`react.strict_mode`),k=Symbol.for(`react.profiler`),A=Symbol.for(`react.consumer`),j=Symbol.for(`react.context`),M=Symbol.for(`react.forward_ref`),N=Symbol.for(`react.suspense`),ue=Symbol.for(`react.suspense_list`),P=Symbol.for(`react.memo`),F=Symbol.for(`react.lazy`),I=Symbol.for(`react.activity`),L=Symbol.iterator,R={},z={isMounted:function(){return!1},enqueueForceUpdate:function(e){i(e,`forceUpdate`)},enqueueReplaceState:function(e){i(e,`replaceState`)},enqueueSetState:function(e){i(e,`setState`)}},B=Object.assign,V={};Object.freeze(V),a.prototype.isReactComponent={},a.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};var H={isMounted:[`isMounted`,`Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.`],replaceState:[`replaceState`,`Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).`]};for($ in H)H.hasOwnProperty($)&&n($,H[$]);o.prototype=a.prototype,H=s.prototype=new o,H.constructor=s,B(H,a.prototype),H.isPureReactComponent=!0;var de=Array.isArray,fe=Symbol.for(`react.client.reference`),U={H:null,A:null,T:null,S:null,actQueue:null,asyncTransitions:0,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},W=Object.prototype.hasOwnProperty,G=console.createTask?console.createTask:function(){return null};H={react_stack_bottom_frame:function(e){return e()}};var K,q,pe={},me=H.react_stack_bottom_frame.bind(H,te)(),he=G(f(te)),ge=!1,_e=/\/+/g,ve=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},J=!1,Y=null,X=0,Z=!1,Q=!1,ye=typeof queueMicrotask==`function`?function(e){queueMicrotask(function(){return queueMicrotask(e)})}:x;H=Object.freeze({__proto__:null,c:function(e){return y().useMemoCache(e)}});var $={map:v,forEach:function(e,t,n){v(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return v(e,function(){t++}),t},toArray:function(e){return v(e,function(e){return e})||[]},only:function(e){if(!h(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=I,e.Children=$,e.Component=a,e.Fragment=D,e.Profiler=k,e.PureComponent=s,e.StrictMode=O,e.Suspense=N,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=U,e.__COMPILER_RUNTIME=H,e.act=function(e){var t=U.actQueue,n=X;X++;var r=U.actQueue=t===null?[]:t,i=!1;try{var a=e()}catch(e){U.thrownErrors.push(e)}if(0<U.thrownErrors.length)throw C(t,n),e=S(U.thrownErrors),U.thrownErrors.length=0,e;if(typeof a==`object`&&a&&typeof a.then==`function`){var o=a;return ye(function(){i||Z||(Z=!0,console.error(`You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);`))}),{then:function(e,a){i=!0,o.then(function(i){if(C(t,n),n===0){try{T(r),x(function(){return w(i,e,a)})}catch(e){U.thrownErrors.push(e)}if(0<U.thrownErrors.length){var o=S(U.thrownErrors);U.thrownErrors.length=0,a(o)}}else e(i)},function(e){C(t,n),0<U.thrownErrors.length?(e=S(U.thrownErrors),U.thrownErrors.length=0,a(e)):a(e)})}}}var s=a;if(C(t,n),n===0&&(T(r),r.length!==0&&ye(function(){i||Z||(Z=!0,console.error("A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\n\nawait act(() => ...)"))}),U.actQueue=null),0<U.thrownErrors.length)throw e=S(U.thrownErrors),U.thrownErrors.length=0,e;return{then:function(e,t){i=!0,n===0?(U.actQueue=r,x(function(){return w(s,e,t)})):e(s)}}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.captureOwnerStack=function(){var e=U.getCurrentStack;return e===null?null:e()},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=B({},e.props),i=e.key,a=e._owner;if(t!=null){var o;a:{if(W.call(t,`ref`)&&(o=Object.getOwnPropertyDescriptor(t,`ref`).get)&&o.isReactWarning){o=!1;break a}o=t.ref!==void 0}for(s in o&&(a=ee()),p(t)&&(u(t.key),i=``+t.key),t)!W.call(t,s)||s===`key`||s===`__self`||s===`__source`||s===`ref`&&t.ref===void 0||(r[s]=t[s])}var s=arguments.length-2;if(s===1)r.children=n;else if(1<s){o=Array(s);for(var c=0;c<s;c++)o[c]=arguments[c+2];r.children=o}for(r=m(e.type,i,r,a,e._debugStack,e._debugTask),i=2;i<arguments.length;i++)ae(arguments[i]);return r},e.createContext=function(e){return e={$$typeof:j,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:A,_context:e},e._currentRenderer=null,e._currentRenderer2=null,e},e.createElement=function(e,t,n){for(var r=2;r<arguments.length;r++)ae(arguments[r]);r={};var i=null;if(t!=null)for(c in q||!(`__self`in t)||`key`in t||(q=!0,console.warn(`Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform`)),p(t)&&(u(t.key),i=``+t.key),t)W.call(t,c)&&c!==`key`&&c!==`__self`&&c!==`__source`&&(r[c]=t[c]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];Object.freeze&&Object.freeze(o),r.children=o}if(e&&e.defaultProps)for(c in a=e.defaultProps,a)r[c]===void 0&&(r[c]=a[c]);i&&ne(r,typeof e==`function`?e.displayName||e.name||`Unknown`:e);var c=1e4>U.recentlyCreatedOwnerStacks++;return m(e,i,r,ee(),c?Error(`react-stack-top-frame`):me,c?G(f(e)):he)},e.createRef=function(){var e={current:null};return Object.seal(e),e},e.forwardRef=function(e){e!=null&&e.$$typeof===P?console.error("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof e==`function`?e.length!==0&&e.length!==2&&console.error(`forwardRef render functions accept exactly two parameters: props and ref. %s`,e.length===1?`Did you forget to use the ref parameter?`:`Any additional parameter will be undefined.`):console.error(`forwardRef requires a render function but was given %s.`,e===null?`null`:typeof e),e!=null&&e.defaultProps!=null&&console.error(`forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?`);var t={$$typeof:M,render:e},n;return Object.defineProperty(t,`displayName`,{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,`name`,{value:t}),e.displayName=t)}}),t},e.isValidElement=h,e.lazy=function(e){e={_status:-1,_result:e};var t={$$typeof:F,_payload:e,_init:ce},n={name:`lazy`,start:-1,end:-1,value:null,owner:null,debugStack:Error(`react-stack-top-frame`),debugTask:console.createTask?console.createTask(`lazy()`):null};return e._ioInfo=n,t._debugInfo=[{awaited:n}],t},e.memo=function(e,t){e??console.error(`memo: The first argument must be a component. Instead received: %s`,e===null?`null`:typeof e),t={$$typeof:P,type:e,compare:t===void 0?null:t};var n;return Object.defineProperty(t,`displayName`,{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,`name`,{value:t}),e.displayName=t)}}),t},e.startTransition=function(e){var t=U.T,n={};n._updatedFibers=new Set,U.T=n;try{var r=e(),i=U.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&(U.asyncTransitions++,r.then(b,b),r.then(c,ve))}catch(e){ve(e)}finally{t===null&&n._updatedFibers&&(e=n._updatedFibers.size,n._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`)),t!==null&&n.types!==null&&(t.types!==null&&t.types!==n.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),t.types=n.types),U.T=t}},e.unstable_useCacheRefresh=function(){return y().useCacheRefresh()},e.use=function(e){return y().use(e)},e.useActionState=function(e,t,n){return y().useActionState(e,t,n)},e.useCallback=function(e,t){return y().useCallback(e,t)},e.useContext=function(e){var t=y();return e.$$typeof===A&&console.error(`Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?`),t.useContext(e)},e.useDebugValue=function(e,t){return y().useDebugValue(e,t)},e.useDeferredValue=function(e,t){return y().useDeferredValue(e,t)},e.useEffect=function(e,t){return e??console.warn(`React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?`),y().useEffect(e,t)},e.useEffectEvent=function(e){return y().useEffectEvent(e)},e.useId=function(){return y().useId()},e.useImperativeHandle=function(e,t,n){return y().useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return e??console.warn(`React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?`),y().useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return e??console.warn(`React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?`),y().useLayoutEffect(e,t)},e.useMemo=function(e,t){return y().useMemo(e,t)},e.useOptimistic=function(e,t){return y().useOptimistic(e,t)},e.useReducer=function(e,t,n){return y().useReducer(e,t,n)},e.useRef=function(e){return y().useRef(e)},e.useState=function(e){return y().useState(e)},e.useSyncExternalStore=function(e,t,n){return y().useSyncExternalStore(e,t,n)},e.useTransition=function(){return y().useTransition()},e.version=`19.2.4`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),d=o(((e,t)=>{t.exports=u()}));export{l as i,o as n,s as r,d as t};
@@ -1 +1 @@
1
- import{i as e,t}from"./react-CYzKIDNi.js";var n=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},r=(e=>e?n(e):n),i=e(t(),1),a=e=>e;function o(e,t=a){let n=i.useSyncExternalStore(e.subscribe,i.useCallback(()=>t(e.getState()),[e,t]),i.useCallback(()=>t(e.getInitialState()),[e,t]));return i.useDebugValue(n),n}var s=e=>{let t=r(e),n=e=>o(t,e);return Object.assign(n,t),n},c=(e=>e?s(e):s);export{c as t};
1
+ import{i as e,t}from"./react-4j_0SqET.js";var n=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},r=(e=>e?n(e):n),i=e(t(),1),a=e=>e;function o(e,t=a){let n=i.useSyncExternalStore(e.subscribe,i.useCallback(()=>t(e.getState()),[e,t]),i.useCallback(()=>t(e.getInitialState()),[e,t]));return i.useDebugValue(n),n}var s=e=>{let t=r(e),n=e=>o(t,e);return Object.assign(n,t),n},c=(e=>e?s(e):s);export{c as t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/api-settings-CaKDC7_s.js","assets/react-CYzKIDNi.js","assets/api-client-TUmacMRS.js"])))=>i.map(i=>d[i]);
2
- import{t as e}from"./react-rgzL83kk.js";var t=`modulepreload`,n=function(e){return`/`+e},r={},i=function(e,i,a){let o=Promise.resolve();if(i&&i.length>0){let e=document.getElementsByTagName(`link`),s=document.querySelector(`meta[property=csp-nonce]`),c=s?.nonce||s?.getAttribute(`nonce`);function l(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}o=l(i.map(i=>{if(i=n(i,a),i in r)return;r[i]=!0;let o=i.endsWith(`.css`),s=o?`[rel="stylesheet"]`:``;if(a)for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.href===i&&(!o||n.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${i}"]${s}`))return;let l=document.createElement(`link`);if(l.rel=o?`stylesheet`:t,o||(l.as=`script`),l.crossOrigin=``,l.href=i,c&&l.setAttribute(`nonce`,c),document.head.appendChild(l),o)return new Promise((e,t)=>{l.addEventListener(`load`,e),l.addEventListener(`error`,()=>t(Error(`Unable to preload CSS for ${i}`)))})}))}function s(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return o.then(t=>{for(let e of t||[])e.status===`rejected`&&s(e.reason);return e().catch(s)})},a=`ppm-settings`;function o(){try{let e=localStorage.getItem(a);if(e)return JSON.parse(e)}catch{}return{}}function s(e){let t=o();localStorage.setItem(a,JSON.stringify({...t,...e}))}function c(e){let t=e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e;document.documentElement.classList.toggle(`dark`,t===`dark`),document.documentElement.classList.toggle(`light`,t===`light`);let n=document.querySelector(`meta[name="theme-color"]`);n&&n.setAttribute(`content`,t===`dark`?`#0f1419`:`#ffffff`)}var l=o(),u=e((e,t)=>({theme:l.theme===`light`||l.theme===`dark`||l.theme===`system`?l.theme:`system`,sidebarCollapsed:l.sidebarCollapsed??!1,sidebarWidth:l.sidebarWidth??280,gitStatusViewMode:l.gitStatusViewMode===`flat`?`flat`:`tree`,wordWrap:l.wordWrap??!1,sidebarActiveTab:[`git`,`settings`,`database`,`search`].includes(l.sidebarActiveTab)?l.sidebarActiveTab:`explorer`,deviceName:null,version:null,setTheme:t=>{s({theme:t}),c(t),e({theme:t}),fetch(`/api/settings/theme`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({theme:t})}).catch(()=>{})},setDeviceName:async t=>{let n=t.trim();e({deviceName:n||null}),n?document.title=`PPM — ${n}`:document.title=`PPM`;try{let{updateDeviceName:e}=await i(async()=>{let{updateDeviceName:e}=await import(`./api-settings-CaKDC7_s.js`).then(e=>e.n);return{updateDeviceName:e}},__vite__mapDeps([0,1,2]));await e(n)}catch{}},toggleSidebar:()=>{let n=!t().sidebarCollapsed;s({sidebarCollapsed:n}),e({sidebarCollapsed:n})},setSidebarWidth:t=>{let n=Math.max(200,Math.min(600,t));s({sidebarWidth:n}),e({sidebarWidth:n})},setGitStatusViewMode:t=>{s({gitStatusViewMode:t}),e({gitStatusViewMode:t})},toggleWordWrap:()=>{let n=!t().wordWrap;s({wordWrap:n}),e({wordWrap:n})},setSidebarActiveTab:t=>{s({sidebarActiveTab:t}),e({sidebarActiveTab:t})},fetchServerInfo:async()=>{try{let[t,n]=await Promise.all([fetch(`/api/info`),fetch(`/api/settings/theme`)]),r=await t.json();if(r.ok){let{device_name:t,version:n}=r.data;e({deviceName:t||null,version:n||null}),t&&(document.title=`PPM — ${t}`)}let i=await n.json();if(i.ok&&i.data?.theme){let t=i.data.theme;s({theme:t}),c(t),e({theme:t})}}catch{}}}));export{u as n,i as r,c as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/api-settings-BDsNFa7H.js","assets/react-4j_0SqET.js","assets/api-client-BNaaEdcl.js"])))=>i.map(i=>d[i]);
2
+ import{t as e}from"./react-DUP4AMtY.js";var t=`modulepreload`,n=function(e){return`/`+e},r={},i=function(e,i,a){let o=Promise.resolve();if(i&&i.length>0){let e=document.getElementsByTagName(`link`),s=document.querySelector(`meta[property=csp-nonce]`),c=s?.nonce||s?.getAttribute(`nonce`);function l(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}o=l(i.map(i=>{if(i=n(i,a),i in r)return;r[i]=!0;let o=i.endsWith(`.css`),s=o?`[rel="stylesheet"]`:``;if(a)for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.href===i&&(!o||n.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${i}"]${s}`))return;let l=document.createElement(`link`);if(l.rel=o?`stylesheet`:t,o||(l.as=`script`),l.crossOrigin=``,l.href=i,c&&l.setAttribute(`nonce`,c),document.head.appendChild(l),o)return new Promise((e,t)=>{l.addEventListener(`load`,e),l.addEventListener(`error`,()=>t(Error(`Unable to preload CSS for ${i}`)))})}))}function s(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return o.then(t=>{for(let e of t||[])e.status===`rejected`&&s(e.reason);return e().catch(s)})},a=`ppm-settings`;function o(){try{let e=localStorage.getItem(a);if(e)return JSON.parse(e)}catch{}return{}}function s(e){let t=o();localStorage.setItem(a,JSON.stringify({...t,...e}))}function c(e){let t=e===`system`?window.matchMedia(`(prefers-color-scheme: dark)`).matches?`dark`:`light`:e;document.documentElement.classList.toggle(`dark`,t===`dark`),document.documentElement.classList.toggle(`light`,t===`light`);let n=document.querySelector(`meta[name="theme-color"]`);n&&n.setAttribute(`content`,t===`dark`?`#0f1419`:`#ffffff`)}var l=o(),u=e((e,t)=>({theme:l.theme===`light`||l.theme===`dark`||l.theme===`system`?l.theme:`system`,sidebarCollapsed:l.sidebarCollapsed??!1,sidebarWidth:l.sidebarWidth??280,gitStatusViewMode:l.gitStatusViewMode===`flat`?`flat`:`tree`,wordWrap:l.wordWrap??!1,sidebarActiveTab:[`git`,`settings`,`database`,`search`].includes(l.sidebarActiveTab)?l.sidebarActiveTab:`explorer`,deviceName:null,version:null,setTheme:t=>{s({theme:t}),c(t),e({theme:t}),fetch(`/api/settings/theme`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({theme:t})}).catch(()=>{})},setDeviceName:async t=>{let n=t.trim();e({deviceName:n||null}),n?document.title=`PPM — ${n}`:document.title=`PPM`;try{let{updateDeviceName:e}=await i(async()=>{let{updateDeviceName:e}=await import(`./api-settings-BDsNFa7H.js`).then(e=>e.n);return{updateDeviceName:e}},__vite__mapDeps([0,1,2]));await e(n)}catch{}},toggleSidebar:()=>{let n=!t().sidebarCollapsed;s({sidebarCollapsed:n}),e({sidebarCollapsed:n})},setSidebarWidth:t=>{let n=Math.max(200,Math.min(600,t));s({sidebarWidth:n}),e({sidebarWidth:n})},setGitStatusViewMode:t=>{s({gitStatusViewMode:t}),e({gitStatusViewMode:t})},toggleWordWrap:()=>{let n=!t().wordWrap;s({wordWrap:n}),e({wordWrap:n})},setSidebarActiveTab:t=>{s({sidebarActiveTab:t}),e({sidebarActiveTab:t})},fetchServerInfo:async()=>{try{let[t,n]=await Promise.all([fetch(`/api/info`),fetch(`/api/settings/theme`)]),r=await t.json();if(r.ok){let{device_name:t,version:n}=r.data;e({deviceName:t||null,version:n||null}),t&&(document.title=`PPM — ${t}`)}let i=await n.json();if(i.ok&&i.data?.theme){let t=i.data.theme;s({theme:t}),c(t),e({theme:t})}}catch{}}}));export{u as n,i as r,c as t};
@@ -0,0 +1 @@
1
+ import"./react-4j_0SqET.js";import"./input-BWEh96zn.js";import"./jsx-dev-runtime-B0R0R7SH.js";import"./settings-store-CQtPmfWa.js";import"./jsx-runtime-LVf5-VFx.js";import"./api-client-BNaaEdcl.js";import"./api-settings-BDsNFa7H.js";import{n as e}from"./index-DhXnbgjx.js";export{e as SettingsTab};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"./react-4j_0SqET.js";import{t as n}from"./jsx-dev-runtime-B0R0R7SH.js";import{a as r,c as i,i as a,n as o,o as s,r as c,s as l}from"./dist-DfBZTiXd.js";import{t as u}from"./table-CSrbr8mU.js";import"./jsx-runtime-LVf5-VFx.js";import{i as d,t as f}from"./api-client-BNaaEdcl.js";import{B as p,K as m,M as h,O as g,W as _,q as v}from"./index-DhXnbgjx.js";var y=e(t(),1);function b(e,t,n){let[r,i]=(0,y.useState)([]),[a,o]=(0,y.useState)(null),[s,c]=(0,y.useState)(null),[l,u]=(0,y.useState)([]),[p,m]=(0,y.useState)(!1),[h,g]=(0,y.useState)(null),[_,v]=(0,y.useState)(1),[b,x]=(0,y.useState)(null),[S,C]=(0,y.useState)(null),[w,T]=(0,y.useState)(!1),E=n?`/api/db/connections/${n}`:null,D=E??`${d(e)}/sqlite`,O=E?``:`path=${encodeURIComponent(t)}`,k=(0,y.useCallback)(async()=>{m(!0),g(null);try{let e=E?`?cached=1`:O?`?${O}`:``,t=await f.get(`${D}/tables${e}`);i(t),!E&&t.length>0&&!a&&o(t[0].name)}catch(e){g(e.message)}finally{m(!1)}},[D,O,E]);(0,y.useEffect)(()=>{k()},[k]);let A=(0,y.useCallback)(async()=>{if(a){m(!0);try{let e=O?`${O}&`:``,[t,n]=await Promise.all([f.get(`${D}/data?${e}table=${encodeURIComponent(a)}&page=${_}&limit=100`),f.get(`${D}/schema?${e}table=${encodeURIComponent(a)}`)]);c(t),u(n)}catch(e){g(e.message)}finally{m(!1)}}},[D,O,a,_]);return(0,y.useEffect)(()=>{A()},[A]),{tables:r,selectedTable:a,selectTable:(0,y.useCallback)(e=>{o(e),v(1),x(null)},[]),tableData:s,schema:l,loading:p,error:h,page:_,setPage:v,queryResult:b,queryError:S,queryLoading:w,executeQuery:(0,y.useCallback)(async e=>{T(!0),C(null);try{let n=E?{sql:e}:{path:t,sql:e},r=await f.post(`${D}/query`,n);x(r),r.changeType===`modify`&&A()}catch(e){C(e.message)}finally{T(!1)}},[D,E,t,A]),updateCell:(0,y.useCallback)(async(e,n,r)=>{if(a)try{E?await f.put(`${D}/cell`,{table:a,pkColumn:`rowid`,pkValue:e,column:n,value:r}):await f.put(`${D}/cell`,{path:t,table:a,rowid:e,column:n,value:r}),A()}catch(e){g(e.message)}},[D,E,t,a,A]),refreshTables:k,refreshData:A}}var x=n(),S=`/Users/hienlh/Projects/ppm/src/web/components/sqlite/sqlite-table-list.tsx`;function C({tables:e,selectedTable:t,onSelect:n,onRefresh:r}){return(0,x.jsxDEV)(`div`,{className:`w-48 shrink-0 flex flex-col bg-background overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,x.jsxDEV)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Tables`},void 0,!1,{fileName:S,lineNumber:15,columnNumber:9},this),(0,x.jsxDEV)(`button`,{type:`button`,onClick:r,className:`text-muted-foreground hover:text-foreground transition-colors`,title:`Refresh tables`,children:(0,x.jsxDEV)(g,{className:`size-3`},void 0,!1,{fileName:S,lineNumber:22,columnNumber:11},this)},void 0,!1,{fileName:S,lineNumber:16,columnNumber:9},this)]},void 0,!0,{fileName:S,lineNumber:14,columnNumber:7},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:[e.map(e=>(0,x.jsxDEV)(`button`,{type:`button`,onClick:()=>n(e.name),className:`w-full flex items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors ${t===e.name?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`}`,children:[(0,x.jsxDEV)(u,{className:`size-3 shrink-0`},void 0,!1,{fileName:S,lineNumber:37,columnNumber:13},this),(0,x.jsxDEV)(`span`,{className:`truncate flex-1`,children:e.name},void 0,!1,{fileName:S,lineNumber:38,columnNumber:13},this),(0,x.jsxDEV)(`span`,{className:`text-[10px] opacity-60`,children:e.rowCount},void 0,!1,{fileName:S,lineNumber:39,columnNumber:13},this)]},e.name,!0,{fileName:S,lineNumber:27,columnNumber:11},this)),e.length===0&&(0,x.jsxDEV)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground text-center`,children:`No tables found`},void 0,!1,{fileName:S,lineNumber:43,columnNumber:11},this)]},void 0,!0,{fileName:S,lineNumber:25,columnNumber:7},this)]},void 0,!0,{fileName:S,lineNumber:13,columnNumber:5},this)}var w=`/Users/hienlh/Projects/ppm/src/web/components/sqlite/sqlite-data-grid.tsx`;function T({tableData:e,schema:t,loading:n,page:r,onPageChange:i,onCellUpdate:a}){if(!e)return(0,x.jsxDEV)(`div`,{className:`flex items-center justify-center h-full text-xs text-muted-foreground`,children:n?(0,x.jsxDEV)(h,{className:`size-4 animate-spin`},void 0,!1,{fileName:w,lineNumber:19,columnNumber:20},this):`Select a table`},void 0,!1,{fileName:w,lineNumber:18,columnNumber:7},this);let o=Math.ceil(e.total/e.limit)||1;return(0,x.jsxDEV)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-auto`,children:(0,x.jsxDEV)(E,{columns:e.columns,rows:e.rows,schema:t,onCellUpdate:a},void 0,!1,{fileName:w,lineNumber:29,columnNumber:9},this)},void 0,!1,{fileName:w,lineNumber:28,columnNumber:7},this),(0,x.jsxDEV)(`div`,{className:`flex items-center justify-between px-3 py-1.5 border-t border-border bg-background shrink-0 text-xs text-muted-foreground`,children:[(0,x.jsxDEV)(`span`,{children:[e.total.toLocaleString(),` rows`]},void 0,!0,{fileName:w,lineNumber:38,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsxDEV)(`button`,{type:`button`,disabled:r<=1,onClick:()=>i(r-1),className:`p-0.5 rounded hover:bg-muted disabled:opacity-30`,children:(0,x.jsxDEV)(v,{className:`size-3.5`},void 0,!1,{fileName:w,lineNumber:42,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:40,columnNumber:11},this),(0,x.jsxDEV)(`span`,{children:[r,` / `,o]},void 0,!0,{fileName:w,lineNumber:44,columnNumber:11},this),(0,x.jsxDEV)(`button`,{type:`button`,disabled:r>=o,onClick:()=>i(r+1),className:`p-0.5 rounded hover:bg-muted disabled:opacity-30`,children:(0,x.jsxDEV)(m,{className:`size-3.5`},void 0,!1,{fileName:w,lineNumber:47,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:45,columnNumber:11},this)]},void 0,!0,{fileName:w,lineNumber:39,columnNumber:9},this)]},void 0,!0,{fileName:w,lineNumber:37,columnNumber:7},this)]},void 0,!0,{fileName:w,lineNumber:27,columnNumber:5},this)}function E({columns:e,rows:t,schema:n,onCellUpdate:i}){let[a,o]=(0,y.useState)(null),[c,u]=(0,y.useState)(``),d=(0,y.useMemo)(()=>new Set(n.filter(e=>e.pk).map(e=>e.name)),[n]),f=(0,y.useCallback)((e,t,n)=>{t!==`rowid`&&(o({rowIdx:e,col:t}),u(n==null?``:String(n)))},[]),p=(0,y.useCallback)(()=>{if(!a)return;let e=t[a.rowIdx];if(!e)return;let n=e.rowid,r=e[a.col];String(r??``)!==c&&i(n,a.col,c===``?null:c),o(null)},[a,c,t,i]),m=(0,y.useCallback)(()=>o(null),[]),h=s({data:t,columns:(0,y.useMemo)(()=>e.map(e=>({id:e,accessorFn:t=>t[e],header:()=>(0,x.jsxDEV)(`span`,{className:`${d.has(e)?`font-bold`:``} ${e===`rowid`?`text-muted-foreground/50`:``}`,children:e},void 0,!1,{fileName:w,lineNumber:92,columnNumber:9},this),cell:({row:t,getValue:n})=>{let r=t.index,i=a?.rowIdx===r&&a?.col===e,o=n();return i?(0,x.jsxDEV)(`input`,{autoFocus:!0,className:`w-full bg-transparent border border-primary/50 rounded px-1 py-0 text-xs outline-none`,value:c,onChange:e=>u(e.target.value),onBlur:p,onKeyDown:e=>{e.key===`Enter`&&p(),e.key===`Escape`&&m()}},void 0,!1,{fileName:w,lineNumber:103,columnNumber:13},this):(0,x.jsxDEV)(`span`,{className:`cursor-pointer truncate block ${o==null?`text-muted-foreground/40 italic`:``} ${e===`rowid`?`text-muted-foreground/50`:``}`,onDoubleClick:()=>f(r,e,o),title:o==null?`NULL`:String(o),children:o==null?`NULL`:String(o)},void 0,!1,{fileName:w,lineNumber:115,columnNumber:11},this)}})),[e,d,a,c,p,m,f]),getCoreRowModel:l()});return(0,x.jsxDEV)(`table`,{className:`w-full text-xs border-collapse`,children:[(0,x.jsxDEV)(`thead`,{className:`sticky top-0 z-10 bg-muted`,children:h.getHeaderGroups().map(e=>(0,x.jsxDEV)(`tr`,{children:e.headers.map(e=>(0,x.jsxDEV)(`th`,{className:`px-2 py-1.5 text-left font-medium text-muted-foreground border-b border-border whitespace-nowrap`,children:r(e.column.columnDef.header,e.getContext())},e.id,!1,{fileName:w,lineNumber:139,columnNumber:15},this))},e.id,!1,{fileName:w,lineNumber:137,columnNumber:11},this))},void 0,!1,{fileName:w,lineNumber:135,columnNumber:7},this),(0,x.jsxDEV)(`tbody`,{children:[h.getRowModel().rows.map(e=>(0,x.jsxDEV)(`tr`,{className:`hover:bg-muted/30 border-b border-border/50`,children:e.getVisibleCells().map(e=>(0,x.jsxDEV)(`td`,{className:`px-2 py-1 max-w-[300px]`,children:r(e.column.columnDef.cell,e.getContext())},e.id,!1,{fileName:w,lineNumber:150,columnNumber:15},this))},e.id,!1,{fileName:w,lineNumber:148,columnNumber:11},this)),t.length===0&&(0,x.jsxDEV)(`tr`,{children:(0,x.jsxDEV)(`td`,{colSpan:e.length,className:`px-2 py-8 text-center text-muted-foreground`,children:`No data`},void 0,!1,{fileName:w,lineNumber:158,columnNumber:13},this)},void 0,!1,{fileName:w,lineNumber:157,columnNumber:11},this)]},void 0,!0,{fileName:w,lineNumber:146,columnNumber:7},this)]},void 0,!0,{fileName:w,lineNumber:134,columnNumber:5},this)}var D=`/Users/hienlh/Projects/ppm/src/web/components/sqlite/sqlite-query-editor.tsx`;function O({onExecute:e,result:t,error:n,loading:r}){let[s,l]=(0,y.useState)(`SELECT * FROM `),u=(0,y.useCallback)(()=>{let t=s.trim();t&&e(t)},[s,e]);return(0,x.jsxDEV)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-start gap-1 border-b border-border bg-background`,onKeyDown:(0,y.useCallback)(e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),u())},[u]),children:[(0,x.jsxDEV)(`div`,{className:`flex-1 max-h-[120px] overflow-auto`,children:(0,x.jsxDEV)(a,{value:s,onChange:l,extensions:[c({dialect:o})],basicSetup:{lineNumbers:!1,foldGutter:!1,highlightActiveLine:!1},className:`text-xs [&_.cm-editor]:!outline-none [&_.cm-scroller]:!overflow-auto`},void 0,!1,{fileName:D,lineNumber:35,columnNumber:11},this)},void 0,!1,{fileName:D,lineNumber:34,columnNumber:9},this),(0,x.jsxDEV)(`button`,{type:`button`,onClick:u,disabled:r,className:`shrink-0 m-1 p-1.5 rounded bg-primary text-primary-foreground hover:bg-primary/90 disabled:opacity-50 transition-colors`,title:`Execute (Cmd+Enter)`,children:r?(0,x.jsxDEV)(h,{className:`size-3.5 animate-spin`},void 0,!1,{fileName:D,lineNumber:50,columnNumber:22},this):(0,x.jsxDEV)(i,{className:`size-3.5`},void 0,!1,{fileName:D,lineNumber:50,columnNumber:70},this)},void 0,!1,{fileName:D,lineNumber:43,columnNumber:9},this)]},void 0,!0,{fileName:D,lineNumber:33,columnNumber:7},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-auto text-xs`,children:[n&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-destructive bg-destructive/5`,children:n},void 0,!1,{fileName:D,lineNumber:57,columnNumber:11},this),t&&t.changeType===`modify`&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-green-500`,children:[`Query executed. `,t.rowsAffected,` row(s) affected.`]},void 0,!0,{fileName:D,lineNumber:61,columnNumber:11},this),t&&t.changeType===`select`&&t.rows.length>0&&(0,x.jsxDEV)(`table`,{className:`w-full border-collapse`,children:[(0,x.jsxDEV)(`thead`,{className:`sticky top-0 bg-muted`,children:(0,x.jsxDEV)(`tr`,{children:t.columns.map(e=>(0,x.jsxDEV)(`th`,{className:`px-2 py-1 text-left font-medium text-muted-foreground border-b border-border whitespace-nowrap`,children:e},e,!1,{fileName:D,lineNumber:71,columnNumber:19},this))},void 0,!1,{fileName:D,lineNumber:69,columnNumber:15},this)},void 0,!1,{fileName:D,lineNumber:68,columnNumber:13},this),(0,x.jsxDEV)(`tbody`,{children:t.rows.map((e,n)=>(0,x.jsxDEV)(`tr`,{className:`hover:bg-muted/30 border-b border-border/50`,children:t.columns.map(t=>(0,x.jsxDEV)(`td`,{className:`px-2 py-1 max-w-[300px] truncate`,title:e[t]==null?`NULL`:String(e[t]),children:e[t]==null?(0,x.jsxDEV)(`span`,{className:`text-muted-foreground/40 italic`,children:`NULL`},void 0,!1,{fileName:D,lineNumber:82,columnNumber:43},this):String(e[t])},t,!1,{fileName:D,lineNumber:81,columnNumber:21},this))},n,!1,{fileName:D,lineNumber:79,columnNumber:17},this))},void 0,!1,{fileName:D,lineNumber:77,columnNumber:13},this)]},void 0,!0,{fileName:D,lineNumber:67,columnNumber:11},this),t&&t.changeType===`select`&&t.rows.length===0&&(0,x.jsxDEV)(`div`,{className:`px-3 py-2 text-muted-foreground`,children:`No results`},void 0,!1,{fileName:D,lineNumber:92,columnNumber:11},this)]},void 0,!0,{fileName:D,lineNumber:55,columnNumber:7},this)]},void 0,!0,{fileName:D,lineNumber:31,columnNumber:5},this)}var k=`/Users/hienlh/Projects/ppm/src/web/components/sqlite/sqlite-viewer.tsx`;function A({metadata:e}){let t=e?.filePath,n=e?.projectName,r=e?.connectionId,i=e?.tableName,[a,o]=(0,y.useState)(!1);return r?(0,x.jsxDEV)(j,{projectName:``,dbPath:``,connectionId:r,connectionName:e?.connectionName,initialTable:i,queryPanelOpen:a,onToggleQueryPanel:()=>o(e=>!e),hideTableList:!0},void 0,!1,{fileName:k,lineNumber:23,columnNumber:7},this):!t||!n?(0,x.jsxDEV)(`div`,{className:`flex items-center justify-center h-full text-text-secondary text-sm`,children:[(0,x.jsxDEV)(p,{className:`size-5 mr-2`},void 0,!1,{fileName:k,lineNumber:39,columnNumber:9},this),` No database file selected.`]},void 0,!0,{fileName:k,lineNumber:38,columnNumber:7},this):(0,x.jsxDEV)(j,{projectName:n,dbPath:t,queryPanelOpen:a,onToggleQueryPanel:()=>o(e=>!e)},void 0,!1,{fileName:k,lineNumber:45,columnNumber:5},this)}function j({projectName:e,dbPath:t,connectionId:n,connectionName:r,initialTable:i,queryPanelOpen:a,onToggleQueryPanel:o,hideTableList:s}){let c=b(e,t,n),l=(0,y.useRef)(!1);return(0,y.useEffect)(()=>{i&&!l.current&&c.tables.length>0&&(l.current=!0,c.selectTable(i))},[i,c.tables]),c.error&&c.tables.length===0?(0,x.jsxDEV)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,x.jsxDEV)(_,{className:`size-10 text-destructive`},void 0,!1,{fileName:k,lineNumber:74,columnNumber:9},this),(0,x.jsxDEV)(`p`,{className:`text-sm`,children:c.error},void 0,!1,{fileName:k,lineNumber:75,columnNumber:9},this)]},void 0,!0,{fileName:k,lineNumber:73,columnNumber:7},this):c.loading&&c.tables.length===0?(0,x.jsxDEV)(`div`,{className:`flex items-center justify-center h-full gap-2 text-text-secondary`,children:[(0,x.jsxDEV)(h,{className:`size-5 animate-spin`},void 0,!1,{fileName:k,lineNumber:83,columnNumber:9},this),(0,x.jsxDEV)(`span`,{className:`text-sm`,children:`Loading database...`},void 0,!1,{fileName:k,lineNumber:84,columnNumber:9},this)]},void 0,!0,{fileName:k,lineNumber:82,columnNumber:7},this):(0,x.jsxDEV)(`div`,{className:`flex h-full w-full overflow-hidden`,children:[!s&&(0,x.jsxDEV)(C,{tables:c.tables,selectedTable:c.selectedTable,onSelect:c.selectTable,onRefresh:c.refreshTables},void 0,!1,{fileName:k,lineNumber:93,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex-1 flex flex-col overflow-hidden ${s?``:`border-l border-border`}`,children:[(0,x.jsxDEV)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,x.jsxDEV)(p,{className:`size-3.5 text-muted-foreground`},void 0,!1,{fileName:k,lineNumber:105,columnNumber:11},this),(0,x.jsxDEV)(`span`,{className:`text-xs text-muted-foreground truncate`,children:r??t},void 0,!1,{fileName:k,lineNumber:106,columnNumber:11},this),(0,x.jsxDEV)(`span`,{className:`text-xs text-muted-foreground`,children:c.selectedTable&&`/ ${c.selectedTable}`},void 0,!1,{fileName:k,lineNumber:107,columnNumber:11},this),(0,x.jsxDEV)(`div`,{className:`ml-auto`,children:(0,x.jsxDEV)(`button`,{type:`button`,onClick:o,className:`px-2 py-1 rounded text-xs transition-colors ${a?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:`SQL`},void 0,!1,{fileName:k,lineNumber:111,columnNumber:13},this)},void 0,!1,{fileName:k,lineNumber:110,columnNumber:11},this)]},void 0,!0,{fileName:k,lineNumber:104,columnNumber:9},this),(0,x.jsxDEV)(`div`,{className:`flex-1 overflow-hidden ${a?`max-h-[60%]`:``}`,children:(0,x.jsxDEV)(T,{tableData:c.tableData,schema:c.schema,loading:c.loading,page:c.page,onPageChange:c.setPage,onCellUpdate:c.updateCell},void 0,!1,{fileName:k,lineNumber:123,columnNumber:11},this)},void 0,!1,{fileName:k,lineNumber:122,columnNumber:9},this),a&&(0,x.jsxDEV)(`div`,{className:`border-t border-border h-[40%] shrink-0`,children:(0,x.jsxDEV)(O,{onExecute:c.executeQuery,result:c.queryResult,error:c.queryError,loading:c.queryLoading},void 0,!1,{fileName:k,lineNumber:136,columnNumber:13},this)},void 0,!1,{fileName:k,lineNumber:135,columnNumber:11},this)]},void 0,!0,{fileName:k,lineNumber:102,columnNumber:7},this)]},void 0,!0,{fileName:k,lineNumber:90,columnNumber:5},this)}export{A as SqliteViewer};
@@ -0,0 +1 @@
1
+ import{n as e}from"./jsx-dev-runtime-B0R0R7SH.js";import{t}from"./react-DUP4AMtY.js";import{r as n}from"./utils-Bmf_8h7Y.js";var r=e(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]);function i(){return`panel-${n()}`}function a(e=[],t=null){return{id:i(),tabs:e,activeTabId:t,tabHistory:t?[t]:[]}}function o(e){return e?1:3}function s(e,t){return e.map(e=>e.filter(e=>e!==t)).filter(e=>e.length>0)}function c(e,t){for(let n=0;n<e.length;n++){let r=e[n].indexOf(t);if(r!==-1)return{row:n,col:r}}return null}var l=`ppm-panels-`,u=`ppm-tabs-`;function d(e){return`${l}${e}`}function f(e,t){try{localStorage.setItem(d(e),JSON.stringify(t))}catch{}}function p(e){try{let t=localStorage.getItem(d(e));if(t)return JSON.parse(t)}catch{}return m(e)}function m(e){try{let t=localStorage.getItem(`${u}${e}`);if(!t)return null;let n=JSON.parse(t);if(!n.tabs?.length)return null;let r=a(n.tabs,n.activeTabId),i={panels:{[r.id]:r},grid:[[r.id]],focusedPanelId:r.id};return f(e,i),localStorage.removeItem(`${u}${e}`),i}catch{return null}}var h=new Set([`git-graph`]),g=new Set([`projects`,`git-status`]);function _(){return`tab-${n()}`}function v(e,t){let n=e.filter(e=>e!==t);return n.push(t),n.length>50&&n.shift(),n}function y(){let e=a();return{panels:{[e.id]:e},grid:[[e.id]],focusedPanelId:e.id}}var b=t()((e,t)=>{function n(){let{currentProject:e,panels:n,grid:r,focusedPanelId:i}=t();if(!e)return;let a=new Set(r.flat()),o={};for(let[e,t]of Object.entries(n))a.has(e)&&(o[e]=t);f(e,{panels:o,grid:r,focusedPanelId:i})}function r(e){return Object.values(t().panels).find(t=>t.tabs.some(t=>t.id===e))}function i(e){return e??t().focusedPanelId}return{...y(),currentProject:null,projectGrids:{},projectFocused:{},switchProject:n=>{let{currentProject:r,panels:i,grid:o,focusedPanelId:s,projectGrids:c,projectFocused:l}=t();if(r===n)return;let u={...c},d={...l};if(r){u[r]=o,d[r]=s;let e=new Set(o.flat()),t={};for(let[n,r]of Object.entries(i))e.has(n)&&(t[n]=r);f(r,{panels:t,grid:o,focusedPanelId:s})}if(u[n]){let t=u[n];e({currentProject:n,grid:t,focusedPanelId:d[n]??t[0]?.[0]??``,projectGrids:u,projectFocused:d});return}let m=p(n);if(m&&Object.keys(m.panels).length>0){let t={};for(let[e,n]of Object.entries(m.panels)){let r=n.tabs.filter(e=>!g.has(e.type)),i=n.tabHistory.filter(e=>r.some(t=>t.id===e)),a=n.activeTabId&&r.some(e=>e.id===n.activeTabId)?n.activeTabId:i[i.length-1]??r[0]?.id??null;t[e]={...n,tabs:r,tabHistory:i,activeTabId:a}}let r={...i,...t};u[n]=m.grid,d[n]=m.focusedPanelId,e({currentProject:n,panels:r,grid:m.grid,focusedPanelId:m.focusedPanelId,projectGrids:u,projectFocused:d})}else{let t=a(),r=[[t.id]],o={...i,[t.id]:t};u[n]=r,d[n]=t.id,f(n,{panels:{[t.id]:t},grid:r,focusedPanelId:t.id}),e({currentProject:n,panels:o,grid:r,focusedPanelId:t.id,projectGrids:u,projectFocused:d})}},setFocusedPanel:n=>{t().panels[n]&&e({focusedPanelId:n})},openTab:(r,a)=>{let o=i(a);if(!t().panels[o])return``;if(h.has(r.type))for(let i of Object.values(t().panels)){let t=i.tabs.find(e=>e.type===r.type&&e.projectId===r.projectId);if(t)return e(e=>({focusedPanelId:i.id,panels:{...e.panels,[i.id]:{...i,activeTabId:t.id,tabHistory:v(i.tabHistory,t.id)}}})),n(),t.id}let s=_(),c={...r,id:s};return e(e=>{let t=e.panels[o];return{focusedPanelId:o,panels:{...e.panels,[o]:{...t,tabs:[...t.tabs,c],activeTabId:s,tabHistory:v(t.tabHistory,s)}}}}),n(),s},closeTab:(i,a)=>{let o=a?t().panels[a]:r(i);if(!o)return;let c=o.id;e(e=>{let t=e.panels[c],n=t.tabs.filter(e=>e.id!==i),r=t.tabHistory.filter(e=>e!==i),a=t.activeTabId;if(t.activeTabId===i){let e=r.length>0?r[r.length-1]:null;a=e&&n.some(t=>t.id===e)?e:n[n.length-1]?.id??null}let o=Object.keys(e.panels);if(n.length===0&&o.length>1){let{[c]:t,...n}=e.panels;return{panels:n,grid:s(e.grid,c),focusedPanelId:e.focusedPanelId===c?Object.keys(n)[0]:e.focusedPanelId}}return{panels:{...e.panels,[c]:{...t,tabs:n,activeTabId:a,tabHistory:r}}}}),n()},setActiveTab:(i,a)=>{let o=a?t().panels[a]:r(i);if(!o)return;let s=o.id;e(e=>{let t=e.panels[s];return{focusedPanelId:s,panels:{...e.panels,[s]:{...t,activeTabId:i,tabHistory:v(t.tabHistory,i)}}}}),n()},updateTab:(t,i)=>{let a=r(t);a&&(e(e=>({panels:{...e.panels,[a.id]:{...a,tabs:a.tabs.map(e=>e.id===t?{...e,...i}:e)}}})),n())},reorderTab:(r,i,a)=>{let o=t().panels[i];if(!o)return;let s=o.tabs.findIndex(e=>e.id===r);if(s===-1||s===a)return;let c=[...o.tabs],[l]=c.splice(s,1);c.splice(a,0,l),e(e=>({panels:{...e.panels,[i]:{...o,tabs:c}}})),n()},moveTab:(r,i,a,o)=>{if(i===a)return;let c=t().panels[i],l=t().panels[a];if(!c||!l)return;let u=c.tabs.find(e=>e.id===r);if(!u)return;let d=c.tabs.filter(e=>e.id!==r),f=c.tabHistory.filter(e=>e!==r),p=c.activeTabId===r?f[f.length-1]??d[d.length-1]?.id??null:c.activeTabId,m=[...l.tabs];o===void 0?m.push(u):m.splice(o,0,u),e(e=>{let t=Object.keys(e.panels);if(d.length===0&&t.length>1){let{[i]:t,...n}=e.panels;return{panels:{...n,[a]:{...l,tabs:m,activeTabId:r,tabHistory:v(l.tabHistory,r)}},grid:s(e.grid,i),focusedPanelId:a}}return{focusedPanelId:a,panels:{...e.panels,[i]:{...c,tabs:d,activeTabId:p,tabHistory:f},[a]:{...l,tabs:m,activeTabId:r,tabHistory:v(l.tabHistory,r)}}}}),n()},splitPanel:(r,i,l,u)=>{let{grid:d,panels:f}=t(),p=t().isMobile(),m=f[l];if(!m)return!1;let h=m.tabs.find(e=>e.id===i);if(!h)return!1;let g=c(d,u??l);if(!g)return!1;let _=r===`left`||r===`right`,v=r===`up`||r===`down`;if(_&&(d[g.row]?.length??0)>=o(p)||v&&d.length>=3)return!1;let y=a([h],h.id);y.tabHistory=[h.id];let b=m.tabs.filter(e=>e.id!==i),x=m.tabHistory.filter(e=>e!==i),S=m.activeTabId===i?x[x.length-1]??b[b.length-1]?.id??null:m.activeTabId,C;if(_)C=d.map((e,t)=>{if(t!==g.row)return e;let n=[...e],i=r===`right`?g.col+1:g.col;return n.splice(i,0,y.id),n});else{C=[...d];let e=r===`down`?g.row+1:g.row;C.splice(e,0,[y.id])}return e(e=>{let t=Object.keys(e.panels),n={...e.panels,[y.id]:y};if(b.length===0&&t.length>1){let{[l]:e,...t}=n;n=t,C=s(C,l)}else n[l]={...m,tabs:b,activeTabId:S,tabHistory:x};return{panels:n,grid:C,focusedPanelId:y.id}}),n(),!0},closePanel:r=>{let{panels:i,grid:a}=t();if(Object.keys(i).length<=1)return;let o=i[r];if(!o)return;c(a,r);let l=a.flat(),u=l.indexOf(r),d=u>0?l[u-1]:l[1],f=i[d];f&&(e(e=>{let{[r]:t,...n}=e.panels,i=[...f.tabs,...o.tabs],a=f.activeTabId??o.activeTabId;return{panels:{...n,[d]:{...f,tabs:i,activeTabId:a,tabHistory:[...f.tabHistory,...o.tabHistory]}},grid:s(e.grid,r),focusedPanelId:d}}),n())},getPanelForTab:e=>r(e),isMobile:()=>typeof window<`u`&&window.innerWidth<768}}),x=t()(()=>({tabs:[],activeTabId:null,tabHistory:[],currentProject:null,switchProject:e=>{b.getState().switchProject(e),S()},openTab:e=>{let t=b.getState().openTab(e);return S(),t},closeTab:e=>{b.getState().closeTab(e),S()},setActiveTab:e=>{b.getState().setActiveTab(e),S()},updateTab:(e,t)=>{b.getState().updateTab(e,t),S()}}));function S(){let e=b.getState(),t=e.panels[e.focusedPanelId];x.setState({tabs:t?.tabs??[],activeTabId:t?.activeTabId??null,tabHistory:t?.tabHistory??[],currentProject:e.currentProject})}b.subscribe(()=>S());export{r as a,o as i,b as n,c as r,x as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./jsx-dev-runtime-B0R0R7SH.js";var t=e(`table`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M3 15h18`,key:`5xshup`}]]);export{t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./jsx-dev-runtime-B0R0R7SH.js";var t=e(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]);export{t};