opencami 1.7.0 → 1.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.md +167 -7
  2. package/bin/opencami.js +15 -6
  3. package/dist/client/assets/{CSPContext-a-MQmQQt.js → CSPContext-DeJH85nm.js} +1 -1
  4. package/dist/client/assets/{DirectionContext-DRcND-Cm.js → DirectionContext-CxhRpXkm.js} +1 -1
  5. package/dist/client/assets/_sessionKey-CQE0brGK.js +23 -0
  6. package/dist/client/assets/agents-CMTFd_sG.js +2 -0
  7. package/dist/client/assets/agents-screen-BNQGEqcW.js +1 -0
  8. package/dist/client/assets/bots-B6oGzCxP.js +2 -0
  9. package/dist/client/assets/bots-screen-Be3cfGgq.js +1 -0
  10. package/dist/client/assets/button-D9Plv7hu.js +1 -0
  11. package/dist/client/assets/composite-B2KCZKKL.js +1 -0
  12. package/dist/client/assets/{connect-BX1MWO82.js → connect-DuJfnyNK.js} +1 -1
  13. package/dist/client/assets/dashboard-00GpXm5V.js +1 -0
  14. package/dist/client/assets/event-DD8Cz4O9.js +1 -0
  15. package/dist/client/assets/file-explorer-screen-CxwemBES.js +1 -0
  16. package/dist/client/assets/files-DyBJVXBu.js +2 -0
  17. package/dist/client/assets/{index-BlC2sH55.js → index-DtGzE-ea.js} +1 -1
  18. package/dist/client/assets/{index-Dg0mbvtv.js → index-Yo5UhdZV.js} +1 -1
  19. package/dist/client/assets/keyboard-shortcuts-dialog-BZwd-iyV.js +1 -0
  20. package/dist/client/assets/{main-CEuT8-Qi.js → main-CgwdHc9W.js} +16 -8
  21. package/dist/client/assets/{markdown-DKD6ZLRJ.js → markdown-DtWnt4NA.js} +1 -1
  22. package/dist/client/assets/memory-l756yiNq.js +2 -0
  23. package/dist/client/assets/memory-screen-BQtVRuzE.js +1 -0
  24. package/dist/client/assets/menu-BsS6CDf_.js +1 -0
  25. package/dist/client/assets/{opencami-logo-DA69yVKc.js → opencami-logo-Bmge6-FB.js} +1 -1
  26. package/dist/client/assets/popupStateMapping-D0ZbJR_o.js +1 -0
  27. package/dist/client/assets/{proxy-Cawf6X0W.js → proxy-CYZeDXoy.js} +1 -1
  28. package/dist/client/assets/{react-K9goXsVv.js → react-DODKNyyU.js} +1 -1
  29. package/dist/client/assets/search-dialog-DW91SK30.js +1 -0
  30. package/dist/client/assets/session-export-dialog-CliO9Ob-.js +1 -0
  31. package/dist/client/assets/settings-dialog-C1u52aju.js +1 -0
  32. package/dist/client/assets/skills-8T_avaVb.js +2 -0
  33. package/dist/client/assets/{skills-panel-DFL-3BRH.js → skills-panel-DSiH-DLs.js} +1 -1
  34. package/dist/client/assets/styles-DvaLh0o1.css +1 -0
  35. package/dist/client/assets/switch-DbgQPO6i.js +1 -0
  36. package/dist/client/assets/tabs-BsAvZnlD.js +1 -0
  37. package/dist/client/assets/tooltip-DLmutB5C.js +1 -0
  38. package/dist/client/assets/use-file-explorer-state-Cg_yDYJl.js +12 -0
  39. package/dist/client/assets/useBaseUiId-KQTzRPLp.js +1 -0
  40. package/dist/client/assets/useCompositeItem-BPY2_hF_.js +1 -0
  41. package/dist/client/assets/{useControlled-Cl9XA2_f.js → useControlled-B5pEEz2V.js} +1 -1
  42. package/dist/client/assets/{useMutation-C5bTdeC1.js → useMutation-BsQD6FKe.js} +1 -1
  43. package/dist/client/assets/useQuery-CmAJuY2W.js +1 -0
  44. package/dist/client/assets/visuallyHidden-COI6QeQH.js +1 -0
  45. package/dist/client/sw.js +5 -164
  46. package/dist/server/assets/{_sessionKey-BBG3ZUlo.js → _sessionKey-C9o7YfxA.js} +878 -755
  47. package/dist/server/assets/_tanstack-start-manifest_v-BMCAWon2.js +4 -0
  48. package/dist/server/assets/dashboard-GCKodTiJ.js +214 -0
  49. package/dist/server/assets/{index-BgMPaOsU.js → index-Bw-bA_2M.js} +4 -3
  50. package/dist/server/assets/{router-Bl2uabfY.js → router-DCjikH21.js} +704 -207
  51. package/dist/server/assets/{search-dialog-BtSQW9SR.js → search-dialog-BnwiXpdA.js} +5 -4
  52. package/dist/server/assets/settings-dialog-ClKFnZ1x.js +1511 -0
  53. package/dist/server/server.js +2 -2
  54. package/package.json +1 -1
  55. package/dist/client/assets/_sessionKey-BAmpzUOP.js +0 -23
  56. package/dist/client/assets/agents-BkeWu_3a.js +0 -2
  57. package/dist/client/assets/agents-screen-Cb76bcxn.js +0 -1
  58. package/dist/client/assets/bots-CyJwr-JU.js +0 -2
  59. package/dist/client/assets/bots-screen-CzNjLsQH.js +0 -1
  60. package/dist/client/assets/button-DNC5N25i.js +0 -1
  61. package/dist/client/assets/composite-Bliqcmg4.js +0 -1
  62. package/dist/client/assets/file-explorer-screen-CpY1O_ag.js +0 -1
  63. package/dist/client/assets/files-HiN5rXWq.js +0 -2
  64. package/dist/client/assets/keyboard-shortcuts-dialog-C2Hq19LN.js +0 -1
  65. package/dist/client/assets/memory-lhzf-8Q4.js +0 -2
  66. package/dist/client/assets/memory-screen-Zq9qfnJK.js +0 -1
  67. package/dist/client/assets/menu-47ooFeSm.js +0 -1
  68. package/dist/client/assets/owner-CFRNz_Tp.js +0 -1
  69. package/dist/client/assets/popupStateMapping-D5k-jOeY.js +0 -1
  70. package/dist/client/assets/search-dialog-C5Yae9rb.js +0 -1
  71. package/dist/client/assets/session-export-dialog-CBeTfbll.js +0 -1
  72. package/dist/client/assets/settings-dialog-CoeG9M1b.js +0 -1
  73. package/dist/client/assets/skills-BEkw619A.js +0 -2
  74. package/dist/client/assets/styles-D4EBtWYc.css +0 -1
  75. package/dist/client/assets/switch-DAFvLxNX.js +0 -1
  76. package/dist/client/assets/tabs-B2Y_7MvG.js +0 -1
  77. package/dist/client/assets/tooltip-D57Pal0B.js +0 -1
  78. package/dist/client/assets/use-file-explorer-state-DppKEjcl.js +0 -12
  79. package/dist/client/assets/useButton-DVAfkehQ.js +0 -1
  80. package/dist/client/assets/useCompositeItem-CzdGhGcj.js +0 -1
  81. package/dist/client/assets/visuallyHidden-CO3ZD5AQ.js +0 -1
  82. package/dist/server/assets/_tanstack-start-manifest_v-DmMFarHb.js +0 -4
  83. package/dist/server/assets/settings-dialog-D3fOAswX.js +0 -1173
