planche 0.7.19 → 0.7.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD-PARTY-NOTICES.md +269 -1
- package/app/assets/AboutDialog-dKk703-Z.js +1 -0
- package/app/assets/BigInteger-BlV0QR66.js +1 -0
- package/app/assets/ConnectDialog-DdXULzdj.js +1 -0
- package/app/assets/CopyDatabaseDialog-B7w3Ek74.js +1 -0
- package/app/assets/CopyTableDialog-B0kK-0Bl.js +1 -0
- package/app/assets/CreateDatabaseDialog-Dnulabm5.js +1 -0
- package/app/assets/CreateSchemaDialog-Lvff6Tdj.js +1 -0
- package/app/assets/DataDiffDialog-DNTu-7-T.js +1 -0
- package/app/assets/{DownloadToCSVDialog-BC6Sq8Ce.js → DownloadToCSVDialog-jxCkzB3J.js} +2 -2
- package/app/assets/EditSchemaDialog-CFrD-8z9.js +2 -0
- package/app/assets/FindReplaceDialog-CyNlKq00.js +1 -0
- package/app/assets/{FlushDialog-BX0F3dJQ.js → FlushDialog-Cp7W6Ck1.js} +1 -1
- package/app/assets/GroupByDialog-CHwsURs9.js +1 -0
- package/app/assets/LicenseDialog-RY0SOUb1.js +1 -0
- package/app/assets/LinkColumnDialog-BD9rpsyg.js +1 -0
- package/app/assets/LocalHistoryDialog-LnF86KJl.js +1 -0
- package/app/assets/ProcessListDialog-Jt-1b88E.js +1 -0
- package/app/assets/QuickCommandPalette-DEFuPaG7.js +1 -0
- package/app/assets/RowFormDialog-mM6FFZQr.js +2 -0
- package/app/assets/SafetySettingsDialog-B3MafT1S.js +1 -0
- package/app/assets/SchemaDiffDialog-BvNzQo5m.js +7 -0
- package/app/assets/{SchemaToHTMLDialog-DjZQwEbM.js → SchemaToHTMLDialog-Da8c-rAe.js} +2 -2
- package/app/assets/StatusDialog-mibIDpmA.js +1 -0
- package/app/assets/SyncDialog-BIDs_FZr.js +1 -0
- package/app/assets/{TermsDialog-B53To0oi.js → TermsDialog-CWw3XSw0.js} +1 -1
- package/app/assets/UserAddDialog-D-TQNCsa.js +1 -0
- package/app/assets/UserManagerDialog-DTxhu0T8.js +1 -0
- package/app/assets/VariablesDialog-CCzXtQQV.js +1 -0
- package/app/assets/app-storage-C_1RLCyI.js +1 -0
- package/app/assets/button-B2EsmMJs.js +1 -0
- package/app/assets/chevron-up-CBnVjNE1.js +1 -0
- package/app/assets/connection-store-Ds9Gjt3K.js +1 -0
- package/app/assets/contract-D2InX341.js +1 -0
- package/app/assets/database-eJWHFM-2.js +1 -0
- package/app/assets/de-D9wNOTjH.js +2 -0
- package/app/assets/dialog-FBpgH0QJ.js +1 -0
- package/app/assets/dist-BUXw8brT.js +1 -0
- package/app/assets/dist-BYhFWvmC.js +41 -0
- package/app/assets/dist-BrzYmjQV.js +1 -0
- package/app/assets/dist-C2vlTGNz.js +1 -0
- package/app/assets/editor-registry-ukUyoekH.js +1 -0
- package/app/assets/{engine-CpwlM_Ww.js → engine-DtZy_Zk0.js} +1 -1
- package/app/assets/fr-CMT9T7_Z.js +2 -0
- package/app/assets/hmr-singleton-Bit0Kfog.js +1 -0
- package/app/assets/i18n-BAv7QdV3.js +2 -0
- package/app/assets/ja-C5Z0_8jZ.js +2 -0
- package/app/assets/ko-BF4ZzLce.js +2 -0
- package/app/assets/license-store-BfuSb6KZ.js +1 -0
- package/app/assets/{main-BLydvBDF.js → main-BPskUSLM.js} +198 -197
- package/app/assets/main-DmICiyzI.css +2 -0
- package/app/assets/mariadb-BT1adDMU.js +17 -0
- package/app/assets/mysql-BEg8tI_S.js +17 -0
- package/app/assets/postgresql-erqhE-5Q.js +19 -0
- package/app/assets/pro-gate-IRkx6bbE.js +1 -0
- package/app/assets/pro-upsell-lFmxmise.js +1 -0
- package/app/assets/pro-usage-WSD_KOk4.js +1 -0
- package/app/assets/query-execution-C5QxvBZj.js +7 -0
- package/app/assets/query-store-BR6Saeed.js +1 -0
- package/app/assets/rolldown-runtime-hePW80VL.js +1 -0
- package/app/assets/select-C3A-RS4G.js +1 -0
- package/app/assets/settings-store-CSMhaLcw.js +1 -0
- package/app/assets/table-copy-BJBmJ9OO.js +1 -0
- package/app/assets/transactsql-BVCsopZt.js +16 -0
- package/app/assets/tunneling-rujGqkfQ.js +1 -0
- package/app/assets/ui-store-5IssrgmG.js +1 -0
- package/app/assets/{use-engine-B9GBHTL_.js → use-engine-CxcEyIko.js} +1 -1
- package/app/assets/{user-store-l9ZslFwK.js → user-store-DOy2VMsT.js} +1 -1
- package/app/assets/zh-BpFgSEeR.js +2 -0
- package/app/index.html +29 -20
- package/app/landing.css +96 -0
- package/app/third-party-notices.txt +269 -1
- package/dist/index.js +69 -11
- package/package.json +1 -1
- package/app/assets/AboutDialog-BaQAZjtT.js +0 -1
- package/app/assets/ConnectDialog-BmJvDi1P.js +0 -1
- package/app/assets/CopyDatabaseDialog-BEM-56Og.js +0 -1
- package/app/assets/CopyTableDialog-C2r7l2Ck.js +0 -1
- package/app/assets/CreateDatabaseDialog-CZhIpgiO.js +0 -1
- package/app/assets/CreateSchemaDialog-CNq4nZum.js +0 -1
- package/app/assets/DataDiffDialog-mUg2rIWn.js +0 -1
- package/app/assets/EditSchemaDialog-B0dCI4Lb.js +0 -2
- package/app/assets/FindReplaceDialog-DXJp2TN6.js +0 -1
- package/app/assets/GroupByDialog-BQPTetJF.js +0 -1
- package/app/assets/LinkColumnDialog-BEuhj8o8.js +0 -1
- package/app/assets/LocalHistoryDialog-BGF91HKS.js +0 -1
- package/app/assets/ProcessListDialog-VezdyrHo.js +0 -1
- package/app/assets/QuickCommandPalette-BseiwcpU.js +0 -1
- package/app/assets/RowFormDialog-XRuG3rMt.js +0 -2
- package/app/assets/SafetySettingsDialog-Zh_a4nml.js +0 -1
- package/app/assets/SchemaDiffDialog-BrnruiVP.js +0 -7
- package/app/assets/StatusDialog-a7NhoFvt.js +0 -1
- package/app/assets/UserAddDialog-BBYoKeBv.js +0 -1
- package/app/assets/UserManagerDialog-BPC_IoO6.js +0 -1
- package/app/assets/VariablesDialog-CzHDGRpy.js +0 -1
- package/app/assets/button--s6nUzD8.js +0 -1
- package/app/assets/chevron-up-QmvRX9Fw.js +0 -1
- package/app/assets/connection-store-N-ZwIkVg.js +0 -1
- package/app/assets/database-CpQt6YGv.js +0 -1
- package/app/assets/de-Ci_btQN-.js +0 -2
- package/app/assets/dialog-CJoWJzRo.js +0 -1
- package/app/assets/dist-BAFbxkKh.js +0 -1
- package/app/assets/dist-CBYDYlja.js +0 -41
- package/app/assets/dist-DgJHEXPr.js +0 -1
- package/app/assets/dist-pKt0y9E-.js +0 -1
- package/app/assets/editor-registry-DhF4Rf_I.js +0 -1
- package/app/assets/fr-rLx93rAO.js +0 -2
- package/app/assets/hmr-singleton-DWC1xbJ4.js +0 -1
- package/app/assets/i18n-57fo5jb0.js +0 -2
- package/app/assets/ja-DkiQpTGb.js +0 -2
- package/app/assets/ko-DHI7mstP.js +0 -2
- package/app/assets/main-DX7Tr5cg.css +0 -2
- package/app/assets/pro-usage-VxPxjJqt.js +0 -1
- package/app/assets/query-execution-4-JHu9gp.js +0 -7
- package/app/assets/select-ibmUj7AE.js +0 -1
- package/app/assets/settings-store-WUA0-UcP.js +0 -1
- package/app/assets/table-copy-C1ivtmj8.js +0 -1
- package/app/assets/ui-store-DfspmPOn.js +0 -1
- package/app/assets/zh-mgKu2Zwj.js +0 -2
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,t as n,v as r}from"./ui-store-DfspmPOn.js";import{C as i,D as a,E as o,O as s,S as c,T as l,U as u,b as d,j as f,l as p,u as m,w as h,wt as g,x as _,y as v}from"./main-BLydvBDF.js";import{l as y,m as b,t as x}from"./button--s6nUzD8.js";import{a as S,i as C,n as w,r as T,t as E}from"./select-ibmUj7AE.js";import{t as D}from"./connection-store-N-ZwIkVg.js";import{a as ee}from"./database-CpQt6YGv.js";import{n as O}from"./engine-CpwlM_Ww.js";import{c as te,d as ne}from"./query-execution-4-JHu9gp.js";import{n as k,t as A}from"./use-engine-B9GBHTL_.js";import{i as re}from"./table-copy-C1ivtmj8.js";import{a as j,i as M,n as N,o as P,t as F}from"./dialog-CJoWJzRo.js";var I=r(e(),1);function L(){return{id:crypto.randomUUID(),field:``,type:`varchar`,length:``,defaultValue:``,pk:!1,notNull:!1,unsigned:!1,autoIncrement:!1,zerofill:!1,comment:``}}function R(){return{id:crypto.randomUUID(),name:``,type:`INDEX`,columns:[]}}function z(){return{engine:`InnoDB`,charset:`utf8mb4`,collation:`utf8mb4_general_ci`,autoIncrement:``,comment:``}}function B(e,t,n,r,i){return{database:e,name:t,columns:n.map(e=>({name:e.field,type:e.type,length:e.length,defaultValue:e.defaultValue,primaryKey:e.pk,notNull:e.notNull,unsigned:e.unsigned,autoIncrement:e.autoIncrement,zerofill:e.zerofill,comment:e.comment})),indexes:r.map(e=>({name:e.name,type:e.type,columns:[...e.columns]})),options:{...i}}}var V=y(),H=`w-auto min-w-full [&_td]:bg-muted [&_td]:border-r [&_td]:border-border/60 [&_td:last-child]:border-r-0 [&_td]:p-0 [&_td]:h-8 [&_tr:nth-child(even)_td]:bg-muted/60 [&_tr:focus-within_td]:bg-primary/5`,U=`sticky top-0 z-10 bg-catppuccin-crust shadow-[inset_0_-1px_0_var(--border)] [&_th]:h-8 [&_th]:bg-catppuccin-crust [&_th]:font-semibold [&_th]:text-foreground [&_th]:uppercase [&_th]:tracking-wide [&_th]:text-[11px]`,W=`h-8 w-full min-w-0 rounded-none border-0 bg-transparent px-2 text-xs shadow-none ring-0 focus-visible:bg-primary/10 focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-primary dark:bg-transparent`,G=`h-8 w-full min-w-0 rounded-none border-0 bg-transparent px-2 text-xs shadow-none focus-visible:bg-primary/10 focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-primary data-[state=open]:bg-primary/10 dark:bg-transparent dark:hover:bg-transparent`;function ie({columns:e,onChange:t}){let{t:n}=b(),r=A().getDataTypes(),a=(0,I.useCallback)((n,r,i)=>{t(e.map(e=>e.id===n?{...e,[r]:i}:e))},[e,t]);function o(){t([...e,L()])}function s(){e.length>0&&t(e.slice(0,-1))}return(0,V.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,V.jsx)(f,{className:`flex-1`,children:(0,V.jsxs)(v,{className:H,children:[(0,V.jsx)(i,{className:U,children:(0,V.jsxs)(h,{children:[(0,V.jsx)(c,{className:`w-[120px]`,children:n(`table.schema.colField`)}),(0,V.jsx)(c,{className:`w-[120px]`,children:n(`table.schema.colType`)}),(0,V.jsx)(c,{className:`w-[60px]`,children:n(`table.schema.colLength`)}),(0,V.jsx)(c,{className:`w-[100px]`,children:n(`table.schema.colDefault`)}),(0,V.jsx)(c,{className:`w-[40px]`,children:n(`table.schema.colPk`)}),(0,V.jsx)(c,{className:`w-[60px]`,children:n(`table.schema.colNotNull`)}),(0,V.jsx)(c,{className:`w-[60px]`,children:n(`table.schema.colUnsigned`)}),(0,V.jsx)(c,{className:`w-[70px]`,children:n(`table.schema.colAutoIncrement`)}),(0,V.jsx)(c,{className:`w-[60px]`,children:n(`table.schema.colZerofill`)}),(0,V.jsx)(c,{children:n(`table.schema.colComment`)})]})}),(0,V.jsx)(d,{children:e.length===0?(0,V.jsx)(h,{children:(0,V.jsx)(_,{colSpan:10,className:`text-center text-muted-foreground`,children:n(`table.schema.empty`)})}):e.map(e=>(0,V.jsxs)(h,{children:[(0,V.jsx)(_,{children:(0,V.jsx)(m,{className:W,value:e.field,onChange:t=>a(e.id,`field`,t.target.value),placeholder:`column_name`})}),(0,V.jsx)(_,{children:(0,V.jsxs)(E,{value:e.type,onValueChange:t=>a(e.id,`type`,t),children:[(0,V.jsx)(C,{className:G,children:(0,V.jsx)(S,{})}),(0,V.jsx)(w,{children:r.map(e=>(0,V.jsx)(T,{value:e,children:e},e))})]})}),(0,V.jsx)(_,{children:(0,V.jsx)(m,{className:W,value:e.length,onChange:t=>a(e.id,`length`,t.target.value)})}),(0,V.jsx)(_,{children:(0,V.jsx)(m,{className:W,value:e.defaultValue,onChange:t=>a(e.id,`defaultValue`,t.target.value),placeholder:`NULL`})}),(0,V.jsx)(_,{className:`text-center`,children:(0,V.jsx)(`input`,{type:`checkbox`,checked:e.pk,onChange:t=>a(e.id,`pk`,t.target.checked)})}),(0,V.jsx)(_,{className:`text-center`,children:(0,V.jsx)(`input`,{type:`checkbox`,checked:e.notNull,onChange:t=>a(e.id,`notNull`,t.target.checked)})}),(0,V.jsx)(_,{className:`text-center`,children:(0,V.jsx)(`input`,{type:`checkbox`,checked:e.unsigned,onChange:t=>a(e.id,`unsigned`,t.target.checked)})}),(0,V.jsx)(_,{className:`text-center`,children:(0,V.jsx)(`input`,{type:`checkbox`,checked:e.autoIncrement,onChange:t=>a(e.id,`autoIncrement`,t.target.checked)})}),(0,V.jsx)(_,{className:`text-center`,children:(0,V.jsx)(`input`,{type:`checkbox`,checked:e.zerofill,onChange:t=>a(e.id,`zerofill`,t.target.checked)})}),(0,V.jsx)(_,{children:(0,V.jsx)(m,{className:W,value:e.comment,onChange:t=>a(e.id,`comment`,t.target.value)})})]},e.id))})]})}),(0,V.jsxs)(`div`,{className:`flex gap-2 p-2 border-t`,children:[(0,V.jsx)(x,{size:`sm`,variant:`outline`,onClick:o,children:n(`table.schema.add`)}),(0,V.jsx)(x,{size:`sm`,variant:`outline`,onClick:s,disabled:e.length===0,children:n(`table.schema.remove`)})]})]})}var K=[`PRIMARY`,`UNIQUE`,`INDEX`,`FULLTEXT`];function q({open:e,index:t,availableColumns:n,onSave:r,onClose:i}){let{t:a}=b(),[o,s]=(0,I.useState)(t.name),[c,l]=(0,I.useState)(t.type),[u,d]=(0,I.useState)(t.columns);function f(e){d(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function h(){r({id:t.id,name:c===`PRIMARY`?`PRIMARY`:o,type:c,columns:u})}return(0,V.jsx)(F,{open:e,onOpenChange:e=>{e||i()},children:(0,V.jsxs)(N,{className:`sm:max-w-[500px]`,children:[(0,V.jsx)(j,{children:(0,V.jsx)(P,{children:t.name?a(`table.index.editTitle`):a(`table.index.addTitle`)})}),(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`idx-name`,children:a(`table.index.name`)}),(0,V.jsx)(m,{id:`idx-name`,value:c===`PRIMARY`?`PRIMARY`:o,onChange:e=>s(e.target.value),disabled:c===`PRIMARY`,placeholder:a(`table.index.namePlaceholder`)})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`idx-type`,children:a(`table.index.type`)}),(0,V.jsxs)(E,{value:c,onValueChange:e=>l(e),children:[(0,V.jsx)(C,{id:`idx-type`,className:`w-full`,children:(0,V.jsx)(S,{})}),(0,V.jsx)(w,{children:K.map(e=>(0,V.jsx)(T,{value:e,children:e},e))})]})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{children:a(`table.index.columns`)}),(0,V.jsx)(`div`,{className:`border rounded-md p-2 max-h-[200px] overflow-y-auto space-y-1`,children:n.length===0?(0,V.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:a(`table.index.noColumns`)}):n.map(e=>(0,V.jsxs)(`label`,{className:`flex items-center gap-2 text-sm cursor-pointer hover:bg-muted/50 rounded px-1 py-0.5`,children:[(0,V.jsx)(`input`,{type:`checkbox`,checked:u.includes(e.field),onChange:()=>f(e.field)}),(0,V.jsx)(`span`,{children:e.field||a(`table.index.unnamed`)}),(0,V.jsxs)(`span`,{className:`text-muted-foreground`,children:[`(`,e.type,`)`]})]},e.id))})]})]}),(0,V.jsxs)(M,{children:[(0,V.jsx)(x,{variant:`outline`,onClick:i,children:a(`table.index.cancel`)}),(0,V.jsx)(x,{onClick:h,disabled:u.length===0,children:a(`table.index.ok`)})]})]})})}function ae({indexes:e,availableColumns:t,onChange:n}){let{t:r}=b(),[a,o]=(0,I.useState)(null),[s,l]=(0,I.useState)(!1);function u(){let e=R();o(e),l(!0)}function p(e){o({...e}),l(!0)}function m(){e.length>0&&n(e.slice(0,-1))}function g(t){e.find(e=>e.id===t.id)?n(e.map(e=>e.id===t.id?t:e)):n([...e,t]),l(!1),o(null)}function y(){l(!1),o(null)}return(0,V.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,V.jsx)(f,{className:`flex-1`,children:(0,V.jsxs)(v,{className:H+` [&_td]:px-2`,children:[(0,V.jsx)(i,{className:U,children:(0,V.jsxs)(h,{children:[(0,V.jsx)(c,{className:`w-[150px]`,children:r(`table.indexes.colName`)}),(0,V.jsx)(c,{className:`w-[120px]`,children:r(`table.indexes.colType`)}),(0,V.jsx)(c,{children:r(`table.indexes.colColumns`)})]})}),(0,V.jsx)(d,{children:e.length===0?(0,V.jsx)(h,{children:(0,V.jsx)(_,{colSpan:3,className:`text-center text-muted-foreground`,children:r(`table.indexes.empty`)})}):e.map(e=>(0,V.jsxs)(h,{className:`cursor-pointer`,onDoubleClick:()=>p(e),children:[(0,V.jsx)(_,{children:e.name}),(0,V.jsx)(_,{children:e.type}),(0,V.jsx)(_,{children:e.columns.join(`, `)})]},e.id))})]})}),(0,V.jsxs)(`div`,{className:`flex gap-2 p-2 border-t`,children:[(0,V.jsx)(x,{size:`sm`,variant:`outline`,onClick:u,children:r(`table.indexes.add`)}),(0,V.jsx)(x,{size:`sm`,variant:`outline`,onClick:m,disabled:e.length===0,children:r(`table.indexes.remove`)})]}),a&&(0,V.jsx)(q,{open:s,index:a,availableColumns:t,onSave:g,onClose:y})]})}var J=[`InnoDB`,`MyISAM`,`MEMORY`,`CSV`,`ARCHIVE`,`BLACKHOLE`,`MRG_MYISAM`,`FEDERATED`,`PERFORMANCE_SCHEMA`],Y=[`utf8mb4`,`utf8`,`latin1`,`ascii`,`binary`,`cp1251`,`euckr`,`gb2312`,`gbk`,`sjis`,`ucs2`,`utf16`,`utf32`],X={utf8mb4:[`utf8mb4_general_ci`,`utf8mb4_unicode_ci`,`utf8mb4_bin`,`utf8mb4_0900_ai_ci`],utf8:[`utf8_general_ci`,`utf8_unicode_ci`,`utf8_bin`],latin1:[`latin1_swedish_ci`,`latin1_general_ci`,`latin1_bin`],ascii:[`ascii_general_ci`,`ascii_bin`],binary:[`binary`],cp1251:[`cp1251_general_ci`,`cp1251_bin`],euckr:[`euckr_korean_ci`,`euckr_bin`],gb2312:[`gb2312_chinese_ci`,`gb2312_bin`],gbk:[`gbk_chinese_ci`,`gbk_bin`],sjis:[`sjis_japanese_ci`,`sjis_bin`],ucs2:[`ucs2_general_ci`,`ucs2_unicode_ci`,`ucs2_bin`],utf16:[`utf16_general_ci`,`utf16_unicode_ci`,`utf16_bin`],utf32:[`utf32_general_ci`,`utf32_unicode_ci`,`utf32_bin`]};function oe({properties:e,onChange:t}){let{t:n}=b();function r(n,r){let i={...e,[n]:r};n===`charset`&&(i.collation=X[r]?.[0]??``),t(i)}let i=X[e.charset]??[];return(0,V.jsxs)(`div`,{className:`p-4 space-y-4`,children:[(0,V.jsxs)(`div`,{className:`grid grid-cols-2 gap-4`,children:[(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`prop-engine`,children:n(`table.properties.engine`)}),(0,V.jsxs)(E,{value:e.engine,onValueChange:e=>r(`engine`,e),children:[(0,V.jsx)(C,{id:`prop-engine`,className:`w-full`,children:(0,V.jsx)(S,{})}),(0,V.jsx)(w,{children:J.map(e=>(0,V.jsx)(T,{value:e,children:e},e))})]})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`prop-charset`,children:n(`table.properties.charset`)}),(0,V.jsxs)(E,{value:e.charset,onValueChange:e=>r(`charset`,e),children:[(0,V.jsx)(C,{id:`prop-charset`,className:`w-full`,children:(0,V.jsx)(S,{})}),(0,V.jsx)(w,{children:Y.map(e=>(0,V.jsx)(T,{value:e,children:e},e))})]})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`prop-collation`,children:n(`table.properties.collation`)}),(0,V.jsxs)(E,{value:e.collation,onValueChange:e=>r(`collation`,e),children:[(0,V.jsx)(C,{id:`prop-collation`,className:`w-full`,children:(0,V.jsx)(S,{})}),(0,V.jsx)(w,{children:i.map(e=>(0,V.jsx)(T,{value:e,children:e},e))})]})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`prop-auto-incr`,children:n(`table.properties.autoIncrement`)}),(0,V.jsx)(m,{id:`prop-auto-incr`,type:`number`,value:e.autoIncrement,onChange:e=>r(`autoIncrement`,e.target.value),placeholder:n(`table.properties.autoIncrementPlaceholder`)})]})]}),(0,V.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,V.jsx)(p,{htmlFor:`prop-comment`,children:n(`table.properties.comment`)}),(0,V.jsx)(m,{id:`prop-comment`,value:e.comment,onChange:e=>r(`comment`,e.target.value)})]})]})}function se({connectionId:e,database:t,tableName:n,columns:r,indexes:i,properties:a}){let o=u(e=>e.themeId),s=k(e),c=o===`light`||o===`light-blue`||o===`solarized-light`?`vs`:`vs-dark`,l=(0,I.useMemo)(()=>s.ddl.createTable(B(t,n,r,i,a)),[s,t,n,r,i,a]);return(0,V.jsx)(`div`,{className:`h-[320px]`,children:(0,V.jsx)(g,{height:`100%`,language:`sql`,theme:c,value:l,options:{readOnly:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:13,lineNumbers:`on`,wordWrap:`on`}})})}function Z(e){return JSON.stringify([e.type,e.length,e.defaultValue,e.pk,e.notNull,e.unsigned,e.autoIncrement,e.zerofill,e.comment])}function Q(e){return{name:e.field,type:e.length?`${e.type}(${e.length})`:e.type,nullable:!e.notNull,key:e.pk?`PRI`:``,defaultValue:e.defaultValue===``?null:e.defaultValue,extra:e.autoIncrement?`auto_increment`:``,comment:e.comment,collation:null}}function $(e){return{name:e.name,type:e.type,columns:[...e.columns]}}function ce(e,t){return e.name===t.name&&e.type===t.type&&e.columns.join(`,`)===t.columns.join(`,`)}function le({engine:e,database:t,table:n,before:r,after:i}){let{ddl:a}=e,o=[],s=[],c=[],l=new Map(r.columns.map(e=>[e.id,e])),u=new Map(i.columns.map(e=>[e.id,e])),d=new Map(r.indexes.map(e=>[e.id,e])),f=new Map(i.indexes.map(e=>[e.id,e])),p=[];for(let[e,r]of d){let i=f.get(e);i?ce(r,i)||(o.push(a.dropIndex(t,n,r.name)),p.push(i)):o.push(a.dropIndex(t,n,r.name))}for(let[e,r]of u){let i=l.get(e);if(!i){r.field.trim()&&o.push(a.addColumn(t,n,Q(r)));continue}if(i.field!==r.field&&o.push(a.renameColumn(t,n,i.field,r.field)),Z(i)!==Z(r)){let e=a.alterColumn(t,n,Q(r));e?o.push(e):c.push(r.field)}}for(let[e,r]of l)if(!u.has(e)){let e=a.dropColumn(t,n,r.field);o.push(e),s.push(e)}for(let e of p)o.push(a.createIndex(t,n,$(e)));for(let[e,r]of f)!d.has(e)&&r.columns.length>0&&o.push(a.createIndex(t,n,$(r)));return{statements:o,destructive:s,unsupported:c}}function ue(){let{t:e}=b(),{activeDialog:r,closeDialog:i}=t(),c=n(`create-table`,`alter-table`,`duplicate-table-structure`),u=r===`create-table`||r===`alter-table`||r===`duplicate-table-structure`,d=r===`alter-table`,f=r===`duplicate-table-structure`,h=c?.nodeText??``,g=c?.metadata?.database??``,[_,v]=(0,I.useState)(``),[y,S]=(0,I.useState)([L()]),[C,w]=(0,I.useState)([]),[T,E]=(0,I.useState)(z()),[A,R]=(0,I.useState)(!1),[H,U]=(0,I.useState)(!1),[W,G]=(0,I.useState)(null),[K,q]=(0,I.useState)(null),J=c?.connectionId??D.getState().activeConnectionId,Y=k(J);(0,I.useEffect)(()=>{u&&(G(null),q(null),d||f?(v(f?`${h}_copy`:h),X()):(v(``),S([L()]),w([]),E(z())))},[u,r]);async function X(){let e=D.getState(),t=c?.connectionId??e.activeConnectionId,n=e.activeConnections.find(e=>e.id===t)?.serverConnectionId;if(!n||!g||!h)return;R(!0);let{introspect:r,capabilities:i}=O(t),a=ee(n);try{let e=await r.listColumns(a,g,h),t=[];if(e.length>0){let n=e.map(e=>{let t=e.type,n=t.match(/^(\w+)(?:\(([^)]+)\))?/);return{id:crypto.randomUUID(),field:e.name,type:n?.[1]?.toLowerCase()??t.toLowerCase(),length:n?.[2]??``,defaultValue:e.defaultValue??``,pk:e.key===`PRI`,notNull:!e.nullable,unsigned:t.includes(`unsigned`),autoIncrement:e.extra.includes(`auto_increment`),zerofill:t.includes(`zerofill`),comment:e.comment}});S(n),t=n}let n=await r.listIndexes(a,g,h),o=[];if(n.length>0&&(o=n.map(e=>({id:crypto.randomUUID(),name:e.name,type:e.type===`SPATIAL`?`INDEX`:e.type,columns:[...e.columns]})),w(o)),q({columns:t,indexes:o}),i.tableProperties){let e=await r.getTableInfo(a,g,h);e&&E({engine:e.engine??`InnoDB`,charset:(e.collation??`utf8mb4`).replace(/_.*/,``),collation:e.collation??`utf8mb4_unicode_ci`,autoIncrement:e.autoIncrement??``,comment:e.comment})}}catch(e){console.error(`Failed to load table schema:`,e),G(e instanceof Error?e.message:String(e))}finally{R(!1)}}function Z(e){e||i()}async function Q(){let t=c?.connectionId??D.getState().activeConnectionId;if(!t||!_.trim())return;let n=O(t);G(null);let r,a=[];if(d){if(!K)return;let t=le({engine:n,database:g,table:h,before:K,after:{columns:y,indexes:C}});if(t.unsupported.length>0){G(e(`table.dialog.cannotAlterColumns`,{engine:n.label,columns:t.unsupported.join(`, `)}));return}if(t.statements.length===0){i();return}r=t.statements.join(`
|
|
2
|
-
`),a=t.destructive}else{let e=f?C.map(e=>({...e,name:re(e.name,h,_.trim())})):C;r=n.ddl.createTable(B(g,_.trim(),y,e,T))}U(!0);try{await te(t,r,{skipDestructiveConfirm:a.length===0}),await ne(t,g),i()}catch(e){G(e instanceof Error?e.message:String(e))}finally{U(!1)}}let $=e(d?`table.dialog.alterTitle`:f?`table.dialog.duplicateTitle`:`table.dialog.createTitle`),ce=e(d?`table.dialog.alter`:`table.dialog.create`);return(0,V.jsx)(F,{open:u,onOpenChange:Z,children:(0,V.jsxs)(N,{className:`sm:max-w-[1000px] max-h-[80vh] flex flex-col`,children:[(0,V.jsx)(j,{children:(0,V.jsx)(P,{children:$})}),(0,V.jsxs)(`div`,{className:`space-y-3 flex-1 overflow-hidden flex flex-col min-h-0`,children:[(0,V.jsxs)(`div`,{className:`space-y-1.5 px-1`,children:[(0,V.jsx)(p,{htmlFor:`table-name`,children:e(`table.dialog.tableName`)}),(0,V.jsx)(m,{id:`table-name`,value:_,onChange:e=>v(e.target.value),placeholder:e(`table.dialog.tableNamePlaceholder`),disabled:d})]}),A?(0,V.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-muted-foreground text-sm`,children:e(`table.dialog.loading`)}):(0,V.jsxs)(l,{defaultValue:`schema`,className:`flex-1 min-h-0 flex flex-col`,children:[(0,V.jsxs)(a,{children:[(0,V.jsx)(s,{value:`schema`,children:e(`table.dialog.tabSchema`)}),(0,V.jsx)(s,{value:`indexes`,children:e(`table.dialog.tabIndexes`)}),Y.capabilities.tableProperties&&(0,V.jsx)(s,{value:`properties`,children:e(`table.dialog.tabProperties`)}),(0,V.jsx)(s,{value:`sql`,children:`SQL`})]}),(0,V.jsx)(o,{value:`schema`,className:`flex-1 min-h-0 overflow-auto border rounded-md`,children:(0,V.jsx)(ie,{columns:y,onChange:S})}),(0,V.jsx)(o,{value:`indexes`,className:`flex-1 min-h-0 overflow-auto border rounded-md`,children:(0,V.jsx)(ae,{indexes:C,availableColumns:y,onChange:w})}),(0,V.jsx)(o,{value:`properties`,className:`flex-1 min-h-0 overflow-auto border rounded-md`,children:(0,V.jsx)(oe,{properties:T,onChange:E})}),(0,V.jsx)(o,{value:`sql`,className:`flex-1 min-h-0 border rounded-md`,children:(0,V.jsx)(se,{connectionId:J,database:g,tableName:_,columns:y,indexes:C,properties:T})})]})]}),W&&(0,V.jsx)(`p`,{className:`px-1 text-xs text-destructive leading-relaxed`,children:W}),(0,V.jsxs)(M,{children:[(0,V.jsx)(x,{variant:`outline`,onClick:()=>Z(!1),children:e(`table.dialog.cancel`)}),(0,V.jsx)(x,{onClick:()=>void Q(),disabled:A||H||!_.trim(),children:H?e(`table.dialog.applying`):ce})]})]})})}export{ue as EditSchemaDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{l as r,u as i,vt as a}from"./main-BLydvBDF.js";import{i as o,l as s,m as c,t as l}from"./button--s6nUzD8.js";import{t as u}from"./chevron-up-QmvRX9Fw.js";import{t as d}from"./connection-store-N-ZwIkVg.js";import{r as f}from"./hmr-singleton-DWC1xbJ4.js";import{n as p,o as m,s as h,t as g}from"./editor-registry-DhF4Rf_I.js";var _=n(e(),1),v=s();function y(){let{t:e}=c(),{activeDialog:n,closeDialog:s}=t(),[y,b]=(0,_.useState)(``),[x,S]=(0,_.useState)(``),[C,w]=(0,_.useState)(!1),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(!1),[k,A]=(0,_.useState)(0),j=d(e=>e.activeConnectionId)??``,M=f(e=>j?e.activeTabId[j]:void 0)??``;if(n!==`find-replace`)return null;let N={query:y,caseSensitive:C,regex:T,wholeWord:D},P=j!==``&&M!==``&&y!==``;function F(){s()}function I(){A(P?p(j,M,N,`next`):0)}function L(){A(P?p(j,M,N,`prev`):0)}function R(){P&&A(h(j,M,N,x))}function z(){P&&(m(j,M,N,x),A(g(j,M,N)))}return(0,v.jsxs)(`div`,{className:`fixed top-12 right-4 z-50 bg-background border rounded-md shadow-lg p-3 w-[400px] space-y-2`,children:[(0,v.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,v.jsx)(i,{placeholder:e(`command.findReplace.findPlaceholder`),value:y,onChange:e=>b(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.shiftKey?L():I()),e.key===`Escape`&&F()},className:`flex-1 h-7 text-sm`,autoFocus:!0}),(0,v.jsx)(`span`,{className:`text-xs text-muted-foreground whitespace-nowrap min-w-[60px] text-center`,children:k>0?e(`command.findReplace.found`,{count:k}):e(`command.findReplace.noResults`)}),(0,v.jsx)(l,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0`,onClick:L,title:e(`command.findReplace.previous`),children:(0,v.jsx)(u,{className:`h-4 w-4`})}),(0,v.jsx)(l,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0`,onClick:I,title:e(`command.findReplace.next`),children:(0,v.jsx)(a,{className:`h-4 w-4`})}),(0,v.jsx)(l,{variant:`ghost`,size:`sm`,className:`h-7 w-7 p-0`,onClick:F,title:e(`command.findReplace.close`),children:(0,v.jsx)(o,{className:`h-4 w-4`})})]}),(0,v.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,v.jsx)(i,{placeholder:e(`command.findReplace.replacePlaceholder`),value:x,onChange:e=>S(e.target.value),onKeyDown:e=>{e.key===`Escape`&&F()},className:`flex-1 h-7 text-sm`}),(0,v.jsx)(l,{variant:`outline`,size:`sm`,className:`h-7 text-xs`,onClick:R,children:e(`command.findReplace.replace`)}),(0,v.jsx)(l,{variant:`outline`,size:`sm`,className:`h-7 text-xs`,onClick:z,children:e(`command.findReplace.all`)})]}),(0,v.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,v.jsxs)(r,{className:`flex items-center gap-1.5 text-xs font-normal cursor-pointer`,children:[(0,v.jsx)(`input`,{type:`checkbox`,checked:C,onChange:e=>w(e.target.checked),className:`rounded border-input`}),e(`command.findReplace.caseSensitive`)]}),(0,v.jsxs)(r,{className:`flex items-center gap-1.5 text-xs font-normal cursor-pointer`,children:[(0,v.jsx)(`input`,{type:`checkbox`,checked:T,onChange:e=>E(e.target.checked),className:`rounded border-input`}),e(`command.findReplace.regex`)]}),(0,v.jsxs)(r,{className:`flex items-center gap-1.5 text-xs font-normal cursor-pointer`,children:[(0,v.jsx)(`input`,{type:`checkbox`,checked:D,onChange:e=>O(e.target.checked),className:`rounded border-input`}),e(`command.findReplace.wholeWord`)]})]})]})}export{y as FindReplaceDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,n,t as r,v as i}from"./ui-store-DfspmPOn.js";import{A as a,X as ee,dt as te,j as o,l as s,u as ne}from"./main-BLydvBDF.js";import{l as c,m as re,t as l}from"./button--s6nUzD8.js";import{a as u,i as d,n as f,r as p,t as m}from"./select-ibmUj7AE.js";import{t as h}from"./connection-store-N-ZwIkVg.js";import{a as g}from"./database-CpQt6YGv.js";import{n as _}from"./engine-CpwlM_Ww.js";import{i as ie,l as ae}from"./query-execution-4-JHu9gp.js";import{a as oe,i as se,n as ce,o as le,r as ue,t as v}from"./dialog-CJoWJzRo.js";var y=i(t(),1),b=[`SUM`,`AVG`,`MIN`,`MAX`],x=`row_count`;function de(e,t){if(t.columns.length===0)return``;let n=t=>e.quoteIdentifier(t),r=t.columns.map(n),i=[...r,`COUNT(*) AS ${n(x)}`];if(t.aggregate){let{fn:e,column:r}=t.aggregate;i.push(`${e}(${n(r)}) AS ${n(`${e.toLowerCase()}_${r}`)}`)}let a=[];return t.where&&a.push(t.where),a.push(`GROUP BY ${r.join(`, `)}`),t.minCount&&t.minCount>1&&a.push(`HAVING COUNT(*) >= ${Math.floor(t.minCount)}`),a.push(`ORDER BY COUNT(*) DESC`),t.limit>0&&a.push(e.limitClause(t.limit)),e.getQuery(`SELECT_TABLE`,t.database,t.table,i.join(`, `),a.join(` `))}function S(e){let t=new Set;for(let n of e){let e=n.columns[0];e&&t.add(e.toLowerCase())}return t}function C(e,t){return t.has(e.toLowerCase())}function fe(e,t){let n=S(t);return e.some(e=>C(e,n))}var w=c(),T=`none`,pe=/\b(int|dec|numeric|number|float|double|real|money|serial)/i;function E(){let{t}=re(),i=n(e=>e.activeDialog),c=n(e=>e.closeDialog),x=r(`group-by`),E=i===`group-by`,D=h(e=>e.activeConnections),me=h(e=>e.activeConnectionId),he=(0,y.useMemo)(()=>D.filter(e=>e.serverConnectionId),[D]),[O,ge]=(0,y.useState)(()=>x?.connectionId??me??``),[k,A]=(0,y.useState)(()=>x?.database??``),[j,M]=(0,y.useState)(()=>x?.table??``),[N,P]=(0,y.useState)([]),[F,I]=(0,y.useState)([]),L=x&&O===x.connectionId&&k===x.database&&j===x.table?x.where??``:``,[R,_e]=(0,y.useState)([]),[z,ve]=(0,y.useState)([]),[B,V]=(0,y.useState)(()=>x?.column?[x.column]:[]),[H,ye]=(0,y.useState)(T),[U,be]=(0,y.useState)(``),[W,xe]=(0,y.useState)(`1`),[G,Se]=(0,y.useState)(!0),[K,q]=(0,y.useState)(``),[Ce,J]=(0,y.useState)(!1),Y=e=>h.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId;(0,y.useEffect)(()=>{if(!E||!O)return;let e=Y(O);if(!e)return;let t=!1;return(async()=>{try{let n=await _(O).introspect.listDatabases(g(e));if(t)return;P(n),A(e=>e&&n.includes(e)?e:n[0]??``)}catch(e){t||q(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[E,O]),(0,y.useEffect)(()=>{if(!E||!O||!k)return;let e=Y(O);if(!e)return;let t=!1;return(async()=>{try{let n=await _(O).introspect.listTables(g(e),k);if(t)return;let r=n.map(e=>e.name);I(r),M(e=>e&&r.includes(e)?e:r[0]??``)}catch(e){t||q(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[E,O,k]),(0,y.useEffect)(()=>{if(!E||!O||!j)return;let e=Y(O);if(!e)return;let t=!1;return(async()=>{let n=g(e),r=_(O).introspect;try{let[e,i]=await Promise.all([r.listColumns(n,k,j),r.listIndexes(n,k,j).catch(()=>[])]);if(t)return;_e(e),ve(i),V(t=>t.filter(t=>e.some(e=>e.name===t)))}catch(e){t||q(e instanceof Error?e.message:String(e))}})(),()=>{t=!0}},[E,O,k,j]);let we=(0,y.useMemo)(()=>S(z),[z]),Te=(0,y.useMemo)(()=>R.filter(e=>pe.test(e.type)),[R]),X=(0,y.useMemo)(()=>!O||B.length===0?``:de(_(O),{database:k,table:j,columns:B,aggregate:H!==T&&U?{fn:H,column:U}:null,where:G?L:``,minCount:Number(W)||1,limit:ae()}),[O,k,j,B,H,U,W,G,L]),Z=B.length>0&&z.length>0&&!fe(B,z);function Q(e){V(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])}function $(t){e(`group_by`,{action:t,dbms:_(O).id,columns:B.length,aggregate:H,filtered:!!(G&&L),indexed:!Z})}function Ee(){X&&($(`open`),a(O,X,k,t(`database.groupBy.tabTitle`,{table:j})),c())}async function De(){if(!X)return;$(`run`),J(!0);let e=a(O,X,k,t(`database.groupBy.tabTitle`,{table:j}));c();try{await ie(O,e)}finally{J(!1)}}return(0,w.jsx)(v,{open:E,onOpenChange:e=>{e||c()},children:(0,w.jsxs)(ce,{className:`flex max-h-[85vh] flex-col sm:max-w-[720px]`,children:[(0,w.jsxs)(oe,{children:[(0,w.jsx)(le,{children:t(`database.groupBy.title`)}),(0,w.jsx)(ue,{children:t(`database.groupBy.description`,{table:j})})]}),K&&(0,w.jsx)(`p`,{className:`rounded-md border border-destructive/40 px-3 py-2 text-xs text-destructive`,children:K}),(0,w.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,w.jsxs)(`div`,{className:`space-y-1`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.connection`)}),(0,w.jsxs)(m,{value:O,onValueChange:ge,children:[(0,w.jsx)(d,{className:`h-8 text-xs`,children:(0,w.jsx)(u,{})}),(0,w.jsx)(f,{children:he.map(e=>(0,w.jsx)(p,{value:e.id,children:e.hostName||e.host||e.file||e.id},e.id))})]})]}),(0,w.jsxs)(`div`,{className:`space-y-1`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.database`)}),(0,w.jsxs)(m,{value:k,onValueChange:A,children:[(0,w.jsx)(d,{className:`h-8 text-xs`,children:(0,w.jsx)(u,{})}),(0,w.jsx)(f,{children:N.map(e=>(0,w.jsx)(p,{value:e,children:e},e))})]})]}),(0,w.jsxs)(`div`,{className:`space-y-1`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.table`)}),(0,w.jsxs)(m,{value:j,onValueChange:M,children:[(0,w.jsx)(d,{className:`h-8 text-xs`,children:(0,w.jsx)(u,{})}),(0,w.jsx)(f,{children:F.map(e=>(0,w.jsx)(p,{value:e,children:e},e))})]})]})]}),(0,w.jsxs)(`div`,{className:`grid min-h-0 grid-cols-[1fr_1fr] gap-4`,children:[(0,w.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-1.5`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.columns`)}),(0,w.jsx)(o,{className:`h-[260px] rounded-md border`,children:(0,w.jsx)(`ul`,{className:`p-1`,children:R.map(e=>{let n=C(e.name,we);return(0,w.jsx)(`li`,{children:(0,w.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2 rounded px-2 py-1 text-xs hover:bg-accent`,children:[(0,w.jsx)(`input`,{type:`checkbox`,checked:B.includes(e.name),onChange:()=>Q(e.name)}),(0,w.jsx)(`span`,{className:`truncate font-medium`,children:e.name}),(0,w.jsx)(`span`,{className:`truncate text-muted-foreground`,children:e.type}),n&&(0,w.jsx)(te,{className:`ml-auto h-3 w-3 shrink-0 text-muted-foreground`,"aria-label":t(`database.groupBy.indexed`)})]})},e.name)})})})]}),(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.aggregate`)}),(0,w.jsxs)(`div`,{className:`flex gap-2`,children:[(0,w.jsxs)(m,{value:H,onValueChange:ye,children:[(0,w.jsx)(d,{className:`h-8 w-[110px] text-xs`,children:(0,w.jsx)(u,{})}),(0,w.jsxs)(f,{children:[(0,w.jsx)(p,{value:T,children:t(`database.groupBy.countOnly`)}),b.map(e=>(0,w.jsx)(p,{value:e,children:e},e))]})]}),(0,w.jsxs)(m,{value:U,onValueChange:be,disabled:H===T,children:[(0,w.jsx)(d,{className:`h-8 flex-1 text-xs`,children:(0,w.jsx)(u,{placeholder:t(`database.groupBy.column`)})}),(0,w.jsx)(f,{children:Te.map(e=>(0,w.jsx)(p,{value:e.name,children:e.name},e.name))})]})]})]}),(0,w.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,w.jsx)(s,{htmlFor:`gb-min`,className:`text-xs`,children:t(`database.groupBy.minCount`)}),(0,w.jsx)(ne,{id:`gb-min`,type:`number`,min:1,value:W,onChange:e=>xe(e.target.value),className:`h-8 text-xs`})]}),L&&(0,w.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,w.jsx)(`input`,{type:`checkbox`,checked:G,onChange:e=>Se(e.target.checked)}),t(`database.groupBy.useFilter`)]}),Z&&(0,w.jsxs)(`p`,{className:`flex gap-1.5 rounded-md border border-dashed px-2 py-1.5 text-xs text-muted-foreground`,children:[(0,w.jsx)(ee,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,w.jsx)(`span`,{children:t(`database.groupBy.noIndexWarning`)})]})]})]}),(0,w.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,w.jsx)(s,{className:`text-xs`,children:t(`database.groupBy.preview`)}),(0,w.jsx)(`pre`,{className:`max-h-[120px] overflow-auto rounded-md border bg-muted p-2 font-mono text-xs whitespace-pre-wrap`,children:X||t(`database.groupBy.pickColumn`)})]}),(0,w.jsxs)(se,{children:[(0,w.jsx)(l,{variant:`outline`,onClick:c,children:t(`command.close`)}),(0,w.jsx)(l,{variant:`outline`,onClick:Ee,disabled:!X,children:t(`database.groupBy.openInTab`)}),(0,w.jsx)(l,{onClick:De,disabled:!X||Ce,children:t(`database.groupBy.run`)})]})]})})}export{E as GroupByDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,n,t as ee,v as r}from"./ui-store-DfspmPOn.js";import{H as i,V as a,l as o,u as s}from"./main-BLydvBDF.js";import{l as c,m as l,t as u}from"./button--s6nUzD8.js";import{a as d,i as f,n as p,r as m,t as h}from"./select-ibmUj7AE.js";import{t as g}from"./connection-store-N-ZwIkVg.js";import{a as _}from"./database-CpQt6YGv.js";import{n as v}from"./engine-CpwlM_Ww.js";import{t as y}from"./pro-usage-VxPxjJqt.js";import{a as b,i as x,n as S,o as C,t as w}from"./dialog-CJoWJzRo.js";var T=r(t(),1),E=c(),D=e=>e instanceof Error?e.message:String(e);function O(){let{t}=l(),r=n(e=>e.activeDialog),c=n(e=>e.closeDialog),O=ee(`link-column`),k=r===`link-column`&&!!O,A=O?.connectionId??``,j=g(e=>e.activeConnections),M=j.filter(e=>e.serverConnectionId),N=i(e=>e.links),P=i(e=>e.setLink),F=i(e=>e.removeLink),I=O?a(N,A,O.database,O.table).find(e=>e.column===O.column)??null:null,[L,R]=(0,T.useState)(I?.targetConnectionId??A),z=j.find(e=>e.id===L)?.serverConnectionId,[B,V]=(0,T.useState)([]),[H,U]=(0,T.useState)([]),[W,G]=(0,T.useState)([]),[K,q]=(0,T.useState)(I?.targetDatabase??O?.database??``),[J,Y]=(0,T.useState)(I?.targetTable??``),[X,Z]=(0,T.useState)(I?.targetColumn??``),[Q,$]=(0,T.useState)(null);if((0,T.useEffect)(()=>{if(!k||!z)return;let e=!1;return(async()=>{try{let t=await v(L).introspect.listDatabases(_(z));if(e)return;V(t),q(e=>t.includes(e)?e:t[0]??``)}catch(t){e||$(D(t))}})(),()=>{e=!0}},[k,z,L]),(0,T.useEffect)(()=>{if(!k||!z||!K)return;let e=!1;return(async()=>{try{let t=await v(L).introspect.listTables(_(z),K);if(e)return;U(t.map(e=>e.name))}catch(t){e||$(D(t))}})(),()=>{e=!0}},[k,z,L,K]),(0,T.useEffect)(()=>{if(!k||!z||!K||!J)return;let e=!1;return(async()=>{try{let t=await v(L).introspect.listColumns(_(z),K,J);if(e)return;G(t.map(e=>e.name)),Z(e=>t.some(t=>t.name===e)?e:t.find(e=>e.key===`PRI`)?.name??t[0]?.name??``)}catch(t){e||$(D(t))}})(),()=>{e=!0}},[k,z,L,K,J]),!O)return null;function te(){if(!O||!K||!J||!X)return;let t=L!==A;P(A,{database:O.database,table:O.table,column:O.column,...t?{targetConnectionId:L}:{},targetDatabase:K,targetTable:J,targetColumn:X}),y(`column_link`),e(`column_link_set`,{dbms:v(A).id,target_dbms:v(L).id,cross_database:K!==O.database,cross_connection:t}),c()}function ne(){O&&(F(A,O),c())}return(0,E.jsx)(w,{open:k,onOpenChange:e=>{e||c()},children:(0,E.jsxs)(S,{className:`sm:max-w-[460px]`,children:[(0,E.jsx)(b,{children:(0,E.jsx)(C,{children:t(`result.link.title`)})}),(0,E.jsxs)(`div`,{className:`space-y-4`,children:[(0,E.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,E.jsx)(o,{children:t(`result.link.source`)}),(0,E.jsx)(s,{value:`${O.database}.${O.table}.${O.column}`,disabled:!0})]}),(0,E.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t(`result.link.hint`)}),(0,E.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,E.jsx)(o,{htmlFor:`link-conn`,children:t(`result.link.targetConnection`)}),(0,E.jsxs)(h,{value:L,onValueChange:e=>{R(e),Y(``),U([]),G([])},children:[(0,E.jsx)(f,{id:`link-conn`,className:`w-full`,children:(0,E.jsx)(d,{})}),(0,E.jsx)(p,{children:M.map(e=>(0,E.jsx)(m,{value:e.id,children:e.hostName||e.host||e.file||e.id},e.id))})]})]}),(0,E.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,E.jsx)(o,{htmlFor:`link-db`,children:t(`result.link.targetDatabase`)}),(0,E.jsxs)(h,{value:K,onValueChange:e=>{q(e),Y(``),G([])},children:[(0,E.jsx)(f,{id:`link-db`,className:`w-full`,children:(0,E.jsx)(d,{})}),(0,E.jsx)(p,{children:B.map(e=>(0,E.jsx)(m,{value:e,children:e},e))})]})]}),(0,E.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,E.jsx)(o,{htmlFor:`link-table`,children:t(`result.link.targetTable`)}),(0,E.jsxs)(h,{value:J,onValueChange:Y,disabled:H.length===0,children:[(0,E.jsx)(f,{id:`link-table`,className:`w-full`,children:(0,E.jsx)(d,{placeholder:t(`result.link.pickTable`)})}),(0,E.jsx)(p,{children:H.map(e=>(0,E.jsx)(m,{value:e,children:e},e))})]})]}),(0,E.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,E.jsx)(o,{htmlFor:`link-column`,children:t(`result.link.targetColumn`)}),(0,E.jsxs)(h,{value:X,onValueChange:Z,disabled:W.length===0,children:[(0,E.jsx)(f,{id:`link-column`,className:`w-full`,children:(0,E.jsx)(d,{placeholder:t(`result.link.pickColumn`)})}),(0,E.jsx)(p,{children:W.map(e=>(0,E.jsx)(m,{value:e,children:e},e))})]})]}),Q&&(0,E.jsx)(`p`,{className:`text-xs text-destructive`,children:Q})]}),(0,E.jsxs)(x,{children:[I&&(0,E.jsx)(u,{variant:`destructive`,onClick:ne,className:`mr-auto`,children:t(`result.link.remove`)}),(0,E.jsx)(u,{variant:`outline`,onClick:c,children:t(`result.link.cancel`)}),(0,E.jsx)(u,{onClick:te,disabled:!K||!J||!X,children:t(`result.link.save`)})]})]})})}export{O as LinkColumnDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,i as n,n as r,v as i}from"./ui-store-DfspmPOn.js";import{A as a,Tt as o,U as s,Z as c,j as ee,rt as l,u}from"./main-BLydvBDF.js";import{l as d,m as f,t as p}from"./button--s6nUzD8.js";import{n as m}from"./settings-store-WUA0-UcP.js";import{i as h,t as g}from"./connection-store-N-ZwIkVg.js";import{n as _,r as v}from"./hmr-singleton-DWC1xbJ4.js";import{a as y,i as b,n as x,o as S,r as C,t as w}from"./dialog-CJoWJzRo.js";var T=i(t(),1),E=d(),D={execute:`command.localHistory.reason.execute`,edit:`command.localHistory.reason.edit`,replaced:`command.localHistory.reason.replaced`,restore:`command.localHistory.reason.restore`,close:`command.localHistory.reason.close`},O=Object.freeze([]);function k(e){let t=(Date.now()-e)/36e5;return t<1?`<1h`:t<24?`1-24h`:t<168?`1-7d`:`7d+`}function A(){let{t}=f(),i=r(e=>e.activeDialog),d=r(e=>e.closeDialog),A=r(e=>e.setFooterMessage),j=g(e=>e.activeConnectionId),M=v(e=>j?e.activeTabId[j]:null),N=v(e=>j?e.tabs[j]??_:_),P=h(e=>j?e.revisions[j]??O:O),F=m(e=>e.persistQueryHistory),I=s(e=>e.themeId),L=I===`light`||I===`light-blue`||I===`solarized-light`?`vs`:`vs-dark`,[R,z]=(0,T.useState)(!0),[B,V]=(0,T.useState)(``),[H,U]=(0,T.useState)(null),[W,G]=(0,T.useState)(`current`),K=N.find(e=>e.id===M),q=i===`local-history`;(0,T.useEffect)(()=>{if(!q)return;let t=M?P.filter(e=>e.docId===M).length:0;e(`local_history_open`,{revisions:n(P.length),tab_revisions:n(t)})},[q]);let J=(0,T.useMemo)(()=>{let e=B.trim().toLowerCase();return P.filter(t=>R&&M&&t.docId!==M?!1:!e||t.text.toLowerCase().includes(e)||t.title.toLowerCase().includes(e))},[P,B,R,M]),Y=K?.query??``,X=J.find(e=>e.id===H)??J.find(e=>e.text!==Y)??J[0],Z=(0,T.useMemo)(()=>{if(!X)return;let e=P.filter(e=>e.docId===X.docId);return e[e.findIndex(e=>e.id===X.id)+1]},[P,X]),Q=W===`current`?Y:Z?.text??``;function $(t,n){e(`local_history_recover`,{action:t,reason:n.reason,age:k(n.timestamp),same_tab:n.docId===M,compare:W})}function te(){if(!j||!M||!X)return;$(`restore`,X);let e=v.getState();e.captureRevision(j,M,`restore`),e.setEditorContent(j,M,X.text),A(t(`command.localHistory.restored`)),d()}function ne(){!j||!X||($(`new_tab`,X),a(j,X.text,X.database,X.title),A(t(`command.localHistory.openedInTab`)),d())}function re(e){j&&(h.getState().removeRevision(j,e.id),H===e.id&&U(null))}function ie(){j&&(h.getState().clearRevisions(j),U(null))}return(0,E.jsx)(w,{open:q,onOpenChange:e=>{e||d()},children:(0,E.jsxs)(x,{className:`flex max-h-[85vh] flex-col sm:max-w-[1000px]`,children:[(0,E.jsxs)(y,{children:[(0,E.jsx)(S,{children:t(`command.localHistory.title`)}),(0,E.jsx)(C,{children:t(`command.localHistory.description`)})]}),!F&&(0,E.jsx)(`p`,{className:`rounded-md border border-dashed px-3 py-2 text-xs text-muted-foreground`,children:t(`command.localHistory.notPersisted`)}),(0,E.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,E.jsxs)(`div`,{className:`relative min-w-[200px] flex-1`,children:[(0,E.jsx)(l,{className:`absolute left-2 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground`}),(0,E.jsx)(u,{value:B,onChange:e=>V(e.target.value),placeholder:t(`command.localHistory.searchPlaceholder`),className:`h-8 pl-7 text-xs`})]}),(0,E.jsxs)(`div`,{className:`flex overflow-hidden rounded-md border`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>z(!0),className:`px-2 py-1 text-xs ${R?`bg-accent`:`hover:bg-accent/50`}`,children:t(`command.localHistory.scopeTab`)}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>z(!1),className:`border-l px-2 py-1 text-xs ${R?`hover:bg-accent/50`:`bg-accent`}`,children:t(`command.localHistory.scopeAll`)})]}),(0,E.jsxs)(`div`,{className:`flex overflow-hidden rounded-md border`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>G(`current`),className:`px-2 py-1 text-xs ${W===`current`?`bg-accent`:`hover:bg-accent/50`}`,children:t(`command.localHistory.compareCurrent`)}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>G(`previous`),className:`border-l px-2 py-1 text-xs ${W===`previous`?`bg-accent`:`hover:bg-accent/50`}`,children:t(`command.localHistory.comparePrevious`)})]})]}),J.length===0?(0,E.jsx)(`div`,{className:`py-10 text-center text-sm text-muted-foreground`,children:P.length===0?t(`command.localHistory.empty`):t(`command.localHistory.noMatch`)}):(0,E.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-[260px_1fr] gap-3`,children:[(0,E.jsx)(ee,{className:`h-[440px] rounded-md border`,children:(0,E.jsx)(`ul`,{className:`divide-y`,children:J.map(e=>(0,E.jsxs)(`li`,{className:`group relative`,children:[(0,E.jsxs)(`button`,{type:`button`,onClick:()=>U(e.id),className:`flex w-full flex-col items-start gap-0.5 px-3 py-2 pr-8 text-left text-xs hover:bg-accent ${e.id===X?.id?`bg-accent`:``}`,children:[(0,E.jsx)(`span`,{className:`font-medium`,children:new Date(e.timestamp).toLocaleString()}),(0,E.jsxs)(`span`,{className:`w-full truncate text-muted-foreground`,children:[e.title,` · `,t(D[e.reason]),` · `,t(`command.localHistory.chars`,{count:e.text.length})]})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>re(e),title:t(`command.localHistory.delete`),className:`absolute right-1.5 top-1.5 rounded p-1 text-muted-foreground opacity-0 hover:bg-destructive/10 hover:text-destructive group-hover:opacity-100`,children:(0,E.jsx)(c,{className:`h-3.5 w-3.5`})})]},e.id))})}),(0,E.jsxs)(`div`,{className:`flex h-[440px] flex-col overflow-hidden rounded-md border`,children:[(0,E.jsx)(`div`,{className:`border-b bg-muted/40 px-3 py-1.5 text-xs text-muted-foreground`,children:W===`current`?t(`command.localHistory.diffAgainstCurrent`):Z?t(`command.localHistory.diffAgainstPrevious`,{time:new Date(Z.timestamp).toLocaleString()}):t(`command.localHistory.noPrevious`)}),(0,E.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,E.jsx)(o,{language:`sql`,theme:L,original:X?.text??``,modified:Q,options:{readOnly:!0,renderSideBySide:!1,minimap:{enabled:!1},scrollBeyondLastLine:!1,fontSize:12,renderOverviewRuler:!1}})})]})]}),(0,E.jsxs)(b,{className:`sm:justify-between`,children:[(0,E.jsx)(p,{variant:`ghost`,onClick:ie,disabled:P.length===0,children:t(`command.localHistory.clearAll`)}),(0,E.jsxs)(`div`,{className:`flex gap-2`,children:[(0,E.jsx)(p,{variant:`outline`,onClick:d,children:t(`command.close`)}),(0,E.jsx)(p,{variant:`outline`,onClick:ne,disabled:!X,children:t(`command.localHistory.openInNewTab`)}),(0,E.jsx)(p,{onClick:te,disabled:!X||!K,children:t(`command.localHistory.restore`)})]})]})]})})}export{A as LocalHistoryDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{C as r,Ct as i,S as a,St as o,b as s,it as ee,mt as te,rt as ne,w as c,x as l,xt as re,y as u,yt as ie}from"./main-BLydvBDF.js";import{a as d,i as ae,l as f,m as oe,t as p}from"./button--s6nUzD8.js";import{a as m}from"./i18n-57fo5jb0.js";import{t as h}from"./connection-store-N-ZwIkVg.js";import{c as g}from"./database-CpQt6YGv.js";import{t as _}from"./engine-CpwlM_Ww.js";import{a as se,i as v,n as y,o as b,t as ce}from"./dialog-CJoWJzRo.js";var le=d(`list-ordered`,[[`path`,{d:`M11 5h10`,key:`1cz7ny`}],[`path`,{d:`M11 12h10`,key:`1438ji`}],[`path`,{d:`M11 19h10`,key:`11t30w`}],[`path`,{d:`M4 4h1v5`,key:`10yrso`}],[`path`,{d:`M4 9h2`,key:`r1h2o0`}],[`path`,{d:`M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02`,key:`xtkcd5`}]]),ue=d(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),x=d(`skull`,[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]),de=d(`timer`,[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]),S=n(e(),1),C=f(),w=10,fe=[2,5,10,30];function T(){let e=h.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function pe(){let e=T();if(!e)throw Error(m.t(`command.noActiveConnection`));let t=await g(e,_().getQuery(`SHOW_PROCESS_LIST`));return t.records.map(e=>{let n={};return t.fields.forEach((t,r)=>{n[t.name]=e[r]}),{...n,Id:String(n.Id)}})}function E(e){return/^(sleep|idle)/i.test(e.Command??``)}function me(e){return/lock/i.test(e.State??``)}function he(e){return/PROCESSLIST|pg_stat_activity/i.test(e.Info??``)}function D(e){let t=Number(e.Time);return Number.isFinite(t)?t:0}function O(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m ${e%60}s`:`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`}function k({icon:e,label:t,value:n,tone:r}){return(0,C.jsxs)(`div`,{className:`flex min-w-[120px] flex-1 items-center gap-2.5 rounded-md border bg-muted/30 px-3 py-1.5`,children:[(0,C.jsx)(`div`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md [&_svg]:size-3.5 ${r===`warn`?`bg-catppuccin-yellow/15 text-catppuccin-yellow`:`bg-primary/10 text-primary`}`,children:e}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`div`,{className:`text-[10px] font-medium uppercase tracking-wide text-muted-foreground`,children:t}),(0,C.jsx)(`div`,{className:`truncate text-sm font-semibold tabular-nums`,children:n})]})]})}function A(){let{t:e}=oe(),{activeDialog:n,closeDialog:d,setFooterMessage:f,requestDestructiveConfirm:m}=t(),[h,A]=(0,S.useState)([]),[j,M]=(0,S.useState)(!1),[N,P]=(0,S.useState)(5),[F,I]=(0,S.useState)(null),[L,R]=(0,S.useState)(``),[z,ge]=(0,S.useState)(!1),[B,_e]=(0,S.useState)(!0),[V,H]=(0,S.useState)(!1),[U,ve]=(0,S.useState)(null),[W,G]=(0,S.useState)(!1),K=(0,S.useRef)(null),q=n===`process-list`,J=(0,S.useCallback)(()=>Promise.resolve().then(()=>(H(!0),pe())).then(e=>{A(e),ve(new Date)}).catch(t=>f(e(`command.processList.loadError`,{message:t instanceof Error?t.message:String(t)}))).finally(()=>H(!1)),[f,e]);(0,S.useEffect)(()=>{q&&J()},[q,J]),(0,S.useEffect)(()=>(K.current&&=(clearInterval(K.current),null),j&&q&&(K.current=setInterval(()=>{J()},N*1e3)),()=>{K.current&&=(clearInterval(K.current),null)}),[j,N,q,J]);function Y(e){e||(M(!1),I(null),R(``),d())}let X=(0,S.useMemo)(()=>{let e=h.filter(E).length,t=h.filter(e=>!E(e)).reduce((e,t)=>Math.max(e,D(t)),0);return{total:h.length,active:h.length-e,idle:e,longest:t}},[h]),Z=(0,S.useMemo)(()=>{let e=L.trim().toLowerCase();return h.filter(t=>z&&E(t)?!1:!e||[t.Id,t.User,t.Host,t.db,t.Command,t.State,t.Info].some(t=>(t??``).toString().toLowerCase().includes(e))).sort((e,t)=>B?D(t)-D(e):D(e)-D(t))},[h,L,z,B]),Q=h.find(e=>e.Id===F)??null,ye=(0,S.useCallback)(()=>{Q?.Info&&navigator.clipboard.writeText(Q.Info).then(()=>{G(!0),setTimeout(()=>G(!1),1500)})},[Q]);async function $(t){let n=t??F;if(!n){f(e(`command.processList.selectToKill`));return}let r=T();if(!r)return;let i=h.find(e=>e.Id===n),a=_().getQuery(`KILL_QUERY`,String(n));if(await m({title:e(`command.processList.killConfirmTitle`,{id:n}),description:e(`command.processList.killConfirmDescription`,{user:i?.User??`?`,host:i?.Host??`?`}),confirmLabel:e(`command.processList.killProcess`),statements:[a]}))try{await g(r,a),f(e(`command.processList.killed`,{id:n})),F===n&&I(null),J()}catch(t){f(e(`command.processList.killError`,{message:t instanceof Error?t.message:String(t)}))}}return(0,C.jsx)(ce,{open:q,onOpenChange:Y,children:(0,C.jsxs)(y,{className:`flex max-h-[85vh] flex-col sm:max-w-[1000px]`,children:[(0,C.jsx)(se,{children:(0,C.jsxs)(b,{className:`flex items-center gap-2`,children:[e(`command.processList.title`),U&&(0,C.jsx)(`span`,{className:`text-xs font-normal text-muted-foreground`,children:e(`command.processList.updatedAt`,{time:U.toLocaleTimeString(void 0,{hour12:!1})})})]})}),(0,C.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,C.jsx)(k,{icon:(0,C.jsx)(le,{}),label:e(`command.processList.stats.total`),value:X.total}),(0,C.jsx)(k,{icon:(0,C.jsx)(i,{}),label:e(`command.processList.stats.active`),value:X.active}),(0,C.jsx)(k,{icon:(0,C.jsx)(ue,{}),label:e(`command.processList.stats.idle`),value:X.idle}),(0,C.jsx)(k,{icon:(0,C.jsx)(de,{}),label:e(`command.processList.stats.longest`),value:O(X.longest),tone:X.longest>=w?`warn`:void 0})]}),(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsxs)(`div`,{className:`relative`,children:[(0,C.jsx)(ne,{className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground`}),(0,C.jsx)(`input`,{className:`h-7 w-56 rounded border bg-background pl-7 pr-6 text-xs placeholder:text-muted-foreground`,placeholder:e(`command.processList.filterPlaceholder`),value:L,onChange:e=>R(e.target.value)}),L&&(0,C.jsx)(`button`,{type:`button`,className:`absolute right-1.5 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground`,onClick:()=>R(``),children:(0,C.jsx)(ae,{className:`size-3`})})]}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:z,onChange:e=>ge(e.target.checked)}),e(`command.processList.hideIdle`)]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-1.5 text-xs`,children:[(0,C.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:j,onChange:e=>M(e.target.checked)}),e(`command.processList.autoRefresh`)]}),(0,C.jsx)(`select`,{className:`h-7 rounded border bg-background px-1.5 text-xs disabled:opacity-50`,value:N,onChange:e=>P(Number(e.target.value)),disabled:!j,children:fe.map(e=>(0,C.jsxs)(`option`,{value:e,children:[e,`s`]},e))}),(0,C.jsxs)(p,{variant:`outline`,size:`sm`,className:`h-7`,onClick:()=>{J()},disabled:V,children:[(0,C.jsx)(ee,{className:`mr-1 size-3.5 ${V?`animate-spin`:``}`}),e(`command.processList.refresh`)]})]}),(0,C.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto rounded-md border`,children:(0,C.jsxs)(u,{className:`text-xs`,children:[(0,C.jsx)(r,{className:`sticky top-0 z-10 bg-background`,children:(0,C.jsxs)(c,{children:[(0,C.jsx)(a,{className:`w-[70px]`,children:e(`command.processList.columns.id`)}),(0,C.jsx)(a,{className:`w-[100px]`,children:e(`command.processList.columns.user`)}),(0,C.jsx)(a,{className:`w-[130px]`,children:e(`command.processList.columns.host`)}),(0,C.jsx)(a,{className:`w-[100px]`,children:e(`command.processList.columns.db`)}),(0,C.jsx)(a,{className:`w-[90px]`,children:e(`command.processList.columns.command`)}),(0,C.jsx)(a,{className:`w-[80px] cursor-pointer select-none`,onClick:()=>_e(e=>!e),children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[e(`command.processList.columns.time`),B?(0,C.jsx)(o,{className:`size-3 text-primary`}):(0,C.jsx)(re,{className:`size-3 text-primary`})]})}),(0,C.jsx)(a,{className:`w-[130px]`,children:e(`command.processList.columns.state`)}),(0,C.jsx)(a,{children:e(`command.processList.columns.info`)}),(0,C.jsx)(a,{className:`w-[50px]`})]})}),(0,C.jsx)(s,{children:Z.length===0?(0,C.jsx)(c,{children:(0,C.jsx)(l,{colSpan:9,className:`py-8 text-center text-muted-foreground`,children:h.length===0?e(`command.processList.empty`):e(`command.processList.noMatch`)})}):Z.map(t=>{let n=E(t),r=D(t),i=!n&&r>=w,a=me(t),o=he(t);return(0,C.jsxs)(c,{"data-state":F===t.Id?`selected`:void 0,className:`cursor-pointer ${n?`text-muted-foreground`:``} ${a?`bg-destructive/5`:i?`bg-catppuccin-yellow/5`:``}`,onClick:()=>I(t.Id),children:[(0,C.jsx)(l,{className:`font-mono tabular-nums`,children:(0,C.jsxs)(`span`,{className:`flex items-center gap-1`,children:[t.Id,o&&(0,C.jsx)(`span`,{className:`rounded bg-primary/10 px-1 text-[9px] font-semibold text-primary`,title:e(`command.processList.selfHint`),children:e(`command.processList.self`)})]})}),(0,C.jsx)(l,{children:t.User}),(0,C.jsx)(l,{className:`font-mono`,children:t.Host}),(0,C.jsx)(l,{className:`font-mono`,children:t.db??``}),(0,C.jsx)(l,{children:(0,C.jsx)(`span`,{className:`rounded px-1.5 py-px text-[10px] font-medium ${n?`bg-muted`:`bg-green-500/10 text-green-600 dark:text-green-400`}`,children:t.Command})}),(0,C.jsx)(l,{className:`tabular-nums ${i?`font-semibold text-catppuccin-yellow`:``}`,children:O(r)}),(0,C.jsx)(l,{className:a?`font-medium text-destructive`:``,children:t.State}),(0,C.jsx)(l,{className:`max-w-[260px] truncate font-mono`,title:t.Info??``,children:t.Info??``}),(0,C.jsx)(l,{className:`text-right`,children:(0,C.jsx)(`button`,{type:`button`,className:`rounded p-1 text-muted-foreground hover:bg-destructive/10 hover:text-destructive`,title:e(`command.processList.kill`),onClick:e=>{e.stopPropagation(),$(t.Id)},children:(0,C.jsx)(x,{className:`size-3.5`})})})]},t.Id)})})]})}),Q&&(0,C.jsxs)(`div`,{className:`shrink-0 rounded-md border`,children:[(0,C.jsxs)(`div`,{className:`flex items-center gap-2 border-b bg-muted/30 px-3 py-1`,children:[(0,C.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wide text-muted-foreground`,children:e(`command.processList.statementOf`,{id:Q.Id})}),(0,C.jsxs)(`span`,{className:`text-[10px] text-muted-foreground`,children:[Q.User,`@`,Q.Host,Q.db?` · ${Q.db}`:``]}),(0,C.jsx)(`div`,{className:`flex-1`}),(0,C.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-40`,onClick:ye,disabled:!Q.Info,children:[W?(0,C.jsx)(ie,{className:`size-3`}):(0,C.jsx)(te,{className:`size-3`}),e(W?`command.processList.copied`:`command.processList.copy`)]})]}),(0,C.jsx)(`pre`,{className:`max-h-32 overflow-auto whitespace-pre-wrap break-words px-3 py-2 font-mono text-xs`,children:Q.Info||(0,C.jsx)(`span`,{className:`italic text-muted-foreground`,children:e(`command.processList.noStatement`)})})]}),(0,C.jsxs)(v,{children:[(0,C.jsx)(p,{variant:`destructive`,onClick:()=>{$()},disabled:!F,children:e(`command.processList.killProcess`)}),(0,C.jsx)(p,{variant:`outline`,onClick:()=>Y(!1),children:e(`command.close`)})]})]})})}export{A as ProcessListDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,n,v as r}from"./ui-store-DfspmPOn.js";import{$ as i,B as a,Ct as o,F as s,G as c,J as l,K as u,L as d,Q as f,U as p,W as m,Y as ee,at as h,ct as g,et as te,ft as ne,it as _,mt as v,ot as y,pt as b,q as x,rt as S,st as C,tt as w,ut as T,yt as E,z as D}from"./main-BLydvBDF.js";import{a as O,f as k,l as A,m as re,o as j,s as M}from"./button--s6nUzD8.js";import{r as N,t as ie}from"./i18n-57fo5jb0.js";import{_ as P,a as ae,o as oe,r as se,t as ce}from"./dist-CBYDYlja.js";import{n as le,r as ue}from"./settings-store-WUA0-UcP.js";import{t as F}from"./connection-store-N-ZwIkVg.js";import{n as de,r as fe}from"./hmr-singleton-DWC1xbJ4.js";import{n as pe,t as me}from"./database-CpQt6YGv.js";import{r as he,s as ge}from"./query-execution-4-JHu9gp.js";import{t as _e}from"./use-engine-B9GBHTL_.js";import{a as ve,n as I,o as L,r as R,t as ye}from"./dialog-CJoWJzRo.js";var be=O(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),xe=O(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),Se=O(`corner-down-left`,[[`path`,{d:`M20 4v7a4 4 0 0 1-4 4H4`,key:`6o5b7l`}],[`path`,{d:`m9 10-5 5 5 5`,key:`1kshq7`}]]),Ce=O(`database-zap`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 15 21.84`,key:`14ibmq`}],[`path`,{d:`M21 5V8`,key:`1marbg`}],[`path`,{d:`M21 12L18 17H22L19 22`,key:`zafso`}],[`path`,{d:`M3 12A9 3 0 0 0 14.59 14.87`,key:`1y4wr8`}]]),we=O(`file-code`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),Te=O(`file-spreadsheet`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M8 13h2`,key:`yr2amv`}],[`path`,{d:`M14 13h2`,key:`un5t4a`}],[`path`,{d:`M8 17h2`,key:`2yhykz`}],[`path`,{d:`M14 17h2`,key:`10kma7`}]]),Ee=O(`git-compare`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]),De=O(`git-compare-arrows`,[[`circle`,{cx:`5`,cy:`6`,r:`3`,key:`1qnov2`}],[`path`,{d:`M12 6h5a2 2 0 0 1 2 2v7`,key:`1yj91y`}],[`path`,{d:`m15 9-3-3 3-3`,key:`1lwv8l`}],[`circle`,{cx:`19`,cy:`18`,r:`3`,key:`1qljk2`}],[`path`,{d:`M12 18H7a2 2 0 0 1-2-2V9`,key:`16sdep`}],[`path`,{d:`m9 15 3 3-3 3`,key:`1m3kbl`}]]),Oe=O(`history`,[[`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`}],[`path`,{d:`M12 7v5l4 2`,key:`1fdv2h`}]]),ke=O(`languages`,[[`path`,{d:`m5 8 6 6`,key:`1wu5hv`}],[`path`,{d:`m4 14 6-6 2-3`,key:`1k1g8d`}],[`path`,{d:`M2 5h12`,key:`or177f`}],[`path`,{d:`M7 2h1`,key:`1t2jsx`}],[`path`,{d:`m22 22-5-10-5 10`,key:`don7ne`}],[`path`,{d:`M14 18h6`,key:`1m8k6r`}]]),Ae=O(`network`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),je=O(`plug`,[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]),Me=O(`replace`,[[`path`,{d:`M14 4a1 1 0 0 1 1-1`,key:`dhj8ez`}],[`path`,{d:`M15 10a1 1 0 0 1-1-1`,key:`1mnyi5`}],[`path`,{d:`M21 4a1 1 0 0 0-1-1`,key:`sfs9ap`}],[`path`,{d:`M21 9a1 1 0 0 1-1 1`,key:`mp6qeo`}],[`path`,{d:`m3 7 3 3 3-3`,key:`x25e72`}],[`path`,{d:`M6 10V5a2 2 0 0 1 2-2h2`,key:`15xut4`}],[`rect`,{x:`3`,y:`14`,width:`7`,height:`7`,rx:`1`,key:`1bkyp8`}]]),Ne=O(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),Pe=O(`scale`,[[`path`,{d:`M12 3v18`,key:`108xh3`}],[`path`,{d:`m19 8 3 8a5 5 0 0 1-6 0zV7`,key:`zcdpyk`}],[`path`,{d:`M3 7h1a17 17 0 0 0 8-2 17 17 0 0 0 8 2h1`,key:`1yorad`}],[`path`,{d:`m5 8 3 8a5 5 0 0 1-6 0zV7`,key:`eua70x`}],[`path`,{d:`M7 21h10`,key:`1b0cd5`}]]),Fe=O(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),Ie=O(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),Le=O(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),Re=O(`waypoints`,[[`path`,{d:`m10.586 5.414-5.172 5.172`,key:`4mc350`}],[`path`,{d:`m18.586 13.414-5.172 5.172`,key:`8c96vv`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`circle`,{cx:`12`,cy:`20`,r:`2`,key:`144qzu`}],[`circle`,{cx:`12`,cy:`4`,r:`2`,key:`muu5ef`}],[`circle`,{cx:`20`,cy:`12`,r:`2`,key:`1xzzfp`}],[`circle`,{cx:`4`,cy:`12`,r:`2`,key:`1hvhnz`}]]),ze=O(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),z=r(t(),1),Be=1,Ve=.9,He=.8,Ue=.17,B=.1,V=.999,We=.9999,H=.99,U=/[\\\/_+.#"@\[\(\{&]/,Ge=/[\\\/_+.#"@\[\(\{&]/g,Ke=/[\s-]/,qe=/[\s-]/g;function W(e,t,n,r,i,a,o){if(a===t.length)return i===e.length?Be:H;var s=`${i},${a}`;if(o[s]!==void 0)return o[s];for(var c=r.charAt(a),l=n.indexOf(c,i),u=0,d,f,p,m;l>=0;)d=W(e,t,n,r,l+1,a+1,o),d>u&&(l===i?d*=Be:U.test(e.charAt(l-1))?(d*=He,p=e.slice(i,l-1).match(Ge),p&&i>0&&(d*=V**+p.length)):Ke.test(e.charAt(l-1))?(d*=Ve,m=e.slice(i,l-1).match(qe),m&&i>0&&(d*=V**+m.length)):(d*=Ue,i>0&&(d*=V**+(l-i))),e.charAt(l)!==t.charAt(a)&&(d*=We)),(d<B&&n.charAt(l-1)===r.charAt(a+1)||r.charAt(a+1)===r.charAt(a)&&n.charAt(l-1)!==r.charAt(a))&&(f=W(e,t,n,r,l+1,a+2,o),f*B>d&&(d=f*B)),d>u&&(u=d),l=n.indexOf(c,l+1);return o[s]=u,u}function Je(e){return e.toLowerCase().replace(qe,` `)}function Ye(e,t,n){return e=n&&n.length>0?`${e+` `+n.join(` `)}`:e,W(e,t,Je(e),Je(t),0,0,{})}var G=`[cmdk-group=""]`,Xe=`[cmdk-group-items=""]`,Ze=`[cmdk-group-heading=""]`,Qe=`[cmdk-item=""]`,$e=`${Qe}:not([aria-disabled="true"])`,et=`cmdk-item-select`,K=`data-value`,tt=(e,t,n)=>Ye(e,t,n),nt=z.createContext(void 0),q=()=>z.useContext(nt),rt=z.createContext(void 0),it=()=>z.useContext(rt),at=z.createContext(void 0),ot=z.forwardRef((e,t)=>{let n=X(()=>({search:``,value:e.value??e.defaultValue??``,selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}})),r=X(()=>new Set),i=X(()=>new Map),a=X(()=>new Map),o=X(()=>new Set),s=_t(e),{label:c,children:l,value:u,onValueChange:d,filter:f,shouldFilter:p,loop:m,disablePointerSelection:ee=!1,vimBindings:h=!0,...g}=e,te=P(),ne=P(),_=P(),v=z.useRef(null),y=yt();Y(()=>{if(u!==void 0){let e=u.trim();n.current.value=e,b.emit()}},[u]),Y(()=>{y(6,E)},[]);let b=z.useMemo(()=>({subscribe:e=>(o.current.add(e),()=>o.current.delete(e)),snapshot:()=>n.current,setState:(e,t,r)=>{var i,a,o;if(!Object.is(n.current[e],t)){if(n.current[e]=t,e===`search`)T(),C(),y(1,w);else if(e===`value`){if(document.activeElement.hasAttribute(`cmdk-input`)||document.activeElement.hasAttribute(`cmdk-root`)){let e=document.getElementById(_);e?e.focus():(i=document.getElementById(te))==null||i.focus()}if(y(7,()=>{n.current.selectedItemId=D()?.id,b.emit()}),r||y(5,E),s.current?.value!==void 0){let e=t??``;(o=(a=s.current).onValueChange)==null||o.call(a,e);return}}b.emit()}},emit:()=>{o.current.forEach(e=>e())}}),[]),x=z.useMemo(()=>({value:(e,t,r)=>{t!==a.current.get(e)?.value&&(a.current.set(e,{value:t,keywords:r}),n.current.filtered.items.set(e,S(t,r)),y(2,()=>{C(),b.emit()}))},item:(e,t)=>(r.current.add(e),t&&(i.current.has(t)?i.current.get(t).add(e):i.current.set(t,new Set([e]))),y(3,()=>{T(),C(),n.current.value||w(),b.emit()}),()=>{a.current.delete(e),r.current.delete(e),n.current.filtered.items.delete(e);let t=D();y(4,()=>{T(),t?.getAttribute(`id`)===e&&w(),b.emit()})}),group:e=>(i.current.has(e)||i.current.set(e,new Set),()=>{a.current.delete(e),i.current.delete(e)}),filter:()=>s.current.shouldFilter,label:c||e[`aria-label`],getDisablePointerSelection:()=>s.current.disablePointerSelection,listId:te,inputId:_,labelId:ne,listInnerRef:v}),[]);function S(e,t){let r=s.current?.filter??tt;return e?r(e,n.current.search,t):0}function C(){if(!n.current.search||s.current.shouldFilter===!1)return;let e=n.current.filtered.items,t=[];n.current.filtered.groups.forEach(n=>{let r=i.current.get(n),a=0;r.forEach(t=>{let n=e.get(t);a=Math.max(n,a)}),t.push([n,a])});let r=v.current;O().sort((t,n)=>{let r=t.getAttribute(`id`),i=n.getAttribute(`id`);return(e.get(i)??0)-(e.get(r)??0)}).forEach(e=>{let t=e.closest(Xe);t?t.appendChild(e.parentElement===t?e:e.closest(`${Xe} > *`)):r.appendChild(e.parentElement===r?e:e.closest(`${Xe} > *`))}),t.sort((e,t)=>t[1]-e[1]).forEach(e=>{let t=v.current?.querySelector(`${G}[${K}="${encodeURIComponent(e[0])}"]`);t?.parentElement.appendChild(t)})}function w(){let e=O().find(e=>e.getAttribute(`aria-disabled`)!==`true`)?.getAttribute(K);b.setState(`value`,e||void 0)}function T(){if(!n.current.search||s.current.shouldFilter===!1){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let t of r.current){let r=S(a.current.get(t)?.value??``,a.current.get(t)?.keywords??[]);n.current.filtered.items.set(t,r),r>0&&e++}for(let[e,t]of i.current)for(let r of t)if(n.current.filtered.items.get(r)>0){n.current.filtered.groups.add(e);break}n.current.filtered.count=e}function E(){var e;let t=D();t&&(t.parentElement?.firstChild===t&&((e=t.closest(G)?.querySelector(Ze))==null||e.scrollIntoView({block:`nearest`})),t.scrollIntoView({block:`nearest`}))}function D(){return v.current?.querySelector(`${Qe}[aria-selected="true"]`)}function O(){return Array.from(v.current?.querySelectorAll($e)||[])}function k(e){let t=O()[e];t&&b.setState(`value`,t.getAttribute(K))}function A(e){var t;let n=D(),r=O(),i=r.findIndex(e=>e===n),a=r[i+e];(t=s.current)!=null&&t.loop&&(a=i+e<0?r[r.length-1]:i+e===r.length?r[0]:r[i+e]),a&&b.setState(`value`,a.getAttribute(K))}function re(e){let t=D()?.closest(G),n;for(;t&&!n;)t=e>0?ht(t,G):gt(t,G),n=t?.querySelector($e);n?b.setState(`value`,n.getAttribute(K)):A(e)}let j=()=>k(O().length-1),N=e=>{e.preventDefault(),e.metaKey?j():e.altKey?re(1):A(1)},ie=e=>{e.preventDefault(),e.metaKey?k(0):e.altKey?re(-1):A(-1)};return z.createElement(M.div,{ref:t,tabIndex:-1,...g,"cmdk-root":``,onKeyDown:e=>{var t;(t=g.onKeyDown)==null||t.call(g,e);let n=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||n))switch(e.key){case`n`:case`j`:h&&e.ctrlKey&&N(e);break;case`ArrowDown`:N(e);break;case`p`:case`k`:h&&e.ctrlKey&&ie(e);break;case`ArrowUp`:ie(e);break;case`Home`:e.preventDefault(),k(0);break;case`End`:e.preventDefault(),j();break;case`Enter`:{e.preventDefault();let t=D();if(t){let e=new Event(et);t.dispatchEvent(e)}}}}},z.createElement(`label`,{"cmdk-label":``,htmlFor:x.inputId,id:x.labelId,style:xt},c),Q(e,e=>z.createElement(rt.Provider,{value:b},z.createElement(nt.Provider,{value:x},e))))}),st=z.forwardRef((e,t)=>{let n=P(),r=z.useRef(null),i=z.useContext(at),a=q(),o=_t(e),s=o.current?.forceMount??i?.forceMount;Y(()=>{if(!s)return a.item(n,i?.id)},[s]);let c=vt(n,r,[e.value,e.children,r],e.keywords),l=it(),u=Z(e=>e.value&&e.value===c.current),d=Z(e=>s||a.filter()===!1?!0:!e.search||e.filtered.items.get(n)>0);z.useEffect(()=>{let t=r.current;if(!(!t||e.disabled))return t.addEventListener(et,f),()=>t.removeEventListener(et,f)},[d,e.onSelect,e.disabled]);function f(){var e,t;p(),(t=(e=o.current).onSelect)==null||t.call(e,c.current)}function p(){l.setState(`value`,c.current,!0)}if(!d)return null;let{disabled:m,value:ee,onSelect:h,forceMount:g,keywords:te,...ne}=e;return z.createElement(M.div,{ref:k(r,t),...ne,id:n,"cmdk-item":``,role:`option`,"aria-disabled":!!m,"aria-selected":!!u,"data-disabled":!!m,"data-selected":!!u,onPointerMove:m||a.getDisablePointerSelection()?void 0:p,onClick:m?void 0:f},e.children)}),ct=z.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:i,...a}=e,o=P(),s=z.useRef(null),c=z.useRef(null),l=P(),u=q(),d=Z(e=>i||u.filter()===!1?!0:!e.search||e.filtered.groups.has(o));Y(()=>u.group(o),[]),vt(o,s,[e.value,e.heading,c]);let f=z.useMemo(()=>({id:o,forceMount:i}),[i]);return z.createElement(M.div,{ref:k(s,t),...a,"cmdk-group":``,role:`presentation`,hidden:!d||void 0},n&&z.createElement(`div`,{ref:c,"cmdk-group-heading":``,"aria-hidden":!0,id:l},n),Q(e,e=>z.createElement(`div`,{"cmdk-group-items":``,role:`group`,"aria-labelledby":n?l:void 0},z.createElement(at.Provider,{value:f},e))))}),lt=z.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,i=z.useRef(null),a=Z(e=>!e.search);return!n&&!a?null:z.createElement(M.div,{ref:k(i,t),...r,"cmdk-separator":``,role:`separator`})}),ut=z.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,i=e.value!=null,a=it(),o=Z(e=>e.search),s=Z(e=>e.selectedItemId),c=q();return z.useEffect(()=>{e.value!=null&&a.setState(`search`,e.value)},[e.value]),z.createElement(M.input,{ref:t,...r,"cmdk-input":``,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,"aria-autocomplete":`list`,role:`combobox`,"aria-expanded":!0,"aria-controls":c.listId,"aria-labelledby":c.labelId,"aria-activedescendant":s,id:c.inputId,type:`text`,value:i?e.value:o,onChange:e=>{i||a.setState(`search`,e.target.value),n?.(e.target.value)}})}),dt=z.forwardRef((e,t)=>{let{children:n,label:r=`Suggestions`,...i}=e,a=z.useRef(null),o=z.useRef(null),s=Z(e=>e.selectedItemId),c=q();return z.useEffect(()=>{if(o.current&&a.current){let e=o.current,t=a.current,n,r=new ResizeObserver(()=>{n=requestAnimationFrame(()=>{let n=e.offsetHeight;t.style.setProperty(`--cmdk-list-height`,n.toFixed(1)+`px`)})});return r.observe(e),()=>{cancelAnimationFrame(n),r.unobserve(e)}}},[]),z.createElement(M.div,{ref:k(a,t),...i,"cmdk-list":``,role:`listbox`,tabIndex:-1,"aria-activedescendant":s,"aria-label":r,id:c.listId},Q(e,e=>z.createElement(`div`,{ref:k(o,c.listInnerRef),"cmdk-list-sizer":``},e)))}),ft=z.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:i,contentClassName:a,container:o,...s}=e;return z.createElement(ce,{open:n,onOpenChange:r},z.createElement(oe,{container:o},z.createElement(ae,{"cmdk-overlay":``,className:i}),z.createElement(se,{"aria-label":e.label,"cmdk-dialog":``,className:a},z.createElement(ot,{ref:t,...s}))))}),pt=z.forwardRef((e,t)=>Z(e=>e.filtered.count===0)?z.createElement(M.div,{ref:t,...e,"cmdk-empty":``,role:`presentation`}):null),mt=z.forwardRef((e,t)=>{let{progress:n,children:r,label:i=`Loading...`,...a}=e;return z.createElement(M.div,{ref:t,...a,"cmdk-loading":``,role:`progressbar`,"aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":i},Q(e,e=>z.createElement(`div`,{"aria-hidden":!0},e)))}),J=Object.assign(ot,{List:dt,Item:st,Input:ut,Group:ct,Separator:lt,Dialog:ft,Empty:pt,Loading:mt});function ht(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function gt(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function _t(e){let t=z.useRef(e);return Y(()=>{t.current=e}),t}var Y=typeof window>`u`?z.useEffect:z.useLayoutEffect;function X(e){let t=z.useRef();return t.current===void 0&&(t.current=e()),t}function Z(e){let t=it(),n=()=>e(t.snapshot());return z.useSyncExternalStore(t.subscribe,n,n)}function vt(e,t,n,r=[]){let i=z.useRef(),a=q();return Y(()=>{var o;let s=(()=>{for(let e of n){if(typeof e==`string`)return e.trim();if(typeof e==`object`&&`current`in e)return e.current?e.current.textContent?.trim():i.current}})(),c=r.map(e=>e.trim());a.value(e,s,c),(o=t.current)==null||o.setAttribute(K,s),i.current=s}),i}var yt=()=>{let[e,t]=z.useState(),n=X(()=>new Map);return Y(()=>{n.current.forEach(e=>e()),n.current=new Map},[e]),(e,r)=>{n.current.set(e,r),t({})}};function bt(e){let t=e.type;return typeof t==`function`?t(e.props):`render`in t?t.render(e.props):e}function Q({asChild:e,children:t},n){return e&&z.isValidElement(t)?z.cloneElement(bt(t),{ref:t.ref},n(t.props.children)):n(t)}var xt={position:`absolute`,width:`1px`,height:`1px`,padding:`0`,margin:`-1px`,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,borderWidth:`0`},$=A();function St({className:e,...t}){return(0,$.jsx)(J,{"data-slot":`command`,className:j(`flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground`,e),...t})}function Ct({title:e=`Command Palette`,description:t=`Search for a command to run...`,children:n,className:r,showCloseButton:i=!0,...a}){return(0,$.jsxs)(ye,{...a,children:[(0,$.jsxs)(ve,{className:`sr-only`,children:[(0,$.jsx)(L,{children:e}),(0,$.jsx)(R,{children:t})]}),(0,$.jsx)(I,{className:j(`overflow-hidden p-0`,r),showCloseButton:i,children:(0,$.jsx)(St,{className:`**:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5`,children:n})})]})}function wt({className:e,...t}){return(0,$.jsxs)(`div`,{"data-slot":`command-input-wrapper`,className:`flex h-9 items-center gap-2 border-b px-3`,children:[(0,$.jsx)(S,{className:`size-4 shrink-0 opacity-50`}),(0,$.jsx)(J.Input,{"data-slot":`command-input`,className:j(`flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,e),...t})]})}function Tt({className:e,...t}){return(0,$.jsx)(J.List,{"data-slot":`command-list`,className:j(`max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto`,e),...t})}function Et({...e}){return(0,$.jsx)(J.Empty,{"data-slot":`command-empty`,className:`py-6 text-center text-sm`,...e})}function Dt({className:e,...t}){return(0,$.jsx)(J.Group,{"data-slot":`command-group`,className:j(`overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground`,e),...t})}function Ot({className:e,...t}){return(0,$.jsx)(J.Item,{"data-slot":`command-item`,className:j(`relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground`,e),...t})}function kt({className:e,...t}){return(0,$.jsx)(`span`,{"data-slot":`command-shortcut`,className:j(`ml-auto text-xs tracking-widest text-muted-foreground`,e),...t})}var At={sky:`text-catppuccin-sky`,blue:`text-catppuccin-blue`,green:`text-catppuccin-green`,teal:`text-catppuccin-teal`,mauve:`text-catppuccin-mauve`,lavender:`text-catppuccin-lavender`,peach:`text-catppuccin-peach`,yellow:`text-catppuccin-yellow`,red:`text-catppuccin-red`};function jt({theme:e}){let{background:t,blue:n,mauve:r,green:i}=e.colors;return(0,$.jsx)(`span`,{className:`flex size-5 shrink-0 overflow-hidden rounded-sm border border-catppuccin-surface2`,children:[t,n,r,i].map((e,t)=>(0,$.jsx)(`span`,{className:`flex-1`,style:{backgroundColor:e}},t))})}function Mt(){let{t}=re(),{activeDialog:r,closeDialog:S,openDialog:O}=n(),k=n(e=>e.setWelcomeVisible),A=n(e=>e.setFooterMessage),{executeCurrentQuery:M,executeCurrentStatement:P,executeWholeScript:ae,addNewQueryTab:oe,disconnectActive:se}=u(),{capabilities:ce}=_e(),ve=ue(),I=F(e=>e.activeConnections.find(t=>t.id===e.activeConnectionId)),L=F(e=>e.activeConnectionId?e.transactionOpen[e.activeConnectionId]??!1:!1),R=F(e=>e.updateProfile),ye=p(e=>e.themeId),Be=p(e=>e.setTheme),Ve=le(e=>e.locale),He=le(e=>e.setLocale),Ue=r===`quick-command`,B=I!==void 0,V=fe(e=>{let t=F.getState().activeConnectionId;if(!t)return!1;let n=e.activeTabId[t];return(e.tabs[t]??de).find(e=>e.id===n)?.isExecuting??!1});async function We(){let e=F.getState().activeConnectionId;if(!e)return;let t=pe(await me(e));t&&n.getState().setFooterMessage(t)}let H=(0,z.useCallback)(e=>{S(),e()},[S]),U=(0,z.useCallback)(e=>A(e instanceof Error?e.message:String(e)),[A]),Ge=()=>{let t=F.getState().activeConnectionId;t&&(c.getState().openERD(t),e(`erd_open`),fe.getState().setActiveQueryTab(t,`erd`))},Ke=[{heading:t(`palette.groups.connection`),commands:[{id:`connect`,label:t(`palette.commands.connect`),icon:je,tone:`sky`,shortcut:`Alt+N`,keywords:[`connect`,`server`,`profile`,`login`],disabled:!ve,action:()=>H(()=>O(`connect`))},{id:`disconnect`,label:t(`palette.commands.disconnect`),icon:l,tone:`red`,keywords:[`disconnect`,`close`],disabled:!B,action:()=>H(()=>{se()})},{id:`read-only`,label:t(`menu.connection.readOnly`),icon:g,tone:`yellow`,keywords:[`read only`,`safety`,`guard`],disabled:!B,checked:I?.readOnly===!0,action:()=>H(()=>{I&&R(I.id,{readOnly:!I.readOnly})})},{id:`manual-transactions`,capability:`transactions`,label:t(`menu.connection.manualTransactions`),icon:T,tone:`lavender`,keywords:[`transaction`,`manual`,`autocommit`],disabled:!B,checked:I?.transactionMode===`manual`,action:()=>H(()=>{I&&R(I.id,{transactionMode:I.transactionMode===`manual`?`auto`:`manual`})})},{id:`commit`,capability:`transactions`,label:t(`toolbar.commit`),icon:E,tone:`green`,keywords:[`commit`,`transaction`],disabled:!L||!I,action:()=>H(()=>{I&&he(I.id).catch(U)})},{id:`rollback`,capability:`transactions`,label:t(`toolbar.rollback`),icon:ee,tone:`peach`,keywords:[`rollback`,`transaction`,`undo`],disabled:!L||!I,action:()=>H(()=>{I&&ge(I.id).catch(U)})}]},{heading:t(`palette.groups.query`),commands:[{id:`execute`,label:t(`palette.commands.executeQuery`),icon:y,tone:`green`,shortcut:`F9`,keywords:[`run`,`execute`,`sql`],disabled:!B,action:()=>H(()=>{M()})},{id:`stop-query`,label:t(`result.running.stop`),icon:te,tone:`red`,keywords:[`stop`,`cancel`,`abort`,`kill`],disabled:!V,action:()=>H(()=>{We()})},{id:`execute-statement`,label:t(`menu.query.executeStatementAtCursor`),icon:Se,tone:`green`,shortcut:`Ctrl+Enter`,keywords:[`run`,`statement`,`cursor`],disabled:!B,action:()=>H(()=>{P()})},{id:`execute-script`,label:t(`menu.query.executeWholeScript`),icon:Fe,tone:`teal`,shortcut:`Ctrl+Shift+Enter`,keywords:[`run`,`script`,`batch`],disabled:!B,action:()=>H(()=>{ae()})},{id:`new-tab`,label:t(`palette.commands.newQueryTab`),icon:h,tone:`blue`,shortcut:`Alt+T`,keywords:[`new`,`tab`,`editor`],disabled:!B,action:()=>H(()=>oe())},{id:`find-replace`,label:t(`menu.query.findReplace`),icon:Me,tone:`lavender`,keywords:[`find`,`replace`,`search`],disabled:!B,action:()=>H(()=>O(`find-replace`))},{id:`local-history`,label:t(`menu.query.localHistory`),icon:Oe,tone:`mauve`,keywords:[`history`,`snapshot`,`undo`],disabled:!B,action:()=>H(()=>O(`local-history`))}]},{heading:t(`palette.groups.database`),commands:[{id:`create-db`,capability:`multipleDatabases`,label:t(`palette.commands.createDatabase`),icon:b,tone:`blue`,keywords:[`create`,`database`,`schema`],disabled:!B,action:()=>H(()=>O(`create-database`))},{id:`alter-db`,capability:`multipleDatabases`,label:t(`menu.database.alter`),icon:Ce,tone:`blue`,keywords:[`alter`,`database`,`charset`],disabled:!B,action:()=>H(()=>O(`alter-database`))},{id:`copy-db`,capability:`multipleDatabases`,label:t(`menu.database.copy`),icon:v,tone:`sky`,keywords:[`copy`,`clone`,`database`],disabled:!B,action:()=>H(()=>O(`copy-database`))},{id:`schema-diff`,label:t(`menu.database.compare`),icon:Ee,tone:`mauve`,keywords:[`compare`,`diff`,`schema`,`sync`],pro:!0,disabled:!B,action:()=>H(()=>O(`schema-diff`))},{id:`data-diff`,label:t(`menu.database.compareData`),icon:De,tone:`mauve`,keywords:[`compare`,`diff`,`data`,`rows`],pro:!0,disabled:!B,action:()=>H(()=>O(`data-diff`))},{id:`group-by`,label:t(`menu.database.groupBy`),icon:w,tone:`mauve`,keywords:[`group`,`count`,`aggregate`,`distinct`,`summary`],disabled:!B,action:()=>H(()=>O(`group-by`))}]},{heading:t(`palette.groups.table`),commands:[{id:`create-table`,label:t(`palette.commands.createTable`),icon:i,tone:`green`,keywords:[`create`,`table`],disabled:!B,action:()=>H(()=>O(`create-table`))},{id:`alter-table`,label:t(`palette.commands.alterTable`),icon:ze,tone:`yellow`,keywords:[`alter`,`table`,`column`],disabled:!B,action:()=>H(()=>O(`alter-table`))},{id:`duplicate-table`,label:t(`menu.table.duplicateStructure`),icon:xe,tone:`teal`,keywords:[`duplicate`,`structure`,`table`],disabled:!B,action:()=>H(()=>O(`duplicate-table-structure`))}]},{heading:t(`menu.export.title`),commands:[{id:`export-csv`,label:t(`menu.export.csv`),icon:Te,tone:`green`,keywords:[`export`,`csv`,`excel`],disabled:!B,action:()=>H(()=>O(`export-csv`))},{id:`export-html`,label:t(`menu.export.schemaHtml`),icon:we,tone:`peach`,keywords:[`export`,`html`,`schema`,`documentation`],disabled:!B,action:()=>H(()=>O(`export-html`))}]},{heading:t(`palette.groups.tools`),commands:[{id:`process-list`,capability:`processList`,label:t(`palette.commands.processList`),icon:o,tone:`red`,keywords:[`process`,`kill`,`connections`],disabled:!B,action:()=>H(()=>O(`process-list`))},{id:`variables`,capability:`variables`,label:t(`palette.commands.serverVariables`),icon:Ie,tone:`lavender`,keywords:[`variables`,`server`,`settings`],disabled:!B,action:()=>H(()=>O(`variables`))},{id:`status`,capability:`status`,label:t(`palette.commands.serverStatus`),icon:f,tone:`teal`,keywords:[`status`,`server`,`metrics`],disabled:!B,action:()=>H(()=>O(`status`))},{id:`flush`,capability:`flush`,label:t(`palette.commands.flush`),icon:_,tone:`peach`,keywords:[`flush`,`cache`,`reload`],disabled:!B,action:()=>H(()=>O(`flush`))},{id:`user-manager`,capability:`users`,label:t(`palette.commands.userManager`),icon:x,tone:`blue`,keywords:[`users`,`grants`,`privileges`],disabled:!B,action:()=>H(()=>O(`user-manager`))},{id:`scratchpad`,label:t(`menu.tools.scratchpad`),icon:C,tone:`yellow`,keywords:[`scratchpad`,`sqlite`,`local`],pro:!0,action:()=>H(()=>{a().catch(U)})},{id:`federated`,label:t(`menu.tools.federated`),icon:Re,tone:`mauve`,keywords:[`federated`,`cross`,`join`,`connections`],pro:!0,action:()=>H(()=>{d().catch(U)})},{id:`erd`,label:t(`menu.tools.viewErd`),icon:Ae,tone:`sky`,keywords:[`erd`,`diagram`,`relations`],disabled:!B,action:()=>H(Ge)}]},{heading:t(`menu.settings.theme`),commands:m().map(e=>({id:`theme-${e.id}`,label:e.name,tone:`lavender`,keywords:[`theme`,`color`,`appearance`,`dark`,`light`,e.id],checked:ye===e.id,swatch:e,action:()=>H(()=>Be(e.id))}))},{heading:t(`menu.settings.language`),commands:[`auto`,...ie].map(e=>({id:`locale-${e}`,label:e===`auto`?t(`language.auto`,{name:t(`language.${N()}`)}):t(`language.${e}`),icon:ke,tone:`teal`,keywords:[`language`,`locale`,`i18n`,e],checked:Ve===e,action:()=>H(()=>He(e))}))},{heading:t(`menu.settings.title`),commands:[{id:`safety-settings`,label:t(`menu.settings.safety`),icon:Le,tone:`yellow`,keywords:[`safety`,`settings`,`row limit`,`preferences`],action:()=>H(()=>O(`safety-settings`))}]},{heading:t(`menu.help.title`),commands:[{id:`documentation`,label:t(`menu.help.documentation`),icon:be,tone:`blue`,keywords:[`docs`,`documentation`,`manual`,`help`],action:()=>H(()=>{window.open(D(),`_blank`,`noopener,noreferrer`)})},{id:`getting-started`,label:t(`menu.help.gettingStarted`),icon:Ne,tone:`green`,keywords:[`welcome`,`onboarding`,`sample`,`getting started`],action:()=>H(()=>k(!0))},{id:`terms`,label:t(`menu.help.terms`),icon:Pe,tone:`peach`,keywords:[`terms`,`privacy`,`legal`],action:()=>H(()=>O(`terms`))},{id:`about`,label:t(`menu.help.about`),icon:ne,tone:`sky`,keywords:[`about`,`version`,`agent`],action:()=>H(()=>O(`about`))}]}];function qe(e){e||S()}let W=Ke.map(e=>({...e,commands:e.commands.filter(e=>!e.capability||ce[e.capability])})).filter(e=>e.commands.length>0);return(0,$.jsxs)(Ct,{open:Ue,onOpenChange:qe,title:t(`palette.title`),description:t(`palette.description`),children:[(0,$.jsx)(wt,{placeholder:t(`palette.inputPlaceholder`)}),(0,$.jsxs)(Tt,{className:`max-h-[60vh]`,children:[(0,$.jsx)(Et,{children:t(`palette.empty`)}),W.map(e=>(0,$.jsx)(Dt,{heading:e.heading,children:e.commands.map(t=>(0,$.jsxs)(Ot,{value:`${e.heading} ${t.label}`,keywords:t.keywords,disabled:t.disabled,onSelect:t.action,children:[t.swatch?(0,$.jsx)(jt,{theme:t.swatch}):t.icon?(0,$.jsx)(t.icon,{className:j(`size-4`,At[t.tone])}):null,(0,$.jsx)(`span`,{className:`truncate`,children:t.label}),(0,$.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:[t.pro&&(0,$.jsx)(s,{className:`ml-0`}),t.checked&&(0,$.jsx)(E,{className:`size-3.5 text-catppuccin-green`}),t.shortcut&&(0,$.jsx)(kt,{className:`ml-0`,children:t.shortcut})]})]},t.id))},e.heading))]})]})}export{Mt as QuickCommandPalette};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,t as n,v as r}from"./ui-store-DfspmPOn.js";import{bt as i,dt as a,f as o,gt as s,h as c,ht as l,lt as u,m as d,p as f}from"./main-BLydvBDF.js";import{a as p,l as m,m as h,t as g}from"./button--s6nUzD8.js";import{n as _}from"./settings-store-WUA0-UcP.js";import{t as v}from"./connection-store-N-ZwIkVg.js";import{a as y}from"./database-CpQt6YGv.js";import{c as b,t as x}from"./query-execution-4-JHu9gp.js";import{n as S}from"./use-engine-B9GBHTL_.js";import{a as C,i as w,n as T,o as E,r as D,t as ee}from"./dialog-CJoWJzRo.js";var O=p(`wand-sparkles`,[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]]),k=r(e(),1);function A(e){let t=e.slice(e.indexOf(`(`)+1,e.lastIndexOf(`)`)),n=[],r=/'((?:[^']|'')*)'/g,i;for(;i=r.exec(t);)n.push(i[1].replaceAll(`''`,`'`));return n}function j(e,t={}){let{oracleDate:n=!1}=t,r=e.type.trim(),i=r.toLowerCase(),a=/\bunsigned\b/.test(i);if(/^enum\(/.test(i))return{kind:`enum`,options:A(r)};if(/^set\(/.test(i))return{kind:`set`,options:A(r)};if(/^(tinyint\(1\)|bool|boolean|bit\(1\)|bit)(?![\w(])/.test(i))return{kind:`boolean`};let o=/^number(?:\((\d+|\*)(?:,\s*(-?\d+))?\))?$/.exec(i);if(o)return o[2]&&Number(o[2])>0?{kind:`decimal`}:o[1]?{kind:`integer`}:{kind:`decimal`};if(/^(tinyint|smallint|mediumint|int|integer|bigint|int2|int4|int8|serial|bigserial|smallserial)\b/.test(i))return{kind:`integer`,unsigned:a};if(/^(decimal|numeric|float|double|real|money|float4|float8|double precision)\b/.test(i))return{kind:`decimal`,unsigned:a};if(/^(datetime2|datetime|timestamp|smalldatetime|datetimeoffset)\b/.test(i))return{kind:`datetime`};if(/^date\b/.test(i))return{kind:n?`datetime`:`date`};if(/^(time|timetz)\b/.test(i))return{kind:`time`};if(/^(json|jsonb)\b/.test(i))return{kind:`json`};if(/^(uuid|uniqueidentifier)\b/.test(i))return{kind:`uuid`};if(/^(blob|tinyblob|mediumblob|longblob|binary|varbinary|bytea|raw|image|bfile)\b/.test(i))return{kind:`binary`};if(/^(text|ntext|tinytext|mediumtext|longtext|clob|nclob|long)\b/.test(i)||/^n?(?:var)?char2?\(max\)/.test(i))return{kind:`text`};let s=/^n?(?:var)?char2?(?:acter)?(?:\s+varying)?\((\d+)(?:\s+(?:char|byte))?\)/.exec(i);return s?{kind:`string`,maxLength:Number(s[1])}:{kind:`string`}}var M=/auto_increment|identity|generated/i;function N(e){return M.test(e.extra)||/^(serial|bigserial|smallserial)\b/i.test(e.type)?{mode:`auto`,text:``}:e.defaultValue===null?e.nullable?{mode:`null`,text:``}:{mode:`value`,text:``}:{mode:`default`,text:``}}function P(e){return e==null?{mode:`keep`,text:``}:{mode:`keep`,text:F(e)}}function F(e){if(e==null)return``;if(typeof e==`object`){if(ArrayBuffer.isView(e))return``;if(e instanceof Date)return e.toISOString();try{return JSON.stringify(e,null,2)}catch{return String(e)}}return String(e)}function I(e,t){let n=t.trim();switch(e.kind){case`integer`:{if(!/^[+-]?\d+$/.test(n))return{error:`integer`};if(e.unsigned&&n.startsWith(`-`))return{error:`unsigned`};let t=Number(n);return{value:Number.isSafeInteger(t)?t:BigInt(n)}}case`decimal`:return n===``||Number.isNaN(Number(n))?{error:`number`}:{value:Number(n)};case`boolean`:return{value:n===`true`||n===`1`};case`json`:try{return{value:JSON.parse(n===``?`null`:n)}}catch{return{error:`json`}}case`set`:return{value:n};case`date`:return n&&!/^\d{4}-\d{2}-\d{2}$/.test(n)?{error:`date`}:{value:n};case`datetime`:return n&&!/^\d{4}-\d{2}-\d{2}([ T]\d{2}:\d{2}(:\d{2}(\.\d+)?)?)?([+-]\d{2}:?\d{2}|Z)?$/.test(n)?{error:`datetime`}:{value:n};case`time`:return n&&!/^-?\d{1,3}:\d{2}(:\d{2}(\.\d+)?)?$/.test(n)?{error:`time`}:{value:n};default:return{value:t}}}var L=m(),R={integer:`result.rowForm.invalid.integer`,unsigned:`result.rowForm.invalid.unsigned`,number:`result.rowForm.invalid.number`,json:`result.rowForm.invalid.json`,date:`result.rowForm.invalid.date`,datetime:`result.rowForm.invalid.datetime`,time:`result.rowForm.invalid.time`};function z(e){return String(e).padStart(2,`0`)}function B(e){let t=new Date,n=`${t.getFullYear()}-${z(t.getMonth()+1)}-${z(t.getDate())}`,r=`${z(t.getHours())}:${z(t.getMinutes())}:${z(t.getSeconds())}`;return e===`date`?n:e===`time`?r:`${n} ${r}`}function V(e){let t=/^(\d{4})-(\d{2})-(\d{2})/.exec(e.trim());if(!t)return;let n=new Date(Number(t[1]),Number(t[2])-1,Number(t[3]));return Number.isNaN(n.getTime())?void 0:n}function H({spec:e,state:t,disabled:n,onText:r}){let{t:a}=h(),s=`w-full rounded border bg-background px-2 py-1 text-sm font-mono outline-none focus:ring-1 focus:ring-primary disabled:opacity-50`;switch(e.kind){case`boolean`:return(0,L.jsxs)(`select`,{className:s,value:t.text===`true`||t.text===`1`?`true`:`false`,onChange:e=>r(e.target.value),disabled:n,children:[(0,L.jsx)(`option`,{value:`true`,children:`TRUE`}),(0,L.jsx)(`option`,{value:`false`,children:`FALSE`})]});case`enum`:return(0,L.jsxs)(`select`,{className:s,value:t.text,onChange:e=>r(e.target.value),disabled:n,children:[!e.options?.includes(t.text)&&(0,L.jsx)(`option`,{value:t.text,children:t.text||`—`}),e.options?.map(e=>(0,L.jsx)(`option`,{value:e,children:e},e))]});case`set`:{let i=new Set(t.text.split(`,`).map(e=>e.trim()).filter(Boolean));return(0,L.jsx)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1 rounded border bg-background px-2 py-1.5`,children:e.options?.map(t=>(0,L.jsxs)(`label`,{className:`flex items-center gap-1 text-xs font-mono`,children:[(0,L.jsx)(`input`,{type:`checkbox`,className:`accent-primary`,checked:i.has(t),disabled:n,onChange:n=>{let a=new Set(i);n.target.checked?a.add(t):a.delete(t),r(e.options.filter(e=>a.has(e)).join(`,`))}}),t]},t))})}case`integer`:case`decimal`:return(0,L.jsx)(`input`,{className:`${s} tabular-nums`,inputMode:`decimal`,value:t.text,onChange:e=>r(e.target.value),disabled:n,placeholder:e.kind===`integer`?`0`:`0.00`});case`date`:case`datetime`:{let[u,p]=t.text.trim().split(/[ T]/);return(0,L.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,L.jsx)(`input`,{className:`${s} flex-1`,value:t.text,onChange:e=>r(e.target.value),disabled:n,placeholder:e.kind===`date`?`YYYY-MM-DD`:`YYYY-MM-DD HH:MM:SS`}),(0,L.jsxs)(f,{children:[(0,L.jsx)(c,{asChild:!0,children:(0,L.jsx)(`button`,{type:`button`,className:`rounded border bg-background p-1.5 text-muted-foreground hover:text-foreground disabled:opacity-50`,disabled:n,title:a(`result.rowForm.pickDate`),children:(0,L.jsx)(i,{className:`size-3.5`})})}),(0,L.jsx)(d,{className:`w-auto p-0`,align:`end`,children:(0,L.jsx)(o,{mode:`single`,selected:V(u??``),defaultMonth:V(u??``),onSelect:t=>{if(!t)return;let n=`${t.getFullYear()}-${z(t.getMonth()+1)}-${z(t.getDate())}`;r(e.kind===`date`?n:`${n} ${p||`00:00:00`}`)}})})]}),(0,L.jsx)(`button`,{type:`button`,className:`rounded border bg-background px-1.5 py-1 text-[10px] text-muted-foreground hover:text-foreground disabled:opacity-50`,disabled:n,onClick:()=>r(B(e.kind)),title:a(`result.rowForm.now`),children:(0,L.jsx)(l,{className:`size-3.5`})})]})}case`time`:return(0,L.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,L.jsx)(`input`,{className:`${s} flex-1`,value:t.text,onChange:e=>r(e.target.value),disabled:n,placeholder:`HH:MM:SS`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded border bg-background px-1.5 py-1 text-muted-foreground hover:text-foreground disabled:opacity-50`,disabled:n,onClick:()=>r(B(`time`)),title:a(`result.rowForm.now`),children:(0,L.jsx)(l,{className:`size-3.5`})})]});case`json`:{let e=!0;try{t.text.trim()&&JSON.parse(t.text)}catch{e=!1}return(0,L.jsxs)(`div`,{className:`space-y-1`,children:[(0,L.jsx)(`textarea`,{className:`${s} min-h-[96px] resize-y text-xs ${e?``:`border-destructive`}`,value:t.text,onChange:e=>r(e.target.value),disabled:n,spellCheck:!1,placeholder:`{}`}),(0,L.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,L.jsxs)(`button`,{type:`button`,className:`flex items-center gap-1 rounded border bg-background px-1.5 py-0.5 text-[10px] text-muted-foreground hover:text-foreground disabled:opacity-50`,disabled:n||!e||!t.text.trim(),onClick:()=>{try{r(JSON.stringify(JSON.parse(t.text),null,2))}catch{}},children:[(0,L.jsx)(O,{className:`size-3`}),a(`result.rowForm.formatJson`)]}),!e&&(0,L.jsx)(`span`,{className:`text-[10px] text-destructive`,children:a(`result.rowForm.invalid.json`)})]})]})}case`text`:return(0,L.jsx)(`textarea`,{className:`${s} min-h-[72px] resize-y`,value:t.text,onChange:e=>r(e.target.value),disabled:n,spellCheck:!1});case`binary`:return(0,L.jsx)(`div`,{className:`rounded border bg-muted/40 px-2 py-1 text-xs italic text-muted-foreground`,children:a(`result.rowForm.binaryUnsupported`)});case`uuid`:return(0,L.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,L.jsx)(`input`,{className:`${s} flex-1`,value:t.text,onChange:e=>r(e.target.value),disabled:n,placeholder:`00000000-0000-0000-0000-000000000000`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded border bg-background px-1.5 py-1 text-muted-foreground hover:text-foreground disabled:opacity-50`,disabled:n,onClick:()=>r(crypto.randomUUID()),title:a(`result.rowForm.generateUuid`),children:(0,L.jsx)(O,{className:`size-3.5`})})]});default:{let i=t.text.length>80||t.text.includes(`
|
|
2
|
-
`);return(0,L.jsxs)(`div`,{className:`space-y-0.5`,children:[i?(0,L.jsx)(`textarea`,{className:`${s} min-h-[56px] resize-y`,value:t.text,onChange:e=>r(e.target.value),disabled:n,spellCheck:!1}):(0,L.jsx)(`input`,{className:s,value:t.text,onChange:e=>r(e.target.value),disabled:n,maxLength:e.maxLength}),e.maxLength&&(0,L.jsxs)(`div`,{className:`text-right text-[10px] tabular-nums ${t.text.length>e.maxLength?`text-destructive`:`text-muted-foreground`}`,children:[t.text.length,`/`,e.maxLength]})]})}}}function U(){let{t:e}=h(),r=n(`row-form`),i=t(e=>e.closeDialog),o=t(e=>e.setFooterMessage),c=S(r?.connectionId??``),l=v(e=>r?e.transactionOpen[r.connectionId]:!1),[d,f]=(0,k.useState)(null),[p,m]=(0,k.useState)(null),[O,A]=(0,k.useState)({}),[M,F]=(0,k.useState)({}),[z,B]=(0,k.useState)(null),[V,U]=(0,k.useState)(!1),W=r?.mode===`edit`;(0,k.useEffect)(()=>{if(!r)return;let e=!1,t=y(r.serverConnectionId);return c.introspect.listColumns(t,r.database,r.table).then(t=>{if(e)return;f(t);let n={};for(let e of t)if(r.mode===`edit`){let t=r.fields.find(t=>t.orgName===e.name);n[e.name]=P(t?r.row?.[t.name]:void 0)}else n[e.name]=N(e);A(n)}).catch(t=>{e||m(t instanceof Error?t.message:String(t))}),()=>{e=!0}},[r?.serverConnectionId,r?.database,r?.table,r?.mode]);let G=(0,k.useMemo)(()=>new Map((d??[]).map(e=>[e.name,j(e,{oracleDate:c.id===`oracle`})])),[d,c.id]),K=(0,k.useCallback)((e,t)=>{A(n=>({...n,[e]:{...n[e],mode:t}})),F(t=>{let n={...t};return delete n[e],n})},[]),q=(0,k.useCallback)((e,t)=>{A(n=>({...n,[e]:{mode:`value`,text:t}})),F(t=>{let n={...t};return delete n[e],n})},[]),J=(0,k.useMemo)(()=>({__default:!0}),[]),Y=(0,k.useCallback)(()=>{if(!d)return null;let t=new Map,n={};for(let r of d){let i=O[r.name],a=G.get(r.name);if(!i||i.mode===`auto`||i.mode===`keep`)continue;if(i.mode===`null`){t.set(r.name,null);continue}if(i.mode==="default"){t.set(r.name,J);continue}let o=I(a,i.text);if(`error`in o){n[r.name]=e(R[o.error]??`result.rowForm.invalid.number`);continue}if(a.maxLength&&typeof o.value==`string`&&o.value.length>a.maxLength){n[r.name]=e(`result.rowForm.invalid.length`,{max:a.maxLength});continue}t.set(r.name,o.value)}return F(n),Object.keys(n).length>0?null:{values:t}},[d,O,G,e,J]),X=(0,k.useCallback)(e=>{if(!r)return null;let t=e=>e===J?`DEFAULT`:c.quoteLiteral(e);if(r.mode===`insert`){let n=[...e];return n.length===0?c.getQuery(`INSERT_DEFAULT_VALUES`,r.database,r.table):c.getQuery(`INSERT_TABLE`,r.database,r.table,n.map(([e])=>c.quoteIdentifier(e)).join(`, `),n.map(([,e])=>t(e)).join(`, `))}return!r.where||e.size===0?null:c.getQuery(`UPDATE_TABLE`,r.database,r.table,[...e].map(([e,n])=>`${c.quoteIdentifier(e)} = ${t(n)}`).join(`, `),r.where)},[r,c,J]),Z=(0,k.useMemo)(()=>{if(!d)return``;let e=new Map;for(let t of d){let n=O[t.name];if(!(!n||n.mode===`auto`||n.mode===`keep`)){if(n.mode===`null`)e.set(t.name,null);else if(n.mode==="default")e.set(t.name,J);else{let r=I(G.get(t.name),n.text);e.set(t.name,`error`in r?n.text:r.value)}}}return X(e)??``},[d,O,G,X,J]),Q=e=>{let t={};for(let[n,i]of e){if(i===J)continue;let e=r?.fields.find(e=>e.orgName===n);t[e?.name??n]=typeof i==`bigint`?i.toString():i}return t},te=()=>{let e=Y();!e||!r||(r.onStage?.(r.mode,Q(e.values)),i())},ne=async()=>{let n=Y();if(!n||!r)return;let a=X(n.values);if(!a){B(e(`result.rowForm.nothingToWrite`));return}U(!0),B(null);try{if(_.getState().previewGridCommit&&!await t.getState().requestDestructiveConfirm({title:e(W?`result.rowForm.confirmUpdateTitle`:`result.rowForm.confirmInsertTitle`,{table:`${r.database}.${r.table}`}),statements:[a],confirmLabel:e(W?`result.rowForm.update`:`result.rowForm.insert`)}))return;await b(r.connectionId,a,{database:r.database,skipDestructiveConfirm:!0}),o(e(W?`result.rowForm.updated`:`result.rowForm.inserted`,{table:`${r.database}.${r.table}`})),r.onCommitted?.(r.mode,Q(n.values)),i()}catch(e){if(e instanceof x)return;B(e instanceof Error?e.message:String(e))}finally{U(!1)}};if(!r)return null;let $=(e,t,n,r)=>(0,L.jsx)(`button`,{type:`button`,className:`rounded px-1.5 py-0.5 text-[10px] font-medium ${r===t?`bg-primary text-primary-foreground`:`text-muted-foreground hover:bg-muted hover:text-foreground`}`,onClick:()=>K(e,t),children:n});return(0,L.jsx)(ee,{open:!0,onOpenChange:e=>{e||i()},children:(0,L.jsxs)(T,{className:`flex max-h-[90vh] flex-col sm:max-w-[860px]`,children:[(0,L.jsxs)(C,{children:[(0,L.jsx)(E,{children:e(W?`result.rowForm.editTitle`:`result.rowForm.insertTitle`)}),(0,L.jsxs)(D,{className:`font-mono text-xs`,children:[r.database,`.`,r.table]})]}),(0,L.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto rounded-md border`,children:[p&&(0,L.jsx)(`div`,{className:`rounded border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive`,children:p}),!d&&!p&&(0,L.jsxs)(`div`,{className:`flex items-center justify-center gap-2 py-10 text-sm text-muted-foreground`,children:[(0,L.jsx)(u,{className:`size-4 animate-spin`}),e(`result.rowForm.loading`)]}),d&&(0,L.jsxs)(`table`,{className:`w-full border-separate border-spacing-0 text-sm`,children:[(0,L.jsx)(`thead`,{className:`sticky top-0 z-10 bg-background`,children:(0,L.jsxs)(`tr`,{className:`text-left text-[10px] uppercase tracking-wide text-muted-foreground`,children:[(0,L.jsx)(`th`,{className:`w-[38%] border-b px-2 py-1.5 font-medium`,children:e(`result.rowForm.colColumn`)}),(0,L.jsx)(`th`,{className:`border-b px-2 py-1.5 font-medium`,children:e(`result.rowForm.colValue`)})]})}),(0,L.jsx)(`tbody`,{children:d.map(t=>{let n=O[t.name]??{mode:`value`,text:``},i=G.get(t.name),o=n.mode===`auto`,c=M[t.name],l=t.key===`PRI`,u=r.fields.find(e=>e.orgName===t.name),d=!!u&&!!r.row&&r.row[u.name]===null;return(0,L.jsxs)(`tr`,{className:`align-top ${c?`bg-destructive/5`:`hover:bg-muted/30`}`,children:[(0,L.jsxs)(`td`,{className:`border-b border-border/60 px-2 py-2`,children:[(0,L.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,L.jsx)(`span`,{className:`truncate font-mono text-sm font-medium`,title:t.name,children:t.name}),l&&(0,L.jsxs)(`span`,{className:`flex shrink-0 items-center gap-0.5 rounded border border-catppuccin-yellow/50 px-1 text-[9px] font-semibold text-catppuccin-yellow`,children:[(0,L.jsx)(a,{className:`size-2.5`}),`PK`]})]}),(0,L.jsxs)(`div`,{className:`mt-0.5 flex flex-wrap items-center gap-x-1.5 gap-y-0.5 text-[10px] text-muted-foreground`,children:[(0,L.jsx)(`span`,{className:`rounded bg-muted px-1 py-px font-mono`,children:t.type}),!t.nullable&&(0,L.jsx)(`span`,{children:`NOT NULL`}),t.defaultValue!==null&&(0,L.jsxs)(`span`,{className:`font-mono`,title:e(`result.rowForm.defaultValue`),children:[`= `,t.defaultValue]}),t.extra&&(0,L.jsx)(`span`,{children:t.extra})]}),t.comment&&(0,L.jsx)(`div`,{className:`mt-0.5 text-[10px] text-muted-foreground/80`,children:t.comment})]}),(0,L.jsx)(`td`,{className:`border-b border-border/60 px-2 py-2`,children:(0,L.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,L.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[n.mode===`keep`?(0,L.jsx)(`div`,{className:`cursor-text truncate rounded border border-dashed bg-muted/30 px-2 py-1 font-mono text-xs text-muted-foreground`,onClick:()=>K(t.name,`value`),title:e(`result.rowForm.clickToChange`),children:d?(0,L.jsx)(`span`,{className:`italic`,children:`NULL`}):n.text||(0,L.jsx)(`span`,{className:`italic`,children:e(`result.rowForm.empty`)})}):n.mode===`value`?(0,L.jsx)(H,{spec:i,state:n,disabled:!1,onText:e=>q(t.name,e)}):(0,L.jsx)(`div`,{className:`rounded border border-dashed bg-muted/30 px-2 py-1 font-mono text-xs italic text-muted-foreground`,children:n.mode===`null`?`NULL`:n.mode==="default"?`DEFAULT (${t.defaultValue??``})`:e(`result.rowForm.autoHint`)}),c&&(0,L.jsxs)(`div`,{className:`mt-1 flex items-center gap-1 text-[11px] text-destructive`,children:[(0,L.jsx)(s,{className:`size-3`}),c]})]}),(0,L.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5 rounded border bg-background p-0.5`,children:[W&&$(t.name,`keep`,e(`result.rowForm.mode.keep`),n.mode),(o||!W&&/auto_increment|identity/i.test(t.extra))&&$(t.name,`auto`,e(`result.rowForm.mode.auto`),n.mode),$(t.name,`value`,e(`result.rowForm.mode.value`),n.mode),t.nullable&&$(t.name,`null`,`NULL`,n.mode),t.defaultValue!==null&&$(t.name,`default`,`DEFAULT`,n.mode)]})]})})]},t.name)})})]})]}),d&&(0,L.jsxs)(`div`,{className:`shrink-0 rounded-md border bg-muted/30`,children:[(0,L.jsx)(`div`,{className:`border-b px-3 py-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground`,children:e(`result.rowForm.preview`)}),(0,L.jsx)(`pre`,{className:`max-h-24 overflow-auto whitespace-pre-wrap break-words px-3 py-2 font-mono text-xs`,children:Z||(0,L.jsx)(`span`,{className:`italic text-muted-foreground`,children:e(`result.rowForm.nothingToWrite`)})})]}),z&&(0,L.jsx)(`div`,{className:`shrink-0 rounded border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs text-destructive`,children:z}),(0,L.jsxs)(w,{className:`items-center`,children:[l&&(0,L.jsx)(`span`,{className:`mr-auto text-[11px] text-catppuccin-yellow`,children:e(`result.rowForm.inTransaction`)}),(0,L.jsx)(g,{variant:`outline`,onClick:()=>i(),disabled:V,children:e(`command.close`)}),r.onStage&&(0,L.jsx)(g,{variant:`outline`,onClick:te,disabled:V||!d,title:e(`result.rowForm.stageHint`),children:e(W?`result.rowForm.stageEdit`:`result.rowForm.stageInsert`)}),(0,L.jsxs)(g,{onClick:()=>void ne(),disabled:V||!d,children:[V&&(0,L.jsx)(u,{className:`mr-1 size-3.5 animate-spin`}),e(W?`result.rowForm.update`:`result.rowForm.insert`)]})]})]})})}export{U as RowFormDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,n as t}from"./ui-store-DfspmPOn.js";import{l as n,u as r}from"./main-BLydvBDF.js";import{l as i,m as a,t as o}from"./button--s6nUzD8.js";import{r as s,t as c}from"./i18n-57fo5jb0.js";import{a as l,i as u,n as d,r as f,t as p}from"./select-ibmUj7AE.js";import{n as m,t as h}from"./settings-store-WUA0-UcP.js";import{a as g,i as _,n as v,o as y,r as b,t as x}from"./dialog-CJoWJzRo.js";var S=i();function C({id:e,checked:t,onChange:n,label:r,hint:i}){return(0,S.jsxs)(`label`,{htmlFor:e,className:`flex cursor-pointer items-start gap-3 rounded-md border p-3 hover:bg-accent/40`,children:[(0,S.jsx)(`input`,{id:e,type:`checkbox`,checked:t,onChange:e=>n(e.target.checked),className:`mt-0.5 size-4 accent-primary`}),(0,S.jsxs)(`span`,{className:`grid gap-0.5`,children:[(0,S.jsx)(`span`,{className:`text-sm font-medium`,children:r}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:i})]})]})}function w(){let i=t(e=>e.activeDialog),w=t(e=>e.closeDialog),T=m(),E=T.update,{t:D}=a();return(0,S.jsx)(x,{open:i===`safety-settings`,onOpenChange:e=>{e||w()},children:(0,S.jsxs)(v,{className:`sm:max-w-[560px]`,children:[(0,S.jsxs)(g,{children:[(0,S.jsx)(y,{children:D(`settings.title`)}),(0,S.jsx)(b,{children:D(`settings.description`)})]}),(0,S.jsxs)(`div`,{className:`grid gap-2`,children:[(0,S.jsx)(C,{id:`s-history`,checked:T.persistQueryHistory,onChange:e=>T.setPersistQueryHistory(e),label:D(`settings.persistHistory`),hint:D(`settings.persistHistoryHint`)}),(0,S.jsx)(C,{id:`s-confirm`,checked:T.confirmDestructive,onChange:e=>E({confirmDestructive:e}),label:`Confirm destructive statements`,hint:`Ask before DROP TABLE/DATABASE, TRUNCATE, DELETE or UPDATE without WHERE, and ALTER … DROP COLUMN.`}),(0,S.jsx)(C,{id:`s-dryrun`,checked:T.previewAffectedRows,onChange:e=>E({previewAffectedRows:e}),label:`Preview affected rows before UPDATE / DELETE`,hint:`Runs the statement's WHERE (joins included) as a SELECT first and shows the count and a sample of the rows; you confirm before anything is written.`}),(0,S.jsx)(C,{id:`s-warn`,checked:T.warnInEditor,onChange:e=>E({warnInEditor:e}),label:`Warn in the editor`,hint:`Underline destructive statements and statements a read-only connection would refuse.`}),(0,S.jsx)(C,{id:`s-override`,checked:T.allowReadOnlyOverride,onChange:e=>E({allowReadOnlyOverride:e}),label:`Allow "Run anyway" on read-only connections`,hint:`When off, writes on a read-only connection are refused with no override.`}),(0,S.jsx)(C,{id:`s-preview`,checked:T.previewGridCommit,onChange:e=>E({previewGridCommit:e}),label:`Preview SQL before committing grid edits`,hint:`Show the generated UPDATE statements and ask for confirmation.`}),(0,S.jsxs)(`div`,{className:`grid grid-cols-[1fr_140px] items-center gap-3 rounded-md border p-3`,children:[(0,S.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,S.jsx)(n,{htmlFor:`s-limit`,className:`text-sm font-medium`,children:`Result row limit`}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`LIMIT appended to SELECTs that have none. 0 disables.`})]}),(0,S.jsx)(r,{id:`s-limit`,type:`number`,min:0,step:100,value:T.resultRowLimit,onChange:e=>E({resultRowLimit:Math.max(0,Number(e.target.value)||0)})})]}),(0,S.jsxs)(`div`,{className:`grid grid-cols-[1fr_200px] items-center gap-3 rounded-md border p-3`,children:[(0,S.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,S.jsx)(`span`,{className:`text-sm font-medium`,children:`F9 / Run button executes`}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Ctrl+Enter always runs the statement at the cursor; Ctrl+Shift+Enter the whole script.`})]}),(0,S.jsxs)(p,{value:T.executeScope,onValueChange:e=>E({executeScope:e}),children:[(0,S.jsx)(u,{children:(0,S.jsx)(l,{})}),(0,S.jsxs)(d,{children:[(0,S.jsx)(f,{value:`script`,children:`Whole script`}),(0,S.jsx)(f,{value:`statement`,children:`Statement at cursor`})]})]})]}),(0,S.jsxs)(`div`,{className:`grid grid-cols-[1fr_200px] items-center gap-3 rounded-md border p-3`,children:[(0,S.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,S.jsx)(`span`,{className:`text-sm font-medium`,children:D(`settings.language`)}),(0,S.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:D(`settings.languageHint`)})]}),(0,S.jsxs)(p,{value:T.locale,onValueChange:e=>T.setLocale(e),children:[(0,S.jsx)(u,{children:(0,S.jsx)(l,{})}),(0,S.jsxs)(d,{children:[(0,S.jsx)(f,{value:`auto`,children:D(`language.auto`,{name:D(`language.${s()}`)})}),c.map(e=>(0,S.jsx)(f,{value:e,children:D(`language.${e}`)},e))]})]})]}),(0,S.jsx)(C,{id:`s-analytics`,checked:T.analyticsEnabled,onChange:T.setAnalyticsEnabled,label:D(`settings.analytics`),hint:e()?D(`settings.analyticsHint`):D(`settings.analyticsUnavailableHint`)})]}),(0,S.jsxs)(_,{children:[(0,S.jsx)(o,{variant:`ghost`,onClick:()=>E(h),children:D(`settings.resetDefaults`)}),(0,S.jsx)(o,{onClick:w,children:D(`settings.done`)})]})]})})}export{w as SafetySettingsDialog};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,n,t as r,v as i}from"./ui-store-DfspmPOn.js";import{A as a,k as o,l as s}from"./main-BLydvBDF.js";import{l as c,m as l,t as u}from"./button--s6nUzD8.js";import{a as d,i as f,n as p,r as m,t as h}from"./select-ibmUj7AE.js";import{t as g}from"./connection-store-N-ZwIkVg.js";import{a as _}from"./database-CpQt6YGv.js";import{n as v}from"./engine-CpwlM_Ww.js";import{t as ee}from"./pro-usage-VxPxjJqt.js";import{t as y}from"./table-definition-Bs5VSn0X.js";import{a as b,i as te,n as ne,o as re,t as ie}from"./dialog-CJoWJzRo.js";var x=i(t(),1),S=[`VIEW`,`PROCEDURE`,`FUNCTION`,`TRIGGER`,`EVENT`];function C(e,t){return e.replace(/\bDEFINER\s*=\s*(?:`[^`]*`|'[^']*'|"[^"]*"|\w+)@(?:`[^`]*`|'[^']*'|"[^"]*"|[\w.%-]+)/gi,``).replace(/\bSQL SECURITY (?:DEFINER|INVOKER)\b/gi,``).replace(/\bALGORITHM\s*=\s*\w+/gi,``).replace(RegExp(`[\`"\\[]?${t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}[\`"\\]]?\\.`,`gi`),``).replace(/\s+/g,` `).replace(/;\s*$/,``).trim()}function w(e,t){let n=[];for(let r of S){let i=e.objects?.get(r),a=t.objects?.get(r);if(!i&&!a)continue;let o=[...new Set([...i?.keys()??[],...a?.keys()??[]])].sort();for(let s of o){let o=i?.get(s)??null,c=a?.get(s)??null,l;l=o?c?o.sql!==null&&c.sql!==null&&C(o.sql,e.database)===C(c.sql,t.database)?`identical`:`changed`:`missingInTarget`:`missingInSource`,n.push({type:r,name:s,status:l,source:o,target:c})}}return n}var T=e=>e.toLowerCase().replace(/\s+/g,` `).trim(),E=e=>e===null?null:e.trim().replace(/^'(.*)'(?:::\w+)?$/s,`$1`),D=e=>e.addedColumns.length+e.removedColumns.length+e.changedColumns.length+e.addedIndexes.length+e.removedIndexes.length+e.changedIndexes.length>0;function O(e,t){let n=[];return T(e.type)!==T(t.type)&&n.push(`type`),e.nullable!==t.nullable&&n.push(`nullable`),E(e.defaultValue)!==E(t.defaultValue)&&n.push(`default`),e.extra.toLowerCase()!==t.extra.toLowerCase()&&n.push(`extra`),n}var k=(e,t)=>e.type===t.type&&e.columns.length===t.columns.length&&e.columns.every((e,n)=>e===t.columns[n]);function A(e,t,n){let r=t.columns.get(e)??[],i=n.columns.get(e)??[],a=new Map(i.map(e=>[e.name,e])),o=new Map(r.map(e=>[e.name,e])),s={table:e,addedColumns:r.filter(e=>!a.has(e.name)),removedColumns:i.filter(e=>!o.has(e.name)),changedColumns:[],addedIndexes:[],removedIndexes:[],changedIndexes:[]};for(let e of r){let t=a.get(e.name);if(!t)continue;let n=O(e,t);n.length>0&&s.changedColumns.push({name:e.name,source:e,target:t,attributes:n})}let c=t.indexes.get(e)??[],l=n.indexes.get(e)??[],u=new Map(l.map(e=>[e.name,e])),d=new Map(c.map(e=>[e.name,e]));s.addedIndexes=c.filter(e=>!u.has(e.name)),s.removedIndexes=l.filter(e=>!d.has(e.name));for(let e of c){let t=u.get(e.name);t&&!k(e,t)&&s.changedIndexes.push({name:e.name,source:e,target:t})}return s}function j(e,t){let n=new Set(t.tables),r=new Set(e.tables),i={missingInTarget:[],missingInSource:[],changed:[],identical:[],objects:w(e,t)};for(let r of e.tables){if(!n.has(r)){i.missingInTarget.push(r);continue}let a=A(r,e,t);D(a)?i.changed.push(a):i.identical.push(r)}return i.missingInSource=t.tables.filter(e=>!r.has(e)),i}var M=e=>e.split(`
|
|
2
|
-
`).map(e=>`-- ${e}`).join(`
|
|
3
|
-
`);function ae(e,t,n,r,i={}){let a=n.ddl,o=r.database,s=e=>i.includeDrops?e:M(e),c=[`-- Schema sync: ${t.database} -> ${o} (${n.label})`,`-- Review before running. Statements that drop data are commented out unless "Include DROP statements" was checked.`,``];for(let r of e.missingInTarget)c.push(`-- Table ${r} is missing in the target`),c.push(N(r,t,n,o)),c.push(``);for(let t of e.changed){c.push(`-- Table ${t.table}`);for(let e of t.removedIndexes)c.push(s(a.dropIndex(o,t.table,e.name)));for(let e of t.changedIndexes)c.push(s(a.dropIndex(o,t.table,e.name)));for(let e of t.addedColumns)c.push(a.addColumn(o,t.table,e));for(let e of t.changedColumns){let r=a.alterColumn(o,t.table,e.source);c.push(r??M(`${n.label} cannot alter column ${e.name} in place (${e.attributes.join(`, `)}): recreate the table`))}for(let e of t.removedColumns)c.push(s(a.dropColumn(o,t.table,e.name)));for(let e of t.addedIndexes)c.push(a.createIndex(o,t.table,e));for(let e of t.changedIndexes)c.push(a.createIndex(o,t.table,e.source));c.push(``)}for(let t of e.missingInSource)c.push(`-- Table ${t} exists only in the target`),c.push(s(`DROP TABLE ${n.qualify(o,t)};`)),c.push(``);for(let t of e.objects){if(t.status===`identical`)continue;let e=`${t.type.charAt(0)}${t.type.slice(1).toLowerCase()} ${t.name}`,r=F(n,o,t);t.status===`missingInSource`?(c.push(`-- ${e} exists only in the target`),c.push(s(r))):(c.push(t.status===`changed`?`-- ${e} differs; recreated from the source`:`-- ${e} is missing in the target`),t.status===`changed`&&c.push(s(r)),c.push(t.source?.sql?I(t.source.sql):M(`the source engine did not return a CREATE statement for ${e}`))),c.push(``)}return c.join(`
|
|
4
|
-
`).replace(/\n{3,}/g,`
|
|
5
|
-
|
|
6
|
-
`).trim()+`
|
|
7
|
-
`}function N(e,t,n,r){let i=y(r,e,t.columns.get(e)??[],t.indexes.get(e)??[],null);return n.ddl.createTable(i)}var P={VIEW:`DROP_VIEW`,PROCEDURE:`DROP_PROCEDURE`,FUNCTION:`DROP_FUNCTION`,TRIGGER:`DROP_TRIGGER`,EVENT:`DROP_EVENT`};function F(e,t,n){let r=P[n.type];if(!e.hasQuery(r))return`-- ${e.label} has no ${n.type} objects`;let i=n.target?.table??n.source?.table??``;return`${e.getQuery(r,t,n.name,``,i).replace(/\s{2,}/g,` `).trim()};`}function I(e){let t=e.trim();return/;\s*$/.test(t)?t:`${t};`}var L=c(),oe=e=>e instanceof Error?e.message:String(e),R=e=>`${e.type}:${e.name}`,z=e=>e.hostName||e.host||e.file||e.id;function B({id:e,label:t,side:n,onChange:r,connections:i,disabled:a}){let{t:o}=l(),[c,u]=(0,x.useState)([]),g=i.find(e=>e.id===n.connectionId);return(0,x.useEffect)(()=>{if(!g?.serverConnectionId)return;let e=!1,t=v(g.id),i=_(g.serverConnectionId);return(async()=>{try{let a=await t.introspect.listDatabases(i);if(e)return;u(a),a.includes(n.database)||r({connectionId:g.id,database:a[0]??``})}catch{e||u([])}})(),()=>{e=!0}},[g?.id,g?.serverConnectionId]),(0,L.jsxs)(`div`,{className:`space-y-2 rounded-md border p-3`,children:[(0,L.jsx)(s,{className:`font-medium`,children:t}),(0,L.jsxs)(h,{value:n.connectionId,onValueChange:e=>r({connectionId:e,database:``}),disabled:a,children:[(0,L.jsx)(f,{id:`${e}-conn`,className:`w-full`,children:(0,L.jsx)(d,{placeholder:o(`database.diff.pickConnection`)})}),(0,L.jsx)(p,{children:i.map(e=>(0,L.jsx)(m,{value:e.id,children:z(e)},e.id))})]}),(0,L.jsxs)(h,{value:n.database,onValueChange:e=>r({...n,database:e}),disabled:a||c.length===0,children:[(0,L.jsx)(f,{id:`${e}-db`,className:`w-full`,children:(0,L.jsx)(d,{placeholder:o(`database.diff.pickDatabase`)})}),(0,L.jsx)(p,{children:c.map(e=>(0,L.jsx)(m,{value:e,children:e},e))})]})]})}async function V(e){let t=g.getState().activeConnections.find(t=>t.id===e.connectionId);if(!t?.serverConnectionId)throw Error(`Not connected`);let n=v(t.id),r=_(t.serverConnectionId),[i,a,o,s]=await Promise.all([n.introspect.listTables(r,e.database),n.introspect.listAllColumns(r,e.database),n.introspect.listAllIndexes(r,e.database),H(n,r,e.database)]);return{database:e.database,tables:i.map(e=>e.name).sort(),columns:a,indexes:o,objects:s}}async function H(e,t,n){let{introspect:r,capabilities:i}=e,a={VIEW:async()=>(await r.listViews(t,n)).map(e=>({name:e}))};i.procedures&&(a.PROCEDURE=async()=>(await r.listProcedures(t,n)).map(e=>({name:e}))),i.functions&&(a.FUNCTION=async()=>(await r.listFunctions(t,n)).map(e=>({name:e}))),i.triggers&&(a.TRIGGER=async()=>r.listTriggerDetails?r.listTriggerDetails(t,n):(await r.listTriggers(t,n)).map(e=>({name:e}))),i.events&&(a.EVENT=async()=>(await r.listEvents(t,n)).map(e=>({name:e})));let o=new Map;for(let e of S){let i=a[e];if(!i)continue;let s=await i(),c=new Map;for(let i of s){let a=null;try{a=await r.getCreateStatement(t,n,e,i.name)}catch{}c.set(i.name,i.table?{sql:a,table:i.table}:{sql:a})}o.set(e,c)}return o}function U({diff:e}){let{t}=l(),n=e=>(0,L.jsx)(`pre`,{className:`whitespace-pre-wrap break-all text-xs font-mono`,children:e?e.sql??t(`database.diff.noDefinition`):`—`});return(0,L.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`div`,{className:`text-xs text-muted-foreground mb-1`,children:t(`database.diff.source`)}),n(e.source)]}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`div`,{className:`text-xs text-muted-foreground mb-1`,children:t(`database.diff.target`)}),n(e.target)]})]})}var W=e=>`${e.type}${e.nullable?``:` NOT NULL`}${e.defaultValue===null?``:` DEFAULT ${e.defaultValue}`}${e.extra?` ${e.extra}`:``}`;function G({diff:e}){let{t}=l(),n=[];for(let r of e.addedColumns)n.push({kind:t(`database.diff.column`),name:r.name,source:W(r),target:`—`,tone:`text-green-600 dark:text-green-400`});for(let r of e.removedColumns)n.push({kind:t(`database.diff.column`),name:r.name,source:`—`,target:W(r),tone:`text-destructive`});for(let r of e.changedColumns)n.push({kind:t(`database.diff.column`),name:`${r.name} (${r.attributes.join(`, `)})`,source:W(r.source),target:W(r.target),tone:`text-amber-600 dark:text-amber-400`});for(let r of e.addedIndexes)n.push({kind:t(`database.diff.index`),name:r.name,source:`${r.type} (${r.columns.join(`, `)})`,target:`—`,tone:`text-green-600 dark:text-green-400`});for(let r of e.removedIndexes)n.push({kind:t(`database.diff.index`),name:r.name,source:`—`,target:`${r.type} (${r.columns.join(`, `)})`,tone:`text-destructive`});for(let r of e.changedIndexes)n.push({kind:t(`database.diff.index`),name:r.name,source:`${r.source.type} (${r.source.columns.join(`, `)})`,target:`${r.target.type} (${r.target.columns.join(`, `)})`,tone:`text-amber-600 dark:text-amber-400`});return(0,L.jsxs)(`table`,{className:`w-full text-xs font-mono`,children:[(0,L.jsx)(`thead`,{className:`text-muted-foreground`,children:(0,L.jsxs)(`tr`,{children:[(0,L.jsx)(`th`,{className:`text-left font-normal pr-2`,children:t(`database.diff.object`)}),(0,L.jsx)(`th`,{className:`text-left font-normal pr-2`,children:t(`database.diff.source`)}),(0,L.jsx)(`th`,{className:`text-left font-normal`,children:t(`database.diff.target`)})]})}),(0,L.jsx)(`tbody`,{children:n.map((e,t)=>(0,L.jsxs)(`tr`,{className:e.tone,children:[(0,L.jsxs)(`td`,{className:`pr-2 align-top whitespace-nowrap`,children:[e.kind,` `,e.name]}),(0,L.jsx)(`td`,{className:`pr-2 align-top break-all`,children:e.source}),(0,L.jsx)(`td`,{className:`align-top break-all`,children:e.target})]},t))})]})}function K(){let{t}=l(),i=n(e=>e.activeDialog),s=n(e=>e.closeDialog),c=g(e=>e.activeConnections),d=(0,x.useMemo)(()=>c.filter(e=>e.serverConnectionId),[c]),f=g(e=>e.activeConnectionId),p=i===`schema-diff`,m=r(`schema-diff`),[h,_]=(0,x.useState)(()=>m&&d.some(e=>e.id===m.connectionId)?{connectionId:m.connectionId,database:m.database}:{connectionId:f&&d.some(e=>e.id===f)?f:d[0]?.id??``,database:``}),[y,S]=(0,x.useState)(()=>({connectionId:d.find(e=>e.id!==h.connectionId)?.id??h.connectionId,database:``})),[C,w]=(0,x.useState)(null),[T,E]=(0,x.useState)(null),[D,O]=(0,x.useState)(null),[k,A]=(0,x.useState)(!1),[M,N]=(0,x.useState)(!1),[P,F]=(0,x.useState)(!1),[I,z]=(0,x.useState)(null),H=h.connectionId===y.connectionId&&h.database===y.database,W=!!h.connectionId&&!!h.database&&!!y.connectionId&&!!y.database&&!H,K=y.connectionId?v(y.connectionId):null,q=h.connectionId?v(h.connectionId):null,se=!!q&&!!K&&q.id!==K.id;async function ce(){F(!0),z(null),E(null),O(null);try{let[t,n]=await Promise.all([V(h),V(y)]),r=j(t,n);w({source:t,target:n}),E(r);let i=m?.focus,a=null;if(i?.type===`TABLE`)a=r.changed.some(e=>e.table===i.name)?i.name:r.missingInTarget.includes(i.name)?`+${i.name}`:r.missingInSource.includes(i.name)?`-${i.name}`:null,r.identical.includes(i.name)&&N(!0);else if(i){let e=r.objects.find(e=>e.type===i.type&&e.name===i.name);e&&(a=R(e),e.status===`identical`&&N(!0))}O(a??r.changed[0]?.table??null),ee(`compare_schemas`),e(`schema_diff`,{source_dbms:q?.id??`unknown`,target_dbms:K?.id??`unknown`,changed:r.changed.length,missing:r.missingInTarget.length+r.missingInSource.length})}catch(e){z(oe(e))}finally{F(!1)}}let J=(0,x.useMemo)(()=>!T||!C||!K?``:ae(T,C.source,K,{database:y.database},{includeDrops:k}),[T,C,K,y.database,k]);function Y(){J&&(a(y.connectionId,J,y.database,t(`database.diff.tabTitle`,{database:y.database})),s())}let X=T?.changed.find(e=>e.table===D)??null,Z=T?.objects.find(e=>R(e)===D)??null,Q=T?.objects.filter(e=>e.status!==`identical`)??[],le=T?t(`database.diff.summary`,{changed:T.changed.length+Q.filter(e=>e.status===`changed`).length,missingTarget:T.missingInTarget.length+Q.filter(e=>e.status===`missingInTarget`).length,missingSource:T.missingInSource.length+Q.filter(e=>e.status===`missingInSource`).length,identical:T.identical.length+T.objects.filter(e=>e.status===`identical`).length}):``,$=!!T&&T.changed.length+T.missingInTarget.length+T.missingInSource.length+Q.length>0,ue=e=>e===`missingInTarget`?`text-green-600 dark:text-green-400`:e===`missingInSource`?`text-destructive`:e===`changed`?`text-amber-600 dark:text-amber-400`:`text-muted-foreground`,de=e=>e===`missingInTarget`?`+`:e===`missingInSource`?`-`:e===`changed`?`~`:`=`;return(0,L.jsx)(ie,{open:p,onOpenChange:e=>{e||s()},children:(0,L.jsxs)(ne,{className:`sm:max-w-[860px]`,children:[(0,L.jsx)(b,{children:(0,L.jsx)(re,{children:t(`database.diff.title`)})}),(0,L.jsxs)(`div`,{className:`space-y-3`,children:[(0,L.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,L.jsx)(B,{id:`diff-source`,label:t(`database.diff.source`),side:h,onChange:_,connections:d,disabled:P}),(0,L.jsx)(B,{id:`diff-target`,label:t(`database.diff.target`),side:y,onChange:S,connections:d,disabled:P})]}),se&&(0,L.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t(`database.diff.crossEngineHint`)}),H&&h.database&&(0,L.jsx)(`p`,{className:`text-xs text-destructive`,children:t(`database.diff.sameSide`)}),I&&(0,L.jsx)(`p`,{className:`text-sm text-destructive whitespace-pre-wrap`,children:I}),T&&(0,L.jsxs)(`div`,{className:`space-y-2`,children:[(0,L.jsxs)(`div`,{className:`flex items-center justify-between gap-3 text-xs text-muted-foreground`,children:[(0,L.jsx)(`span`,{children:le}),(0,L.jsxs)(`label`,{className:`flex items-center gap-1.5 cursor-pointer`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:M,onChange:e=>N(e.target.checked)}),t(`database.diff.showIdentical`)]})]}),(0,L.jsxs)(`div`,{className:`grid grid-cols-[220px_1fr] gap-3 h-[300px]`,children:[(0,L.jsxs)(`ul`,{className:`overflow-auto rounded-md border text-sm`,children:[T.missingInTarget.map(e=>(0,L.jsxs)(`li`,{className:`px-2 py-1 cursor-pointer text-green-600 dark:text-green-400 ${D===`+${e}`?`bg-accent`:``}`,onClick:()=>O(`+${e}`),children:[`+ `,e]},`mt-${e}`)),T.changed.map(e=>(0,L.jsxs)(`li`,{className:`px-2 py-1 cursor-pointer text-amber-600 dark:text-amber-400 ${D===e.table?`bg-accent`:``}`,onClick:()=>O(e.table),children:[`~ `,e.table]},e.table)),T.missingInSource.map(e=>(0,L.jsxs)(`li`,{className:`px-2 py-1 cursor-pointer text-destructive ${D===`-${e}`?`bg-accent`:``}`,onClick:()=>O(`-${e}`),children:[`- `,e]},`ms-${e}`)),M&&T.identical.map(e=>(0,L.jsxs)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:[`= `,e]},`id-${e}`)),T.objects.filter(e=>M||e.status!==`identical`).map(e=>(0,L.jsxs)(`li`,{className:`px-2 py-1 cursor-pointer ${ue(e.status)} ${D===R(e)?`bg-accent`:``}`,onClick:()=>O(R(e)),children:[de(e.status),` `,(0,L.jsxs)(`span`,{className:`text-muted-foreground`,children:[`[`,o(e.type),`]`]}),` `,e.name]},R(e))),!$&&(0,L.jsx)(`li`,{className:`px-2 py-1 text-muted-foreground`,children:t(`database.diff.identicalAll`)})]}),(0,L.jsx)(`div`,{className:`overflow-auto rounded-md border p-2`,children:X?(0,L.jsx)(G,{diff:X}):Z?(0,L.jsx)(U,{diff:Z}):D?.startsWith(`+`)?(0,L.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t(`database.diff.missingInTarget`,{table:D.slice(1)})}):D?.startsWith(`-`)?(0,L.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t(`database.diff.missingInSource`,{table:D.slice(1)})}):(0,L.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:t(`database.diff.selectTable`)})})]}),(0,L.jsxs)(`label`,{className:`flex items-center gap-1.5 text-xs cursor-pointer`,children:[(0,L.jsx)(`input`,{type:`checkbox`,checked:k,onChange:e=>A(e.target.checked)}),(0,L.jsx)(`span`,{className:k?`text-destructive`:``,children:t(`database.diff.includeDrops`)})]})]})]}),(0,L.jsxs)(te,{children:[(0,L.jsx)(u,{variant:`outline`,onClick:s,children:t(`database.diff.close`)}),(0,L.jsx)(u,{variant:`secondary`,onClick:()=>{ce()},disabled:!W||P,children:t(P?`database.diff.comparing`:`database.diff.compare`)}),(0,L.jsx)(u,{onClick:Y,disabled:!$,children:t(`database.diff.openScript`)})]})]})})}export{K as SchemaDiffDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{C as r,S as i,b as a,j as o,u as s,w as c,x as l,y as u}from"./main-BLydvBDF.js";import{l as d,m as f,t as p}from"./button--s6nUzD8.js";import{a as m}from"./i18n-57fo5jb0.js";import{t as h}from"./connection-store-N-ZwIkVg.js";import{c as g}from"./database-CpQt6YGv.js";import{t as _}from"./engine-CpwlM_Ww.js";import{a as v,i as y,n as b,o as x,t as S}from"./dialog-CJoWJzRo.js";var C=n(e(),1),w=d();function T(){let e=h.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function E(e){let t=T();if(!t)throw Error(m.t(`command.noActiveConnection`));let n=_().getQuery(e===`global`?`SHOW_GLOBAL_STATUS`:`SHOW_SESSION_STATUS`);return(await g(t,n)).records.map(e=>({Variable_name:e[0],Value:e[1]}))}function D(){let{t:e}=f(),{activeDialog:n,closeDialog:d,setFooterMessage:m}=t(),[h,g]=(0,C.useState)([]),[_,T]=(0,C.useState)(``),[D,O]=(0,C.useState)(`session`),k=n===`status`,A=(0,C.useCallback)(t=>E(t).then(g).catch(t=>m(e(`command.status.loadError`,{message:t instanceof Error?t.message:String(t)}))),[m,e]);(0,C.useEffect)(()=>{k&&A(D)},[k,D,A]);let j=(0,C.useMemo)(()=>{if(!_.trim())return h;let e=_.toLowerCase();return h.filter(t=>t.Variable_name.toLowerCase().includes(e)||t.Value.toLowerCase().includes(e))},[h,_]);function M(e){e||(T(``),d())}function N(e){O(e)}return(0,w.jsx)(S,{open:k,onOpenChange:M,children:(0,w.jsxs)(b,{className:`sm:max-w-[900px] max-h-[80vh] flex flex-col`,children:[(0,w.jsx)(v,{children:(0,w.jsx)(x,{children:e(`command.status.title`)})}),(0,w.jsxs)(`div`,{className:`flex items-center gap-3 pb-2`,children:[(0,w.jsxs)(`div`,{className:`flex gap-1`,children:[(0,w.jsx)(p,{variant:D===`session`?`default`:`outline`,size:`sm`,onClick:()=>N(`session`),children:e(`command.scope.session`)}),(0,w.jsx)(p,{variant:D===`global`?`default`:`outline`,size:`sm`,onClick:()=>N(`global`),children:e(`command.scope.global`)})]}),(0,w.jsx)(s,{placeholder:e(`command.status.filterPlaceholder`),value:_,onChange:e=>T(e.target.value),className:`max-w-xs`})]}),(0,w.jsx)(`div`,{className:`flex-1 border rounded-md overflow-hidden min-h-0`,children:(0,w.jsx)(o,{className:`h-[400px]`,children:(0,w.jsxs)(u,{children:[(0,w.jsx)(r,{children:(0,w.jsxs)(c,{children:[(0,w.jsx)(i,{className:`w-[300px]`,children:e(`command.variableName`)}),(0,w.jsx)(i,{children:e(`command.value`)})]})}),(0,w.jsx)(a,{children:j.length===0?(0,w.jsx)(c,{children:(0,w.jsx)(l,{colSpan:2,className:`text-center text-muted-foreground`,children:e(`command.status.empty`)})}):j.map(e=>(0,w.jsxs)(c,{children:[(0,w.jsx)(l,{className:`font-mono text-xs`,children:e.Variable_name}),(0,w.jsx)(l,{className:`font-mono text-xs`,children:e.Value})]},e.Variable_name))})]})})}),(0,w.jsx)(y,{children:(0,w.jsx)(p,{variant:`outline`,onClick:()=>M(!1),children:e(`command.close`)})})]})})}export{D as StatusDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{l as r,u as i}from"./main-BLydvBDF.js";import{l as a,m as o,t as s}from"./button--s6nUzD8.js";import{a as c,i as l,n as u,r as d,t as f}from"./select-ibmUj7AE.js";import{t as p}from"./connection-store-N-ZwIkVg.js";import{a as m,i as h,n as g,o as _,t as v}from"./dialog-CJoWJzRo.js";import{n as y}from"./user-store-l9ZslFwK.js";var b=n(e(),1),x=a();function S(){let{t:e}=o(),{activeDialog:n,closeDialog:a,setFooterMessage:S}=t(),C=p(e=>e.activeConnectionId)??``,w=y(e=>e.addUser),[T,E]=(0,b.useState)(``),[D,O]=(0,b.useState)(`%`),[k,A]=(0,b.useState)(``),[j,M]=(0,b.useState)(``),[N,P]=(0,b.useState)(`caching_sha2_password`),F=n===`user-add`;function I(e){e||(L(),a())}function L(){E(``),O(`%`),A(``),M(``),P(`caching_sha2_password`)}function R(){if(!T.trim()){S(e(`user.add.usernameRequired`));return}if(k!==j){S(e(`user.add.passwordMismatch`));return}w(C,{user:T.trim(),host:D.trim()||`%`,privileges:[],maxQuestions:0,maxUpdates:0,maxConnections:0,maxUserConnections:0,plugin:N,authenticationString:``,passwordExpired:!1,accountLocked:!1}),S(e(`user.add.added`,{user:T,host:D})),L(),a()}return(0,x.jsx)(v,{open:F,onOpenChange:I,children:(0,x.jsxs)(g,{className:`sm:max-w-[450px]`,children:[(0,x.jsx)(m,{children:(0,x.jsx)(_,{children:e(`user.add.title`)})}),(0,x.jsxs)(`div`,{className:`space-y-4 py-2`,children:[(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(r,{htmlFor:`user-add-username`,children:e(`user.add.username`)}),(0,x.jsx)(i,{id:`user-add-username`,value:T,onChange:e=>E(e.target.value),placeholder:e(`user.add.usernamePlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(r,{htmlFor:`user-add-host`,children:e(`user.add.host`)}),(0,x.jsx)(i,{id:`user-add-host`,value:D,onChange:e=>O(e.target.value),placeholder:`%`})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(r,{htmlFor:`user-add-password`,children:e(`user.add.password`)}),(0,x.jsx)(i,{id:`user-add-password`,type:`password`,value:k,onChange:e=>A(e.target.value),placeholder:e(`user.add.passwordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(r,{htmlFor:`user-add-confirm-password`,children:e(`user.add.confirmPassword`)}),(0,x.jsx)(i,{id:`user-add-confirm-password`,type:`password`,value:j,onChange:e=>M(e.target.value),placeholder:e(`user.add.confirmPasswordPlaceholder`)})]}),(0,x.jsxs)(`div`,{className:`space-y-2`,children:[(0,x.jsx)(r,{children:e(`user.add.plugin`)}),(0,x.jsxs)(f,{value:N,onValueChange:P,children:[(0,x.jsx)(l,{className:`w-full`,children:(0,x.jsx)(c,{})}),(0,x.jsxs)(u,{children:[(0,x.jsx)(d,{value:`mysql_native_password`,children:`mysql_native_password`}),(0,x.jsx)(d,{value:`caching_sha2_password`,children:`caching_sha2_password`})]})]})]})]}),(0,x.jsxs)(h,{children:[(0,x.jsx)(s,{variant:`outline`,onClick:()=>I(!1),children:e(`user.add.cancel`)}),(0,x.jsx)(s,{onClick:R,children:e(`user.add.add`)})]})]})})}export{S as UserAddDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{$ as r,Z as i,_t as a,j as o,l as s,pt as c}from"./main-BLydvBDF.js";import{a as l,l as u,m as d,o as f,t as p}from"./button--s6nUzD8.js";import{t as m}from"./connection-store-N-ZwIkVg.js";import{a as h}from"./database-CpQt6YGv.js";import{i as g}from"./dbms-BwnatOMe.js";import{n as _}from"./engine-CpwlM_Ww.js";import{c as v}from"./query-execution-4-JHu9gp.js";import{a as y,i as b,n as x,o as S,t as C}from"./dialog-CJoWJzRo.js";import{n as w,t as T}from"./user-store-l9ZslFwK.js";var E=l(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),D=l(`user-plus`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),O=n(e(),1),k=u();function A({databases:e,tables:t,onSelectScope:n}){let{t:i}=d(),[s,l]=(0,O.useState)(new Set),[u,p]=(0,O.useState)(`global`),m=(0,O.useCallback)(e=>{l(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),h=[{id:`global`,text:i(`user.grantTree.globalPrivileges`),type:`global`,children:e.map(e=>({id:`db:${e}`,text:e,type:`database`,database:e,children:(t[e]??[]).map(t=>({id:`tbl:${e}.${t}`,text:t,type:`table`,database:e,table:t}))}))}];function g(e){p(e.id),n({level:e.type,database:e.database,table:e.table})}function _(e,t){let n=e.children&&e.children.length>0,i=s.has(e.id),o=u===e.id,l=E;return e.type===`database`&&(l=c),e.type===`table`&&(l=r),(0,k.jsxs)(`div`,{children:[(0,k.jsxs)(`div`,{className:f(`flex items-center gap-1 px-2 py-0.5 cursor-pointer text-sm hover:bg-accent rounded-sm`,o&&`bg-accent text-accent-foreground`),style:{paddingLeft:`${t*16+4}px`},onClick:()=>{g(e),n&&m(e.id)},children:[n?(0,k.jsx)(a,{className:f(`h-3 w-3 transition-transform shrink-0`,i&&`rotate-90`)}):(0,k.jsx)(`span`,{className:`w-3 shrink-0`}),(0,k.jsx)(l,{className:`h-4 w-4 text-muted-foreground shrink-0`}),(0,k.jsx)(`span`,{className:`truncate`,children:e.text})]}),i&&e.children?.map(e=>_(e,t+1))]},e.id)}return(0,k.jsx)(o,{className:`h-full`,children:(0,k.jsx)(`div`,{className:`py-1`,children:h.map(e=>_(e,0))})})}var j={Data:[`SELECT`,`INSERT`,`UPDATE`,`DELETE`],Structure:[`CREATE`,`ALTER`,`DROP`,`INDEX`,`REFERENCES`],Administration:[`GRANT OPTION`,`SUPER`,`PROCESS`,`RELOAD`,`SHUTDOWN`,`SHOW DATABASES`,`LOCK TABLES`,`EXECUTE`,`REPLICATION SLAVE`,`REPLICATION CLIENT`,`CREATE VIEW`,`SHOW VIEW`,`CREATE ROUTINE`,`ALTER ROUTINE`,`CREATE USER`,`EVENT`,`TRIGGER`,`CREATE TABLESPACE`]},M={Data:[`SELECT`,`INSERT`,`UPDATE`,`DELETE`],Structure:[`CREATE`,`ALTER`,`DROP`,`INDEX`,`REFERENCES`],Administration:[`GRANT OPTION`,`LOCK TABLES`,`EXECUTE`,`CREATE VIEW`,`SHOW VIEW`,`CREATE ROUTINE`,`ALTER ROUTINE`,`EVENT`,`TRIGGER`]},N={Data:[`SELECT`,`INSERT`,`UPDATE`,`DELETE`],Structure:[`CREATE`,`ALTER`,`DROP`,`INDEX`,`REFERENCES`],Administration:[`GRANT OPTION`,`TRIGGER`]},P={global:`user.privileges.globalTitle`,database:`user.privileges.databaseTitle`,table:`user.privileges.tableTitle`},F={Data:`user.privileges.categoryData`,Structure:`user.privileges.categoryStructure`,Administration:`user.privileges.categoryAdministration`};function I({scope:e,privileges:t,onChange:n}){let{t:r}=d(),i=(0,O.useMemo)(()=>e===`global`?j:e===`database`?M:N,[e]),a=(0,O.useMemo)(()=>Object.values(i).flat(),[i]);function c(e){n({...t,[e]:!t[e]})}function l(){let e={...t};for(let t of a)e[t]=!0;n(e)}function u(){let e={...t};for(let t of a)e[t]=!1;n(e)}return(0,k.jsxs)(`div`,{className:`flex flex-col h-full`,children:[(0,k.jsxs)(`div`,{className:`flex items-center gap-2 p-2 border-b`,children:[(0,k.jsx)(`span`,{className:`text-sm font-medium`,children:r(P[e])}),(0,k.jsxs)(`div`,{className:`ml-auto flex gap-1`,children:[(0,k.jsx)(p,{variant:`outline`,size:`sm`,onClick:l,children:r(`user.privileges.checkAll`)}),(0,k.jsx)(p,{variant:`outline`,size:`sm`,onClick:u,children:r(`user.privileges.uncheckAll`)})]})]}),(0,k.jsx)(o,{className:`flex-1`,children:(0,k.jsx)(`div`,{className:`p-3 space-y-4`,children:Object.entries(i).map(([e,n])=>(0,k.jsxs)(`div`,{children:[(0,k.jsx)(`h4`,{className:`text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2`,children:F[e]?r(F[e]):e}),(0,k.jsx)(`div`,{className:`grid grid-cols-2 gap-1`,children:n.map(e=>(0,k.jsxs)(s,{className:`flex items-center gap-2 text-sm font-normal cursor-pointer py-1`,children:[(0,k.jsx)(`input`,{type:`checkbox`,checked:t[e]??!1,onChange:()=>c(e),className:`rounded border-input`}),e]},e))})]},e))})})]})}var L={SELECT:`Select_priv`,INSERT:`Insert_priv`,UPDATE:`Update_priv`,DELETE:`Delete_priv`,CREATE:`Create_priv`,ALTER:`Alter_priv`,DROP:`Drop_priv`,INDEX:`Index_priv`,REFERENCES:`References_priv`,"GRANT OPTION":`Grant_priv`,SUPER:`Super_priv`,PROCESS:`Process_priv`,RELOAD:`Reload_priv`,SHUTDOWN:`Shutdown_priv`,"SHOW DATABASES":`Show_db_priv`,"LOCK TABLES":`Lock_tables_priv`,EXECUTE:`Execute_priv`,"REPLICATION SLAVE":`Repl_slave_priv`,"REPLICATION CLIENT":`Repl_client_priv`,"CREATE VIEW":`Create_view_priv`,"SHOW VIEW":`Show_view_priv`,"CREATE ROUTINE":`Create_routine_priv`,"ALTER ROUTINE":`Alter_routine_priv`,"CREATE USER":`Create_user_priv`,EVENT:`Event_priv`,TRIGGER:`Trigger_priv`,"CREATE TABLESPACE":`Create_tablespace_priv`,"CREATE TEMPORARY TABLES":`Create_tmp_table_priv`,FILE:`File_priv`};function R(e){let t={};for(let n of e.split(`,`)){let e=n.trim().toUpperCase();e&&(t[e]=!0)}return t}function z(e){let t={};for(let[n,r]of Object.entries(L)){let i=e[r];i!==void 0&&(t[n]=String(i).toUpperCase()===`Y`)}return t}function B(e,t){let n=t=>e.quoteIdentifier(t);return t.level===`global`?`*.*`:t.level===`database`?`${n(t.database??``)}.*`:`${n(t.database??``)}.${n(t.table??``)}`}async function V(e,t,n,r,i){if(i.level===`global`){let i=await e(t.getQuery(`USER_PRIV`,n,r)),a=g(i)[0];return a?z(a):{}}if(i.level===`database`){let a=await e(t.getQuery(`USER_DATABASE_PRIV`,n,r)),o=g(a).find(e=>String(e.Db)===i.database);return o?z(o):{}}let a=await e(t.getQuery(`USER_TABLE_PRIV`,n,r)),o=g(a).find(e=>String(e.Db)===i.database&&String(e.Table_name)===i.table);return o?R(String(o.Table_priv??``)):{}}function H(e,t,n,r,i,a){let o=B(e,r),s=[],c=[],l=null;for(let e of new Set([...Object.keys(i),...Object.keys(a)])){let t=i[e]===!0,n=a[e]===!0;if(t!==n){if(e===`GRANT OPTION`){l=n;continue}(n?s:c).push(e)}}let u=[];if(s.length>0||l===!0){let r=s.length>0?s.join(`, `):`USAGE`;u.push(e.getQuery(`GRANT`,r,t,n,o,l===!0?`WITH GRANT OPTION`:``))}return c.length>0&&u.push(e.getQuery(`REVOKE`,c.join(`, `),t,n,o)),l===!1&&u.push(e.getQuery(`REVOKE`,`GRANT OPTION`,t,n,o)),u}function U(e){return m.getState().activeConnections.find(t=>t.id===e)?.serverConnectionId??null}function W(){let{t:e}=d(),{activeDialog:n,closeDialog:r,openDialog:a,setFooterMessage:s}=t(),c=m(e=>e.activeConnectionId)??``,l=w(e=>e.users[c]??T),u=w(e=>e.selectedUser[c]??null),g=w(e=>e.setSelectedUser),E=w(e=>e.removeUser),j=e=>g(c,e),M=(e,t)=>E(c,e,t),[N,P]=(0,O.useState)({level:`global`}),[F,L]=(0,O.useState)({}),[R,z]=(0,O.useState)([]),[B,W]=(0,O.useState)({}),[G,K]=(0,O.useState)({}),[q,J]=(0,O.useState)(!1),Y=n===`user-manager`;(0,O.useEffect)(()=>{if(!Y||!c)return;let e=U(c);if(!e)return;let t=!1;return _(c).introspect.listDatabases(h(e)).then(e=>{t||z(e)}).catch(()=>{t||z([])}),()=>{t=!0}},[Y,c]),(0,O.useEffect)(()=>{let e=N.database;if(!Y||!c||!e||B[e])return;let t=U(c);if(!t)return;let n=!1;return _(c).introspect.listTables(h(t),e).then(t=>{n||W(n=>({...n,[e]:t.map(e=>e.name)}))}).catch(()=>void 0),()=>{n=!0}},[Y,c,N.database,B]),(0,O.useEffect)(()=>{if(!Y||!c||!u){K({}),L({});return}let e=U(c);if(!e)return;let t=!1;return V(h(e),_(c),u.user,u.host,N).then(e=>{t||(K(e),L(e))}).catch(()=>{t||(K({}),L({}))}),()=>{t=!0}},[Y,c,u,N]);function X(e){e||(r(),j(null),P({level:`global`}),L({}))}let Z=(0,O.useCallback)(e=>{P(e),L({})},[]);function Q(){a(`user-add`)}async function $(){if(!u||!c)return;let{user:t,host:n}=u;J(!0);try{await v(c,_(c).getQuery(`DELETE_USER`,t,n)),M(n,t),j(null),s(e(`user.manager.removed`,{user:t,host:n}))}catch(e){s(e instanceof Error?e.message:String(e))}finally{J(!1)}}async function ee(){if(!u||!c){s(e(`user.manager.selectUserFirst`));return}let t=H(_(c),u.user,u.host,N,G,F);if(t.length===0){s(e(`user.manager.noChanges`));return}J(!0);try{for(let e of t)await v(c,e);K(F),s(e(`user.manager.applied`))}catch(e){s(e instanceof Error?e.message:String(e))}finally{J(!1)}}return(0,k.jsx)(C,{open:Y,onOpenChange:X,children:(0,k.jsxs)(x,{className:`sm:max-w-[80vw] max-h-[70vh] flex flex-col`,children:[(0,k.jsx)(y,{children:(0,k.jsx)(S,{children:e(`user.manager.title`)})}),(0,k.jsxs)(`div`,{className:`flex flex-1 gap-0 overflow-hidden min-h-0 border rounded-md`,children:[(0,k.jsxs)(`div`,{className:`w-[200px] shrink-0 border-r flex flex-col`,children:[(0,k.jsxs)(`div`,{className:`flex items-center gap-1 p-2 border-b`,children:[(0,k.jsx)(p,{variant:`ghost`,size:`sm`,onClick:Q,title:e(`user.manager.addUser`),children:(0,k.jsx)(D,{className:`h-4 w-4`})}),(0,k.jsx)(p,{variant:`ghost`,size:`sm`,onClick:()=>void $(),disabled:!u||q,title:e(`user.manager.removeUser`),children:(0,k.jsx)(i,{className:`h-4 w-4`})})]}),(0,k.jsx)(o,{className:`flex-1`,children:(0,k.jsx)(`div`,{className:`py-1`,children:l.length===0?(0,k.jsx)(`div`,{className:`px-3 py-4 text-sm text-muted-foreground text-center`,children:e(`user.manager.noUsers`)}):l.map(e=>{let t=u?.user===e.user&&u?.host===e.host;return(0,k.jsx)(`div`,{className:f(`flex items-center gap-2 px-3 py-1.5 cursor-pointer text-sm hover:bg-accent`,t&&`bg-accent text-accent-foreground`),onClick:()=>j(e),children:(0,k.jsxs)(`span`,{className:`truncate`,children:[e.user,`@`,e.host]})},`${e.user}@${e.host}`)})})})]}),(0,k.jsxs)(`div`,{className:`w-[250px] shrink-0 border-r`,children:[(0,k.jsx)(`div`,{className:`p-2 border-b text-sm font-medium`,children:e(`user.manager.grantScope`)}),(0,k.jsx)(A,{connectionId:``,databases:R,tables:B,onSelectScope:Z})]}),(0,k.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,k.jsx)(I,{scope:N.level,privileges:F,onChange:L})})]}),(0,k.jsxs)(b,{children:[(0,k.jsx)(p,{onClick:()=>void ee(),disabled:q,children:e(`user.manager.apply`)}),(0,k.jsx)(p,{variant:`outline`,onClick:()=>X(!1),children:e(`user.manager.close`)})]})]})})}export{W as UserManagerDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{h as e,n as t,v as n}from"./ui-store-DfspmPOn.js";import{C as r,S as i,b as a,j as o,u as s,w as c,x as l,y as u}from"./main-BLydvBDF.js";import{l as d,m as f,t as p}from"./button--s6nUzD8.js";import{a as m}from"./i18n-57fo5jb0.js";import{t as h}from"./connection-store-N-ZwIkVg.js";import{c as g}from"./database-CpQt6YGv.js";import{t as _}from"./engine-CpwlM_Ww.js";import{a as v,i as y,n as b,o as x,t as S}from"./dialog-CJoWJzRo.js";var C=n(e(),1),w=d();function T(){let e=h.getState();return e.activeConnections.find(t=>t.id===e.activeConnectionId)?.serverConnectionId??null}async function E(e){let t=T();if(!t)throw Error(m.t(`command.noActiveConnection`));let n=_().getQuery(e===`global`?`SHOW_GLOBAL_VARIABLES`:`SHOW_SESSION_VARIABLES`);return(await g(t,n)).records.map(e=>({Variable_name:e[0],Value:e[1]}))}function D(){let{t:e}=f(),{activeDialog:n,closeDialog:d,setFooterMessage:m}=t(),[h,g]=(0,C.useState)([]),[_,T]=(0,C.useState)(``),[D,O]=(0,C.useState)(`session`),k=n===`variables`,A=(0,C.useCallback)(t=>E(t).then(g).catch(t=>m(e(`command.variables.loadError`,{message:t instanceof Error?t.message:String(t)}))),[m,e]);(0,C.useEffect)(()=>{k&&A(D)},[k,D,A]);let j=(0,C.useMemo)(()=>{if(!_.trim())return h;let e=_.toLowerCase();return h.filter(t=>t.Variable_name.toLowerCase().includes(e)||t.Value.toLowerCase().includes(e))},[h,_]);function M(e){e||(T(``),d())}function N(e){O(e)}return(0,w.jsx)(S,{open:k,onOpenChange:M,children:(0,w.jsxs)(b,{className:`sm:max-w-[900px] max-h-[80vh] flex flex-col`,children:[(0,w.jsx)(v,{children:(0,w.jsx)(x,{children:e(`command.variables.title`)})}),(0,w.jsxs)(`div`,{className:`flex items-center gap-3 pb-2`,children:[(0,w.jsxs)(`div`,{className:`flex gap-1`,children:[(0,w.jsx)(p,{variant:D===`session`?`default`:`outline`,size:`sm`,onClick:()=>N(`session`),children:e(`command.scope.session`)}),(0,w.jsx)(p,{variant:D===`global`?`default`:`outline`,size:`sm`,onClick:()=>N(`global`),children:e(`command.scope.global`)})]}),(0,w.jsx)(s,{placeholder:e(`command.variables.filterPlaceholder`),value:_,onChange:e=>T(e.target.value),className:`max-w-xs`})]}),(0,w.jsx)(`div`,{className:`flex-1 border rounded-md overflow-hidden min-h-0`,children:(0,w.jsx)(o,{className:`h-[400px]`,children:(0,w.jsxs)(u,{children:[(0,w.jsx)(r,{children:(0,w.jsxs)(c,{children:[(0,w.jsx)(i,{className:`w-[300px]`,children:e(`command.variableName`)}),(0,w.jsx)(i,{children:e(`command.value`)})]})}),(0,w.jsx)(a,{children:j.length===0?(0,w.jsx)(c,{children:(0,w.jsx)(l,{colSpan:2,className:`text-center text-muted-foreground`,children:e(`command.variables.empty`)})}):j.map(e=>(0,w.jsxs)(c,{children:[(0,w.jsx)(l,{className:`font-mono text-xs`,children:e.Variable_name}),(0,w.jsx)(l,{className:`font-mono text-xs`,children:e.Value})]},e.Variable_name))})]})})}),(0,w.jsx)(y,{children:(0,w.jsx)(p,{variant:`outline`,onClick:()=>M(!1),children:e(`command.close`)})})]})})}export{D as VariablesDialog};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{f as e,g as t,h as n,u as r,v as i}from"./ui-store-DfspmPOn.js";var a=t((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,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(r(299));return s(e,t,null,n)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.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){if(typeof e==`string`){if(t){var n=l(t.as,t.crossOrigin);a.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})}else a.d.m(e)}},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.8`})),o=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=a()})),s=i(n()),c=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);m(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},l={},u=(e,t,n,r)=>{m(n)&&l[n]||(m(n)&&(l[n]=new Date),c(e,t,n,r))},d=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},f=(e,t,n)=>{e.loadNamespaces(t,d(e,n))},p=(e,t,n,r)=>{if(m(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return f(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,d(e,r))},ee=(e,t,n={})=>!t.languages||!t.languages.length?(u(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),m=e=>typeof e==`string`,h=e=>typeof e==`object`&&!!e,g=(0,s.createContext)(),te=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},_=t((e=>{var t=n();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=t.useState,o=t.useEffect,s=t.useLayoutEffect,c=t.useDebugValue;function l(e,t){var n=t(),r=a({inst:{value:n,getSnapshot:t}}),i=r[0].inst,l=r[1];return s(function(){i.value=n,i.getSnapshot=t,u(i)&&l({inst:i})},[e,n,t]),o(function(){return u(i)&&l({inst:i}),e(function(){u(i)&&l({inst:i})})},[e]),c(n),n}function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch{return!0}}function d(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?d:l;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),v=t(((e,t)=>{t.exports=_()}))(),ne={t:(e,t)=>{if(m(t))return t;if(h(t)&&m(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},re=()=>()=>{},y=(t,n={})=>{let{i18n:i}=n,{i18n:a,defaultNS:o}=(0,s.useContext)(g)||{},c=i||a||r();c&&!c.reportNamespaces&&(c.reportNamespaces=new te),c||u(c,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`);let l=(0,s.useMemo)(()=>({...e(),...c?.options?.react,...n}),[c,n]),{useSuspense:d,keyPrefix:h}=l,_=t||o||c?.options?.defaultNS,y=m(_)?[_]:_||[`translation`],b=(0,s.useMemo)(()=>y,y);c?.reportNamespaces?.addUsedNamespaces?.(b);let x=(0,s.useRef)(0),S=(0,s.useCallback)(e=>{if(!c)return re;let{bindI18n:t,bindI18nStore:n}=l,r=()=>{x.current+=1,e()};return t&&c.on(t,r),n&&c.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>c.off(e,r)),n&&n.split(` `).forEach(e=>c.store.off(e,r))}},[c,l]),C=(0,s.useRef)(),w=(0,s.useCallback)(()=>{if(!c)return ne;let e=!!(c.isInitialized||c.initializedStoreOnce)&&b.every(e=>ee(e,c,l)),t=n.lng||c.language,r=x.current,i=C.current;if(i&&i.ready===e&&i.lng===t&&i.keyPrefix===h&&i.revision===r)return i;let a={t:c.getFixedT(t,l.nsMode===`fallback`?b:b[0],h,{scopeNs:b}),ready:e,lng:t,keyPrefix:h,revision:r};return C.current=a,a},[c,b,h,l,n.lng]),[T,E]=(0,s.useState)(0),{t:D,ready:O}=(0,v.useSyncExternalStore)(S,w,w);(0,s.useEffect)(()=>{if(c&&!O&&!d){let e=()=>E(e=>e+1);n.lng?p(c,n.lng,b,e):f(c,b,e)}},[c,n.lng,b,O,d,T]);let k=c||{},A=(0,s.useRef)(null),j=(0,s.useRef)(),M=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},N=(0,s.useMemo)(()=>{let e=k,t=e?.language,n=e;e&&(A.current&&A.current.__original===e&&j.current===t?n=A.current:(n=M(e),A.current=n,j.current=t));let r=!O&&!d?(...e)=>(u(c,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),D(...e)):D,i=[r,n,O];return i.t=r,i.i18n=n,i.ready=O,i},[D,k,O,k.resolvedLanguage,k.language,k.languages]);if(c&&d&&!O){let e=!1;try{e=!1}catch{}throw e&&u(c,`SUSPENDED_WHILE_LOADING`,`useTranslation: suspended while translations are loading (useSuspense is true by default). Add a <Suspense> boundary above this component, or set react.useSuspense: false in the i18next init options. https://react.i18next.com/latest/usetranslation-hook`),new Promise(e=>{let t=()=>e();n.lng?p(c,n.lng,b,t):f(c,b,t)})}return N},b=i(o(),1),x=Object.defineProperty,S=(e,t)=>x(e,`name`,{value:t,configurable:!0});function C(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}S(C,`setRef`);function w(...e){return t=>{let n=!1,r=e.map(e=>{let r=C(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():C(e[t],null)}}}}S(w,`composeRefs`);function T(...e){return s.useCallback(w(...e),e)}S(T,`useComposedRefs`);var E=Object.defineProperty,D=(e,t)=>E(e,`name`,{value:t,configurable:!0});function O(e){let t=s.forwardRef((t,n)=>{let{children:r,...i}=t,a=null,o=!1,c=[];P(r)&&typeof L==`function`&&(r=L(r._payload)),s.Children.forEach(r,e=>{if(ae(e)){o=!0;let t=e,n=`child`in t.props?t.props.child:t.props.children;P(n)&&typeof L==`function`&&(n=L(n._payload)),a=M(t,n),c.push(a?.props?.children)}else c.push(e)}),a?a=s.cloneElement(a,void 0,c):!o&&s.Children.count(r)===1&&s.isValidElement(r)&&(a=r);let l=a?ie(a):void 0,u=T(n,l);if(!a){if(r||r===0)throw Error(o?se(e):I(e));return r}let d=N(i,a.props??{});return a.type!==s.Fragment&&(d.ref=n?u:l),s.cloneElement(a,d)});return t.displayName=`${e}.Slot`,t}D(O,`createSlot`);var k=O(`Slot`),A=Symbol.for(`radix.slottable`);function j(e){let t=D(e=>`child`in e?e.children(e.child):e.children,`Slottable`);return t.displayName=`${e}.Slottable`,t.__radixId=A,t}D(j,`createSlottable`);var M=D((e,t)=>{if(`child`in e.props){let t=e.props.child;return s.isValidElement(t)?s.cloneElement(t,void 0,e.props.children(t.props.children)):null}return s.isValidElement(t)?t:null},`getSlottableElementFromSlottable`);function N(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}}D(N,`mergeProps`);function ie(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)}D(ie,`getElementRef`);function ae(e){return s.isValidElement(e)&&typeof e.type==`function`&&`__radixId`in e.type&&e.type.__radixId===A}D(ae,`isSlottable`);var oe=Symbol.for(`react.lazy`);function P(e){return typeof e==`object`&&!!e&&`$$typeof`in e&&e.$$typeof===oe&&`_payload`in e&&F(e._payload)}D(P,`isLazyComponent`);function F(e){return typeof e==`object`&&!!e&&`then`in e}D(F,`isPromiseLike`);var I=D(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,`createSlotError`),se=D(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,`createSlottableError`),L=s.use,ce=t((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),R=t(((e,t)=>{t.exports=ce()})),z=R(),B=Object.defineProperty,V=(e,t)=>B(e,`name`,{value:t,configurable:!0}),le=[`a`,`button`,`div`,`form`,`h2`,`h3`,`img`,`input`,`label`,`li`,`nav`,`ol`,`p`,`select`,`span`,`svg`,`ul`].reduce((e,t)=>{let n=O(`Primitive.${t}`),r=s.forwardRef((e,r)=>{let{asChild:i,...a}=e,o=i?n:t;return typeof window<`u`&&(window[Symbol.for(`radix-ui`)]=!0),(0,z.jsx)(o,{...a,ref:r})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function ue(e,t){e&&b.flushSync(()=>e.dispatchEvent(t))}V(ue,`dispatchDiscreteCustomEvent`);function de(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`){if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=de(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n)}return r}function fe(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=de(e))&&(r&&(r+=` `),r+=t);return r}var pe=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},me=(e,t)=>({classGroupId:e,validator:t}),he=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),H=`-`,ge=[],_e=`arbitrary..`,ve=e=>{let t=xe(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return be(e);let n=e.split(H);return ye(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?pe(i,t):t:i||ge}return n[e]||ge}}},ye=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=ye(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(H):e.slice(t).join(H),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},be=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?_e+r:void 0})(),xe=e=>{let{theme:t,classGroups:n}=e;return Se(n,t)},Se=(e,t)=>{let n=he();for(let r in e){let i=e[r];Ce(i,n,r,t)}return n},Ce=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];we(i,t,n,r)}},we=(e,t,n,r)=>{if(typeof e==`string`){Te(e,t,n);return}if(typeof e==`function`){Ee(e,t,n,r);return}De(e,t,n,r)},Te=(e,t,n)=>{let r=e===``?t:Oe(t,e);r.classGroupId=n},Ee=(e,t,n,r)=>{if(ke(e)){Ce(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(me(n,e))},De=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Ce(o,Oe(t,a),n,r)}},Oe=(e,t)=>{let n=e,r=t.split(H),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=he(),n.nextPart.set(t,i)),n=i}return n},ke=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,Ae=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},je=`!`,Me=`:`,Ne=[],Pe=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),Fe=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Me){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(je)?(c=s.slice(0,-1),l=!0):s.startsWith(je)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return Pe(t,l,c,u)};if(t){let e=t+Me,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):Pe(Ne,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},Ie=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},Le=e=>({cache:Ae(e.cacheSize),parseClassName:Fe(e),sortModifiers:Ie(e),postfixLookupClassGroupIds:Re(e),...ve(e)}),Re=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},ze=/\s+/,Be=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(ze),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:ee}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let m=!!ee,h;if(m){h=r(p.substring(0,ee));let e=h&&o[h]?r(p):void 0;e&&e!==h&&(h=e,m=!1)}else h=r(p);if(!h){if(!m){l=t+(l.length>0?` `+l:l);continue}if(h=r(p),!h){l=t+(l.length>0?` `+l:l);continue}m=!1}let g=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),te=f?g+je:g,_=te+h;if(s.indexOf(_)>-1)continue;s.push(_);let v=i(h,m);for(let e=0;e<v.length;++e){let t=v[e];s.push(te+t)}l=t+(l.length>0?` `+l:l)}return l},Ve=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=He(n))&&(i&&(i+=` `),i+=r);return i},He=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=He(e[r]))&&(n&&(n+=` `),n+=t);return n},Ue=(e,...t)=>{let n,r,i,a,o=o=>(n=Le(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=Be(e,n);return i(e,a),a};return a=o,(...e)=>a(Ve(...e))},We=[],U=e=>{let t=t=>t[e]||We;return t.isThemeGetter=!0,t},Ge=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Ke=/^\((?:(\w[\w-]*):)?(.+)\)$/i,qe=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Je=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Ye=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Xe=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Ze=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Qe=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,W=e=>qe.test(e),G=e=>!!e&&!Number.isNaN(Number(e)),K=e=>!!e&&Number.isInteger(Number(e)),$e=e=>e.endsWith(`%`)&&G(e.slice(0,-1)),q=e=>Je.test(e),et=()=>!0,tt=e=>Ye.test(e)&&!Xe.test(e),nt=()=>!1,rt=e=>Ze.test(e),it=e=>Qe.test(e),at=e=>!J(e)&&!X(e),ot=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),st=e=>Q(e,St,nt),J=e=>Ge.test(e),Y=e=>Q(e,Ct,tt),ct=e=>Q(e,wt,G),lt=e=>Q(e,Et,et),ut=e=>Q(e,Tt,nt),dt=e=>Q(e,bt,nt),ft=e=>Q(e,xt,it),pt=e=>Q(e,Dt,rt),X=e=>Ke.test(e),Z=e=>$(e,Ct),mt=e=>$(e,Tt),ht=e=>$(e,bt),gt=e=>$(e,St),_t=e=>$(e,xt),vt=e=>$(e,Dt,!0),yt=e=>$(e,Et,!0),Q=(e,t,n)=>{let r=Ge.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},$=(e,t,n=!1)=>{let r=Ke.exec(e);return r?r[1]?t(r[1]):n:!1},bt=e=>e===`position`||e===`percentage`,xt=e=>e===`image`||e===`url`,St=e=>e===`length`||e===`size`||e===`bg-size`,Ct=e=>e===`length`,wt=e=>e===`number`,Tt=e=>e===`family-name`,Et=e=>e===`number`||e===`weight`,Dt=e=>e===`shadow`,Ot=Ue(()=>{let e=U(`color`),t=U(`font`),n=U(`text`),r=U(`font-weight`),i=U(`tracking`),a=U(`leading`),o=U(`breakpoint`),s=U(`container`),c=U(`spacing`),l=U(`radius`),u=U(`shadow`),d=U(`inset-shadow`),f=U(`text-shadow`),p=U(`drop-shadow`),ee=U(`blur`),m=U(`perspective`),h=U(`aspect`),g=U(`ease`),te=U(`animate`),_=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],v=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],ne=()=>[...v(),X,J],re=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],y=()=>[`auto`,`contain`,`none`],b=()=>[X,J,c],x=()=>[W,`full`,`auto`,...b()],S=()=>[K,`none`,`subgrid`,X,J],C=()=>[`auto`,{span:[`full`,K,X,J]},K,X,J],w=()=>[K,`auto`,X,J],T=()=>[`auto`,`min`,`max`,`fr`,X,J],E=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],D=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],O=()=>[`auto`,...b()],k=()=>[W,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...b()],A=()=>[W,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...b()],j=()=>[W,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...b()],M=()=>[e,X,J],N=()=>[...v(),ht,dt,{position:[X,J]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,gt,st,{size:[X,J]}],oe=()=>[$e,Z,Y],P=()=>[``,`none`,`full`,l,X,J],F=()=>[``,G,Z,Y],I=()=>[`solid`,`dashed`,`dotted`,`double`],se=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],L=()=>[G,$e,ht,dt],ce=()=>[``,`none`,ee,X,J],R=()=>[`none`,G,X,J],z=()=>[`none`,G,X,J],B=()=>[G,X,J],V=()=>[W,`full`,...b()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[q],breakpoint:[q],color:[et],container:[q],"drop-shadow":[q],ease:[`in`,`out`,`in-out`],font:[at],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[q],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[q],shadow:[q],spacing:[`px`,G],text:[q],"text-shadow":[q],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,W,J,X,h]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,J]}],"container-named":[ot],columns:[{columns:[G,J,X,s]}],"break-after":[{"break-after":_()}],"break-before":[{"break-before":_()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:ne()}],overflow:[{overflow:re()}],"overflow-x":[{"overflow-x":re()}],"overflow-y":[{"overflow-y":re()}],overscroll:[{overscroll:y()}],"overscroll-x":[{"overscroll-x":y()}],"overscroll-y":[{"overscroll-y":y()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:x()}],"inset-x":[{"inset-x":x()}],"inset-y":[{"inset-y":x()}],start:[{"inset-s":x(),start:x()}],end:[{"inset-e":x(),end:x()}],"inset-bs":[{"inset-bs":x()}],"inset-be":[{"inset-be":x()}],top:[{top:x()}],right:[{right:x()}],bottom:[{bottom:x()}],left:[{left:x()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[K,`auto`,X,J]}],basis:[{basis:[W,`full`,`auto`,s,...b()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[G,W,`auto`,`initial`,`none`,J]}],grow:[{grow:[``,G,X,J]}],shrink:[{shrink:[``,G,X,J]}],order:[{order:[K,`first`,`last`,`none`,X,J]}],"grid-cols":[{"grid-cols":S()}],"col-start-end":[{col:C()}],"col-start":[{"col-start":w()}],"col-end":[{"col-end":w()}],"grid-rows":[{"grid-rows":S()}],"row-start-end":[{row:C()}],"row-start":[{"row-start":w()}],"row-end":[{"row-end":w()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":T()}],"auto-rows":[{"auto-rows":T()}],gap:[{gap:b()}],"gap-x":[{"gap-x":b()}],"gap-y":[{"gap-y":b()}],"justify-content":[{justify:[...E(),`normal`]}],"justify-items":[{"justify-items":[...D(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...D()]}],"align-content":[{content:[`normal`,...E()]}],"align-items":[{items:[...D(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...D(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":E()}],"place-items":[{"place-items":[...D(),`baseline`]}],"place-self":[{"place-self":[`auto`,...D()]}],p:[{p:b()}],px:[{px:b()}],py:[{py:b()}],ps:[{ps:b()}],pe:[{pe:b()}],pbs:[{pbs:b()}],pbe:[{pbe:b()}],pt:[{pt:b()}],pr:[{pr:b()}],pb:[{pb:b()}],pl:[{pl:b()}],m:[{m:O()}],mx:[{mx:O()}],my:[{my:O()}],ms:[{ms:O()}],me:[{me:O()}],mbs:[{mbs:O()}],mbe:[{mbe:O()}],mt:[{mt:O()}],mr:[{mr:O()}],mb:[{mb:O()}],ml:[{ml:O()}],"space-x":[{"space-x":b()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":b()}],"space-y-reverse":[`space-y-reverse`],size:[{size:k()}],"inline-size":[{inline:[`auto`,...A()]}],"min-inline-size":[{"min-inline":[`auto`,...A()]}],"max-inline-size":[{"max-inline":[`none`,...A()]}],"block-size":[{block:[`auto`,...j()]}],"min-block-size":[{"min-block":[`auto`,...j()]}],"max-block-size":[{"max-block":[`none`,...j()]}],w:[{w:[s,`screen`,...k()]}],"min-w":[{"min-w":[s,`screen`,`none`,...k()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...k()]}],h:[{h:[`screen`,`lh`,...k()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...k()]}],"max-h":[{"max-h":[`screen`,`lh`,...k()]}],"font-size":[{text:[`base`,n,Z,Y]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,yt,lt]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,$e,J]}],"font-family":[{font:[mt,ut,t]}],"font-features":[{"font-features":[J]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,X,J]}],"line-clamp":[{"line-clamp":[G,`none`,X,ct]}],leading:[{leading:[a,...b()]}],"list-image":[{"list-image":[`none`,X,J]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,J]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...I(),`wavy`]}],"text-decoration-thickness":[{decoration:[G,`from-font`,`auto`,X,Y]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[G,`auto`,X,J]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:b()}],"tab-size":[{tab:[K,X,J]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,J]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,J]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:N()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},K,X,J],radial:[``,X,J],conic:[K,X,J]},_t,ft]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-bs":[{"border-bs":F()}],"border-w-be":[{"border-be":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":F()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...I(),`hidden`,`none`]}],"divide-style":[{divide:[...I(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...I(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[G,X,J]}],"outline-w":[{outline:[``,G,Z,Y]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,vt,pt]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,vt,pt]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:F()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[G,Y]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,f,vt,pt]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[G,X,J]}],"mix-blend":[{"mix-blend":[...se(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":se()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[G]}],"mask-image-linear-from-pos":[{"mask-linear-from":L()}],"mask-image-linear-to-pos":[{"mask-linear-to":L()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":L()}],"mask-image-t-to-pos":[{"mask-t-to":L()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":L()}],"mask-image-r-to-pos":[{"mask-r-to":L()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":L()}],"mask-image-b-to-pos":[{"mask-b-to":L()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":L()}],"mask-image-l-to-pos":[{"mask-l-to":L()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":L()}],"mask-image-x-to-pos":[{"mask-x-to":L()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":L()}],"mask-image-y-to-pos":[{"mask-y-to":L()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[X,J]}],"mask-image-radial-from-pos":[{"mask-radial-from":L()}],"mask-image-radial-to-pos":[{"mask-radial-to":L()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":v()}],"mask-image-conic-pos":[{"mask-conic":[G]}],"mask-image-conic-from-pos":[{"mask-conic-from":L()}],"mask-image-conic-to-pos":[{"mask-conic-to":L()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:N()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,J]}],filter:[{filter:[``,`none`,X,J]}],blur:[{blur:ce()}],brightness:[{brightness:[G,X,J]}],contrast:[{contrast:[G,X,J]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,vt,pt]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,G,X,J]}],"hue-rotate":[{"hue-rotate":[G,X,J]}],invert:[{invert:[``,G,X,J]}],saturate:[{saturate:[G,X,J]}],sepia:[{sepia:[``,G,X,J]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,J]}],"backdrop-blur":[{"backdrop-blur":ce()}],"backdrop-brightness":[{"backdrop-brightness":[G,X,J]}],"backdrop-contrast":[{"backdrop-contrast":[G,X,J]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,G,X,J]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[G,X,J]}],"backdrop-invert":[{"backdrop-invert":[``,G,X,J]}],"backdrop-opacity":[{"backdrop-opacity":[G,X,J]}],"backdrop-saturate":[{"backdrop-saturate":[G,X,J]}],"backdrop-sepia":[{"backdrop-sepia":[``,G,X,J]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":b()}],"border-spacing-x":[{"border-spacing-x":b()}],"border-spacing-y":[{"border-spacing-y":b()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,J]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[G,`initial`,X,J]}],ease:[{ease:[`linear`,`initial`,g,X,J]}],delay:[{delay:[G,X,J]}],animate:[{animate:[`none`,te,X,J]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[m,X,J]}],"perspective-origin":[{"perspective-origin":ne()}],rotate:[{rotate:R()}],"rotate-x":[{"rotate-x":R()}],"rotate-y":[{"rotate-y":R()}],"rotate-z":[{"rotate-z":R()}],scale:[{scale:z()}],"scale-x":[{"scale-x":z()}],"scale-y":[{"scale-y":z()}],"scale-z":[{"scale-z":z()}],"scale-3d":[`scale-3d`],skew:[{skew:B()}],"skew-x":[{"skew-x":B()}],"skew-y":[{"skew-y":B()}],transform:[{transform:[X,J,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:ne()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:V()}],"translate-x":[{"translate-x":V()}],"translate-y":[{"translate-y":V()}],"translate-z":[{"translate-z":V()}],"translate-none":[`translate-none`],zoom:[{zoom:[K,X,J]}],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,J]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":M()}],"scrollbar-track-color":[{"scrollbar-track":M()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":b()}],"scroll-mx":[{"scroll-mx":b()}],"scroll-my":[{"scroll-my":b()}],"scroll-ms":[{"scroll-ms":b()}],"scroll-me":[{"scroll-me":b()}],"scroll-mbs":[{"scroll-mbs":b()}],"scroll-mbe":[{"scroll-mbe":b()}],"scroll-mt":[{"scroll-mt":b()}],"scroll-mr":[{"scroll-mr":b()}],"scroll-mb":[{"scroll-mb":b()}],"scroll-ml":[{"scroll-ml":b()}],"scroll-p":[{"scroll-p":b()}],"scroll-px":[{"scroll-px":b()}],"scroll-py":[{"scroll-py":b()}],"scroll-ps":[{"scroll-ps":b()}],"scroll-pe":[{"scroll-pe":b()}],"scroll-pbs":[{"scroll-pbs":b()}],"scroll-pbe":[{"scroll-pbe":b()}],"scroll-pt":[{"scroll-pt":b()}],"scroll-pr":[{"scroll-pr":b()}],"scroll-pb":[{"scroll-pb":b()}],"scroll-pl":[{"scroll-pl":b()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,J]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[G,Z,Y,ct]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function kt(...e){return Ot(fe(e))}var At=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),jt=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Mt=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),Nt=e=>{let t=Mt(e);return t.charAt(0).toUpperCase()+t.slice(1)},Pt={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`},Ft=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},It=(0,s.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...c},l)=>(0,s.createElement)(`svg`,{ref:l,...Pt,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:At(`lucide`,i),...!a&&!Ft(c)&&{"aria-hidden":`true`},...c},[...o.map(([e,t])=>(0,s.createElement)(e,t)),...Array.isArray(a)?a:[a]])),Lt=(e,t)=>{let n=(0,s.forwardRef)(({className:n,...r},i)=>(0,s.createElement)(It,{ref:i,iconNode:t,className:At(`lucide-${jt(Nt(e))}`,`lucide-${e}`,n),...r}));return n.displayName=Nt(e),n},Rt=Lt(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),zt=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,Bt=fe,Vt=(e,t)=>n=>{if(t?.variants==null)return Bt(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=zt(t)||zt(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return Bt(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},Ht=Vt(`inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/90`,destructive:`bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40`,outline:`border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80`,ghost:`hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 px-4 py-2 has-[>svg]:px-3`,xs:`h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5`,lg:`h-10 rounded-md px-6 has-[>svg]:px-4`,icon:`size-9`,"icon-xs":`size-6 rounded-md [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function Ut({className:e,variant:t=`default`,size:n=`default`,asChild:r=!1,...i}){let a=r?k:`button`;return(0,z.jsx)(a,{"data-slot":`button`,"data-variant":t,"data-size":n,className:kt(Ht({variant:t,size:n,className:e})),...i})}export{m as _,Lt as a,o as b,ue as c,j as d,w as f,h as g,g as h,Rt as i,R as l,y as m,Ht as n,kt as o,T as p,Vt as r,le as s,Ut as t,O as u,c as v,u as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./button--s6nUzD8.js";var t=e(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]);export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,h as t,i as n,l as r,r as i,s as a,v as o}from"./ui-store-DfspmPOn.js";import{i as s,n as c,o as l,s as u}from"./settings-store-WUA0-UcP.js";var d=()=>new Date().toISOString().slice(0,7);function f(e,t){let n=e?.month===t;return{total:(e?.total??0)+1,month:t,monthTotal:n?e.monthTotal+1:1}}var p=i()(u((e,t)=>({features:{},countFeatureUse:n=>{let r=f(t().features[n],d());return e(e=>({features:{...e.features,[n]:r}})),r}}),{name:`planche-usage`,storage:s()}));function m(t){let i=p.getState().countFeatureUse(t);e(`pro_feature_use`,{feature:t,uses:r(i.total),uses_this_month:r(i.monthTotal),first_use:i.total===1}),i.total===1&&a({pro_features:n(Object.keys(p.getState().features).length)})}var h=`planche-session-credentials`;function g(){try{let e=sessionStorage.getItem(h);return e?JSON.parse(e):{}}catch{return{}}}function _(e){try{sessionStorage.setItem(h,JSON.stringify(e))}catch{}}function v(e){return{pass:e.pass||void 0,sshPassword:e.ssh?.password||void 0,sshPassphrase:e.ssh?.passphrase||void 0,sshPrivateKey:e.ssh?.privateKey||void 0,authToken:e.authToken||void 0}}function y(e){let t={...e,pass:``,authToken:``};return e.ssh&&(t.ssh={...e.ssh,password:void 0,passphrase:void 0,privateKey:void 0}),t}function b(e,t){let n={...e,pass:e.pass||t.pass||``,authToken:e.authToken||t.authToken||``};return e.ssh&&(n.ssh={...e.ssh,password:e.ssh.password||t.sshPassword,passphrase:e.ssh.passphrase||t.sshPassphrase,privateKey:e.ssh.privateKey||t.sshPrivateKey}),n}function x(e,t){let n=g(),r=Object.fromEntries(Object.entries(t).filter(([,e])=>e));Object.keys(r).length?n[e]=r:delete n[e],_(n)}function S(e){let t=g()[e];if(t!==void 0)return typeof t==`string`?{pass:t}:t}function C(e){let t=g();delete t[e],_(t)}var w=o(t(),1);function T(e,t){let n=(0,w.useRef)(null),[r,i]=(0,w.useState)(null),a=(0,w.useCallback)(()=>{n.current=null,i(null)},[]),o=e=>{let t=e.currentTarget.getBoundingClientRect();return{before:e.clientX<t.left+t.width/2}};return{dragProps:(0,w.useCallback)(r=>({draggable:!0,onDragStart:e=>{n.current=r,e.dataTransfer.effectAllowed=`move`,e.dataTransfer.setData(`text/plain`,r)},onDragOver:t=>{if(!n.current||n.current===r)return;t.preventDefault(),t.dataTransfer.dropEffect=`move`;let{before:a}=o(t),s=e.indexOf(r),c=a?r:e[s+1]??`end`;i(e=>e===c?e:c)},onDrop:i=>{let s=n.current;if(!s||s===r)return a();i.preventDefault();let{before:c}=o(i),l=e.filter(e=>e!==s).indexOf(r);c||(l+=1),t(s,l),a()},onDragEnd:a}),[e,t,a]),dropIndicator:r,isDragging:()=>n.current!==null}}function E(e,t,n){let r=e.find(e=>e.id===t);if(!r)return e;let i=e.filter(e=>e.id!==t),a=Math.max(0,Math.min(n,i.length));return[...i.slice(0,a),r,...i.slice(a)]}var D=/--[^\n]*|\/\*[\s\S]*?\*\/|\$([A-Za-z_]\w*)?\$[\s\S]*?\$\1\$|'(?:[^']|'')*'|"(?:[^"]|"")*"|\[[^\]]*\]|[A-Za-z_][\w$#]*|\S/g,O=`'***'`,k=/((?:password|pwd)\s*=\s*)[^;'"]+/gi;function A(e){let t=[];for(let n of e.matchAll(D)){let e=n[0];if(e.startsWith(`--`)||e.startsWith(`/*`))continue;let r=e[0],i=r===`'`||r===`"`||r===`$`?`literal`:/[A-Za-z_]/.test(r)?`word`:`other`;t.push({text:e,start:n.index,end:n.index+e.length,kind:i})}return t}var j=e=>e?.kind===`word`?e.text.toUpperCase():``;function M(e){let t=A(e),n=[],r=e=>{!e||e.kind===`other`||n.push({start:e.start,end:e.end,text:e.kind===`literal`?O:`***`})},i=e=>{let n=t[e];return n?n.kind===`literal`?{token:n,span:1}:n.kind===`word`&&/^[NE]$/i.test(n.text)&&t[e+1]?.kind===`literal`?{token:t[e+1],span:2}:null:null};for(let e=0;e<t.length;e++){let a=t[e];if(a.kind===`literal`){k.test(a.text)&&(k.lastIndex=0,n.push({start:a.start,end:a.end,text:a.text.replace(k,`$1***`)})),k.lastIndex=0;continue}if(a.kind!==`word`)continue;let o=a.text.toUpperCase();if(o===`IDENTIFIED`){let n=e+1;if(j(t[n])===`WITH`&&(n+=2),j(t[n])!==`BY`&&j(t[n])!==`AS`||(n+=1,(j(t[n])===`PASSWORD`||j(t[n])===`VALUES`)&&(n+=1),j(t[n])===`RANDOM`))continue;let a=i(n);a?(r(a.token),n+=a.span):t[n]?.kind===`word`&&(r(t[n]),n+=1),j(t[n])===`REPLACE`&&r(i(n+1)?.token??t[n+1]);continue}if(o===`PASSWORD`){let n=e+1;if(t[n]?.text===`(`){r(i(n+1)?.token);continue}if(j(t[n])===`FOR`)for(;n<t.length&&t[n].text!==`=`;)n++;t[n]?.text===`=`&&(n+=1),r(i(n)?.token)}}if(n.length===0)return e;n.sort((e,t)=>e.start-t.start);let a=``,o=0;for(let t of n)t.start<o||(a+=e.slice(o,t.start)+t.text,o=t.end);return a+e.slice(o)}var N=2e4;function P(e){let t=e.slice(0,400),n=0;for(let e=0;e<t.length;e++)if(n+=t[e].text.length,n>15e5)return t.slice(0,Math.max(1,e));return t}function F(e,t){return e.find(e=>e.docId===t)}var I=i()(u(e=>({revisions:{},importedLegacy:!1,capture:(t,{docId:n,title:r,text:i,database:a,reason:o})=>e(e=>{let s=M(i);if(!s.trim())return{};let c=e.revisions[t]??[];if(F(c,n)?.text===s)return{};let l={id:crypto.randomUUID(),docId:n,title:r,text:s,database:a,timestamp:Date.now(),reason:o};return{revisions:{...e.revisions,[t]:P([l,...c])}}}),removeRevision:(t,n)=>e(e=>({revisions:{...e.revisions,[t]:(e.revisions[t]??[]).filter(e=>e.id!==n)}})),clearRevisions:t=>e(e=>{let n={...e.revisions};return delete n[t],{revisions:n}}),mergeRevisions:t=>e(e=>{let n={...e.revisions};for(let[e,r]of Object.entries(t))n[e]=P([...n[e]??[],...r].sort((e,t)=>t.timestamp-e.timestamp));return{revisions:n,importedLegacy:!0}})}),{name:`planche-revisions`,storage:s(),version:1,partialize:e=>({revisions:c.getState().persistQueryHistory?e.revisions:{},importedLegacy:e.importedLegacy}),onRehydrateStorage:()=>e=>{!e||e.importedLegacy||R()}}));function L(e,t){let n={};for(let[r,i]of Object.entries(e.snapshots??{})){let a=new Map((e.tabs?.[r]??[]).map(e=>[e.id,e.title])),o=[];for(let[e,n]of Object.entries(i??{}))for(let r of n??[])r?.text?.trim()&&o.push({id:crypto.randomUUID(),docId:e,title:a.get(e)??t,text:r.text,database:``,timestamp:r.timestamp,reason:r.reason});o.length>0&&(n[r]=o.sort((e,t)=>t.timestamp-e.timestamp))}return n}async function R(){try{let e=await l.getItem(`planche-query`);if(!e){I.setState({importedLegacy:!0});return}let t=L(JSON.parse(e).state??{},`Query`);I.getState().mergeRevisions(t)}catch{I.setState({importedLegacy:!0})}}var z=new Map;function B(e,t){let n=`${e}:${t.docId}`,r=z.get(n);r&&clearTimeout(r),z.set(n,setTimeout(()=>{z.delete(n),I.getState().capture(e,t)},N))}function V(e,t){let n=`${e}:${t}`,r=z.get(n);r&&(clearTimeout(r),z.delete(n))}function H(e){return e.savePassword===!1?y(e):e}function U(e){return y(e)}var W=i()(u((t,n)=>({savedConnections:[],activeConnections:[],activeConnectionId:null,transactionOpen:{},pendingReopen:{},fileDetached:{},addSavedConnection:e=>{e.savePassword===!1&&x(e.id,v(e)),t(t=>({savedConnections:[...t.savedConnections,e]}))},updateSavedConnection:(e,r)=>{let i={...n().savedConnections.find(t=>t.id===e),...r};i.savePassword===!1&&x(e,v(i)),t(t=>({savedConnections:t.savedConnections.map(t=>t.id===e?{...t,...r}:t)}))},deleteSavedConnection:e=>{C(e),I.getState().clearRevisions(e),t(t=>({savedConnections:t.savedConnections.filter(t=>t.id!==e)}))},openConnection:n=>t(t=>{let r=t.activeConnections.some(e=>e.id===n.id),i={...t.pendingReopen};return delete i[n.id],r?{activeConnections:t.activeConnections.map(e=>e.id===n.id?{...e,...n}:e),activeConnectionId:n.id,pendingReopen:i}:(e(`connection_open`,{dbms:n.dbms,transport:n.transport??`tunnel`,sample:!!n.sample,ssh:!!n.ssh?.enabled}),n.ssh?.enabled&&m(`ssh_tunnel`),{activeConnections:[...t.activeConnections,n],activeConnectionId:n.id,pendingReopen:i})}),closeConnection:e=>t(t=>{let n=t.activeConnections.filter(t=>t.id!==e),r=t.activeConnectionId===e?n.length>0?n[n.length-1].id:null:t.activeConnectionId,i={...t.transactionOpen},a={...t.pendingReopen},o={...t.fileDetached};return delete i[e],delete a[e],delete o[e],{activeConnections:n,activeConnectionId:r,transactionOpen:i,pendingReopen:a,fileDetached:o}}),reorderActiveConnection:(e,n)=>t(t=>({activeConnections:E(t.activeConnections,e,n)})),setActiveConnection:e=>t({activeConnectionId:e}),updateServerConnectionId:(e,n)=>t(t=>({activeConnections:t.activeConnections.map(t=>t.id===e?{...t,serverConnectionId:n}:t)})),updateProfile:(e,n)=>t(t=>({savedConnections:t.savedConnections.map(t=>t.id===e?{...t,...n}:t),activeConnections:t.activeConnections.map(t=>t.id===e?{...t,...n}:t)})),setTransactionOpen:(e,n)=>t(t=>({transactionOpen:{...t.transactionOpen,[e]:n}})),setPendingReopen:(e,n)=>t(t=>({pendingReopen:{...t.pendingReopen,[e]:n}})),setFileDetached:(e,n)=>t(t=>({fileDetached:{...t.fileDetached,[e]:n}})),resolveCredentials:e=>{let t=n().savedConnections.find(t=>t.id===e.id);return b(t?b(e,v(t)):e,S(e.id)??{})}}),{name:`planche-connections`,storage:s(),version:1,migrate:e=>{let t=e;return Array.isArray(t.savedConnections)&&(t.savedConnections=t.savedConnections.map(e=>({...e,savePassword:e.savePassword??!0}))),t},partialize:e=>({savedConnections:e.savedConnections.map(H),activeConnections:e.activeConnections.map(U),activeConnectionId:e.activeConnectionId})}));export{M as a,m as c,I as i,p as l,V as n,E as o,B as r,T as s,W as t};
|