flujo-ai 3.11.0 → 3.12.0

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 (179) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-build-manifest.json +154 -154
  3. package/.next/app-path-routes-manifest.json +12 -12
  4. package/.next/build-manifest.json +5 -5
  5. package/.next/prerender-manifest.json +15 -15
  6. package/.next/react-loadable-manifest.json +4 -4
  7. package/.next/server/app/_not-found/page.js +1 -1
  8. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_not-found.html +1 -1
  10. package/.next/server/app/_not-found.rsc +1 -1
  11. package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -1
  12. package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -1
  13. package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -1
  14. package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -1
  15. package/.next/server/app/api/env/route.js +2 -2
  16. package/.next/server/app/api/env/route_client-reference-manifest.js +1 -1
  17. package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -1
  18. package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -1
  19. package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -1
  20. package/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  21. package/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  22. package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -1
  23. package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -1
  24. package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -1
  25. package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -1
  26. package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -1
  27. package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -1
  28. package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -1
  29. package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -1
  30. package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -1
  31. package/.next/server/app/api/mcp/servers/route.js +1 -1
  32. package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -1
  33. package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -1
  34. package/.next/server/app/api/mcp/test-connection/stream/route_client-reference-manifest.js +1 -1
  35. package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -1
  36. package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -1
  37. package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -1
  38. package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -1
  39. package/.next/server/app/api/model/route_client-reference-manifest.js +1 -1
  40. package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -1
  41. package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -1
  42. package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -1
  43. package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -1
  44. package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -1
  45. package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -1
  46. package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -1
  47. package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -1
  48. package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -1
  49. package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -1
  50. package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -1
  51. package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  52. package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -1
  53. package/.next/server/app/chat/page.js +2 -2
  54. package/.next/server/app/chat/page.js.nft.json +1 -1
  55. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  56. package/.next/server/app/chat.html +1 -1
  57. package/.next/server/app/chat.rsc +2 -2
  58. package/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  59. package/.next/server/app/docs.html +1 -1
  60. package/.next/server/app/docs.rsc +2 -2
  61. package/.next/server/app/executions/page.js +3 -3
  62. package/.next/server/app/executions/page.js.nft.json +1 -1
  63. package/.next/server/app/executions/page_client-reference-manifest.js +1 -1
  64. package/.next/server/app/executions.html +1 -1
  65. package/.next/server/app/executions.rsc +2 -2
  66. package/.next/server/app/flows/page.js +1 -1
  67. package/.next/server/app/flows/page.js.nft.json +1 -1
  68. package/.next/server/app/flows/page_client-reference-manifest.js +1 -1
  69. package/.next/server/app/flows.html +1 -1
  70. package/.next/server/app/flows.rsc +2 -2
  71. package/.next/server/app/index.html +1 -1
  72. package/.next/server/app/index.rsc +2 -2
  73. package/.next/server/app/mcp/page.js +10 -10
  74. package/.next/server/app/mcp/page.js.nft.json +1 -1
  75. package/.next/server/app/mcp/page_client-reference-manifest.js +1 -1
  76. package/.next/server/app/mcp-flows/route.js +1 -1
  77. package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -1
  78. package/.next/server/app/mcp-proxy/[server]/route.js +1 -1
  79. package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -1
  80. package/.next/server/app/mcp.html +1 -1
  81. package/.next/server/app/mcp.rsc +2 -2
  82. package/.next/server/app/models/page.js +3 -3
  83. package/.next/server/app/models/page.js.nft.json +1 -1
  84. package/.next/server/app/models/page_client-reference-manifest.js +1 -1
  85. package/.next/server/app/page_client-reference-manifest.js +1 -1
  86. package/.next/server/app/settings/page.js +2 -2
  87. package/.next/server/app/settings/page.js.nft.json +1 -1
  88. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  89. package/.next/server/app/settings.html +1 -1
  90. package/.next/server/app/settings.rsc +2 -2
  91. package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -1
  92. package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -1
  93. package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -1
  94. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -1
  95. package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -1
  96. package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -1
  97. package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -1
  98. package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -1
  99. package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -1
  100. package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  101. package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -1
  102. package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -1
  103. package/.next/server/app-paths-manifest.json +12 -12
  104. package/.next/server/chunks/1050.js +1 -0
  105. package/.next/server/chunks/1373.js +1 -1
  106. package/.next/server/chunks/1403.js +1 -1
  107. package/.next/server/chunks/1746.js +1 -0
  108. package/.next/server/chunks/1905.js +1 -1
  109. package/.next/server/chunks/2776.js +1 -1
  110. package/.next/server/chunks/3984.js +4 -4
  111. package/.next/server/chunks/5389.js +9 -9
  112. package/.next/server/chunks/5504.js +2 -2
  113. package/.next/server/chunks/5558.js +1 -0
  114. package/.next/server/chunks/5587.js +1 -0
  115. package/.next/server/chunks/5734.js +4 -4
  116. package/.next/server/chunks/{9314.js → 5888.js} +3 -3
  117. package/.next/server/chunks/6936.js +3 -3
  118. package/.next/server/chunks/6996.js +3 -3
  119. package/.next/server/chunks/724.js +2 -2
  120. package/.next/server/chunks/7328.js +1 -0
  121. package/.next/server/chunks/7485.js +1 -0
  122. package/.next/server/chunks/8434.js +1 -0
  123. package/.next/server/middleware-build-manifest.js +1 -1
  124. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  125. package/.next/server/pages/404.html +1 -1
  126. package/.next/server/pages/500.html +1 -1
  127. package/.next/server/pages-manifest.json +1 -1
  128. package/.next/server/server-reference-manifest.js +1 -1
  129. package/.next/server/server-reference-manifest.json +1 -1
  130. package/.next/static/chunks/1226-af62e7a89fa9032e.js +1 -0
  131. package/.next/static/chunks/1979-e2d922370ecef69f.js +1 -0
  132. package/.next/static/chunks/2158-0d6bb5a428ed0688.js +1 -0
  133. package/.next/static/chunks/256-7f4847b6726c866c.js +1 -0
  134. package/.next/static/chunks/2709-29f91a54eef90221.js +1 -0
  135. package/.next/static/chunks/539-8ddf886986877cfc.js +1 -0
  136. package/.next/static/chunks/6582-6735fdd6b42b5c35.js +1 -0
  137. package/.next/static/chunks/6902-cba4e59c4295b4a0.js +1 -0
  138. package/.next/static/chunks/8867-3f7163974605427b.js +1 -0
  139. package/.next/static/chunks/8989-401559d9f3bc80a0.js +1 -0
  140. package/.next/static/chunks/9164-36fedeb944fa71e9.js +1 -0
  141. package/.next/static/chunks/9414-3cd5c3976cba66b2.js +1 -0
  142. package/.next/static/chunks/9984-1ed094ea9f5b1f17.js +1 -0
  143. package/.next/static/chunks/app/chat/{page-aea8c8cbfa461e7f.js → page-5c838e3ce9d7a27d.js} +1 -1
  144. package/.next/static/chunks/app/docs/page-d4005b311ead55f2.js +1 -0
  145. package/.next/static/chunks/app/executions/{page-95fec57bf97ee809.js → page-870931839b84c8d5.js} +1 -1
  146. package/.next/static/chunks/app/flows/{page-7fe295069ccdb5fe.js → page-303dc4d2542567a6.js} +1 -1
  147. package/.next/static/chunks/app/mcp/page-5012a7e5b6366207.js +1 -0
  148. package/.next/static/chunks/app/models/page-4fc4d100a8b1d4b4.js +1 -0
  149. package/.next/static/chunks/app/settings/page-199cff457723ee57.js +1 -0
  150. package/.next/static/chunks/{webpack-63a4c59e84967e90.js → webpack-4015bd6f241940a1.js} +1 -1
  151. package/.next/trace +7 -7
  152. package/README.md +12 -5
  153. package/package.json +1 -1
  154. package/scripts/launch-next.mjs +17 -3
  155. package/.next/server/chunks/1381.js +0 -1
  156. package/.next/server/chunks/1555.js +0 -1
  157. package/.next/server/chunks/3426.js +0 -1
  158. package/.next/server/chunks/4379.js +0 -1
  159. package/.next/server/chunks/4989.js +0 -1
  160. package/.next/server/chunks/598.js +0 -1
  161. package/.next/server/chunks/6064.js +0 -1
  162. package/.next/static/chunks/1374-e084b3c40554288a.js +0 -1
  163. package/.next/static/chunks/1424-01898260211a09d0.js +0 -1
  164. package/.next/static/chunks/1811-8ee01cf37161913c.js +0 -1
  165. package/.next/static/chunks/2160-4d9f132965bc2a89.js +0 -1
  166. package/.next/static/chunks/2624-b985ab3eac1139c3.js +0 -1
  167. package/.next/static/chunks/3403-7c5037145e384171.js +0 -1
  168. package/.next/static/chunks/4205-b9e33afc7e96ecb9.js +0 -1
  169. package/.next/static/chunks/5648-2c6caf3d55f95e11.js +0 -1
  170. package/.next/static/chunks/7396-807a034f58b57712.js +0 -1
  171. package/.next/static/chunks/7458-4445e76668151564.js +0 -1
  172. package/.next/static/chunks/8215-a966f4c36f1ca174.js +0 -1
  173. package/.next/static/chunks/9164-d15e4dab0a1bf282.js +0 -1
  174. package/.next/static/chunks/app/docs/page-2a4cff7c40706a48.js +0 -1
  175. package/.next/static/chunks/app/mcp/page-0f923960004aa437.js +0 -1
  176. package/.next/static/chunks/app/models/page-d81d2b1fe2f1d063.js +0 -1
  177. package/.next/static/chunks/app/settings/page-d03a168f6efbf7fd.js +0 -1
  178. /package/.next/static/{9Pzu8N65j3JuRQ7zVUtwD → 07vmuF5x2Bs8Xj1OeV0QV}/_buildManifest.js +0 -0
  179. /package/.next/static/{9Pzu8N65j3JuRQ7zVUtwD → 07vmuF5x2Bs8Xj1OeV0QV}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -37,7 +37,7 @@ For *anything* that you struggle with (MCP Installation, Application Issues, Usa
37
37
  # FLUJO
38
38
 
39
39
  [![MIT License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
40
- [![Version](https://img.shields.io/badge/version-3.11.0-green.svg)](package.json)
40
+ [![Version](https://img.shields.io/badge/version-3.12.0-green.svg)](package.json)
41
41
 
42
42
  FLUJO is an open-source, local-first platform for building **MCP-powered AI workflows**. It brings together model management, Model-Context-Protocol (MCP) servers, a visual flow builder, and a chat interface in one app — so you can wire models and tools together, run them headlessly on triggers, and expose the result to other apps, without giving up control of your keys and data.
43
43
 
@@ -208,17 +208,24 @@ A searchable `/docs` page inside the app documents every REST endpoint FLUJO exp
208
208
  On any machine with Docker, start FLUJO with one command:
209
209
 
210
210
  ```bash
211
- docker compose up
211
+ docker compose up --build
212
212
  ```
213
213
 
214
214
  Then open http://localhost:4200.
215
215
 
216
+ > Use `--build` (not a bare `docker compose up`). The default compose file
217
+ > **builds the image locally** from this repo. A plain `docker compose up`
218
+ > only builds when no image exists yet — after you update the code it silently
219
+ > reuses the previously built image and runs the *old* version. `--build`
220
+ > rebuilds when the source changed and is a fast no-op when it hasn't.
221
+
216
222
  - **Your data persists** in the named volumes `flujo-db` (flows, encrypted keys,
217
223
  MCP configs, chat history) and `flujo-mcp-servers` (installed MCP server clones),
218
224
  so it survives `docker compose down` / `up`.
219
- - **Updating**: pull a newer image instead of the in-app updater —
220
- `docker compose pull && docker compose up -d`. FLUJO detects it is running in a
221
- container and shows this in the update settings.
225
+ - **Updating**: use `git pull && docker compose up --build` instead of the
226
+ in-app updater. FLUJO detects it is running in a container and shows this in
227
+ the update settings. (`docker compose pull` only helps if you switched the
228
+ service to a published `image:` — the default builds locally.)
222
229
  - **Private/corporate CA** for HTTPS MCP servers: mount your CA file and set
223
230
  `FLUJO_EXTRA_CA_CERTS` to its path (see the commented `environment:` block in
224
231
  `docker-compose.yml`).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flujo-ai",
3
- "version": "3.11.0",
3
+ "version": "3.12.0",
4
4
  "bin": {
5
5
  "flujo": "bin/flujo.mjs"
6
6
  },
@@ -21,6 +21,9 @@
21
21
  import { spawn } from 'node:child_process';
22
22
  import process from 'node:process';
23
23
  import { pathToFileURL } from 'node:url';
24
+ import { createRequire } from 'node:module';
25
+
26
+ const require = createRequire(import.meta.url);
24
27
 
25
28
  /**
26
29
  * Return a copy of `baseEnv` with FLUJO's TLS/CA settings applied:
@@ -68,11 +71,22 @@ function launchNext(passthroughArgs) {
68
71
  ].filter(Boolean).join(', ');
69
72
  console.log(`[FLUJO] Starting next ${passthroughArgs.join(' ')}${tlsSummary ? ` (${tlsSummary})` : ''}`);
70
73
 
71
- // On Windows the resolved binary is next.cmd, which requires a shell to execute.
72
- const child = spawn('next', passthroughArgs, {
74
+ // Resolve Next's own CLI from node_modules and run it with the current Node binary.
75
+ // Never rely on a `next` on PATH: npm injects node_modules/.bin into PATH for `npm run`
76
+ // scripts, but this launcher is also invoked directly (e.g. the Docker CMD), where that
77
+ // PATH entry is absent and `spawn('next')` fails with ENOENT. Resolving the JS entry and
78
+ // spawning `node <entry>` works identically on every platform and needs no shell.
79
+ let nextBin;
80
+ try {
81
+ nextBin = require.resolve('next/dist/bin/next');
82
+ } catch (error) {
83
+ console.error('[FLUJO] Could not locate the Next.js binary in node_modules. Run `npm install` first.', error);
84
+ process.exit(1);
85
+ }
86
+
87
+ const child = spawn(process.execPath, [nextBin, ...passthroughArgs], {
73
88
  stdio: 'inherit',
74
89
  env,
75
- shell: process.platform === 'win32',
76
90
  });
77
91
 
78
92
  child.on('error', error => {
@@ -1 +0,0 @@
1
- "use strict";exports.id=1381,exports.ids=[1381],exports.modules={19925:(a,b,c)=>{c.d(b,{A:()=>n});var d=c(38301),e=c(43249),f=c(2783),g=c(18168),h=c(6636),i=c(29565),j=c(33105);function k(a){return(0,j.Ay)("MuiDialogActions",a)}(0,i.A)("MuiDialogActions",["root","spacing"]);var l=c(21124);let m=(0,g.Ay)("div",{name:"MuiDialogActions",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,!c.disableSpacing&&b.spacing]}})({display:"flex",alignItems:"center",padding:8,justifyContent:"flex-end",flex:"0 0 auto",variants:[{props:({ownerState:a})=>!a.disableSpacing,style:{"& > :not(style) ~ :not(style)":{marginLeft:8}}}]}),n=d.forwardRef(function(a,b){let c=(0,h.b)({props:a,name:"MuiDialogActions"}),{className:d,disableSpacing:g=!1,...i}=c,j={...c,disableSpacing:g},n=(a=>{let{classes:b,disableSpacing:c}=a;return(0,f.A)({root:["root",!c&&"spacing"]},k,b)})(j);return(0,l.jsx)(m,{className:(0,e.A)(n.root,d),ownerState:j,ref:b,...i})})},40512:(a,b,c)=>{c.d(b,{A:()=>B});var d=c(38301),e=c(43249),f=c(2783),g=c(92869),h=c(6638),i=c(6537),j=c(49565),k=c(54573),l=c(29565),m=c(33105);function n(a){return(0,m.Ay)("MuiDialog",a)}let o=(0,l.A)("MuiDialog",["root","scrollPaper","scrollBody","container","paper","paperScrollPaper","paperScrollBody","paperWidthFalse","paperWidthXs","paperWidthSm","paperWidthMd","paperWidthLg","paperWidthXl","paperFullWidth","paperFullScreen"]);var p=c(94842),q=c(65012),r=c(18168),s=c(60839),t=c(68333),u=c(6636),v=c(20385),w=c(21124);let x=(0,r.Ay)(q.A,{name:"MuiDialog",slot:"Backdrop",overrides:(a,b)=>b.backdrop})({zIndex:-1}),y=(0,r.Ay)(i.A,{name:"MuiDialog",slot:"Root",overridesResolver:(a,b)=>b.root})({"@media print":{position:"absolute !important"}}),z=(0,r.Ay)("div",{name:"MuiDialog",slot:"Container",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.container,b[`scroll${(0,h.A)(c.scroll)}`]]}})({height:"100%","@media print":{height:"auto"},outline:0,variants:[{props:{scroll:"paper"},style:{display:"flex",justifyContent:"center",alignItems:"center"}},{props:{scroll:"body"},style:{overflowY:"auto",overflowX:"hidden",textAlign:"center","&::after":{content:'""',display:"inline-block",verticalAlign:"middle",height:"100%",width:"0"}}}]}),A=(0,r.Ay)(k.A,{name:"MuiDialog",slot:"Paper",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.paper,b[`scrollPaper${(0,h.A)(c.scroll)}`],b[`paperWidth${(0,h.A)(String(c.maxWidth))}`],c.fullWidth&&b.paperFullWidth,c.fullScreen&&b.paperFullScreen]}})((0,t.A)(({theme:a})=>({margin:32,position:"relative",overflowY:"auto","@media print":{overflowY:"visible",boxShadow:"none"},variants:[{props:{scroll:"paper"},style:{display:"flex",flexDirection:"column",maxHeight:"calc(100% - 64px)"}},{props:{scroll:"body"},style:{display:"inline-block",verticalAlign:"middle",textAlign:"initial"}},{props:({ownerState:a})=>!a.maxWidth,style:{maxWidth:"calc(100% - 64px)"}},{props:{maxWidth:"xs"},style:{maxWidth:"px"===a.breakpoints.unit?Math.max(a.breakpoints.values.xs,444):`max(${a.breakpoints.values.xs}${a.breakpoints.unit}, 444px)`,[`&.${o.paperScrollBody}`]:{[a.breakpoints.down(Math.max(a.breakpoints.values.xs,444)+64)]:{maxWidth:"calc(100% - 64px)"}}}},...Object.keys(a.breakpoints.values).filter(a=>"xs"!==a).map(b=>({props:{maxWidth:b},style:{maxWidth:`${a.breakpoints.values[b]}${a.breakpoints.unit}`,[`&.${o.paperScrollBody}`]:{[a.breakpoints.down(a.breakpoints.values[b]+64)]:{maxWidth:"calc(100% - 64px)"}}}})),{props:({ownerState:a})=>a.fullWidth,style:{width:"calc(100% - 64px)"}},{props:({ownerState:a})=>a.fullScreen,style:{margin:0,width:"100%",maxWidth:"100%",height:"100%",maxHeight:"none",borderRadius:0,[`&.${o.paperScrollBody}`]:{margin:0,maxWidth:"100%"}}}]}))),B=d.forwardRef(function(a,b){let c=(0,u.b)({props:a,name:"MuiDialog"}),i=(0,s.A)(),l={enter:i.transitions.duration.enteringScreen,exit:i.transitions.duration.leavingScreen},{"aria-describedby":m,"aria-labelledby":o,"aria-modal":q=!0,BackdropComponent:r,BackdropProps:t,children:B,className:C,disableEscapeKeyDown:D=!1,fullScreen:E=!1,fullWidth:F=!1,maxWidth:G="sm",onBackdropClick:H,onClick:I,onClose:J,open:K,PaperComponent:L=k.A,PaperProps:M={},scroll:N="paper",slots:O={},slotProps:P={},TransitionComponent:Q=j.A,transitionDuration:R=l,TransitionProps:S,...T}=c,U={...c,disableEscapeKeyDown:D,fullScreen:E,fullWidth:F,maxWidth:G,scroll:N},V=(a=>{let{classes:b,scroll:c,maxWidth:d,fullWidth:e,fullScreen:g}=a,i={root:["root"],container:["container",`scroll${(0,h.A)(c)}`],paper:["paper",`paperScroll${(0,h.A)(c)}`,`paperWidth${(0,h.A)(String(d))}`,e&&"paperFullWidth",g&&"paperFullScreen"]};return(0,f.A)(i,n,b)})(U),W=d.useRef(),X=(0,g.A)(o),Y=d.useMemo(()=>({titleId:X}),[X]),Z={slots:{transition:Q,...O},slotProps:{transition:S,paper:M,backdrop:t,...P}},[$,_]=(0,v.A)("root",{elementType:y,shouldForwardComponentProp:!0,externalForwardedProps:Z,ownerState:U,className:(0,e.A)(V.root,C),ref:b}),[aa,ab]=(0,v.A)("backdrop",{elementType:x,shouldForwardComponentProp:!0,externalForwardedProps:Z,ownerState:U}),[ac,ad]=(0,v.A)("paper",{elementType:A,shouldForwardComponentProp:!0,externalForwardedProps:Z,ownerState:U,className:(0,e.A)(V.paper,M.className)}),[ae,af]=(0,v.A)("container",{elementType:z,externalForwardedProps:Z,ownerState:U,className:(0,e.A)(V.container)}),[ag,ah]=(0,v.A)("transition",{elementType:j.A,externalForwardedProps:Z,ownerState:U,additionalProps:{appear:!0,in:K,timeout:R,role:"presentation"}});return(0,w.jsx)($,{closeAfterTransition:!0,slots:{backdrop:aa},slotProps:{backdrop:{transitionDuration:R,as:r,...ab}},disableEscapeKeyDown:D,onClose:J,open:K,onClick:a=>{I&&I(a),W.current&&(W.current=null,H&&H(a),J&&J(a,"backdropClick"))},..._,...T,children:(0,w.jsx)(ag,{...ah,children:(0,w.jsx)(ae,{onMouseDown:a=>{W.current=a.target===a.currentTarget},...af,children:(0,w.jsx)(ac,{as:L,elevation:24,role:"dialog","aria-describedby":m,"aria-labelledby":X,"aria-modal":q,...ad,children:(0,w.jsx)(p.A.Provider,{value:Y,children:B})})})})})})},47902:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.jsx)("path",{d:"M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6z"}),"Add")},51791:(a,b,c)=>{c.d(b,{A:()=>g,t:()=>f});var d=c(29565),e=c(33105);function f(a){return(0,e.Ay)("MuiDialogTitle",a)}let g=(0,d.A)("MuiDialogTitle",["root"])},52327:(a,b,c)=>{c.d(b,{A:()=>p});var d=c(38301),e=c(43249),f=c(2783),g=c(18168),h=c(68333),i=c(6636),j=c(29565),k=c(33105);function l(a){return(0,k.Ay)("MuiDialogContent",a)}(0,j.A)("MuiDialogContent",["root","dividers"]);var m=c(51791),n=c(21124);let o=(0,g.Ay)("div",{name:"MuiDialogContent",slot:"Root",overridesResolver:(a,b)=>{let{ownerState:c}=a;return[b.root,c.dividers&&b.dividers]}})((0,h.A)(({theme:a})=>({flex:"1 1 auto",WebkitOverflowScrolling:"touch",overflowY:"auto",padding:"20px 24px",variants:[{props:({ownerState:a})=>a.dividers,style:{padding:"16px 24px",borderTop:`1px solid ${(a.vars||a).palette.divider}`,borderBottom:`1px solid ${(a.vars||a).palette.divider}`}},{props:({ownerState:a})=>!a.dividers,style:{[`.${m.A.root} + &`]:{paddingTop:0}}}]}))),p=d.forwardRef(function(a,b){let c=(0,i.b)({props:a,name:"MuiDialogContent"}),{className:d,dividers:g=!1,...h}=c,j={...c,dividers:g},k=(a=>{let{classes:b,dividers:c}=a;return(0,f.A)({root:["root",c&&"dividers"]},l,b)})(j);return(0,n.jsx)(o,{className:(0,e.A)(k.root,d),ownerState:j,ref:b,...h})})},83899:(a,b,c)=>{c.d(b,{A:()=>n});var d=c(38301),e=c(43249),f=c(2783),g=c(79515),h=c(18168),i=c(6636),j=c(51791),k=c(94842),l=c(21124);let m=(0,h.Ay)(g.default,{name:"MuiDialogTitle",slot:"Root",overridesResolver:(a,b)=>b.root})({padding:"16px 24px",flex:"0 0 auto"}),n=d.forwardRef(function(a,b){let c=(0,i.b)({props:a,name:"MuiDialogTitle"}),{className:g,id:h,...n}=c,o=(a=>{let{classes:b}=a;return(0,f.A)({root:["root"]},j.t,b)})(c),{titleId:p=h}=d.useContext(k.A);return(0,l.jsx)(m,{component:"h2",className:(0,e.A)(o.root,g),ownerState:c,ref:b,variant:"h6",id:h??p,...n})})},91034:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(27080),e=c(21124);let f=(0,d.A)((0,e.jsx)("path",{d:"M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6zM19 4h-3.5l-1-1h-5l-1 1H5v2h14z"}),"Delete")},94842:(a,b,c)=>{c.d(b,{A:()=>d});let d=c(38301).createContext({})}};