@@ -1,4 +1,4 @@
1
- import{A as Ir,j as P,r as ce,d as Gi,L as Pn}from"./main-CEuT8-Qi.js";import{r as Xi,C as Jt}from"./index-BlC2sH55.js";import{u as Ct,D as Yi,a as Ji,b as Ki,d as el}from"./use-file-explorer-state-DppKEjcl.js";import{c as tl,B as Fn}from"./button-DNC5N25i.js";import{s as Kt,h as nl,w as rl,f as il,a as ll,b as sl,c as Ln}from"./index-T4TOjvD0.js";function en(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Ae=en();function Tr(e){Ae=e}var We={exec:()=>null};function j(e,t=""){let n=typeof e=="string"?e:e.source,r={replace:(i,s)=>{let l=typeof s=="string"?s:s.source;return l=l.replace(J.caret,"$1"),n=n.replace(i,l),r},getRegex:()=>new RegExp(n,t)};return r}var al=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),J={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},ol=/^(?:[ \t]*(?:\n|$))+/,ul=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,cl=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Je=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,hl=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,tn=/(?:[*+-]|\d{1,9}[.)])/,Ar=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,zr=j(Ar).replace(/bull/g,tn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),fl=j(Ar).replace(/bull/g,tn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),nn=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,pl=/^[^\n]+/,rn=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ml=j(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",rn).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),gl=j(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,tn).getRegex(),dt="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ln=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,dl=j("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",ln).replace("tag",dt).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Rr=j(nn).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex(),kl=j(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Rr).getRegex(),sn={blockquote:kl,code:ul,def:ml,fences:cl,heading:hl,hr:Je,html:dl,lheading:zr,list:gl,newline:ol,paragraph:Rr,table:We,text:pl},vn=j("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex(),xl={...sn,lheading:fl,table:vn,paragraph:j(nn).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",vn).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex()},yl={...sn,html:j(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ln).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:We,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:j(nn).replace("hr",Je).replace("heading",` *#{1,6} *[^
1
+ import{A as Ir,j as P,r as ce,d as Gi,L as Pn}from"./main-CgwdHc9W.js";import{r as Xi,C as Jt}from"./index-DtGzE-ea.js";import{u as Ct,D as Yi,a as Ji,b as Ki,d as el}from"./use-file-explorer-state-Cg_yDYJl.js";import{c as tl,B as Fn}from"./button-D9Plv7hu.js";import{s as Kt,h as nl,w as rl,f as il,a as ll,b as sl,c as Ln}from"./index-T4TOjvD0.js";function en(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Ae=en();function Tr(e){Ae=e}var We={exec:()=>null};function j(e,t=""){let n=typeof e=="string"?e:e.source,r={replace:(i,s)=>{let l=typeof s=="string"?s:s.source;return l=l.replace(J.caret,"$1"),n=n.replace(i,l),r},getRegex:()=>new RegExp(n,t)};return r}var al=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),J={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},ol=/^(?:[ \t]*(?:\n|$))+/,ul=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,cl=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Je=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,hl=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,tn=/(?:[*+-]|\d{1,9}[.)])/,Ar=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,zr=j(Ar).replace(/bull/g,tn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),fl=j(Ar).replace(/bull/g,tn).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),nn=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,pl=/^[^\n]+/,rn=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,ml=j(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",rn).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),gl=j(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,tn).getRegex(),dt="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ln=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,dl=j("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",ln).replace("tag",dt).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Rr=j(nn).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex(),kl=j(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Rr).getRegex(),sn={blockquote:kl,code:ul,def:ml,fences:cl,heading:hl,hr:Je,html:dl,lheading:zr,list:gl,newline:ol,paragraph:Rr,table:We,text:pl},vn=j("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex(),xl={...sn,lheading:fl,table:vn,paragraph:j(nn).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",vn).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",dt).getRegex()},yl={...sn,html:j(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ln).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:We,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:j(nn).replace("hr",Je).replace("heading",` *#{1,6} *[^
2
2
  ]`).replace("lheading",zr).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},bl=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,wl=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,_r=/^( {2,}|\\)\n(?!\s*$)/,Sl=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,kt=/[\p{P}\p{S}]/u,an=/[\s\p{P}\p{S}]/u,Pr=/[^\s\p{P}\p{S}]/u,Cl=j(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,an).getRegex(),Fr=/(?!~)[\p{P}\p{S}]/u,El=/(?!~)[\s\p{P}\p{S}]/u,Il=/(?:[^\s\p{P}\p{S}]|~)/u,Tl=j(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",al?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Lr=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Al=j(Lr,"u").replace(/punct/g,kt).getRegex(),zl=j(Lr,"u").replace(/punct/g,Fr).getRegex(),vr="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Rl=j(vr,"gu").replace(/notPunctSpace/g,Pr).replace(/punctSpace/g,an).replace(/punct/g,kt).getRegex(),_l=j(vr,"gu").replace(/notPunctSpace/g,Il).replace(/punctSpace/g,El).replace(/punct/g,Fr).getRegex(),Pl=j("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Pr).replace(/punctSpace/g,an).replace(/punct/g,kt).getRegex(),Fl=j(/\\(punct)/,"gu").replace(/punct/g,kt).getRegex(),Ll=j(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),vl=j(ln).replace("(?:-->|$)","-->").getRegex(),Dl=j("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",vl).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),ot=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Nl=j(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",ot).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Dr=j(/^!?\[(label)\]\[(ref)\]/).replace("label",ot).replace("ref",rn).getRegex(),Nr=j(/^!?\[(ref)\](?:\[\])?/).replace("ref",rn).getRegex(),Ol=j("reflink|nolink(?!\\()","g").replace("reflink",Dr).replace("nolink",Nr).getRegex(),Dn=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,on={_backpedal:We,anyPunctuation:Fl,autolink:Ll,blockSkip:Tl,br:_r,code:wl,del:We,emStrongLDelim:Al,emStrongRDelimAst:Rl,emStrongRDelimUnd:Pl,escape:bl,link:Nl,nolink:Nr,punctuation:Cl,reflink:Dr,reflinkSearch:Ol,tag:Dl,text:Sl,url:We},$l={...on,link:j(/^!?\[(label)\]\((.*?)\)/).replace("label",ot).getRegex(),reflink:j(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",ot).getRegex()},Mt={...on,emStrongRDelimAst:_l,emStrongLDelim:zl,url:j(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Dn).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:j(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Dn).getRegex()},Bl={...Mt,br:j(_r).replace("{2,}","*").getRegex(),text:j(Mt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},nt={normal:sn,gfm:xl,pedantic:yl},Be={normal:on,gfm:Mt,breaks:Bl,pedantic:$l},jl={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Nn=e=>jl[e];function ke(e,t){if(t){if(J.escapeTest.test(e))return e.replace(J.escapeReplace,Nn)}else if(J.escapeTestNoEncode.test(e))return e.replace(J.escapeReplaceNoEncode,Nn);return e}function On(e){try{e=encodeURI(e).replace(J.percentDecode,"%")}catch{return null}return e}function $n(e,t){let n=e.replace(J.findPipe,(s,l,a)=>{let o=!1,u=l;for(;--u>=0&&a[u]==="\\";)o=!o;return o?"|":" |"}),r=n.split(J.splitPipe),i=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),t)if(r.length>t)r.splice(t);else for(;r.length<t;)r.push("");for(;i<r.length;i++)r[i]=r[i].trim().replace(J.slashPipe,"|");return r}function je(e,t,n){let r=e.length;if(r===0)return"";let i=0;for(;i<r&&e.charAt(r-i-1)===t;)i++;return e.slice(0,r-i)}function Ml(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]==="\\")r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function Bn(e,t,n,r,i){let s=t.href,l=t.title||null,a=e[1].replace(i.other.outputLinkReplace,"$1");r.state.inLink=!0;let o={type:e[0].charAt(0)==="!"?"image":"link",raw:n,href:s,title:l,text:a,tokens:r.inlineTokens(a)};return r.state.inLink=!1,o}function ql(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
3
3
  `).map(s=>{let l=s.match(n.other.beginningSpace);if(l===null)return s;let[a]=l;return a.length>=i.length?s.slice(i.length):s}).join(`
4
4
  `)}var ut=class{options;rules;lexer;constructor(e){this.options=e||Ae}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:je(n,`
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/memory-screen-BQtVRuzE.js","assets/main-CgwdHc9W.js","assets/useQuery-CmAJuY2W.js","assets/useMutation-BsQD6FKe.js","assets/button-D9Plv7hu.js","assets/markdown-DtWnt4NA.js","assets/index-DtGzE-ea.js","assets/react-DODKNyyU.js","assets/use-file-explorer-state-Cg_yDYJl.js","assets/useBaseUiId-KQTzRPLp.js","assets/event-DD8Cz4O9.js","assets/popupStateMapping-D0ZbJR_o.js","assets/visuallyHidden-COI6QeQH.js","assets/composite-B2KCZKKL.js","assets/index-T4TOjvD0.js"])))=>i.map(i=>d[i]);
2
+ import{j as e,r,_ as s}from"./main-CgwdHc9W.js";const n=r.lazy(()=>s(()=>import("./memory-screen-BQtVRuzE.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14])).then(t=>({default:t.MemoryScreen})));function a(){return e.jsx(r.Suspense,{fallback:e.jsx("div",{className:"flex h-screen items-center justify-center text-primary-500 text-sm",children:"Loading…"}),children:e.jsx(n,{})})}export{a as component};
@@ -0,0 +1 @@
1
+ import{j as e,r as h,u as N,L as R}from"./main-CgwdHc9W.js";import{u as g}from"./useQuery-CmAJuY2W.js";import{u as S}from"./useMutation-BsQD6FKe.js";import{c as M,B as f,b as k}from"./button-D9Plv7hu.js";import{M as C}from"./markdown-DtWnt4NA.js";import"./index-DtGzE-ea.js";import"./react-DODKNyyU.js";import"./use-file-explorer-state-Cg_yDYJl.js";import"./useBaseUiId-KQTzRPLp.js";import"./event-DD8Cz4O9.js";import"./popupStateMapping-D0ZbJR_o.js";import"./visuallyHidden-COI6QeQH.js";import"./composite-B2KCZKKL.js";import"./index-T4TOjvD0.js";const w=/\/(\d{4}-\d{2}-\d{2})/;function j({path:r,label:n,selected:o,onSelect:m}){return e.jsx("button",{type:"button",onClick:()=>m(r),className:M("w-full text-left px-2.5 py-1.5 rounded-md text-sm transition-colors",o?"text-primary-900":"text-primary-600 hover:text-primary-900 hover:bg-primary-50"),style:o?{backgroundColor:"var(--opencami-accent-light)"}:void 0,children:n})}function b(r){return r==="/MEMORY.md"?"📋 MEMORY.md":r.match(w)?`📅 ${r.replace(/^\/?memory\//,"")}`:`📄 ${r.replace(/^\/?memory\//,"")}`}function F({files:r,selectedPath:n,onSelect:o,loading:m}){const i=r.filter(t=>t==="/MEMORY.md"),s=r.filter(t=>t!=="/MEMORY.md"&&w.test(t)),l=r.filter(t=>t!=="/MEMORY.md"&&!w.test(t));return e.jsxs("aside",{className:"border-r border-primary-200 bg-primary-100 md:w-72 w-full md:h-full h-auto overflow-y-auto",children:[e.jsx("div",{className:"px-4 py-3 border-b border-primary-200",children:e.jsx("h2",{className:"text-sm font-semibold text-primary-800",children:"Memory Files"})}),e.jsx("div",{className:"p-2 space-y-0.5",children:m?e.jsx("div",{className:"px-2 py-2 text-sm text-primary-500",children:"Loading files…"}):r.length===0?e.jsx("div",{className:"px-2 py-2 text-sm text-primary-500",children:"No memory files found."}):e.jsxs(e.Fragment,{children:[i.map(t=>e.jsx(j,{path:t,label:b(t),selected:n===t,onSelect:o},t)),s.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-2.5 pt-3 pb-1 text-xs font-medium text-primary-400 uppercase tracking-wider",children:"Daily"}),s.map(t=>e.jsx(j,{path:t,label:b(t),selected:n===t,onSelect:o},t))]}),l.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-2.5 pt-3 pb-1 text-xs font-medium text-primary-400 uppercase tracking-wider",children:"Notes"}),l.map(t=>e.jsx(j,{path:t,label:b(t),selected:n===t,onSelect:o},t))]})]})})]})}function O({filePath:r,content:n,isLoading:o,onSave:m,onBack:i}){const[s,l]=h.useState(!1),[t,x]=h.useState(n),[u,p]=h.useState(!1);h.useEffect(()=>{x(n),l(!1)},[r,n]);const a=async()=>{p(!0);try{await m(t),l(!1)}finally{p(!1)}};return e.jsxs("section",{className:"flex-1 min-h-0 flex flex-col",children:[e.jsxs("header",{className:"border-b border-primary-100 px-4 py-3 flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[i?e.jsx(f,{size:"sm",variant:"ghost",onClick:i,children:"Back"}):null,e.jsx("h1",{className:"text-sm font-semibold text-primary-800 truncate",children:r})]}),!o&&e.jsx("div",{className:"flex items-center gap-2",children:s?e.jsxs(e.Fragment,{children:[e.jsx(f,{size:"sm",variant:"outline",onClick:()=>l(!1),children:"Cancel"}),e.jsx(f,{size:"sm",onClick:()=>{a()},disabled:u,children:u?"Saving…":"Save"})]}):e.jsx(f,{size:"sm",variant:"outline",onClick:()=>l(!0),children:"Edit"})})]}),e.jsx("div",{className:"flex-1 min-h-0 overflow-auto p-4",children:o?e.jsx("div",{className:"text-sm text-primary-500",children:"Loading content…"}):s?e.jsx("textarea",{value:t,onChange:c=>x(c.target.value),className:"w-full min-h-[60vh] rounded-md border border-primary-200 bg-surface px-3 py-2 text-sm focus:outline-none focus:ring-2 focus:ring-primary-500"}):e.jsx(C,{className:"prose prose-invert max-w-none",children:n||"_Empty file_"})})]})}const Y=/\/(\d{4}-\d{2}-\d{2})/;function z(r){const n=r.includes("/MEMORY.md")?["/MEMORY.md"]:[],o=r.filter(s=>s!=="/MEMORY.md"&&(s.startsWith("memory/")||s.startsWith("/memory/"))&&s.endsWith(".md")),m=[],i=[];for(const s of o)Y.test(s)?m.push(s):i.push(s);return m.sort((s,l)=>l.localeCompare(s)),i.sort((s,l)=>s.localeCompare(l)),[...n,...m,...i]}function J(){const r=N(),[n,o]=h.useState("/MEMORY.md"),m=g({queryKey:["memory","files"],queryFn:async({signal:a})=>{const[c,d]=await Promise.all([fetch("/api/files/read?path=/MEMORY.md",{signal:a}),fetch("/api/files/list?path=/memory",{signal:a})]),y=[];if(c.ok&&y.push("/MEMORY.md"),d.ok){const E=await d.json();for(const v of E.items)!v.isDir&&v.path.endsWith(".md")&&y.push(v.path)}return z(y)},staleTime:3e4}),i=n??m.data?.[0]??null,s=g({queryKey:["memory","content",i],queryFn:async({signal:a})=>{const c=i.startsWith("/")?i:`/${i}`,d=await fetch(`/api/files/read?path=${encodeURIComponent(c)}`,{signal:a});if(!d.ok)throw new Error("Failed to read memory file");return d.json()},enabled:!!i}),l=S({mutationFn:async a=>{const c=a.path.startsWith("/")?a.path:`/${a.path}`,d=await fetch("/api/files/save",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({...a,path:c})});if(!d.ok)throw new Error("Failed to save memory file");return d.json()},onSuccess:async(a,c)=>{await r.invalidateQueries({queryKey:["memory","content",c.path]}),await r.invalidateQueries({queryKey:["memory","files"]})}}),[t,x]=h.useState(()=>typeof window<"u"?window.innerWidth<768:!1);h.useEffect(()=>{if(typeof window>"u")return;const a=()=>x(window.innerWidth<768);return window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]);const u=t&&!i,p=h.useCallback(a=>{o(a)},[]);return e.jsxs("div",{className:"h-screen bg-surface text-primary-900",children:[e.jsxs("div",{className:"h-12 border-b border-primary-100 px-3 flex items-center justify-between",children:[e.jsx("h1",{className:"text-sm font-semibold",children:"Memory Viewer"}),e.jsx(R,{to:"/chat/$sessionKey",params:{sessionKey:"main"},className:M(k({variant:"ghost",size:"sm"})),children:"Back to Chat"})]}),e.jsxs("div",{className:"h-[calc(100vh-48px)] md:grid md:grid-cols-[18rem_1fr]",children:[(!t||u)&&e.jsx(F,{files:m.data??[],selectedPath:i,onSelect:p,loading:m.isLoading}),i&&(!t||!u)?e.jsx(O,{filePath:i,content:s.data?.content??"",isLoading:s.isLoading,onBack:t?()=>o(null):void 0,onSave:async a=>{await l.mutateAsync({path:i,content:a})}}):e.jsx("div",{className:"p-4 text-sm text-primary-500",children:"Select a file to view."})]}),(m.isError||s.isError||l.isError)&&e.jsxs("div",{className:"fixed bottom-4 right-4 rounded-md border border-red-200 bg-red-50 px-3 py-2 text-xs text-red-700",children:["Something went wrong. ",e.jsx(f,{size:"sm",variant:"ghost",onClick:()=>{m.refetch()},children:"Retry"})]})]})}export{J as MemoryScreen};
@@ -0,0 +1 @@
1
+ import{r as n,j as V,w as Qe}from"./main-CgwdHc9W.js";import{ab as Fe,ah as Ge,ac as Ne,ad as Ze,t as Nt,ag as Ae,u as At,c as nt}from"./button-D9Plv7hu.js";import{u as mt,a as Ee,b as Te,c as ot,d as xt,e as Dt,p as ht,t as Lt,F as Ht,D as Kt,P as Ut,f as jt,R as Bt,g as Vt,h as _t,i as X,j as yt,k as Gt,l as bt,m as Wt,n as zt,o as qt,q as Yt,r as Rt,s as $t,T as Xt,v as Jt,w as Qt,x as Zt,y as en,z as tn,A as ut,B as ct,C as nn}from"./popupStateMapping-D0ZbJR_o.js";import{g as re,t as Ve,u as fe,a as xe,l as _e,i as et,j as We,f as vt,k as It,d as Ct,o as on,m as we,s as Se,p as rn,q as lt,r as sn,v as an,w as un,x as cn,b as ln,y as fn}from"./useBaseUiId-KQTzRPLp.js";import{e as dn,F as pn,I as gn,i as mn,f as xn,g as hn,h as yn}from"./use-file-explorer-state-Cg_yDYJl.js";import{u as bn}from"./DirectionContext-CxhRpXkm.js";import{i as ft,f as Rn,g as vn,h as In,j as Cn,d as dt,k as Mn,e as ke,s as me,a as ze,b as De,c as Le,l as Tn,m as En,n as Pn,A as Mt,o as tt}from"./event-DD8Cz4O9.js";import{h as pt,g as $e,a as gt,c as On,i as Xe,b as Sn,d as wn,e as kn,f as Ue,j as Fn,C as Nn,u as An}from"./useCompositeItem-BPY2_hF_.js";import{u as Dn,e as Ln,f as Hn,h as Kn,i as Un,j as jn}from"./tooltip-DLmutB5C.js";import{C as Bn}from"./composite-B2KCZKKL.js";function Vn(e,o={}){const r="rootStore"in e?e.rootStore:e,u=r.context.dataRef,{enabled:d=!0,event:x="click",toggle:N=!0,ignoreMouse:s=!1,stickIfOpen:I=!0,touchOpenDelay:E=0}=o,h=n.useRef(void 0),T=mt(),S=Ee(),K=n.useMemo(()=>({onPointerDown(b){h.current=b.pointerType},onMouseDown(b){const i=h.current,l=b.nativeEvent,g=r.select("open");if(b.button!==0||x==="click"||ft(i,!0)&&s)return;const a=u.current.openEvent,y=a?.type,M=r.select("domReferenceElement")!==b.currentTarget,t=g&&M||!(g&&N&&(!(a&&I)||y==="click"||y==="mousedown"));if(vn(l.target)){const v=re(Ve,l,l.target);t&&i==="touch"&&E>0?S.start(E,()=>{r.setOpen(!0,v)}):r.setOpen(t,v);return}const R=b.currentTarget;T.request(()=>{const v=re(Ve,l,R);t&&i==="touch"&&E>0?S.start(E,()=>{r.setOpen(!0,v)}):r.setOpen(t,v)})},onClick(b){if(x==="mousedown-only")return;const i=h.current;if(x==="mousedown"&&i){h.current=void 0;return}if(ft(i,!0)&&s)return;const l=r.select("open"),g=u.current.openEvent,a=r.select("domReferenceElement")!==b.currentTarget,y=l&&a||!(l&&N&&(!(g&&I)||Rn(g))),M=re(Ve,b.nativeEvent,b.currentTarget);y&&i==="touch"&&E>0?S.start(E,()=>{r.setOpen(!0,M)}):r.setOpen(y,M)},onKeyDown(){h.current=void 0}}),[u,x,s,r,I,N,T,S,E]);return n.useMemo(()=>d?{reference:K}:Fe,[d,K])}const _n="Escape";function qe(e,o,r){switch(e){case"vertical":return o;case"horizontal":return r;default:return o||r}}function je(e,o){return qe(o,e===Mt||e===ze,e===De||e===Le)}function Je(e,o,r){return qe(o,e===ze,r?e===De:e===Le)||e==="Enter"||e===" "||e===""}function Gn(e,o,r){return qe(o,r?e===De:e===Le,e===ze)}function Wn(e,o,r,u){const d=r?e===Le:e===De,x=e===Mt;return o==="both"||o==="horizontal"&&u&&u>1?e===_n:qe(o,d,x)}function zn(e,o){const r="rootStore"in e?e.rootStore:e,u=r.useState("open"),d=r.useState("floatingElement"),x=r.useState("domReferenceElement"),N=r.context.dataRef,{listRef:s,activeIndex:I,onNavigate:E=()=>{},enabled:h=!0,selectedIndex:T=null,allowEscape:S=!1,loopFocus:K=!1,nested:b=!1,rtl:i=!1,virtual:l=!1,focusItemOnOpen:g="auto",focusItemOnHover:a=!0,openOnArrowKeyDown:y=!0,disabledIndices:M=void 0,orientation:t="vertical",parentOrientation:R,cols:v=1,scrollItemIntoView:k=!0,itemSizes:F,dense:se=!1,id:G,resetOnPointerLeave:J=!0,externalTree:w}=o,q=In(d),L=Te(q),P=ot(),Y=xt(w);fe(()=>{N.current.orientation=t},[N,t]);const Q=Cn(x),ee=n.useRef(g),p=n.useRef(T??-1),B=n.useRef(null),Z=n.useRef(!0),m=xe(c=>{E(p.current===-1?null:p.current,c)}),ue=n.useRef(m),ce=n.useRef(!!d),pe=n.useRef(u),$=n.useRef(!1),ae=n.useRef(!1),te=Te(M),U=Te(u),A=Te(k),ie=Te(T),he=Te(J),ge=xe(()=>{function c(_){l?Y?.events.emit("virtualfocus",_):dn(_,{sync:$.current,preventScroll:!0})}const O=s.current[p.current],f=ae.current;O&&c(O),($.current?_=>_():requestAnimationFrame)(()=>{const _=s.current[p.current]||O;if(!_)return;O||c(_);const ne=A.current;ne&&ye&&(f||!Z.current)&&_.scrollIntoView?.(typeof ne=="boolean"?{block:"nearest",inline:"nearest"}:ne)})});fe(()=>{h&&(u&&d?(p.current=T??-1,ee.current&&T!=null&&(ae.current=!0,m())):ce.current&&(p.current=-1,ue.current()))},[h,u,d,T,m]),fe(()=>{if(h){if(!u){$.current=!1;return}if(d)if(I==null){if($.current=!1,ie.current!=null)return;if(ce.current&&(p.current=-1,ge()),(!pe.current||!ce.current)&&ee.current&&(B.current!=null||ee.current===!0&&B.current==null)){let c=0;const O=()=>{s.current[0]==null?(c<2&&(c?requestAnimationFrame:queueMicrotask)(O),c+=1):(p.current=B.current==null||Je(B.current,t,i)||b?$e(s):gt(s),B.current=null,m())};O()}}else pt(s,I)||(p.current=I,ge(),ae.current=!1)}},[h,u,d,I,ie,b,s,t,i,m,ge,te]),fe(()=>{if(!h||d||!Y||l||!ce.current)return;const c=Y.nodesRef.current,O=c.find(_=>_.id===P)?.context?.elements.floating,f=dt(Mn(d)),H=c.some(_=>_.context&&ke(_.context.elements.floating,f));O&&!H&&Z.current&&O.focus({preventScroll:!0})},[h,d,Y,P,l]),fe(()=>{ue.current=m,pe.current=u,ce.current=!!d}),fe(()=>{u||(B.current=null,ee.current=g)},[u,g]);const le=I!=null,ye=n.useMemo(()=>{function c(f){if(!U.current)return;const H=s.current.indexOf(f.currentTarget);H!==-1&&p.current!==H&&(p.current=H,m(f))}return{onFocus(f){$.current=!0,c(f)},onClick:({currentTarget:f})=>f.focus({preventScroll:!0}),onMouseMove(f){$.current=!0,ae.current=!1,a&&c(f)},onPointerLeave(f){if(!U.current||!Z.current||f.pointerType==="touch")return;$.current=!0;const H=f.relatedTarget;!a||s.current.includes(H)||he.current&&(p.current=-1,m(f),l||L.current?.focus({preventScroll:!0}))}}},[U,L,a,s,m,he,l]),j=n.useCallback(()=>R??Y?.nodesRef.current.find(c=>c.id===P)?.context?.dataRef?.current.orientation,[P,Y,R]),W=xe(c=>{if(Z.current=!1,$.current=!0,c.which===229||!U.current&&c.currentTarget===L.current)return;if(b&&Wn(c.key,t,i,v)){je(c.key,j())||me(c),r.setOpen(!1,re(_e,c.nativeEvent)),et(x)&&(l?Y?.events.emit("virtualfocus",x):x.focus());return}const O=p.current,f=$e(s,M),H=gt(s,M);if(Q||(c.key==="Home"&&(me(c),p.current=f,m(c)),c.key==="End"&&(me(c),p.current=H,m(c))),v>1){const _=F||Array.from({length:s.current.length},()=>({width:1,height:1})),ne=On(_,v,se),be=ne.findIndex(de=>de!=null&&!Xe(s,de,M)),Pe=ne.reduce((de,Re,C)=>Re!=null&&!Xe(s,Re,M)?C:de,-1),Me=ne[Sn({current:ne.map(de=>de!=null?s.current[de]:null)},{event:c,orientation:t,loopFocus:K,rtl:i,cols:v,disabledIndices:kn([...(typeof M!="function"?M:null)||s.current.map((de,Re)=>Xe(s,Re,M)?Re:void 0),void 0],ne),minIndex:be,maxIndex:Pe,prevIndex:wn(p.current>H?f:p.current,_,ne,v,c.key===ze?"bl":c.key===(i?De:Le)?"tr":"tl"),stopEvent:!0})];if(Me!=null&&(p.current=Me,m(c)),t==="both")return}if(je(c.key,t)){if(me(c),u&&!l&&dt(c.currentTarget.ownerDocument)===c.currentTarget){p.current=Je(c.key,t,i)?f:H,m(c);return}Je(c.key,t,i)?K?O>=H?S&&O!==s.current.length?p.current=-1:($.current=!1,p.current=f):p.current=Ue(s,{startingIndex:O,disabledIndices:M}):p.current=Math.min(H,Ue(s,{startingIndex:O,disabledIndices:M})):K?O<=f?S&&O!==-1?p.current=s.current.length:($.current=!1,p.current=H):p.current=Ue(s,{startingIndex:O,decrement:!0,disabledIndices:M}):p.current=Math.max(f,Ue(s,{startingIndex:O,decrement:!0,disabledIndices:M})),pt(s,p.current)&&(p.current=-1),m(c)}}),z=n.useMemo(()=>l&&u&&le&&{"aria-activedescendant":`${G}-${I}`},[l,u,le,G,I]),Ie=n.useMemo(()=>({"aria-orientation":t==="both"?void 0:t,...Q?{}:z,onKeyDown(c){if(c.key==="Tab"&&c.shiftKey&&u&&!l){const O=Tn(c.nativeEvent);if(O&&!ke(L.current,O))return;me(c),r.setOpen(!1,re(We,c.nativeEvent)),et(x)&&x.focus();return}W(c)},onPointerMove(){Z.current=!0}}),[z,W,L,t,Q,r,u,l,x]),Ce=n.useMemo(()=>{function c(f){g==="auto"&&En(f.nativeEvent)&&(ee.current=!l)}function O(f){ee.current=g,g==="auto"&&Pn(f.nativeEvent)&&(ee.current=!0)}return{onKeyDown(f){const H=r.select("open");Z.current=!1;const _=f.key.startsWith("Arrow"),ne=Gn(f.key,j(),i),be=je(f.key,t),Pe=(b?ne:be)||f.key==="Enter"||f.key.trim()==="";if(l&&H)return W(f);if(!(!H&&!y&&_)){if(Pe){const Me=je(f.key,j());B.current=b&&Me?null:f.key}if(b){ne&&(me(f),H?(p.current=$e(s,te.current),m(f)):r.setOpen(!0,re(_e,f.nativeEvent,f.currentTarget)));return}be&&(ie.current!=null&&(p.current=ie.current),me(f),!H&&y?r.setOpen(!0,re(_e,f.nativeEvent,f.currentTarget)):W(f),H&&m(f))}},onFocus(f){r.select("open")&&!l&&(p.current=-1,m(f))},onPointerDown:O,onPointerEnter:O,onMouseDown:c,onClick:c}},[W,te,g,s,b,m,r,y,t,j,i,ie,l]),He=n.useMemo(()=>({...z,...Ce}),[z,Ce]);return n.useMemo(()=>h?{reference:He,floating:Ie,item:ye,trigger:Ce}:{},[h,He,Ie,Ce,ye])}function qn(e,o){const r="rootStore"in e?e.rootStore:e,u=r.useState("open"),d=r.context.dataRef,{listRef:x,activeIndex:N,onMatch:s,onTypingChange:I,enabled:E=!0,findMatch:h=null,resetMs:T=750,ignoreKeys:S=Ge,selectedIndex:K=null}=o,b=Ee(),i=n.useRef(""),l=n.useRef(K??N??-1),g=n.useRef(null);fe(()=>{u&&(b.clear(),g.current=null,i.current="")},[u,b]),fe(()=>{u&&i.current===""&&(l.current=K??N??-1)},[u,K,N]);const a=xe(R=>{R?d.current.typing||(d.current.typing=R,I?.(R)):d.current.typing&&(d.current.typing=R,I?.(R))}),y=xe(R=>{function v(J,w,q){const L=h?h(w,q):w.find(P=>P?.toLocaleLowerCase().indexOf(q.toLocaleLowerCase())===0);return L?J.indexOf(L):-1}const k=x.current;if(i.current.length>0&&i.current[0]!==" "&&(v(k,k,i.current)===-1?a(!1):R.key===" "&&me(R)),k==null||S.includes(R.key)||R.key.length!==1||R.ctrlKey||R.metaKey||R.altKey)return;u&&R.key!==" "&&(me(R),a(!0)),k.every(J=>J?J[0]?.toLocaleLowerCase()!==J[1]?.toLocaleLowerCase():!0)&&i.current===R.key&&(i.current="",l.current=g.current),i.current+=R.key,b.start(T,()=>{i.current="",l.current=g.current,a(!1)});const se=l.current,G=v(k,[...k.slice((se||0)+1),...k.slice(0,(se||0)+1)],i.current);G!==-1?(s?.(G),g.current=G):R.key!==" "&&(i.current="",a(!1))}),M=n.useMemo(()=>({onKeyDown:y}),[y]),t=n.useMemo(()=>({onKeyDown:y,onKeyUp(R){R.key===" "&&a(!1)}}),[y,a]);return n.useMemo(()=>E?{reference:M,floating:t}:{},[E,M,t])}const Tt=n.createContext(void 0);function Et(e){const o=n.useContext(Tt);if(o===void 0&&!e)throw new Error(Ne(33));return o}const Pt=n.createContext(void 0);function ve(e){const o=n.useContext(Pt);if(o===void 0&&!e)throw new Error(Ne(36));return o}const Yn=n.createContext(void 0);function Ye(e=!0){const o=n.useContext(Yn);if(o===void 0&&!e)throw new Error(Ne(25));return o}const $n={type:"regular-item"};function Xn(e){const{closeOnClick:o,disabled:r=!1,highlighted:u,id:d,store:x,nativeButton:N,itemMetadata:s,nodeId:I}=e,E=n.useRef(null),h=Ye(!0),T=h!==void 0,{events:S}=x.useState("floatingTreeRoot"),{getButtonProps:K,buttonRef:b}=vt({disabled:r,focusableWhenDisabled:!0,native:N}),i=n.useCallback(g=>Ze({id:d,role:"menuitem",tabIndex:u?0:-1,onMouseMove(a){I&&S.emit("itemhover",{nodeId:I,target:a.currentTarget})},onMouseEnter(){s.type==="submenu-trigger"&&s.setActive()},onKeyUp(a){a.key===" "&&x.context.typingRef.current&&a.preventBaseUIHandler()},onClick(a){o&&S.emit("close",{domEvent:a,reason:It})},onMouseUp(a){if(h){const y=h.initialCursorPointRef.current;if(h.initialCursorPointRef.current=null,T&&y&&Math.abs(a.clientX-y.x)<=1&&Math.abs(a.clientY-y.y)<=1)return}E.current&&x.context.allowMouseUpTriggerRef.current&&(!T||a.button===2)&&s.type==="regular-item"&&E.current.click()}},g,K),[d,u,K,o,S,x,T,h,s,I]),l=Nt(E,b);return n.useMemo(()=>({getItemProps:i,itemRef:l}),[i,l])}const Jn=n.forwardRef(function(o,r){const{render:u,className:d,id:x,label:N,nativeButton:s=!1,disabled:I=!1,closeOnClick:E=!0,...h}=o,T=Fn({label:N}),S=Et(!0),K=Ct(x),{store:b}=ve(),i=b.useState("isActive",T.index),l=b.useState("itemProps"),{getItemProps:g,itemRef:a}=Xn({closeOnClick:E,disabled:I,highlighted:i,id:K,store:b,nativeButton:s,nodeId:S?.nodeId,itemMetadata:$n}),y=n.useMemo(()=>({disabled:I,highlighted:i}),[I,i]);return Ae("div",o,{state:y,props:[l,h,g],ref:[a,r,T.ref]})}),Qn=n.createContext(void 0);function Zn(e){return n.useContext(Qn)}const eo={...ht,...Lt},to=n.forwardRef(function(o,r){const{render:u,className:d,finalFocus:x,...N}=o,{store:s}=ve(),{side:I,align:E}=Et(),h=Zn()!=null,T=s.useState("open"),S=s.useState("transitionStatus"),K=s.useState("popupProps"),b=s.useState("mounted"),i=s.useState("instantType"),l=s.useState("activeTriggerElement"),g=s.useState("parent"),a=s.useState("lastOpenChangeReason"),y=s.useState("rootId"),M=s.useState("floatingRootContext"),t=s.useState("floatingTreeRoot"),R=s.useState("closeDelay"),v=s.useState("activeTriggerElement"),k=g.type==="context-menu";Dt({open:T,ref:s.context.popupRef,onComplete(){T&&s.context.onOpenChangeComplete?.(!0)}}),n.useEffect(()=>{function q(L){s.setOpen(!1,re(L.reason,L.domEvent))}return t.events.on("close",q),()=>{t.events.off("close",q)}},[t.events,s]);const F=s.useState("hoverEnabled"),se=s.useState("disabled");Dn(M,{enabled:F&&!se&&!k&&g.type!=="menubar",closeDelay:R});const G=n.useMemo(()=>({transitionStatus:S,side:I,align:E,open:T,nested:g.type==="menu",instant:i}),[S,I,E,T,g.type,i]),J=Ae("div",o,{state:G,ref:[r,s.context.popupRef],stateAttributesMapping:eo,props:[K,{onKeyDown(q){h&&Bn.has(q.key)&&q.stopPropagation()}},Ln(S),N,{"data-rootownerid":y}]});let w=g.type===void 0||k;return(l||g.type==="menubar"&&a!==on)&&(w=!0),V.jsx(pn,{context:M,modal:k,disabled:!b,returnFocus:x===void 0?w:x,initialFocus:g.type!=="menu",restoreFocus:!0,externalTree:g.type!=="menubar"?t:void 0,previousFocusableElement:v,nextFocusableElement:g.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:g.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:J})}),Ot=n.createContext(void 0);function no(){const e=n.useContext(Ot);if(e===void 0)throw new Error(Ne(32));return e}const oo=n.forwardRef(function(o,r){const{keepMounted:u=!1,...d}=o,{store:x}=ve();return x.useState("mounted")||u?V.jsx(Ot.Provider,{value:u,children:V.jsx(Ht,{ref:r,...d})}):null}),ro=n.forwardRef(function(o,r){const{anchor:u,positionMethod:d="absolute",className:x,render:N,side:s,align:I,sideOffset:E=0,alignOffset:h=0,collisionBoundary:T="clipping-ancestors",collisionPadding:S=5,arrowPadding:K=5,sticky:b=!1,disableAnchorTracking:i=!1,collisionAvoidance:l=Kt,...g}=o,{store:a}=ve(),y=no(),M=Ye(!0),t=a.useState("parent"),R=a.useState("floatingRootContext"),v=a.useState("floatingTreeRoot"),k=a.useState("mounted"),F=a.useState("open"),se=a.useState("modal"),G=a.useState("activeTriggerElement"),J=a.useState("lastOpenChangeReason"),w=a.useState("floatingNodeId"),q=a.useState("floatingParentNodeId");let L=u,P=E,Y=h,Q=I,ee=l;t.type==="context-menu"&&(L=u??t.context?.anchor,Q=Q??"start",!s&&Q!=="center"&&(Y=o.alignOffset??2,P=o.sideOffset??-5));let p=s,B=Q;t.type==="menu"?(p=p??"inline-end",B=B??"start",ee=o.collisionAvoidance??Ut):t.type==="menubar"&&(p=p??"bottom",B=B??"start");const Z=t.type==="context-menu",m=Hn({anchor:L,floatingRootContext:R,positionMethod:M?"fixed":d,mounted:k,side:p,sideOffset:P,align:B,alignOffset:Y,arrowPadding:Z?0:K,collisionBoundary:T,collisionPadding:S,sticky:b,nodeId:w,keepMounted:y,disableAnchorTracking:i,collisionAvoidance:ee,shiftCrossAxis:Z,externalTree:v}),ue=n.useMemo(()=>{const U={};return F||(U.pointerEvents="none"),{role:"presentation",hidden:!k,style:{...m.positionerStyles,...U}}},[F,k,m.positionerStyles]);n.useEffect(()=>{function U(A){A.open?(A.parentNodeId===w&&a.set("hoverEnabled",!1),A.nodeId!==w&&A.parentNodeId===a.select("floatingParentNodeId")&&a.setOpen(!1,re(Se))):A.parentNodeId===w&&A.reason!==Se&&a.set("hoverEnabled",!0)}return v.events.on("menuopenchange",U),()=>{v.events.off("menuopenchange",U)}},[a,v.events,w]),n.useEffect(()=>{if(a.select("floatingParentNodeId")==null)return;function U(A){if(A.open||A.nodeId!==a.select("floatingParentNodeId"))return;const ie=A.reason??Se;a.setOpen(!1,re(ie))}return v.events.on("menuopenchange",U),()=>{v.events.off("menuopenchange",U)}},[v.events,a]),n.useEffect(()=>{function U(A){!F||A.nodeId!==a.select("floatingParentNodeId")||A.target&&G&&G!==A.target&&a.setOpen(!1,re(Se))}return v.events.on("itemhover",U),()=>{v.events.off("itemhover",U)}},[v.events,F,G,a]),n.useEffect(()=>{const U={open:F,nodeId:w,parentNodeId:q,reason:a.select("lastOpenChangeReason")};v.events.emit("menuopenchange",U)},[v.events,F,a,w,q]);const ce=n.useMemo(()=>({open:F,side:m.side,align:m.align,anchorHidden:m.anchorHidden,nested:t.type==="menu"}),[F,m.side,m.align,m.anchorHidden,t.type]),pe=n.useMemo(()=>({side:m.side,align:m.align,arrowRef:m.arrowRef,arrowUncentered:m.arrowUncentered,arrowStyles:m.arrowStyles,nodeId:m.context.nodeId}),[m.side,m.align,m.arrowRef,m.arrowUncentered,m.arrowStyles,m.context.nodeId]),$=Ae("div",o,{state:ce,stateAttributesMapping:ht,ref:[r,a.useStateSetter("positionerElement")],props:[ue,g]}),ae=k&&t.type!=="menu"&&(t.type!=="menubar"&&se&&J!==we||t.type==="menubar"&&t.context.modal);let te=null;return t.type==="menubar"?te=t.context.contentElement:t.type===void 0&&(te=G),V.jsxs(Tt.Provider,{value:pe,children:[ae&&V.jsx(gn,{ref:t.type==="context-menu"||t.type==="nested-context-menu"?t.context.internalBackdropRef:null,inert:mn(!F),cutout:te}),V.jsx(jt,{id:w,children:V.jsx(Nn,{elementsRef:a.context.itemDomElements,labelsRef:a.context.itemLabels,children:$})})]})}),so=n.createContext(null);function St(e){return n.useContext(so)}const io={..._t,disabled:X(e=>e.parent.type==="menubar"&&e.parent.context.disabled||e.disabled),modal:X(e=>(e.parent.type===void 0||e.parent.type==="context-menu")&&(e.modal??!0)),allowMouseEnter:X(e=>e.parent.type==="menu"?e.parent.store.select("allowMouseEnter"):e.allowMouseEnter),stickIfOpen:X(e=>e.stickIfOpen),parent:X(e=>e.parent),rootId:X(e=>e.parent.type==="menu"?e.parent.store.select("rootId"):e.parent.type!==void 0?e.parent.context.rootId:e.rootId),activeIndex:X(e=>e.activeIndex),isActive:X((e,o)=>e.activeIndex===o),hoverEnabled:X(e=>e.hoverEnabled),instantType:X(e=>e.instantType),lastOpenChangeReason:X(e=>e.openChangeReason),floatingTreeRoot:X(e=>e.parent.type==="menu"?e.parent.store.select("floatingTreeRoot"):e.floatingTreeRoot),floatingNodeId:X(e=>e.floatingNodeId),floatingParentNodeId:X(e=>e.floatingParentNodeId),itemProps:X(e=>e.itemProps),closeDelay:X(e=>e.closeDelay),keyboardEventRelay:X(e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type==="menu")return e.parent.store.select("keyboardEventRelay")})};class rt extends Bt{constructor(o){super({...ao(),...o},{positionerRef:n.createRef(),popupRef:n.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:n.createRef(),beforeContentFocusGuardRef:n.createRef(),onOpenChangeComplete:void 0,triggerElements:new Vt},io),this.observe(X(r=>r.allowMouseEnter),(r,u)=>{this.state.parent.type==="menu"&&r!==u&&this.state.parent.store.set("allowMouseEnter",r)}),this.unsubscribeParentListener=this.observe("parent",r=>{if(this.unsubscribeParentListener?.(),r.type==="menu"){this.unsubscribeParentListener=r.store.subscribe(()=>{this.notifyAll()}),this.context.allowMouseUpTriggerRef=r.store.context.allowMouseUpTriggerRef;return}r.type!==void 0&&(this.context.allowMouseUpTriggerRef=r.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(o,r){this.state.floatingRootContext.context.events.emit("setOpen",{open:o,eventDetails:r})}static useStore(o,r){const u=At(()=>new rt(r)).current;return o??u}unsubscribeParentListener=null}function ao(){return{...Gt(),disabled:!1,modal:!0,allowMouseEnter:!0,stickIfOpen:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new yt,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:Fe,keyboardEventRelay:void 0,closeDelay:0}}const uo=n.createContext(void 0);function co(){return n.useContext(uo)}function lo(e){const{children:o,open:r,onOpenChange:u,onOpenChangeComplete:d,defaultOpen:x=!1,disabled:N=!1,modal:s,loopFocus:I=!0,orientation:E="vertical",actionsRef:h,closeParentOnEsc:T=!1,handle:S,triggerId:K,defaultTriggerId:b=null,highlightItemOnHover:i=!0}=e,l=Ye(!0),g=ve(!0),a=St(),y=co(),M=n.useMemo(()=>y&&g?{type:"menu",store:g.store}:a?{type:"menubar",context:a}:l&&!g?{type:"context-menu",context:l}:{type:void 0},[l,g,a,y]),t=rt.useStore(S?.store,{parent:M}),R=t.useState("floatingTreeRoot"),v=bt(R),k=ot();fe(()=>{l&&!g?t.update({parent:{type:"context-menu",context:l},floatingNodeId:v,floatingParentNodeId:k}):g&&t.update({floatingNodeId:v,floatingParentNodeId:k})},[l,g,v,k,t]),t.useControlledProp("open",r,x),t.useControlledProp("activeTriggerId",K,b),t.useContextCallback("onOpenChangeComplete",d);const F=t.useState("open"),se=t.useState("activeTriggerElement"),G=t.useState("positionerElement"),J=t.useState("hoverEnabled"),w=t.useState("modal"),q=t.useState("disabled"),L=t.useState("lastOpenChangeReason"),P=t.useState("parent"),Y=t.useState("activeIndex"),Q=t.useState("payload"),ee=t.useState("floatingParentNodeId"),p=n.useRef(null),B=ee!=null;let Z;t.useSyncedValues({disabled:N,modal:P.type===void 0?s:void 0,rootId:rn()});const{openMethod:m,triggerProps:ue,reset:ce}=xn(F);Wt(t);const{forceUnmount:pe}=zt(F,t,()=>{t.update({allowMouseEnter:!1,stickIfOpen:!0}),ce()}),$=n.useRef(P.type!=="context-menu"),ae=Ee();n.useEffect(()=>{if(F||(p.current=null),P.type==="context-menu"){if(!F){ae.clear(),$.current=!1;return}ae.start(500,()=>{$.current=!0})}},[ae,F,P.type]),hn(F&&w&&L!==we&&m!=="touch",G),fe(()=>{!F&&!J&&t.set("hoverEnabled",!0)},[F,J,t]);const te=n.useRef(!0),U=Ee(),A=xe((C,D)=>{const oe=D.reason;if(F===C&&D.trigger===se&&L===oe||(D.preventUnmountOnClose=()=>{t.set("preventUnmountingOnClose",!0)},!C&&D.trigger==null&&(D.trigger=se??void 0),u?.(C,D),D.isCanceled))return;const kt={open:C,nativeEvent:D.event,reason:D.reason,nested:B};Z?.emit("openchange",kt);const Ke=D.event;if(C===!1&&Ke?.type==="click"&&Ke.pointerType==="touch"&&!te.current)return;if(!C&&Y!==null){const Oe=t.context.itemDomElements.current[Y];queueMicrotask(()=>{Oe?.setAttribute("tabindex","-1")})}C&&oe===lt?(te.current=!1,U.start(300,()=>{te.current=!0})):(te.current=!0,U.clear());const st=(oe===Ve||oe===It)&&Ke.detail===0&&Ke?.isTrusted,Ft=!C&&(oe===sn||oe==null);function it(){const Oe={open:C,openChangeReason:oe};p.current=D.event??null;const at=D.trigger?.id??null;(at||C)&&(Oe.activeTriggerId=at,Oe.activeTriggerElement=D.trigger??null),t.update(Oe)}oe===we?Qe.flushSync(it):it(),P.type==="menubar"&&(oe===lt||oe===We||oe===we||oe===_e||oe===Se)?t.set("instantType","group"):st||Ft?t.set("instantType",st?"click":"dismiss"):t.set("instantType",void 0)}),ie=n.useCallback(C=>{const D=re(C);return D.preventUnmountOnClose=()=>{t.set("preventUnmountingOnClose",!0)},D},[t]),he=n.useCallback(()=>{t.setOpen(!1,ie(an))},[t,ie]);n.useImperativeHandle(h,()=>({unmount:pe,close:he}),[pe,he]);let ge;P.type==="context-menu"&&(ge=P.context),n.useImperativeHandle(ge?.positionerRef,()=>G,[G]),n.useImperativeHandle(ge?.actionsRef,()=>({setOpen:A}),[A]);const le=qt({popupStore:t,onOpenChange:A});Z=le.context.events,n.useEffect(()=>{const C=({open:D,eventDetails:oe})=>A(D,oe);return Z.on("setOpen",C),()=>{Z?.off("setOpen",C)}},[Z,A]);const ye=Yt(le,{enabled:!q,bubbles:{escapeKey:T&&P.type==="menu"},outsidePress(){return P.type!=="context-menu"||p.current?.type==="contextmenu"?!0:$.current},externalTree:B?R:void 0}),j=yn(le,{role:"menu"}),W=bn(),z=n.useCallback(C=>{t.select("activeIndex")!==C&&t.set("activeIndex",C)},[t]),Ie=zn(le,{enabled:!q,listRef:t.context.itemDomElements,activeIndex:Y,nested:P.type!==void 0,loopFocus:I,orientation:E,parentOrientation:P.type==="menubar"?P.context.orientation:void 0,rtl:W==="rtl",disabledIndices:Ge,onNavigate:z,openOnArrowKeyDown:P.type!=="context-menu",externalTree:B?R:void 0,focusItemOnHover:i}),Ce=n.useCallback(C=>{t.context.typingRef.current=C},[t]),He=qn(le,{listRef:t.context.itemLabels,activeIndex:Y,resetMs:Xt,onMatch:C=>{F&&C!==Y&&t.set("activeIndex",C)},onTypingChange:Ce}),{getReferenceProps:c,getFloatingProps:O,getItemProps:f,getTriggerProps:H}=Rt([ye,j,Ie,He]),_=n.useMemo(()=>{const C=Ze(c(),{onMouseEnter(){t.set("hoverEnabled",!0)},onMouseMove(){t.set("allowMouseEnter",!0)}},ue);return delete C.role,C},[c,t,ue]),ne=n.useMemo(()=>{const C=H();if(!C)return C;const D=Ze(C,ue);return delete D.role,delete D["aria-controls"],D},[H,ue]),be=mt(),Pe=n.useMemo(()=>O({onMouseEnter(){P.type==="menu"&&be.request(()=>t.set("hoverEnabled",!1))},onMouseMove(){t.set("allowMouseEnter",!0)},onClick(){t.select("hoverEnabled")&&t.set("hoverEnabled",!1)},onKeyDown(C){const D=t.select("keyboardEventRelay");D&&!C.isPropagationStopped()&&D(C)}}),[O,P.type,be,t]),Me=n.useMemo(()=>f(),[f]);t.useSyncedValues({floatingRootContext:le,activeTriggerProps:_,inactiveTriggerProps:ne,popupProps:Pe,itemProps:Me});const de=n.useMemo(()=>({store:t,parent:M}),[t,M]),Re=V.jsx(Pt.Provider,{value:de,children:typeof o=="function"?o({payload:Q}):o});return P.type===void 0||P.type==="context-menu"?V.jsx($t,{externalTree:R,children:Re}):Re}function fo(e){const o=e.getBoundingClientRect(),r=window.getComputedStyle(e,"::before"),u=window.getComputedStyle(e,"::after");if(!(r.content!=="none"||u.content!=="none"))return o;const x=parseFloat(r.width)||0,N=parseFloat(r.height)||0,s=parseFloat(u.width)||0,I=parseFloat(u.height)||0,E=Math.max(o.width,x,s),h=Math.max(o.height,N,I),T=E-o.width,S=h-o.height;return{left:o.left-T/2,right:o.right+T/2,top:o.top-S/2,bottom:o.bottom+S/2}}function po(e){const{render:o,className:r,state:u=Fe,props:d=Ge,refs:x=Ge,metadata:N,stateAttributesMapping:s,tag:I="div",...E}=e,{compositeProps:h,compositeRef:T}=An({metadata:N});return Ae(I,e,{state:u,ref:[...x,T],props:[h,...d,E],stateAttributesMapping:s})}function wt(e){if(et(e)&&e.hasAttribute("data-rootownerid"))return e.getAttribute("data-rootownerid")??void 0;if(!un(e))return wt(cn(e))}function go(e){const{enabled:o=!0,mouseDownAction:r,open:u}=e,d=n.useRef(!1);return n.useMemo(()=>o?{onMouseDown:x=>{(r==="open"&&!u||r==="close"&&u)&&(d.current=!0,tt(x.currentTarget).addEventListener("click",()=>{d.current=!1},{once:!0}))},onClick:x=>{d.current&&(d.current=!1,x.preventBaseUIHandler())}}:Fe,[o,r,u])}const Be=2,mo=n.forwardRef(function(o,r){const{render:u,className:d,disabled:x=!1,nativeButton:N=!0,id:s,openOnHover:I,delay:E=100,closeDelay:h=0,handle:T,payload:S,...K}=o,b=ve(!0),i=T?.store??b?.store;if(!i)throw new Error(Ne(85));const l=Ct(s),g=i.useState("isTriggerActive",l),a=i.useState("floatingRootContext"),y=i.useState("isOpenedByTrigger",l),M=n.useRef(null),t=ho(),R=ln(!0),v=xt(),k=n.useMemo(()=>v??new yt,[v]),F=bt(k),se=ot(),{registerTrigger:G,isMountedByThisTrigger:J}=Jt(l,M,i,{payload:S,closeDelay:h,parent:t,floatingTreeRoot:k,floatingNodeId:F,floatingParentNodeId:se,keyboardEventRelay:R?.relayKeyboardEvent}),w=t.type==="menubar",q=i.useState("disabled"),L=x||q||w&&t.context.disabled,{getButtonProps:P,buttonRef:Y}=vt({disabled:L,native:N});n.useEffect(()=>{!y&&t.type===void 0&&(i.context.allowMouseUpTriggerRef.current=!1)},[i,y,t.type]);const Q=n.useRef(null),ee=Ee(),p=xe(j=>{if(!Q.current)return;ee.clear(),i.context.allowMouseUpTriggerRef.current=!1;const W=j.target;if(ke(Q.current,W)||ke(i.select("positionerElement"),W)||W===Q.current||W!=null&&wt(W)===i.select("rootId"))return;const z=fo(Q.current);j.clientX>=z.left-Be&&j.clientX<=z.right+Be&&j.clientY>=z.top-Be&&j.clientY<=z.bottom+Be||k.events.emit("close",{domEvent:j,reason:fn})});n.useEffect(()=>{y&&i.select("lastOpenChangeReason")===we&&tt(Q.current).addEventListener("mouseup",p,{once:!0})},[y,p,i]);const B=w&&t.context.hasSubmenuOpen,m=Kn(a,{enabled:(I??B)&&!L&&t.type!=="context-menu"&&(!w||B&&!J),handleClose:Un({blockPointerEvents:!w}),mouseOnly:!0,move:!1,restMs:t.type===void 0?E:void 0,delay:{close:h},triggerElementRef:M,externalTree:k,isActiveTrigger:g}),ue=xo(y,i.select("lastOpenChangeReason")),ce=Vn(a,{enabled:!L&&t.type!=="context-menu",event:y&&w?"click":"mousedown",toggle:!0,ignoreMouse:!1,stickIfOpen:t.type===void 0?ue:!1}),pe=jn(a,{enabled:!L&&B}),$=go({open:y,enabled:w,mouseDownAction:"open"}),ae=Rt([ce,pe]),te=n.useMemo(()=>({disabled:L,open:y}),[L,y]),U=i.useState("triggerProps",J),A=[Q,r,Y,G,M],ie=[ae.getReferenceProps(),m??Fe,U,{"aria-haspopup":"menu",id:l,onMouseDown:j=>{if(i.select("open"))return;ee.start(200,()=>{i.context.allowMouseUpTriggerRef.current=!0}),tt(j.currentTarget).addEventListener("mouseup",p,{once:!0})}},w?{role:"menuitem"}:{},$,K,P],he=n.useRef(null),ge=xe(j=>{Qe.flushSync(()=>{i.setOpen(!1,re(We,j.nativeEvent,j.currentTarget))}),Qt(he.current)?.focus()}),le=xe(j=>{const W=i.select("positionerElement");if(W&&Zt(j,W))i.context.beforeContentFocusGuardRef.current?.focus();else{Qe.flushSync(()=>{i.setOpen(!1,re(We,j.nativeEvent,j.currentTarget))});let z=en(i.context.triggerFocusTargetRef.current||M.current);for(;z!==null&&ke(W,z);){const Ie=z;if(z=tn(z),z===Ie)break}z?.focus()}}),ye=Ae("button",o,{enabled:!w,stateAttributesMapping:ut,state:te,ref:A,props:ie});return w?V.jsx(po,{tag:"button",render:u,className:d,state:te,refs:A,props:ie,stateAttributesMapping:ut}):y?V.jsxs(n.Fragment,{children:[V.jsx(ct,{ref:he,onFocus:ge},`${l}-pre-focus-guard`),V.jsx(n.Fragment,{children:ye},l),V.jsx(ct,{ref:i.context.triggerFocusTargetRef,onFocus:le},`${l}-post-focus-guard`)]}):V.jsx(n.Fragment,{children:ye},l)});function xo(e,o){const r=Ee(),[u,d]=n.useState(!1);return fe(()=>{e&&o==="trigger-hover"?(d(!0),r.start(nn,()=>{d(!1)})):e||(r.clear(),d(!1))},[e,o,r]),u}function ho(){const e=Ye(!0),o=ve(!0),r=St();return n.useMemo(()=>r?{type:"menubar",context:r}:e&&!o?{type:"context-menu",context:e}:{type:void 0},[e,o,r])}function Oo({children:e,...o}){return V.jsx(lo,{...o,children:e})}function So({className:e,...o}){return V.jsx(mo,{className:nt(e),...o})}function wo({className:e,side:o="bottom",align:r="end",children:u}){return V.jsx(oo,{children:V.jsx(ro,{side:o,align:r,children:V.jsx(to,{className:nt("min-w-[110px] rounded-lg bg-primary-50 p-1 text-sm text-primary-900 shadow-lg outline outline-primary-900/10",e),children:u})})})}function ko({className:e,...o}){return V.jsx(Jn,{className:nt("flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-primary-900 hover:bg-primary-100 data-highlighted:bg-primary-100","select-none font-[450]",e),...o})}export{Oo as M,So as a,wo as b,ko as c};
@@ -1 +1 @@
1
- import{j as t}from"./main-CEuT8-Qi.js";function a({className:e}){return t.jsx("div",{className:e,children:t.jsx("span",{className:"text-xl",children:"🦎"})})}function i({className:e}){return t.jsx("span",{className:e,style:{background:"linear-gradient(90deg, #10b981, #14b8a6, #06b6d4, #8b5cf6, #ec4899)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",fontWeight:600},children:"OpenCami"})}export{a as O,i as a};
1
+ import{j as t}from"./main-CgwdHc9W.js";function a({className:e}){return t.jsx("div",{className:e,children:t.jsx("span",{className:"text-xl",children:"🦎"})})}function i({className:e}){return t.jsx("span",{className:e,style:{background:"linear-gradient(90deg, #10b981, #14b8a6, #06b6d4, #8b5cf6, #ec4899)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",fontWeight:600},children:"OpenCami"})}export{a as O,i as a};
@@ -0,0 +1 @@
1
+ import{u as P,p as Ne,g as Y,j as Pt,a as y,O as Nt,r as Mt,e as B,w as Ce,x as At,i as kt,h as Ft,o as Lt,E as xe,t as We,H as Dt,n as Vt}from"./useBaseUiId-KQTzRPLp.js";import{u as ne,ab as ue,ag as jt,ac as _t,ai as qt,af as Bt}from"./button-D9Plv7hu.js";import{r as f,j as D,w as Me,x as Kt,y as Wt}from"./main-CgwdHc9W.js";import{u as Ze,e as Q,k as G,d as Ht,v as Ut,w as zt,l as z,x as Yt,y as k,f as Gt,F as $t,z as Je,S as Qe}from"./event-DD8Cz4O9.js";import{a as Xt}from"./visuallyHidden-COI6QeQH.js";const pr=500,gr=500,hr={style:{transition:"none"}},mr="data-base-ui-click-trigger",br={fallbackAxisSide:"none"},vr={fallbackAxisSide:"end"},Zt={clipPath:"inset(50%)",position:"fixed",top:0,left:0},J=0;class me{static create(){return new me}currentId=J;start(e,t){this.clear(),this.currentId=setTimeout(()=>{this.currentId=J,t()},e)}isStarted(){return this.currentId!==J}clear=()=>{this.currentId!==J&&(clearTimeout(this.currentId),this.currentId=J)};disposeEffect=()=>this.clear}function He(){const n=ne(me.create).current;return Ze(n.disposeEffect),n}const ie=null;class Jt{callbacks=[];callbacksCount=0;nextId=1;startId=1;isScheduled=!1;tick=e=>{this.isScheduled=!1;const t=this.callbacks,r=this.callbacksCount;if(this.callbacks=[],this.callbacksCount=0,this.startId=this.nextId,r>0)for(let s=0;s<t.length;s+=1)t[s]?.(e)};request(e){const t=this.nextId;return this.nextId+=1,this.callbacks.push(e),this.callbacksCount+=1,!this.isScheduled&&(requestAnimationFrame(this.tick),this.isScheduled=!0),t}cancel(e){const t=e-this.startId;t<0||t>=this.callbacks.length||(this.callbacks[t]=null,this.callbacksCount-=1)}}const oe=new Jt;class L{static create(){return new L}static request(e){return oe.request(e)}static cancel(e){return oe.cancel(e)}currentId=ie;request(e){this.cancel(),this.currentId=oe.request(()=>{this.currentId=ie,e()})}cancel=()=>{this.currentId!==ie&&(oe.cancel(this.currentId),this.currentId=ie)};disposeEffect=()=>this.cancel}function Qt(){const n=ne(L.create).current;return Ze(n.disposeEffect),n}function Er(n){const e=ne(en,n).current;return e.next=n,P(e.effect),e}function en(n){const e={current:n,next:n,effect:()=>{e.current=e.next}};return e}function le(n,e,t=!0){return n.filter(s=>s.parentId===e&&(!t||s.context?.open)).flatMap(s=>[s,...le(n,s.id,t)])}function yr(n,e){let t=[],r=n.find(s=>s.id===e)?.parentId;for(;r;){const s=n.find(i=>i.id===r);r=s?.parentId,s&&(t=t.concat(s))}return t}var tn=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],fe=tn.join(","),et=typeof Element>"u",$=et?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,de=!et&&Element.prototype.getRootNode?function(n){var e;return n==null||(e=n.getRootNode)===null||e===void 0?void 0:e.call(n)}:function(n){return n?.ownerDocument},pe=function(e,t){var r;t===void 0&&(t=!0);var s=e==null||(r=e.getAttribute)===null||r===void 0?void 0:r.call(e,"inert"),i=s===""||s==="true",o=i||t&&e&&(typeof e.closest=="function"?e.closest("[inert]"):pe(e.parentNode));return o},nn=function(e){var t,r=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return r===""||r==="true"},tt=function(e,t,r){if(pe(e))return[];var s=Array.prototype.slice.apply(e.querySelectorAll(fe));return t&&$.call(e,fe)&&s.unshift(e),s=s.filter(r),s},ge=function(e,t,r){for(var s=[],i=Array.from(e);i.length;){var o=i.shift();if(!pe(o,!1))if(o.tagName==="SLOT"){var c=o.assignedElements(),l=c.length?c:o.children,a=ge(l,!0,r);r.flatten?s.push.apply(s,a):s.push({scopeParent:o,candidates:a})}else{var p=$.call(o,fe);p&&r.filter(o)&&(t||!e.includes(o))&&s.push(o);var d=o.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(o),h=!pe(d,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(o));if(d&&h){var S=ge(d===!0?o.children:d.children,!0,r);r.flatten?s.push.apply(s,S):s.push({scopeParent:o,candidates:S})}else i.unshift.apply(i,o.children)}}return s},nt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},rt=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||nn(e))&&!nt(e)?0:e.tabIndex},rn=function(e,t){var r=rt(e);return r<0&&t&&!nt(e)?0:r},sn=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},st=function(e){return e.tagName==="INPUT"},on=function(e){return st(e)&&e.type==="hidden"},an=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(r){return r.tagName==="SUMMARY"});return t},cn=function(e,t){for(var r=0;r<e.length;r++)if(e[r].checked&&e[r].form===t)return e[r]},un=function(e){if(!e.name)return!0;var t=e.form||de(e),r=function(c){return t.querySelectorAll('input[type="radio"][name="'+c+'"]')},s;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")s=r(window.CSS.escape(e.name));else try{s=r(e.name)}catch(o){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",o.message),!1}var i=cn(s,e.form);return!i||i===e},ln=function(e){return st(e)&&e.type==="radio"},fn=function(e){return ln(e)&&!un(e)},dn=function(e){var t,r=e&&de(e),s=(t=r)===null||t===void 0?void 0:t.host,i=!1;if(r&&r!==e){var o,c,l;for(i=!!((o=s)!==null&&o!==void 0&&(c=o.ownerDocument)!==null&&c!==void 0&&c.contains(s)||e!=null&&(l=e.ownerDocument)!==null&&l!==void 0&&l.contains(e));!i&&s;){var a,p,d;r=de(s),s=(a=r)===null||a===void 0?void 0:a.host,i=!!((p=s)!==null&&p!==void 0&&(d=p.ownerDocument)!==null&&d!==void 0&&d.contains(s))}}return i},Ue=function(e){var t=e.getBoundingClientRect(),r=t.width,s=t.height;return r===0&&s===0},pn=function(e,t){var r=t.displayCheck,s=t.getShadowRoot;if(r==="full-native"&&"checkVisibility"in e){var i=e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});return!i}if(getComputedStyle(e).visibility==="hidden")return!0;var o=$.call(e,"details>summary:first-of-type"),c=o?e.parentElement:e;if($.call(c,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="full-native"||r==="legacy-full"){if(typeof s=="function"){for(var l=e;e;){var a=e.parentElement,p=de(e);if(a&&!a.shadowRoot&&s(a)===!0)return Ue(e);e.assignedSlot?e=e.assignedSlot:!a&&p!==e.ownerDocument?e=p.host:e=a}e=l}if(dn(e))return!e.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return Ue(e);return!1},gn=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var r=0;r<t.children.length;r++){var s=t.children.item(r);if(s.tagName==="LEGEND")return $.call(t,"fieldset[disabled] *")?!0:!s.contains(e)}return!0}t=t.parentElement}return!1},Oe=function(e,t){return!(t.disabled||on(t)||pn(t,e)||an(t)||gn(t))},we=function(e,t){return!(fn(t)||rt(t)<0||!Oe(e,t))},hn=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},it=function(e){var t=[],r=[];return e.forEach(function(s,i){var o=!!s.scopeParent,c=o?s.scopeParent:s,l=rn(c,o),a=o?it(s.candidates):c;l===0?o?t.push.apply(t,a):t.push(c):r.push({documentOrder:i,tabIndex:l,item:s,isScope:o,content:a})}),r.sort(sn).reduce(function(s,i){return i.isScope?s.push.apply(s,i.content):s.push(i.content),s},[]).concat(t)},Ae=function(e,t){t=t||{};var r;return t.getShadowRoot?r=ge([e],t.includeContainer,{filter:we.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:hn}):r=tt(e,t.includeContainer,we.bind(null,t)),it(r)},Sr=function(e,t){t=t||{};var r;return t.getShadowRoot?r=ge([e],t.includeContainer,{filter:Oe.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):r=tt(e,t.includeContainer,Oe.bind(null,t)),r},Tr=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return $.call(e,fe)===!1?!1:we(t,e)};const ke=()=>({getShadowRoot:!0,displayCheck:typeof ResizeObserver=="function"&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function ot(n,e){const t=Ae(n,ke()),r=t.length;if(r===0)return;const s=Ht(G(n)),i=t.indexOf(s),o=i===-1?e===1?0:r-1:i+e;return t[o]}function mn(n){return ot(G(n).body,1)||n}function bn(n){return ot(G(n).body,-1)||n}function at(n,e){if(!n)return null;const t=Ae(G(n).body,ke()),r=t.length;if(r===0)return null;const s=t.indexOf(n);if(s===-1)return null;const i=(s+e+r)%r;return t[i]}function Rr(n){return at(n,1)}function Cr(n){return at(n,-1)}function Ie(n,e){const t=e||n.currentTarget,r=n.relatedTarget;return!r||!Q(t,r)}function vn(n){Ae(n,ke()).forEach(t=>{t.dataset.tabindex=t.getAttribute("tabindex")||"",t.setAttribute("tabindex","-1")})}function ze(n){n.querySelectorAll("[data-tabindex]").forEach(t=>{const r=t.dataset.tabindex;delete t.dataset.tabindex,r?t.setAttribute("tabindex",r):t.removeAttribute("tabindex")})}function ct(){const n=new Map;return{emit(e,t){n.get(e)?.forEach(r=>r(t))},on(e,t){n.has(e)||n.set(e,new Set),n.get(e).add(t)},off(e,t){n.get(e)?.delete(t)}}}class En{nodesRef={current:[]};events=ct();addNode(e){this.nodesRef.current.push(e)}removeNode(e){const t=this.nodesRef.current.findIndex(r=>r===e);t!==-1&&this.nodesRef.current.splice(t,1)}}const ut=f.createContext(null),lt=f.createContext(null),Fe=()=>f.useContext(ut)?.id||null,ft=n=>{const e=f.useContext(lt);return n??e};function xr(n){const e=Ne(),t=ft(n),r=Fe();return P(()=>{if(!e)return;const s={id:e,parentId:r};return t?.addNode(s),()=>{t?.removeNode(s)}},[t,e,r]),e}function Ir(n){const{children:e,id:t}=n,r=Fe();return D.jsx(ut.Provider,{value:f.useMemo(()=>({id:t,parentId:r}),[t,r]),children:e})}function Or(n){const{children:e,externalTree:t}=n,r=ne(()=>t??new En).current;return D.jsx(lt.Provider,{value:r,children:e})}function dt(n){return`data-base-ui-${n}`}const Ye=f.forwardRef(function(e,t){const[r,s]=f.useState();P(()=>{Ut&&s("button")},[]);const i={tabIndex:0,role:r};return D.jsx("span",{...e,ref:t,style:Xt,"aria-hidden":r?void 0:!0,...i,"data-base-ui-focus-guard":""})}),pt=f.createContext(null),yn=()=>f.useContext(pt),Sn=dt("portal");function Tn(n={}){const{ref:e,container:t,componentProps:r=ue,elementProps:s,elementState:i}=n,o=Ne(),l=yn()?.portalNode,[a,p]=f.useState(null),[d,h]=f.useState(null),S=y(x=>{x!==null&&h(x)}),v=f.useRef(null);P(()=>{if(t===null){v.current&&(v.current=null,h(null),p(null));return}if(o==null)return;const x=(t&&(Nt(t)?t:t.current))??l??document.body;if(x==null){v.current&&(v.current=null,h(null),p(null));return}v.current!==x&&(v.current=x,h(null),p(x))},[t,l,o]);const E=jt("div",r,{ref:[e,S],state:i,props:[{id:o,[Sn]:""},s]});return{portalNode:d,portalSubtree:a&&E?Me.createPortal(E,a):null}}const wr=f.forwardRef(function(e,t){const{children:r,container:s,className:i,render:o,renderGuards:c,...l}=e,{portalNode:a,portalSubtree:p}=Tn({container:s,ref:t,componentProps:e,elementProps:l}),d=f.useRef(null),h=f.useRef(null),S=f.useRef(null),v=f.useRef(null),[E,K]=f.useState(null),x=E?.modal,N=E?.open,V=typeof c=="boolean"?c:!!E&&!E.modal&&E.open&&!!a;f.useEffect(()=>{if(!a||x)return;function R(M){a&&M.relatedTarget&&Ie(M)&&(M.type==="focusin"?ze:vn)(a)}return a.addEventListener("focusin",R,!0),a.addEventListener("focusout",R,!0),()=>{a.removeEventListener("focusin",R,!0),a.removeEventListener("focusout",R,!0)}},[a,x]),f.useEffect(()=>{!a||N||ze(a)},[N,a]);const F=f.useMemo(()=>({beforeOutsideRef:d,afterOutsideRef:h,beforeInsideRef:S,afterInsideRef:v,portalNode:a,setFocusManagerState:K}),[a]);return D.jsxs(f.Fragment,{children:[p,D.jsxs(pt.Provider,{value:F,children:[V&&a&&D.jsx(Ye,{"data-type":"outside",ref:d,onFocus:R=>{if(Ie(R,a))S.current?.focus();else{const M=E?E.domReference:null;bn(M)?.focus()}}}),V&&a&&D.jsx("span",{"aria-owns":a.id,style:Zt}),a&&Me.createPortal(r,a),V&&a&&D.jsx(Ye,{"data-type":"outside",ref:h,onFocus:R=>{if(Ie(R,a))v.current?.focus();else{const M=E?E.domReference:null;mn(M)?.focus(),E?.closeOnFocusOut&&E?.onOpenChange(!1,Y(Pt,R.nativeEvent))}}})]})]})});function Rn(n){return n==null?n:"current"in n?n.current:n}const Cn={intentional:"onClick",sloppy:"onPointerDown"};function xn(n){return{escapeKey:typeof n=="boolean"?n:n?.escapeKey??!1,outsidePress:typeof n=="boolean"?n:n?.outsidePress??!0}}function Pr(n,e={}){const t="rootStore"in n?n.rootStore:n,r=t.useState("open"),s=t.useState("floatingElement"),i=t.useState("referenceElement"),o=t.useState("domReferenceElement"),{onOpenChange:c,dataRef:l}=t.context,{enabled:a=!0,escapeKey:p=!0,outsidePress:d=!0,outsidePressEvent:h="sloppy",referencePress:S=!1,referencePressEvent:v="sloppy",ancestorScroll:E=!1,bubbles:K,externalTree:x}=e,N=ft(x),V=y(typeof d=="function"?d:()=>!1),F=typeof d=="function"?V:d,R=f.useRef(!1),{escapeKey:M,outsidePress:X}=xn(K),I=f.useRef(null),re=He(),De=He(),W=y(()=>{De.clear(),l.current.insideReactTree=!1}),be=f.useRef(!1),Ve=f.useRef(""),ve=y(u=>{Ve.current=u.pointerType}),H=y(()=>{const u=Ve.current,m=u==="pen"||!u?"mouse":u,g=typeof h=="function"?h():h;return typeof g=="string"?g:g[m]}),j=y(u=>{if(!r||!a||!p||u.key!=="Escape"||be.current)return;const m=l.current.floatingContext?.nodeId,g=N?le(N.nodesRef.current,m):[];if(!M&&g.length>0){let O=!0;if(g.forEach(C=>{C.context?.open&&!C.context.dataRef.current.__escapeKeyBubbles&&(O=!1)}),!O)return}const A=zt(u)?u.nativeEvent:u,b=Y(Mt,A);t.setOpen(!1,b),!M&&!b.isPropagationAllowed&&u.stopPropagation()}),bt=y(u=>{const m=H();return m==="intentional"&&u.type!=="click"||m==="sloppy"&&u.type==="click"}),_=y(()=>{l.current.insideReactTree=!0,De.start(0,W)}),Z=y((u,m=!1)=>{if(bt(u)){W();return}if(l.current.insideReactTree){W();return}if(H()==="intentional"&&m||typeof F=="function"&&!F(u))return;const g=z(u),A=`[${dt("inert")}]`,b=G(t.select("floatingElement")).querySelectorAll(A),O=t.context.triggerElements;if(g&&(O.hasElement(g)||O.hasMatchingElement(w=>Q(w,g))))return;let C=B(g)?g:null;for(;C&&!Ce(C);){const w=At(C);if(Ce(w)||!B(w))break;C=w}if(b.length&&B(g)&&!Yt(g)&&!Q(g,t.select("floatingElement"))&&Array.from(b).every(w=>!Q(C,w)))return;if(kt(g)&&!("touches"in u)){const w=Ce(g),U=Ft(g),Ke=/auto|scroll/,Tt=w||Ke.test(U.overflowX),Rt=w||Ke.test(U.overflowY),Ct=Tt&&g.clientWidth>0&&g.scrollWidth>g.clientWidth,xt=Rt&&g.clientHeight>0&&g.scrollHeight>g.clientHeight,It=U.direction==="rtl",Ot=xt&&(It?u.offsetX<=g.offsetWidth-g.clientWidth:u.offsetX>g.clientWidth),wt=Ct&&u.offsetY>g.clientHeight;if(Ot||wt)return}const qe=l.current.floatingContext?.nodeId,St=N&&le(N.nodesRef.current,qe).some(w=>k(u,w.context?.elements.floating));if(k(u,t.select("floatingElement"))||k(u,t.select("domReferenceElement"))||St)return;const Be=N?le(N.nodesRef.current,qe):[];if(Be.length>0){let w=!0;if(Be.forEach(U=>{U.context?.open&&!U.context.dataRef.current.__outsidePressBubbles&&(w=!1)}),!w)return}t.setOpen(!1,Y(Lt,u)),W()}),je=y(u=>{H()!=="sloppy"||u.pointerType==="touch"||!t.select("open")||!a||k(u,t.select("floatingElement"))||k(u,t.select("domReferenceElement"))||Z(u)}),vt=y(u=>{if(H()!=="sloppy"||!t.select("open")||!a||k(u,t.select("floatingElement"))||k(u,t.select("domReferenceElement")))return;const m=u.touches[0];m&&(I.current={startTime:Date.now(),startX:m.clientX,startY:m.clientY,dismissOnTouchEnd:!1,dismissOnMouseDown:!0},re.start(1e3,()=>{I.current&&(I.current.dismissOnTouchEnd=!1,I.current.dismissOnMouseDown=!1)}))}),Ee=y(u=>{const m=z(u);function g(){vt(u),m?.removeEventListener(u.type,g)}m?.addEventListener(u.type,g)}),q=y(u=>{const m=R.current;if(R.current=!1,re.clear(),u.type==="mousedown"&&I.current&&!I.current.dismissOnMouseDown)return;const g=z(u);function A(){u.type==="pointerdown"?je(u):Z(u,m),g?.removeEventListener(u.type,A)}g?.addEventListener(u.type,A)}),Et=y(u=>{if(H()!=="sloppy"||!I.current||k(u,t.select("floatingElement"))||k(u,t.select("domReferenceElement")))return;const m=u.touches[0];if(!m)return;const g=Math.abs(m.clientX-I.current.startX),A=Math.abs(m.clientY-I.current.startY),b=Math.sqrt(g*g+A*A);b>5&&(I.current.dismissOnTouchEnd=!0),b>10&&(Z(u),re.clear(),I.current=null)}),ye=y(u=>{const m=z(u);function g(){Et(u),m?.removeEventListener(u.type,g)}m?.addEventListener(u.type,g)}),yt=y(u=>{H()!=="sloppy"||!I.current||k(u,t.select("floatingElement"))||k(u,t.select("domReferenceElement"))||(I.current.dismissOnTouchEnd&&Z(u),re.clear(),I.current=null)}),Se=y(u=>{const m=z(u);function g(){yt(u),m?.removeEventListener(u.type,g)}m?.addEventListener(u.type,g)});f.useEffect(()=>{if(!r||!a)return;l.current.__escapeKeyBubbles=M,l.current.__outsidePressBubbles=X;const u=new me;function m(C){t.setOpen(!1,Y(Vt,C))}function g(){u.clear(),be.current=!0}function A(){u.start(Dt()?5:0,()=>{be.current=!1})}const b=G(s);b.addEventListener("pointerdown",ve,!0),p&&(b.addEventListener("keydown",j),b.addEventListener("compositionstart",g),b.addEventListener("compositionend",A)),F&&(b.addEventListener("click",q,!0),b.addEventListener("pointerdown",q,!0),b.addEventListener("touchstart",Ee,!0),b.addEventListener("touchmove",ye,!0),b.addEventListener("touchend",Se,!0),b.addEventListener("mousedown",q,!0));let O=[];return E&&(B(o)&&(O=xe(o)),B(s)&&(O=O.concat(xe(s))),!B(i)&&i&&i.contextElement&&(O=O.concat(xe(i.contextElement)))),O=O.filter(C=>C!==b.defaultView?.visualViewport),O.forEach(C=>{C.addEventListener("scroll",m,{passive:!0})}),()=>{b.removeEventListener("pointerdown",ve,!0),p&&(b.removeEventListener("keydown",j),b.removeEventListener("compositionstart",g),b.removeEventListener("compositionend",A)),F&&(b.removeEventListener("click",q,!0),b.removeEventListener("pointerdown",q,!0),b.removeEventListener("touchstart",Ee,!0),b.removeEventListener("touchmove",ye,!0),b.removeEventListener("touchend",Se,!0),b.removeEventListener("mousedown",q,!0)),O.forEach(C=>{C.removeEventListener("scroll",m)}),u.clear(),R.current=!1}},[l,s,i,o,p,F,r,c,E,a,M,X,j,Z,q,je,Ee,ye,Se,ve,t]),f.useEffect(W,[F,W]);const Te=f.useMemo(()=>({onKeyDown:j,...S&&{[Cn[v]]:u=>{t.setOpen(!1,Y(We,u.nativeEvent))},...v!=="intentional"&&{onClick(u){t.setOpen(!1,Y(We,u.nativeEvent))}}}}),[j,t,S,v]),se=y(u=>{const m=z(u.nativeEvent);!Q(t.select("floatingElement"),m)||u.button!==0||(R.current=!0)}),Re=y(u=>{!r||!a||u.button!==0||(R.current=!0)}),_e=f.useMemo(()=>({onKeyDown:j,onPointerDown:se,onMouseDown:se,onMouseUp:se,onClickCapture:_,onMouseDownCapture(u){_(),Re(u)},onPointerDownCapture(u){_(),Re(u)},onMouseUpCapture:_,onTouchEndCapture:_,onTouchMoveCapture:_}),[j,se,_,Re]);return f.useMemo(()=>a?{reference:Te,floating:_e,trigger:Te}:{},[a,Te,_e])}var he=Symbol("NOT_FOUND");function In(n,e=`expected a function, instead received ${typeof n}`){if(typeof n!="function")throw new TypeError(e)}function On(n,e=`expected an object, instead received ${typeof n}`){if(typeof n!="object")throw new TypeError(e)}function wn(n,e="expected all items to be functions, instead received the following types: "){if(!n.every(t=>typeof t=="function")){const t=n.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${e}[${t}]`)}}var Ge=n=>Array.isArray(n)?n:[n];function Pn(n){const e=Array.isArray(n[0])?n[0]:n;return wn(e,"createSelector expects all input-selectors to be functions, but received the following types: "),e}function Nn(n,e){const t=[],{length:r}=n;for(let s=0;s<r;s++)t.push(n[s].apply(null,e));return t}function Mn(n){let e;return{get(t){return e&&n(e.key,t)?e.value:he},put(t,r){e={key:t,value:r}},getEntries(){return e?[e]:[]},clear(){e=void 0}}}function An(n,e){let t=[];function r(c){const l=t.findIndex(a=>e(c,a.key));if(l>-1){const a=t[l];return l>0&&(t.splice(l,1),t.unshift(a)),a.value}return he}function s(c,l){r(c)===he&&(t.unshift({key:c,value:l}),t.length>n&&t.pop())}function i(){return t}function o(){t=[]}return{get:r,put:s,getEntries:i,clear:o}}var kn=(n,e)=>n===e;function Fn(n){return function(t,r){if(t===null||r===null||t.length!==r.length)return!1;const{length:s}=t;for(let i=0;i<s;i++)if(!n(t[i],r[i]))return!1;return!0}}function Ln(n,e){const t=typeof e=="object"?e:{equalityCheck:e},{equalityCheck:r=kn,maxSize:s=1,resultEqualityCheck:i}=t,o=Fn(r);let c=0;const l=s<=1?Mn(o):An(s,o);function a(){let p=l.get(arguments);if(p===he){if(p=n.apply(null,arguments),c++,i){const h=l.getEntries().find(S=>i(S.value,p));h&&(p=h.value,c!==0&&c--)}l.put(arguments,p)}return p}return a.clearCache=()=>{l.clear(),a.resetResultsCount()},a.resultsCount=()=>c,a.resetResultsCount=()=>{c=0},a}var Dn=class{constructor(n){this.value=n}deref(){return this.value}},Vn=typeof WeakRef<"u"?WeakRef:Dn,jn=0,$e=1;function ae(){return{s:jn,v:void 0,o:null,p:null}}function gt(n,e={}){let t=ae();const{resultEqualityCheck:r}=e;let s,i=0;function o(){let c=t;const{length:l}=arguments;for(let d=0,h=l;d<h;d++){const S=arguments[d];if(typeof S=="function"||typeof S=="object"&&S!==null){let v=c.o;v===null&&(c.o=v=new WeakMap);const E=v.get(S);E===void 0?(c=ae(),v.set(S,c)):c=E}else{let v=c.p;v===null&&(c.p=v=new Map);const E=v.get(S);E===void 0?(c=ae(),v.set(S,c)):c=E}}const a=c;let p;if(c.s===$e)p=c.v;else if(p=n.apply(null,arguments),i++,r){const d=s?.deref?.()??s;d!=null&&r(d,p)&&(p=d,i!==0&&i--),s=typeof p=="object"&&p!==null||typeof p=="function"?new Vn(p):p}return a.s=$e,a.v=p,p}return o.clearCache=()=>{t=ae(),o.resetResultsCount()},o.resultsCount=()=>i,o.resetResultsCount=()=>{i=0},o}function ht(n,...e){const t=typeof n=="function"?{memoize:n,memoizeOptions:e}:n,r=(...s)=>{let i=0,o=0,c,l={},a=s.pop();typeof a=="object"&&(l=a,a=s.pop()),In(a,`createSelector expects an output function after the inputs, but received: [${typeof a}]`);const p={...t,...l},{memoize:d,memoizeOptions:h=[],argsMemoize:S=gt,argsMemoizeOptions:v=[]}=p,E=Ge(h),K=Ge(v),x=Pn(s),N=d(function(){return i++,a.apply(null,arguments)},...E),V=S(function(){o++;const R=Nn(x,arguments);return c=N.apply(null,R),c},...K);return Object.assign(V,{resultFunc:a,memoizedResultFunc:N,dependencies:x,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>c,recomputations:()=>i,resetRecomputations:()=>{i=0},memoize:d,argsMemoize:S})};return Object.assign(r,{withTypes:()=>r}),r}var _n=ht(gt),qn=Object.assign((n,e=_n)=>{On(n,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof n}`);const t=Object.keys(n),r=t.map(i=>n[i]);return e(r,(...i)=>i.reduce((o,c,l)=>(o[t[l]]=c,o),{}))},{withTypes:()=>qn});ht({memoize:Ln,memoizeOptions:{maxSize:1,equalityCheck:Object.is}});const T=(n,e,t,r,s,i,...o)=>{if(o.length>0)throw new Error(_t(1));let c;if(n)c=n;else throw new Error("Missing arguments");return c};var Bn=Kt();const Kn=qt(19),Wn=Kn?Un:zn;function Hn(n,e,t,r,s){return Wn(n,e,t,r,s)}function Un(n,e,t,r,s){const i=f.useCallback(()=>e(n.getSnapshot(),t,r,s),[n,e,t,r,s]);return Bn.useSyncExternalStore(n.subscribe,i,i)}function zn(n,e,t,r,s){return Wt.useSyncExternalStoreWithSelector(n.subscribe,n.getSnapshot,n.getSnapshot,i=>e(i,t,r,s))}class ee{constructor(e){this.state=e,this.listeners=new Set,this.updateTick=0}subscribe=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)});getSnapshot=()=>this.state;setState(e){if(this.state===e)return;this.state=e,this.updateTick+=1;const t=this.updateTick;for(const r of this.listeners){if(t!==this.updateTick)return;r(e)}}update(e){for(const t in e)if(!Object.is(this.state[t],e[t])){ee.prototype.setState.call(this,{...this.state,...e});return}}set(e,t){Object.is(this.state[e],t)||ee.prototype.setState.call(this,{...this.state,[e]:t})}notifyAll(){const e={...this.state};ee.prototype.setState.call(this,e)}}class Yn extends ee{constructor(e,t={},r){super(e),this.context=t,this.selectors=r}controlledValues=new Map;useSyncedValue(e,t){f.useDebugValue(e),P(()=>{this.state[e]!==t&&this.set(e,t)},[e,t])}useSyncedValueWithCleanup(e,t){const r=this;P(()=>(r.state[e]!==t&&r.set(e,t),()=>{r.set(e,void 0)}),[r,e,t])}useSyncedValues(e){const t=this,r=Object.values(e);P(()=>{t.update(e)},[t,...r])}useControlledProp(e,t,r){f.useDebugValue(e);const s=this,i=t!==void 0;this.controlledValues.has(e)||(this.controlledValues.set(e,i),!i&&!Object.is(this.state[e],r)&&super.setState({...this.state,[e]:r})),P(()=>{i&&!Object.is(s.state[e],t)&&super.setState({...s.state,[e]:t})},[s,e,t,r,i])}set(e,t){this.controlledValues.get(e)!==!0&&super.set(e,t)}update(e){const t={...e};for(const r in t)if(Object.hasOwn(t,r)&&this.controlledValues.get(r)===!0){delete t[r];continue}super.update(t)}setState(e){const t={...e};for(const r in t)if(Object.hasOwn(t,r)&&this.controlledValues.get(r)===!0){delete t[r];continue}super.setState({...this.state,...t})}select=(e,t,r,s)=>{const i=this.selectors[e];return i(this.state,t,r,s)};useState=(e,t,r,s)=>{f.useDebugValue(e);const i=this.selectors[e];return Hn(this,i,t,r,s)};useContextCallback(e,t){f.useDebugValue(e);const r=y(t??Bt);this.context[e]=r}useStateSetter(e){const t=f.useRef(void 0);return t.current===void 0&&(t.current=r=>{this.set(e,r)}),t.current}observe(e,t){let r;typeof e=="function"?r=e:r=this.selectors[e];let s=r(this.state);return t(s,s,this),this.subscribe(i=>{const o=r(i);if(!Object.is(s,o)){const c=s;s=o,t(o,c,this)}})}}const Gn={open:T(n=>n.open),domReferenceElement:T(n=>n.domReferenceElement),referenceElement:T(n=>n.positionReference??n.referenceElement),floatingElement:T(n=>n.floatingElement),floatingId:T(n=>n.floatingId)};class mt extends Yn{constructor(e){const{nested:t,noEmit:r,onOpenChange:s,triggerElements:i,...o}=e;super({...o,positionReference:o.referenceElement,domReferenceElement:o.referenceElement},{onOpenChange:s,dataRef:{current:{}},events:ct(),nested:t,noEmit:r,triggerElements:i},Gn)}setOpen=(e,t)=>{if((!e||!this.state.open||Gt(t.event))&&(this.context.dataRef.current.openEvent=e?t.event:void 0),!this.context.noEmit){const r={open:e,reason:t.reason,nativeEvent:t.event,nested:this.context.nested,triggerElement:t.trigger};this.context.events.emit("openchange",r)}this.context.onOpenChange?.(e,t)}}function $n(n,e=!1,t=!1){const[r,s]=f.useState(n&&e?"idle":void 0),[i,o]=f.useState(n);return n&&!i&&(o(!0),s("starting")),!n&&i&&r!=="ending"&&!t&&s("ending"),!n&&!i&&r==="ending"&&s(void 0),P(()=>{if(!n&&i&&r!=="ending"&&t){const c=L.request(()=>{s("ending")});return()=>{L.cancel(c)}}},[n,i,r,t]),P(()=>{if(!n||e)return;const c=L.request(()=>{s(void 0)});return()=>{L.cancel(c)}},[e,n]),P(()=>{if(!n||!e)return;n&&i&&r!=="idle"&&s("starting");const c=L.request(()=>{s("idle")});return()=>{L.cancel(c)}},[e,n,i,s,r]),f.useMemo(()=>({mounted:i,setMounted:o,transitionStatus:r}),[i,r])}let te=(function(n){return n.startingStyle="data-starting-style",n.endingStyle="data-ending-style",n})({});const Xn={[te.startingStyle]:""},Zn={[te.endingStyle]:""},Nr={transitionStatus(n){return n==="starting"?Xn:n==="ending"?Zn:null}};function Jn(n,e=!1,t=!0){const r=Qt();return y((s,i=null)=>{r.cancel();function o(){Me.flushSync(s)}const c=Rn(n);if(c==null)return;const l=c;if(typeof l.getAnimations!="function"||globalThis.BASE_UI_ANIMATIONS_DISABLED)s();else{let a=function(){const d=te.startingStyle;if(!l.hasAttribute(d)){r.request(p);return}const h=new MutationObserver(()=>{l.hasAttribute(d)||(h.disconnect(),p())});h.observe(l,{attributes:!0,attributeFilter:[d]}),i?.addEventListener("abort",()=>h.disconnect(),{once:!0})},p=function(){Promise.all(l.getAnimations().map(d=>d.finished)).then(()=>{i?.aborted||o()}).catch(()=>{const d=l.getAnimations();if(t){if(i?.aborted)return;o()}else d.length>0&&d.some(h=>h.pending||h.playState!=="finished")&&p()})};if(e){a();return}r.request(p)}})}function Qn(n){const{enabled:e=!0,open:t,ref:r,onComplete:s}=n,i=y(s),o=Jn(r,t,!1);f.useEffect(()=>{if(!e)return;const c=new AbortController;return o(i,c.signal),()=>{c.abort()}},[e,t,i,o])}function er(n,e){const t=f.useRef(null),r=f.useRef(null);return f.useCallback(s=>{if(n!==void 0){if(t.current!==null){const i=t.current,o=r.current,c=e.context.triggerElements.getById(i);o&&c===o&&e.context.triggerElements.delete(i),t.current=null,r.current=null}s!==null&&(t.current=n,r.current=s,e.context.triggerElements.add(n,s))}},[e,n])}function Mr(n,e,t,r){const s=t.useState("isMountedByTrigger",n),i=er(n,t),o=y(c=>{if(i(c),!c||!t.select("open"))return;const l=t.select("activeTriggerId");if(l===n){t.update({activeTriggerElement:c,...r});return}l==null&&t.update({activeTriggerId:n,activeTriggerElement:c,...r})});return P(()=>{s&&t.update({activeTriggerElement:e.current,...r})},[s,t,e,...Object.values(r)]),{registerTrigger:o,isMountedByThisTrigger:s}}function Ar(n){const e=n.useState("open");P(()=>{if(e&&!n.select("activeTriggerId")&&n.context.triggerElements.size===1){const t=n.context.triggerElements.entries().next();if(!t.done){const[r,s]=t.value;n.update({activeTriggerId:r,activeTriggerElement:s})}}},[e,n])}function kr(n,e,t){const{mounted:r,setMounted:s,transitionStatus:i}=$n(n);e.useSyncedValues({mounted:r,transitionStatus:i});const o=y(()=>{s(!1),e.update({activeTriggerId:null,activeTriggerElement:null,mounted:!1}),t?.(),e.context.onOpenChangeComplete?.(!1)}),c=e.useState("preventUnmountingOnClose");return Qn({enabled:!c,open:n,ref:e.context.popupRef,onComplete(){n||o()}}),{forceUnmount:o,transitionStatus:i}}class tr{constructor(){this.elements=new Set,this.idMap=new Map}add(e,t){const r=this.idMap.get(e);r!==t&&(r!==void 0&&this.elements.delete(r),this.elements.add(t),this.idMap.set(e,t))}delete(e){const t=this.idMap.get(e);t&&(this.elements.delete(t),this.idMap.delete(e))}hasElement(e){return this.elements.has(e)}hasMatchingElement(e){for(const t of this.elements)if(e(t))return!0;return!1}getById(e){return this.idMap.get(e)}entries(){return this.idMap.entries()}get size(){return this.idMap.size}}function nr(){return new mt({open:!1,floatingElement:null,referenceElement:null,triggerElements:new tr,floatingId:"",nested:!1,noEmit:!1,onOpenChange:void 0})}function Fr(){return{open:!1,mounted:!1,transitionStatus:"idle",floatingRootContext:nr(),preventUnmountingOnClose:!1,payload:void 0,activeTriggerId:null,activeTriggerElement:null,popupElement:null,positionerElement:null,activeTriggerProps:ue,inactiveTriggerProps:ue,popupProps:ue}}const Lr={open:T(n=>n.open),mounted:T(n=>n.mounted),transitionStatus:T(n=>n.transitionStatus),floatingRootContext:T(n=>n.floatingRootContext),preventUnmountingOnClose:T(n=>n.preventUnmountingOnClose),payload:T(n=>n.payload),activeTriggerId:T(n=>n.activeTriggerId),activeTriggerElement:T(n=>n.mounted?n.activeTriggerElement:null),isTriggerActive:T((n,e)=>e!==void 0&&n.activeTriggerId===e),isOpenedByTrigger:T((n,e)=>e!==void 0&&n.activeTriggerId===e&&n.open),isMountedByTrigger:T((n,e)=>e!==void 0&&n.activeTriggerId===e&&n.mounted),triggerProps:T((n,e)=>e?n.activeTriggerProps:n.inactiveTriggerProps),popupProps:T(n=>n.popupProps),popupElement:T(n=>n.popupElement),positionerElement:T(n=>n.positionerElement)};function Dr(n){const{popupStore:e,noEmit:t=!1,treatPopupAsFloatingElement:r=!1,onOpenChange:s}=n,i=Ne(),o=Fe()!=null,c=e.useState("open"),l=e.useState("activeTriggerElement"),a=e.useState(r?"popupElement":"positionerElement"),p=e.context.triggerElements,d=ne(()=>new mt({open:c,referenceElement:l,floatingElement:a,triggerElements:p,onOpenChange:s,floatingId:i,nested:o,noEmit:t})).current;return P(()=>{const h={open:c,floatingId:i,referenceElement:l,floatingElement:a};B(l)&&(h.domReferenceElement=l),d.state.positionReference===d.state.referenceElement&&(h.positionReference=l),d.update(h)},[c,i,l,a,d]),d.context.onOpenChange=s,d.context.nested=o,d.context.noEmit=t,d}function Vr(n=[]){const e=n.map(a=>a?.reference),t=n.map(a=>a?.floating),r=n.map(a=>a?.item),s=n.map(a=>a?.trigger),i=f.useCallback(a=>ce(a,n,"reference"),e),o=f.useCallback(a=>ce(a,n,"floating"),t),c=f.useCallback(a=>ce(a,n,"item"),r),l=f.useCallback(a=>ce(a,n,"trigger"),s);return f.useMemo(()=>({getReferenceProps:i,getFloatingProps:o,getItemProps:c,getTriggerProps:l}),[i,o,c,l])}function ce(n,e,t){const r=new Map,s=t==="item",i={};t==="floating"&&(i.tabIndex=-1,i[$t]="");for(const o in n)s&&n&&(o===Je||o===Qe)||(i[o]=n[o]);for(let o=0;o<e.length;o+=1){let c;const l=e[o]?.[t];typeof l=="function"?c=n?l(n):null:c=l,c&&Xe(i,c,s,r)}return Xe(i,n,s,r),i}function Xe(n,e,t,r){for(const s in e){const i=e[s];t&&(s===Je||s===Qe)||(s.startsWith("on")?(r.has(s)||r.set(s,[]),typeof i=="function"&&(r.get(s)?.push(i),n[s]=(...o)=>r.get(s)?.map(c=>c(...o)).find(c=>c!==void 0))):n[s]=i)}}let Le=(function(n){return n.open="data-open",n.closed="data-closed",n[n.startingStyle=te.startingStyle]="startingStyle",n[n.endingStyle=te.endingStyle]="endingStyle",n.anchorHidden="data-anchor-hidden",n})({}),Pe=(function(n){return n.popupOpen="data-popup-open",n.pressed="data-pressed",n})({});const rr={[Pe.popupOpen]:""},sr={[Pe.popupOpen]:"",[Pe.pressed]:""},ir={[Le.open]:""},or={[Le.closed]:""},ar={[Le.anchorHidden]:""},jr={open(n){return n?rr:null}},_r={open(n){return n?sr:null}},qr={open(n){return n?ir:or},anchorHidden(n){return n?ar:null}};export{Jn as $,_r as A,Ye as B,gr as C,br as D,me as E,wr as F,L as G,yn as H,Ae as I,ke as J,dt as K,yr as L,Rn as M,le as N,bn as O,vr as P,Tr as Q,Yn as R,mr as S,pr as T,Sr as U,Le as V,mt as W,hr as X,jr as Y,Tn as Z,$n as _,He as a,te as a0,Er as b,Fe as c,ft as d,Qn as e,Ir as f,tr as g,Lr as h,T as i,En as j,Fr as k,xr as l,Ar as m,kr as n,Dr as o,qr as p,Pr as q,Vr as r,Or as s,Nr as t,Qt as u,Mr as v,Cr as w,Ie as x,Rr as y,mn as z};