studiograph 1.3.48-next.46 → 1.3.48-next.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/server/routes/permissions-api.d.ts +5 -3
  2. package/dist/server/routes/permissions-api.js +15 -8
  3. package/dist/server/routes/permissions-api.js.map +1 -1
  4. package/dist/web/_app/immutable/assets/2.B7tSoB7i.css +1 -0
  5. package/dist/web/_app/immutable/assets/4.Bw-eH9Xv.css +1 -0
  6. package/dist/web/_app/immutable/assets/{ChevronLeft.CXYAbxUK.css → ChevronLeft.DkKx6zzU.css} +1 -1
  7. package/dist/web/_app/immutable/chunks/{DMTS67P5.js → B01wMNHV.js} +1 -1
  8. package/dist/web/_app/immutable/chunks/B5lJqDDk.js +2 -0
  9. package/dist/web/_app/immutable/chunks/{3fzBvnRK.js → BQXbt4_9.js} +1 -1
  10. package/dist/web/_app/immutable/chunks/Bhdvqdoo.js +3 -0
  11. package/dist/web/_app/immutable/chunks/{DlgCREv_.js → BiU0zEtO.js} +1 -1
  12. package/dist/web/_app/immutable/chunks/{C1NQznQ7.js → BuVkQyn1.js} +1 -1
  13. package/dist/web/_app/immutable/chunks/{BuXDvHC7.js → C1WacsyC.js} +1 -1
  14. package/dist/web/_app/immutable/chunks/{C5yEnjzs.js → C4EiHohE.js} +1 -1
  15. package/dist/web/_app/immutable/chunks/C7Uj3SIv.js +1 -0
  16. package/dist/web/_app/immutable/chunks/{DWpKEluI.js → CCkWZq-n.js} +1 -1
  17. package/dist/web/_app/immutable/chunks/{bMzq2Tyt.js → CqkagrcB.js} +1 -1
  18. package/dist/web/_app/immutable/chunks/{CZeohBjq.js → DKgbu_Z_.js} +1 -1
  19. package/dist/web/_app/immutable/chunks/{w2RYKQMp.js → PGO3Vuor.js} +1 -1
  20. package/dist/web/_app/immutable/chunks/hXfpX92g.js +1 -0
  21. package/dist/web/_app/immutable/chunks/{Bl6cABIh.js → kX1RzgU9.js} +1 -1
  22. package/dist/web/_app/immutable/chunks/{Db1mfton.js → wmIp2Ae4.js} +1 -1
  23. package/dist/web/_app/immutable/entry/{app.AFFmTFx0.js → app.DTt2wNYP.js} +2 -2
  24. package/dist/web/_app/immutable/entry/start.Bt394hFK.js +1 -0
  25. package/dist/web/_app/immutable/nodes/{0.jMN0pmf6.js → 0.BuATiBO7.js} +2 -2
  26. package/dist/web/_app/immutable/nodes/{1.DlxxGRYS.js → 1.DSqQILwC.js} +1 -1
  27. package/dist/web/_app/immutable/nodes/{10.2NDoXCmY.js → 10.ClO0P3eP.js} +1 -1
  28. package/dist/web/_app/immutable/nodes/{11.5jd1gXx0.js → 11.DYLvB1oR.js} +1 -1
  29. package/dist/web/_app/immutable/nodes/{12.BCBynJu4.js → 12.BOV1zl5Z.js} +1 -1
  30. package/dist/web/_app/immutable/nodes/2.BLYsWiiE.js +266 -0
  31. package/dist/web/_app/immutable/nodes/{3.B0twnXNl.js → 3.Qb8JarZF.js} +3 -3
  32. package/dist/web/_app/immutable/nodes/4.BmZOuVyv.js +11 -0
  33. package/dist/web/_app/immutable/nodes/{5.CO1WA-Xg.js → 5.BOPdn_Jx.js} +1 -1
  34. package/dist/web/_app/immutable/nodes/{6.aLjp01uP.js → 6.LyDM8s2i.js} +1 -1
  35. package/dist/web/_app/immutable/nodes/{7.DCYQAXqZ.js → 7.18mjGv8i.js} +1 -1
  36. package/dist/web/_app/immutable/nodes/{8.D4x7WdLN.js → 8.DPj8jMnk.js} +1 -1
  37. package/dist/web/_app/immutable/nodes/{9.CHemjpvQ.js → 9.BkEr3uzq.js} +1 -1
  38. package/dist/web/_app/version.json +1 -1
  39. package/dist/web/index.html +6 -6
  40. package/package.json +1 -1
  41. package/dist/web/_app/immutable/assets/2.BrsBxJR2.css +0 -1
  42. package/dist/web/_app/immutable/assets/4.UCpFaeF7.css +0 -1
  43. package/dist/web/_app/immutable/chunks/BG3K4Ffz.js +0 -1
  44. package/dist/web/_app/immutable/chunks/CmomLU0-.js +0 -2
  45. package/dist/web/_app/immutable/chunks/DJ_SFF0D.js +0 -1
  46. package/dist/web/_app/immutable/chunks/DTJlR4oR.js +0 -1
  47. package/dist/web/_app/immutable/entry/start.O-4YoKrj.js +0 -1
  48. package/dist/web/_app/immutable/nodes/2.DFMscnFh.js +0 -268
  49. package/dist/web/_app/immutable/nodes/4.CqkSIiOB.js +0 -11
@@ -4,9 +4,11 @@
4
4
  * Per-folder membership management. Only folder admins (member with
5
5
  * role='admin') can grant/revoke access to their folder; workspace
6
6
  * ownership alone does NOT confer folder-admin rights, so owners can't
