@qelos/aidev 1.2.0 → 1.3.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 (215) hide show
  1. package/.env.aidev.example +12 -1
  2. package/README.md +23 -6
  3. package/dist/ai/devin.d.ts +7 -0
  4. package/dist/ai/devin.d.ts.map +1 -0
  5. package/dist/ai/devin.js +91 -0
  6. package/dist/ai/devin.js.map +1 -0
  7. package/dist/ai/index.js +2 -2
  8. package/dist/ai/index.js.map +1 -1
  9. package/dist/cli.js +31 -0
  10. package/dist/cli.js.map +1 -1
  11. package/dist/commands/help.js +1 -1
  12. package/dist/commands/help.js.map +1 -1
  13. package/dist/commands/hooks.d.ts +5 -0
  14. package/dist/commands/hooks.d.ts.map +1 -0
  15. package/dist/commands/hooks.js +86 -0
  16. package/dist/commands/hooks.js.map +1 -0
  17. package/dist/commands/init.d.ts +1 -0
  18. package/dist/commands/init.d.ts.map +1 -1
  19. package/dist/commands/init.js +18 -109
  20. package/dist/commands/init.js.map +1 -1
  21. package/dist/commands/run.d.ts +1 -1
  22. package/dist/commands/run.d.ts.map +1 -1
  23. package/dist/commands/run.js +78 -63
  24. package/dist/commands/run.js.map +1 -1
  25. package/dist/commands/schedule.js +2 -2
  26. package/dist/commands/schedule.js.map +1 -1
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js +8 -1
  29. package/dist/config.js.map +1 -1
  30. package/dist/diagnostics.d.ts.map +1 -1
  31. package/dist/diagnostics.js +1 -2
  32. package/dist/diagnostics.js.map +1 -1
  33. package/dist/hooks.d.ts +18 -0
  34. package/dist/hooks.d.ts.map +1 -1
  35. package/dist/hooks.js +16 -0
  36. package/dist/hooks.js.map +1 -1
  37. package/dist/hooksTemplate.d.ts +14 -0
  38. package/dist/hooksTemplate.d.ts.map +1 -0
  39. package/dist/hooksTemplate.js +274 -0
  40. package/dist/hooksTemplate.js.map +1 -0
  41. package/dist/logger.d.ts +1 -0
  42. package/dist/logger.d.ts.map +1 -1
  43. package/dist/logger.js +32 -0
  44. package/dist/logger.js.map +1 -1
  45. package/dist/platform.d.ts +2 -2
  46. package/dist/platform.js +2 -2
  47. package/dist/safeMode.d.ts +32 -0
  48. package/dist/safeMode.d.ts.map +1 -0
  49. package/dist/safeMode.js +192 -0
  50. package/dist/safeMode.js.map +1 -0
  51. package/dist/types.d.ts +3 -1
  52. package/dist/types.d.ts.map +1 -1
  53. package/package.json +2 -2
  54. package/ui/.output/nitro.json +1 -1
  55. package/ui/.output/public/_nuxt/6wLLp9Nc.js +1 -0
  56. package/ui/.output/public/_nuxt/BGkU0f28.js +1 -0
  57. package/ui/.output/public/_nuxt/BOIhDy_l.js +4 -0
  58. package/ui/.output/public/_nuxt/BWJzzHTi.js +1 -0
  59. package/ui/.output/public/_nuxt/{3LZdFtk_.js → By4xSvKt.js} +3 -3
  60. package/ui/.output/public/_nuxt/ByAMJ0xS.js +1 -0
  61. package/ui/.output/public/_nuxt/C1xk3ymy.js +1 -0
  62. package/ui/.output/public/_nuxt/CBV5GuL6.js +11 -0
  63. package/ui/.output/public/_nuxt/CTtW-0zG.js +1 -0
  64. package/ui/.output/public/_nuxt/CX0vIr0s.js +131 -0
  65. package/ui/.output/public/_nuxt/{LzHPbXPK.js → CYm8nRCj.js} +1 -1
  66. package/ui/.output/public/_nuxt/CdHqKVo4.js +1 -0
  67. package/ui/.output/public/_nuxt/CnXdKLRd.js +16 -0
  68. package/ui/.output/public/_nuxt/Cz9dogwK.js +1 -0
  69. package/ui/.output/public/_nuxt/DGHfexQZ.js +1 -0
  70. package/ui/.output/public/_nuxt/{CWjftssB.js → DOoocm0F.js} +1 -1
  71. package/ui/.output/public/_nuxt/{DZd8Jv5H.js → D_gcbXK2.js} +1 -1
  72. package/ui/.output/public/_nuxt/{CO4XMBYO.js → Dfhp6TEA.js} +11 -11
  73. package/ui/.output/public/_nuxt/{BtD1YBwM.js → G5BjvTWO.js} +1 -1
  74. package/ui/.output/public/_nuxt/H73b_QUy.js +1 -0
  75. package/ui/.output/public/_nuxt/{BMTHyzVP.js → LCoCV2KL.js} +1 -1
  76. package/ui/.output/public/_nuxt/Zrl3Utak.js +1 -0
  77. package/ui/.output/public/_nuxt/config.CaB_F_OT.css +1 -0
  78. package/ui/.output/public/_nuxt/default.D13_FS9T.css +1 -0
  79. package/ui/.output/public/_nuxt/hooks.B03-GWTh.css +1 -0
  80. package/ui/.output/public/_nuxt/kPPYUzXr.js +2 -0
  81. package/ui/.output/public/_nuxt/logs.DLMkvOEl.css +1 -0
  82. package/ui/.output/public/_nuxt/mHp9eItY.js +1 -0
  83. package/ui/.output/public/_nuxt/{BTfAgCfF.js → tyaD1vVi.js} +1 -1
  84. package/ui/.output/public/_nuxt/{BGlShnpS.js → ynXKxjpn.js} +1 -1
  85. package/ui/.output/public/_nuxt/{B8sr5ZW-.js → yqBy-NAR.js} +2 -2
  86. package/ui/.output/server/chunks/_/hooksTemplate.mjs +365 -0
  87. package/ui/.output/server/chunks/_/hooksTemplate.mjs.map +1 -0
  88. package/ui/.output/server/chunks/build/{Badge-YPOjmkfv.mjs → Badge-nNgbDd8N.mjs} +2 -2
  89. package/ui/.output/server/chunks/build/{Badge-YPOjmkfv.mjs.map → Badge-nNgbDd8N.mjs.map} +1 -1
  90. package/ui/.output/server/chunks/build/{Button-CZHl6fpI.mjs → Button-CQZG7w2L.mjs} +117 -3
  91. package/ui/.output/server/chunks/build/Button-CQZG7w2L.mjs.map +1 -0
  92. package/ui/.output/server/chunks/build/{Card--ibiHV_r.mjs → Card-DdEnDTQW.mjs} +2 -2
  93. package/ui/.output/server/chunks/build/{Card--ibiHV_r.mjs.map → Card-DdEnDTQW.mjs.map} +1 -1
  94. package/ui/.output/server/chunks/build/{FormGroup-CX5VmH8y.mjs → FormGroup-BfYiVGgN.mjs} +2 -2
  95. package/ui/.output/server/chunks/build/{FormGroup-CX5VmH8y.mjs.map → FormGroup-BfYiVGgN.mjs.map} +1 -1
  96. package/ui/.output/server/chunks/build/{Input-kmqS1oY_.mjs → Input-Cnk3P_aB.mjs} +5 -60
  97. package/ui/.output/server/chunks/build/Input-Cnk3P_aB.mjs.map +1 -0
  98. package/ui/.output/server/chunks/build/{Modal-DmZs0Ekg.mjs → Modal-DfVO6DJD.mjs} +10 -5
  99. package/ui/.output/server/chunks/build/Modal-DfVO6DJD.mjs.map +1 -0
  100. package/ui/.output/server/chunks/build/{Select-n4_YfXfk.mjs → Select-Dc9_TJIR.mjs} +3 -3
  101. package/ui/.output/server/chunks/build/{Select-n4_YfXfk.mjs.map → Select-Dc9_TJIR.mjs.map} +1 -1
  102. package/ui/.output/server/chunks/build/client.precomputed.mjs +1 -1
  103. package/ui/.output/server/chunks/build/client.precomputed.mjs.map +1 -1
  104. package/ui/.output/server/chunks/build/{config-Bkb2wy7R.mjs → config-BUokZPak.mjs} +78 -58
  105. package/ui/.output/server/chunks/build/config-BUokZPak.mjs.map +1 -0
  106. package/ui/.output/server/chunks/build/config-styles.irltMnuD.mjs +8 -0
  107. package/ui/.output/server/chunks/build/config-styles.irltMnuD.mjs.map +1 -0
  108. package/ui/.output/server/chunks/build/{default-DmD3qBXZ.mjs → default-6TcwTt3p.mjs} +10 -9
  109. package/ui/.output/server/chunks/build/default-6TcwTt3p.mjs.map +1 -0
  110. package/ui/.output/server/chunks/build/default-styles.BqL9zxh4.mjs +8 -0
  111. package/ui/.output/server/chunks/build/default-styles.BqL9zxh4.mjs.map +1 -0
  112. package/ui/.output/server/chunks/build/entry-styles.q-b4rEBh.mjs +11 -0
  113. package/ui/.output/server/chunks/build/entry-styles.q-b4rEBh.mjs.map +1 -0
  114. package/ui/.output/server/chunks/build/hooks-k2ZmlVpA.mjs +4181 -0
  115. package/ui/.output/server/chunks/build/hooks-k2ZmlVpA.mjs.map +1 -0
  116. package/ui/.output/server/chunks/build/hooks-styles.Ddk4F_Gj.mjs +8 -0
  117. package/ui/.output/server/chunks/build/hooks-styles.Ddk4F_Gj.mjs.map +1 -0
  118. package/ui/.output/server/chunks/build/{index-Dy4Tu7MB.mjs → index-DwMIJp2e.mjs} +7 -3
  119. package/ui/.output/server/chunks/build/index-DwMIJp2e.mjs.map +1 -0
  120. package/ui/.output/server/chunks/build/{index-BvfXQQ2n.mjs → index-JLPhao-C.mjs} +5 -5
  121. package/ui/.output/server/chunks/build/{index-BvfXQQ2n.mjs.map → index-JLPhao-C.mjs.map} +1 -1
  122. package/ui/.output/server/chunks/build/{interval-DHZqEf-n.mjs → interval-DPa3fpS0.mjs} +3 -3
  123. package/ui/.output/server/chunks/build/{interval-DHZqEf-n.mjs.map → interval-DPa3fpS0.mjs.map} +1 -1
  124. package/ui/.output/server/chunks/build/{login-B5YkLJCV.mjs → login-D9DpNq3o.mjs} +6 -5
  125. package/ui/.output/server/chunks/build/login-D9DpNq3o.mjs.map +1 -0
  126. package/ui/.output/server/chunks/build/{logs-BvD1Y3HI.mjs → logs-BVuWOSb6.mjs} +49 -31
  127. package/ui/.output/server/chunks/build/logs-BVuWOSb6.mjs.map +1 -0
  128. package/ui/.output/server/chunks/build/logs-styles.C2Mi0JvX.mjs +8 -0
  129. package/ui/.output/server/chunks/build/logs-styles.C2Mi0JvX.mjs.map +1 -0
  130. package/ui/.output/server/chunks/build/{run-BStPkbGg.mjs → run-BVQZSGcX.mjs} +5 -5
  131. package/ui/.output/server/chunks/build/{run-BStPkbGg.mjs.map → run-BVQZSGcX.mjs.map} +1 -1
  132. package/ui/.output/server/chunks/build/{schedule-B2UKsnRW.mjs → schedule-rRz2CwWh.mjs} +10 -9
  133. package/ui/.output/server/chunks/build/schedule-rRz2CwWh.mjs.map +1 -0
  134. package/ui/.output/server/chunks/build/server.mjs +14 -9
  135. package/ui/.output/server/chunks/build/server.mjs.map +1 -1
  136. package/ui/.output/server/chunks/build/styles.mjs +7 -6
  137. package/ui/.output/server/chunks/build/styles.mjs.map +1 -1
  138. package/ui/.output/server/chunks/build/{tasks-DBH3Z6lg.mjs → tasks-DJjZQWcq.mjs} +10 -9
  139. package/ui/.output/server/chunks/build/tasks-DJjZQWcq.mjs.map +1 -0
  140. package/ui/.output/server/chunks/build/{useApi-Bqajqsuz.mjs → useApi-Brbyp7hV.mjs} +3 -3
  141. package/ui/.output/server/chunks/build/useApi-Brbyp7hV.mjs.map +1 -0
  142. package/ui/.output/server/chunks/build/useFormGroup-DqE91r20.mjs +61 -0
  143. package/ui/.output/server/chunks/build/useFormGroup-DqE91r20.mjs.map +1 -0
  144. package/ui/.output/server/chunks/nitro/nitro.mjs +195 -157
  145. package/ui/.output/server/chunks/routes/api/config/test.post.mjs +1 -1
  146. package/ui/.output/server/chunks/routes/api/config/test.post.mjs.map +1 -1
  147. package/ui/.output/server/chunks/routes/api/hooks-execute.post.mjs +83 -0
  148. package/ui/.output/server/chunks/routes/api/hooks-execute.post.mjs.map +1 -0
  149. package/ui/.output/server/chunks/routes/api/hooks-regenerate.post.mjs +30 -0
  150. package/ui/.output/server/chunks/routes/api/hooks-regenerate.post.mjs.map +1 -0
  151. package/ui/.output/server/chunks/routes/api/hooks-update.post.mjs +31 -0
  152. package/ui/.output/server/chunks/routes/api/hooks-update.post.mjs.map +1 -0
  153. package/ui/.output/server/chunks/routes/api/hooks.get.mjs +28 -0
  154. package/ui/.output/server/chunks/routes/api/hooks.get.mjs.map +1 -0
  155. package/ui/.output/server/chunks/routes/api/hooks.put.mjs +32 -0
  156. package/ui/.output/server/chunks/routes/api/hooks.put.mjs.map +1 -0
  157. package/ui/.output/server/chunks/routes/api/logs.get.mjs +7 -2
  158. package/ui/.output/server/chunks/routes/api/logs.get.mjs.map +1 -1
  159. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/_virtual/_rollupPluginBabelHelpers.js +123 -0
  160. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/config/index.js +11 -0
  161. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/index.js +9 -0
  162. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/loader/index.js +175 -0
  163. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/compose.js +16 -0
  164. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/curry.js +20 -0
  165. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/deepMerge.js +18 -0
  166. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/isObject.js +9 -0
  167. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/utils/makeCancelable.js +25 -0
  168. package/ui/.output/server/node_modules/@monaco-editor/loader/lib/cjs/validators/index.js +49 -0
  169. package/ui/.output/server/node_modules/@monaco-editor/loader/package.json +51 -0
  170. package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/index.js +1197 -0
  171. package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/lazy-measurements.js +34 -0
  172. package/ui/.output/server/node_modules/@tanstack/virtual-core/dist/esm/utils.js +74 -0
  173. package/ui/.output/server/node_modules/@tanstack/virtual-core/package.json +56 -0
  174. package/ui/.output/server/node_modules/@tanstack/vue-virtual/dist/esm/index.js +66 -0
  175. package/ui/.output/server/node_modules/@tanstack/vue-virtual/package.json +68 -0
  176. package/ui/.output/server/node_modules/state-local/lib/cjs/state-local.js +195 -0
  177. package/ui/.output/server/node_modules/state-local/package.json +59 -0
  178. package/ui/.output/server/package.json +4 -0
  179. package/ui/package.json +1 -0
  180. package/ui/.output/public/_nuxt/B93YYUZf.js +0 -1
  181. package/ui/.output/public/_nuxt/BAs1isOw.js +0 -1
  182. package/ui/.output/public/_nuxt/BrZL2iQr.js +0 -1
  183. package/ui/.output/public/_nuxt/Bv6Ws9vz.js +0 -1
  184. package/ui/.output/public/_nuxt/C2WdrjFS.js +0 -1
  185. package/ui/.output/public/_nuxt/CVTgFccA.js +0 -2
  186. package/ui/.output/public/_nuxt/Ceb2855t.js +0 -1
  187. package/ui/.output/public/_nuxt/Cg55PjEy.js +0 -4
  188. package/ui/.output/public/_nuxt/D0ZgktSu.js +0 -1
  189. package/ui/.output/public/_nuxt/DZIUG6ZX.js +0 -1
  190. package/ui/.output/public/_nuxt/DihqGT4A.js +0 -1
  191. package/ui/.output/public/_nuxt/MzK2TZ-I.js +0 -16
  192. package/ui/.output/public/_nuxt/TJXLPQOj.js +0 -1
  193. package/ui/.output/public/_nuxt/VuiIFQtE.js +0 -1
  194. package/ui/.output/public/_nuxt/config.C19X1GwO.css +0 -1
  195. package/ui/.output/public/_nuxt/default.Dw-0Xw5D.css +0 -1
  196. package/ui/.output/public/_nuxt/logs.PK6CTQHM.css +0 -1
  197. package/ui/.output/server/chunks/build/Button-CZHl6fpI.mjs.map +0 -1
  198. package/ui/.output/server/chunks/build/Input-kmqS1oY_.mjs.map +0 -1
  199. package/ui/.output/server/chunks/build/Modal-DmZs0Ekg.mjs.map +0 -1
  200. package/ui/.output/server/chunks/build/config-Bkb2wy7R.mjs.map +0 -1
  201. package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs +0 -8
  202. package/ui/.output/server/chunks/build/config-styles.B4mTchgT.mjs.map +0 -1
  203. package/ui/.output/server/chunks/build/default-DmD3qBXZ.mjs.map +0 -1
  204. package/ui/.output/server/chunks/build/default-styles.DmprFUrQ.mjs +0 -8
  205. package/ui/.output/server/chunks/build/default-styles.DmprFUrQ.mjs.map +0 -1
  206. package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs +0 -11
  207. package/ui/.output/server/chunks/build/entry-styles.Cg1Sndbr.mjs.map +0 -1
  208. package/ui/.output/server/chunks/build/index-Dy4Tu7MB.mjs.map +0 -1
  209. package/ui/.output/server/chunks/build/login-B5YkLJCV.mjs.map +0 -1
  210. package/ui/.output/server/chunks/build/logs-BvD1Y3HI.mjs.map +0 -1
  211. package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs +0 -8
  212. package/ui/.output/server/chunks/build/logs-styles.CU5b1wKf.mjs.map +0 -1
  213. package/ui/.output/server/chunks/build/schedule-B2UKsnRW.mjs.map +0 -1
  214. package/ui/.output/server/chunks/build/tasks-DBH3Z6lg.mjs.map +0 -1
  215. package/ui/.output/server/chunks/build/useApi-Bqajqsuz.mjs.map +0 -1
@@ -42,7 +42,7 @@ export declare function resolveWindowsCmd(resolvedPath: string | null, args: str
42
42
  /**
43
43
  * Cross-platform `spawnSync` wrapper.
44
44
  * On Windows, .cmd/.bat shims (common for npm-installed CLIs like cursor,
45
- * claude, windsurf) cannot be spawned directly — Node.js only resolves .exe
45
+ * claude, devin) cannot be spawned directly — Node.js only resolves .exe
46
46
  * and .com via CreateProcessW. This helper detects .cmd/.bat and routes
47
47
  * them through cmd.exe /c so they execute correctly without shell: true
48
48
  * (which triggers DEP0190 and mishandles arguments containing spaces or
@@ -58,7 +58,7 @@ export declare function spawnCommand(command: string, args: string[], options: S
58
58
  export declare function getUserShellEnv(): NodeJS.ProcessEnv;
59
59
  /**
60
60
  * Returns false when the machine's display is asleep or the screen is locked,
61
- * meaning GUI-dependent AI agents (Cursor, Windsurf, Claude) cannot operate.
61
+ * meaning GUI-dependent AI agents (Cursor, Devin, Claude) cannot operate.
62
62
  * Falls back to true (assume available) when detection is inconclusive.
63
63
  */
64
64
  export declare function isScreenAvailable(): boolean;
package/dist/platform.js CHANGED
@@ -190,7 +190,7 @@ function findNodeForCmd(cmdDir) {
190
190
  /**
191
191
  * Cross-platform `spawnSync` wrapper.
192
192
  * On Windows, .cmd/.bat shims (common for npm-installed CLIs like cursor,
193
- * claude, windsurf) cannot be spawned directly — Node.js only resolves .exe
193
+ * claude, devin) cannot be spawned directly — Node.js only resolves .exe
194
194
  * and .com via CreateProcessW. This helper detects .cmd/.bat and routes
195
195
  * them through cmd.exe /c so they execute correctly without shell: true
196
196
  * (which triggers DEP0190 and mishandles arguments containing spaces or
@@ -246,7 +246,7 @@ function getUserShellEnv() {
246
246
  }
247
247
  /**
248
248
  * Returns false when the machine's display is asleep or the screen is locked,
249
- * meaning GUI-dependent AI agents (Cursor, Windsurf, Claude) cannot operate.
249
+ * meaning GUI-dependent AI agents (Cursor, Devin, Claude) cannot operate.
250
250
  * Falls back to true (assume available) when detection is inconclusive.
251
251
  */
252
252
  function isScreenAvailable() {
@@ -0,0 +1,32 @@
1
+ export declare function isSecretKey(key: string): boolean;
2
+ export declare function isSecretValue(key: string, value: string): boolean;
3
+ /** Relative path (from project cwd) to the git-ignored secrets file for a task. */
4
+ export declare function secretsFileRelPath(taskId: string): string;
5
+ /** Absolute path to the git-ignored secrets file for a task. */
6
+ export declare function secretsFilePath(taskId: string, cwd?: string): string;
7
+ /**
8
+ * Collect secret key→value pairs from `.env.aidev` (and its extend), `.env`, plus
9
+ * process.env (covers shell-provided values after loadConfig).
10
+ */
11
+ export declare function collectSecrets(cwd?: string): Map<string, string>;
12
+ /** Return the subset of secrets whose values actually appear in `text`. */
13
+ export declare function findSecretsInText(text: string, secrets: Map<string, string>): Map<string, string>;
14
+ /** Replace secret values in text with placeholder references to the secrets file. */
15
+ export declare function redactText(text: string, foundSecrets: Map<string, string>, taskId: string): string;
16
+ /** Write secrets to `.aidev/assets/secrets/task-<taskId>.secrets` (under git-ignored assets). */
17
+ export declare function writeSecretsFile(foundSecrets: Map<string, string>, taskId: string, cwd?: string): string;
18
+ /**
19
+ * Apply safe mode to a task and its conversation context.
20
+ * Secrets found in the combined text are redacted and stored in a git-ignored file.
21
+ */
22
+ export declare function sanitizeTaskForSafeMode(task: {
23
+ id: string;
24
+ description: string;
25
+ }, context: string, secrets: Map<string, string>, cwd?: string): {
26
+ task: {
27
+ id: string;
28
+ description: string;
29
+ };
30
+ context: string;
31
+ };
32
+ //# sourceMappingURL=safeMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeMode.d.ts","sourceRoot":"","sources":["../src/safeMode.ts"],"names":[],"mappings":"AAoBA,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGhD;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAOjE;AAgBD,mFAAmF;AACnF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAgB,GAAG,MAAM,CAE3E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,SAAgB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAyBvE;AAED,2EAA2E;AAC3E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjG;AAED,qFAAqF;AACrF,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,MAAM,EAAE,MAAM,GACb,MAAM,CAkBR;AAED,iGAAiG;AACjG,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,MAAM,EAAE,MAAM,EACd,GAAG,SAAgB,GAClB,MAAM,CAuBR;AAUD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EACzC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,GAAG,SAAgB,GAClB;IAAE,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAYhE"}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.isSecretKey = isSecretKey;
37
+ exports.isSecretValue = isSecretValue;
38
+ exports.secretsFileRelPath = secretsFileRelPath;
39
+ exports.secretsFilePath = secretsFilePath;
40
+ exports.collectSecrets = collectSecrets;
41
+ exports.findSecretsInText = findSecretsInText;
42
+ exports.redactText = redactText;
43
+ exports.writeSecretsFile = writeSecretsFile;
44
+ exports.sanitizeTaskForSafeMode = sanitizeTaskForSafeMode;
45
+ const fs = __importStar(require("node:fs"));
46
+ const path = __importStar(require("node:path"));
47
+ const dotenv = __importStar(require("dotenv"));
48
+ // Segment patterns for underscore-separated env var names (e.g. CLICKUP_API_KEY).
49
+ const SECRET_SEGMENT_PATTERNS = [
50
+ /^key$/i,
51
+ /^token$/i,
52
+ /^secret$/i,
53
+ /^password$/i,
54
+ /^passwd$/i,
55
+ /^pwd$/i,
56
+ /^auth$/i,
57
+ /^credential$/i,
58
+ /^private$/i,
59
+ /^api[_-]?key$/i,
60
+ ];
61
+ const MIN_SECRET_LENGTH = 8;
62
+ function isSecretKey(key) {
63
+ const segments = key.split('_');
64
+ return segments.some((seg) => SECRET_SEGMENT_PATTERNS.some((p) => p.test(seg)));
65
+ }
66
+ function isSecretValue(key, value) {
67
+ if (value.length < MIN_SECRET_LENGTH)
68
+ return false;
69
+ // Skip obviously non-secret values
70
+ if (/^(true|false|yes|no|null|undefined|[0-9]+)$/i.test(value))
71
+ return false;
72
+ // Skip bare base URLs (e.g. JIRA_BASE_URL=https://example.atlassian.net)
73
+ if (/^https?:\/\/[a-z0-9._-]+(:\d+)?\/?$/i.test(value))
74
+ return false;
75
+ return isSecretKey(key);
76
+ }
77
+ function addSecretsFromFile(secrets, filePath, overwrite = false) {
78
+ if (!fs.existsSync(filePath))
79
+ return;
80
+ const parsed = dotenv.parse(fs.readFileSync(filePath, 'utf8'));
81
+ for (const [key, value] of Object.entries(parsed)) {
82
+ if (!isSecretValue(key, value))
83
+ continue;
84
+ if (!overwrite && secrets.has(key))
85
+ continue;
86
+ secrets.set(key, value);
87
+ }
88
+ }
89
+ /** Relative path (from project cwd) to the git-ignored secrets file for a task. */
90
+ function secretsFileRelPath(taskId) {
91
+ return path.join('.aidev', 'assets', 'secrets', `task-${taskId}.secrets`);
92
+ }
93
+ /** Absolute path to the git-ignored secrets file for a task. */
94
+ function secretsFilePath(taskId, cwd = process.cwd()) {
95
+ return path.join(cwd, secretsFileRelPath(taskId));
96
+ }
97
+ /**
98
+ * Collect secret key→value pairs from `.env.aidev` (and its extend), `.env`, plus
99
+ * process.env (covers shell-provided values after loadConfig).
100
+ */
101
+ function collectSecrets(cwd = process.cwd()) {
102
+ const secrets = new Map();
103
+ const envAidevPath = path.join(cwd, '.env.aidev');
104
+ addSecretsFromFile(secrets, path.join(cwd, '.env'));
105
+ addSecretsFromFile(secrets, envAidevPath);
106
+ if (fs.existsSync(envAidevPath)) {
107
+ const parsed = dotenv.parse(fs.readFileSync(envAidevPath, 'utf8'));
108
+ const rawExtend = parsed['AIDEV_ENV_EXTEND'];
109
+ if (rawExtend) {
110
+ const extendPath = path.isAbsolute(rawExtend)
111
+ ? rawExtend
112
+ : path.resolve(path.dirname(envAidevPath), rawExtend);
113
+ addSecretsFromFile(secrets, extendPath);
114
+ }
115
+ }
116
+ for (const [key, value] of Object.entries(process.env)) {
117
+ if (value && isSecretValue(key, value) && !secrets.has(key)) {
118
+ secrets.set(key, value);
119
+ }
120
+ }
121
+ return secrets;
122
+ }
123
+ /** Return the subset of secrets whose values actually appear in `text`. */
124
+ function findSecretsInText(text, secrets) {
125
+ const found = new Map();
126
+ for (const [key, value] of secrets) {
127
+ if (text.includes(value))
128
+ found.set(key, value);
129
+ }
130
+ return found;
131
+ }
132
+ /** Replace secret values in text with placeholder references to the secrets file. */
133
+ function redactText(text, foundSecrets, taskId) {
134
+ if (foundSecrets.size === 0)
135
+ return text;
136
+ const relPath = secretsFileRelPath(taskId);
137
+ const entries = [...foundSecrets.entries()].sort((a, b) => b[1].length - a[1].length);
138
+ let result = text;
139
+ const seen = new Set();
140
+ for (const [key, value] of entries) {
141
+ if (seen.has(value))
142
+ continue;
143
+ seen.add(value);
144
+ const escaped = value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
145
+ const placeholder = `[encrypted content at file ${relPath} — ${key}]`;
146
+ result = result.replace(new RegExp(escaped, 'g'), placeholder);
147
+ }
148
+ return result;
149
+ }
150
+ /** Write secrets to `.aidev/assets/secrets/task-<taskId>.secrets` (under git-ignored assets). */
151
+ function writeSecretsFile(foundSecrets, taskId, cwd = process.cwd()) {
152
+ const filePath = secretsFilePath(taskId, cwd);
153
+ const secretsDir = path.dirname(filePath);
154
+ if (!fs.existsSync(secretsDir)) {
155
+ fs.mkdirSync(secretsDir, { recursive: true });
156
+ }
157
+ const relPath = secretsFileRelPath(taskId);
158
+ const lines = [
159
+ `# Secret values for task ${taskId} (git-ignored under .aidev/assets/)`,
160
+ `# These values appeared in the task prompt and were redacted for security.`,
161
+ `# Prefer terminal pipes over reading this file directly, e.g.:`,
162
+ `# Get-Content ${relPath} | ForEach-Object { if ($_ -match '^KEY=') { $env:KEY = $_.Split('=',2)[1] } }`,
163
+ `# export $(grep -v '^#' ${relPath} | xargs) && your-command`,
164
+ ``,
165
+ ];
166
+ for (const [key, value] of foundSecrets) {
167
+ lines.push(`${key}=${value}`);
168
+ }
169
+ fs.writeFileSync(filePath, lines.join('\n') + '\n', 'utf8');
170
+ return relPath;
171
+ }
172
+ function safeModeNotice(relPath) {
173
+ return (`\n\n⚠️ Secret values were redacted from this prompt. ` +
174
+ `They are stored in \`${relPath}\` (git-ignored). ` +
175
+ `Prefer piping values via the terminal instead of reading that file directly.`);
176
+ }
177
+ /**
178
+ * Apply safe mode to a task and its conversation context.
179
+ * Secrets found in the combined text are redacted and stored in a git-ignored file.
180
+ */
181
+ function sanitizeTaskForSafeMode(task, context, secrets, cwd = process.cwd()) {
182
+ const combined = (task.description || '') + '\n' + context;
183
+ const found = findSecretsInText(combined, secrets);
184
+ if (found.size === 0)
185
+ return { task, context };
186
+ const relPath = writeSecretsFile(found, task.id, cwd);
187
+ return {
188
+ task: { ...task, description: redactText(task.description || '', found, task.id) },
189
+ context: redactText(context, found, task.id) + safeModeNotice(relPath),
190
+ };
191
+ }
192
+ //# sourceMappingURL=safeMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeMode.js","sourceRoot":"","sources":["../src/safeMode.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -71,7 +71,7 @@ export interface Comment {
71
71
  authorId: string;
72
72
  date: number;
73
73
  }
74
- export type AgentName = 'antigravity' | 'anthropic-sdk' | 'claude' | 'codex' | 'cursor' | 'windsurf';
74
+ export type AgentName = 'antigravity' | 'anthropic-sdk' | 'claude' | 'codex' | 'cursor' | 'devin';
75
75
  export interface Config {
76
76
  provider: string;
77
77
  clickupApiKey: string;
@@ -132,5 +132,7 @@ export interface Config {
132
132
  doneStatus: string;
133
133
  autoCompress: boolean;
134
134
  compressThreshold: number;
135
+ logTtlDays: number;
136
+ safeMode: boolean;
135
137
  }
136
138
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qEAAqE;IACrE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,sFAAsF;IACtF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,oEAAoE;AACpE,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,oEAAoE;AACpE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,eAAe,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAElG,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,MAAM,CAAC;IAEjB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAE9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAE7B,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IAEtB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAE7B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;IAE7B,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAE5B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@qelos/aidev",
3
- "version": "1.2.0",
4
- "description": "AI-powered task executor — polls ClickUp (and more) to implement tasks with Claude, Cursor, Windsurf, or Antigravity",
3
+ "version": "1.3.0",
4
+ "description": "AI-powered task executor — polls ClickUp (and more) to implement tasks with Claude, Cursor, Devin, or Antigravity",
5
5
  "type": "commonjs",
6
6
  "bin": {
7
7
  "aidev": "dist/cli.js"
@@ -1,5 +1,5 @@
1
1
  {
2
- "date": "2026-06-07T05:45:17.747Z",
2
+ "date": "2026-06-12T03:38:16.117Z",
3
3
  "preset": "node-server",
4
4
  "framework": {
5
5
  "name": "nuxt",
@@ -0,0 +1 @@
1
+ import J from"./yqBy-NAR.js";import{_ as A}from"./DlAUqK2U.js";import{R as g,h as p,G as S,s as I,m as N,ao as O,Z as y,B as m,a1 as H,g as Q,P as K,ad as W,ac as Z,f as s,a7 as w,A as F,p as X,K as Y,v as E,M as ee,Q as re,q as te,V as ae,c as j,E as $,i as C,j as ie,a4 as ne,a6 as oe,aa as se,a9 as z}from"./CnXdKLRd.js";import{_ as le}from"./Cz9dogwK.js";const P={to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1}},de=e=>Object.keys(P).reduce((r,t)=>(e[t]!==void 0&&(r[t]=e[t]),r),{});function B(e){return typeof e=="string"?`'${e}'`:new ue().serialize(e)}const ue=(function(){class e{#e=new Map;compare(r,t){const a=typeof r,n=typeof t;return a==="string"&&n==="string"?r.localeCompare(t):a==="number"&&n==="number"?r-t:String.prototype.localeCompare.call(this.serialize(r,!0),this.serialize(t,!0))}serialize(r,t){if(r===null)return"null";switch(typeof r){case"string":return t?r:`'${r}'`;case"bigint":return`${r}n`;case"object":return this.$object(r);case"function":return this.$function(r)}return String(r)}serializeObject(r){const t=Object.prototype.toString.call(r);if(t!=="[object Object]")return this.serializeBuiltInType(t.length<10?`unknown:${t}`:t.slice(8,-1),r);const a=r.constructor,n=a===Object||a===void 0?"":a.name;if(n!==""&&globalThis[n]===a)return this.serializeBuiltInType(n,r);if(typeof r.toJSON=="function"){const o=r.toJSON();return n+(o!==null&&typeof o=="object"?this.$object(o):`(${this.serialize(o)})`)}return this.serializeObjectEntries(n,Object.entries(r))}serializeBuiltInType(r,t){const a=this["$"+r];if(a)return a.call(this,t);if(typeof t?.entries=="function")return this.serializeObjectEntries(r,t.entries());throw new Error(`Cannot serialize ${r}`)}serializeObjectEntries(r,t){const a=Array.from(t).sort((o,d)=>this.compare(o[0],d[0]));let n=`${r}{`;for(let o=0;o<a.length;o++){const[d,l]=a[o];n+=`${this.serialize(d,!0)}:${this.serialize(l)}`,o<a.length-1&&(n+=",")}return n+"}"}$object(r){let t=this.#e.get(r);return t===void 0&&(this.#e.set(r,`#${this.#e.size}`),t=this.serializeObject(r),this.#e.set(r,t)),t}$function(r){const t=Function.prototype.toString.call(r);return t.slice(-15)==="[native code] }"?`${r.name||""}()[native]`:`${r.name}(${r.length})${t.replace(/\s*\n\s*/g,"")}`}$Array(r){let t="[";for(let a=0;a<r.length;a++)t+=this.serialize(r[a]),a<r.length-1&&(t+=",");return t+"]"}$Date(r){try{return`Date(${r.toISOString()})`}catch{return"Date(null)"}}$ArrayBuffer(r){return`ArrayBuffer[${new Uint8Array(r).join(",")}]`}$Set(r){return`Set${this.$Array(Array.from(r).sort((t,a)=>this.compare(t,a)))}`}$Map(r){return this.serializeObjectEntries("Map",r.entries())}}for(const i of["Error","RegExp","URL"])e.prototype["$"+i]=function(r){return`${i}(${r})`};for(const i of["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"])e.prototype["$"+i]=function(r){return`${i}[${r.join(",")}]`};for(const i of["BigInt64Array","BigUint64Array"])e.prototype["$"+i]=function(r){return`${i}[${r.join("n,")}${r.length>0?"n":""}]`};return e})();function U(e,i){return e===i||B(e)===B(i)}const ce=N({props:{name:{type:String,required:!0},mode:{type:String,required:!1,default:null},size:{type:[Number,String],required:!1,default:null},customize:{type:Function,required:!1,default:null}}});function ge(e,i,r,t,a,n){const o=J;return g(),p(o,S(I(e.$props)),null,16)}const G=A(ce,[["render",ge]]);function fe(e,i){const r=q(e),t=q(i);return R(r,t)}function R(e,i){const r=[],t=new Set([...Object.keys(e.props||{}),...Object.keys(i.props||{})]);if(e.props&&i.props)for(const a of t){const n=e.props[a],o=i.props[a];n&&o?r.push(...R(e.props?.[a],i.props?.[a])):(n||o)&&r.push(new L((o||n).key,n?"removed":"added",o,n))}return t.size===0&&e.hash!==i.hash&&r.push(new L((i||e).key,"changed",i,e)),r}function q(e,i=""){if(e&&typeof e!="object")return new M(i,e,B(e));const r={},t=[];for(const a in e)r[a]=q(e[a],i?`${i}.${a}`:a),t.push(r[a].hash);return new M(i,e,`{${t.join(":")}}`,r)}class L{constructor(i,r,t,a){this.key=i,this.type=r,this.newValue=t,this.oldValue=a}toString(){return this.toJSON()}toJSON(){switch(this.type){case"added":return`Added \`${this.key}\``;case"removed":return`Removed \`${this.key}\``;case"changed":return`Changed \`${this.key}\` from \`${this.oldValue?.toString()||"-"}\` to \`${this.newValue.toString()}\``}}}class M{constructor(i,r,t,a){this.key=i,this.value=r,this.hash=t,this.props=a}toString(){return this.props?`{${Object.keys(this.props).join(",")}}`:JSON.stringify(this.value)}toJSON(){const i=this.key||".";return this.props?`${i}({${Object.keys(this.props).join(",")}})`:`${i}(${this.value})`}}const pe=N({inheritAttrs:!1,props:{...P,as:{type:String,default:"button"},type:{type:String,default:"button"},disabled:{type:Boolean,default:null},active:{type:Boolean,default:void 0},exact:{type:Boolean,default:!1},exactQuery:{type:[Boolean,String],default:!1},exactHash:{type:Boolean,default:!1},inactiveClass:{type:String,default:void 0}},setup(e){function i(t,a){const n=fe(t,a).reduce((l,u)=>(u.type==="added"&&l.add(u.key),l),new Set),o=Object.fromEntries(Object.entries(t).filter(([l])=>!n.has(l))),d=Object.fromEntries(Object.entries(a).filter(([l])=>!n.has(l)));return U(o,d)}function r(t,a,{isActive:n,isExactActive:o}){if(e.exactQuery==="partial"){if(!i(t.query,a.query))return e.inactiveClass}else if(e.exactQuery===!0&&!U(t.query,a.query))return e.inactiveClass;return e.exactHash&&t.hash!==a.hash?e.inactiveClass:e.exact&&o||!e.exact&&n?e.activeClass:e.inactiveClass}return{resolveLinkClass:r}}}),be=["href","aria-disabled","role","rel","target","tabindex","onClick"];function ye(e,i,r,t,a,n){const o=le;return e.to?(g(),p(o,m({key:1},e.$props,{custom:""}),{default:O(({route:d,href:l,target:u,rel:b,navigate:f,isActive:h,isExactActive:v,isExternal:x})=>[Q("a",m(e.$attrs,{href:e.disabled?void 0:l,"aria-disabled":e.disabled?"true":void 0,role:e.disabled?"link":void 0,rel:b,target:u,class:e.active!==void 0?e.active?e.activeClass:e.inactiveClass:e.resolveLinkClass(d,e._.provides[K]||e.$route,{isActive:h,isExactActive:v}),tabindex:e.disabled?-1:void 0,onClick:k=>!x&&!e.disabled&&f(k)}),[y(e.$slots,"default",S(I({isActive:e.active!==void 0?e.active:e.exact?v:h})))],16,be)]),_:3},16)):(g(),p(H(e.as),m({key:0,type:e.type,disabled:e.disabled},e.$attrs,{class:e.active?e.activeClass:e.inactiveClass}),{default:O(()=>[y(e.$slots,"default",S(I({isActive:e.active})))]),_:3},16,["type","disabled","class"]))}const T=A(pe,[["render",ye]]),he=(e,i,r,t,a=!1)=>{const n=W(),o=Z(),d=s(()=>{const u=w(i),b=w(r),f=w(t);return F(u?.strategy||o.ui?.strategy,f?{wrapper:f}:{},u||{},a?X(o.ui,e,{}):{},b||{})}),l=s(()=>Y(n,["class"]));return{ui:d,attrs:l}};function ve({ui:e,props:i}){const r=te();if(ae("ButtonGroupContextConsumer",!0),E("ButtonGroupContextConsumer",!1))return{size:s(()=>i.size),rounded:s(()=>e.value.rounded)};let a=r.parent,n;for(;a&&!n;){if(a.type.name==="ButtonGroup"){n=E(`group-${a.uid}`);break}a=a.parent}const o=s(()=>n?.value.children.indexOf(r));return ee(()=>{n?.value.register(r)}),re(()=>{n?.value.unregister(r)}),{size:s(()=>n?.value?n?.value.size??e.value.default.size:i.size),rounded:s(()=>!n||o.value===-1?e.value.rounded:n.value.children.length===1?n.value.ui.rounded:o.value===0?n.value.rounded.start:o.value===n.value.children.length-1?n.value.rounded.end:"rounded-none")}}const me={base:"focus:outline-none focus-visible:outline-0 disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:cursor-not-allowed aria-disabled:opacity-75 flex-shrink-0",font:"font-medium",rounded:"rounded-md",truncate:"text-left break-all line-clamp-1",block:"w-full flex justify-center items-center",inline:"inline-flex items-center",size:{"2xs":"text-xs",xs:"text-xs",sm:"text-sm",md:"text-sm",lg:"text-sm",xl:"text-base"},gap:{"2xs":"gap-x-1",xs:"gap-x-1.5",sm:"gap-x-1.5",md:"gap-x-2",lg:"gap-x-2.5",xl:"gap-x-2.5"},padding:{"2xs":"px-2 py-1",xs:"px-2.5 py-1.5",sm:"px-2.5 py-1.5",md:"px-3 py-2",lg:"px-3.5 py-2.5",xl:"px-3.5 py-2.5"},square:{"2xs":"p-1",xs:"p-1.5",sm:"p-1.5",md:"p-2",lg:"p-2.5",xl:"p-2.5"},color:{white:{solid:"shadow-sm ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-900 dark:text-white bg-white hover:bg-gray-50 disabled:bg-white aria-disabled:bg-white dark:bg-gray-900 dark:hover:bg-gray-800/50 dark:disabled:bg-gray-900 dark:aria-disabled:bg-gray-900 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",ghost:"text-gray-900 dark:text-white hover:bg-white dark:hover:bg-gray-900 focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"},gray:{solid:"shadow-sm ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-700 dark:text-gray-200 bg-gray-50 hover:bg-gray-100 disabled:bg-gray-50 aria-disabled:bg-gray-50 dark:bg-gray-800 dark:hover:bg-gray-700/50 dark:disabled:bg-gray-800 dark:aria-disabled:bg-gray-800 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",ghost:"text-gray-700 dark:text-gray-200 hover:text-gray-900 dark:hover:text-white hover:bg-gray-50 dark:hover:bg-gray-800 focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",link:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 underline-offset-4 hover:underline focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"},black:{solid:"shadow-sm text-white dark:text-gray-900 bg-gray-900 hover:bg-gray-800 disabled:bg-gray-900 aria-disabled:bg-gray-900 dark:bg-white dark:hover:bg-gray-100 dark:disabled:bg-white dark:aria-disabled:bg-white focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",link:"text-gray-900 dark:text-white underline-offset-4 hover:underline focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"}},variant:{solid:"shadow-sm text-white dark:text-gray-900 bg-{color}-500 hover:bg-{color}-600 disabled:bg-{color}-500 aria-disabled:bg-{color}-500 dark:bg-{color}-400 dark:hover:bg-{color}-500 dark:disabled:bg-{color}-400 dark:aria-disabled:bg-{color}-400 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-{color}-500 dark:focus-visible:outline-{color}-400",outline:"ring-1 ring-inset ring-current text-{color}-500 dark:text-{color}-400 hover:bg-{color}-50 disabled:bg-transparent aria-disabled:bg-transparent dark:hover:bg-{color}-950 dark:disabled:bg-transparent dark:aria-disabled:bg-transparent focus-visible:ring-2 focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",soft:"text-{color}-500 dark:text-{color}-400 bg-{color}-50 hover:bg-{color}-100 disabled:bg-{color}-50 aria-disabled:bg-{color}-50 dark:bg-{color}-950 dark:hover:bg-{color}-900 dark:disabled:bg-{color}-950 dark:aria-disabled:bg-{color}-950 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",ghost:"text-{color}-500 dark:text-{color}-400 hover:bg-{color}-50 disabled:bg-transparent aria-disabled:bg-transparent dark:hover:bg-{color}-950 dark:disabled:bg-transparent dark:aria-disabled:bg-transparent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",link:"text-{color}-500 hover:text-{color}-600 disabled:text-{color}-500 aria-disabled:text-{color}-500 dark:text-{color}-400 dark:hover:text-{color}-500 dark:disabled:text-{color}-400 dark:aria-disabled:text-{color}-400 underline-offset-4 hover:underline focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400"},icon:{base:"flex-shrink-0",loading:"animate-spin",size:{"2xs":"h-4 w-4",xs:"h-4 w-4",sm:"h-5 w-5",md:"h-5 w-5",lg:"h-5 w-5",xl:"h-6 w-6"}},default:{size:"sm",variant:"solid",color:"primary",loadingIcon:"i-heroicons-arrow-path-20-solid"}},_={base:"invisible before:visible before:block before:rotate-45 before:z-[-1] before:w-2 before:h-2",ring:"before:ring-1 before:ring-gray-200 dark:before:ring-gray-800",rounded:"before:rounded-sm",background:"before:bg-gray-200 dark:before:bg-gray-800",shadow:"before:shadow",placement:"group-data-[popper-placement*='right']:-left-1 group-data-[popper-placement*='left']:-right-1 group-data-[popper-placement*='top']:-bottom-1 group-data-[popper-placement*='bottom']:-top-1"},D={wrapper:"relative",base:"relative block w-full disabled:cursor-not-allowed disabled:opacity-75 focus:outline-none border-0",form:"form-input",rounded:"rounded-md",placeholder:"placeholder-gray-400 dark:placeholder-gray-500",file:{base:"file:mr-1.5 file:font-medium file:text-gray-500 dark:file:text-gray-400 file:bg-transparent file:border-0 file:p-0 file:outline-none"},size:{"2xs":"text-xs",xs:"text-xs",sm:"text-sm",md:"text-sm",lg:"text-sm",xl:"text-base"},gap:{"2xs":"gap-x-1",xs:"gap-x-1.5",sm:"gap-x-1.5",md:"gap-x-2",lg:"gap-x-2.5",xl:"gap-x-2.5"},padding:{"2xs":"px-2 py-1",xs:"px-2.5 py-1.5",sm:"px-2.5 py-1.5",md:"px-3 py-2",lg:"px-3.5 py-2.5",xl:"px-3.5 py-2.5"},leading:{padding:{"2xs":"ps-7",xs:"ps-8",sm:"ps-9",md:"ps-10",lg:"ps-11",xl:"ps-12"}},trailing:{padding:{"2xs":"pe-7",xs:"pe-8",sm:"pe-9",md:"pe-10",lg:"pe-11",xl:"pe-12"}},color:{white:{outline:"shadow-sm bg-white dark:bg-gray-900 text-gray-900 dark:text-white ring-1 ring-inset ring-gray-300 dark:ring-gray-700 focus:ring-2 focus:ring-primary-500 dark:focus:ring-primary-400"},gray:{outline:"shadow-sm bg-gray-50 dark:bg-gray-800 text-gray-900 dark:text-white ring-1 ring-inset ring-gray-300 dark:ring-gray-700 focus:ring-2 focus:ring-primary-500 dark:focus:ring-primary-400"}},variant:{outline:"shadow-sm bg-transparent text-gray-900 dark:text-white ring-1 ring-inset ring-{color}-500 dark:ring-{color}-400 focus:ring-2 focus:ring-{color}-500 dark:focus:ring-{color}-400",none:"bg-transparent focus:ring-0 focus:shadow-none"},icon:{base:"flex-shrink-0 text-gray-400 dark:text-gray-500",color:"text-{color}-500 dark:text-{color}-400",loading:"animate-spin",size:{"2xs":"h-4 w-4",xs:"h-4 w-4",sm:"h-5 w-5",md:"h-5 w-5",lg:"h-5 w-5",xl:"h-6 w-6"},leading:{wrapper:"absolute inset-y-0 start-0 flex items-center",pointer:"pointer-events-none",padding:{"2xs":"px-2",xs:"px-2.5",sm:"px-2.5",md:"px-3",lg:"px-3.5",xl:"px-3.5"}},trailing:{wrapper:"absolute inset-y-0 end-0 flex items-center",pointer:"pointer-events-none",padding:{"2xs":"px-2",xs:"px-2.5",sm:"px-2.5",md:"px-3",lg:"px-3.5",xl:"px-3.5"}}},default:{size:"sm",color:"white",variant:"outline",loadingIcon:"i-heroicons-arrow-path-20-solid"}},V={container:"z-20 group",trigger:"flex items-center w-full",width:"w-full",height:"max-h-60",base:"relative focus:outline-none overflow-y-auto scroll-py-1",background:"bg-white dark:bg-gray-800",shadow:"shadow-lg",rounded:"rounded-md",padding:"p-1",ring:"ring-1 ring-gray-200 dark:ring-gray-700",empty:"text-sm text-gray-400 dark:text-gray-500 px-2 py-1.5",option:{base:"cursor-default select-none relative flex items-center justify-between gap-1",rounded:"rounded-md",padding:"px-1.5 py-1.5",size:"text-sm",color:"text-gray-900 dark:text-white",container:"flex items-center gap-1.5 min-w-0",active:"bg-gray-100 dark:bg-gray-900",inactive:"",selected:"pe-7",disabled:"cursor-not-allowed opacity-50",empty:"text-sm text-gray-400 dark:text-gray-500 px-2 py-1.5",icon:{base:"flex-shrink-0 h-5 w-5",active:"text-gray-900 dark:text-white",inactive:"text-gray-400 dark:text-gray-500"},selectedIcon:{wrapper:"absolute inset-y-0 end-0 flex items-center",padding:"pe-2",base:"h-5 w-5 text-gray-900 dark:text-white flex-shrink-0"},avatar:{base:"flex-shrink-0",size:"2xs"},chip:{base:"flex-shrink-0 w-2 h-2 mx-1 rounded-full"}},transition:{leaveActiveClass:"transition ease-in duration-100",leaveFromClass:"opacity-100",leaveToClass:"opacity-0"},popper:{placement:"bottom-end"},default:{selectedIcon:"i-heroicons-check-20-solid",trailingIcon:"i-heroicons-chevron-down-20-solid",empty:{label:"No options."},optionEmpty:{label:'No results for "{query}".'}},arrow:{..._,ring:"before:ring-1 before:ring-gray-200 dark:before:ring-gray-700",background:"before:bg-white dark:before:bg-gray-700"}},Se={...D,form:"form-textarea",default:{size:"sm",color:"white",variant:"outline"}},Ie={...D,form:"form-select",placeholder:"text-gray-400 dark:text-gray-500",default:{size:"sm",color:"white",variant:"outline",loadingIcon:"i-heroicons-arrow-path-20-solid",trailingIcon:"i-heroicons-chevron-down-20-solid"}},Oe={...V,select:"inline-flex items-center text-left cursor-default",input:"block w-[calc(100%+0.5rem)] focus:ring-transparent text-sm px-3 py-1.5 text-gray-700 dark:text-gray-200 bg-white dark:bg-gray-800 border-0 border-b border-gray-200 dark:border-gray-700 sticky -top-1 -mt-1 mb-1 -mx-1 z-10 placeholder-gray-400 dark:placeholder-gray-500 focus:outline-none",required:"absolute inset-0 w-px opacity-0 cursor-default",label:"block truncate",option:{...V.option,create:"block truncate"},transition:{leaveActiveClass:"transition ease-in duration-100",leaveFromClass:"opacity-100",leaveToClass:"opacity-0"},popper:{placement:"bottom-end"},default:{selectedIcon:"i-heroicons-check-20-solid",clearSearchOnClose:!1,showCreateOptionWhen:"empty",searchablePlaceholder:{label:"Search..."},empty:{label:"No options."},optionEmpty:{label:'No results for "{query}".'}},arrow:{..._,ring:"before:ring-1 before:ring-gray-200 dark:before:ring-gray-700",background:"before:bg-white dark:before:bg-gray-700"}},c=F(j.ui.strategy,j.ui.button,me),xe=N({components:{UIcon:G,ULink:T},inheritAttrs:!1,props:{...P,type:{type:String,default:"button"},block:{type:Boolean,default:!1},label:{type:String,default:null},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},size:{type:String,default:()=>c.default.size,validator(e){return Object.keys(c.size).includes(e)}},color:{type:String,default:()=>c.default.color,validator(e){return[...j.ui.colors,...Object.keys(c.color)].includes(e)}},variant:{type:String,default:()=>c.default.variant,validator(e){return[...Object.keys(c.variant),...Object.values(c.color).flatMap(i=>Object.keys(i))].includes(e)}},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>c.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:null},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},square:{type:Boolean,default:!1},truncate:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e,{slots:i}){const{ui:r,attrs:t}=he("button",oe(e,"ui"),c),{size:a,rounded:n}=ve({ui:r,props:e}),o=s(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),d=s(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),l=s(()=>e.square||!i.default&&!e.label),u=s(()=>{const k=r.value.color?.[e.color]?.[e.variant]||r.value.variant[e.variant];return se(z(r.value.base,r.value.font,n.value,r.value.size[a.value],r.value.gap[a.value],e.padded&&r.value[l.value?"square":"padding"][a.value],k?.replaceAll("{color}",e.color),e.block?r.value.block:r.value.inline),e.class)}),b=s(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),f=s(()=>e.loading&&!o.value?e.loadingIcon:e.trailingIcon||e.icon),h=s(()=>z(r.value.icon.base,r.value.icon.size[a.value],e.loading&&r.value.icon.loading)),v=s(()=>z(r.value.icon.base,r.value.icon.size[a.value],e.loading&&!o.value&&r.value.icon.loading)),x=s(()=>de(e));return{ui:r,attrs:t,isLeading:o,isTrailing:d,isSquare:l,buttonClass:u,leadingIconName:b,trailingIconName:f,leadingIconClass:h,trailingIconClass:v,linkProps:x}}});function ke(e,i,r,t,a,n){const o=G,d=T;return g(),p(d,m({type:e.type,disabled:e.disabled||e.loading,class:e.buttonClass},{...e.linkProps,...e.attrs}),{default:O(()=>[y(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[e.isLeading&&e.leadingIconName?(g(),p(o,{key:0,name:e.leadingIconName,class:$(e.leadingIconClass),"aria-hidden":"true"},null,8,["name","class"])):C("",!0)]),y(e.$slots,"default",{},()=>[e.label!==void 0&&e.label!==null?(g(),ie("span",{key:0,class:$([e.truncate?e.ui.truncate:""])},ne(e.label),3)):C("",!0)]),y(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[e.isTrailing&&e.trailingIconName?(g(),p(o,{key:0,name:e.trailingIconName,class:$(e.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])):C("",!0)])]),_:3},16,["type","disabled","class"])}const je=A(xe,[["render",ke]]);export{G as _,je as a,U as b,Oe as c,he as d,D as i,Ie as s,Se as t,ve as u};
@@ -0,0 +1 @@
1
+ import{_ as O,d as P,u as X,i as Z}from"./6wLLp9Nc.js";import{R as p,j as I,g as H,B as K,Z as b,E as g,i as h,m as Q,X as j,n as Y,M as _,c as f,f as i,A as x,z as ee,l as $,a6 as k,aa as ae,a9 as c}from"./CnXdKLRd.js";import{a as le}from"./mHp9eItY.js";import{_ as ne}from"./DlAUqK2U.js";const t=x(f.ui.strategy,f.ui.input,Z),ie=Q({components:{UIcon:O},inheritAttrs:!1,props:{modelValue:{type:[String,Number],default:""},type:{type:String,default:"text"},id:{type:String,default:null},name:{type:String,default:null},placeholder:{type:String,default:null},required:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},autofocusDelay:{type:Number,default:100},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>t.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:null},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},size:{type:String,default:null,validator(e){return Object.keys(t.size).includes(e)}},color:{type:String,default:()=>t.default.color,validator(e){return[...f.ui.colors,...Object.keys(t.color)].includes(e)}},variant:{type:String,default:()=>t.default.variant,validator(e){return[...Object.keys(t.variant),...Object.values(t.color).flatMap(n=>Object.keys(n))].includes(e)}},inputClass:{type:String,default:null},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})},modelModifiers:{type:Object,default:()=>({})}},emits:["update:modelValue","blur","change"],setup(e,{emit:n,slots:y}){const{ui:a,attrs:C}=P("input",k(e,"ui"),t,k(e,"class")),{size:B,rounded:v}=X({ui:a,props:e}),{emitFormBlur:r,emitFormInput:M,size:V,color:u,inputId:A,name:w}=le(e,t),o=i(()=>B.value??V.value),s=j(Y({},e.modelModifiers,{trim:!1,lazy:!1,number:!1,nullify:!1})),z=j(null),F=()=>{e.autofocus&&z.value?.focus()},S=l=>{s.value.trim&&(l=l.trim()),(s.value.number||e.type==="number")&&(l=ee(l)),s.value.nullify&&(l||=null),n("update:modelValue",l),M()},q=l=>{s.value.lazy||S(l.target.value)},G=l=>{if(e.type==="file"){const d=l.target.files;n("change",d)}else{const d=l.target.value;n("change",d),s.value.lazy&&S(d),s.value.trim&&(l.target.value=d.trim())}},T=l=>{r(),n("blur",l)};_(()=>{setTimeout(()=>{F()},e.autofocusDelay)});const W=i(()=>{const l=a.value.color?.[u.value]?.[e.variant]||a.value.variant[e.variant];return ae(c(a.value.base,a.value.form,v.value,a.value.placeholder,e.type==="file"&&a.value.file.base,a.value.size[o.value],e.padded?a.value.padding[o.value]:"p-0",l?.replaceAll("{color}",u.value),(m.value||y.leading)&&a.value.leading.padding[o.value],(N.value||y.trailing)&&a.value.trailing.padding[o.value]),e.inputClass)}),m=i(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),N=i(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),U=i(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),D=i(()=>e.loading&&!m.value?e.loadingIcon:e.trailingIcon||e.icon),E=i(()=>c(a.value.icon.leading.wrapper,a.value.icon.leading.pointer,a.value.icon.leading.padding[o.value])),L=i(()=>c(a.value.icon.base,u.value&&f.ui.colors.includes(u.value)&&a.value.icon.color.replaceAll("{color}",u.value),a.value.icon.size[o.value],e.loading&&a.value.icon.loading)),R=i(()=>c(a.value.icon.trailing.wrapper,a.value.icon.trailing.pointer,a.value.icon.trailing.padding[o.value])),J=i(()=>c(a.value.icon.base,u.value&&f.ui.colors.includes(u.value)&&a.value.icon.color.replaceAll("{color}",u.value),a.value.icon.size[o.value],e.loading&&!m.value&&a.value.icon.loading));return{ui:a,attrs:C,name:w,inputId:A,input:z,isLeading:m,isTrailing:N,inputClass:W,leadingIconName:U,leadingIconClass:L,leadingWrapperIconClass:E,trailingIconName:D,trailingIconClass:J,trailingWrapperIconClass:R,onInput:q,onChange:G,onBlur:T}}}),te=["id","name","type","required","placeholder","disabled"];function ue(e,n,y,a,C,B){const v=O;return p(),I("div",{class:g(e.type==="hidden"?"hidden":e.ui.wrapper)},[H("input",K({id:e.inputId,ref:"input",name:e.name,type:e.type,required:e.required,placeholder:e.placeholder,disabled:e.disabled,class:e.inputClass},e.type==="file"?e.attrs:{...e.attrs,value:e.modelValue},{onInput:n[0]||(n[0]=(...r)=>e.onInput&&e.onInput(...r)),onBlur:n[1]||(n[1]=(...r)=>e.onBlur&&e.onBlur(...r)),onChange:n[2]||(n[2]=(...r)=>e.onChange&&e.onChange(...r))}),null,16,te),b(e.$slots,"default"),e.isLeading&&e.leadingIconName||e.$slots.leading?(p(),I("span",{key:0,class:g(e.leadingWrapperIconClass)},[b(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[$(v,{name:e.leadingIconName,class:g(e.leadingIconClass)},null,8,["name","class"])])],2)):h("",!0),e.isTrailing&&e.trailingIconName||e.$slots.trailing?(p(),I("span",{key:1,class:g(e.trailingWrapperIconClass)},[b(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[$(v,{name:e.trailingIconName,class:g(e.trailingIconClass)},null,8,["name","class"])])],2)):h("",!0)],2)}const ge=ne(ie,[["render",ue]]);export{ge as _};
@@ -0,0 +1,4 @@
1
+ import{af as Je,v as A,V as P,an as C,f as m,X as g,e as St,t as T,F as et,m as D,M as O,Q as j,am as K,a3 as Lt,T as $t,q as Ft,W as Ot,D as At,E as ee,h as Ve,ao as Q,l as Te,B as Se,g as Le,i as Pt,Z as Ct,a0 as de,A as Dt,c as qe,R as _e,a6 as Ge}from"./CnXdKLRd.js";import{d as Nt}from"./6wLLp9Nc.js";import{_ as kt}from"./DlAUqK2U.js";const Rt={wrapper:"relative z-50",inner:"fixed inset-0 overflow-y-auto",container:"flex min-h-full items-end sm:items-center justify-center text-center",padding:"p-4 sm:p-0",margin:"sm:my-8",base:"relative text-left rtl:text-right flex flex-col",overlay:{base:"fixed inset-0 transition-opacity",background:"bg-gray-200/75 dark:bg-gray-800/75",transition:{enter:"ease-out duration-300",enterFrom:"opacity-0",enterTo:"opacity-100",leave:"ease-in duration-200",leaveFrom:"opacity-100",leaveTo:"opacity-0"}},background:"bg-white dark:bg-gray-900",ring:"",rounded:"rounded-lg",shadow:"shadow-xl",width:"w-full sm:max-w-lg",height:"",fullscreen:"w-screen h-screen",transition:{enter:"ease-out duration-300",enterFrom:"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",enterTo:"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200",leaveFrom:"opacity-100 translate-y-0 sm:scale-100",leaveTo:"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"}};function He(e){typeof queueMicrotask=="function"?queueMicrotask(e):Promise.resolve().then(e).catch(t=>setTimeout(()=>{throw t}))}function ne(){let e=[],t={addEventListener(n,r,l,a){return n.addEventListener(r,l,a),t.add(()=>n.removeEventListener(r,l,a))},requestAnimationFrame(...n){let r=requestAnimationFrame(...n);t.add(()=>cancelAnimationFrame(r))},nextFrame(...n){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...n)})},setTimeout(...n){let r=setTimeout(...n);t.add(()=>clearTimeout(r))},microTask(...n){let r={current:!0};return He(()=>{r.current&&n[0]()}),t.add(()=>{r.current=!1})},style(n,r,l){let a=n.style.getPropertyValue(r);return Object.assign(n.style,{[r]:l}),this.add(()=>{Object.assign(n.style,{[r]:a})})},group(n){let r=ne();return n(r),this.add(()=>r.dispose())},add(n){return e.push(n),()=>{let r=e.indexOf(n);if(r>=0)for(let l of e.splice(r,1))l()}},dispose(){for(let n of e.splice(0))n()}};return t}var Ye;let tt=Symbol("headlessui.useid"),Ht=0;const Me=(Ye=Je)!=null?Ye:function(){return A(tt,()=>`${++Ht}`)()};function Mt(e){P(tt,e)}function E(e){var t;if(e==null||e.value==null)return null;let n=(t=e.value.$el)!=null?t:e.value;return n instanceof Node?n:null}function R(e,t,...n){if(e in t){let l=t[e];return typeof l=="function"?l(...n):l}let r=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map(l=>`"${l}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,R),r}var jt=Object.defineProperty,Bt=(e,t,n)=>t in e?jt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ke=(e,t,n)=>(Bt(e,typeof t!="symbol"?t+"":t,n),n);let xt=class{constructor(){Ke(this,"current",this.detect()),Ke(this,"currentId",0)}set(t){this.current!==t&&(this.currentId=0,this.current=t)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}},re=new xt;function z(e){if(re.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty("value")){let t=E(e);if(t)return t.ownerDocument}return document}let Ae=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var x=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(x||{}),nt=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(nt||{}),It=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(It||{});function Ut(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(Ae)).sort((t,n)=>Math.sign((t.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var rt=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(rt||{});function Wt(e,t=0){var n;return e===((n=z(e))==null?void 0:n.body)?!1:R(t,{0(){return e.matches(Ae)},1(){let r=e;for(;r!==null;){if(r.matches(Ae))return!0;r=r.parentElement}return!1}})}var Vt=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(Vt||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function _(e){e?.focus({preventScroll:!0})}let qt=["textarea","input"].join(",");function _t(e){var t,n;return(n=(t=e?.matches)==null?void 0:t.call(e,qt))!=null?n:!1}function Gt(e,t=n=>n){return e.slice().sort((n,r)=>{let l=t(n),a=t(r);if(l===null||a===null)return 0;let u=l.compareDocumentPosition(a);return u&Node.DOCUMENT_POSITION_FOLLOWING?-1:u&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function ve(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:l=[]}={}){var a;let u=(a=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e?.ownerDocument)!=null?a:document,o=Array.isArray(e)?n?Gt(e):e:Ut(e);l.length>0&&o.length>1&&(o=o.filter(f=>!l.includes(f))),r=r??u.activeElement;let i=(()=>{if(t&5)return 1;if(t&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),s=(()=>{if(t&1)return 0;if(t&2)return Math.max(0,o.indexOf(r))-1;if(t&4)return Math.max(0,o.indexOf(r))+1;if(t&8)return o.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),d=t&32?{preventScroll:!0}:{},h=0,c=o.length,p;do{if(h>=c||h+c<=0)return 0;let f=s+h;if(t&16)f=(f+c)%c;else{if(f<0)return 3;if(f>=c)return 1}p=o[f],p?.focus(d),h+=i}while(p!==u.activeElement);return t&6&&_t(p)&&p.select(),2}function lt(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function Yt(){return/Android/gi.test(window.navigator.userAgent)}function Kt(){return lt()||Yt()}function ce(e,t,n){re.isServer||C(r=>{document.addEventListener(e,t,n),r(()=>document.removeEventListener(e,t,n))})}function at(e,t,n){re.isServer||C(r=>{window.addEventListener(e,t,n),r(()=>window.removeEventListener(e,t,n))})}function zt(e,t,n=m(()=>!0)){function r(a,u){if(!n.value||a.defaultPrevented)return;let o=u(a);if(o===null||!o.getRootNode().contains(o))return;let i=(function s(d){return typeof d=="function"?s(d()):Array.isArray(d)||d instanceof Set?d:[d]})(e);for(let s of i){if(s===null)continue;let d=s instanceof HTMLElement?s:E(s);if(d!=null&&d.contains(o)||a.composed&&a.composedPath().includes(d))return}return!Wt(o,rt.Loose)&&o.tabIndex!==-1&&a.preventDefault(),t(a,o)}let l=g(null);ce("pointerdown",a=>{var u,o;n.value&&(l.value=((o=(u=a.composedPath)==null?void 0:u.call(a))==null?void 0:o[0])||a.target)},!0),ce("mousedown",a=>{var u,o;n.value&&(l.value=((o=(u=a.composedPath)==null?void 0:u.call(a))==null?void 0:o[0])||a.target)},!0),ce("click",a=>{Kt()||l.value&&(r(a,()=>l.value),l.value=null)},!0),ce("touchend",a=>r(a,()=>a.target instanceof HTMLElement?a.target:null),!0),at("blur",a=>r(a,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}var me=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(me||{}),I=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(I||{});function B({visible:e=!0,features:t=0,ourProps:n,theirProps:r,...l}){var a;let u=ut(r,n),o=Object.assign(l,{props:u});if(e||t&2&&u.static)return $e(o);if(t&1){let i=(a=u.unmount)==null||a?0:1;return R(i,{0(){return null},1(){return $e({...l,props:{...u,hidden:!0,style:{display:"none"}}})}})}return $e(o)}function $e({props:e,attrs:t,slots:n,slot:r,name:l}){var a,u;let{as:o,...i}=it(e,["unmount","static"]),s=(a=n.default)==null?void 0:a.call(n,r),d={};if(r){let h=!1,c=[];for(let[p,f]of Object.entries(r))typeof f=="boolean"&&(h=!0),f===!0&&c.push(p);h&&(d["data-headlessui-state"]=c.join(" "))}if(o==="template"){if(s=ot(s??[]),Object.keys(i).length>0||Object.keys(t).length>0){let[h,...c]=s??[];if(!Xt(h)||c.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${l} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(i).concat(Object.keys(t)).map(v=>v.trim()).filter((v,w,N)=>N.indexOf(v)===w).sort((v,w)=>v.localeCompare(w)).map(v=>` - ${v}`).join(`
2
+ `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(v=>` - ${v}`).join(`
3
+ `)].join(`
4
+ `));let p=ut((u=h.props)!=null?u:{},i,d),f=St(h,p,!0);for(let v in p)v.startsWith("on")&&(f.props||(f.props={}),f.props[v]=p[v]);return f}return Array.isArray(s)&&s.length===1?s[0]:s}return T(o,Object.assign({},i,d),{default:()=>s})}function ot(e){return e.flatMap(t=>t.type===et?ot(t.children):[t])}function ut(...e){if(e.length===0)return{};if(e.length===1)return e[0];let t={},n={};for(let r of e)for(let l in r)l.startsWith("on")&&typeof r[l]=="function"?(n[l]!=null||(n[l]=[]),n[l].push(r[l])):t[l]=r[l];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(n).map(r=>[r,void 0])));for(let r in n)Object.assign(t,{[r](l,...a){let u=n[r];for(let o of u){if(l instanceof Event&&l.defaultPrevented)return;o(l,...a)}}});return t}function Un(e){let t=Object.assign({},e);for(let n in t)t[n]===void 0&&delete t[n];return t}function it(e,t=[]){let n=Object.assign({},e);for(let r of t)r in n&&delete n[r];return n}function Xt(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}var he=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(he||{});let Pe=D({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{var r;let{features:l,...a}=e,u={"aria-hidden":(l&2)===2?!0:(r=a["aria-hidden"])!=null?r:void 0,hidden:(l&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(l&4)===4&&(l&2)!==2&&{display:"none"}}};return B({ourProps:u,theirProps:a,slot:{},attrs:n,slots:t,name:"Hidden"})}}}),st=Symbol("Context");var L=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(L||{});function Qt(){return je()!==null}function je(){return A(st,null)}function Zt(e){P(st,e)}var dt=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(dt||{});function Jt(e){function t(){document.readyState!=="loading"&&(e(),document.removeEventListener("DOMContentLoaded",t))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",t),t())}let V=[];Jt(()=>{function e(t){t.target instanceof HTMLElement&&t.target!==document.body&&V[0]!==t.target&&(V.unshift(t.target),V=V.filter(n=>n!=null&&n.isConnected),V.splice(10))}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})});function ct(e,t,n,r){re.isServer||C(l=>{e=e??window,e.addEventListener(t,n,r),l(()=>e.removeEventListener(t,n,r))})}var te=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(te||{});function en(){let e=g(0);return at("keydown",t=>{t.key==="Tab"&&(e.value=t.shiftKey?1:0)}),e}function ft(e){if(!e)return new Set;if(typeof e=="function")return new Set(e());let t=new Set;for(let n of e.value){let r=E(n);r instanceof HTMLElement&&t.add(r)}return t}var pt=(e=>(e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All",e))(pt||{});let Z=Object.assign(D({name:"FocusTrap",props:{as:{type:[Object,String],default:"div"},initialFocus:{type:Object,default:null},features:{type:Number,default:30},containers:{type:[Object,Function],default:g(new Set)}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){let l=g(null);r({el:l,$el:l});let a=m(()=>z(l)),u=g(!1);O(()=>u.value=!0),j(()=>u.value=!1),nn({ownerDocument:a},m(()=>u.value&&!!(e.features&16)));let o=rn({ownerDocument:a,container:l,initialFocus:m(()=>e.initialFocus)},m(()=>u.value&&!!(e.features&2)));ln({ownerDocument:a,container:l,containers:e.containers,previousActiveElement:o},m(()=>u.value&&!!(e.features&8)));let i=en();function s(p){let f=E(l);f&&(v=>v())(()=>{R(i.value,{[te.Forwards]:()=>{ve(f,x.First,{skipElements:[p.relatedTarget]})},[te.Backwards]:()=>{ve(f,x.Last,{skipElements:[p.relatedTarget]})}})})}let d=g(!1);function h(p){p.key==="Tab"&&(d.value=!0,requestAnimationFrame(()=>{d.value=!1}))}function c(p){if(!u.value)return;let f=ft(e.containers);E(l)instanceof HTMLElement&&f.add(E(l));let v=p.relatedTarget;v instanceof HTMLElement&&v.dataset.headlessuiFocusGuard!=="true"&&(vt(f,v)||(d.value?ve(E(l),R(i.value,{[te.Forwards]:()=>x.Next,[te.Backwards]:()=>x.Previous})|x.WrapAround,{relativeTo:p.target}):p.target instanceof HTMLElement&&_(p.target)))}return()=>{let p={},f={ref:l,onKeydown:h,onFocusout:c},{features:v,initialFocus:w,containers:N,...S}=e;return T(et,[!!(v&4)&&T(Pe,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:s,features:he.Focusable}),B({ourProps:f,theirProps:{...t,...S},slot:p,attrs:t,slots:n,name:"FocusTrap"}),!!(v&4)&&T(Pe,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:s,features:he.Focusable})])}}}),{features:pt});function tn(e){let t=g(V.slice());return K([e],([n],[r])=>{r===!0&&n===!1?He(()=>{t.value.splice(0)}):r===!1&&n===!0&&(t.value=V.slice())},{flush:"post"}),()=>{var n;return(n=t.value.find(r=>r!=null&&r.isConnected))!=null?n:null}}function nn({ownerDocument:e},t){let n=tn(t);O(()=>{C(()=>{var r,l;t.value||((r=e.value)==null?void 0:r.activeElement)===((l=e.value)==null?void 0:l.body)&&_(n())},{flush:"post"})}),j(()=>{t.value&&_(n())})}function rn({ownerDocument:e,container:t,initialFocus:n},r){let l=g(null),a=g(!1);return O(()=>a.value=!0),j(()=>a.value=!1),O(()=>{K([t,n,r],(u,o)=>{if(u.every((s,d)=>o?.[d]===s)||!r.value)return;let i=E(t);i&&He(()=>{var s,d;if(!a.value)return;let h=E(n),c=(s=e.value)==null?void 0:s.activeElement;if(h){if(h===c){l.value=c;return}}else if(i.contains(c)){l.value=c;return}h?_(h):ve(i,x.First|x.NoScroll)===nt.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),l.value=(d=e.value)==null?void 0:d.activeElement})},{immediate:!0,flush:"post"})}),l}function ln({ownerDocument:e,container:t,containers:n,previousActiveElement:r},l){var a;ct((a=e.value)==null?void 0:a.defaultView,"focus",u=>{if(!l.value)return;let o=ft(n);E(t)instanceof HTMLElement&&o.add(E(t));let i=r.value;if(!i)return;let s=u.target;s&&s instanceof HTMLElement?vt(o,s)?(r.value=s,_(s)):(u.preventDefault(),u.stopPropagation(),_(i)):_(r.value)},!0)}function vt(e,t){for(let n of e)if(n.contains(t))return!0;return!1}function an(e){let t=Lt(e.getSnapshot());return j(e.subscribe(()=>{t.value=e.getSnapshot()})),t}function on(e,t){let n=e(),r=new Set;return{getSnapshot(){return n},subscribe(l){return r.add(l),()=>r.delete(l)},dispatch(l,...a){let u=t[l].call(n,...a);u&&(n=u,r.forEach(o=>o()))}}}function un(){let e;return{before({doc:t}){var n;let r=t.documentElement;e=((n=t.defaultView)!=null?n:window).innerWidth-r.clientWidth},after({doc:t,d:n}){let r=t.documentElement,l=r.clientWidth-r.offsetWidth,a=e-l;n.style(r,"paddingRight",`${a}px`)}}}function sn(){return lt()?{before({doc:e,d:t,meta:n}){function r(l){return n.containers.flatMap(a=>a()).some(a=>a.contains(l))}t.microTask(()=>{var l;if(window.getComputedStyle(e.documentElement).scrollBehavior!=="auto"){let o=ne();o.style(e.documentElement,"scrollBehavior","auto"),t.add(()=>t.microTask(()=>o.dispose()))}let a=(l=window.scrollY)!=null?l:window.pageYOffset,u=null;t.addEventListener(e,"click",o=>{if(o.target instanceof HTMLElement)try{let i=o.target.closest("a");if(!i)return;let{hash:s}=new URL(i.href),d=e.querySelector(s);d&&!r(d)&&(u=d)}catch{}},!0),t.addEventListener(e,"touchstart",o=>{if(o.target instanceof HTMLElement)if(r(o.target)){let i=o.target;for(;i.parentElement&&r(i.parentElement);)i=i.parentElement;t.style(i,"overscrollBehavior","contain")}else t.style(o.target,"touchAction","none")}),t.addEventListener(e,"touchmove",o=>{if(o.target instanceof HTMLElement){if(o.target.tagName==="INPUT")return;if(r(o.target)){let i=o.target;for(;i.parentElement&&i.dataset.headlessuiPortal!==""&&!(i.scrollHeight>i.clientHeight||i.scrollWidth>i.clientWidth);)i=i.parentElement;i.dataset.headlessuiPortal===""&&o.preventDefault()}else o.preventDefault()}},{passive:!1}),t.add(()=>{var o;let i=(o=window.scrollY)!=null?o:window.pageYOffset;a!==i&&window.scrollTo(0,a),u&&u.isConnected&&(u.scrollIntoView({block:"nearest"}),u=null)})})}}:{}}function dn(){return{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}}function cn(e){let t={};for(let n of e)Object.assign(t,n(t));return t}let q=on(()=>new Map,{PUSH(e,t){var n;let r=(n=this.get(e))!=null?n:{doc:e,count:0,d:ne(),meta:new Set};return r.count++,r.meta.add(t),this.set(e,r),this},POP(e,t){let n=this.get(e);return n&&(n.count--,n.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:n}){let r={doc:e,d:t,meta:cn(n)},l=[sn(),un(),dn()];l.forEach(({before:a})=>a?.(r)),l.forEach(({after:a})=>a?.(r))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});q.subscribe(()=>{let e=q.getSnapshot(),t=new Map;for(let[n]of e)t.set(n,n.documentElement.style.overflow);for(let n of e.values()){let r=t.get(n.doc)==="hidden",l=n.count!==0;(l&&!r||!l&&r)&&q.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),n.count===0&&q.dispatch("TEARDOWN",n)}});function fn(e,t,n){let r=an(q),l=m(()=>{let a=e.value?r.value.get(e.value):void 0;return a?a.count>0:!1});return K([e,t],([a,u],[o],i)=>{if(!a||!u)return;q.dispatch("PUSH",a,n);let s=!1;i(()=>{s||(q.dispatch("POP",o??a,n),s=!0)})},{immediate:!0}),l}let Fe=new Map,J=new Map;function ze(e,t=g(!0)){C(n=>{var r;if(!t.value)return;let l=E(e);if(!l)return;n(function(){var u;if(!l)return;let o=(u=J.get(l))!=null?u:1;if(o===1?J.delete(l):J.set(l,o-1),o!==1)return;let i=Fe.get(l);i&&(i["aria-hidden"]===null?l.removeAttribute("aria-hidden"):l.setAttribute("aria-hidden",i["aria-hidden"]),l.inert=i.inert,Fe.delete(l))});let a=(r=J.get(l))!=null?r:0;J.set(l,a+1),a===0&&(Fe.set(l,{"aria-hidden":l.getAttribute("aria-hidden"),inert:l.inert}),l.setAttribute("aria-hidden","true"),l.inert=!0)})}function pn({defaultContainers:e=[],portals:t,mainTreeNodeRef:n}={}){let r=g(null),l=z(r);function a(){var u,o,i;let s=[];for(let d of e)d!==null&&(d instanceof HTMLElement?s.push(d):"value"in d&&d.value instanceof HTMLElement&&s.push(d.value));if(t!=null&&t.value)for(let d of t.value)s.push(d);for(let d of(u=l?.querySelectorAll("html > *, body > *"))!=null?u:[])d!==document.body&&d!==document.head&&d instanceof HTMLElement&&d.id!=="headlessui-portal-root"&&(d.contains(E(r))||d.contains((i=(o=E(r))==null?void 0:o.getRootNode())==null?void 0:i.host)||s.some(h=>d.contains(h))||s.push(d));return s}return{resolveContainers:a,contains(u){return a().some(o=>o.contains(u))},mainTreeNodeRef:r,MainTreeNode(){return n!=null?null:T(Pe,{features:he.Hidden,ref:r})}}}let mt=Symbol("ForcePortalRootContext");function vn(){return A(mt,!1)}let Xe=D({name:"ForcePortalRoot",props:{as:{type:[Object,String],default:"template"},force:{type:Boolean,default:!1}},setup(e,{slots:t,attrs:n}){return P(mt,e.force),()=>{let{force:r,...l}=e;return B({theirProps:l,ourProps:{},slot:{},slots:t,attrs:n,name:"ForcePortalRoot"})}}}),ht=Symbol("StackContext");var Ce=(e=>(e[e.Add=0]="Add",e[e.Remove=1]="Remove",e))(Ce||{});function mn(){return A(ht,()=>{})}function hn({type:e,enabled:t,element:n,onUpdate:r}){let l=mn();function a(...u){r?.(...u),l(...u)}O(()=>{K(t,(u,o)=>{u?a(0,e,n):o===!0&&a(1,e,n)},{immediate:!0,flush:"sync"})}),j(()=>{t.value&&a(1,e,n)}),P(ht,a)}let gn=Symbol("DescriptionContext");function yn({slot:e=g({}),name:t="Description",props:n={}}={}){let r=g([]);function l(a){return r.value.push(a),()=>{let u=r.value.indexOf(a);u!==-1&&r.value.splice(u,1)}}return P(gn,{register:l,slot:e,name:t,props:n}),m(()=>r.value.length>0?r.value.join(" "):void 0)}function wn(e){let t=z(e);if(!t){if(e===null)return null;throw new Error(`[Headless UI]: Cannot find ownerDocument for contextElement: ${e}`)}let n=t.getElementById("headlessui-portal-root");if(n)return n;let r=t.createElement("div");return r.setAttribute("id","headlessui-portal-root"),t.body.appendChild(r)}const De=new WeakMap;function bn(e){var t;return(t=De.get(e))!=null?t:0}function Qe(e,t){let n=t(bn(e));return n<=0?De.delete(e):De.set(e,n),n}let En=D({name:"Portal",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){let r=g(null),l=m(()=>z(r)),a=vn(),u=A(gt,null),o=g(a===!0||u==null?wn(r.value):u.resolveTarget());o.value&&Qe(o.value,c=>c+1);let i=g(!1);O(()=>{i.value=!0}),C(()=>{a||u!=null&&(o.value=u.resolveTarget())});let s=A(Ne,null),d=!1,h=Ft();return K(r,()=>{if(d||!s)return;let c=E(r);c&&(j(s.register(c),h),d=!0)}),j(()=>{var c,p;let f=(c=l.value)==null?void 0:c.getElementById("headlessui-portal-root");!f||o.value!==f||Qe(o.value,v=>v-1)||o.value.children.length>0||(p=o.value.parentElement)==null||p.removeChild(o.value)}),()=>{if(!i.value||o.value===null)return null;let c={ref:r,"data-headlessui-portal":""};return T($t,{to:o.value},B({ourProps:c,theirProps:e,slot:{},attrs:n,slots:t,name:"Portal"}))}}}),Ne=Symbol("PortalParentContext");function Tn(){let e=A(Ne,null),t=g([]);function n(a){return t.value.push(a),e&&e.register(a),()=>r(a)}function r(a){let u=t.value.indexOf(a);u!==-1&&t.value.splice(u,1),e&&e.unregister(a)}let l={register:n,unregister:r,portals:t};return[t,D({name:"PortalWrapper",setup(a,{slots:u}){return P(Ne,l),()=>{var o;return(o=u.default)==null?void 0:o.call(u)}}})]}let gt=Symbol("PortalGroupContext"),Sn=D({name:"PortalGroup",props:{as:{type:[Object,String],default:"template"},target:{type:Object,default:null}},setup(e,{attrs:t,slots:n}){let r=Ot({resolveTarget(){return e.target}});return P(gt,r),()=>{let{target:l,...a}=e;return B({theirProps:a,ourProps:{},slot:{},attrs:t,slots:n,name:"PortalGroup"})}}});var Ln=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(Ln||{});let ke=Symbol("DialogContext");function yt(e){let t=A(ke,null);if(t===null){let n=new Error(`<${e} /> is missing a parent <Dialog /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,yt),n}return t}let fe="DC8F892D-2EBD-447C-A4C8-A03058436FF4",$n=D({name:"Dialog",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},open:{type:[Boolean,String],default:fe},initialFocus:{type:Object,default:null},id:{type:String,default:null},role:{type:String,default:"dialog"}},emits:{close:e=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:l}){var a,u;let o=(a=e.id)!=null?a:`headlessui-dialog-${Me()}`,i=g(!1);O(()=>{i.value=!0});let s=!1,d=m(()=>e.role==="dialog"||e.role==="alertdialog"?e.role:(s||(s=!0,console.warn(`Invalid role [${d}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog")),h=g(0),c=je(),p=m(()=>e.open===fe&&c!==null?(c.value&L.Open)===L.Open:e.open),f=g(null),v=m(()=>z(f));if(l({el:f,$el:f}),!(e.open!==fe||c!==null))throw new Error("You forgot to provide an `open` prop to the `Dialog`.");if(typeof p.value!="boolean")throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${p.value===fe?void 0:e.open}`);let w=m(()=>i.value&&p.value?0:1),N=m(()=>w.value===0),S=m(()=>h.value>1),U=A(ke,null)!==null,[le,ae]=Tn(),{resolveContainers:G,mainTreeNodeRef:oe,MainTreeNode:ue}=pn({portals:le,defaultContainers:[m(()=>{var y;return(y=Y.panelRef.value)!=null?y:f.value})]}),ye=m(()=>S.value?"parent":"leaf"),ie=m(()=>c!==null?(c.value&L.Closing)===L.Closing:!1),we=m(()=>U||ie.value?!1:N.value),be=m(()=>{var y,b,$;return($=Array.from((b=(y=v.value)==null?void 0:y.querySelectorAll("body > *"))!=null?b:[]).find(F=>F.id==="headlessui-portal-root"?!1:F.contains(E(oe))&&F instanceof HTMLElement))!=null?$:null});ze(be,we);let k=m(()=>S.value?!0:N.value),X=m(()=>{var y,b,$;return($=Array.from((b=(y=v.value)==null?void 0:y.querySelectorAll("[data-headlessui-portal]"))!=null?b:[]).find(F=>F.contains(E(oe))&&F instanceof HTMLElement))!=null?$:null});ze(X,k),hn({type:"Dialog",enabled:m(()=>w.value===0),element:f,onUpdate:(y,b)=>{if(b==="Dialog")return R(y,{[Ce.Add]:()=>h.value+=1,[Ce.Remove]:()=>h.value-=1})}});let H=yn({name:"DialogDescription",slot:m(()=>({open:p.value}))}),M=g(null),Y={titleId:M,panelRef:g(null),dialogState:w,setTitleId(y){M.value!==y&&(M.value=y)},close(){t("close",!1)}};P(ke,Y);let Ie=m(()=>!(!N.value||S.value));zt(G,(y,b)=>{y.preventDefault(),Y.close(),At(()=>b?.focus())},Ie);let Ue=m(()=>!(S.value||w.value!==0));ct((u=v.value)==null?void 0:u.defaultView,"keydown",y=>{Ue.value&&(y.defaultPrevented||y.key===dt.Escape&&(y.preventDefault(),y.stopPropagation(),Y.close()))});let We=m(()=>!(ie.value||w.value!==0||U));return fn(v,We,y=>{var b;return{containers:[...(b=y.containers)!=null?b:[],G]}}),C(y=>{if(w.value!==0)return;let b=E(f);if(!b)return;let $=new ResizeObserver(F=>{for(let Ee of F){let se=Ee.target.getBoundingClientRect();se.x===0&&se.y===0&&se.width===0&&se.height===0&&Y.close()}});$.observe(b),y(()=>$.disconnect())}),()=>{let{open:y,initialFocus:b,...$}=e,F={...n,ref:f,id:o,role:d.value,"aria-modal":w.value===0?!0:void 0,"aria-labelledby":M.value,"aria-describedby":H.value},Ee={open:w.value===0};return T(Xe,{force:!0},()=>[T(En,()=>T(Sn,{target:f.value},()=>T(Xe,{force:!1},()=>T(Z,{initialFocus:b,containers:G,features:N.value?R(ye.value,{parent:Z.features.RestoreFocus,leaf:Z.features.All&~Z.features.FocusLock}):Z.features.None},()=>T(ae,{},()=>B({ourProps:F,theirProps:{...$,...n},slot:Ee,attrs:n,slots:r,visible:w.value===0,features:me.RenderStrategy|me.Static,name:"Dialog"})))))),T(ue)])}}}),Fn=D({name:"DialogPanel",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var l;let a=(l=e.id)!=null?l:`headlessui-dialog-panel-${Me()}`,u=yt("DialogPanel");r({el:u.panelRef,$el:u.panelRef});function o(i){i.stopPropagation()}return()=>{let{...i}=e,s={id:a,ref:u.panelRef,onClick:o};return B({ourProps:s,theirProps:i,slot:{open:u.dialogState.value===0},attrs:t,slots:n,name:"DialogPanel"})}}});function On(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function Oe(e,...t){e&&t.length>0&&e.classList.add(...t)}function pe(e,...t){e&&t.length>0&&e.classList.remove(...t)}var Re=(e=>(e.Finished="finished",e.Cancelled="cancelled",e))(Re||{});function An(e,t){let n=ne();if(!e)return n.dispose;let{transitionDuration:r,transitionDelay:l}=getComputedStyle(e),[a,u]=[r,l].map(o=>{let[i=0]=o.split(",").filter(Boolean).map(s=>s.includes("ms")?parseFloat(s):parseFloat(s)*1e3).sort((s,d)=>d-s);return i});return a!==0?n.setTimeout(()=>t("finished"),a+u):t("finished"),n.add(()=>t("cancelled")),n.dispose}function Ze(e,t,n,r,l,a){let u=ne(),o=a!==void 0?On(a):()=>{};return pe(e,...l),Oe(e,...t,...n),u.nextFrame(()=>{pe(e,...n),Oe(e,...r),u.add(An(e,i=>(pe(e,...r,...t),Oe(e,...l),o(i))))}),u.add(()=>pe(e,...t,...n,...r,...l)),u.add(()=>o("cancelled")),u.dispose}function W(e=""){return e.split(/\s+/).filter(t=>t.length>1)}let Be=Symbol("TransitionContext");var Pn=(e=>(e.Visible="visible",e.Hidden="hidden",e))(Pn||{});function Cn(){return A(Be,null)!==null}function Dn(){let e=A(Be,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}function Nn(){let e=A(xe,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}let xe=Symbol("NestingContext");function ge(e){return"children"in e?ge(e.children):e.value.filter(({state:t})=>t==="visible").length>0}function wt(e){let t=g([]),n=g(!1);O(()=>n.value=!0),j(()=>n.value=!1);function r(a,u=I.Hidden){let o=t.value.findIndex(({id:i})=>i===a);o!==-1&&(R(u,{[I.Unmount](){t.value.splice(o,1)},[I.Hidden](){t.value[o].state="hidden"}}),!ge(t)&&n.value&&e?.())}function l(a){let u=t.value.find(({id:o})=>o===a);return u?u.state!=="visible"&&(u.state="visible"):t.value.push({id:a,state:"visible"}),()=>r(a,I.Unmount)}return{children:t,register:l,unregister:r}}let bt=me.RenderStrategy,Et=D({props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:l}){let a=g(0);function u(){a.value|=L.Opening,t("beforeEnter")}function o(){a.value&=~L.Opening,t("afterEnter")}function i(){a.value|=L.Closing,t("beforeLeave")}function s(){a.value&=~L.Closing,t("afterLeave")}if(!Cn()&&Qt())return()=>T(Tt,{...e,onBeforeEnter:u,onAfterEnter:o,onBeforeLeave:i,onAfterLeave:s},r);let d=g(null),h=m(()=>e.unmount?I.Unmount:I.Hidden);l({el:d,$el:d});let{show:c,appear:p}=Dn(),{register:f,unregister:v}=Nn(),w=g(c.value?"visible":"hidden"),N={value:!0},S=Me(),U={value:!1},le=wt(()=>{!U.value&&w.value!=="hidden"&&(w.value="hidden",v(S),s())});O(()=>{let k=f(S);j(k)}),C(()=>{if(h.value===I.Hidden&&S){if(c.value&&w.value!=="visible"){w.value="visible";return}R(w.value,{hidden:()=>v(S),visible:()=>f(S)})}});let ae=W(e.enter),G=W(e.enterFrom),oe=W(e.enterTo),ue=W(e.entered),ye=W(e.leave),ie=W(e.leaveFrom),we=W(e.leaveTo);O(()=>{C(()=>{if(w.value==="visible"){let k=E(d);if(k instanceof Comment&&k.data==="")throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function be(k){let X=N.value&&!p.value,H=E(d);!H||!(H instanceof HTMLElement)||X||(U.value=!0,c.value&&u(),c.value||i(),k(c.value?Ze(H,ae,G,oe,ue,M=>{U.value=!1,M===Re.Finished&&o()}):Ze(H,ye,ie,we,ue,M=>{U.value=!1,M===Re.Finished&&(ge(le)||(w.value="hidden",v(S),s()))})))}return O(()=>{K([c],(k,X,H)=>{be(H),N.value=!1},{immediate:!0})}),P(xe,le),Zt(m(()=>R(w.value,{visible:L.Open,hidden:L.Closed})|a.value)),()=>{let{appear:k,show:X,enter:H,enterFrom:M,enterTo:Y,entered:Ie,leave:Ue,leaveFrom:We,leaveTo:y,...b}=e,$={ref:d},F={...b,...p.value&&c.value&&re.isServer?{class:ee([n.class,b.class,...ae,...G])}:{}};return B({theirProps:F,ourProps:$,slot:{},slots:r,attrs:n,features:bt,visible:w.value==="visible",name:"TransitionChild"})}}}),kn=Et,Tt=D({inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r}){let l=je(),a=m(()=>e.show===null&&l!==null?(l.value&L.Open)===L.Open:e.show);C(()=>{if(![!0,!1].includes(a.value))throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.')});let u=g(a.value?"visible":"hidden"),o=wt(()=>{u.value="hidden"}),i=g(!0),s={show:a,appear:m(()=>e.appear||!i.value)};return O(()=>{C(()=>{i.value=!1,a.value?u.value="visible":ge(o)||(u.value="hidden")})}),P(xe,o),P(Be,s),()=>{let d=it(e,["show","appear","unmount","onBeforeEnter","onBeforeLeave","onAfterEnter","onAfterLeave"]),h={unmount:e.unmount};return B({ourProps:{...h,as:"template"},theirProps:{},slot:{},slots:{...r,default:()=>[T(kn,{onBeforeEnter:()=>t("beforeEnter"),onAfterEnter:()=>t("afterEnter"),onBeforeLeave:()=>t("beforeLeave"),onAfterLeave:()=>t("afterLeave"),...n,...h,...d},r.default)]},attrs:{},features:bt,visible:u.value==="visible",name:"Transition"})}}});const Rn=Dt(qe.ui.strategy,qe.ui.modal,Rt),Hn=D({components:{HDialog:$n,HDialogPanel:Fn,TransitionRoot:Tt,TransitionChild:Et},inheritAttrs:!1,props:{modelValue:{type:Boolean,default:!1},appear:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0},transition:{type:Boolean,default:!0},preventClose:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","close","close-prevented","after-leave"],setup(e,{emit:t}){const{ui:n,attrs:r}=Nt("modal",Ge(e,"ui"),Rn,Ge(e,"class")),l=m({get(){return e.modelValue},set(i){t("update:modelValue",i)}}),a=m(()=>e.transition?{...n.value.transition}:{});function u(i){if(e.preventClose){t("close-prevented");return}l.value=i,t("close")}const o=()=>{t("after-leave")};return Mt(()=>Je()),{ui:n,attrs:r,isOpen:l,transitionClass:a,onAfterLeave:o,close:u}}});function Mn(e,t,n,r,l,a){const u=de("TransitionChild"),o=de("HDialogPanel"),i=de("HDialog"),s=de("TransitionRoot");return _e(),Ve(s,{appear:e.appear,show:e.isOpen,as:"template",onAfterLeave:e.onAfterLeave},{default:Q(()=>[Te(i,Se({class:e.ui.wrapper},e.attrs,{onClose:e.close}),{default:Q(()=>[e.overlay?(_e(),Ve(u,Se({key:0,as:"template",appear:e.appear},e.ui.overlay.transition,{class:e.ui.overlay.transition.enterFrom}),{default:Q(()=>[Le("div",{class:ee([e.ui.overlay.base,e.ui.overlay.background])},null,2)]),_:1},16,["appear","class"])):Pt("",!0),Le("div",{class:ee(e.ui.inner)},[Le("div",{class:ee([e.ui.container,!e.fullscreen&&e.ui.padding])},[Te(u,Se({as:"template",appear:e.appear},e.transitionClass,{class:e.transitionClass.enterFrom}),{default:Q(()=>[Te(o,{class:ee([e.ui.base,e.ui.background,e.ui.ring,e.ui.shadow,e.fullscreen?e.ui.fullscreen:[e.ui.width,e.ui.height,e.ui.rounded,e.ui.margin]])},{default:Q(()=>[Ct(e.$slots,"default")]),_:3},8,["class"])]),_:3},16,["appear","class"])],2)],2)]),_:3},16,["class","onClose"])]),_:3},8,["appear","show","onAfterLeave"])}const Wn=kt(Hn,[["render",Mn]]);export{B as A,Un as E,me as N,Gt as O,it as T,Wn as _,Me as a,L as b,E as c,dt as d,Zt as e,Pe as f,he as g,rt as h,z as i,Wt as j,je as l,Kt as n,ne as o,Mt as s,V as t,R as u,zt as w};
@@ -0,0 +1 @@
1
+ import{_ as v}from"./BGkU0f28.js";import{a as b}from"./6wLLp9Nc.js";import{_ as V}from"./C1xk3ymy.js";import{m as h,ah as w,ai as C,M as I,j as _,l as i,ao as a,X as p,R as f,g as s,aq as N,w as B,ab as r,a4 as K,i as R,k as u}from"./CnXdKLRd.js";import{_ as S}from"./DlAUqK2U.js";import"./mHp9eItY.js";import"./yqBy-NAR.js";import"./Cz9dogwK.js";const T={class:"login-wrap"},U={class:"space-y-3"},q={key:0,class:"text-sm text-red-500"},c="aidev-ui-token",E=h({__name:"login",setup(M){const x=w(),m=C(),t=p(""),l=p("");I(()=>{const o=x.query.token,e=typeof o=="string"?o:"";if(e){localStorage.setItem(c,e),m.replace("/");return}const n=localStorage.getItem(c);n&&(t.value=n)});function d(){const o=t.value.trim();if(!o){l.value="Token is required";return}localStorage.setItem(c,o),m.replace("/")}return(o,e)=>{const n=v,g=b,k=V;return f(),_("div",T,[i(k,{class:"login-card"},{header:a(()=>[...e[1]||(e[1]=[s("h1",{class:"text-xl font-semibold"},"aidev login",-1),s("p",{class:"text-sm text-gray-500"},[u(" Paste the token printed by "),s("code",null,"aidev ui"),u(" in your terminal. ")],-1)])]),footer:a(()=>[i(g,{block:"",disabled:!r(t),onClick:d},{default:a(()=>[...e[2]||(e[2]=[u(" Continue ",-1)])]),_:1},8,["disabled"])]),default:a(()=>[s("div",U,[i(n,{modelValue:r(t),"onUpdate:modelValue":e[0]||(e[0]=y=>B(t)?t.value=y:null),placeholder:"32-byte hex token",autocomplete:"off",ui:{base:"font-mono"},onKeydown:N(d,["enter"])},null,8,["modelValue"]),r(l)?(f(),_("p",q,K(r(l)),1)):R("",!0)])]),_:1})])}}}),A=S(E,[["__scopeId","data-v-4199ecb4"]]);export{A as default};
@@ -1,5 +1,5 @@
1
- import{a as H}from"./Ceb2855t.js";import{_ as G}from"./C2WdrjFS.js";import{_ as Q}from"./DihqGT4A.js";import{u as Y}from"./BtD1YBwM.js";import{l as X,ac as Z,L as ee,K as te,O as b,i as T,k as A,ai as w,a6 as s,g as z,h as L,f as r,F as ne,W as ae,j as x,a1 as S,D as se,e as E,V as p,C as le,ae as re}from"./MzK2TZ-I.js";import{_ as oe}from"./DlAUqK2U.js";import"./B8sr5ZW-.js";import"./BAs1isOw.js";const ue={class:"run-page"},ie={class:"flex items-center justify-between gap-3 flex-wrap"},ce={class:"text-xs text-gray-500 mt-1"},de={class:"actions"},fe={class:"status-bar"},ve={class:"status-text"},pe={key:2,class:"empty"},me="aidev-ui-token",ge=X({__name:"run",setup(_e){const V=Y(),D=Z(),I=re(),K=E(()=>I.public.aidevCwd),O=[{value:"open",label:"Open",color:"primary"},{value:"pending",label:"Pending",color:"sky"},{value:"review",label:"Review",color:"amber"},{value:"all",label:"All",color:"gray"}],m=p([]),l=p(!1),o=p(!1),u=p(null),g=p(null),i=p(""),R=p(null);let c=null;const P=E(()=>m.value.join(`
2
- `)),U=E(()=>l.value?"running":i.value?"error":g.value?g.value.code===0?"done":"failed":"idle"),W=E(()=>{if(l.value&&u.value)return`Running aidev run ${u.value}…`;if(g.value){const{code:t,signal:e,durationMs:n}=g.value,a=B(n);return e?`Terminated by signal ${e} after ${a}`:`Exited with code ${t??"null"} after ${a}`}return"Idle"});function B(t){if(t<1e3)return`${t}ms`;const e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),a=Math.round(e-n*60);return`${n}m ${a}s`}function _(t,e){m.value.push(t?`${t} ${e}`:e),le(()=>{const n=R.value;n&&(n.scrollTop=n.scrollHeight)})}function F(t,e){if(t==="stdout")_("",e);else if(t==="stderr")_("[stderr]",e);else if(t==="exit"){try{const n=JSON.parse(e);g.value=n;const a=B(n.durationMs);_("",`--- exit code ${n.code??"null"}${n.signal?`, signal ${n.signal}`:""} (${a}) ---`)}catch{_("",`--- exit ${e} ---`)}l.value=!1,u.value=null,o.value=!1}else t==="error"&&(_("[error]",e||"unknown error"),l.value=!1,u.value=null,o.value=!1)}async function M(t){if(l.value)return;const e=localStorage.getItem(me);if(!e){i.value="Not authenticated — refresh and log in again.";return}i.value="",m.value=[],g.value=null,l.value=!0,u.value=t;const n=new AbortController;c=n;try{const a=await fetch("/api/run",{method:"POST",headers:{Authorization:`Bearer ${e}`,Accept:"text/event-stream","Content-Type":"application/json"},body:JSON.stringify({status:t}),signal:n.signal});if(!a.ok||!a.body){const h=await a.text().catch(()=>"");let C=h;try{const v=JSON.parse(h);C=v.statusMessage||v.message||h}catch{}i.value=`HTTP ${a.status}: ${C||a.statusText}`,l.value=!1,u.value=null,c===n&&(c=null);return}const N=a.body.getReader(),d=new TextDecoder("utf-8");let f="",$="message",k=[];const j=()=>{k.length===0&&$==="message"||(F($,k.join(`
1
+ import{a as H}from"./6wLLp9Nc.js";import{_ as Y}from"./CdHqKVo4.js";import{_ as G}from"./C1xk3ymy.js";import{u as Q}from"./G5BjvTWO.js";import{m as X,ah as Z,M as ee,L as te,R as b,j as T,l as A,ao as w,ab as s,h as z,i as L,g as r,F as ne,Y as ae,k as x,a4 as S,E as se,f as E,X as p,D as le,aj as re}from"./CnXdKLRd.js";import{_ as oe}from"./DlAUqK2U.js";import"./yqBy-NAR.js";import"./Cz9dogwK.js";const ue={class:"run-page"},ie={class:"flex items-center justify-between gap-3 flex-wrap"},ce={class:"text-xs text-gray-500 mt-1"},de={class:"actions"},fe={class:"status-bar"},ve={class:"status-text"},pe={key:2,class:"empty"},me="aidev-ui-token",ge=X({__name:"run",setup(_e){const D=Q(),I=Z(),P=re(),U=E(()=>P.public.aidevCwd),R=[{value:"open",label:"Open",color:"primary"},{value:"pending",label:"Pending",color:"sky"},{value:"review",label:"Review",color:"amber"},{value:"all",label:"All",color:"gray"}],m=p([]),l=p(!1),o=p(!1),u=p(null),g=p(null),i=p(""),O=p(null);let c=null;const V=E(()=>m.value.join(`
2
+ `)),F=E(()=>l.value?"running":i.value?"error":g.value?g.value.code===0?"done":"failed":"idle"),J=E(()=>{if(l.value&&u.value)return`Running aidev run ${u.value}…`;if(g.value){const{code:t,signal:e,durationMs:n}=g.value,a=M(n);return e?`Terminated by signal ${e} after ${a}`:`Exited with code ${t??"null"} after ${a}`}return"Idle"});function M(t){if(t<1e3)return`${t}ms`;const e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;const n=Math.floor(e/60),a=Math.round(e-n*60);return`${n}m ${a}s`}function _(t,e){m.value.push(t?`${t} ${e}`:e),le(()=>{const n=O.value;n&&(n.scrollTop=n.scrollHeight)})}function K(t,e){if(t==="stdout")_("",e);else if(t==="stderr")_("[stderr]",e);else if(t==="exit"){try{const n=JSON.parse(e);g.value=n;const a=M(n.durationMs);_("",`--- exit code ${n.code??"null"}${n.signal?`, signal ${n.signal}`:""} (${a}) ---`)}catch{_("",`--- exit ${e} ---`)}l.value=!1,u.value=null,o.value=!1}else t==="error"&&(_("[error]",e||"unknown error"),l.value=!1,u.value=null,o.value=!1)}async function B(t){if(l.value)return;const e=localStorage.getItem(me);if(!e){i.value="Not authenticated — refresh and log in again.";return}i.value="",m.value=[],g.value=null,l.value=!0,u.value=t;const n=new AbortController;c=n;try{const a=await fetch("/api/run",{method:"POST",headers:{Authorization:`Bearer ${e}`,Accept:"text/event-stream","Content-Type":"application/json"},body:JSON.stringify({status:t}),signal:n.signal});if(!a.ok||!a.body){const h=await a.text().catch(()=>"");let C=h;try{const v=JSON.parse(h);C=v.statusMessage||v.message||h}catch{}i.value=`HTTP ${a.status}: ${C||a.statusText}`,l.value=!1,u.value=null,c===n&&(c=null);return}const N=a.body.getReader(),d=new TextDecoder("utf-8");let f="",$="message",k=[];const j=()=>{k.length===0&&$==="message"||(K($,k.join(`
3
3
  `)),$="message",k=[])};for(;;){const{value:h,done:C}=await N.read();if(C)break;f+=d.decode(h,{stream:!0});let v=f.indexOf(`
4
4
  `);for(;v!==-1;){const y=f.slice(0,v).replace(/\r$/,"");f=f.slice(v+1),y===""?j():y.startsWith(":")||(y.startsWith("event:")?$=y.slice(6).trim()||"message":y.startsWith("data:")&&k.push(y.slice(5).replace(/^ /,""))),v=f.indexOf(`
5
- `)}}j()}catch(a){a?.name!=="AbortError"&&(i.value=a instanceof Error?a.message:String(a))}finally{l.value=!1,u.value=null,o.value=!1,c===n&&(c=null)}}async function J(){if(!(!l.value||o.value)){o.value=!0;try{await V("/api/run/cancel",{method:"POST"}),_("","--- cancel requested (SIGTERM) ---")}catch(t){o.value=!1,i.value=t instanceof Error?t.message:String(t)}}}function q(t){const e=Array.isArray(t)?t[0]:t;return typeof e!="string"||!e?null:O.some(n=>n.value===e)?e:null}return ee(()=>{const t=q(D.query.autorun);t&&M(t)}),te(()=>{c&&(c.abort(),c=null)}),(t,e)=>{const n=H,a=G,N=Q;return b(),T("div",ue,[A(N,null,{header:w(()=>[r("div",ie,[r("div",null,[e[5]||(e[5]=r("h1",{class:"text-lg font-semibold"},"Run",-1)),r("p",ce,[e[1]||(e[1]=x(" Spawns ",-1)),e[2]||(e[2]=r("code",null,"aidev run <status>",-1)),e[3]||(e[3]=x(" in ",-1)),r("code",null,S(s(K)||"—"),1),e[4]||(e[4]=x(" and streams output live below. ",-1))])]),s(m).length>0&&!s(l)?(b(),z(n,{key:0,size:"xs",color:"gray",variant:"ghost",onClick:e[0]||(e[0]=d=>m.value=[])},{default:w(()=>[...e[6]||(e[6]=[x(" Clear output ",-1)])]),_:1})):L("",!0)])]),default:w(()=>[s(i)?(b(),z(a,{key:0,color:"red",variant:"soft",title:s(i),class:"mb-3"},null,8,["title"])):L("",!0),r("div",de,[(b(),T(ne,null,ae(O,d=>A(n,{key:d.value,size:"md",color:d.color,loading:s(l)&&s(u)===d.value,disabled:s(l),class:"action-btn",onClick:f=>M(d.value)},{default:w(()=>[x(S(d.label),1)]),_:2},1032,["color","loading","disabled","onClick"])),64)),A(n,{size:"md",color:"red",variant:"soft",disabled:!s(l)||s(o),loading:s(o),class:"cancel-btn",onClick:J},{default:w(()=>[...e[7]||(e[7]=[x(" Cancel ",-1)])]),_:1},8,["disabled","loading"])]),r("div",fe,[r("span",{class:se(["status-dot",`status-dot--${s(U)}`])},null,2),r("span",ve,S(s(W)),1)]),s(m).length>0?(b(),T("pre",{key:1,ref_key:"viewer",ref:R,class:"viewer"},[r("code",null,S(s(P)),1)],512)):(b(),T("p",pe,"No output yet. Click a status above to start a run."))]),_:1})])}}}),Te=oe(ge,[["__scopeId","data-v-17b51f8f"]]);export{Te as default};
5
+ `)}}j()}catch(a){a?.name!=="AbortError"&&(i.value=a instanceof Error?a.message:String(a))}finally{l.value=!1,u.value=null,o.value=!1,c===n&&(c=null)}}async function W(){if(!(!l.value||o.value)){o.value=!0;try{await D("/api/run/cancel",{method:"POST"}),_("","--- cancel requested (SIGTERM) ---")}catch(t){o.value=!1,i.value=t instanceof Error?t.message:String(t)}}}function q(t){const e=Array.isArray(t)?t[0]:t;return typeof e!="string"||!e?null:R.some(n=>n.value===e)?e:null}return ee(()=>{const t=q(I.query.autorun);t&&B(t)}),te(()=>{c&&(c.abort(),c=null)}),(t,e)=>{const n=H,a=Y,N=G;return b(),T("div",ue,[A(N,null,{header:w(()=>[r("div",ie,[r("div",null,[e[5]||(e[5]=r("h1",{class:"text-lg font-semibold"},"Run",-1)),r("p",ce,[e[1]||(e[1]=x(" Spawns ",-1)),e[2]||(e[2]=r("code",null,"aidev run <status>",-1)),e[3]||(e[3]=x(" in ",-1)),r("code",null,S(s(U)||"—"),1),e[4]||(e[4]=x(" and streams output live below. ",-1))])]),s(m).length>0&&!s(l)?(b(),z(n,{key:0,size:"xs",color:"gray",variant:"ghost",onClick:e[0]||(e[0]=d=>m.value=[])},{default:w(()=>[...e[6]||(e[6]=[x(" Clear output ",-1)])]),_:1})):L("",!0)])]),default:w(()=>[s(i)?(b(),z(a,{key:0,color:"red",variant:"soft",title:s(i),class:"mb-3"},null,8,["title"])):L("",!0),r("div",de,[(b(),T(ne,null,ae(R,d=>A(n,{key:d.value,size:"md",color:d.color,loading:s(l)&&s(u)===d.value,disabled:s(l),class:"action-btn",onClick:f=>B(d.value)},{default:w(()=>[x(S(d.label),1)]),_:2},1032,["color","loading","disabled","onClick"])),64)),A(n,{size:"md",color:"red",variant:"soft",disabled:!s(l)||s(o),loading:s(o),class:"cancel-btn",onClick:W},{default:w(()=>[...e[7]||(e[7]=[x(" Cancel ",-1)])]),_:1},8,["disabled","loading"])]),r("div",fe,[r("span",{class:se(["status-dot",`status-dot--${s(F)}`])},null,2),r("span",ve,S(s(J)),1)]),s(m).length>0?(b(),T("pre",{key:1,ref_key:"viewer",ref:O,class:"viewer"},[r("code",null,S(s(V)),1)],512)):(b(),T("p",pe,"No output yet. Click a status above to start a run."))]),_:1})])}}}),Te=oe(ge,[["__scopeId","data-v-17b51f8f"]]);export{Te as default};
@@ -0,0 +1 @@
1
+ import{_ as v}from"./Cz9dogwK.js";import{a as g}from"./6wLLp9Nc.js";import{c as k}from"./G5BjvTWO.js";import{m as h,ai as w,j as e,g as o,F as x,Y as C,ab as l,a4 as t,l as c,ao as i,Z as B,k as L,f as N,R as r,aj as R}from"./CnXdKLRd.js";import{_ as y}from"./DlAUqK2U.js";import"./yqBy-NAR.js";const S={class:"app-shell"},T={class:"sidebar"},V={class:"nav-icon","aria-hidden":"true"},j={class:"main"},D={class:"topbar"},F=["title"],z={class:"cwd-value"},A={class:"content"},E=h({__name:"default",setup(H){const d=w(),_=R(),n=N(()=>_.public.aidevCwd),u=[{to:"/",label:"Dashboard",icon:"◇"},{to:"/config",label:"Config",icon:"⚙"},{to:"/schedule",label:"Schedule",icon:"⏱"},{to:"/logs",label:"Logs",icon:"≡"},{to:"/tasks",label:"Tasks",icon:"☰"},{to:"/run",label:"Run",icon:"▶"},{to:"/hooks",label:"Hooks",icon:"⚡"}];function p(){k(),d.replace("/login")}return(m,s)=>{const f=v,b=g;return r(),e("div",S,[o("aside",T,[s[0]||(s[0]=o("div",{class:"brand"},[o("span",{class:"brand-mark"},"aidev"),o("span",{class:"brand-sub"},"dashboard")],-1)),o("nav",null,[(r(),e(x,null,C(u,a=>c(f,{key:a.to,to:a.to,class:"nav-link","active-class":"nav-link--active"},{default:i(()=>[o("span",V,t(a.icon),1),o("span",null,t(a.label),1)]),_:2},1032,["to"])),64))])]),o("div",j,[o("header",D,[o("div",{class:"cwd",title:l(n)},[s[1]||(s[1]=o("span",{class:"cwd-label"},"cwd",-1)),o("code",z,t(l(n)||"—"),1)],8,F),c(b,{size:"sm",color:"gray",variant:"ghost",onClick:p},{default:i(()=>[...s[2]||(s[2]=[L(" Logout ",-1)])]),_:1})]),o("main",A,[B(m.$slots,"default",{},void 0,!0)])])])}}}),G=y(E,[["__scopeId","data-v-7155b15d"]]);export{G as default};
@@ -0,0 +1 @@
1
+ import{h as l,ao as g,j as r,Z as o,E as d,i,B as p,a1 as c,m as f,f as b,A as m,c as u,R as s,a6 as y,aa as k,a9 as v}from"./CnXdKLRd.js";import{d as h}from"./6wLLp9Nc.js";import{_ as $}from"./DlAUqK2U.js";const C={base:"",background:"bg-white dark:bg-gray-900",divide:"divide-y divide-gray-200 dark:divide-gray-800",ring:"ring-1 ring-gray-200 dark:ring-gray-800",rounded:"rounded-lg",shadow:"shadow",body:{base:"",background:"",padding:"px-4 py-5 sm:p-6"},header:{base:"",background:"",padding:"px-4 py-5 sm:px-6"},footer:{base:"",background:"",padding:"px-4 py-4 sm:px-6"}},w=m(u.ui.strategy,u.ui.card,C),B=f({inheritAttrs:!1,props:{as:{type:String,default:"div"},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(a){const{ui:e,attrs:n}=h("card",y(a,"ui"),w),t=b(()=>k(v(e.value.base,e.value.rounded,e.value.divide,e.value.ring,e.value.shadow,e.value.background),a.class));return{ui:e,attrs:n,cardClass:t}}});function S(a,e,n,t,j,A){return s(),l(c(a.$attrs.onSubmit?"form":a.as),p({class:a.cardClass},a.attrs),{default:g(()=>[a.$slots.header?(s(),r("div",{key:0,class:d([a.ui.header.base,a.ui.header.padding,a.ui.header.background])},[o(a.$slots,"header")],2)):i("",!0),a.$slots.default?(s(),r("div",{key:1,class:d([a.ui.body.base,a.ui.body.padding,a.ui.body.background])},[o(a.$slots,"default")],2)):i("",!0),a.$slots.footer?(s(),r("div",{key:2,class:d([a.ui.footer.base,a.ui.footer.padding,a.ui.footer.background])},[o(a.$slots,"footer")],2)):i("",!0)]),_:3},16,["class"])}const z=$(B,[["render",S]]);export{z as _};
@@ -0,0 +1,11 @@
1
+ function j(e,n){(n==null||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function C(e){if(Array.isArray(e))return e}function D(e,n,t){return(n=F(n))in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function q(e,n){var t=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(t!=null){var r,o,i,c,u=[],a=!0,f=!1;try{if(i=(t=t.call(e)).next,n!==0)for(;!(a=(r=i.call(t)).done)&&(u.push(r.value),u.length!==n);a=!0);}catch(h){f=!0,o=h}finally{try{if(!a&&t.return!=null&&(c=t.return(),Object(c)!==c))return}finally{if(f)throw o}}return u}}function R(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function O(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),t.push.apply(t,r)}return t}function w(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?O(Object(t),!0).forEach(function(r){D(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):O(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function z(e,n){if(e==null)return{};var t,r,o=L(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)t=i[r],n.indexOf(t)===-1&&{}.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}function L(e,n){if(e==null)return{};var t={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(n.indexOf(r)!==-1)continue;t[r]=e[r]}return t}function M(e,n){return C(e)||q(e,n)||H(e,n)||R()}function x(e,n){if(typeof e!="object"||!e)return e;var t=e[Symbol.toPrimitive];if(t!==void 0){var r=t.call(e,n);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(e)}function F(e){var n=x(e,"string");return typeof n=="symbol"?n:n+""}function H(e,n){if(e){if(typeof e=="string")return j(e,n);var t={}.toString.call(e).slice(8,-1);return t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set"?Array.from(e):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?j(e,n):void 0}}function K(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function P(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),t.push.apply(t,r)}return t}function S(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?P(Object(t),!0).forEach(function(r){K(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):P(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function N(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return function(r){return n.reduceRight(function(o,i){return i(o)},r)}}function s(e){return function n(){for(var t=this,r=arguments.length,o=new Array(r),i=0;i<r;i++)o[i]=arguments[i];return o.length>=e.length?e.apply(this,o):function(){for(var c=arguments.length,u=new Array(c),a=0;a<c;a++)u[a]=arguments[a];return n.apply(t,[].concat(o,u))}}}function g(e){return{}.toString.call(e).includes("Object")}function U(e){return!Object.keys(e).length}function d(e){return typeof e=="function"}function W(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function B(e,n){return g(n)||l("changeType"),Object.keys(n).some(function(t){return!W(e,t)})&&l("changeField"),n}function G(e){d(e)||l("selectorType")}function Y(e){d(e)||g(e)||l("handlerType"),g(e)&&Object.values(e).some(function(n){return!d(n)})&&l("handlersType")}function J(e){e||l("initialIsRequired"),g(e)||l("initialType"),U(e)&&l("initialContent")}function Q(e,n){throw new Error(e[n]||e.default)}var V={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},l=s(Q)(V),v={changes:B,selector:G,handler:Y,initial:J};function X(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};v.initial(e),v.handler(n);var t={current:e},r=s(k)(t,n),o=s(_)(t),i=s(v.changes)(e),c=s(Z)(t);function u(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(h){return h};return v.selector(f),f(t.current)}function a(f){N(r,o,i,c)(f)}return[u,a]}function Z(e,n){return d(n)?n(e.current):n}function _(e,n){return e.current=S(S({},e.current),n),n}function k(e,n,t){return d(n)?n(e.current):Object.keys(t).forEach(function(r){var o;return(o=n[r])===null||o===void 0?void 0:o.call(n,e.current[r])}),t}var ee={create:X},ne={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs"}};function te(e){return function n(){for(var t=this,r=arguments.length,o=new Array(r),i=0;i<r;i++)o[i]=arguments[i];return o.length>=e.length?e.apply(this,o):function(){for(var c=arguments.length,u=new Array(c),a=0;a<c;a++)u[a]=arguments[a];return n.apply(t,[].concat(o,u))}}}function re(e){return{}.toString.call(e).includes("Object")}function oe(e){return e||I("configIsRequired"),re(e)||I("configType"),e.urls?(ie(),{paths:{vs:e.urls.monacoBase}}):e}function ie(){console.warn(T.deprecation)}function ae(e,n){throw new Error(e[n]||e.default)}var T={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
3
+ You are using deprecated way of configuration.
4
+
5
+ Instead of using
6
+ monaco.config({ urls: { monacoBase: '...' } })
7
+ use
8
+ monaco.config({ paths: { vs: '...' } })
9
+
10
+ For more please check the link https://github.com/suren-atoyan/monaco-loader#config
11
+ `},I=te(ae)(T),ce={config:oe},ue=function(){for(var n=arguments.length,t=new Array(n),r=0;r<n;r++)t[r]=arguments[r];return function(o){return t.reduceRight(function(i,c){return c(i)},o)}};function A(e,n){return Object.keys(n).forEach(function(t){n[t]instanceof Object&&e[t]&&Object.assign(n[t],A(e[t],n[t]))}),w(w({},e),n)}var le={type:"cancelation",msg:"operation is manually canceled"};function b(e){var n=!1,t=new Promise(function(r,o){e.then(function(i){return n?o(le):r(i)}),e.catch(o)});return t.cancel=function(){return n=!0},t}var fe=["monaco"],se=ee.create({config:ne,isInitialized:!1,resolve:null,reject:null,monaco:null}),E=M(se,2),p=E[0],m=E[1];function de(e){var n=ce.config(e),t=n.monaco,r=z(n,fe);m(function(o){return{config:A(o.config,r),monaco:t}})}function pe(){var e=p(function(n){var t=n.monaco,r=n.isInitialized,o=n.resolve;return{monaco:t,isInitialized:r,resolve:o}});if(!e.isInitialized){if(m({isInitialized:!0}),e.monaco)return e.resolve(e.monaco),b(y);if(window.monaco&&window.monaco.editor)return $(window.monaco),e.resolve(window.monaco),b(y);ue(ve,me)(he)}return b(y)}function ve(e){return document.body.appendChild(e)}function ge(e){var n=document.createElement("script");return e&&(n.src=e),n}function me(e){var n=p(function(r){var o=r.config,i=r.reject;return{config:o,reject:i}}),t=ge("".concat(n.config.paths.vs,"/loader.js"));return t.onload=function(){return e()},t.onerror=n.reject,t}function he(){var e=p(function(t){var r=t.config,o=t.resolve,i=t.reject;return{config:r,resolve:o,reject:i}}),n=window.require;n.config(e.config),n(["vs/editor/editor.main"],function(t){var r=t.m||t;$(r),e.resolve(r)},function(t){e.reject(t)})}function $(e){p().monaco||m({monaco:e})}function be(){return p(function(e){var n=e.monaco;return n})}var y=new Promise(function(e,n){return m({resolve:e,reject:n})}),ye={config:de,init:pe,__getMonacoInstance:be};export{ye as default};