7
- * push users into private folders they aren't members of. List of
8
- * manageable folders returns only folders where the caller is a member-
9
- * admin (or all folders in open mode).
7
+ * push users into private folders they aren't members of. The list of
8
+ * folders returned by GET /api/permissions/folders includes every folder
9
+ * a workspace owner can see (read-only for folders they don't admin) so
10
+ * the Manage Folders tab can show the full workspace; mutation endpoints
11
+ * still gate on member-admin membership.
10
12
  */
11
13
  import type { FastifyInstance } from 'fastify';
12
14
  import { AuthService } from '../../services/auth-service.js';
@@ -4,10 +4,13 @@
4
4
  * Per-folder membership management. Only folder admins (member with
5
5
  * role='admin') can grant/revoke access to their folder; workspace
6
6
  * ownership alone does NOT confer folder-admin rights, so owners can't
7
- * push users into private folders they aren't members of. List of
8
- * manageable folders returns only folders where the caller is a member-
9
- * admin (or all folders in open mode).
7
+ * push users into private folders they aren't members of. The list of
8
+ * folders returned by GET /api/permissions/folders includes every folder
9
+ * a workspace owner can see (read-only for folders they don't admin) so
10
+ * the Manage Folders tab can show the full workspace; mutation endpoints
11
+ * still gate on member-admin membership.
10
12
  */
13
+ import { isWorkspaceOwner } from '../../services/auth-service.js';
11
14
  /** True if the user is a member-admin on the folder. Workspace ownership
12
15
  * alone does NOT qualify — membership is required. */
13
16
  function canManageFolder(user, folder, authService) {
@@ -16,14 +19,18 @@ function canManageFolder(user, folder, authService) {
16
19
  return authService.isFolderAdmin(user.id, folder);
17
20
  }
18
21
  export async function registerPermissionsApiRoutes(fastify, authService, workspaceManager, wsHub) {
19
- // GET /api/permissions/folders — folders the caller can manage, with
20
- // the members and entry count of each. Only returns folders where the
21
- // caller is a member-admin; workspace owners who aren't folder-admins
22
- // of a given folder will NOT see it in this list.
22
+ // GET /api/permissions/folders — folders the caller can see in the
23
+ // Manage Folders tab, with the members and entry count of each.
24
+ // Includes every folder where the caller is a member-admin plus every
25
+ // folder in the workspace if the caller is a workspace owner (so owners
26
+ // can audit and reach into private folders they don't admin). Mutation
27
+ // endpoints below still gate on member-admin, so visibility here does
28
+ // not grant edit rights.
23
29
  fastify.get('/api/permissions/folders', async (req, reply) => {
24
30
  const user = req.user;
25
31
  const allRepos = workspaceManager.getAllRepoConfigs();
26
- const visible = allRepos.filter(repo => canManageFolder(user, repo.name, authService));
32
+ const visible = allRepos.filter(repo => canManageFolder(user, repo.name, authService) ||
33
+ (user !== undefined && isWorkspaceOwner(user.role)));
27
34
  const result = visible.map(repo => {
28
35
  // `listEntityIds()` just walks the folder's subdirectories — no
29
36
  // markdown parse, no zod validation. Previously we called
@@ -1 +1 @@
1
- {"version":3,"file":"permissions-api.js","sourceRoot":"","sources":["../../../src/server/routes/permissions-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH;uDACuD;AACvD,SAAS,eAAe,CAAC,IAA0B,EAAE,MAAc,EAAE,WAAwB;IAC3F,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,sBAAsB;IAC9C,OAAO,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAwB,EACxB,WAAwB,EACxB,gBAAkC,EAClC,KAAY;IAGZ,qEAAqE;IACrE,sEAAsE;IACtE,sEAAsE;IACtE,kDAAkD;IAClD,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;QAEtD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChC,gEAAgE;YAChE,0DAA0D;YAC1D,+DAA+D;YAC/D,iEAAiE;YACjE,+CAA+C;YAC/C,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC;gBAAC,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YACtG,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,IAAI;gBACjB,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChD,WAAW,EAAE,UAAU;aACxB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,OAAO,CAAC,IAAI,CACV,wBAAwB,EACxB,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,iCAAiC,EAAE,CAAC,CAAC;QACnG,CAAC;QAED,qEAAqE;QACrE,MAAM,OAAO,GAAG,IAAI,IAAI,QAAQ,CAAC;QACjC,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9D,IAAI,WAAW,KAAK,OAAO,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oEAAoE,EAAE,CAAC,CAAC;YACjH,CAAC;QACH,CAAC;QAED,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,IAAI,EAAE,WAAW,IAAI,OAAO;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;IAEF,8DAA8D;IAC9D,OAAO,CAAC,IAAI,CACV,yBAAyB,EACzB,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,uDAAuD;QACvD,MAAM,UAAU,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7D,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oEAAoE,EAAE,CAAC,CAAC;YACjH,CAAC;QACH,CAAC;QAED,WAAW,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,IAAI,EAAE,WAAW,IAAI,OAAO;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"permissions-api.js","sourceRoot":"","sources":["../../../src/server/routes/permissions-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAe,gBAAgB,EAAkC,MAAM,gCAAgC,CAAC;AAI/G;uDACuD;AACvD,SAAS,eAAe,CAAC,IAA0B,EAAE,MAAc,EAAE,WAAwB;IAC3F,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,sBAAsB;IAC9C,OAAO,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,OAAwB,EACxB,WAAwB,EACxB,gBAAkC,EAClC,KAAY;IAGZ,mEAAmE;IACnE,gEAAgE;IAChE,sEAAsE;IACtE,wEAAwE;IACxE,uEAAuE;IACvE,sEAAsE;IACtE,yBAAyB;IACzB,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;QAEtD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CACrC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;YAC7C,CAAC,IAAI,KAAK,SAAS,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACpD,CAAC;QACF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChC,gEAAgE;YAChE,0DAA0D;YAC1D,+DAA+D;YAC/D,iEAAiE;YACjE,+CAA+C;YAC/C,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC;gBAAC,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;YACtG,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,IAAI;gBACjB,OAAO,EAAE,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChD,WAAW,EAAE,UAAU;aACxB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,OAAO,CAAC,IAAI,CACV,wBAAwB,EACxB,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAChD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,IAAI,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,iCAAiC,EAAE,CAAC,CAAC;QACnG,CAAC;QAED,qEAAqE;QACrE,MAAM,OAAO,GAAG,IAAI,IAAI,QAAQ,CAAC;QACjC,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9D,IAAI,WAAW,KAAK,OAAO,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oEAAoE,EAAE,CAAC,CAAC;YACjH,CAAC;QACH,CAAC;QAED,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,IAAI,EAAE,WAAW,IAAI,OAAO;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;IAEF,8DAA8D;IAC9D,OAAO,CAAC,IAAI,CACV,yBAAyB,EACzB,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;QACnB,MAAM,IAAI,GAAI,GAAW,CAAC,IAA4B,CAAC;QACvD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,uDAAuD;QACvD,MAAM,UAAU,GAAG,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7D,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oEAAoE,EAAE,CAAC,CAAC;YACjH,CAAC;QACH,CAAC;QAED,WAAW,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/C,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACtB,KAAK,EAAE,IAAI,EAAE,WAAW,IAAI,OAAO;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ .resize-handle.svelte-tfh9g9{position:absolute;top:0;bottom:0;width:6px;cursor:col-resize;z-index:10}.resize-handle.right.svelte-tfh9g9{right:-3px}.resize-handle.left.svelte-tfh9g9{left:-3px}.resize-handle.svelte-tfh9g9:hover,.resize-handle.active.svelte-tfh9g9{background:var(--color-accent);opacity:.3}.resize-handle.active.svelte-tfh9g9{opacity:.5}.picker.svelte-4g8ci4{display:flex;flex-direction:column;gap:12px}.grid.svelte-4g8ci4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.type-card.svelte-4g8ci4{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:18px;min-height:172px;box-sizing:border-box;border-radius:var(--radius-lg);background:transparent;border:1px solid var(--color-border);transition:border-color .15s}.type-card.svelte-4g8ci4:hover:not(.selected){border-color:var(--color-text-tertiary)}.type-card.selected.svelte-4g8ci4{border-color:var(--color-text-primary)}.card-badge.svelte-4g8ci4{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);color:var(--color-text-primary)}.more-badge.svelte-4g8ci4{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-bg-hover);color:var(--color-text-primary)}.card-name.svelte-4g8ci4{font-size:14px;font-weight:500;color:var(--color-text-primary);letter-spacing:-.01em}.card-description.svelte-4g8ci4{font-size:13px;font-weight:400;line-height:18px;color:var(--color-text-secondary);text-wrap:pretty;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.folder-members.svelte-vz89pt{display:flex;flex-direction:column;gap:4px}.fm-header.svelte-vz89pt{display:flex;align-items:center;margin-bottom:4px;padding-top:16px;border-top:1px solid var(--color-border)}.fm-label.svelte-vz89pt,.fm-sublabel.svelte-vz89pt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.fm-sublabel.svelte-vz89pt{margin-top:16px;margin-bottom:4px;padding-top:16px;border-top:1px solid var(--color-border)}.fm-hint.svelte-vz89pt{font-size:13px;color:var(--color-text-tertiary);padding:8px 0}.fm-row.svelte-vz89pt{display:flex;align-items:center;gap:10px;height:44px;font-size:14px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-lg)}.fm-confirm.svelte-vz89pt{background:color-mix(in srgb,var(--color-accent-fg) 10%,transparent);border-color:color-mix(in srgb,var(--color-accent-fg) 30%,transparent)}.fm-confirm.svelte-vz89pt svg{color:var(--color-accent-fg)!important}.fm-confirm.svelte-vz89pt button:not([class*=destructive]):hover{background:color-mix(in srgb,var(--color-accent-fg) 15%,transparent)!important;color:var(--color-text-primary)!important}.fm-confirm-text.svelte-vz89pt{font-size:14px;color:var(--color-text-primary);flex:1}.fm-actions.svelte-vz89pt{display:flex;gap:4px;flex-shrink:0}.fm-avatar.svelte-vz89pt{width:18px;height:18px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fm-name.svelte-vz89pt{font-size:14px;font-weight:500;color:var(--color-text-primary)}.fm-name-muted.svelte-vz89pt{color:var(--color-text-secondary);font-weight:400}.fm-role-label.svelte-vz89pt{font-size:12px;font-weight:400;color:var(--color-text-tertiary);padding-right:4px}.fm-flex.svelte-vz89pt{flex:1}.fm-trash-placeholder.svelte-vz89pt{width:28px;height:28px;flex-shrink:0}.role-chip{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:400;color:var(--color-text-tertiary);padding:2px 4px 2px 6px;border-radius:var(--radius-sm);background:transparent;border:none;cursor:pointer;transition:background .15s}.role-chip:hover,.role-chip[data-state=open]{background:var(--color-bg-hover)}.role-check{margin-left:auto;display:inline-flex;align-items:center}.asset-manager.svelte-3ci416{max-height:calc(70vh - 80px);overflow-y:auto;padding-right:12px}.asset-status.svelte-3ci416{color:var(--color-text-secondary);font-size:14px;text-align:center;padding:32px 0}.asset-error.svelte-3ci416{color:var(--color-destructive-fg, #f04e4e)}.asset-grid.svelte-3ci416{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.asset-card.svelte-3ci416{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-bg-secondary)}.asset-card.svelte-3ci416:hover .asset-delete:where(.svelte-3ci416){opacity:1}.asset-preview.svelte-3ci416{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-bg-tertiary, var(--color-bg-secondary))}.asset-preview.svelte-3ci416 img:where(.svelte-3ci416){width:100%;height:100%;object-fit:cover}.asset-icon.svelte-3ci416{color:var(--color-text-secondary)}.asset-info.svelte-3ci416{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.asset-filename.svelte-3ci416{font-size:12px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-meta.svelte-3ci416{font-size:11px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-delete.svelte-3ci416{position:absolute;top:6px;right:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:#0009;color:#ededef;cursor:pointer;opacity:0;transition:opacity .15s}.asset-delete.svelte-3ci416:hover{background:#e05050e6}.sidebar.svelte-6dohdz{position:relative;z-index:2;flex-shrink:0;display:flex;flex-direction:column;overflow:clip;overflow-x:visible;background:var(--color-bg);border-right:1px solid var(--color-border);transition:width .15s ease}.sidebar.collapsed.svelte-6dohdz{overflow:visible}.rail.svelte-6dohdz{display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:4px;height:100%}.rail-spacer.svelte-6dohdz{flex:1}.rail-btn{width:36px!important;height:36px!important;display:flex!important;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:none}.rail-btn:hover{background:var(--color-bg-hover)!important}.rail.svelte-6dohdz .workspace-icon:where(.svelte-6dohdz){width:28px;height:28px;font-size:14px}.sidebar-header.svelte-6dohdz{height:var(--row-height);display:flex;align-items:center;gap:11px;padding:0 12px 0 16px;box-shadow:inset 0 -1px 0 var(--color-border);flex-shrink:0}.header-actions.svelte-6dohdz{margin-left:auto;display:flex;align-items:center;gap:4px}.header-action-btn{display:flex;align-items:center;justify-content:center;position:relative;width:28px;height:28px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;background:none;border:none}.header-action-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.header-action-btn.header-action-btn-accent{background:var(--color-accent);color:var(--color-accent-text, #ededef)}.header-action-btn.header-action-btn-accent:hover{background:var(--color-accent-hover);color:var(--color-accent-text, #ededef)}.notif-dropdown{width:320px!important;max-height:400px;background:var(--color-bg)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-lg)!important;box-shadow:0 4px 16px #0000001f!important;display:flex;flex-direction:column;overflow:hidden;padding:0!important;z-index:200!important}.notif-dropdown .notif-header{display:flex;align-items:baseline;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--color-border);flex-shrink:0}.notif-dropdown .notif-title{font-size:var(--menu-font-size);font-weight:400;color:var(--color-text-primary)}.notif-dropdown .notif-mark-all{background:none;border:none;color:var(--color-accent-fg);font-size:12px;cursor:pointer;padding:0}.notif-dropdown .notif-mark-all:hover{text-decoration:underline}.notif-dropdown .notif-list{overflow-y:auto;flex:1}.notif-dropdown .notif-empty{padding:24px 12px;text-align:center;font-size:var(--menu-font-size);color:var(--color-text-tertiary)}.notif-item{display:flex!important;flex-direction:row!important;align-items:flex-start;position:relative;padding:12px 16px 12px 32px!important;border:none;background:none;text-align:left;width:100%;cursor:pointer;border-radius:0!important}.notif-item+.notif-item{border-top:1px solid var(--color-border)}.notif-item:hover,.notif-item[data-highlighted]{background:var(--color-bg-hover)!important}.notif-dot{position:absolute;left:12px;top:17px;width:6px;height:6px;border-radius:3px;background:var(--color-accent)}.notif-item-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.notif-item-line{display:flex;align-items:baseline;gap:4px;font-size:var(--menu-font-size);line-height:16px}.notif-item-who{font-weight:600;color:var(--color-text-primary);white-space:nowrap}.notif-item-time{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap;margin-left:auto}.notif-item-preview{font-size:12px;line-height:16px;color:var(--color-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notif-mention{color:var(--color-accent-fg)}.notif-badge.svelte-6dohdz{position:absolute;top:2px;right:2px;min-width:14px;height:14px;border-radius:999px;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.sidebar-header.svelte-6dohdz .home-btn:where(.svelte-6dohdz){all:unset;display:inline-flex;align-items:center;gap:8px;min-width:0;cursor:pointer;flex:0 0 auto}.workspace-icon.svelte-6dohdz{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);background:var(--color-accent, #f04e4e);color:var(--color-accent-text, #ededef);flex-shrink:0;transition:background .15s}.home-btn.svelte-6dohdz:hover .workspace-icon:where(.svelte-6dohdz){background:var(--color-accent-hover, #d83a3a)}.workspace-name.svelte-6dohdz{font-size:14px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-scroll.svelte-6dohdz{flex:1;overflow-y:auto;min-height:0}.repo-row{display:flex;align-items:baseline;height:var(--row-height);line-height:var(--row-height);width:100%;padding:0 12px 0 22px;border:none;background:transparent;font-family:inherit;text-align:left;border-radius:0;gap:0;justify-content:flex-start;transition:none}.repo-row:hover,.repo-row.focused{background:var(--color-bg-hover)}.tree-row{position:relative;display:flex;align-items:baseline;height:var(--row-height);line-height:var(--row-height);padding-right:40px;color:var(--color-text-secondary);font-size:14px;border:none;background:transparent;font-family:inherit;text-align:left;width:100%;border-radius:0;gap:0;justify-content:flex-start;transition:none}.tree-row:hover,.tree-row.focused{background:var(--color-bg-hover)}.tree-row.selected{background:var(--color-bg-selected);color:var(--color-text-primary);font-weight:600}.tree-row.ancestor{color:var(--color-text-primary);font-weight:600}.row-chevron.svelte-6dohdz{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:16px;height:16px;flex-shrink:0;margin-right:14px;color:var(--color-text-secondary);transition:transform .15s}.row-chevron.open.svelte-6dohdz{transform:rotate(90deg)}.row-label.svelte-6dohdz{flex:1;overflow:hidden;white-space:nowrap;mask-image:linear-gradient(to right,black calc(100% - 16px),transparent 100%);-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent 100%)}.type-header-row{color:var(--color-text-secondary)}.type-header-row.type-active{color:var(--color-text-primary);font-weight:600}.type-header-row .row-label.svelte-6dohdz{flex:none;mask-image:none;-webkit-mask-image:none}.entity-type-dot.svelte-6dohdz{width:6px;height:6px;border-radius:3px;flex-shrink:0;margin-right:2px}.new-entity-row{color:var(--color-text-tertiary);align-items:center}.new-entity-row:hover{color:var(--color-text-secondary)}.entity-row-wrapper.svelte-6dohdz{position:relative;display:flex;align-items:center}.entity-row-wrapper.svelte-6dohdz .tree-row{flex:1;min-width:0}.entity-row-wrapper.svelte-6dohdz .entity-actions-btn{display:none;width:28px;height:28px;position:absolute;right:12px;flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;color:var(--color-text-tertiary);border-radius:var(--radius-sm);align-items:center;justify-content:center}.entity-row-wrapper.svelte-6dohdz .entity-actions-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.entity-row-wrapper.svelte-6dohdz:hover .tree-row,.entity-row-wrapper.svelte-6dohdz:has(.entity-actions-btn.menu-open) .tree-row{background:var(--color-bg-hover)}.entity-row-wrapper.svelte-6dohdz:hover .entity-actions-btn,.entity-row-wrapper.svelte-6dohdz .entity-actions-btn.menu-open{display:inline-flex}.entity-type-dot.svelte-6dohdz{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-right:19px;align-self:center}.presence-avatar.svelte-6dohdz{width:18px;height:18px;border-radius:50%;font-size:10px;font-weight:600;color:var(--color-accent-text, #ededef);background:var(--color-accent);display:flex;align-items:center;justify-content:center;margin-left:-3px;border:none;box-sizing:border-box;flex-shrink:0;align-self:center}.presence-avatar.svelte-6dohdz:nth-child(1){z-index:3}.presence-avatar.svelte-6dohdz:nth-child(2){z-index:2}.presence-avatar.svelte-6dohdz:nth-child(3){z-index:1}.unread-dot.svelte-6dohdz{width:6px;height:6px;border-radius:50%;background:var(--color-accent);display:block}.repo-row .repo-rename-input{flex:1;min-width:0;height:100%;padding:0 6px;margin:0;border:1px solid var(--color-accent-fg, #f04e4e);border-radius:3px;font-size:14px;font-weight:600}.repo-row-wrapper.svelte-6dohdz{position:relative;display:flex;align-items:center}.import-description.svelte-6dohdz{font-size:14px;color:var(--color-text-primary);margin:0 0 16px}.import-description-hint.svelte-6dohdz{color:var(--color-text-tertiary)}.import-modal-body.svelte-6dohdz{padding:0}.import-skipped.svelte-6dohdz{font-size:var(--font-xs);color:var(--color-text-secondary);margin:0 0 8px}.import-file-list.svelte-6dohdz{display:flex;flex-direction:column;max-height:240px;overflow-y:auto}.import-file-row.svelte-6dohdz{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--color-border)}.import-file-icon.svelte-6dohdz{flex-shrink:0;color:var(--color-text-tertiary)}.import-file-info.svelte-6dohdz{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.import-file-name.svelte-6dohdz{font-size:14px;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-file-size.svelte-6dohdz{font-size:12px;color:var(--color-text-tertiary)}.import-file-remove.svelte-6dohdz{flex-shrink:0;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}.import-file-remove.svelte-6dohdz:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.import-drop-zone.svelte-6dohdz{border:1px solid var(--color-border, #333);border-radius:var(--radius-lg);padding:40px 16px;text-align:center;color:var(--color-text-tertiary);font-size:14px;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transition:background .15s}.import-drop-zone-active.svelte-6dohdz{border-color:var(--color-accent-fg);background:color-mix(in srgb,var(--color-accent-fg) 6%,transparent);color:var(--color-accent-fg)}.import-drop-zone-compact.svelte-6dohdz{min-height:0;padding:14px 16px;border-top:none}.import-hint.svelte-6dohdz{font-size:13px;color:var(--color-text-tertiary);margin:0}.file-picker-link.svelte-6dohdz{background:none;border:none;padding:0;font:inherit;font-size:15px;color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 50%,transparent);text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-color .15s ease;cursor:pointer}.file-picker-link.svelte-6dohdz:hover{text-decoration-color:transparent}.file-picker-link-sm.svelte-6dohdz{font-size:13px}.repo-row-wrapper.svelte-6dohdz .repo-row{flex:1;min-width:0}.repo-row-wrapper.svelte-6dohdz .repo-actions-btn{display:none;width:28px;height:28px;position:absolute;right:12px;flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-sm);align-items:center;justify-content:center}.repo-row-wrapper.svelte-6dohdz .repo-actions-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.new-folder-btn,.new-folder-btn .row-chevron.svelte-6dohdz{color:var(--color-text-tertiary)}.new-folder-btn:hover{color:var(--color-text-secondary)}@keyframes svelte-6dohdz-shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.sidebar-footer.svelte-6dohdz{display:flex;align-items:center;height:var(--row-height);padding:0 12px 0 52px;border-top:1px solid var(--color-border);flex-shrink:0;gap:8px;margin-top:auto}.user-name.svelte-6dohdz{flex:1;font-size:14px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer.svelte-6dohdz .footer-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;background:none;border:none;flex-shrink:0}.sidebar-footer.svelte-6dohdz .footer-icon-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.transfer-header-col.svelte-6dohdz{display:flex;flex-direction:column;gap:4px}.transfer-list.svelte-6dohdz{display:flex;flex-direction:column;gap:2px}.transfer-list-item.svelte-6dohdz{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border-radius:var(--radius-md);color:var(--color-text);font-size:13px;cursor:pointer}.transfer-list-item.svelte-6dohdz:hover{background:var(--color-bg-hover)}.entity-floating-tooltip.svelte-6dohdz{position:fixed;z-index:1000;transform:translateY(-50%);display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);box-shadow:0 4px 16px #0000004d;pointer-events:none;min-width:120px;max-width:260px}.entity-floating-tooltip.fading.svelte-6dohdz{opacity:0;transition:opacity .12s ease-out}.entity-tooltip-title.svelte-6dohdz{font-size:13px;font-weight:600;color:var(--color-text-primary)}.entity-tooltip-meta.svelte-6dohdz{font-size:13px;color:var(--color-text-tertiary)}.section-add-btn{display:flex!important;align-items:center;justify-content:center;width:24px!important;height:24px!important;border:none!important;background:none!important;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);padding:0!important}.section-add-btn:hover{background:var(--color-bg-hover)!important;color:var(--color-text-primary)}.view-icon-dot.svelte-6dohdz{position:relative;background:none!important;overflow:visible}.view-icon-dot.svelte-6dohdz svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;color:inherit}.section-row-wrapper.svelte-6dohdz{height:var(--row-height);box-shadow:inset 0 1px 0 var(--color-border)}.sidebar-scroll.svelte-6dohdz>.section-row-wrapper:where(.svelte-6dohdz):first-child{box-shadow:none}.section-row-wrapper.svelte-6dohdz .repo-actions-btn{display:inline-flex}.section-name.svelte-6dohdz{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);flex:1;text-align:left}.section-row-wrapper.svelte-6dohdz:hover .repo-row{background:var(--color-bg-hover)}.new-entry-title-row.svelte-6dohdz{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.new-entry-header.svelte-6dohdz{display:flex;align-items:baseline;gap:8px}.new-entry-header-label.svelte-6dohdz{font-size:14px;font-weight:400;color:var(--color-text-secondary)}.new-entry-header-folder.svelte-6dohdz{font-size:14px;font-weight:500;color:var(--color-text-primary)}.app-footer.svelte-1jf7fcf{height:var(--row-height, 44px);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--color-bg);border-top:1px solid var(--color-border);font-size:12px;z-index:50}.footer-left.svelte-1jf7fcf{display:flex;align-items:center;gap:0}.theme-toggle.svelte-1jf7fcf{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);flex-shrink:0;transition:color .15s,background .15s}.theme-toggle.svelte-1jf7fcf:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.footer-stat.svelte-1jf7fcf{color:var(--color-text-secondary);font-size:12px;margin-left:8px}.footer-sep.svelte-1jf7fcf{color:var(--color-text-secondary);opacity:.5;font-size:12px;margin:0 6px}.footer-link.svelte-1jf7fcf{font-size:12px;color:var(--color-text-secondary);text-decoration:none}.footer-link.svelte-1jf7fcf:hover{color:var(--color-text-primary)}.footer-right.svelte-1jf7fcf{display:flex;align-items:center;gap:8px}.collaborator.svelte-1jf7fcf{display:inline-flex;align-items:center;gap:4px}.collaborator-avatar.svelte-1jf7fcf{width:18px;height:18px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center}.collaborator-name.svelte-1jf7fcf{font-size:12px;color:var(--color-text-secondary)}.cm-reply-citation.svelte-jvotkk{display:flex;align-items:flex-start;gap:6px;padding:4px 8px;margin-bottom:4px;background:transparent;border:none;border-left:2px solid var(--color-border);border-radius:0;font:inherit;color:var(--color-text-tertiary);text-align:left;cursor:pointer;max-width:100%;min-width:0;transition:border-color .15s,color .15s}.cm-reply-citation.svelte-jvotkk:hover{border-left-color:var(--color-accent-fg);color:var(--color-text-secondary)}.cm-reply-arrow.svelte-jvotkk{font-size:12px;line-height:18px;flex-shrink:0;opacity:.7}.cm-reply-text.svelte-jvotkk{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.cm-reply-author.svelte-jvotkk{font-size:12px;font-weight:500;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-reply-author.cm-reply-missing.svelte-jvotkk{font-style:italic;font-weight:400;color:var(--color-text-tertiary)}.cm-reply-quote.svelte-jvotkk{font-size:12px;line-height:16px;color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-panel.svelte-1xwj6s7{position:relative;flex-shrink:0;display:flex;flex-direction:column;background:var(--color-bg);border-left:1px solid var(--color-border)}.chat-header.svelte-1xwj6s7{height:var(--row-height);display:flex;align-items:center;justify-content:flex-end;padding:0 16px;border-bottom:1px solid var(--color-border);position:relative;flex-shrink:0;gap:8px}.chat-header-right.svelte-1xwj6s7{display:flex;align-items:center;gap:2px;margin-left:auto}.chat-empty-placeholder.svelte-1xwj6s7{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:0 32px;color:var(--color-text-tertiary);font-size:14px;line-height:1.5;text-align:center;text-wrap:balance}.chat-empty-placeholder.svelte-1xwj6s7 .share-folder-btn{min-width:0}.chat-messages.svelte-1xwj6s7{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:4px}.empty-state.svelte-1xwj6s7{flex:1;display:flex;align-items:center;justify-content:center;min-height:100%;padding:0 16px;color:var(--color-text-tertiary);font-size:14px}.prose.svelte-1xwj6s7 h1{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:24px 0 12px}.prose.svelte-1xwj6s7 h2{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:22px 0 10px}.prose.svelte-1xwj6s7 h3{font-size:15px;font-weight:600;color:var(--color-text-primary);margin:20px 0 8px}.prose.svelte-1xwj6s7 p{margin:0 0 14px}.prose.svelte-1xwj6s7 p:last-child{margin-bottom:0}.prose.svelte-1xwj6s7 strong{font-weight:600}.prose.svelte-1xwj6s7 ul,.prose.svelte-1xwj6s7 ol{padding-left:20px;margin:0 0 14px;color:var(--color-text-primary)}.prose.svelte-1xwj6s7 li ul,.prose.svelte-1xwj6s7 li ol{margin:4px 0 0}.prose.svelte-1xwj6s7 ul{list-style-type:disc}.prose.svelte-1xwj6s7 ol{list-style-type:decimal}.prose.svelte-1xwj6s7 li{margin-bottom:6px}.prose.svelte-1xwj6s7 table{width:100%;border-collapse:collapse;font-size:13px;margin:16px 0}.prose.svelte-1xwj6s7 th,.prose.svelte-1xwj6s7 td{border:1px solid var(--color-border);padding:4px 8px;text-align:left;vertical-align:top}.prose.svelte-1xwj6s7 th{font-weight:600}.prose.svelte-1xwj6s7 pre{background:var(--color-bg-surface);border-radius:var(--radius-md);padding:10px 12px;overflow-x:auto;margin:16px 0;font-family:var(--font-mono);font-size:13px;line-height:18px}.prose.svelte-1xwj6s7 code{font-family:var(--font-mono);font-size:13px;background:var(--color-bg-surface);padding:1px 4px;border-radius:3px}.prose.svelte-1xwj6s7 pre code{background:none;padding:0}.prose.svelte-1xwj6s7 a{color:var(--color-link);text-decoration:none}.prose.svelte-1xwj6s7 a:hover{text-decoration:underline}.prose.svelte-1xwj6s7 blockquote{border-left:3px solid var(--color-accent-fg);padding-left:12px;margin:16px 0;color:var(--color-text-secondary)}.prose.svelte-1xwj6s7 hr{border:none;border-top:1px solid var(--color-border);margin:24px 0}.streaming-dot.svelte-1xwj6s7{display:inline-block;width:8px;height:8px;background:var(--color-accent);border-radius:var(--radius-sm);animation:svelte-1xwj6s7-pulse 1s ease-in-out infinite}@keyframes svelte-1xwj6s7-pulse{0%,to{opacity:.3}50%{opacity:1}}.context-chip.svelte-1xwj6s7{font-size:12px;color:var(--color-text-tertiary);padding:0 2px 4px;overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent);mask-image:linear-gradient(to right,black calc(100% - 16px),transparent)}.scroll-to-bottom-wrapper.svelte-1xwj6s7{position:absolute;left:0;right:0;bottom:76px;display:flex;justify-content:center;z-index:100;pointer-events:none}.scroll-to-bottom.svelte-1xwj6s7{width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #00000026;pointer-events:auto;transition:opacity .15s}.scroll-to-bottom.is-hidden.svelte-1xwj6s7{opacity:0;pointer-events:none}.scroll-to-bottom.svelte-1xwj6s7:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.chat-input-area.svelte-1xwj6s7{padding:12px 16px 16px;position:relative}.text-input.svelte-1xwj6s7{display:flex;align-items:flex-end;min-height:var(--row-height);max-height:140px;padding:0 0 0 13px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .15s}.text-input.svelte-1xwj6s7:focus-within{border-color:var(--color-accent)}.send-btn{color:var(--color-text-tertiary);margin:7px;flex-shrink:0;pointer-events:none}.send-btn.send-active,.stop-btn{pointer-events:auto;color:var(--color-accent-text, #ededef);background:var(--color-accent);border-radius:var(--radius-md)}.input-field.svelte-1xwj6s7{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:14px;line-height:20px;color:var(--color-text-primary);resize:none;overflow-y:auto;padding:7px 0 11px;max-height:120px;min-height:20px;white-space:pre-wrap;word-wrap:break-word;field-sizing:content}.input-field[data-placeholder].svelte-1xwj6s7:empty:before{content:attr(data-placeholder);color:var(--color-text-tertiary);pointer-events:none}.input-field.svelte-1xwj6s7::placeholder{color:var(--color-text-tertiary)}.input-field.svelte-1xwj6s7:disabled{opacity:.5}.input-field.svelte-1xwj6s7 .cm-mention-input{color:var(--color-accent-fg)}.cm-loading-more.svelte-1xwj6s7{text-align:center;padding:8px 16px;font-size:12px;color:var(--color-text-tertiary)}.cm-message.svelte-1xwj6s7{display:flex;flex-direction:column;padding:8px 16px;background:transparent;transition:background 1.5s ease-out}.cm-highlight{background:var(--color-bg-hover)!important}.cm-meta.svelte-1xwj6s7{display:flex;align-items:center;gap:6px}.cm-meta.svelte-1xwj6s7 .cm-name:where(.svelte-1xwj6s7){align-self:baseline}.cm-avatar.svelte-1xwj6s7{width:18px;height:18px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cm-body.svelte-1xwj6s7{display:flex;flex-direction:column;min-width:0;padding-left:24px}.cm-name.svelte-1xwj6s7{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cm-time.svelte-1xwj6s7{font-size:12px;color:var(--color-text-tertiary)}.cm-content.svelte-1xwj6s7{font-size:14px;line-height:22px;color:var(--color-text-primary)}.cm-truncated.svelte-1xwj6s7{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cm-msg-footer.svelte-1xwj6s7{display:flex;gap:12px;align-items:center;line-height:22px}@media(hover:hover){.cm-msg-footer.svelte-1xwj6s7 .cm-expand:where(.svelte-1xwj6s7),.cm-msg-footer.svelte-1xwj6s7 .cm-reply-btn:where(.svelte-1xwj6s7){display:none}.cm-message.svelte-1xwj6s7:hover .cm-msg-footer:where(.svelte-1xwj6s7) .cm-expand:where(.svelte-1xwj6s7),.cm-message.svelte-1xwj6s7:hover .cm-msg-footer:where(.svelte-1xwj6s7) .cm-reply-btn:where(.svelte-1xwj6s7),.cm-message.svelte-1xwj6s7:focus-within .cm-msg-footer:where(.svelte-1xwj6s7) .cm-expand:where(.svelte-1xwj6s7),.cm-message.svelte-1xwj6s7:focus-within .cm-msg-footer:where(.svelte-1xwj6s7) .cm-reply-btn:where(.svelte-1xwj6s7){display:inline-block}}.cm-expand.svelte-1xwj6s7{background:none;border:none;color:var(--color-text-tertiary);font-size:12px;line-height:inherit;cursor:pointer;padding:0}.cm-expand.svelte-1xwj6s7:hover{color:var(--color-accent-fg)}.cm-reply-btn.svelte-1xwj6s7{background:none;border:none;color:var(--color-text-tertiary);font-size:12px;line-height:inherit;cursor:pointer;padding:0}.cm-reply-btn.svelte-1xwj6s7:hover{color:var(--color-accent-fg)}.cm-suggestion-prompts.svelte-1xwj6s7{display:flex;flex-direction:column;gap:8px;width:100%}.cm-suggestion-prompts.svelte-1xwj6s7 .seed-prompt{font-size:14px;line-height:20px;padding:9px 13px;min-height:var(--row-height);height:auto;border-radius:var(--radius-lg);color:var(--color-text-secondary);background:var(--color-bg-secondary, rgba(128, 128, 128, .06));text-align:left;white-space:normal;justify-content:flex-start}.cm-suggestion-prompts.svelte-1xwj6s7 .seed-prompt:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.cm-suggestion-busy.svelte-1xwj6s7,.cm-suggestion-done.svelte-1xwj6s7{font-size:14px;line-height:20px;padding:9px 13px;min-height:var(--row-height);height:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-tertiary);text-align:left;white-space:normal}.cm-suggestion-done.svelte-1xwj6s7 a:where(.svelte-1xwj6s7){color:var(--color-link);text-decoration:none}.cm-suggestion-done.svelte-1xwj6s7 a:where(.svelte-1xwj6s7):hover{text-decoration:underline}.cm-suggestion-undone.svelte-1xwj6s7{color:var(--color-text-tertiary);text-decoration:line-through}.cm-undo-btn.svelte-1xwj6s7{margin-left:8px;background:transparent;border:none;padding:0;color:var(--color-link);font:inherit;cursor:pointer}.cm-undo-btn.svelte-1xwj6s7:hover{text-decoration:underline}.cm-suggestion-busy-inline.svelte-1xwj6s7{margin-left:8px;color:var(--color-text-tertiary)}.cm-ellipsis.svelte-1xwj6s7:after{content:"";animation:svelte-1xwj6s7-ellipsis 1.5s steps(4,end) infinite}@keyframes svelte-1xwj6s7-ellipsis{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}.cm-content.svelte-1xwj6s7 .cm-mention{color:var(--color-accent-fg);font-weight:400}.reply-chip.svelte-1xwj6s7{display:flex;align-items:center;gap:8px;padding:4px 8px;margin-bottom:6px;background:var(--color-bg-surface);border-left:2px solid var(--color-accent-fg);border-radius:var(--radius-sm);font-size:12px;min-width:0}.reply-chip-label.svelte-1xwj6s7{color:var(--color-accent-fg);font-weight:500;flex-shrink:0}.reply-chip-preview.svelte-1xwj6s7{color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.reply-chip-close.svelte-1xwj6s7{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:0;border-radius:3px;flex-shrink:0;margin-left:auto}.reply-chip-close.svelte-1xwj6s7:hover{color:var(--color-text-primary)}.at-popup.svelte-1xwj6s7{position:absolute;bottom:100%;left:16px;margin-bottom:4px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001f;padding:4px;z-index:10}.at-popup-item.svelte-1xwj6s7{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:var(--radius-md);cursor:pointer;font-size:13px;color:var(--color-text-primary)}.at-popup-item.svelte-1xwj6s7:hover,.at-popup-selected.svelte-1xwj6s7{background:var(--color-bg-hover)}.at-popup-avatar.svelte-1xwj6s7{width:18px;height:18px;font-size:9px}.at-popup-hint.svelte-1xwj6s7{margin-left:auto;font-size:11px;color:var(--color-text-tertiary);background:var(--color-bg-surface);padding:1px 5px;border-radius:3px}.at-popup-hint.is-hidden.svelte-1xwj6s7{visibility:hidden}.agent-overlay-root.svelte-2kfnqv{position:absolute;inset:0;pointer-events:none;z-index:99}.agent-overlay-root.svelte-2kfnqv>:where(.svelte-2kfnqv){pointer-events:auto}.agent-fab.svelte-2kfnqv{position:absolute;right:16px;bottom:16px;width:48px;height:48px;padding:0;line-height:0;border-radius:50%;border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-accent-text, #ededef);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #0000002e;transition:box-shadow .15s,background .15s,color .15s;z-index:2}.agent-fab.svelte-2kfnqv:hover{box-shadow:0 4px 14px #00000047}.agent-fab.is-open.svelte-2kfnqv{background:var(--color-bg-elevated, var(--color-bg));color:var(--color-text-primary);border-color:var(--color-border)}.agent-fab.has-unread.svelte-2kfnqv{animation:svelte-2kfnqv-fab-unread 1.6s ease-out infinite}@keyframes svelte-2kfnqv-fab-unread{0%{box-shadow:0 4px 14px #0000002e,0 0 rgba(var(--color-accent-rgb),.55)}70%{box-shadow:0 4px 14px #0000002e,0 0 0 14px rgba(var(--color-accent-rgb),0)}to{box-shadow:0 4px 14px #0000002e,0 0 rgba(var(--color-accent-rgb),0)}}.agent-panel.svelte-2kfnqv{position:absolute;right:16px;bottom:72px;width:420px;height:680px;max-width:calc(100% - 32px);max-height:calc(100% - 88px);display:flex;flex-direction:column;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 10px 30px #0000002e;overflow:hidden;z-index:1}.agent-header.svelte-2kfnqv{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:16px;min-height:var(--row-height, 44px);flex-shrink:0}.agent-header.svelte-2kfnqv>:where(.svelte-2kfnqv):first-child{justify-self:start}.agent-header.svelte-2kfnqv>:where(.svelte-2kfnqv):last-child{justify-self:end}.agent-session-nav.svelte-2kfnqv{display:flex;align-items:center;justify-self:center;gap:0}.agent-session-label.svelte-2kfnqv{font-size:13px;color:var(--color-text-primary);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:140px;text-align:center;padding:2px 8px}.agent-header-btn.svelte-2kfnqv{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s,color .15s}.agent-header-btn.svelte-2kfnqv:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.agent-header-btn.svelte-2kfnqv:disabled{opacity:.3;cursor:default}.agent-messages.svelte-2kfnqv{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:16px;min-height:0}.empty-state.svelte-2kfnqv{flex:1;display:flex;align-items:center;justify-content:center;min-height:100%;padding:0 16px}.seed-prompts.svelte-2kfnqv{display:flex;flex-direction:column;gap:8px;width:100%}.seed-prompts.svelte-2kfnqv .seed-prompt,.follow-up-prompts.svelte-2kfnqv .seed-prompt{font-size:14px;line-height:20px;padding:9px 13px;min-height:var(--row-height);height:auto;width:100%;border-radius:var(--radius-lg);color:var(--color-text-secondary);background:var(--color-bg-secondary, rgba(128, 128, 128, .06));text-align:left;white-space:normal;justify-content:flex-start}.seed-prompts.svelte-2kfnqv .seed-prompt:hover,.follow-up-prompts.svelte-2kfnqv .seed-prompt:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.follow-up-prompts.svelte-2kfnqv{display:flex;flex-direction:column;gap:8px;padding:0 16px;width:100%}.message-group.svelte-2kfnqv{display:flex;flex-direction:column;gap:16px;padding:0 16px}.user-bubble.svelte-2kfnqv{background:var(--color-bg-surface);border-radius:var(--radius-lg);padding:12px 14px;font-size:14px;line-height:22px;color:var(--color-text-primary)}.agent-content.svelte-2kfnqv{display:flex;flex-direction:column;gap:14px;position:relative}.msg-actions.svelte-2kfnqv{display:flex;gap:4px;align-self:flex-start}.copy-btn.svelte-2kfnqv{display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;padding:4px;border-radius:var(--radius-sm)}.copy-btn.svelte-2kfnqv:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.tool-calls.svelte-2kfnqv{display:flex;flex-direction:column;gap:4px}.tool-call.svelte-2kfnqv{font-family:var(--font-mono);font-size:12px;color:var(--color-accent-fg)}.agent-text.svelte-2kfnqv{font-size:14px;line-height:22px;color:var(--color-text-primary)}.prose.svelte-2kfnqv h1{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:24px 0 12px}.prose.svelte-2kfnqv h2{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:22px 0 10px}.prose.svelte-2kfnqv h3{font-size:15px;font-weight:600;color:var(--color-text-primary);margin:20px 0 8px}.prose.svelte-2kfnqv p{margin:0 0 14px}.prose.svelte-2kfnqv p:last-child{margin-bottom:0}.prose.svelte-2kfnqv strong{font-weight:600}.prose.svelte-2kfnqv ul,.prose.svelte-2kfnqv ol{padding-left:20px;margin:0 0 14px;color:var(--color-text-primary)}.prose.svelte-2kfnqv li ul,.prose.svelte-2kfnqv li ol{margin:4px 0 0}.prose.svelte-2kfnqv ul{list-style-type:disc}.prose.svelte-2kfnqv ol{list-style-type:decimal}.prose.svelte-2kfnqv li{margin-bottom:6px}.prose.svelte-2kfnqv table{width:100%;border-collapse:collapse;font-size:13px;margin:16px 0}.prose.svelte-2kfnqv th,.prose.svelte-2kfnqv td{border:1px solid var(--color-border);padding:4px 8px;text-align:left;vertical-align:top}.prose.svelte-2kfnqv th{font-weight:600}.prose.svelte-2kfnqv pre{background:var(--color-bg-surface);border-radius:var(--radius-md);padding:10px 12px;overflow-x:auto;margin:16px 0;font-family:var(--font-mono);font-size:13px;line-height:18px}.prose.svelte-2kfnqv code{font-family:var(--font-mono);font-size:13px;background:var(--color-bg-surface);padding:1px 4px;border-radius:3px}.prose.svelte-2kfnqv pre code{background:none;padding:0}.prose.svelte-2kfnqv a{color:var(--color-link);text-decoration:none}.prose.svelte-2kfnqv a:hover{text-decoration:underline}.prose.svelte-2kfnqv blockquote{border-left:3px solid var(--color-accent-fg);padding-left:12px;margin:16px 0;color:var(--color-text-secondary)}.prose.svelte-2kfnqv hr{border:none;border-top:1px solid var(--color-border);margin:24px 0}.streaming-dot.svelte-2kfnqv{display:inline-block;width:8px;height:8px;background:var(--color-accent);border-radius:var(--radius-sm);animation:svelte-2kfnqv-pulse 1s ease-in-out infinite}@keyframes svelte-2kfnqv-pulse{0%,to{opacity:.3}50%{opacity:1}}.scroll-to-bottom-wrapper.svelte-2kfnqv{position:absolute;left:0;right:0;bottom:76px;display:flex;justify-content:center;z-index:2;pointer-events:none}.scroll-to-bottom.svelte-2kfnqv{width:28px;height:28px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #00000026;pointer-events:auto;transition:opacity .15s}.scroll-to-bottom.is-hidden.svelte-2kfnqv{opacity:0;pointer-events:none}.scroll-to-bottom.svelte-2kfnqv:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.agent-input-area.svelte-2kfnqv{padding:12px 16px 16px;flex-shrink:0}.context-chip.svelte-2kfnqv{font-size:12px;color:var(--color-text-tertiary);padding:0 2px 4px;overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(to right,black calc(100% - 16px),transparent);mask-image:linear-gradient(to right,black calc(100% - 16px),transparent)}.text-input.svelte-2kfnqv{display:flex;align-items:flex-end;min-height:var(--row-height);max-height:140px;padding:0 0 0 13px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color .15s}.text-input.svelte-2kfnqv:focus-within{border-color:var(--color-accent)}.input-field.svelte-2kfnqv{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:14px;line-height:20px;color:var(--color-text-primary);resize:none;overflow-y:auto;padding:7px 0 11px;max-height:120px;min-height:20px;white-space:pre-wrap;word-wrap:break-word;field-sizing:content}.input-field.svelte-2kfnqv::placeholder{color:var(--color-text-tertiary)}.agent-panel .stop-btn.send-btn{color:var(--color-accent-text, #ededef)!important;background:var(--color-accent)!important;border-radius:var(--radius-md)}.formatting-palette.svelte-13701ak{position:absolute;bottom:22px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:2px;padding:4px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md, 8px);box-shadow:0 4px 16px #00000014,0 1px 2px #0000000a;z-index:20}.fmt-btn.svelte-13701ak{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background .15s,color .15s}.fmt-btn.svelte-13701ak:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.fmt-sep.svelte-13701ak{width:1px;height:14px;background:var(--color-border);margin:0 3px}.sg-switch{all:unset;box-sizing:border-box;position:relative;display:inline-flex;align-items:center;width:32px;height:18px;padding:2px;border-radius:999px;background:var(--color-border);cursor:pointer;transition:background .15s;flex-shrink:0}.sg-switch[data-state=checked]{background:var(--color-accent)}.sg-switch[data-disabled]{opacity:.5;cursor:not-allowed}.sg-switch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sg-switch-thumb{display:block;width:14px;height:14px;border-radius:50%;background:var(--color-bg);transform:translate(0);transition:transform .15s;pointer-events:none}.sg-switch[data-state=checked] .sg-switch-thumb{transform:translate(14px);background:var(--color-accent-text)}.profile-sections.svelte-1vpgrso{display:flex;flex-direction:column;gap:24px}.section.svelte-1vpgrso{display:flex;flex-direction:column;gap:12px}.section-label.svelte-1vpgrso{font-size:14px;font-weight:500;color:var(--color-text-primary);margin:0}.color-grid.svelte-1vpgrso{display:flex;gap:10px;flex-wrap:wrap}.color-swatch.svelte-1vpgrso{width:24px;height:24px;border-radius:50%;border:none;cursor:pointer;outline:2px solid transparent;outline-offset:2px;transition:outline-color .15s}.color-swatch.svelte-1vpgrso:hover:not(.active){outline-color:var(--swatch-color)}.color-swatch.active.svelte-1vpgrso{outline-color:var(--color-text-primary)}.toggle-row.svelte-1vpgrso{display:inline-flex;align-items:center;gap:10px;cursor:pointer;width:fit-content}.toggle-title.svelte-1vpgrso{font-size:14px;color:var(--color-text-primary);line-height:1.3}.fields.svelte-1vpgrso{display:flex;flex-direction:column;gap:16px}.field.svelte-1vpgrso{display:flex;flex-direction:column;gap:8px}.password-wrapper.svelte-1vpgrso{position:relative}.pw-toggle.svelte-1vpgrso{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);padding:4px;display:flex}.pw-toggle.svelte-1vpgrso:hover{color:var(--color-text-secondary)}.error-msg.svelte-1vpgrso{font-size:14px;color:var(--color-error, #e55)}.meeting-settings.svelte-67gzoi{padding:24px 32px}.panel-title.svelte-67gzoi{font-size:18px;font-weight:600;margin-bottom:8px}.panel-description.svelte-67gzoi{font-size:14px;color:var(--color-text-secondary);margin-bottom:24px;line-height:1.5}.setting-group.svelte-67gzoi{margin-bottom:20px}.setting-help.svelte-67gzoi{font-size:13px;color:var(--color-text-tertiary);margin-top:4px}.setting-help.svelte-67gzoi a:where(.svelte-67gzoi){color:var(--color-accent-fg)}.select-input.svelte-67gzoi{width:100%;padding:8px 12px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-primary);font-size:14px;font-family:inherit;outline:none;margin-top:4px}.select-input.svelte-67gzoi:focus{border-color:var(--color-border-strong)}.error-text.svelte-67gzoi{color:var(--color-destructive-fg, #f04e4e);font-size:13px;margin-bottom:12px}.loading-text.svelte-67gzoi{color:var(--color-text-tertiary);font-size:14px}.save-row.svelte-67gzoi{margin-top:24px}.split-layout.svelte-1pdwh4i{display:flex;min-height:520px;max-height:calc(100vh - 160px)}.settings-sidebar.svelte-1pdwh4i{width:240px;flex-shrink:0;border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:16px 12px}.sidebar-header.svelte-1pdwh4i{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);padding:4px 12px 16px}.sidebar-nav.svelte-1pdwh4i{display:flex;flex-direction:column;gap:2px}.sidebar-nav.svelte-1pdwh4i .nav-item{display:flex;align-items:center;gap:10px;padding:0 12px;height:40px;border-radius:var(--radius-lg);font-size:14px;color:var(--color-text-secondary);text-align:left;width:100%;justify-content:flex-start}.sidebar-nav.svelte-1pdwh4i .nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-nav.svelte-1pdwh4i .nav-item.active{background:var(--color-bg-selected);color:var(--color-text-primary);font-weight:600}.settings-main.svelte-1pdwh4i{flex:1;min-width:0;display:flex;flex-direction:column}.settings-main.svelte-1pdwh4i .dialog-body{padding:0 24px 24px}.panel-title.svelte-1pdwh4i{font-size:20px;font-weight:400;color:var(--color-text-primary);margin:0 0 24px;letter-spacing:-.01em;line-height:1.2}.hint.svelte-1pdwh4i{font-size:14px;color:var(--color-text-tertiary);margin:0}.error-msg.svelte-1pdwh4i{font-size:14px;color:var(--color-error, #e55)}.card.svelte-1pdwh4i{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px;transition:border-color .15s}.card-row.svelte-1pdwh4i{display:flex;align-items:center;gap:14px}.card-title.svelte-1pdwh4i{font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.2}.panel-lede.svelte-1pdwh4i{margin:0 0 20px;max-width:620px;font-size:14px;line-height:22px;color:var(--color-text-primary)}.member-list.svelte-1pdwh4i{display:flex;flex-direction:column;gap:8px}.token-card.svelte-1pdwh4i{cursor:pointer;width:100%;text-align:left;font-family:inherit}.token-card.svelte-1pdwh4i:hover{border-color:var(--color-text-tertiary)}.token-card.svelte-1pdwh4i .card-title:where(.svelte-1pdwh4i){flex:1;min-width:0}.token-icon.svelte-1pdwh4i{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.folder-chevron.svelte-1pdwh4i{color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.add-btn.svelte-1pdwh4i{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;padding:14px 16px;margin:8px 0;background:transparent;border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-tertiary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.add-btn.svelte-1pdwh4i:hover{border-style:solid;border-color:var(--color-text-tertiary);color:var(--color-text-primary);background:var(--color-bg-surface)}.add-form.svelte-1pdwh4i{display:flex;flex-direction:column;gap:20px;padding:16px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:8px 0}.add-form.svelte-1pdwh4i label{font-size:14px}.add-form-header.svelte-1pdwh4i{display:flex;align-items:center;justify-content:space-between}.add-form-title.svelte-1pdwh4i{font-size:14px;font-weight:600;color:var(--color-text-primary)}.add-form-close.svelte-1pdwh4i{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-tertiary);cursor:pointer;transition:background .15s,color .15s}.add-form-close.svelte-1pdwh4i:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.form-actions.svelte-1pdwh4i{display:flex;justify-content:flex-end;gap:8px}.user-detail-header.svelte-1pdwh4i{display:flex;align-items:center;gap:8px;margin-bottom:16px}.token-icon-lg.svelte-1pdwh4i{width:40px;height:40px;flex-shrink:0;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center}.user-detail-name.svelte-1pdwh4i{font-size:20px;font-weight:400;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.2;min-width:0}.user-detail-field.svelte-1pdwh4i{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.user-detail-field.svelte-1pdwh4i:last-of-type{margin-bottom:24px}.static-value.svelte-1pdwh4i{font-size:14px;color:var(--color-text-primary);line-height:1.4}.value-copy-row.svelte-1pdwh4i{display:flex;align-items:center;gap:8px;min-height:var(--input-height);padding:0 8px 0 13px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;color:var(--color-text-primary)}.value-copy-row.mono.svelte-1pdwh4i{font-family:var(--font-mono, ui-monospace, monospace);font-size:13px}.value-copy-text.svelte-1pdwh4i{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-inline.svelte-1pdwh4i{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--color-text-tertiary);cursor:pointer;transition:color .15s}.copy-inline.svelte-1pdwh4i:hover{color:var(--color-text-primary)}.security-section.svelte-1pdwh4i{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.section-label.svelte-1pdwh4i{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.security-alert.mint-alert{align-items:flex-start!important}.security-alert.mint-alert>svg{margin-top:2px}.security-alert.mint-alert .security-body{gap:14px!important;width:100%}.security-body.svelte-1pdwh4i{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.mint-field.svelte-1pdwh4i{display:flex;flex-direction:column;gap:6px}.mint-field-label-row.svelte-1pdwh4i{display:flex;align-items:center;justify-content:space-between}.config-block.svelte-1pdwh4i{font-family:var(--font-mono, ui-monospace, monospace);font-size:12.5px;line-height:20px;color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;margin:0;white-space:pre-wrap;word-break:break-all;overflow:auto;max-height:240px}.lost-config-hint.svelte-1pdwh4i{font-size:14px;color:var(--color-text-primary);margin:0 0 24px}.inline-link.svelte-1pdwh4i{background:transparent;border:none;padding:0;font:inherit;color:var(--color-text-primary);text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 50%,transparent);text-decoration-thickness:1px;text-underline-offset:3px;transition:text-decoration-color .15s ease;cursor:pointer}.inline-link.svelte-1pdwh4i:hover{text-decoration-color:transparent}.danger-zone.svelte-1pdwh4i{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.danger-label.svelte-1pdwh4i{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.danger-body.svelte-1pdwh4i{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.danger-actions.svelte-1pdwh4i{display:flex;gap:4px;flex-shrink:0}.mono-input{font-family:var(--font-mono, monospace)!important;font-size:13px!important}.mcp-config-textarea{font-family:var(--font-mono, ui-monospace, monospace)!important;font-size:13px!important}.connected-label.svelte-1pdwh4i{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--color-accent-fg);background:none;border:none;font-family:inherit;cursor:default;padding:0}button.connected-label.svelte-1pdwh4i{cursor:pointer}button.connected-label.svelte-1pdwh4i:hover{opacity:.7}.field.svelte-1pdwh4i{display:flex;flex-direction:column;gap:8px}.inline-edit.svelte-1e8pbku{display:flex;align-items:center;position:relative}.inline-edit.svelte-1e8pbku .inline-edit-input{height:40px!important;padding-right:72px!important}.inline-edit.lg.svelte-1e8pbku .inline-edit-input{font-size:20px!important;font-weight:400;line-height:1.2;letter-spacing:-.01em}.inline-edit-save.svelte-1e8pbku,.inline-edit-cancel.svelte-1e8pbku{position:absolute;top:50%;transform:translateY(-50%);border:none;border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.inline-edit-save.svelte-1e8pbku{right:8px;background:var(--color-accent);color:var(--color-accent-text, #ededef)}.inline-edit-save.svelte-1e8pbku:hover:not(:disabled){background:var(--color-accent-hover, var(--color-accent))}.inline-edit-cancel.svelte-1e8pbku{right:40px;background:transparent;color:var(--color-text-tertiary)}.inline-edit-cancel.svelte-1e8pbku:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.inline-edit-save.svelte-1e8pbku:disabled,.inline-edit-cancel.svelte-1e8pbku:disabled{opacity:.5;cursor:not-allowed}.user-folders.svelte-cwrr30{display:flex;flex-direction:column;gap:4px}.uf-header.svelte-cwrr30{display:flex;align-items:center;margin-bottom:4px;padding-top:16px;border-top:1px solid var(--color-border)}.uf-label.svelte-cwrr30,.uf-sublabel.svelte-cwrr30{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.uf-sublabel.svelte-cwrr30{margin-top:16px;margin-bottom:4px;padding-top:16px;border-top:1px solid var(--color-border)}.uf-sublabel-toggle.svelte-cwrr30{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;font-family:inherit;cursor:pointer;text-align:left}.uf-sublabel-chevron.svelte-cwrr30{display:inline-flex;color:var(--color-text-tertiary);transition:transform .15s ease;transform:rotate(-90deg)}.uf-sublabel-chevron.open.svelte-cwrr30{transform:rotate(0)}.uf-row.svelte-cwrr30{display:flex;align-items:center;gap:10px;height:44px;font-size:14px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-lg)}.uf-confirm.svelte-cwrr30{background:color-mix(in srgb,var(--color-accent-fg) 10%,transparent);border-color:color-mix(in srgb,var(--color-accent-fg) 30%,transparent)}.uf-confirm.svelte-cwrr30 button:not([class*=destructive]):hover{background:color-mix(in srgb,var(--color-accent-fg) 15%,transparent)!important;color:var(--color-text-primary)!important}.uf-confirm.svelte-cwrr30 svg{color:var(--color-accent-fg)!important}.uf-confirm-text.svelte-cwrr30{font-size:14px;color:var(--color-text-primary);flex:1}.uf-actions.svelte-cwrr30{display:flex;gap:4px;flex-shrink:0}.uf-row.svelte-cwrr30 svg{color:var(--color-text-secondary);flex-shrink:0}.uf-name.svelte-cwrr30{font-size:14px;font-weight:500;color:var(--color-text-primary)}.uf-name-muted.svelte-cwrr30{color:var(--color-text-secondary);font-weight:400}.uf-role-label.svelte-cwrr30{font-size:12px;font-weight:400;color:var(--color-text-tertiary);padding-right:4px}.uf-flex.svelte-cwrr30{flex:1}.uf-trash-placeholder.svelte-cwrr30{width:28px;height:28px;flex-shrink:0}.split-layout.svelte-1hdlfew{display:flex;min-height:560px;max-height:calc(100vh - 160px)}.settings-sidebar.svelte-1hdlfew{width:240px;flex-shrink:0;border-right:1px solid var(--color-border);display:flex;flex-direction:column;padding:16px 12px}.sidebar-header.svelte-1hdlfew{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);padding:4px 12px 16px}.sidebar-nav.svelte-1hdlfew{display:flex;flex-direction:column;gap:2px}.sidebar-nav.svelte-1hdlfew .nav-item{display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:var(--radius-lg);font-size:14px;color:var(--color-text-secondary);text-align:left;width:100%;justify-content:flex-start;height:40px}.sidebar-nav.svelte-1hdlfew .nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-nav.svelte-1hdlfew .nav-item.active{background:var(--color-bg-selected);color:var(--color-text-primary);font-weight:600}.settings-main.svelte-1hdlfew{flex:1;min-width:0;display:flex;flex-direction:column}.settings-body{padding:0 24px 24px!important}.panel-title.svelte-1hdlfew{font-size:20px;font-weight:400;color:var(--color-text-primary);margin:0 0 24px;letter-spacing:-.01em;line-height:1.2}.hint.svelte-1hdlfew{font-size:14px;color:var(--color-text-tertiary);margin:0}.error-msg.svelte-1hdlfew{font-size:14px;color:var(--color-error, #e55)}.fields.svelte-1hdlfew{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.field.svelte-1hdlfew{display:flex;flex-direction:column;gap:6px}.form-actions.svelte-1hdlfew{display:flex;justify-content:flex-end;gap:8px}.save-row.svelte-1hdlfew{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.search-wrapper.svelte-1hdlfew{position:relative;margin-bottom:8px;color:var(--color-text-tertiary)}.search-wrapper.svelte-1hdlfew svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none}.search-input.svelte-1hdlfew{width:100%;height:var(--input-height);padding:0 13px 0 36px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;color:var(--color-text-primary);font-family:inherit;outline:none;transition:border-color .15s}.search-input.svelte-1hdlfew::placeholder{color:var(--color-text-tertiary)}.search-input.svelte-1hdlfew:focus{border-color:var(--color-accent)}.card.svelte-1hdlfew{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px;transition:border-color .15s}.card-row.svelte-1hdlfew{display:flex;align-items:center;gap:14px}.card-title.svelte-1hdlfew{font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.2}.member-list.svelte-1hdlfew,.folder-list.svelte-1hdlfew{display:flex;flex-direction:column;gap:8px}.member-role-chip.svelte-1hdlfew{display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;line-height:1;color:var(--color-accent-fg);background:color-mix(in srgb,var(--color-accent-fg) 12%,transparent)}.count-pill.svelte-1hdlfew{display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:24px;padding:0 8px;box-sizing:border-box;border-radius:999px;font-size:12px;font-weight:500;line-height:1;color:var(--color-text-secondary);background:var(--color-bg-hover)}.user-avatar.svelte-1hdlfew{width:24px;height:24px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.icon-danger:hover{color:var(--color-text-primary)!important;background:var(--color-bg-hover)!important}.folder-card.svelte-1hdlfew,.member-card.svelte-1hdlfew{cursor:pointer;width:100%;text-align:left;font-family:inherit}.folder-card.svelte-1hdlfew:hover,.member-card.svelte-1hdlfew:hover{border-color:var(--color-text-tertiary)}.member-card.svelte-1hdlfew .card-title:where(.svelte-1hdlfew),.folder-card.svelte-1hdlfew .card-title:where(.svelte-1hdlfew){flex:1;min-width:0}.folder-chevron.svelte-1hdlfew{color:var(--color-text-tertiary);display:flex;align-items:center;justify-content:center;width:28px;flex-shrink:0}.folder-detail-header.svelte-1hdlfew{display:flex;align-items:center;gap:8px;margin-bottom:16px}.folder-icon-lg.svelte-1hdlfew{width:40px;height:40px;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.folder-detail-name.svelte-1hdlfew{font-size:20px;font-weight:400;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.2;min-width:0}.detail-section.svelte-1hdlfew{display:flex;flex-direction:column;gap:8px;margin-top:24px}.danger-zone.svelte-1hdlfew{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.danger-label.svelte-1hdlfew{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.danger-alert{align-items:center!important;gap:14px!important;padding:14px 20px!important}.danger-body.svelte-1hdlfew{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.danger-actions.svelte-1hdlfew{display:flex;gap:4px;flex-shrink:0}.danger-cancel:hover{background-color:color-mix(in srgb,var(--color-accent-fg) 15%,transparent)!important}.delete-col-btn:hover{color:var(--color-accent-fg)!important;background:var(--color-accent-muted)!important}.user-detail-header.svelte-1hdlfew{display:flex;align-items:center;gap:8px;margin-bottom:16px}.user-avatar-slot.svelte-1hdlfew{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.user-avatar-lg.svelte-1hdlfew{width:32px;height:32px;border-radius:50%;background:var(--color-accent);color:var(--color-accent-text, #ededef);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-detail-name.svelte-1hdlfew{font-size:20px;font-weight:400;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.2;min-width:0}.user-detail-field.svelte-1hdlfew{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.user-detail-field.svelte-1hdlfew:last-of-type{margin-bottom:24px}.static-value.svelte-1hdlfew{font-size:14px;color:var(--color-text-primary);line-height:1.4}.security-section.svelte-1hdlfew{margin-top:24px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:8px}.section-label.svelte-1hdlfew{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary)}.security-alert{align-items:center!important;gap:14px!important;padding:14px 20px!important}.security-body.svelte-1hdlfew{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.reset-inline-row.svelte-1hdlfew{display:flex;align-items:center;gap:8px}.reset-inline-row.svelte-1hdlfew .reset-input{flex:1}.security-alert .reset-submit-btn{background:var(--color-accent)!important;color:var(--color-accent-text, #ededef)!important}.security-alert .reset-submit-btn:hover:not(:disabled){background:var(--color-accent-hover)!important}.security-alert .reset-input:focus{border-color:var(--color-accent)!important}.add-btn.svelte-1hdlfew{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;padding:14px 16px;margin:8px 0;background:transparent;border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);color:var(--color-text-tertiary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.add-btn.svelte-1hdlfew:hover{border-style:solid;border-color:var(--color-text-tertiary);color:var(--color-text-primary);background:var(--color-bg-surface)}.add-form.svelte-1hdlfew{display:flex;flex-direction:column;gap:20px;padding:16px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:8px 0}.add-form.svelte-1hdlfew label{font-size:14px}.add-form-header.svelte-1hdlfew{display:flex;align-items:center;justify-content:space-between}.add-form-title.svelte-1hdlfew{font-size:14px;font-weight:600;color:var(--color-text-primary)}.add-form-close.svelte-1hdlfew{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);background:transparent;border:none;color:var(--color-text-tertiary);cursor:pointer;transition:background .15s,color .15s}.add-form-close.svelte-1hdlfew:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.role-hint.svelte-1hdlfew{font-size:12px;color:var(--color-text-tertiary);margin:4px 0 0;line-height:1.4}.app-frame.svelte-vr1z90{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg)}.app-body.svelte-vr1z90{flex:1;display:flex;min-height:0;overflow:hidden}.main-content.svelte-vr1z90{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative}.wikilink-popup.svelte-1hc6xb6{position:fixed;z-index:1100;width:360px;max-height:320px;display:flex;flex-direction:column;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:0 8px 24px #0000004d;overflow:hidden;font-family:var(--font-sans)}.wikilink-list.svelte-1hc6xb6{overflow-y:auto;padding:6px;flex:1;min-height:0}.wikilink-item.svelte-1hc6xb6{all:unset;cursor:pointer;display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:0 12px;min-height:36px;border-radius:var(--radius-sm);font-size:14px;color:var(--color-text-primary)}.wikilink-item.selected.svelte-1hc6xb6{background:var(--color-bg-hover)}.wikilink-dot.svelte-1hc6xb6{width:10px;height:10px;border-radius:50%;flex-shrink:0}.wikilink-title.svelte-1hc6xb6{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wikilink-meta.svelte-1hc6xb6{font-size:13px;color:var(--color-text-secondary);flex-shrink:0}
@@ -0,0 +1 @@
1
+ .property-row.svelte-eh8ho9{position:relative;display:grid;grid-template-columns:20px 130px 1fr;align-items:start;gap:10px;padding:5px 8px;margin:0 -8px;border-radius:var(--radius-sm);min-height:30px}.row-editable.svelte-eh8ho9{cursor:pointer}.row-editable.svelte-eh8ho9:hover{background:var(--color-bg-hover)}.prop-icon.svelte-eh8ho9{display:flex;align-items:center;justify-content:center;height:24px;color:var(--color-text-tertiary)}.prop-key.svelte-eh8ho9{font-size:14px;line-height:24px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prop-value.svelte-eh8ho9{font-size:14px;line-height:24px;color:var(--color-text-primary);display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;min-width:0}.dot.svelte-eh8ho9{width:6px;height:6px;border-radius:50%;flex-shrink:0;align-self:center}.empty-hint.svelte-eh8ho9{color:var(--color-text-tertiary)}.text-value.svelte-eh8ho9{word-break:break-word;line-height:1.5}.wikilink-chip.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:999px;border:none}.wikilink-active.svelte-eh8ho9{background:color-mix(in srgb,var(--color-accent-fg) 17%,transparent);color:var(--color-text-primary);cursor:pointer}.wikilink-active.svelte-eh8ho9:hover{background:color-mix(in srgb,var(--color-accent-fg) 27%,transparent)}.wikilink-inactive.svelte-eh8ho9{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.tag-pill.svelte-eh8ho9{display:inline-flex;align-items:center;padding:2px 14px;font-size:13px;font-family:inherit;border-radius:999px;background:var(--color-bg-surface);color:var(--color-text-secondary)}.url-link.svelte-eh8ho9{color:var(--color-link, var(--color-accent));text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.url-link.svelte-eh8ho9:hover{text-decoration:underline}.schema-list.svelte-eh8ho9{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;width:100%}.schema-row.svelte-eh8ho9{display:flex;align-items:baseline;gap:10px;line-height:20px}.schema-col-name.svelte-eh8ho9{color:var(--color-text-primary);font-variant-numeric:tabular-nums}.schema-col-type.svelte-eh8ho9{color:var(--color-text-tertiary);font-size:13px}.badge-value.svelte-eh8ho9{display:inline-flex;padding:2px 8px;font-size:12px;border-radius:var(--radius-sm);background:var(--color-bg-surface);color:var(--color-text-secondary)}.edit-btn.svelte-eh8ho9{all:unset;position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--color-text-tertiary);cursor:pointer;opacity:0;transition:opacity .15s}.property-row.svelte-eh8ho9:hover .edit-btn:where(.svelte-eh8ho9){opacity:1}.property-row.is-list.svelte-eh8ho9 .edit-btn:where(.svelte-eh8ho9){top:8px;transform:none}.autocomplete-wrapper.svelte-84vb17{width:100%}.input-area.svelte-84vb17{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color .15s}.input-area.has-results.svelte-84vb17{border-color:var(--color-accent)}.input-container.svelte-84vb17{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:36px;padding:4px 8px;cursor:text}.chip.svelte-84vb17{all:unset;display:inline-flex;align-items:center;gap:4px;padding:2px 12px;border-radius:999px;font-size:13px;background:color-mix(in srgb,var(--color-accent-fg) 17%,transparent);color:var(--color-text-secondary);cursor:pointer;flex-shrink:0}.chip.svelte-84vb17:hover{background:color-mix(in srgb,var(--color-accent-fg) 27%,transparent);color:var(--color-text-primary)}.chip.chip-inactive.svelte-84vb17{background:var(--color-bg-surface);color:var(--color-text-tertiary)}.input-wrap.svelte-84vb17{display:flex;align-items:center;gap:6px;flex:1;min-width:80px}.search-icon-wrap.svelte-84vb17{color:var(--color-text-tertiary);display:flex;align-items:center;flex-shrink:0}.ac-input{flex:1;min-width:60px;height:24px;padding:0;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none}.results-list{border-top:1px solid var(--color-border);max-height:200px;overflow-y:auto;padding:4px}.combobox-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;outline:none}.combobox-item[data-highlighted]{background:var(--color-bg-hover)}.entity-title.svelte-84vb17{font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.entity-type-label.svelte-84vb17{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.combobox-hint.svelte-84vb17{padding:8px;font-size:13px;color:var(--color-text-tertiary)}.field-edit-form.svelte-1ez75tk{display:flex;flex-direction:column;gap:16px}.form-row.svelte-1ez75tk{display:flex;flex-direction:column;gap:6px}.form-label.svelte-1ez75tk{font-size:12px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.form-textarea.svelte-1ez75tk{font-size:14px;font-family:inherit;color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 10px;resize:vertical;outline:none;line-height:1.5;field-sizing:content;min-height:60px}.form-textarea.svelte-1ez75tk:focus{border-color:var(--color-accent)}.form-error.svelte-1ez75tk{font-size:12px;color:var(--color-destructive-fg, #f04e4e)}.status-dot.svelte-1ez75tk{width:6px;height:6px;border-radius:50%;flex-shrink:0}.item-label{display:inline-flex;align-items:center;gap:6px;flex:1}.danger-body.svelte-1ez75tk{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.inline-type-list.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg, #fff);max-height:300px;overflow-y:auto;padding:4px}.type-option.svelte-1ez75tk{all:unset;display:flex;align-items:center;gap:6px;width:100%;height:36px;padding:0 10px;border-radius:var(--radius-sm);font-size:14px;font-family:inherit;color:var(--color-text-secondary);cursor:pointer;box-sizing:border-box}.type-option.svelte-1ez75tk:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.type-option.type-selected.svelte-1ez75tk{color:var(--color-text-primary);font-weight:600}.type-check{margin-left:auto;color:var(--color-accent-fg, #f04e4e);flex-shrink:0}.delete-btn{color:var(--color-text-secondary)!important;margin-right:auto!important}.footer-right.svelte-1ez75tk{display:flex;gap:8px;margin-left:auto}.inline-calendar.svelte-1ez75tk{display:flex;flex-direction:column;gap:8px}.cal-container.svelte-1ez75tk{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg, #fff);overflow:hidden}.cal-text-input.svelte-1ez75tk{width:100%;padding:8px 10px;font-size:14px;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;border-bottom:1px solid var(--color-border);outline:none;box-sizing:border-box}.cal-text-input.svelte-1ez75tk:focus{border-bottom-color:var(--color-accent)}.cal-text-input.svelte-1ez75tk::placeholder{color:var(--color-text-tertiary)}.cal-body.svelte-1ez75tk{padding:10px}.cal-header.svelte-1ez75tk{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.cal-heading{font-size:14px;font-weight:600;color:var(--color-text-primary)}.cal-nav-btn{all:unset;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer}.cal-nav-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.cal-nav-btn[data-disabled]{opacity:.3;pointer-events:none}.cal-grid{border-collapse:collapse;width:100%}.cal-grid-row{display:flex}.cal-head-cell{flex:1;height:28px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;color:var(--color-text-tertiary);text-transform:uppercase}.cal-cell{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center}.cal-day{all:unset;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:13px;border-radius:var(--radius-lg);color:var(--color-text-primary);cursor:pointer;transition:background .15s}.cal-day:hover{background:var(--color-bg-hover)}.cal-day[data-selected]{background:var(--color-accent);color:var(--color-accent-text, #ededef);font-weight:600}.cal-day[data-today]:not([data-selected]){border:1px solid var(--color-accent-fg)}.cal-day[data-outside-month]{color:var(--color-text-tertiary);opacity:.4}.cal-day[data-disabled]{opacity:.2;pointer-events:none}.entity-properties.svelte-1a2lez6{padding:16px 0 8px}.entity-properties.metadata-open.svelte-1a2lez6{padding-bottom:20px;border-bottom:1px solid var(--color-border)}.name-headline.svelte-1a2lez6{position:relative;display:flex;align-items:flex-start;margin:32px 0 20px;cursor:text}.task-checkbox{position:absolute;top:7px;left:-28px}.task-done.svelte-1a2lez6 .name-input:where(.svelte-1a2lez6){text-decoration:line-through;color:var(--color-text-tertiary)}.name-input.svelte-1a2lez6{font-size:22px;font-weight:600;font-family:inherit;color:var(--color-text-primary);background:transparent;border:none;outline:none;width:100%;line-height:1.3;padding:0;resize:none;overflow:hidden;display:block}.subheadline-date.svelte-1a2lez6{all:unset;display:block;font-size:15px;color:var(--color-text-secondary);margin:-12px 0 20px}button.subheadline-date.svelte-1a2lez6{cursor:pointer}button.subheadline-date.svelte-1a2lez6:hover{color:var(--color-text-primary)}.subheadline-date.placeholder.svelte-1a2lez6{color:var(--color-text-tertiary)}.subheadline-date.overdue.svelte-1a2lez6{color:var(--color-accent-fg)}.entity-breadcrumb-row.svelte-1a2lez6{position:relative;display:flex;align-items:center;gap:8px;padding-bottom:16px;border-bottom:1px solid var(--color-border);min-height:24px}.folder-breadcrumb.svelte-1a2lez6{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary);text-decoration:none}.folder-breadcrumb.svelte-1a2lez6:hover{color:var(--color-text-primary)}.breadcrumb-sep.svelte-1a2lez6{font-size:14px;color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none}.entity-type-crumb.svelte-1a2lez6{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary)}.entity-type-crumb-toggle.svelte-1a2lez6{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary);transition:color .15s}.entity-type-crumb-toggle.svelte-1a2lez6:hover,.entity-type-crumb-toggle.open.svelte-1a2lez6{color:var(--color-text-primary)}.entity-overflow-btn{all:unset;margin-left:auto;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--color-text-tertiary);cursor:pointer}.entity-overflow-btn:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.fields-action-btn.svelte-1a2lez6{all:unset;display:inline-flex;margin-left:30px;font-size:14px;font-family:inherit;color:var(--color-text-tertiary);cursor:pointer;padding:6px 0;margin-top:4px}.fields-action-btn.svelte-1a2lez6:hover{color:var(--color-text-secondary)}.fields-list.svelte-1a2lez6{margin-top:12px}.dotted-item{display:flex!important;align-items:center!important;gap:8px!important}.dialog-desc.svelte-1a2lez6{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px}.dialog-radio-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary)}.dialog-check-item.svelte-1a2lez6{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-sm)}.dialog-check-item.svelte-1a2lez6:hover{background:var(--color-bg-hover)}.connections-panel.svelte-16xienp{margin:48px 0 40px;padding-top:16px;border-top:1px solid var(--color-border)}.connections-header.svelte-16xienp{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.connections-header.svelte-16xienp:hover{color:var(--color-text-primary)}.header-chevron.svelte-16xienp{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-16xienp{transform:rotate(0)}.header-label.svelte-16xienp{font-weight:400}.header-count.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary)}.connections-body.svelte-16xienp{display:flex;flex-direction:column;gap:0;margin-top:8px}.connection-chip.svelte-16xienp{display:flex;align-items:baseline;gap:10px;padding:6px 8px;margin:0 -8px;background:none;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:13px;color:var(--color-text-primary);cursor:pointer;text-align:left}.connection-chip.svelte-16xienp:hover{background:var(--color-bg-hover)}.chip-dot.svelte-16xienp{width:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}.chip-dot.svelte-16xienp:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--dot-color)}.chip-name.svelte-16xienp{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-type.svelte-16xienp{font-size:12px;color:var(--color-text-tertiary);flex-shrink:0}.history-panel.svelte-1wxto27{border-top:1px solid var(--color-border);margin-top:8px;padding-top:16px;margin-bottom:40px}.history-header.svelte-1wxto27{display:flex;align-items:baseline;gap:10px;background:none;border:none;font-family:inherit;font-size:14px;color:var(--color-text-secondary);cursor:pointer;padding:4px 8px;margin:0 -8px}.history-header.svelte-1wxto27:hover{color:var(--color-text-primary)}.header-chevron.svelte-1wxto27{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:20px;color:var(--color-text-tertiary);transition:transform .15s;transform:rotate(90deg)}.header-chevron.collapsed.svelte-1wxto27{transform:rotate(0)}.header-label.svelte-1wxto27{font-weight:400}.header-count.svelte-1wxto27{font-size:12px;color:var(--color-text-tertiary)}.history-body.svelte-1wxto27{display:flex;flex-direction:column;margin-top:8px}.history-loading.svelte-1wxto27{padding:8px 0;font-size:13px;color:var(--color-text-tertiary)}.history-entry.svelte-1wxto27{display:flex;align-items:flex-start;gap:10px;padding:6px 8px 6px 0}.entry-dot.svelte-1wxto27{width:20px;height:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:8px}.entry-dot.svelte-1wxto27:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-text-tertiary)}.history-entry.first.svelte-1wxto27 .entry-dot:where(.svelte-1wxto27):after{background:var(--color-accent)}.entry-content.svelte-1wxto27{flex:1;min-width:0}.entry-message.svelte-1wxto27{font-size:13px;color:var(--color-text-primary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry-meta.svelte-1wxto27{display:flex;gap:8px;margin-top:0;font-size:12px;color:var(--color-text-tertiary)}.editor-wrap.svelte-ok7wy5{display:flex;min-height:0;position:relative}.cm-container.svelte-ok7wy5{flex:1;min-height:100px}.cm-container.svelte-ok7wy5 .cm-editor{min-height:100px;outline:none}.cm-container.svelte-ok7wy5 .cm-scroller{overflow:visible!important}.cursor-overlay.svelte-ok7wy5{position:absolute;inset:0;pointer-events:none;overflow:hidden}.remote-cursor.svelte-ok7wy5{position:absolute;width:2px;background-color:var(--cursor-color);z-index:10}.remote-cursor-label.svelte-ok7wy5{position:absolute;top:-1.4em;left:-1px;font-size:12px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.5;color:var(--color-accent-text, #ededef)}.flipped.svelte-ok7wy5 .remote-cursor-label:where(.svelte-ok7wy5){left:auto;right:-1px;border-radius:3px 3px 0}.csv-editor.svelte-63hltt{padding:32px 16px 0}.table-scroll.svelte-63hltt{overflow-x:auto}table.svelte-63hltt{border-collapse:collapse;width:max-content;font-size:14px;font-family:var(--font-sans)}th.svelte-63hltt,td.svelte-63hltt{border:1px solid var(--color-border);padding:0;height:32px;min-width:120px;max-width:300px}th.svelte-63hltt{background:transparent;font-weight:500;color:var(--color-text-secondary);position:sticky;top:0;z-index:1}th.svelte-63hltt:not(.row-num):not(.col-add){position:sticky;top:0;z-index:1}.row-num.svelte-63hltt{width:40px;min-width:40px;max-width:40px;text-align:center;color:var(--color-text-tertiary);font-size:12px;background:transparent}.cell-input.svelte-63hltt{width:100%;height:100%;border:none;background:transparent;color:var(--color-text-primary);font-family:var(--font-sans);font-size:14px;padding:4px 8px;outline:none}.cell-input.svelte-63hltt:focus{outline:1px solid var(--color-accent);outline-offset:-1px}.header-input.svelte-63hltt{font-weight:500;color:var(--color-text-secondary)}th.svelte-63hltt:not(.row-num):not(.col-add){position:relative}th.svelte-63hltt button.col-delete-btn{position:absolute;top:0;right:0;bottom:0;width:32px;display:none;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-text-tertiary);padding:0}th.svelte-63hltt:hover button.col-delete-btn{display:flex}th.svelte-63hltt button.col-delete-btn:hover{background:var(--color-bg)!important;color:var(--color-text-primary)!important}.col-add.svelte-63hltt{width:32px;min-width:32px;max-width:32px;background:transparent}.col-add.svelte-63hltt .col-add-btn{width:100%;height:100%;border-radius:0;padding:0}.col-add.svelte-63hltt .col-add-btn:hover{color:var(--color-accent-fg)}.actions.svelte-63hltt{width:32px;min-width:32px;max-width:32px;text-align:center;vertical-align:middle}td.actions.svelte-63hltt button.delete-btn{display:none;align-items:center;justify-content:center;width:32px;height:100%;padding:0;margin:0 auto;background:transparent;color:var(--color-text-tertiary)}tr.svelte-63hltt:hover td.actions:where(.svelte-63hltt) button.delete-btn{display:flex}td.actions.svelte-63hltt button.delete-btn:hover{background:transparent!important;color:var(--color-text-primary)!important}.csv-footer.svelte-63hltt{display:flex;align-items:center;gap:16px;padding:8px 0}.csv-footer.svelte-63hltt .add-row-btn{font-size:14px}.remote-active.svelte-63hltt{outline:2px solid var(--rc-color, #f04e4e);outline-offset:-2px;position:relative}.remote-cell-label.svelte-63hltt{position:absolute;top:-18px;left:-1px;font-size:11px;font-family:var(--font-sans);font-weight:500;padding:0 4px;border-radius:3px 3px 3px 0;white-space:nowrap;line-height:1.6;color:var(--color-accent-text, #ededef);z-index:2;pointer-events:none}.document-scroll.svelte-udj3er{flex:1;overflow-y:auto;min-height:0}.document-well.svelte-udj3er{max-width:720px;margin:0 auto;padding:0 40px;width:100%;box-sizing:border-box}.dataset-view.svelte-udj3er .entity-properties{border-bottom:none}.dataset-view.svelte-udj3er .connections-panel{border-top:none}.processing-indicator.svelte-udj3er{display:flex;align-items:center;gap:8px;max-width:720px;margin:0 auto;padding:12px 40px;font-size:14px;color:var(--color-text-secondary)}.processing-dot.svelte-udj3er{width:8px;height:8px;border-radius:50%;background:var(--color-accent);animation:svelte-udj3er-pulse 1.5s ease-in-out infinite}@keyframes svelte-udj3er-pulse{0%,to{opacity:1}50%{opacity:.3}}
@@ -1 +1 @@
1
- .sg-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);padding:4px;min-width:var(--menu-min-width);box-shadow:0 4px 16px #0003;z-index:1100}.sg-menu-item{display:flex;align-items:center;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.sg-menu-item:hover,.sg-menu-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.sg-menu-item[data-disabled]{opacity:.5;cursor:not-allowed}.sg-menu-item-destructive{color:var(--color-text-secondary)}.sg-menu-separator{height:1px;background:var(--color-border);margin:4px 0}.sg-menu-label{padding:6px 12px 2px;font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.radio-item{position:relative;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--color-text-tertiary);background:none;outline:none;flex-shrink:0;cursor:pointer}.radio-item[data-state=checked]{border-color:var(--color-accent-fg)}.radio-item:focus-visible{box-shadow:0 0 0 2px var(--color-accent-fg)}.radio-dot.svelte-l8hbh2{width:8px;height:8px;border-radius:50%;background:var(--color-accent-fg)}.select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;height:var(--input-height, 32px);padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-family:inherit;font-size:14px;cursor:pointer;outline:none;white-space:nowrap;min-width:0;transition:border-color .15s}.select-trigger:hover{border-color:var(--color-border-strong)}.select-trigger:focus-visible{border-color:var(--color-accent, #f04e4e)}.select-trigger[data-disabled]{opacity:.5;cursor:not-allowed}.select-trigger-sm{height:28px;padding:0 8px;font-size:13px}.select-label{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:600}.select-placeholder{color:var(--color-text-tertiary);font-weight:400}.select-chevron{color:var(--color-text-tertiary);flex-shrink:0}.select-content{z-index:1100;min-width:max(var(--bits-select-anchor-width),var(--menu-min-width));max-height:480px;overflow-y:auto;padding:6px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:0 8px 24px #0000004d}.select-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;outline:none}.select-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.select-item[data-selected]{color:var(--color-text-primary);font-weight:600}.select-item[data-disabled]{opacity:.5;cursor:not-allowed}.select-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-item-check{color:var(--color-accent-fg, #f04e4e);flex-shrink:0}.dialog-overlay{position:fixed;inset:0;z-index:1000;background:#0009}[data-theme=light] .dialog-overlay{background:#00000040}.dialog-content{position:fixed;z-index:1001;top:80px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 24px 80px #00000080;max-height:calc(100vh - 160px)}.dialog-sm{width:420px;max-width:90vw}.dialog-md{width:560px;max-width:90vw}.dialog-lg{width:680px;max-width:90vw}.dialog-xl{width:800px;max-width:90vw}.dialog-fit{width:fit-content;min-width:320px;max-width:min(640px,90vw)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px;flex-shrink:0}.dialog-header.close-only-header{justify-content:flex-end;min-height:0}.dialog-title{font-size:20px;font-weight:400;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.2;margin:0}.dialog-description{font-size:14px;color:var(--color-text-secondary);line-height:1.5;margin:0}.dialog-body{padding:16px;overflow-y:auto;flex:1;min-height:0}.dialog-body.dialog-body-lg{padding:0 24px 24px}.dialog-body.dialog-body-lg .dialog-title{margin-bottom:24px}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:24px;flex-shrink:0}.dialog-close-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-md);line-height:1;transition:color .15s,background .15s}.dialog-close-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}
1
+ .sg-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);padding:4px;min-width:var(--menu-min-width);box-shadow:0 4px 16px #0003;z-index:1100}.sg-menu-item{display:flex;align-items:center;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.sg-menu-item:hover,.sg-menu-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.sg-menu-item[data-disabled]{opacity:.5;cursor:not-allowed}.sg-menu-item-destructive{color:var(--color-text-secondary)}.sg-menu-separator{height:1px;background:var(--color-border);margin:4px 0}.sg-menu-label{padding:6px 12px 2px;font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.radio-item{position:relative;display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1.5px solid var(--color-text-tertiary);background:none;outline:none;flex-shrink:0;cursor:pointer}.radio-item[data-state=checked]{border-color:var(--color-accent-fg)}.radio-item:focus-visible{box-shadow:0 0 0 2px var(--color-accent-fg)}.radio-dot.svelte-l8hbh2{width:8px;height:8px;border-radius:50%;background:var(--color-accent-fg)}.select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;height:var(--input-height, 32px);padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);font-family:inherit;font-size:14px;cursor:pointer;outline:none;white-space:nowrap;min-width:0;transition:border-color .15s}.select-trigger:hover{border-color:var(--color-border-strong)}.select-trigger:focus-visible{border-color:var(--color-accent, #f04e4e)}.select-trigger[data-disabled]{opacity:.5;cursor:not-allowed}.select-trigger-sm{height:28px;padding:0 8px;font-size:13px}.select-label{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:600}.select-placeholder{color:var(--color-text-tertiary);font-weight:400}.select-chevron{color:var(--color-text-tertiary);flex-shrink:0}.select-content{z-index:1100;min-width:max(var(--bits-select-anchor-width),var(--menu-min-width));max-height:480px;overflow-y:auto;padding:6px;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:0 8px 24px #0000004d}.select-item{display:flex;align-items:center;gap:8px;min-height:var(--menu-item-height);padding:var(--menu-item-padding);border-radius:var(--menu-item-radius);font-size:var(--menu-font-size);color:var(--color-text-secondary);cursor:pointer;outline:none}.select-item[data-highlighted]{background:var(--color-bg-hover);color:var(--color-text-primary)}.select-item[data-selected]{color:var(--color-text-primary);font-weight:600}.select-item[data-disabled]{opacity:.5;cursor:not-allowed}.select-item-check-slot{display:inline-flex;align-items:center;justify-content:center;width:12px;flex-shrink:0}.select-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-item-check{color:var(--color-accent-fg, #f04e4e);flex-shrink:0}.dialog-overlay{position:fixed;inset:0;z-index:1000;background:#0009}[data-theme=light] .dialog-overlay{background:#00000040}.dialog-content{position:fixed;z-index:1001;top:80px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 24px 80px #00000080;max-height:calc(100vh - 160px)}.dialog-sm{width:420px;max-width:90vw}.dialog-md{width:560px;max-width:90vw}.dialog-lg{width:680px;max-width:90vw}.dialog-xl{width:800px;max-width:90vw}.dialog-fit{width:fit-content;min-width:320px;max-width:min(640px,90vw)}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px;flex-shrink:0}.dialog-header.close-only-header{justify-content:flex-end;min-height:0}.dialog-title{font-size:20px;font-weight:400;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.2;margin:0}.dialog-description{font-size:14px;color:var(--color-text-secondary);line-height:1.5;margin:0}.dialog-body{padding:16px;overflow-y:auto;flex:1;min-height:0}.dialog-body.dialog-body-lg{padding:0 24px 24px}.dialog-body.dialog-body-lg .dialog-title{margin-bottom:24px}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:24px;flex-shrink:0}.dialog-close-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-md);line-height:1;transition:color .15s,background .15s}.dialog-close-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}
@@ -1 +1 @@
1
- import{O as _,f as P,g as b,e as W,w as m,a as G,t as k,c as A,r as I,b as q,d as j,h as V,i as R,j as z,k as C,l as K,D as Q,p as X,m as Z}from"./CSVbGg_b.js";import{r as O}from"./w2RYKQMp.js";const T=3e4;class $ extends _{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=b();this.getLocalState()!==null&&T/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&T<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&Y(this,s,"timeout")},P(T/10)),n.on("destroy",()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(n){const e=this.clientID,s=this.meta.get(e),a=s===void 0?0:s.clock+1,c=this.states.get(e);n===null?this.states.delete(e):this.states.set(e,n),this.meta.set(e,{clock:a,lastUpdated:b()});const i=[],u=[],r=[],f=[];n===null?f.push(e):c==null?n!=null&&i.push(e):(u.push(e),W(c,n)||r.push(e)),(i.length>0||r.length>0||f.length>0)&&this.emit("change",[{added:i,updated:r,removed:f},"local"]),this.emit("update",[{added:i,updated:u,removed:f},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const Y=(t,n,e)=>{const s=[];for(let a=0;a<n.length;a++){const c=n[a];if(t.states.has(c)){if(t.states.delete(c),c===t.clientID){const i=t.meta.get(c);t.meta.set(c,{clock:i.clock+1,lastUpdated:b()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},H=(t,n,e=t.states)=>{const s=n.length,a=A();m(a,s);for(let c=0;c<s;c++){const i=n[c],u=e.get(i)||null,r=t.meta.get(i).clock;m(a,i),m(a,r),G(a,JSON.stringify(u))}return k(a)},tt=(t,n,e)=>{const s=j(n),a=b(),c=[],i=[],u=[],r=[],f=I(s);for(let w=0;w<f;w++){const d=I(s);let y=I(s);const h=JSON.parse(q(s)),g=t.meta.get(d),U=t.states.get(d),S=g===void 0?0:g.clock;(S<y||S===y&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?y++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:y,lastUpdated:a}),g===void 0&&h!==null?c.push(d):g!==void 0&&h===null?r.push(d):h!==null&&(W(h,U)||u.push(d),i.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||i.length>0||r.length>0)&&t.emit("update",[{added:c,updated:i,removed:r},e])},B=0,M=1,N=2,et=(t,n)=>{m(t,B);const e=R(n);V(t,e)},nt=(t,n,e)=>{m(t,M),V(t,K(n,e))},st=(t,n,e)=>nt(n,e,C(t)),F=(t,n,e,s)=>{try{z(n,C(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},at=(t,n)=>{m(t,N),V(t,n)},ct=F,ot=(t,n,e,s,a)=>{const c=I(t);switch(c){case B:st(t,n,e);break;case M:F(t,e,s,a);break;case N:ct(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},L=0,x=1;function it(t,n,e){const s=new TextEncoder().encode(t),a=new ArrayBuffer(2+s.length+1+e.length);return new DataView(a).setUint16(0,s.length),new Uint8Array(a,2,s.length).set(s),new Uint8Array(a)[2+s.length]=n,new Uint8Array(a,2+s.length+1).set(e),a}function lt(t){if(t.byteLength<3)return null;const e=new DataView(t).getUint16(0);if(t.byteLength<2+e+1)return null;const s=new TextDecoder().decode(new Uint8Array(t,2,e)),a=new Uint8Array(t)[2+e],c=new Uint8Array(t,2+e+1);return{docName:s,msgType:a,payload:c}}function ut(t,n){const e=new Q,s=e.getText("content"),a=new $(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,i=!1,u=!1;function r(){return O.ws??null}function f(o,p){const l=r();!l||l.readyState!==WebSocket.OPEN||l.send(it(t,o,p))}function w(){const o=A();et(o,e),f(L,k(o))}function d(o){const p=o??[e.clientID],l=H(a,p);f(x,l)}function y(o){if(i||typeof o.data=="string")return;const p=o.data instanceof ArrayBuffer?o.data:null;if(!p)return;const l=lt(p);if(!(!l||l.docName!==t))if(l.msgType===L){const v=j(l.payload),D=X(v),E=A();ot(v,E,e,"ws-server"),Z(E)>0&&f(L,k(E)),!u&&(D===M||D===N)&&(u=!0,S.synced=!0)}else l.msgType===x&&tt(a,l.payload,"ws-server")}function h(o,p){if(i||p==="ws-server")return;const l=A();at(l,o),f(L,k(l))}function g({added:o,updated:p,removed:l},v){if(i||v==="ws-server")return;const D=o.concat(p,l);d(D)}function U(){if(i)return;const o=r();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=y,o.addEventListener("message",c),w(),d())}const S={ydoc:e,ytext:s,awareness:a,synced:!1,destroy:J};e.on("update",h),a.on("update",g),U(),O.addConnectHandler(U);function J(){if(i)return;i=!0,Y(a,[e.clientID],"local"),d([e.clientID]);const o=r();o&&o.readyState===WebSocket.OPEN&&o.send(JSON.stringify({type:"collab:leave",docName:t})),c&&o&&(o.removeEventListener("message",c),c=null),e.off("update",h),a.off("update",g),a.destroy(),e.destroy()}return S}export{ut as createCollabSession};
1
+ import{O as _,f as P,g as b,e as W,w as m,a as G,t as k,c as A,r as I,b as q,d as j,h as V,i as R,j as z,k as C,l as K,D as Q,p as X,m as Z}from"./CSVbGg_b.js";import{r as O}from"./PGO3Vuor.js";const T=3e4;class $ extends _{constructor(n){super(),this.doc=n,this.clientID=n.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const e=b();this.getLocalState()!==null&&T/2<=e-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const s=[];this.meta.forEach((a,c)=>{c!==this.clientID&&T<=e-a.lastUpdated&&this.states.has(c)&&s.push(c)}),s.length>0&&Y(this,s,"timeout")},P(T/10)),n.on("destroy",()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(n){const e=this.clientID,s=this.meta.get(e),a=s===void 0?0:s.clock+1,c=this.states.get(e);n===null?this.states.delete(e):this.states.set(e,n),this.meta.set(e,{clock:a,lastUpdated:b()});const i=[],u=[],r=[],f=[];n===null?f.push(e):c==null?n!=null&&i.push(e):(u.push(e),W(c,n)||r.push(e)),(i.length>0||r.length>0||f.length>0)&&this.emit("change",[{added:i,updated:r,removed:f},"local"]),this.emit("update",[{added:i,updated:u,removed:f},"local"])}setLocalStateField(n,e){const s=this.getLocalState();s!==null&&this.setLocalState({...s,[n]:e})}getStates(){return this.states}}const Y=(t,n,e)=>{const s=[];for(let a=0;a<n.length;a++){const c=n[a];if(t.states.has(c)){if(t.states.delete(c),c===t.clientID){const i=t.meta.get(c);t.meta.set(c,{clock:i.clock+1,lastUpdated:b()})}s.push(c)}}s.length>0&&(t.emit("change",[{added:[],updated:[],removed:s},e]),t.emit("update",[{added:[],updated:[],removed:s},e]))},H=(t,n,e=t.states)=>{const s=n.length,a=A();m(a,s);for(let c=0;c<s;c++){const i=n[c],u=e.get(i)||null,r=t.meta.get(i).clock;m(a,i),m(a,r),G(a,JSON.stringify(u))}return k(a)},tt=(t,n,e)=>{const s=j(n),a=b(),c=[],i=[],u=[],r=[],f=I(s);for(let w=0;w<f;w++){const d=I(s);let y=I(s);const h=JSON.parse(q(s)),g=t.meta.get(d),U=t.states.get(d),S=g===void 0?0:g.clock;(S<y||S===y&&h===null&&t.states.has(d))&&(h===null?d===t.clientID&&t.getLocalState()!=null?y++:t.states.delete(d):t.states.set(d,h),t.meta.set(d,{clock:y,lastUpdated:a}),g===void 0&&h!==null?c.push(d):g!==void 0&&h===null?r.push(d):h!==null&&(W(h,U)||u.push(d),i.push(d)))}(c.length>0||u.length>0||r.length>0)&&t.emit("change",[{added:c,updated:u,removed:r},e]),(c.length>0||i.length>0||r.length>0)&&t.emit("update",[{added:c,updated:i,removed:r},e])},B=0,M=1,N=2,et=(t,n)=>{m(t,B);const e=R(n);V(t,e)},nt=(t,n,e)=>{m(t,M),V(t,K(n,e))},st=(t,n,e)=>nt(n,e,C(t)),F=(t,n,e,s)=>{try{z(n,C(t),e)}catch(a){s?.(a),console.error("Caught error while handling a Yjs update",a)}},at=(t,n)=>{m(t,N),V(t,n)},ct=F,ot=(t,n,e,s,a)=>{const c=I(t);switch(c){case B:st(t,n,e);break;case M:F(t,e,s,a);break;case N:ct(t,e,s,a);break;default:throw new Error("Unknown message type")}return c},L=0,x=1;function it(t,n,e){const s=new TextEncoder().encode(t),a=new ArrayBuffer(2+s.length+1+e.length);return new DataView(a).setUint16(0,s.length),new Uint8Array(a,2,s.length).set(s),new Uint8Array(a)[2+s.length]=n,new Uint8Array(a,2+s.length+1).set(e),a}function lt(t){if(t.byteLength<3)return null;const e=new DataView(t).getUint16(0);if(t.byteLength<2+e+1)return null;const s=new TextDecoder().decode(new Uint8Array(t,2,e)),a=new Uint8Array(t)[2+e],c=new Uint8Array(t,2+e+1);return{docName:s,msgType:a,payload:c}}function ut(t,n){const e=new Q,s=e.getText("content"),a=new $(e);a.setLocalStateField("user",{name:n.name,color:n.color,colorLight:n.colorLight??n.color+"33"});let c=null,i=!1,u=!1;function r(){return O.ws??null}function f(o,p){const l=r();!l||l.readyState!==WebSocket.OPEN||l.send(it(t,o,p))}function w(){const o=A();et(o,e),f(L,k(o))}function d(o){const p=o??[e.clientID],l=H(a,p);f(x,l)}function y(o){if(i||typeof o.data=="string")return;const p=o.data instanceof ArrayBuffer?o.data:null;if(!p)return;const l=lt(p);if(!(!l||l.docName!==t))if(l.msgType===L){const v=j(l.payload),D=X(v),E=A();ot(v,E,e,"ws-server"),Z(E)>0&&f(L,k(E)),!u&&(D===M||D===N)&&(u=!0,S.synced=!0)}else l.msgType===x&&tt(a,l.payload,"ws-server")}function h(o,p){if(i||p==="ws-server")return;const l=A();at(l,o),f(L,k(l))}function g({added:o,updated:p,removed:l},v){if(i||v==="ws-server")return;const D=o.concat(p,l);d(D)}function U(){if(i)return;const o=r();!o||o.readyState!==WebSocket.OPEN||(o.send(JSON.stringify({type:"collab:join",docName:t})),c&&o.removeEventListener("message",c),c=y,o.addEventListener("message",c),w(),d())}const S={ydoc:e,ytext:s,awareness:a,synced:!1,destroy:J};e.on("update",h),a.on("update",g),U(),O.addConnectHandler(U);function J(){if(i)return;i=!0,Y(a,[e.clientID],"local"),d([e.clientID]);const o=r();o&&o.readyState===WebSocket.OPEN&&o.send(JSON.stringify({type:"collab:leave",docName:t})),c&&o&&(o.removeEventListener("message",c),c=null),e.off("update",h),a.off("update",g),a.destroy(),e.destroy()}return S}export{ut as createCollabSession};
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./CqkagrcB.js","./DsnmJJEf.js","./CTh3LGxI.js","./Ca1DAtQh.js","./CcmvIPLE.js","./BDtxhI5r.js","./BiU0zEtO.js","./wmIp2Ae4.js","./C7Uj3SIv.js","./B-8WiidI.js","./CVWN0my4.js","./DFYOFE3o.js","./hkugGpVO.js","./BvVwTRB5.js","./B584Plw_.js","./B1f42VKu.js","./BJVJpWzz.js","../assets/Toaster.rN8r_Hzv.css"])))=>i.map(i=>d[i]);
2
+ import"./DsnmJJEf.js";import{p as We,l as Ue,s as l,d as Te,g as e,a as Rt,c,n as me,r as i,b as je,m as Ge,t as F,I as Ba,e as le,V as pt,i as He,bq as Da,f as S,h as g,u as w,z as na}from"./CTh3LGxI.js";import{a as s,s as j,f as Je,b as _,d as Wt,c as pe,t as lt,g as ye,e as xt,r as qa}from"./Ca1DAtQh.js";import{l as Ke,p as se,i as ee,r as Qa}from"./CcmvIPLE.js";import{a as Dt,s as Ht,b as Oe,d as ft,c as ot,f as Xa,r as er}from"./B584Plw_.js";import{_ as St}from"./PPVm8Dsz.js";import{e as Me,i as Ze,c as tr}from"./wmIp2Ae4.js";import{c as W}from"./B1f42VKu.js";import{g as sa}from"./C7Uj3SIv.js";import{t as Va,m as ar,u as Za,D as rr}from"./CVWN0my4.js";import{w as Ve}from"./hkugGpVO.js";import{f as Tt,u as nr,A as sr,n as Ha}from"./C1WacsyC.js";import{f as Kt,e as ha}from"./hXfpX92g.js";import{g as lr,C as or,V as ir,a as Gt,T as Ra}from"./D3dgfs75.js";import{D as ya,a as ma,b as wa,c as ba,d as $a,R as dr,e as ka,g as Sa,h as Fa,C as Ua,P as La,i as Na,j as It,l as xa,m as Ea,n as Ga,o as cr,p as vr,s as Vt,q as ur,f as fr,t as pr,S as gr,u as _r,v as hr,w as yr,x as mr}from"./Bhdvqdoo.js";import{A as wr}from"./COSWCWJc.js";import{q as Ta,T as br,r as Ka,s as Ia}from"./oIb8yPFh.js";import{A as $r}from"./BaMdMBD6.js";import{i as Ft}from"./BJVJpWzz.js";import{B as zt,b as kr}from"./DckX78C-.js";import{a as Oa}from"./BvVwTRB5.js";import{listFolderAssets as Sr}from"./ikxQzGAp.js";import{G as xr}from"./kX1RzgU9.js";import{n as Tr}from"./B-8WiidI.js";import{T as Dr,C as Cr,R as Mr}from"./BMB60CtO.js";var Pr=Je("<title> </title>"),Ar=Je('<svg><!><path d="M12,4H6A2,2,0,0,0,4,6v6a2,2,0,0,0,2,2h6a2,2,0,0,0,2-2V6A2,2,0,0,0,12,4Zm0,8H6V6h6Z"></path><path d="M26,4H20a2,2,0,0,0-2,2v6a2,2,0,0,0,2,2h6a2,2,0,0,0,2-2V6A2,2,0,0,0,26,4Zm0,8H20V6h6Z"></path><path d="M12,18H6a2,2,0,0,0-2,2v6a2,2,0,0,0,2,2h6a2,2,0,0,0,2-2V20A2,2,0,0,0,12,18Zm0,8H6V20h6Z"></path><path d="M26,18H20a2,2,0,0,0-2,2v6a2,2,0,0,0,2,2h6a2,2,0,0,0,2-2V20A2,2,0,0,0,26,18Zm0,8H20V20h6Z"></path></svg>');function zr(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=Ar();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=Pr(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(4),i(P),s(J,P),je()}var Vr=_("<div><!></div>");function Hr(J,r){We(r,!0);let d=se(r,"class",3,""),L=Qa(r,["$$slots","$$events","$$legacy","class","children"]);var p=Vr();Dt(p,O=>({class:O,...L}),[()=>["sg-menu-label",d()].filter(Boolean).join(" ")]);var x=c(p);Ht(x,()=>r.children??Ba),i(p),s(J,p),je()}var Rr=Je("<title> </title>"),Fr=Je('<svg><!><path d="M4 18 15 18 15 24.172 12.414 21.586 11 23 16 28 21 23 19.586 21.586 17 24.172 17 18 28 18 28 16 4 16 4 18z"></path><path d="M26,4H6A2,2,0,0,0,4,6v4a2,2,0,0,0,2,2H26a2,2,0,0,0,2-2V6A2,2,0,0,0,26,4Zm0,6H6V6H26Z"></path></svg>');function Lr(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=Fr();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=Rr(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(2),i(P),s(J,P),je()}var Nr=Je("<title> </title>"),Er=Je('<svg><!><path d="M26,20H6a2,2,0,0,0-2,2v4a2,2,0,0,0,2,2H26a2,2,0,0,0,2-2V22A2,2,0,0,0,26,20Zm0,6H6V22H26Z"></path><path d="M17 7.828 19.586 10.414 21 9 16 4 11 9 12.414 10.414 15 7.828 15 14 4 14 4 16 28 16 28 14 17 14 17 7.828z"></path></svg>');function Ir(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=Er();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=Nr(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(2),i(P),s(J,P),je()}var Or=Je("<title> </title>"),Yr=Je('<svg><!><path d="M6.76,6l.45.89L7.76,8H12v5H4V6H6.76m.62-2H3A1,1,0,0,0,2,5v9a1,1,0,0,0,1,1H13a1,1,0,0,0,1-1V7a1,1,0,0,0-1-1H9L8.28,4.55A1,1,0,0,0,7.38,4Z"></path><path d="M22.76,6l.45.89L23.76,8H28v5H20V6h2.76m.62-2H19a1,1,0,0,0-1,1v9a1,1,0,0,0,1,1H29a1,1,0,0,0,1-1V7a1,1,0,0,0-1-1H25l-.72-1.45a1,1,0,0,0-.9-.55Z"></path><path d="M6.76,19l.45.89L7.76,21H12v5H4V19H6.76m.62-2H3a1,1,0,0,0-1,1v9a1,1,0,0,0,1,1H13a1,1,0,0,0,1-1V20a1,1,0,0,0-1-1H9l-.72-1.45a1,1,0,0,0-.9-.55Z"></path><path d="M22.76,19l.45.89L23.76,21H28v5H20V19h2.76m.62-2H19a1,1,0,0,0-1,1v9a1,1,0,0,0,1,1H29a1,1,0,0,0,1-1V20a1,1,0,0,0-1-1H25l-.72-1.45a1,1,0,0,0-.9-.55Z"></path></svg>');function Ya(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=Yr();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=Or(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(4),i(P),s(J,P),je()}var Br=_('<span class="row-presence-avatar svelte-1p6fd26"> </span>'),Zr=_('<span class="row-presence-avatar svelte-1p6fd26"> </span>'),Ur=_('<span class="wikilink-chip wikilink-active svelte-1p6fd26"> </span>'),Gr=_('<span class="wikilink-chip wikilink-inactive svelte-1p6fd26"> </span>'),Kr=_('<span class="wikilink-cell svelte-1p6fd26"></span>'),Wr=_('<span class="colored-value svelte-1p6fd26"><span class="status-dot svelte-1p6fd26"></span> </span>'),jr=_("<td><!></td>"),Jr=_('<tr><td class="cell-select svelte-1p6fd26"><!> <!></td><!></tr>'),qr=_("Actions <!>",1),Qr=_('<span class="status-dot svelte-1p6fd26"></span>'),Xr=_("<!> ",1),en=_("<!> <!> <!>",1),tn=_("<!> <!>",1),an=_("<!> Move to...",1),rn=_("<!> Copy to...",1),nn=_("<!> Delete",1),sn=_("<!> <!> <!> <!> <!>",1),ln=_("<!> <!>",1),on=_('<div class="list-toolbar selection-bar svelte-1p6fd26"><div class="toolbar-left svelte-1p6fd26"><span class="selection-count svelte-1p6fd26"> </span> <!></div> <button class="selection-close svelte-1p6fd26" title="Deselect all"><!></button></div>'),dn=_("<button><!></button>"),cn=_('<span class="grouping-menu-spacer svelte-1p6fd26"></span>'),vn=_("<!> <span>Ungrouped</span>",1),un=_('<span class="grouping-menu-spacer svelte-1p6fd26"></span>'),fn=_("<!> <span> </span>",1),pn=_("<!> <!>",1),gn=_("<!> <!>",1),_n=_('<button class="toolbar-collapse-btn svelte-1p6fd26"><!></button>'),hn=_('<div class="list-toolbar svelte-1p6fd26"><div class="toolbar-left svelte-1p6fd26"><!> <!> <!></div> <div class="toolbar-right svelte-1p6fd26"><!></div></div>'),yn=_('<span class="th-sort svelte-1p6fd26"><!></span>'),mn=_('<th class="svelte-1p6fd26"><div class="th-controls svelte-1p6fd26"><button><span class="th-label svelte-1p6fd26"> </span> <!></button></div></th>'),wn=_('<span class="status-dot svelte-1p6fd26"></span>'),bn=_('<tr class="group-header svelte-1p6fd26"><td class="svelte-1p6fd26"><div class="group-header-content svelte-1p6fd26"><span><!></span> <!> <span class="group-label svelte-1p6fd26"> </span> <span class="group-count svelte-1p6fd26"> </span></div></td></tr> <!>',1),$n=_('<div class="dialog-radio-item svelte-1p6fd26"><!> <label> </label></div>'),kn=_('<!> <p class="dialog-desc svelte-1p6fd26">Select a folder to move to:</p> <!>',1),Sn=_("<!> <!>",1),xn=_("<!> <!> <!>",1),Tn=_('<div class="dialog-check-item svelte-1p6fd26"><!> <span> </span></div>'),Dn=_('<!> <p class="dialog-desc svelte-1p6fd26">Select folders to copy to:</p> <!>',1),Cn=_("<!> <!>",1),Mn=_("<!> <!> <!>",1),Pn=_('<!> <p class="dialog-desc svelte-1p6fd26">This will permanently delete the selected entries. This cannot be undone.</p>',1),An=_("<!> <!>",1),zn=_("<!> <!> <!>",1),Vn=_('<div class="list-view svelte-1p6fd26"><!> <div class="table-scroll svelte-1p6fd26"><table class="list-table svelte-1p6fd26"><thead class="svelte-1p6fd26"><tr class="svelte-1p6fd26"><th><!></th><!></tr></thead><tbody class="svelte-1p6fd26"><!></tbody></table></div></div> <!> <!> <!>',1);function Hn(J,r){We(r,!0);const d=(n,o=Ba)=>{const t=w(()=>ve(o())),a=w(()=>e(E).has(e(t))),f=w(()=>vr.getPresence(o().repoName,o().entity.entityType,o().entity.id,Oa.user?String(Oa.user.id):void 0));var $=Jr();let G;var R=c($),oe=c(R);{var ne=k=>{var y=Br();let D;var A=c(y,!0);i(y),F((z,te)=>{ot(y,"title",e(f)[0].name),D=ft(y,"",D,z),j(A,te)},[()=>({background:nr.getColor(e(f)[0].id)||void 0}),()=>e(f)[0].name[0].toUpperCase()]),s(k,y)},fe=k=>{var y=Zr(),D=c(y,!0);i(y),F(A=>{ot(y,"title",A),j(D,e(f).length)},[()=>e(f).map(A=>A.name).join(", ")]),s(k,y)};ee(oe,k=>{e(f).length===1&&!e(a)?k(ne):e(f).length>1&&!e(a)&&k(fe,1)})}var ie=g(oe,2);Ta(ie,{get checked(){return e(a)}}),i(R);var ue=g(R);Me(ue,17,()=>e(Pe),Ze,(k,y)=>{const D=w(()=>Ie(o(),e(y).key)),A=w(()=>e(v)?Gt(e(v),e(y).key,e(D)):e(y).key==="entity_type"?void 0:Gt(o().entity.entityType,e(y).key,e(D)));var z=jr(),te=c(z);{var C=m=>{const K=w(()=>ur(e(D))),Q=w(()=>e(D).replace(/\[\[|\]\]/g,"").split(",").map(ce=>ce.trim().split("|")[0].trim()).filter(Boolean));var X=Kr();Me(X,21,()=>e(Q),Ze,(ce,Fe)=>{const tt=w(()=>e(K).find($e=>$e.id===e(Fe)));var at=pe(),vt=S(at);{var wt=$e=>{var xe=Ur(),Xe=c(xe,!0);i(xe),F(()=>j(Xe,e(tt).title)),ye("click",xe,ze=>{ze.stopPropagation(),sa(e(tt).url)}),s($e,xe)},Ae=$e=>{var xe=Gr(),Xe=c(xe,!0);i(xe),F(ze=>j(Xe,ze),[()=>fr(e(Fe))]),s($e,xe)};ee(vt,$e=>{e(tt)?$e(wt):$e(Ae,!1)})}s(ce,at)}),i(X),s(m,X)},I=m=>{var K=Wr(),Q=c(K);let X;var ce=g(Q);i(K),F(Fe=>{X=ft(Q,"",X,{background:e(A)}),j(ce,` ${Fe??""}`)},[()=>re(e(D),e(y),o().entity.entityType)]),s(m,K)},de=m=>{var K=lt();F(Q=>j(K,Q),[()=>re(e(D),e(y),o().entity.entityType)]),s(m,K)};ee(te,m=>{e(y).format==="wikilink"&&e(D)?m(C):e(A)?m(I,1):m(de,!1)})}i(z),F(m=>{Oe(z,1,Xa(e(y).key==="name"?"cell-name":e(y).format==="date"?"cell-date":e(y).key==="folder"||e(y).key==="entity_type"?"cell-meta":""),"svelte-1p6fd26"),ot(z,"title",m)},[()=>re(e(D),e(y),o().entity.entityType)]),s(k,z)}),i($),F(()=>G=Oe($,1,"svelte-1p6fd26",null,G,{"row-selected":e(a)})),ye("click",$,()=>he(o())),ye("click",R,k=>Ye(o(),k)),s(n,$)};let L=se(r,"lockedType",3,null),p=se(r,"lockedFolder",3,null),x=se(r,"storageId",3,null),O=se(r,"defaultSortKey",3,"name"),M=se(r,"defaultSortAsc",3,!0),P=se(r,"entities",3,null);const V=w(()=>x()?`sg-listview-${x()}`:null);function Y(){if(!e(V))return null;try{const n=localStorage.getItem(e(V));if(n)return JSON.parse(n)}catch{}return null}function h(){if(!e(V))return;const n={selectedType:L()?null:e(v),sortKey:e(T),sortAsc:e(b),groupBy:e(q)};localStorage.setItem(e(V),JSON.stringify(n))}let v=le(null),T=le("name"),b=le(!0),q=le(null),ae=le(pt(new Set)),we=le(null);He(()=>{if(r.view&&r.view.id!==e(we)){l(we,r.view.id,!0);const n=Y();if(n)l(v,L()??n.selectedType??null,!0),l(T,n.sortKey??O(),!0),l(b,n.sortAsc??M(),!0),l(q,n.groupBy??null,!0);else{const o=r.view.config;l(v,L()??o.selectedType??null,!0),l(T,o.sortKey??O(),!0),l(b,o.sortAsc??M(),!0),l(q,o.groupBy??null,!0)}l(ae,new Set,!0)}}),He(()=>{L()&&l(v,L())}),He(()=>{e(v),e(T),e(b),e(q),e(we)!==null&&h()});const ke=w(()=>{const n=[];if(P()){for(const o of P())if(!e(v)||o.entityType===e(v)){const t=Ve.repos.find(a=>a.name===o.repo);n.push({entity:o,folder:t?.displayName??o.repo,repoName:o.repo})}}else for(const o of Ve.repos)if(!(p()&&o.name!==p()))for(const t of o.entities)(!e(v)||t.entityType===e(v))&&n.push({entity:t,folder:o.displayName,repoName:o.name});return n}),Ee=w(()=>{const n=new Set;for(const o of e(ke))for(const t of Object.keys(o.entity.fields))n.add(t);return n}),Pe=w(()=>{let n=lr(e(v),e(Ee));return p()&&(n=n.filter(o=>o.key!=="folder")),n.filter(o=>o.key==="name"||o.key==="entity_type"||o.key==="folder"||o.key==="created_at"?!0:e(ke).some(t=>Ie(t,o.key)!==""))});function et(n){e(T)===n?l(b,!e(b)):(l(T,n,!0),l(b,!0))}function ct(n){const o=new Set(e(ae));o.has(n)?o.delete(n):o.add(n),l(ae,o,!0)}const qe=w(()=>e(Pe).filter(n=>n.filter==="enum"));function Qe(n){l(q,n==="__none__"?null:n??null,!0),l(ae,new Set,!0)}function Ie(n,o){if(o==="name")return n.entity.title;if(o==="entity_type")return n.entity.entityType;if(o==="folder")return n.folder;if(o==="created_at")return n.entity.createdAt??"";const t=n.entity.fields[o];return t==null?"":Array.isArray(t)?t.length>0&&typeof t[0]=="object"&&t[0]!==null?t.map(a=>{const f=a;if(f.name!=null)return String(f.name);const $=Object.entries(f)[0];return $?`${$[0]}: ${$[1]}`:""}).filter(Boolean).join(", "):t.map(a=>String(a)).join(", "):String(t)}const Se=w(()=>{const n=[...e(ke)],o=e(Pe).find(t=>t.key===e(T));return n.sort((t,a)=>{const f=Ie(t,e(T)),$=Ie(a,e(T));let G;return o?.sortOrder?G=(o.sortOrder[f]??99)-(o.sortOrder[$]??99):o?.format==="date"?!f&&!$?G=0:f?$?G=f.localeCompare($):G=-1:G=1:G=f.localeCompare($),e(b)?G:-G}),n});He(()=>{Tt.count=e(Se).length}),Da(()=>{Tt.count=null});function Z(n){return n.replace(/^\[\[(.+?)\]\]$/,"$1").replace(/[-_]/g," ").replace(/\b\w/g,t=>t.toUpperCase())}const H=w(()=>{if(!e(q))return null;const n=e(Pe).find(a=>a.key===e(q)),o=new Map;for(const a of e(Se)){const $=Ie(a,e(q))||"(empty)";o.has($)||o.set($,[]),o.get($).push(a)}const t=[...o.entries()];return n?.sortOrder?t.sort((a,f)=>(n.sortOrder[a[0]]??99)-(n.sortOrder[f[0]]??99)):t.sort((a,f)=>a[0].localeCompare(f[0])),t.map(([a,f])=>({key:a,label:n?.key==="entity_type"?Kt(a):Z(a),rows:f}))}),u=w(()=>e(H)!==null&&e(H).length>0&&e(ae).size===e(H).length);function B(){e(H)&&(e(u)?l(ae,new Set,!0):l(ae,new Set(e(H).map(n=>n.key)),!0))}function N(n){return n.replace(/\[\[|\]\]/g,"").replace(/[-_]/g," ").replace(/\b\w/g,o=>o.toUpperCase())}function U(n){if(!n)return"";try{return new Date(n).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return n}}function ge(n){if(!n)return"";const o=Number(n);return isNaN(o)?n:new Intl.NumberFormat("en-US",{style:"currency",currency:"USD",maximumFractionDigits:0}).format(o)}function re(n,o,t){return n?o.format==="date"?U(n):o.format==="wikilink"?N(n):o.format==="currency"?ge(n):o.key==="entity_type"?Kt(n):Vt(n):""}function he(n){sa(`/${n.repoName}/${n.entity.entityType}/${n.entity.id}`)}let E=le(pt(new Set));function ve(n){return`${n.repoName}/${n.entity.entityType}/${n.entity.id}`}let _e=le(-1);function Ye(n,o){o.stopPropagation();const t=ve(n),a=e(Se).indexOf(n),f=new Set(e(E));if(o.shiftKey&&e(_e)>=0&&a!==e(_e)){const $=Math.min(e(_e),a),G=Math.max(e(_e),a);for(let R=$;R<=G;R++)f.add(ve(e(Se)[R]))}else f.has(t)?f.delete(t):f.add(t);l(E,f,!0),l(_e,a,!0)}function Ne(){e(E).size===e(Se).length?l(E,new Set,!0):l(E,new Set(e(Se).map(ve)),!0)}const Be=w(()=>e(E).size>0),ht=w(()=>e(Se).length>0&&e(E).size===e(Se).length);He(()=>{e(Se),l(E,new Set,!0)});function it(){return e(Se).filter(n=>e(E).has(ve(n)))}let be=le(null),Re=le(""),De=le(pt([])),Ce=le(!1);const jt=w(()=>Ve.repos.map(n=>({name:n.name,displayName:n.displayName})));async function la(){if(!e(Re)||e(Ce))return;l(Ce,!0);const n=it(),o=new Set;try{for(const a of n)a.repoName!==e(Re)&&(o.add(a.repoName),await Va(a.repoName,a.entity.entityType,a.entity.id,e(Re),"move"));await Ve.load(),await Promise.all([...Array.from(o).map(a=>Ve.refreshEntities(a)),Ve.refreshEntities(e(Re))]);const{toast:t}=await St(async()=>{const{toast:a}=await import("./CqkagrcB.js");return{toast:a}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);t.success(`Moved ${n.length} ${n.length===1?"entry":"entries"}`)}catch(t){const{toast:a}=await St(async()=>{const{toast:f}=await import("./CqkagrcB.js");return{toast:f}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);a.error(t.message??"Move failed")}finally{l(Ce,!1),l(be,null),l(Re,""),l(E,new Set,!0)}}async function oa(){if(e(De).length===0||e(Ce))return;l(Ce,!0);const n=it();try{for(const t of n)for(const a of e(De))t.repoName!==a&&await Va(t.repoName,t.entity.entityType,t.entity.id,a,"copy");await Ve.load(),await Promise.all(e(De).map(t=>Ve.refreshEntities(t)));const{toast:o}=await St(async()=>{const{toast:t}=await import("./CqkagrcB.js");return{toast:t}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);o.success(`Copied ${n.length} ${n.length===1?"entry":"entries"} to ${e(De).length} ${e(De).length===1?"folder":"folders"}`)}catch(o){const{toast:t}=await St(async()=>{const{toast:a}=await import("./CqkagrcB.js");return{toast:a}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);t.error(o.message??"Copy failed")}finally{l(Ce,!1),l(be,null),l(De,[],!0),l(E,new Set,!0)}}async function Jt(){if(e(Ce))return;l(Ce,!0);const n=it();try{for(const t of n)await ar(t.repoName,t.entity.entityType,t.entity.id);await Ve.load();const{toast:o}=await St(async()=>{const{toast:t}=await import("./CqkagrcB.js");return{toast:t}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);o.success(`Deleted ${n.length} ${n.length===1?"entry":"entries"}`)}catch(o){const{toast:t}=await St(async()=>{const{toast:a}=await import("./CqkagrcB.js");return{toast:a}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);t.error(o.message??"Delete failed")}finally{l(Ce,!1),l(be,null),l(E,new Set,!0)}}function Ot(n){e(De).includes(n)?l(De,e(De).filter(o=>o!==n),!0):l(De,[...e(De),n],!0)}let yt=le(null),gt=le("");const _t=w(()=>{const n=it();if(n.length===0)return[];const o=new Set(n.map(a=>a.entity.entityType)),t=[];for(const a of e(Pe)){if(a.filter!=="enum"||a.key==="entity_type"||a.key==="folder")continue;let f=!0;const $=new Set;for(const G of o){const R=`${G}.${a.key}`,oe=ir[R];if(!oe){f=!1;break}for(const ne of Object.keys(oe))$.add(ne)}f&&t.push({key:a.key,label:a.label,options:[...$]})}return t});async function qt(){if(!e(yt)||!e(gt)||e(Ce))return;l(Ce,!0);const n=it(),o=e(yt).field;try{for(const a of n)a.entity.fields[o]=e(gt),await Za(a.repoName,a.entity.entityType,a.entity.id,{data:{[o]:e(gt)}});const{toast:t}=await St(async()=>{const{toast:a}=await import("./CqkagrcB.js");return{toast:a}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);t.success(`Updated ${n.length} ${n.length===1?"entry":"entries"}`)}catch(t){const{toast:a}=await St(async()=>{const{toast:f}=await import("./CqkagrcB.js");return{toast:f}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url);a.error(t.message??"Update failed")}finally{l(Ce,!1),l(yt,null),l(gt,""),l(E,new Set,!0)}}var Qt=Vn(),Lt=S(Qt),Xt=c(Lt);{var ia=n=>{var o=on(),t=c(o),a=c(t),f=c(a);i(a);var $=g(a,2);W($,()=>Ea,(oe,ne)=>{ne(oe,{children:(fe,ie)=>{var ue=ln(),k=S(ue);W(k,()=>Fa,(D,A)=>{A(D,{class:"selection-action-btn",children:(z,te)=>{me();var C=qr(),I=g(S(C));Ua(I,{size:12}),s(z,C)},$$slots:{default:!0}})});var y=g(k,2);W(y,()=>La,(D,A)=>{A(D,{children:(z,te)=>{var C=pe(),I=S(C);W(I,()=>Na,(de,m)=>{m(de,{align:"start",children:(K,Q)=>{var X=sn(),ce=S(X);{var Fe=Ae=>{const $e=w(()=>new Set(it().map(Le=>Le.entity.entityType)));var xe=tn(),Xe=S(xe);Me(Xe,17,()=>e(_t),Ze,(Le,rt,ra)=>{var At=en(),Et=S(At);{var Zt=nt=>{var ut=pe(),bt=S(ut);W(bt,()=>xa,($t,kt)=>{kt($t,{})}),s(nt,ut)};ee(Et,nt=>{ra>0&&nt(Zt)})}var Ut=g(Et,2);W(Ut,()=>Hr,(nt,ut)=>{ut(nt,{children:(bt,$t)=>{me();var kt=lt();F(()=>j(kt,e(rt).label)),s(bt,kt)},$$slots:{default:!0}})});var dt=g(Ut,2);Me(dt,17,()=>e(rt).options,Ze,(nt,ut)=>{const bt=w(()=>[...e($e)].map(st=>Gt(st,e(rt).key,e(ut))).find(st=>st));var $t=pe(),kt=S($t);W(kt,()=>It,(st,ga)=>{ga(st,{class:"bulk-menu-enum",onSelect:()=>{l(yt,{field:e(rt).key,label:e(rt).label},!0),l(gt,e(ut),!0),qt()},children:(Wa,As)=>{var Ma=Xr(),Pa=S(Ma);{var ja=_a=>{var Aa=Qr();let za;F(()=>za=ft(Aa,"",za,{background:e(bt)})),s(_a,Aa)};ee(Pa,_a=>{e(bt)&&_a(ja)})}var Ja=g(Pa);F(()=>j(Ja,` ${e(ut)??""}`)),s(Wa,Ma)},$$slots:{default:!0}})}),s(nt,$t)}),s(Le,At)});var ze=g(Xe,2);W(ze,()=>xa,(Le,rt)=>{rt(Le,{})}),s(Ae,xe)};ee(ce,Ae=>{e(_t).length>0&&Ae(Fe)})}var tt=g(ce,2);W(tt,()=>It,(Ae,$e)=>{$e(Ae,{onSelect:()=>{l(be,"move"),l(Re,"")},children:(xe,Xe)=>{var ze=an(),Le=S(ze);$r(Le,{size:14}),me(),s(xe,ze)},$$slots:{default:!0}})});var at=g(tt,2);W(at,()=>It,(Ae,$e)=>{$e(Ae,{onSelect:()=>{l(be,"copy"),l(De,[],!0)},children:(xe,Xe)=>{var ze=rn(),Le=S(ze);or(Le,{size:14}),me(),s(xe,ze)},$$slots:{default:!0}})});var vt=g(at,2);W(vt,()=>xa,(Ae,$e)=>{$e(Ae,{})});var wt=g(vt,2);W(wt,()=>It,(Ae,$e)=>{$e(Ae,{variant:"destructive",onSelect:()=>{l(be,"delete")},children:(xe,Xe)=>{var ze=nn(),Le=S(ze);br(Le,{size:14}),me(),s(xe,ze)},$$slots:{default:!0}})}),s(K,X)},$$slots:{default:!0}})}),s(z,C)},$$slots:{default:!0}})}),s(fe,ue)},$$slots:{default:!0}})}),i(t);var G=g(t,2),R=c(G);Ka(R,{size:14}),i(G),i(o),F(()=>j(f,`${e(E).size??""} selected`)),ye("click",G,()=>{l(E,new Set,!0)}),s(n,o)},da=n=>{var o=hn(),t=c(o),a=c(t);{var f=k=>{const y=w(()=>e(qe)[0]),D=w(()=>e(q)===e(y).key);var A=dn();let z;var te=c(A);Ya(te,{size:16}),i(A),F(()=>{z=Oe(A,1,"toolbar-icon-btn",null,z,{active:e(D)}),ot(A,"title",e(D)?"Grouped by "+e(y).label+" (click to ungroup)":"Group by "+e(y).label)}),ye("click",A,()=>Qe(e(D)?"__none__":e(y).key)),s(k,A)},$=k=>{var y=pe(),D=S(y);W(D,()=>Ea,(A,z)=>{z(A,{children:(te,C)=>{var I=gn(),de=S(I);{let K=w(()=>e(q)?"active":"");W(de,()=>Fa,(Q,X)=>{X(Q,{get class(){return`toolbar-icon-btn ${e(K)??""}`},title:"Grouping",children:(ce,Fe)=>{Ya(ce,{size:16})},$$slots:{default:!0}})})}var m=g(de,2);W(m,()=>La,(K,Q)=>{Q(K,{children:(X,ce)=>{var Fe=pe(),tt=S(Fe);W(tt,()=>Na,(at,vt)=>{vt(at,{align:"start",children:(wt,Ae)=>{var $e=pn(),xe=S($e);W(xe,()=>It,(ze,Le)=>{Le(ze,{onSelect:()=>Qe("__none__"),children:(rt,ra)=>{var At=vn(),Et=S(At);{var Zt=dt=>{Ia(dt,{size:14})},Ut=dt=>{var nt=cn();s(dt,nt)};ee(Et,dt=>{e(q)?dt(Ut,!1):dt(Zt)})}me(2),s(rt,At)},$$slots:{default:!0}})});var Xe=g(xe,2);Me(Xe,17,()=>e(qe),Ze,(ze,Le)=>{var rt=pe(),ra=S(rt);W(ra,()=>It,(At,Et)=>{Et(At,{onSelect:()=>Qe(e(Le).key),children:(Zt,Ut)=>{var dt=fn(),nt=S(dt);{var ut=st=>{Ia(st,{size:14})},bt=st=>{var ga=un();s(st,ga)};ee(nt,st=>{e(q)===e(Le).key?st(ut):st(bt,!1)})}var $t=g(nt,2),kt=c($t,!0);i($t),F(()=>j(kt,e(Le).label)),s(Zt,dt)},$$slots:{default:!0}})}),s(ze,rt)}),s(wt,$e)},$$slots:{default:!0}})}),s(X,Fe)},$$slots:{default:!0}})}),s(te,I)},$$slots:{default:!0}})}),s(k,y)};ee(a,k=>{e(qe).length===1?k(f):e(qe).length>1&&k($,1)})}var G=g(a,2);{var R=k=>{var y=_n(),D=c(y);{var A=te=>{Lr(te,{size:16})},z=te=>{Ir(te,{size:16})};ee(D,te=>{e(u)?te(A):te(z,!1)})}i(y),F(()=>ot(y,"title",e(u)?"Expand all":"Collapse all")),ye("click",y,B),s(k,y)};ee(G,k=>{e(q)&&e(H)&&e(H).length>0&&k(R)})}var oe=g(G,2);{var ne=k=>{var y=pe(),D=S(y);Ht(D,()=>r.toolbarLeft),s(k,y)};ee(oe,k=>{r.toolbarLeft&&k(ne)})}i(t);var fe=g(t,2),ie=c(fe);{var ue=k=>{var y=pe(),D=S(y);Ht(D,()=>r.toolbarRight),s(k,y)};ee(ie,k=>{r.toolbarRight&&k(ue)})}i(fe),i(o),s(n,o)};ee(Xt,n=>{e(Be)?n(ia):n(da,!1)})}var Nt=g(Xt,2),mt=c(Nt),Yt=c(mt),Ct=c(Yt),Mt=c(Ct);let Pt;var ca=c(Mt);Ta(ca,{get checked(){return e(ht)}}),i(Mt);var ea=g(Mt);Me(ea,17,()=>e(Pe),Ze,(n,o)=>{var t=mn(),a=c(t),f=c(a),$=c(f),G=c($,!0);i($);var R=g($,2);{var oe=ne=>{var fe=yn(),ie=c(fe);{var ue=y=>{wr(y,{size:12})},k=y=>{sr(y,{size:12})};ee(ie,y=>{e(b)?y(ue):y(k,!1)})}i(fe),s(ne,fe)};ee(R,ne=>{e(T)===e(o).key&&ne(oe)})}i(f),i(a),i(t),F(()=>{Oe(f,1,`th-sort-btn ${e(T)===e(o).key?"sort-active":""}`,"svelte-1p6fd26"),j(G,e(o).label)}),ye("click",f,()=>et(e(o).key)),s(n,t)}),i(Ct),i(Yt);var ta=g(Yt),va=c(ta);{var ua=n=>{var o=pe(),t=S(o);Me(t,17,()=>e(H),a=>a.key,(a,f)=>{const $=w(()=>e(v)&&e(q)?Gt(e(v),e(q),e(f).key):void 0);var G=bn(),R=S(G),oe=c(R),ne=c(oe),fe=c(ne);let ie;var ue=c(fe);Ga(ue,{size:16}),i(fe);var k=g(fe,2);{var y=m=>{var K=wn();let Q;F(()=>Q=ft(K,"",Q,{background:e($)})),s(m,K)};ee(k,m=>{e($)&&m(y)})}var D=g(k,2),A=c(D,!0);i(D);var z=g(D,2),te=c(z,!0);i(z),i(ne),i(oe),i(R);var C=g(R,2);{var I=m=>{var K=pe(),Q=S(K);Me(Q,17,()=>e(f).rows,X=>X.repoName+"/"+X.entity.entityType+"/"+X.entity.id,(X,ce)=>{d(X,()=>e(ce))}),s(m,K)},de=w(()=>!e(ae).has(e(f).key));ee(C,m=>{e(de)&&m(I)})}F(m=>{ot(oe,"colspan",e(Pe).length+1),ie=Oe(fe,1,"group-chevron svelte-1p6fd26",null,ie,m),j(A,e(f).label),j(te,e(f).rows.length)},[()=>({collapsed:e(ae).has(e(f).key)})]),ye("click",R,()=>ct(e(f).key)),s(a,G)}),s(n,o)},fa=n=>{var o=pe(),t=S(o);Me(t,17,()=>e(Se),a=>a.repoName+"/"+a.entity.entityType+"/"+a.entity.id,(a,f)=>{d(a,()=>e(f))}),s(n,o)};ee(va,n=>{e(H)?n(ua):n(fa,!1)})}i(ta),i(mt),i(Nt),i(Lt);var aa=g(Lt,2);{let n=w(()=>e(be)==="move");W(aa,()=>Sa,(o,t)=>{t(o,{get open(){return e(n)},onOpenChange:a=>{a||l(be,null)},children:(a,f)=>{var $=pe(),G=S($);W(G,()=>ya,(R,oe)=>{oe(R,{children:(ne,fe)=>{var ie=xn(),ue=S(ie);W(ue,()=>ma,(D,A)=>{A(D,{class:"close-only-header",children:(z,te)=>{var C=pe(),I=S(C);W(I,()=>wa,(de,m)=>{m(de,{})}),s(z,C)},$$slots:{default:!0}})});var k=g(ue,2);W(k,()=>ba,(D,A)=>{A(D,{class:"dialog-body-lg",children:(z,te)=>{var C=kn(),I=S(C);W(I,()=>$a,(m,K)=>{K(m,{children:(Q,X)=>{me();var ce=lt();F(()=>j(ce,`Move ${e(E).size??""} ${e(E).size===1?"entry":"entries"}`)),s(Q,ce)},$$slots:{default:!0}})});var de=g(I,4);W(de,()=>dr,(m,K)=>{K(m,{get value(){return e(Re)},onValueChange:Q=>{l(Re,Q??"",!0)},children:(Q,X)=>{var ce=pe(),Fe=S(ce);Me(Fe,17,()=>e(jt),Ze,(tt,at)=>{var vt=$n(),wt=c(vt);W(wt,()=>cr,(xe,Xe)=>{Xe(xe,{get value(){return e(at).name},get id(){return`move-${e(at).name??""}`}})});var Ae=g(wt,2),$e=c(Ae,!0);i(Ae),i(vt),F(()=>{ot(Ae,"for",`move-${e(at).name??""}`),j($e,e(at).displayName)}),s(tt,vt)}),s(Q,ce)},$$slots:{default:!0}})}),s(z,C)},$$slots:{default:!0}})});var y=g(k,2);W(y,()=>ka,(D,A)=>{A(D,{children:(z,te)=>{var C=Sn(),I=S(C);zt(I,{variant:"ghost",onclick:()=>{l(be,null)},children:(m,K)=>{me();var Q=lt("Cancel");s(m,Q)},$$slots:{default:!0}});var de=g(I,2);{let m=w(()=>!e(Re)||e(Ce));zt(de,{onclick:la,get disabled(){return e(m)},children:(K,Q)=>{me();var X=lt();F(()=>j(X,e(Ce)?"Moving...":"Move")),s(K,X)},$$slots:{default:!0}})}s(z,C)},$$slots:{default:!0}})}),s(ne,ie)},$$slots:{default:!0}})}),s(a,$)},$$slots:{default:!0}})})}var Bt=g(aa,2);{let n=w(()=>e(be)==="copy");W(Bt,()=>Sa,(o,t)=>{t(o,{get open(){return e(n)},onOpenChange:a=>{a||l(be,null)},children:(a,f)=>{var $=pe(),G=S($);W(G,()=>ya,(R,oe)=>{oe(R,{children:(ne,fe)=>{var ie=Mn(),ue=S(ie);W(ue,()=>ma,(D,A)=>{A(D,{class:"close-only-header",children:(z,te)=>{var C=pe(),I=S(C);W(I,()=>wa,(de,m)=>{m(de,{})}),s(z,C)},$$slots:{default:!0}})});var k=g(ue,2);W(k,()=>ba,(D,A)=>{A(D,{class:"dialog-body-lg",children:(z,te)=>{var C=Dn(),I=S(C);W(I,()=>$a,(m,K)=>{K(m,{children:(Q,X)=>{me();var ce=lt();F(()=>j(ce,`Copy ${e(E).size??""} ${e(E).size===1?"entry":"entries"}`)),s(Q,ce)},$$slots:{default:!0}})});var de=g(I,4);Me(de,17,()=>e(jt),Ze,(m,K)=>{var Q=Tn(),X=c(Q);{let tt=w(()=>e(De).includes(e(K).name));Ta(X,{get checked(){return e(tt)}})}var ce=g(X,2),Fe=c(ce,!0);i(ce),i(Q),F(()=>j(Fe,e(K).displayName)),ye("click",Q,()=>Ot(e(K).name)),s(m,Q)}),s(z,C)},$$slots:{default:!0}})});var y=g(k,2);W(y,()=>ka,(D,A)=>{A(D,{children:(z,te)=>{var C=Cn(),I=S(C);zt(I,{variant:"ghost",onclick:()=>{l(be,null)},children:(m,K)=>{me();var Q=lt("Cancel");s(m,Q)},$$slots:{default:!0}});var de=g(I,2);{let m=w(()=>e(De).length===0||e(Ce));zt(de,{onclick:oa,get disabled(){return e(m)},children:(K,Q)=>{me();var X=lt();F(()=>j(X,e(Ce)?"Copying...":`Copy to ${e(De).length} folder${e(De).length!==1?"s":""}`)),s(K,X)},$$slots:{default:!0}})}s(z,C)},$$slots:{default:!0}})}),s(ne,ie)},$$slots:{default:!0}})}),s(a,$)},$$slots:{default:!0}})})}var pa=g(Bt,2);{let n=w(()=>e(be)==="delete");W(pa,()=>Sa,(o,t)=>{t(o,{get open(){return e(n)},onOpenChange:a=>{a||l(be,null)},children:(a,f)=>{var $=pe(),G=S($);W(G,()=>ya,(R,oe)=>{oe(R,{children:(ne,fe)=>{var ie=zn(),ue=S(ie);W(ue,()=>ma,(D,A)=>{A(D,{class:"close-only-header",children:(z,te)=>{var C=pe(),I=S(C);W(I,()=>wa,(de,m)=>{m(de,{})}),s(z,C)},$$slots:{default:!0}})});var k=g(ue,2);W(k,()=>ba,(D,A)=>{A(D,{class:"dialog-body-lg",children:(z,te)=>{var C=Pn(),I=S(C);W(I,()=>$a,(de,m)=>{m(de,{children:(K,Q)=>{me();var X=lt();F(()=>j(X,`Delete ${e(E).size??""} ${e(E).size===1?"entry":"entries"}`)),s(K,X)},$$slots:{default:!0}})}),me(2),s(z,C)},$$slots:{default:!0}})});var y=g(k,2);W(y,()=>ka,(D,A)=>{A(D,{children:(z,te)=>{var C=An(),I=S(C);zt(I,{variant:"ghost",onclick:()=>{l(be,null)},children:(m,K)=>{me();var Q=lt("Cancel");s(m,Q)},$$slots:{default:!0}});var de=g(I,2);zt(de,{variant:"destructive",onclick:Jt,get disabled(){return e(Ce)},children:(m,K)=>{me();var Q=lt();F(()=>j(Q,e(Ce)?"Deleting...":"Delete")),s(m,Q)},$$slots:{default:!0}}),s(z,C)},$$slots:{default:!0}})}),s(ne,ie)},$$slots:{default:!0}})}),s(a,$)},$$slots:{default:!0}})})}F(()=>Pt=Oe(Mt,1,"th-select svelte-1p6fd26",null,Pt,{"th-select-active":e(Be)})),ye("click",Mt,Ne),s(J,Qt),je()}Wt(["click"]);function Rn(J,r){const d=[],L=new Set;if(J&&Ra[J])for(const p of Ra[J])p.format==="date"&&!L.has(p.key)&&(d.push({key:p.key,label:p.label}),L.add(p.key));if(r){for(const p of r)if(!L.has(p)&&(p.endsWith("_date")||p==="date"||p==="expected_close")){const x=p.replace(/_/g," ").replace(/\b\w/g,O=>O.toUpperCase());d.push({key:p,label:x}),L.add(p)}}return L.has("created_at")||d.push({key:"created_at",label:"Created"}),d}function Ca(J,r){let d;if(r==="created_at"?d=J.createdAt:r==="updated_at"?d=J.updatedAt:d=J.fields[r],!d)return null;const L=String(d);return/^\d{4}-\d{2}-\d{2}/.test(L)?L.slice(0,10):null}function Fn(J,r,d,L){const p=new Date,x=`${p.getFullYear()}-${String(p.getMonth()+1).padStart(2,"0")}-${String(p.getDate()).padStart(2,"0")}`,M=new Date(J,r-1,1).getDay(),P=new Date(J,r-1,1-M),V=new Map;for(const h of d){const v=Ca(h,L);v&&(V.has(v)||V.set(v,[]),V.get(v).push(h))}const Y=[];for(let h=0;h<42;h++){const v=new Date(P);v.setDate(v.getDate()+h);const T=v.getFullYear(),b=v.getMonth()+1,q=v.getDate(),ae=`${T}-${String(b).padStart(2,"0")}-${String(q).padStart(2,"0")}`;Y.push({dateStr:ae,day:q,isCurrentMonth:b===r&&T===J,isToday:ae===x,entities:V.get(ae)??[]})}return Y}function Ln(J,r,d,L,p){const x=new Date,O=`${x.getFullYear()}-${String(x.getMonth()+1).padStart(2,"0")}-${String(x.getDate()).padStart(2,"0")}`,M=new Date(J,r-1,d),P=M.getDay(),V=new Date(M);V.setDate(M.getDate()-P);const Y=new Map;for(const v of L){const T=Ca(v,p);T&&(Y.has(T)||Y.set(T,[]),Y.get(T).push(v))}const h=[];for(let v=0;v<7;v++){const T=new Date(V);T.setDate(T.getDate()+v);const b=T.getFullYear(),q=T.getMonth()+1,ae=T.getDate(),we=`${b}-${String(q).padStart(2,"0")}-${String(ae).padStart(2,"0")}`;h.push({dateStr:we,day:ae,isCurrentMonth:q===r&&b===J,isToday:we===O,entities:Y.get(we)??[]})}return h}function Nn(J){if(J.length===0)return"";const r=new Date(J[0].dateStr+"T00:00:00"),d=new Date(J[J.length-1].dateStr+"T00:00:00"),L=r.getMonth()===d.getMonth()&&r.getFullYear()===d.getFullYear(),p=r.getFullYear()===d.getFullYear(),x=O=>O.toLocaleDateString("en-US",{month:"short"});return L?`${x(r)} ${r.getDate()} – ${d.getDate()}, ${d.getFullYear()}`:p?`${x(r)} ${r.getDate()} – ${x(d)} ${d.getDate()}, ${d.getFullYear()}`:`${x(r)} ${r.getDate()}, ${r.getFullYear()} – ${x(d)} ${d.getDate()}, ${d.getFullYear()}`}const En=["January","February","March","April","May","June","July","August","September","October","November","December"],In=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var On=Je("<title> </title>"),Yn=Je('<svg><!><path d="M30,23V21H27.91a5.9592,5.9592,0,0,0-1.0244-2.4707L28.364,17.05,26.95,15.6362l-1.4788,1.4785A5.9584,5.9584,0,0,0,23,16.09V14H21v2.09a5.9584,5.9584,0,0,0-2.4709,1.0244L17.05,15.6362,15.636,17.05l1.4787,1.479A5.9618,5.9618,0,0,0,16.09,21H14v2h2.09a5.9618,5.9618,0,0,0,1.0244,2.4707L15.636,26.95,17.05,28.3638l1.4788-1.4785A5.9584,5.9584,0,0,0,21,27.91V30h2V27.91a5.9584,5.9584,0,0,0,2.4709-1.0244L26.95,28.3638,28.364,26.95l-1.4787-1.479A5.9592,5.9592,0,0,0,27.91,23Zm-8,3a4,4,0,1,1,4-4A4.0045,4.0045,0,0,1,22,26Z"></path><path d="M28,6a2,2,0,0,0-2-2H22V2H20V4H12V2H10V4H6A2,2,0,0,0,4,6V26a2,2,0,0,0,2,2h4V26H6V6h4V8h2V6h8V8h2V6h4v6h2Z"></path></svg>');function Bn(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=Yn();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=On(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(2),i(P),s(J,P),je()}var Zn=_("<!> <!>",1),Un=_('<div class="empty svelte-dnwsps"><p>No date fields available for the selected type.</p> <p class="empty-hint svelte-dnwsps">Try selecting a type with date fields like Task, Project, or Meeting.</p></div>'),Gn=_('<div class="dow-header svelte-dnwsps"> </div>'),Kn=_('<button class="entity-chip svelte-dnwsps" draggable="true"><span class="chip-label svelte-dnwsps"> </span></button>'),Wn=_('<button class="day-view-all svelte-dnwsps"> </button>'),jn=_('<div><span> </span> <div class="day-entities svelte-dnwsps"></div> <!></div>'),Jn=_('<div class="calendar-grid svelte-dnwsps"><!> <!></div>'),qn=_('<span class="tooltip-spacer svelte-dnwsps"></span> <span class="tooltip-meta svelte-dnwsps"> </span>',1),Qn=_('<span class="tooltip-dot svelte-dnwsps"></span>'),Xn=_('<span class="tooltip-spacer svelte-dnwsps"></span>'),es=_('<!> <span class="tooltip-meta svelte-dnwsps"> </span>',1),ts=_('<div class="floating-tooltip svelte-dnwsps"><span class="tooltip-spacer svelte-dnwsps"></span> <strong class="tooltip-title svelte-dnwsps"> </strong> <span class="tooltip-dot svelte-dnwsps"></span> <span class="tooltip-meta svelte-dnwsps"> </span> <!> <!></div>'),as=_('<button class="overflow-item svelte-dnwsps"><span class="chip-dot"></span> <span class="overflow-item-title svelte-dnwsps"> </span> <span class="overflow-item-type svelte-dnwsps"> </span></button>'),rs=_('<div class="overflow-backdrop svelte-dnwsps"></div> <div class="overflow-popover svelte-dnwsps"><div class="overflow-list svelte-dnwsps"></div></div>',1),ns=_('<div class="calendar-view svelte-dnwsps"><div class="calendar-toolbar svelte-dnwsps"><div class="toolbar-left svelte-dnwsps"><button><!></button> <!> <!></div> <div class="month-nav svelte-dnwsps"><button class="nav-btn svelte-dnwsps"><!></button> <button class="month-label svelte-dnwsps"> </button> <button class="nav-btn svelte-dnwsps"><!></button></div> <div class="toolbar-right svelte-dnwsps"><!></div></div> <!></div> <!> <!>',1);function ss(J,r){We(r,!0);let d=se(r,"lockedType",3,null),L=se(r,"lockedFolder",3,null),p=se(r,"storageId",3,null),x=se(r,"entities",3,null);const O=w(()=>p()?`sg-calendarview-${p()}`:null);function M(){if(!e(O))return null;try{const t=localStorage.getItem(e(O));if(t)return JSON.parse(t)}catch{}return null}function P(){if(!e(O))return;const t={selectedType:d()?null:e(V),dateField:e(Y),year:e(h),month:e(v),day:e(T),mode:e(b)};localStorage.setItem(e(O),JSON.stringify(t))}let V=le(null),Y=le("due_date"),h=le(pt(new Date().getFullYear())),v=le(new Date().getMonth()+1),T=le(pt(new Date().getDate())),b=le("month"),q=le(null);He(()=>{if(r.view&&r.view.id!==e(q)){l(q,r.view.id,!0);const t=M();if(t)l(V,d()??t.selectedType??null,!0),l(Y,t.dateField??"due_date",!0),l(h,t.year??new Date().getFullYear(),!0),l(v,t.month??new Date().getMonth()+1,!0),l(T,t.day??new Date().getDate(),!0),l(b,t.mode??"month",!0);else{const a=r.view.config;l(V,d()??a.selectedType??null,!0),l(Y,a.calendar?.dateField??"due_date",!0),l(h,a.calendar?.year??new Date().getFullYear(),!0),l(v,a.calendar?.month??new Date().getMonth()+1,!0),l(T,new Date().getDate(),!0),l(b,"month")}}}),He(()=>{d()&&l(V,d())}),He(()=>{e(V),e(Y),e(h),e(v),e(T),e(b),e(q)!==null&&P()});const ae=w(()=>{if(x())return x().filter(a=>!e(V)||a.entityType===e(V));const t=[];for(const a of Ve.repos)if(!(L()&&a.name!==L()))for(const f of a.entities)(!e(V)||f.entityType===e(V))&&t.push(f);return t}),we=w(()=>{const t=new Set;for(const a of e(ae))for(const f of Object.keys(a.fields))t.add(f);return t}),ke=w(()=>Rn(e(V),e(we)));He(()=>{e(ke).length>0&&!e(ke).some(t=>t.key===e(Y))&&l(Y,e(ke)[0].key,!0)});const Ee=w(()=>e(b)==="week"?Ln(e(h),e(v),e(T),e(ae),e(Y)):Fn(e(h),e(v),e(ae),e(Y))),Pe=w(()=>e(b)==="week"?Nn(e(Ee)):`${En[e(v)-1]} ${e(h)}`);He(()=>{Tt.count=e(ae).length}),Da(()=>{Tt.count=null});function et(t){const a=new Date(e(h),e(v)-1,e(T));a.setDate(a.getDate()+t),l(h,a.getFullYear(),!0),l(v,a.getMonth()+1),l(T,a.getDate(),!0)}function ct(){e(b)==="week"?et(-7):e(v)===1?(l(v,12),na(h,-1)):na(v,-1)}function qe(){e(b)==="week"?et(7):e(v)===12?(l(v,1),na(h)):na(v)}function Qe(){const t=new Date;l(h,t.getFullYear(),!0),l(v,t.getMonth()+1),l(T,t.getDate(),!0)}function Ie(){l(b,e(b)==="month"?"week":"month",!0)}function Se(t){t&&l(Y,t,!0)}function Z(t){sa(`/${t.repo}/${t.entityType}/${t.id}`)}let H=le(null),u=le(pt({x:0,y:0})),B=le(!1),N=le(!1),U;function ge(t,a){l(B,t+10+200>window.innerWidth),l(N,a+10+80>window.innerHeight),l(u,{x:e(B)?t-10:t+10,y:e(N)?a-10:a+10},!0)}function re(t,a){clearTimeout(U),l(H,a,!0),ge(t.clientX,t.clientY)}function he(t){ge(t.clientX,t.clientY)}function E(){clearTimeout(U),U=setTimeout(()=>{l(H,null)},80)}let ve=le(pt([])),_e=le(pt({x:0,y:0})),Ye=le("");function Ne(t,a,f){t.stopPropagation(),l(ve,a,!0),l(Ye,new Date(f+"T00:00:00").toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric"}),!0);const $=t.currentTarget.getBoundingClientRect(),G=260,R=Math.min(320,a.length*36+40);let oe=$.left,ne=$.bottom+4;oe+G>window.innerWidth&&(oe=window.innerWidth-G-8),oe<8&&(oe=8),ne+R>window.innerHeight&&(ne=$.top-R-4),ne<8&&(ne=8),l(_e,{x:oe,y:ne},!0)}function Be(){l(ve,[],!0)}const ht=new Set(["created_at","updated_at"]),it=w(()=>!ht.has(e(Y)));let be=le(null),Re=le(null);function De(t,a){l(be,a,!0),t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text/plain",a.id),E()}function Ce(t,a){!e(be)||!e(it)||(t.preventDefault(),t.dataTransfer.dropEffect="move",l(Re,a,!0))}function jt(){l(Re,null)}function la(){l(be,null),l(Re,null)}async function oa(t,a){if(t.preventDefault(),!e(be))return;const f=e(be);l(be,null),l(Re,null);try{await Za(f.repo,f.entityType,f.id,{data:{[e(Y)]:a}}),await Ve.refreshEntities(f.repo)}catch($){console.error("Failed to update entity date:",$)}}var Jt=ns(),Ot=S(Jt),yt=c(Ot),gt=c(yt),_t=c(gt);let qt;var Qt=c(_t);Bn(Qt,{size:16}),i(_t);var Lt=g(_t,2);{var Xt=t=>{var a=pe(),f=S(a);W(f,()=>hr,($,G)=>{G($,{type:"single",get value(){return e(Y)},onValueChange:Se,children:(R,oe)=>{var ne=Zn(),fe=S(ne);{let ue=w(()=>e(ke).find(k=>k.key===e(Y))?.label??e(Y));W(fe,()=>gr,(k,y)=>{y(k,{size:"sm",get value(){return e(ue)}})})}var ie=g(fe,2);W(ie,()=>_r,(ue,k)=>{k(ue,{align:"start",children:(y,D)=>{var A=pe(),z=S(A);Me(z,17,()=>e(ke),Ze,(te,C)=>{var I=pe(),de=S(I);W(de,()=>yr,(m,K)=>{K(m,{get value(){return e(C).key},get label(){return e(C).label}})}),s(te,I)}),s(y,A)},$$slots:{default:!0}})}),s(R,ne)},$$slots:{default:!0}})}),s(t,a)};ee(Lt,t=>{e(ke).length>1&&t(Xt)})}var ia=g(Lt,2);{var da=t=>{var a=pe(),f=S(a);Ht(f,()=>r.toolbarLeft),s(t,a)};ee(ia,t=>{r.toolbarLeft&&t(da)})}i(gt);var Nt=g(gt,2),mt=c(Nt),Yt=c(mt);pr(Yt,{size:16}),i(mt);var Ct=g(mt,2),Mt=c(Ct,!0);i(Ct);var Pt=g(Ct,2),ca=c(Pt);Ga(ca,{size:16}),i(Pt),i(Nt);var ea=g(Nt,2),ta=c(ea);{var va=t=>{var a=pe(),f=S(a);Ht(f,()=>r.toolbarRight),s(t,a)};ee(ta,t=>{r.toolbarRight&&t(va)})}i(ea),i(yt);var ua=g(yt,2);{var fa=t=>{var a=Un();s(t,a)},aa=t=>{var a=Jn(),f=c(a);Me(f,17,()=>In,Ze,(G,R)=>{var oe=Gn(),ne=c(oe,!0);i(oe),F(()=>j(ne,e(R))),s(G,oe)});var $=g(f,2);Me($,17,()=>e(Ee),Ze,(G,R,oe,ne)=>{const fe=w(()=>e(R).entities.length>2);var ie=jn();let ue;var k=c(ie);let y;var D=c(k,!0);i(k);var A=g(k,2);Me(A,21,()=>e(R).entities,Ze,(C,I)=>{const de=w(()=>ha(e(I).entityType));var m=Kn();let K;var Q=c(m),X=c(Q,!0);i(Q),i(m),F(ce=>{K=ft(m,"",K,{"border-left-color":e(de)}),j(X,ce)},[()=>Vt(e(I).title)]),xt("dragstart",m,ce=>De(ce,e(I))),xt("dragend",m,la),ye("click",m,()=>Z(e(I))),xt("mouseenter",m,ce=>re(ce,e(I))),ye("mousemove",m,he),xt("mouseleave",m,E),s(C,m)}),i(A);var z=g(A,2);{var te=C=>{var I=Wn(),de=c(I);i(I),F(()=>j(de,`View all ${e(R).entities.length??""}`)),ye("click",I,m=>Ne(m,e(R).entities,e(R).dateStr)),s(C,I)};ee(z,C=>{e(fe)&&C(te)})}i(ie),F(()=>{ue=Oe(ie,1,"calendar-day svelte-dnwsps",null,ue,{"outside-month":!e(R).isCurrentMonth,today:e(R).isToday,"week-mode":e(b)==="week","has-overflow":e(fe),"drop-target":e(it)&&e(Re)===e(R).dateStr}),y=Oe(k,1,"day-number svelte-dnwsps",null,y,{"today-number":e(R).isToday}),j(D,e(R).day)}),xt("dragover",ie,C=>Ce(C,e(R).dateStr)),xt("dragleave",ie,jt),xt("drop",ie,C=>oa(C,e(R).dateStr)),s(G,ie)}),i(a),s(t,a)};ee(ua,t=>{e(ke).length===0?t(fa):t(aa,!1)})}i(Ot);var Bt=g(Ot,2);{var pa=t=>{const a=w(()=>ha(e(H).entityType)),f=w(()=>Ca(e(H),e(Y)));var $=ts();let G;var R=g(c($),2),oe=c(R,!0);i(R);var ne=g(R,2);let fe;var ie=g(ne,2),ue=c(ie,!0);i(ie);var k=g(ie,2);{var y=z=>{var te=qn(),C=g(S(te),2),I=c(C,!0);i(C),F(de=>j(I,de),[()=>new Date(e(f)).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})]),s(z,te)};ee(k,z=>{e(f)&&z(y)})}var D=g(k,2);{var A=z=>{const te=w(()=>Gt(e(H).entityType,"status",String(e(H).fields.status)));var C=es(),I=S(C);{var de=X=>{var ce=Qn();let Fe;F(()=>Fe=ft(ce,"",Fe,{background:e(te)})),s(X,ce)},m=X=>{var ce=Xn();s(X,ce)};ee(I,X=>{e(te)?X(de):X(m,!1)})}var K=g(I,2),Q=c(K,!0);i(K),F(X=>j(Q,X),[()=>Kt(String(e(H).fields.status))]),s(z,C)};ee(D,z=>{e(H).fields.status&&z(A)})}i($),F((z,te)=>{G=ft($,"",G,{left:`${e(u).x??""}px`,top:`${e(u).y??""}px`,transform:`translate(${e(B)?"-100%":"0"}, ${e(N)?"-100%":"0"})`}),j(oe,z),fe=ft(ne,"",fe,{background:e(a)}),j(ue,te)},[()=>Vt(e(H).title),()=>Kt(e(H).entityType)]),s(t,$)};ee(Bt,t=>{e(H)&&t(pa)})}var n=g(Bt,2);{var o=t=>{var a=rs(),f=S(a),$=g(f,2);let G;var R=c($);Me(R,21,()=>e(ve),Ze,(oe,ne)=>{const fe=w(()=>ha(e(ne).entityType));var ie=as(),ue=c(ie);let k;var y=g(ue,2),D=c(y,!0);i(y);var A=g(y,2),z=c(A,!0);i(A),i(ie),F((te,C)=>{k=ft(ue,"",k,{background:e(fe)}),j(D,te),j(z,C)},[()=>Vt(e(ne).title),()=>Kt(e(ne).entityType)]),ye("click",ie,()=>{Be(),Z(e(ne))}),s(oe,ie)}),i(R),i($),F(()=>G=ft($,"",G,{left:`${e(_e).x??""}px`,top:`${e(_e).y??""}px`})),ye("click",f,Be),s(t,a)};ee(n,t=>{e(ve).length>0&&t(o)})}F(()=>{qt=Oe(_t,1,"toolbar-icon-btn svelte-dnwsps",null,qt,{active:e(b)==="week"}),ot(_t,"title",e(b)==="week"?"Switch to month view":"Switch to week view"),ot(mt,"title",e(b)==="week"?"Previous week":"Previous month"),j(Mt,e(Pe)),ot(Pt,"title",e(b)==="week"?"Next week":"Next month")}),ye("click",_t,Ie),ye("click",mt,ct),ye("click",Ct,Qe),ye("click",Pt,qe),s(J,Jt),je()}Wt(["click","mousemove"]);var ls=_('<div class="cell-image svelte-1v0e2we"><img loading="lazy" class="svelte-1v0e2we"/></div> <span class="cell-title svelte-1v0e2we"> </span>',1),os=_('<div class="cell-headline svelte-1v0e2we"><span class="svelte-1v0e2we"> </span></div> <div></div>',1),is=_('<span class="cell-tag svelte-1v0e2we"> </span>'),ds=_('<button class="gallery-cell svelte-1v0e2we"><!> <div class="cell-tags svelte-1v0e2we"></div></button>'),cs=_('<div class="gallery-view svelte-1v0e2we"><div class="gallery-toolbar svelte-1v0e2we"><div class="toolbar-left svelte-1v0e2we"><!></div> <div class="toolbar-right svelte-1v0e2we"><!></div></div> <div class="gallery-grid svelte-1v0e2we"></div></div>');function vs(J,r){We(r,!0);let d=se(r,"lockedType",3,null),L=se(r,"lockedFolder",3,null),p=se(r,"storageId",3,null),x=se(r,"entities",3,null);const O=w(()=>p()?`sg-galleryview-${p()}`:null);function M(){if(!e(O))return null;try{const Z=localStorage.getItem(e(O));if(Z)return JSON.parse(Z)}catch{}return null}function P(){if(!e(O))return;const Z={selectedType:d()?null:e(V)};localStorage.setItem(e(O),JSON.stringify(Z))}let V=le(null),Y=le(null);He(()=>{if(r.view&&r.view.id!==e(Y)){l(Y,r.view.id,!0);const Z=M();Z?l(V,d()??Z.selectedType??null,!0):l(V,d()??r.view.config.selectedType??null,!0)}}),He(()=>{d()&&l(V,d())}),He(()=>{e(V),e(Y)!==null&&P()});const h=w(()=>{if(x())return x().filter(H=>!e(V)||H.entityType===e(V));const Z=[];for(const H of Ve.repos)if(!(L()&&H.name!==L()))for(const u of H.entities)u.id.toLowerCase().startsWith("readme")||e(V)&&u.entityType!==e(V)||Z.push(u);return Z});let v=le(pt(new Map)),T=le(!1);const b=new Map,q=w(()=>{const Z=new Set;for(const H of e(h))Z.add(H.repo);return Z});He(()=>{const Z=e(q),H=[...Z].filter(u=>!b.has(u));if(H.length===0){const u=new Map;for(const B of Z){const N=b.get(B);if(N)for(const[U,ge]of N)u.set(U,ge)}l(v,u,!0);return}l(T,!0),Promise.all(H.map(async u=>{try{const B=await Sr(u),N=new Map;for(const U of B)U.mediaType==="image"&&(N.has(U.entityId)||N.set(U.entityId,U.url));b.set(u,N)}catch{b.set(u,new Map)}})).then(()=>{const u=new Map;for(const B of Z){const N=b.get(B);if(N)for(const[U,ge]of N)u.set(U,ge)}l(v,u,!0),l(T,!1)})});const ae=w(()=>e(h).map(Z=>{const H=Z.fields.thumbnail,u=e(v).get(Z.id);return{entity:Z,thumbnailUrl:H||u||null}}));He(()=>{Tt.count=e(ae).length}),Da(()=>{Tt.count=null});function we(Z){sa(`/${Z.repo}/${Z.entityType}/${Z.id}`)}var ke=cs(),Ee=c(ke),Pe=c(Ee),et=c(Pe);{var ct=Z=>{var H=pe(),u=S(H);Ht(u,()=>r.toolbarLeft),s(Z,H)};ee(et,Z=>{r.toolbarLeft&&Z(ct)})}i(Pe);var qe=g(Pe,2),Qe=c(qe);{var Ie=Z=>{var H=pe(),u=S(H);Ht(u,()=>r.toolbarRight),s(Z,H)};ee(Qe,Z=>{r.toolbarRight&&Z(Ie)})}i(qe),i(Ee);var Se=g(Ee,2);Me(Se,21,()=>e(ae),Z=>Z.entity.repo+"/"+Z.entity.entityType+"/"+Z.entity.id,(Z,H)=>{const u=w(()=>Array.isArray(e(H).entity.fields.tags)?e(H).entity.fields.tags:[]);var B=ds(),N=c(B);{var U=he=>{var E=ls(),ve=S(E),_e=c(ve);i(ve);var Ye=g(ve,2),Ne=c(Ye,!0);i(Ye),F(Be=>{ot(_e,"src",e(H).thumbnailUrl),ot(_e,"alt",e(H).entity.title),j(Ne,Be)},[()=>Vt(e(H).entity.title)]),xt("error",_e,Be=>{Be.currentTarget.style.display="none"}),qa(_e),s(he,E)},ge=he=>{var E=os(),ve=S(E),_e=c(ve),Ye=c(_e,!0);i(_e),i(ve),me(2),F(Ne=>j(Ye,Ne),[()=>Vt(e(H).entity.title)]),s(he,E)};ee(N,he=>{e(H).thumbnailUrl?he(U):he(ge,!1)})}var re=g(N,2);Me(re,21,()=>e(u).slice(0,3),Ze,(he,E)=>{var ve=is(),_e=c(ve,!0);i(ve),F(Ye=>j(_e,Ye),[()=>e(E).replace(/[-_]/g," ")]),s(he,ve)}),i(re),i(B),ye("click",B,()=>we(e(H).entity)),s(Z,B)}),i(Se),i(ke),s(J,ke),je()}Wt(["click"]);var us=_('<p class="empty-hint svelte-1ux434j"> </p>'),fs=_('<div><p class="empty-message svelte-1ux434j"> </p> <!> <!></div>');function ps(J,r){We(r,!0);let d=se(r,"message",3,"Let’s add your first entry."),L=se(r,"showNewEntry",3,!0),p=se(r,"lockRepo",3,!1),x=se(r,"overlay",3,!1);var O=fs();let M;var P=c(O),V=c(P,!0);i(P);var Y=g(P,2);{var h=b=>{var q=us(),ae=c(q,!0);i(q),F(()=>j(ae,r.hint)),s(b,q)};ee(Y,b=>{r.hint&&b(h)})}var v=g(Y,2);{var T=b=>{zt(b,{variant:"outline",onclick:()=>Ha.open(r.defaultRepo,p()),children:(q,ae)=>{me();var we=lt("New Entry");s(q,we)},$$slots:{default:!0}})};ee(v,b=>{L()&&Ha.available&&b(T)})}i(O),F(()=>{M=Oe(O,1,"empty-state svelte-1ux434j",null,M,{overlay:x()}),j(V,d())}),s(J,O),je()}var gs=Je("<title> </title>"),_s=Je('<svg><!><path d="M10 6H28V8H10z"></path><path d="M10 24H28V26H10z"></path><path d="M10 15H28V17H10z"></path><path d="M4 15H6V17H4z"></path><path d="M4 6H6V8H4z"></path><path d="M4 24H6V26H4z"></path></svg>');function hs(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=_s();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=gs(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(6),i(P),s(J,P),je()}var ys=Je("<title> </title>"),ms=Je('<svg><!><path d="M23,20a5,5,0,0,0-3.89,1.89L11.8,17.32a4.46,4.46,0,0,0,0-2.64l7.31-4.57A5,5,0,1,0,18,7a4.79,4.79,0,0,0,.2,1.32l-7.31,4.57a5,5,0,1,0,0,6.22l7.31,4.57A4.79,4.79,0,0,0,18,25a5,5,0,1,0,5-5ZM23,4a3,3,0,1,1-3,3A3,3,0,0,1,23,4ZM7,19a3,3,0,1,1,3-3A3,3,0,0,1,7,19Zm16,9a3,3,0,1,1,3-3A3,3,0,0,1,23,28Z"></path></svg>');function ws(J,r){const d=Ke(r,["children","$$slots","$$events","$$legacy"]),L=Ke(d,["size","title"]);We(r,!1);const p=Ge(),x=Ge();let O=se(r,"size",8,16),M=se(r,"title",8,void 0);Ue(()=>(Te(d),Te(M())),()=>{l(p,d["aria-label"]||d["aria-labelledby"]||M())}),Ue(()=>(e(p),Te(d)),()=>{l(x,{"aria-hidden":e(p)?void 0:!0,role:e(p)?"img":void 0,focusable:Number(d.tabindex)===0?!0:void 0})}),Rt(),Ft();var P=ms();Dt(P,()=>({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor",preserveAspectRatio:"xMidYMid meet",width:O(),height:O(),...e(x),...L}));var V=c(P);{var Y=h=>{var v=ys(),T=c(v,!0);i(v),F(()=>j(T,M())),s(h,v)};ee(V,h=>{M()&&h(Y)})}me(),i(P),s(J,P),je()}var bs=_('<span class="tag-filter-clear svelte-1xxn7b9"><!></span>'),$s=_('<span class="tag-filter-label svelte-1xxn7b9"> </span> <!>',1),ks=_('<input class="tag-filter-search svelte-1xxn7b9" type="text" placeholder="Filter tags..."/>'),Ss=_('<button><span class="tag-filter-check svelte-1xxn7b9"> </span> <span class="tag-filter-name svelte-1xxn7b9"> </span> <span class="tag-filter-count svelte-1xxn7b9"> </span></button>'),xs=_('<div class="tag-filter-empty svelte-1xxn7b9">No tags found</div>'),Ts=_('<!> <div class="tag-filter-list svelte-1xxn7b9"></div>',1),Ds=_("<!> <!>",1);function Cs(J,r){We(r,!0);let d=se(r,"selectedTags",19,()=>[]),L=le(!1),p=le("");const x=w(()=>{const b=new Map;for(const q of r.entities){const ae=q.fields.tags;if(Array.isArray(ae))for(const we of ae){const ke=String(we);b.set(ke,(b.get(ke)??0)+1)}}return[...b.entries()].sort((q,ae)=>ae[1]-q[1]).map(([q,ae])=>({tag:q,count:ae}))}),O=w(()=>e(p)?e(x).filter(b=>b.tag.toLowerCase().includes(e(p).toLowerCase())):e(x));function M(b){return b.replace(/[-_]/g," ")}function P(b){d().includes(b)?r.onchange(d().filter(q=>q!==b)):r.onchange([...d(),b])}function V(){r.onchange([])}const Y=w(()=>d().length===0?"Filters":d().length===1?M(d()[0]):`${d().length} filters`);var h=pe(),v=S(h);{var T=b=>{var q=pe(),ae=S(q);W(ae,()=>Mr,(we,ke)=>{ke(we,{get open(){return e(L)},set open(Ee){l(L,Ee,!0)},children:(Ee,Pe)=>{var et=Ds(),ct=S(et);{let Qe=w(()=>d().length>0?"has-selection":"");W(ct,()=>Dr,(Ie,Se)=>{Se(Ie,{get class(){return`tag-filter-trigger ${e(Qe)??""}`},children:(Z,H)=>{var u=$s(),B=S(u),N=c(B,!0);i(B);var U=g(B,2);{var ge=he=>{var E=bs(),ve=c(E);Ka(ve,{size:10}),i(E),ye("click",E,_e=>{_e.stopPropagation(),V()}),s(he,E)},re=he=>{Ua(he,{size:12,class:"tag-filter-chevron"})};ee(U,he=>{d().length>0?he(ge):he(re,!1)})}F(()=>j(N,e(Y))),s(Z,u)},$$slots:{default:!0}})})}var qe=g(ct,2);W(qe,()=>Cr,(Qe,Ie)=>{Ie(Qe,{align:"start",sideOffset:4,class:"tag-filter-content",children:(Se,Z)=>{var H=Ts(),u=S(H);{var B=U=>{var ge=ks();er(ge),kr(ge,()=>e(p),re=>l(p,re)),s(U,ge)};ee(u,U=>{e(x).length>8&&U(B)})}var N=g(u,2);Me(N,21,()=>e(O),({tag:U,count:ge})=>U,(U,ge)=>{let re=()=>e(ge).tag,he=()=>e(ge).count;var E=Ss();let ve;var _e=c(E),Ye=c(_e,!0);i(_e);var Ne=g(_e,2),Be=c(Ne,!0);i(Ne);var ht=g(Ne,2),it=c(ht,!0);i(ht),i(E),F((be,Re,De)=>{ve=Oe(E,1,"tag-filter-item svelte-1xxn7b9",null,ve,be),j(Ye,Re),j(Be,De),j(it,he())},[()=>({selected:d().includes(re())}),()=>d().includes(re())?"✓":"",()=>M(re())]),ye("click",E,()=>P(re())),s(U,E)},U=>{var ge=xs();s(U,ge)}),i(N),s(Se,H)},$$slots:{default:!0}})}),s(Ee,et)},$$slots:{default:!0}})}),s(b,q)};ee(v,b=>{e(x).length>0&&b(T)})}s(J,h),je()}Wt(["click"]);var Ms=_('<div class="view-toggle svelte-1d8n0e1"><button title="List view"><!></button> <button title="Gallery view"><!></button> <button title="Calendar view"><!></button> <button title="Graph view"><!></button></div>'),Ps=_('<div class="graph-container svelte-1d8n0e1"><div class="graph-toolbar svelte-1d8n0e1"><!> <div style="flex:1"></div> <!></div> <!></div>');function rl(J,r){We(r,!0);const d=u=>{Cs(u,{get entities(){return e(ae)},get selectedTags(){return e(T)},onchange:b})},L=u=>{var B=Ms(),N=c(B);let U;var ge=c(N);hs(ge,{size:14}),i(N);var re=g(N,2);let he;var E=c(re);zr(E,{size:14}),i(re);var ve=g(re,2);let _e;var Ye=c(ve);mr(Ye,{size:14}),i(ve);var Ne=g(ve,2);let Be;var ht=c(Ne);ws(ht,{size:14}),i(Ne),i(B),F(()=>{U=Oe(N,1,"toggle-btn svelte-1d8n0e1",null,U,{active:e(h)==="list"}),he=Oe(re,1,"toggle-btn svelte-1d8n0e1",null,he,{active:e(h)==="gallery"}),_e=Oe(ve,1,"toggle-btn svelte-1d8n0e1",null,_e,{active:e(h)==="calendar"}),Be=Oe(Ne,1,"toggle-btn svelte-1d8n0e1",null,Be,{active:e(h)==="graph"})}),ye("click",N,()=>v("list")),ye("click",re,()=>v("gallery")),ye("click",ve,()=>v("calendar")),ye("click",Ne,()=>v("graph")),s(u,B)};let p=se(r,"lockedType",3,null),x=se(r,"lockedFolder",3,null),O=se(r,"defaultSortKey",3,"name"),M=se(r,"defaultSortAsc",3,!0),P=se(r,"entities",3,null);const V=w(()=>`sg-viewmode-${r.storageId}`),Y=w(()=>`sg-tagfilter-${r.storageId}`);let h=le("list");He(()=>{try{const u=localStorage.getItem(e(V));(u==="calendar"||u==="graph"||u==="list"||u==="gallery")&&l(h,u,!0)}catch{}});function v(u){l(h,u,!0),localStorage.setItem(e(V),u)}let T=le(pt([]));He(()=>{try{const u=localStorage.getItem(e(Y)),B=u?JSON.parse(u):null;l(T,Array.isArray(B)?B:[],!0)}catch{l(T,[],!0)}});function b(u){l(T,u,!0);try{localStorage.setItem(e(Y),JSON.stringify(u))}catch{}}const q=w(()=>{const u=new Map;for(const B of Ve.repos)for(const N of B.entities)u.set(N.id,Vt(N.title));return u}),ae=w(()=>{if(P())return P();const u=[];for(const B of Ve.repos)if(!(x()&&B.name!==x()))for(const N of B.entities)N.id.toLowerCase().startsWith("readme")||p()&&N.entityType!==p()||u.push(N);return u}),we=w(()=>e(T).length===0?e(ae):e(ae).filter(u=>{const B=u.fields.tags;return Array.isArray(B)?e(T).some(N=>B.includes(N)):!1})),ke=w(()=>{if(P())return!1;if(x()){const u=Ve.repos.find(B=>B.name===x());return!u||!u.loaded}return Ve.repos.length===0||Ve.repos.some(u=>!u.loaded)}),Ee=w(()=>{const u=[],B=[],N=new Set,U=new Set;for(const re of e(we)){if(N.has(re.id))continue;N.add(re.id),u.push({id:re.id,type:re.entityType,repo:re.repo});const he=re.wikilinks??[];for(const E of he){const ve=re.id<E?`${re.id}|${E}`:`${E}|${re.id}`;!U.has(ve)&&re.id!==E&&(U.add(ve),B.push({source:re.id,target:E}))}}const ge=B.filter(re=>N.has(re.source)&&N.has(re.target));return{nodes:u,edges:ge}});He(()=>(e(h)==="graph"&&(Tt.count=e(Ee).nodes.length),()=>{e(h)==="graph"&&(Tt.count=null)}));const Pe=w(()=>({id:-1,name:r.name,viewType:e(h),config:{...rr,selectedType:p()},sortOrder:0,visibility:"workspace",createdByName:null,createdAt:"",updatedAt:""}));var et=pe(),ct=S(et);{var qe=u=>{},Qe=u=>{{let B=w(()=>x()??void 0),N=w(()=>!!x());ps(u,{get defaultRepo(){return e(B)},get lockRepo(){return e(N)}})}},Ie=u=>{var B=Ps(),N=c(B),U=c(N);d(U);var ge=g(U,4);L(ge),i(N);var re=g(N,2);xr(re,{get graphData(){return e(Ee)},get nameMap(){return e(q)},get filteredIds(){return Ve.filteredIds},get sidebarHoveredId(){return Tr.hoveredEntityId},get highlightedIds(){return tr.highlightedIds}}),i(B),s(u,B)},Se=u=>{ss(u,{get view(){return e(Pe)},get lockedType(){return p()},get lockedFolder(){return x()},get storageId(){return r.storageId},get entities(){return e(we)},toolbarLeft:U=>{d(U)},toolbarRight:U=>{L(U)},$$slots:{toolbarLeft:!0,toolbarRight:!0}})},Z=u=>{vs(u,{get view(){return e(Pe)},get lockedType(){return p()},get lockedFolder(){return x()},get storageId(){return r.storageId},get entities(){return e(we)},toolbarLeft:U=>{d(U)},toolbarRight:U=>{L(U)},$$slots:{toolbarLeft:!0,toolbarRight:!0}})},H=u=>{Hn(u,{get view(){return e(Pe)},get lockedType(){return p()},get lockedFolder(){return x()},get storageId(){return r.storageId},get defaultSortKey(){return O()},get defaultSortAsc(){return M()},get entities(){return e(we)},toolbarLeft:U=>{d(U)},toolbarRight:U=>{L(U)},$$slots:{toolbarLeft:!0,toolbarRight:!0}})};ee(ct,u=>{e(we).length===0&&e(ke)?u(qe):e(we).length===0?u(Qe,1):e(h)==="graph"?u(Ie,2):e(h)==="calendar"?u(Se,3):e(h)==="gallery"?u(Z,4):u(H,!1)})}s(J,et),je()}Wt(["click"]);export{rl as W};
@@ -1 +1 @@
1
- import{E as C,V as L,a as c,W as g}from"./Dmcboreb.js";import{r as S,f as y}from"./DTJlR4oR.js";import{syntaxTree as E}from"./C7PgRgxX.js";class M extends g{toDOM(){const e=document.createElement("span");return e.className="cm-bullet-widget",e.textContent="•",e}}class W extends g{constructor(e){super(),this.num=e}eq(e){return this.num===e.num}toDOM(){const e=document.createElement("span");return e.className="cm-ordered-widget",e.textContent=this.num.replace(/[.)]$/,""),e}}class F extends g{toDOM(){const e=document.createElement("div");return e.className="cm-hr-widget",e}}class I extends g{toDOM(){const e=document.createElement("span");return e.textContent="—",e}}class T extends g{constructor(e){super(),this.char=e}eq(e){return this.char===e.char}toDOM(){const e=document.createElement("span");return e.textContent=this.char,e}}class D extends g{constructor(e,m){super(),this.alt=e,this.url=m}eq(e){return this.alt===e.alt&&this.url===e.url}toDOM(){const e=document.createElement("div");e.className="cm-image-widget";const m=document.createElement("img");return m.src=this.url,m.alt=this.alt,m.loading="lazy",m.onerror=()=>{e.textContent=`[Image not found: ${this.alt||this.url}]`,e.className="cm-image-error"},e.appendChild(m),e}ignoreEvent(e){return e.type==="mousedown"}}class O extends g{constructor(e,m,l){super(),this.text=e,this.className=m,this.entityId=l}eq(e){return this.text===e.text&&this.className===e.className&&this.entityId===e.entityId}toDOM(){const e=document.createElement("span");return e.className=this.className,e.textContent=this.text,e.dataset.entityId=this.entityId,e.addEventListener("click",m=>{m.preventDefault(),m.stopPropagation(),e.dispatchEvent(new CustomEvent("wikilink-click",{bubbles:!0,detail:this.entityId}))}),e}ignoreEvent(e){return e.type==="mousedown"}}function q(n){return n.doc.lineAt(n.selection.main.head).number}function h(n,e,m){const l=n.selection.main.head;return l>=e&&l<=m}function v(n,e,m,l,d=!0){const t=n.from>0?e.doc.sliceString(n.from-1,n.from):"",u=n.to<e.doc.length?e.doc.sliceString(n.to,n.to+1):"";if(t!=="["||u!=="]")return!1;const i=n.from-1,r=n.to+1,s=e.doc.sliceString(n.from+1,n.to-1),o=S(s),a=o?"cm-live-wikilink cm-wikilink-active":"cm-live-wikilink cm-wikilink-inactive",f=l?`${a} ${l}`:a,p=s.indexOf("|"),x=p===-1?s:s.slice(0,p).trim();if(!d||!h(e,i,r)){const k=o?o.title:y(s);m.push(c.replace({widget:new O(k,f,x)}).range(i,r))}else m.push(c.mark({class:f}).range(i,r));return!0}function b(n){const e=n.state,m=n.hasFocus?q(e):-1,l=[];E(e).iterate({enter(t){const u=e.doc.lineAt(t.from).number;if(t.name.startsWith("ATXHeading")){const r=`cm-live-heading cm-live-heading-${parseInt(t.name.replace("ATXHeading",""),10)||1}`;if(l.push(c.mark({class:r}).range(t.from,t.to)),u!==m){let s=t.node.firstChild;for(;s;){if(s.name==="HeaderMark"){const o=Math.min(s.to+1,t.to);l.push(c.replace({}).range(s.from,o))}else s.name==="Link"&&v(s,e,l,r,n.hasFocus);s=s.nextSibling}}return!1}if(t.name==="Blockquote"){const i=e.doc.lineAt(t.from).number,r=e.doc.lineAt(t.to).number;for(let s=i;s<=r;s++){const o=e.doc.line(s);l.push(c.line({class:"cm-quote-line"}).range(o.from))}}if(t.name==="QuoteMark"&&u!==m){const r=e.doc.sliceString(t.to,Math.min(t.to+1,e.doc.length))===" "?t.to+1:t.to;l.push(c.replace({}).range(t.from,r))}if(t.name==="FencedCode"){const i=e.doc.lineAt(t.from).number,r=e.doc.lineAt(t.to).number;for(let s=i;s<=r;s++){const o=e.doc.line(s);l.push(c.line({class:"cm-code-line"}).range(o.from))}}if(t.name==="CodeMark"||t.name==="CodeInfo"){const i=t.node.parent;i?.name==="FencedCode"&&(n.hasFocus&&h(e,i.from,i.to)||l.push(c.replace({}).range(t.from,t.to)))}if(t.name==="HorizontalRule"&&u!==m&&l.push(c.replace({widget:new F}).range(t.from,t.to)),t.name==="ListMark"&&u!==m){const i=e.doc.lineAt(t.from),r=e.doc.sliceString(i.from,t.from);let s;r.includes(" ")?s=(r.match(/\t/g)||[]).length:s=Math.floor(r.length/2),s=Math.max(0,Math.min(s,5)),t.from>i.from&&l.push(c.replace({}).range(i.from,t.from));const o=Math.min(t.to+1,i.to);if(t.node.parent?.parent?.name==="OrderedList"){const f=e.doc.sliceString(t.from,t.to);l.push(c.replace({widget:new W(f)}).range(t.from,o))}else l.push(c.replace({widget:new M}).range(t.from,o));l.push(c.line({class:`cm-list-line cm-list-line-l${s}`}).range(i.from))}if(t.name==="StrongEmphasis"){if(!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild,r=!1;for(;i;)i.name==="Link"&&(r=v(i,e,l,"cm-live-strong",n.hasFocus)),i=i.nextSibling;for(r||l.push(c.mark({class:"cm-live-strong"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}else l.push(c.mark({class:"cm-live-strong"}).range(t.from,t.to));return!1}if(t.name==="Emphasis"){if(!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild,r=!1;for(;i;)i.name==="Link"&&(r=v(i,e,l,"cm-live-em",n.hasFocus)),i=i.nextSibling;for(r||l.push(c.mark({class:"cm-live-em"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}else l.push(c.mark({class:"cm-live-em"}).range(t.from,t.to));return!1}if(t.name==="InlineCode"){if(l.push(c.mark({class:"cm-live-code"}).range(t.from,t.to)),!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild;for(;i;)i.name==="CodeMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}return!1}if(t.name==="Link"){const i=e.doc.sliceString(t.from,t.to);if(v(t,e,l,void 0,n.hasFocus))return!1;if(i.includes("](")){let r=t.node.firstChild;const s=[];let o=null;for(;r;)r.name==="LinkMark"&&s.push({from:r.from,to:r.to}),r.name==="URL"&&(o={from:r.from,to:r.to}),r=r.nextSibling;const a=o?e.doc.sliceString(o.from,o.to):"";return l.push(c.mark({class:"cm-live-link",attributes:a?{"data-href":a}:{}}).range(t.from,t.to)),(!n.hasFocus||!h(e,t.from,t.to))&&s.length>=2&&o&&(l.push(c.replace({}).range(s[0].from,s[0].to)),l.push(c.replace({}).range(s[1].from,t.to))),!1}}if(t.name==="Image"){if(!n.hasFocus||!h(e,t.from,t.to)){const r=e.doc.sliceString(t.from,t.to).match(/!\[([^\]]*)\]/),s=r?r[1]:"";let o="",a=t.node.firstChild;for(;a;)a.name==="URL"&&(o=e.doc.sliceString(a.from,a.to)),a=a.nextSibling;o&&l.push(c.replace({widget:new D(s,o)}).range(t.from,t.to))}else l.push(c.mark({class:"cm-image-raw"}).range(t.from,t.to));return!1}}});const d=e.doc;for(let t=1;t<=d.lines;t++){if(t===m)continue;const u=d.line(t),i=u.text,r=i.trim(),s=/^-{3,}$/.test(r)||/^\*{3,}$/.test(r)||/^_{3,}$/.test(r);let o=0;for(;!s&&(o=i.indexOf("--",o))!==-1;){const a=u.from+o,f=a+2;h(e,a,f)||l.push(c.replace({widget:new I}).range(a,f)),o+=2}for(let a=0;a<i.length;a++){const f=i[a];if(f!=='"'&&f!=="'")continue;const p=u.from+a;if(h(e,p,p+1))continue;const x=a>0?i[a-1]:"",k=!x||/[\s([\-—]/.test(x);let w;f==='"'?w=k?"“":"”":w=k?"‘":"’",l.push(c.replace({widget:new T(w)}).range(p,p+1))}}return c.set(l,!0)}const z=L.fromClass(class{decorations;constructor(n){this.decorations=b(n)}update(n){(n.docChanged||n.selectionSet||n.viewportChanged||n.focusChanged)&&(this.decorations=b(n.view))}},{decorations:n=>n.decorations}),H=C.baseTheme({".cm-live-heading":{fontWeight:"600"},".cm-live-heading-1":{fontSize:"1.5em"},".cm-live-heading-2":{fontSize:"1.2em"},".cm-live-heading-3":{fontSize:"1.05em"},".cm-live-strong":{fontWeight:"600"},".cm-live-em":{fontStyle:"italic"},".cm-live-code":{fontFamily:"monospace",fontSize:"0.9em",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(128,128,128,0.12)"},".cm-live-wikilink":{borderRadius:"3px"},".cm-wikilink-active":{color:"var(--color-accent, #f04e4e)",cursor:"pointer",textDecoration:"none"},".cm-wikilink-active:hover":{textDecoration:"underline"},".cm-wikilink-inactive":{color:"var(--color-text-tertiary)"},".cm-live-link":{color:"var(--color-link, #f37373)",textDecoration:"none",cursor:"pointer"},".cm-live-link:hover":{textDecoration:"underline"},".cm-bullet-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"16px",marginLeft:"-16px"},".cm-ordered-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"20px",marginLeft:"-20px"},".cm-line.cm-list-line":{paddingLeft:"20px"},".cm-line.cm-list-line-l1":{paddingLeft:"40px"},".cm-line.cm-list-line-l2":{paddingLeft:"60px"},".cm-line.cm-list-line-l3":{paddingLeft:"80px"},".cm-line.cm-list-line-l4":{paddingLeft:"100px"},".cm-line.cm-list-line-l5":{paddingLeft:"120px"},".cm-hr-widget":{borderTop:"1px solid var(--color-border, #333)",margin:"8px 0"},".cm-image-widget":{display:"block",lineHeight:"0"},".cm-image-widget img":{maxWidth:"100%",borderRadius:"4px"},".cm-image-error":{color:"var(--color-text-tertiary)",fontSize:"13px",fontStyle:"italic"},".cm-image-raw":{color:"var(--color-text-tertiary)"},".cm-line.cm-quote-line":{borderLeft:"1px solid var(--color-border)",paddingLeft:"12px",color:"var(--color-text-secondary)"},".cm-line.cm-quote-line.cm-list-line":{paddingLeft:"32px"},".cm-line.cm-quote-line.cm-list-line-l1":{paddingLeft:"52px"},".cm-line.cm-quote-line.cm-list-line-l2":{paddingLeft:"72px"},".cm-line.cm-quote-line.cm-list-line-l3":{paddingLeft:"92px"},".cm-line.cm-quote-line.cm-list-line-l4":{paddingLeft:"112px"},".cm-line.cm-quote-line.cm-list-line-l5":{paddingLeft:"132px"},".cm-line.cm-code-line":{fontFamily:"var(--font-mono, ui-monospace, monospace)",fontSize:"0.9em",backgroundColor:"rgba(128,128,128,0.08)",paddingLeft:"12px",paddingRight:"12px"}});export{z as livePreviewPlugin,H as livePreviewTheme};
1
+ import{E as C,V as L,a as c,W as g}from"./Dmcboreb.js";import{r as S,f as y}from"./Bhdvqdoo.js";import{syntaxTree as E}from"./C7PgRgxX.js";class M extends g{toDOM(){const e=document.createElement("span");return e.className="cm-bullet-widget",e.textContent="•",e}}class W extends g{constructor(e){super(),this.num=e}eq(e){return this.num===e.num}toDOM(){const e=document.createElement("span");return e.className="cm-ordered-widget",e.textContent=this.num.replace(/[.)]$/,""),e}}class F extends g{toDOM(){const e=document.createElement("div");return e.className="cm-hr-widget",e}}class I extends g{toDOM(){const e=document.createElement("span");return e.textContent="—",e}}class T extends g{constructor(e){super(),this.char=e}eq(e){return this.char===e.char}toDOM(){const e=document.createElement("span");return e.textContent=this.char,e}}class D extends g{constructor(e,m){super(),this.alt=e,this.url=m}eq(e){return this.alt===e.alt&&this.url===e.url}toDOM(){const e=document.createElement("div");e.className="cm-image-widget";const m=document.createElement("img");return m.src=this.url,m.alt=this.alt,m.loading="lazy",m.onerror=()=>{e.textContent=`[Image not found: ${this.alt||this.url}]`,e.className="cm-image-error"},e.appendChild(m),e}ignoreEvent(e){return e.type==="mousedown"}}class O extends g{constructor(e,m,l){super(),this.text=e,this.className=m,this.entityId=l}eq(e){return this.text===e.text&&this.className===e.className&&this.entityId===e.entityId}toDOM(){const e=document.createElement("span");return e.className=this.className,e.textContent=this.text,e.dataset.entityId=this.entityId,e.addEventListener("click",m=>{m.preventDefault(),m.stopPropagation(),e.dispatchEvent(new CustomEvent("wikilink-click",{bubbles:!0,detail:this.entityId}))}),e}ignoreEvent(e){return e.type==="mousedown"}}function q(n){return n.doc.lineAt(n.selection.main.head).number}function h(n,e,m){const l=n.selection.main.head;return l>=e&&l<=m}function v(n,e,m,l,d=!0){const t=n.from>0?e.doc.sliceString(n.from-1,n.from):"",u=n.to<e.doc.length?e.doc.sliceString(n.to,n.to+1):"";if(t!=="["||u!=="]")return!1;const i=n.from-1,r=n.to+1,s=e.doc.sliceString(n.from+1,n.to-1),o=S(s),a=o?"cm-live-wikilink cm-wikilink-active":"cm-live-wikilink cm-wikilink-inactive",f=l?`${a} ${l}`:a,p=s.indexOf("|"),x=p===-1?s:s.slice(0,p).trim();if(!d||!h(e,i,r)){const k=o?o.title:y(s);m.push(c.replace({widget:new O(k,f,x)}).range(i,r))}else m.push(c.mark({class:f}).range(i,r));return!0}function b(n){const e=n.state,m=n.hasFocus?q(e):-1,l=[];E(e).iterate({enter(t){const u=e.doc.lineAt(t.from).number;if(t.name.startsWith("ATXHeading")){const r=`cm-live-heading cm-live-heading-${parseInt(t.name.replace("ATXHeading",""),10)||1}`;if(l.push(c.mark({class:r}).range(t.from,t.to)),u!==m){let s=t.node.firstChild;for(;s;){if(s.name==="HeaderMark"){const o=Math.min(s.to+1,t.to);l.push(c.replace({}).range(s.from,o))}else s.name==="Link"&&v(s,e,l,r,n.hasFocus);s=s.nextSibling}}return!1}if(t.name==="Blockquote"){const i=e.doc.lineAt(t.from).number,r=e.doc.lineAt(t.to).number;for(let s=i;s<=r;s++){const o=e.doc.line(s);l.push(c.line({class:"cm-quote-line"}).range(o.from))}}if(t.name==="QuoteMark"&&u!==m){const r=e.doc.sliceString(t.to,Math.min(t.to+1,e.doc.length))===" "?t.to+1:t.to;l.push(c.replace({}).range(t.from,r))}if(t.name==="FencedCode"){const i=e.doc.lineAt(t.from).number,r=e.doc.lineAt(t.to).number;for(let s=i;s<=r;s++){const o=e.doc.line(s);l.push(c.line({class:"cm-code-line"}).range(o.from))}}if(t.name==="CodeMark"||t.name==="CodeInfo"){const i=t.node.parent;i?.name==="FencedCode"&&(n.hasFocus&&h(e,i.from,i.to)||l.push(c.replace({}).range(t.from,t.to)))}if(t.name==="HorizontalRule"&&u!==m&&l.push(c.replace({widget:new F}).range(t.from,t.to)),t.name==="ListMark"&&u!==m){const i=e.doc.lineAt(t.from),r=e.doc.sliceString(i.from,t.from);let s;r.includes(" ")?s=(r.match(/\t/g)||[]).length:s=Math.floor(r.length/2),s=Math.max(0,Math.min(s,5)),t.from>i.from&&l.push(c.replace({}).range(i.from,t.from));const o=Math.min(t.to+1,i.to);if(t.node.parent?.parent?.name==="OrderedList"){const f=e.doc.sliceString(t.from,t.to);l.push(c.replace({widget:new W(f)}).range(t.from,o))}else l.push(c.replace({widget:new M}).range(t.from,o));l.push(c.line({class:`cm-list-line cm-list-line-l${s}`}).range(i.from))}if(t.name==="StrongEmphasis"){if(!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild,r=!1;for(;i;)i.name==="Link"&&(r=v(i,e,l,"cm-live-strong",n.hasFocus)),i=i.nextSibling;for(r||l.push(c.mark({class:"cm-live-strong"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}else l.push(c.mark({class:"cm-live-strong"}).range(t.from,t.to));return!1}if(t.name==="Emphasis"){if(!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild,r=!1;for(;i;)i.name==="Link"&&(r=v(i,e,l,"cm-live-em",n.hasFocus)),i=i.nextSibling;for(r||l.push(c.mark({class:"cm-live-em"}).range(t.from,t.to)),i=t.node.firstChild;i;)i.name==="EmphasisMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}else l.push(c.mark({class:"cm-live-em"}).range(t.from,t.to));return!1}if(t.name==="InlineCode"){if(l.push(c.mark({class:"cm-live-code"}).range(t.from,t.to)),!n.hasFocus||!h(e,t.from,t.to)){let i=t.node.firstChild;for(;i;)i.name==="CodeMark"&&l.push(c.replace({}).range(i.from,i.to)),i=i.nextSibling}return!1}if(t.name==="Link"){const i=e.doc.sliceString(t.from,t.to);if(v(t,e,l,void 0,n.hasFocus))return!1;if(i.includes("](")){let r=t.node.firstChild;const s=[];let o=null;for(;r;)r.name==="LinkMark"&&s.push({from:r.from,to:r.to}),r.name==="URL"&&(o={from:r.from,to:r.to}),r=r.nextSibling;const a=o?e.doc.sliceString(o.from,o.to):"";return l.push(c.mark({class:"cm-live-link",attributes:a?{"data-href":a}:{}}).range(t.from,t.to)),(!n.hasFocus||!h(e,t.from,t.to))&&s.length>=2&&o&&(l.push(c.replace({}).range(s[0].from,s[0].to)),l.push(c.replace({}).range(s[1].from,t.to))),!1}}if(t.name==="Image"){if(!n.hasFocus||!h(e,t.from,t.to)){const r=e.doc.sliceString(t.from,t.to).match(/!\[([^\]]*)\]/),s=r?r[1]:"";let o="",a=t.node.firstChild;for(;a;)a.name==="URL"&&(o=e.doc.sliceString(a.from,a.to)),a=a.nextSibling;o&&l.push(c.replace({widget:new D(s,o)}).range(t.from,t.to))}else l.push(c.mark({class:"cm-image-raw"}).range(t.from,t.to));return!1}}});const d=e.doc;for(let t=1;t<=d.lines;t++){if(t===m)continue;const u=d.line(t),i=u.text,r=i.trim(),s=/^-{3,}$/.test(r)||/^\*{3,}$/.test(r)||/^_{3,}$/.test(r);let o=0;for(;!s&&(o=i.indexOf("--",o))!==-1;){const a=u.from+o,f=a+2;h(e,a,f)||l.push(c.replace({widget:new I}).range(a,f)),o+=2}for(let a=0;a<i.length;a++){const f=i[a];if(f!=='"'&&f!=="'")continue;const p=u.from+a;if(h(e,p,p+1))continue;const x=a>0?i[a-1]:"",k=!x||/[\s([\-—]/.test(x);let w;f==='"'?w=k?"“":"”":w=k?"‘":"’",l.push(c.replace({widget:new T(w)}).range(p,p+1))}}return c.set(l,!0)}const z=L.fromClass(class{decorations;constructor(n){this.decorations=b(n)}update(n){(n.docChanged||n.selectionSet||n.viewportChanged||n.focusChanged)&&(this.decorations=b(n.view))}},{decorations:n=>n.decorations}),H=C.baseTheme({".cm-live-heading":{fontWeight:"600"},".cm-live-heading-1":{fontSize:"1.5em"},".cm-live-heading-2":{fontSize:"1.2em"},".cm-live-heading-3":{fontSize:"1.05em"},".cm-live-strong":{fontWeight:"600"},".cm-live-em":{fontStyle:"italic"},".cm-live-code":{fontFamily:"monospace",fontSize:"0.9em",padding:"1px 4px",borderRadius:"3px",backgroundColor:"rgba(128,128,128,0.12)"},".cm-live-wikilink":{borderRadius:"3px"},".cm-wikilink-active":{color:"var(--color-accent, #f04e4e)",cursor:"pointer",textDecoration:"none"},".cm-wikilink-active:hover":{textDecoration:"underline"},".cm-wikilink-inactive":{color:"var(--color-text-tertiary)"},".cm-live-link":{color:"var(--color-link, #f37373)",textDecoration:"none",cursor:"pointer"},".cm-live-link:hover":{textDecoration:"underline"},".cm-bullet-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"16px",marginLeft:"-16px"},".cm-ordered-widget":{color:"var(--color-text-tertiary)",display:"inline-block",width:"20px",marginLeft:"-20px"},".cm-line.cm-list-line":{paddingLeft:"20px"},".cm-line.cm-list-line-l1":{paddingLeft:"40px"},".cm-line.cm-list-line-l2":{paddingLeft:"60px"},".cm-line.cm-list-line-l3":{paddingLeft:"80px"},".cm-line.cm-list-line-l4":{paddingLeft:"100px"},".cm-line.cm-list-line-l5":{paddingLeft:"120px"},".cm-hr-widget":{borderTop:"1px solid var(--color-border, #333)",margin:"8px 0"},".cm-image-widget":{display:"block",lineHeight:"0"},".cm-image-widget img":{maxWidth:"100%",borderRadius:"4px"},".cm-image-error":{color:"var(--color-text-tertiary)",fontSize:"13px",fontStyle:"italic"},".cm-image-raw":{color:"var(--color-text-tertiary)"},".cm-line.cm-quote-line":{borderLeft:"1px solid var(--color-border)",paddingLeft:"12px",color:"var(--color-text-secondary)"},".cm-line.cm-quote-line.cm-list-line":{paddingLeft:"32px"},".cm-line.cm-quote-line.cm-list-line-l1":{paddingLeft:"52px"},".cm-line.cm-quote-line.cm-list-line-l2":{paddingLeft:"72px"},".cm-line.cm-quote-line.cm-list-line-l3":{paddingLeft:"92px"},".cm-line.cm-quote-line.cm-list-line-l4":{paddingLeft:"112px"},".cm-line.cm-quote-line.cm-list-line-l5":{paddingLeft:"132px"},".cm-line.cm-code-line":{fontFamily:"var(--font-mono, ui-monospace, monospace)",fontSize:"0.9em",backgroundColor:"rgba(128,128,128,0.08)",paddingLeft:"12px",paddingRight:"12px"}});export{z as livePreviewPlugin,H as livePreviewTheme};