nolo-cli 0.98.0-alpha.3 → 0.98.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +1 -1
  2. package/{_executeModel-MA3D2J4W.js → _executeModel-GJK4ZVU6.js} +74 -67
  3. package/action-PNPQLJHG.js +20 -0
  4. package/{addContentAction-O7R66HEX.js → addContentAction-RBOUD7SJ.js} +12 -11
  5. package/{addDialogAgentAction-74OA7KYP.js → addDialogAgentAction-IODCR6TB.js} +18 -19
  6. package/{agentDeleteCommand-FHUJH5X4.js → agentDeleteCommand-GHRF6CH5.js} +47 -42
  7. package/{agentEmailCommands-KNYBWNMA.js → agentEmailCommands-O5BTHYZK.js} +97 -87
  8. package/agentListCommands-3REEM63V.js +742 -0
  9. package/{agentMachineCommands-N62I3D5Q.js → agentMachineCommands-2GW3CV7Q.js} +48 -43
  10. package/{agentProviderCommands-GNPTL5XR.js → agentProviderCommands-IRNZXVGE.js} +1 -1
  11. package/{agentPullCommand-O5MPVJ5E.js → agentPullCommand-B4T2DJ5H.js} +1 -1
  12. package/agentRecordCommands-WYQODWZE.js +138 -0
  13. package/agentRunCommand-KAN65WPY.js +167 -0
  14. package/{agentRunControl-AVJR4JW4.js → agentRunControl-3HWA2LLQ.js} +2 -2
  15. package/{agentRuntimeLocal-VXZSDIGT.js → agentRuntimeLocal-IOFBNVIL.js} +48 -39
  16. package/{agentSlice-65ETD734.js → agentSlice-I45M32KO.js} +14 -13
  17. package/{appDeleteCommands-PDZ7HQYH.js → appDeleteCommands-SFS6IZEM.js} +46 -41
  18. package/{appDeployCommands-KLLW32YA.js → appDeployCommands-YZQESVRQ.js} +46 -41
  19. package/{appDeployStatusCommands-IPNJ445T.js → appDeployStatusCommands-FKUUDCKP.js} +46 -41
  20. package/{appGetCommands-QA57XGXS.js → appGetCommands-QUE7OQZC.js} +46 -41
  21. package/{appListCommands-YBTAUFZS.js → appListCommands-QEETFKMH.js} +46 -41
  22. package/{authCommand-F4EFRRX6.js → authCommand-NHDLY3IB.js} +118 -24
  23. package/{authCommands-RGOGCPP6.js → authCommands-UDBJVSZU.js} +7 -5
  24. package/{builtinSkillRegistry-FUAVTRVZ.js → builtinSkillRegistry-MAR5LPAC.js} +10 -8
  25. package/{chromeCommands-FZYAU75D.js → chromeCommands-K27J4OVZ.js} +124 -28
  26. package/{chromeOpsCommands-62P2Q2YB.js → chromeOpsCommands-IXRLN57H.js} +4 -3
  27. package/{chunk-6OZ36FXI.js → chunk-27ONFIEY.js} +22 -4
  28. package/{chunk-JEDZAO7L.js → chunk-2SYTUTLI.js} +257 -37
  29. package/{chunk-53HEEOTT.js → chunk-2WJ57RJA.js} +83 -16
  30. package/{chunk-OIVSQH2O.js → chunk-3BXNTXYI.js} +299 -5
  31. package/{chunk-ABQYVJBJ.js → chunk-46Y5D2BZ.js} +5 -5
  32. package/{chunk-EYAQT56M.js → chunk-4DPP773Q.js} +2 -2
  33. package/{chunk-H62HCIUP.js → chunk-4FFUDT6D.js} +24 -21
  34. package/chunk-4LCOCOR5.js +50 -0
  35. package/{chunk-2GRGFCF6.js → chunk-4VJAC32I.js} +2 -1
  36. package/{chunk-IIVGDG4I.js → chunk-4YSOUKUR.js} +13 -7
  37. package/{chunk-MC4XLIJ7.js → chunk-523DITKR.js} +1 -1
  38. package/{chunk-FSX24MR3.js → chunk-5AUJB66Z.js} +550 -515
  39. package/{chunk-E4MARS3Q.js → chunk-5GVBDNTO.js} +1 -1
  40. package/chunk-5J3PYNUP.js +255 -0
  41. package/chunk-5MMAK75Q.js +15 -0
  42. package/{chunk-JPGCXHNM.js → chunk-5OA5HMTL.js} +1 -1
  43. package/{chunk-42V6BK2E.js → chunk-62IL3KQV.js} +4 -34
  44. package/{chunk-3BMYXEUW.js → chunk-6O4IK4V2.js} +1 -1
  45. package/{chunk-D2QT5FW4.js → chunk-6XDD7N7P.js} +47 -67
  46. package/{chunk-GQBOR3G6.js → chunk-7KVZ5LDQ.js} +2 -2
  47. package/{chunk-DNCEALKX.js → chunk-7MMSLEPA.js} +22 -29
  48. package/chunk-A4SQRTZ6.js +15 -0
  49. package/{chunk-7S4YWN7P.js → chunk-ADBZWMFB.js} +4 -4
  50. package/chunk-AGIM7IMJ.js +147 -0
  51. package/{chunk-5UTFL4QJ.js → chunk-AOTBKDRK.js} +7 -0
  52. package/{chunk-Q554LLSI.js → chunk-AUDNYVRC.js} +1 -1
  53. package/{chunk-GZBATRJA.js → chunk-B2DEZY6J.js} +20 -11
  54. package/chunk-BMQ2MJUK.js +153 -0
  55. package/{chunk-6YTOJY35.js → chunk-BZ7NPA6G.js} +35 -2
  56. package/chunk-C4DVDM72.js +13536 -0
  57. package/chunk-CHOZJMJS.js +78 -0
  58. package/{chunk-ACTMNVHM.js → chunk-CYSYR67N.js} +1 -1
  59. package/{chunk-GBRG75BQ.js → chunk-D2MDMY2M.js} +1 -0
  60. package/chunk-DZ7R5V3Y.js +164 -0
  61. package/{chunk-3VNWWVKB.js → chunk-E3YWHWCR.js} +50 -18
  62. package/{chunk-V4MJDUSR.js → chunk-E73ON47R.js} +2 -2
  63. package/{chunk-UY2NBS4V.js → chunk-EIFYNGU4.js} +24 -5
  64. package/{chunk-KQ4ONNQD.js → chunk-EKPKW6RM.js} +155 -8
  65. package/{chunk-TRV2MIDW.js → chunk-EXAJ6DCR.js} +1 -0
  66. package/{chunk-HJUYAD4A.js → chunk-FJ5BGMNM.js} +5 -5
  67. package/{chunk-2F7RJC6L.js → chunk-FOXQ7BAB.js} +1 -1
  68. package/{chunk-TDRTS7QW.js → chunk-FY7DCYW7.js} +88 -17
  69. package/{chunk-J4MOO56S.js → chunk-GARACBQB.js} +10 -2
  70. package/{chunk-6VFARHZW.js → chunk-GDFA73QZ.js} +934 -1091
  71. package/chunk-GMZLP5DV.js +82 -0
  72. package/{chunk-FDTR4QJ6.js → chunk-H6A6X4EK.js} +32 -1
  73. package/{chunk-DVINR3PL.js → chunk-HDLLCBRF.js} +1 -1
  74. package/{chunk-QOKAKDPE.js → chunk-HIM3FCLF.js} +0 -1
  75. package/{chunk-ONXOABJR.js → chunk-HNGRBWYF.js} +3 -0
  76. package/{chunk-VLTIYV3X.js → chunk-HP57OUJO.js} +4 -4
  77. package/{chunk-AD2L6YCC.js → chunk-I76SDF7A.js} +10 -10
  78. package/{chunk-PELKTR62.js → chunk-I7BCBNWZ.js} +24 -77
  79. package/{chunk-GPCZ7UXG.js → chunk-K6U4NKFJ.js} +1 -1
  80. package/{chunk-4OEFYTWL.js → chunk-LDCAFLXD.js} +64 -48
  81. package/{chunk-SNPMM7H3.js → chunk-LNVJHIGA.js} +18 -20
  82. package/{chunk-LS2ZANRJ.js → chunk-LOCNXNOU.js} +1 -1
  83. package/{chunk-5H7KJX7J.js → chunk-LQ4PDQCI.js} +5 -5
  84. package/{chunk-GABFWSOQ.js → chunk-M33GWZIZ.js} +67 -45
  85. package/{chunk-PUOC4YRO.js → chunk-M7VLQGQP.js} +11 -0
  86. package/chunk-NHDMQZJM.js +7881 -0
  87. package/{chunk-BFU6C242.js → chunk-NMFV26UG.js} +1 -1
  88. package/{chunk-L5UXH3B2.js → chunk-NNCYNBYV.js} +22 -6
  89. package/{chunk-FZGV4FGK.js → chunk-NUHHBEJC.js} +378 -187
  90. package/chunk-NWENLDMM.js +42 -0
  91. package/{chunk-76WEAXJB.js → chunk-NZWAO6LH.js} +20 -17
  92. package/chunk-OCZKATRC.js +129 -0
  93. package/{chunk-N2WELJE7.js → chunk-OU36O6OR.js} +23 -28
  94. package/chunk-OW4APERY.js +870 -0
  95. package/{chunk-KQHGZWSV.js → chunk-OXME3PEE.js} +1 -1
  96. package/{chunk-TVYSVSA2.js → chunk-P5L7VVMT.js} +11 -9
  97. package/{chunk-TOP2VXOR.js → chunk-PCF3QU5Q.js} +5 -5
  98. package/{chunk-WV42OMV7.js → chunk-PTDYOADJ.js} +8 -8
  99. package/{chunk-6D6VBVEW.js → chunk-SNMQMOD2.js} +80 -14
  100. package/{chunk-BYMV6QZG.js → chunk-TNIX77YM.js} +4 -0
  101. package/{chunk-Z77CRGTW.js → chunk-TVCAR26G.js} +1 -1
  102. package/chunk-TY3TIUJK.js +89 -0
  103. package/{chunk-I3TQJXQ7.js → chunk-U3C3IA32.js} +9 -2
  104. package/{chunk-RG6JBBX5.js → chunk-U7XXEI5R.js} +166 -13
  105. package/{chunk-UZGQNTVW.js → chunk-UA324D4O.js} +8 -6
  106. package/chunk-UJXNKP5V.js +760 -0
  107. package/{chunk-UKZDAFYT.js → chunk-UM4PH574.js} +6 -10
  108. package/{chunk-BLJWCTRL.js → chunk-UVKDJUTL.js} +3 -3
  109. package/{chunk-ZCYXJSTU.js → chunk-V5OWQOJZ.js} +19 -88
  110. package/{chunk-YQTQQX2H.js → chunk-V7Y6KRAH.js} +1 -1
  111. package/{chunk-3DII57IT.js → chunk-VCAQFMVN.js} +1 -1
  112. package/{chunk-JRQFUXY7.js → chunk-VEYL5MO5.js} +99 -22
  113. package/chunk-VIWDGTDA.js +8 -0
  114. package/chunk-VJVNU77E.js +83 -0
  115. package/{chunk-UKWGR5SS.js → chunk-VY6VFGKR.js} +194 -1144
  116. package/{chunk-2FA3ITSX.js → chunk-W3RFFFFF.js} +873 -227
  117. package/{chunk-BP4XNZRM.js → chunk-W72ISAKC.js} +4 -4
  118. package/{chunk-DHDMC6FO.js → chunk-WCGC6S77.js} +14 -9
  119. package/{chunk-QDSINZM3.js → chunk-WJ3B6FX6.js} +1 -14
  120. package/{chunk-V4I3A7DR.js → chunk-WXHAOL7Y.js} +19 -17
  121. package/{chunk-FUUHG5LT.js → chunk-X2B2C4XD.js} +1 -1
  122. package/{chunk-HVURBGF3.js → chunk-XFUBXRVI.js} +6 -6
  123. package/{chunk-O6OSWFZQ.js → chunk-XUWRURDF.js} +6 -0
  124. package/{chunk-Q67DOFOO.js → chunk-Y3PMXGLH.js} +2 -0
  125. package/{chunk-QIAVMDHY.js → chunk-YPOPJAKN.js} +4 -4
  126. package/{chunk-SH43IESU.js → chunk-YUNJN43V.js} +44 -9
  127. package/chunk-YV25TM3R.js +780 -0
  128. package/chunk-ZRAU6T47.js +56 -0
  129. package/commandRegistry-RZNZ37BN.js +833 -0
  130. package/{contentThunks-Y6FA2TCW.js → contentThunks-DF7ZNCAG.js} +36 -34
  131. package/{cooldownCommands-REAWYVTY.js → cooldownCommands-ZLEPIB4A.js} +2 -2
  132. package/{createAgentAutomationAction-JXAFQO5V.js → createAgentAutomationAction-KPMOZ53Y.js} +38 -36
  133. package/createDialogAction-I2UDVAXN.js +69 -0
  134. package/{createPageAction-GUQDPKO5.js → createPageAction-IF5JXNKV.js} +45 -42
  135. package/{chunk-ZMD2CQFC.js → cursorProvider-YGGNMVWX.js} +2496 -9897
  136. package/{dbSlice-XVWBAGYN.js → dbSlice-Q25STFGJ.js} +11 -10
  137. package/{deleteFile-YG6QMJLU.js → deleteFile-AJ2EZMHT.js} +7 -6
  138. package/{dialogCommands-JJDASFIL.js → dialogCommands-LWHIIUQD.js} +49 -45
  139. package/{dialogSlice-J2YJNE6E.js → dialogSlice-74DFPFRV.js} +40 -33
  140. package/{dist-VODFSGNG.js → dist-NJC2W7I4.js} +61 -54
  141. package/{docCreateCommands-OB3X3EQM.js → docCreateCommands-LVXQ6TNZ.js} +48 -43
  142. package/{docDeleteCommands-WMHRGF22.js → docDeleteCommands-7TVIGCLP.js} +49 -44
  143. package/{docReadCommands-NWGGLIAZ.js → docReadCommands-KYAXFLQ5.js} +47 -42
  144. package/{docStore-6KKYKAGQ.js → docStore-2JDRAYXJ.js} +16 -12
  145. package/{docUpdateCommands-3DDSOLPS.js → docUpdateCommands-TVC5KWPK.js} +48 -43
  146. package/{fetchMessages-EIU7UFFK.js → fetchMessages-I5ICDDHM.js} +5 -5
  147. package/{getPricing-LUSEABA6.js → getPricing-NMMFT3YI.js} +4 -4
  148. package/{handleSendMessageAction-A4XLEEPU.js → handleSendMessageAction-54GY3XOH.js} +110 -86
  149. package/index.js +87 -884
  150. package/{localDialogRead-BTFJ4V2I.js → localDialogRead-ZHZ3KXDM.js} +2 -2
  151. package/{localRuntimeAuthority-6IR6BBXE.js → localRuntimeAuthority-TU6OBC76.js} +9 -6
  152. package/{localRuntimeDb-SYQGUF4U.js → localRuntimeDb-VKWVOPPI.js} +1 -1
  153. package/{machineCommands-Y64KAIRW.js → machineCommands-54RNLVJE.js} +91 -81
  154. package/machineWsRunDispatch-WE3VTD57.js +154 -0
  155. package/{memberThunks-QGFLFVCI.js → memberThunks-R75S3RWP.js} +20 -18
  156. package/{models-T3SG6MJ5.js → models-ZPU5EDF4.js} +2 -2
  157. package/oauthTokenStore-ITEB663N.js +23 -0
  158. package/package.json +1 -1
  159. package/pdf-U6KSUEZZ.js +26435 -0
  160. package/processSpawn-SOAV3FEV.js +11 -0
  161. package/profileConfig-ZGOFORWV.js +43 -0
  162. package/{providerPresetApply-FG6NZ57W.js → providerPresetApply-TEBH7FDX.js} +7 -7
  163. package/{providerRegistry-757OWH3O.js → providerRegistry-CBJLNCET.js} +11 -7
  164. package/{read-COE3ZYR6.js → read-SRQMNO26.js} +7 -6
  165. package/{readDocTool-5USN4A6V.js → readDocTool-RC3JUNJ2.js} +5 -3
  166. package/{readlineWorkspace-45XNHFXU.js → readlineWorkspace-UK5M5CJI.js} +2704 -2060
  167. package/{removeDialogAgentAction-IX3MN2ZO.js → removeDialogAgentAction-46XQV5Q7.js} +21 -25
  168. package/{runAgentClientLoop-ADZRHNG6.js → runAgentClientLoop-MTI5OU2W.js} +75 -69
  169. package/{runtimeDoctorCommands-X6WDBEQX.js → runtimeDoctorCommands-PIVSBZRZ.js} +4 -4
  170. package/runtimeModeArgs-2Y7BALTO.js +31 -0
  171. package/{setDialogExtraReferencesAction-X4HCPNZL.js → setDialogExtraReferencesAction-J4V5ADQF.js} +15 -13
  172. package/{setPrimaryDialogAgentAction-4GMIQLOD.js → setPrimaryDialogAgentAction-UHHV2QZW.js} +22 -26
  173. package/{chunk-AFUORTY4.js → settingThunks-PPZZZOWN.js} +226 -940
  174. package/{skillDiscovery-CYUCJMAG.js → skillDiscovery-ZBU76COE.js} +3 -3
  175. package/{slateUtils-RIZES3PV.js → slateUtils-NGV2NMKM.js} +1 -1
  176. package/{spaceCommands-E7MQ4VU2.js → spaceCommands-446WWA73.js} +51 -46
  177. package/{streamAgentChatTurn-TUP7YO3H.js → streamAgentChatTurn-IANOWAKR.js} +199 -104
  178. package/{switchDialogAgentAction-N52LRPA3.js → switchDialogAgentAction-A2TMVGAE.js} +18 -19
  179. package/{tableCommands-O6NWHFKV.js → tableCommands-6U4BMLRR.js} +10 -10
  180. package/{toolApiClient-QVJ6HDNN.js → toolApiClient-EJT6TMFG.js} +3 -3
  181. package/tools-WZZYTUNF.js +116 -0
  182. package/{tuiSummaryLlmCaller-WFRWERGK.js → tuiSummaryLlmCaller-Q65IBDGO.js} +24 -21
  183. package/{updateCommands-2M74UL7P.js → updateCommands-4EHDLF5J.js} +3 -3
  184. package/{updateDialogTitleAction-KSWXWWFT.js → updateDialogTitleAction-Z2JTYLXD.js} +82 -44
  185. package/action-YVYQEAAV.js +0 -31
  186. package/agentListCommands-GATRXEMT.js +0 -406
  187. package/agentRecordCommands-GOC5K27T.js +0 -128
  188. package/agentRunCommand-JP2U3MQF.js +0 -155
  189. package/browser-image-compression-MFDTD7K6.js +0 -1763
  190. package/chatQueueReduxAdapter-5QOW43T4.js +0 -186
  191. package/chunk-DHDVZFNC.js +0 -18885
  192. package/chunk-M76ECQRD.js +0 -13658
  193. package/chunk-MEYIRKDN.js +0 -8967
  194. package/chunk-Q5FJJ6XI.js +0 -103
  195. package/chunk-S7Z2HMCN.js +0 -25
  196. package/chunk-Y5GCAMGP.js +0 -9
  197. package/chunk-YPREESF4.js +0 -225
  198. package/createDialogAction-O2QABXZF.js +0 -65
  199. package/machineWsRunDispatch-M366L2LJ.js +0 -144
  200. package/settingSlice-ZQZVUPKK.js +0 -204
  201. package/syncMapping-N6RGXGBW.js +0 -437
  202. package/tools-2VDNDFET.js +0 -110
  203. package/{chunk-VMFTFOWF.js → chunk-3AH7LNUB.js} +7 -7
  204. package/{chunk-X7HHHIOZ.js → chunk-Y6ROFCZO.js} +0 -0
  205. package/{db-WK5MDZVN.js → db-VQSAOWAO.js} +1 -1
@@ -1,204 +0,0 @@
1
- import {
2
- LOCAL_FIRST_APPEARANCE_KEYS,
3
- LOCAL_ONLY_SETTINGS_KEYS,
4
- SYSTEM_DEFAULT_AGENT_ID,
5
- addHostToCurrentServer,
6
- buildSettingsPersistencePlan,
7
- changeDarkMode,
8
- changeDensity,
9
- changeFontPreset,
10
- changeTheme,
11
- getCachedDefaultAgentRegisterRecord,
12
- getSettings,
13
- hydrateStoredSettings,
14
- isLocalFirstAppearanceChange,
15
- normalizeSettingChanges,
16
- persistDefaultAgentRegister,
17
- sanitizeStoredSettingsRecord,
18
- selectAiRecentContentLimit,
19
- selectAutoApproveSelfUpdateFields,
20
- selectCopyDiagnosticsEnabled,
21
- selectCreateMenuOpenCount,
22
- selectCurrentServer,
23
- selectDefaultAgentId,
24
- selectDefaultAgentPreference,
25
- selectDeleteShortcut,
26
- selectDensity,
27
- selectDesktopChromeConnectorEnabled,
28
- selectDeveloperModeEnabled,
29
- selectDiagnosticModeEnabled,
30
- selectEditorAutoSave,
31
- selectEditorAutoSaveInterval,
32
- selectEditorCodeTheme,
33
- selectEditorConfig,
34
- selectEditorDarkCodeTheme,
35
- selectEditorDefaultMode,
36
- selectEditorFontSize,
37
- selectEditorLightCodeTheme,
38
- selectEditorShortcuts,
39
- selectEditorWordCountEnabled,
40
- selectEnableReadCurrentSpace,
41
- selectFontPreset,
42
- selectGlobalPrompt,
43
- selectHeaderHeight,
44
- selectIsDark,
45
- selectKnowledgeCaptureLevel,
46
- selectMaxCost,
47
- selectMaxExecutionTime,
48
- selectOcrModel,
49
- selectPreferredAnimationSet,
50
- selectRemoteServer,
51
- selectRemoteServers,
52
- selectRemoteSyncServers,
53
- selectSettings,
54
- selectShowScrollToBottomButton,
55
- selectShowScrollToTopButton,
56
- selectShowThinking,
57
- selectSidebarWidth,
58
- selectSpaceContextLevel,
59
- selectSyncServers,
60
- selectSystemBuiltinSkills,
61
- selectTheme,
62
- selectThemeFollowsSystem,
63
- selectThemeMode,
64
- selectThemeName,
65
- selectUserTonePreset,
66
- setAiRecentContentLimit,
67
- setDefaultAgentId,
68
- setEditorAutoSaveInterval,
69
- setEditorCodeTheme,
70
- setEditorDarkCodeTheme,
71
- setEditorDefaultMode,
72
- setEditorFontSize,
73
- setEditorLightCodeTheme,
74
- setGlobalPrompt,
75
- setKnowledgeCaptureLevel,
76
- setMaxExecutionTime,
77
- setSettings,
78
- setSidebarWidth,
79
- setSpaceContextLevel,
80
- setThemeFollowsSystem,
81
- setThemeMode,
82
- setUserTonePreset,
83
- settingSlice_default,
84
- stripRegisterBackedFieldsFromSettingsWrite,
85
- toggleEditorAutoSave,
86
- toggleEditorShortcut,
87
- toggleEditorWordCount,
88
- toggleEnableReadCurrentSpace,
89
- toggleShowThinking
90
- } from "./chunk-AFUORTY4.js";
91
- import "./chunk-Y5GCAMGP.js";
92
- import "./chunk-QDSINZM3.js";
93
- import "./chunk-KX6YBIHG.js";
94
- import "./chunk-H62HCIUP.js";
95
- import "./chunk-VMFTFOWF.js";
96
- import "./chunk-WWC7I6TA.js";
97
- import "./chunk-ABQYVJBJ.js";
98
- import "./chunk-QSJ3HFEF.js";
99
- import "./chunk-WV42OMV7.js";
100
- import "./chunk-BNGW5ASC.js";
101
- import "./chunk-M2EJHDJP.js";
102
- import "./chunk-UKWGR5SS.js";
103
- import "./chunk-QOKAKDPE.js";
104
- import "./chunk-OW765XBU.js";
105
- import "./chunk-SEJ5OS6F.js";
106
- import "./chunk-GBRG75BQ.js";
107
- import "./chunk-KUG52IAP.js";
108
- import "./chunk-3EUW3WEO.js";
109
- import "./chunk-U6VC4MU4.js";
110
- import "./chunk-LCBAMY2M.js";
111
- import "./chunk-4SN6J65J.js";
112
- import "./chunk-CF7PE763.js";
113
- import "./chunk-G3SUCT4W.js";
114
- import "./chunk-4VNS5WPM.js";
115
- export {
116
- LOCAL_FIRST_APPEARANCE_KEYS,
117
- LOCAL_ONLY_SETTINGS_KEYS,
118
- SYSTEM_DEFAULT_AGENT_ID,
119
- addHostToCurrentServer,
120
- buildSettingsPersistencePlan,
121
- changeDarkMode,
122
- changeDensity,
123
- changeFontPreset,
124
- changeTheme,
125
- settingSlice_default as default,
126
- getCachedDefaultAgentRegisterRecord,
127
- getSettings,
128
- hydrateStoredSettings,
129
- isLocalFirstAppearanceChange,
130
- normalizeSettingChanges,
131
- persistDefaultAgentRegister,
132
- sanitizeStoredSettingsRecord,
133
- selectAiRecentContentLimit,
134
- selectAutoApproveSelfUpdateFields,
135
- selectCopyDiagnosticsEnabled,
136
- selectCreateMenuOpenCount,
137
- selectCurrentServer,
138
- selectDefaultAgentId,
139
- selectDefaultAgentPreference,
140
- selectDeleteShortcut,
141
- selectDensity,
142
- selectDesktopChromeConnectorEnabled,
143
- selectDeveloperModeEnabled,
144
- selectDiagnosticModeEnabled,
145
- selectEditorAutoSave,
146
- selectEditorAutoSaveInterval,
147
- selectEditorCodeTheme,
148
- selectEditorConfig,
149
- selectEditorDarkCodeTheme,
150
- selectEditorDefaultMode,
151
- selectEditorFontSize,
152
- selectEditorLightCodeTheme,
153
- selectEditorShortcuts,
154
- selectEditorWordCountEnabled,
155
- selectEnableReadCurrentSpace,
156
- selectFontPreset,
157
- selectGlobalPrompt,
158
- selectHeaderHeight,
159
- selectIsDark,
160
- selectKnowledgeCaptureLevel,
161
- selectMaxCost,
162
- selectMaxExecutionTime,
163
- selectOcrModel,
164
- selectPreferredAnimationSet,
165
- selectRemoteServer,
166
- selectRemoteServers,
167
- selectRemoteSyncServers,
168
- selectSettings,
169
- selectShowScrollToBottomButton,
170
- selectShowScrollToTopButton,
171
- selectShowThinking,
172
- selectSidebarWidth,
173
- selectSpaceContextLevel,
174
- selectSyncServers,
175
- selectSystemBuiltinSkills,
176
- selectTheme,
177
- selectThemeFollowsSystem,
178
- selectThemeMode,
179
- selectThemeName,
180
- selectUserTonePreset,
181
- setAiRecentContentLimit,
182
- setDefaultAgentId,
183
- setEditorAutoSaveInterval,
184
- setEditorCodeTheme,
185
- setEditorDarkCodeTheme,
186
- setEditorDefaultMode,
187
- setEditorFontSize,
188
- setEditorLightCodeTheme,
189
- setGlobalPrompt,
190
- setKnowledgeCaptureLevel,
191
- setMaxExecutionTime,
192
- setSettings,
193
- setSidebarWidth,
194
- setSpaceContextLevel,
195
- setThemeFollowsSystem,
196
- setThemeMode,
197
- setUserTonePreset,
198
- stripRegisterBackedFieldsFromSettingsWrite,
199
- toggleEditorAutoSave,
200
- toggleEditorShortcut,
201
- toggleEditorWordCount,
202
- toggleEnableReadCurrentSpace,
203
- toggleShowThinking
204
- };
@@ -1,437 +0,0 @@
1
- import {
2
- asOptionalFiniteNumber
3
- } from "./chunk-WWC7I6TA.js";
4
- import {
5
- isLevelNotFoundError
6
- } from "./chunk-OW765XBU.js";
7
- import {
8
- asTrimmedString
9
- } from "./chunk-3EUW3WEO.js";
10
- import {
11
- asOptionalPositiveFiniteNumber
12
- } from "./chunk-U6VC4MU4.js";
13
- import "./chunk-4VNS5WPM.js";
14
-
15
- // packages/database/sync/syncMappingKeys.ts
16
- var SYNC_MAPPING_KEY_PREFIX = "syncmap-local-";
17
- var SYNC_MAPPING_KEY_SEPARATOR = "::";
18
- var SYNC_MAPPING_RECORD_TYPE = "sync_mapping";
19
- var normalizeSegment = (value) => asTrimmedString(value);
20
- function buildSyncMappingRecordKey(accountUserId, localDbKey) {
21
- const account = normalizeSegment(accountUserId);
22
- const local = normalizeSegment(localDbKey);
23
- if (!account) {
24
- throw new Error("syncMapping record key requires accountUserId");
25
- }
26
- if (!local) {
27
- throw new Error("syncMapping record key requires localDbKey");
28
- }
29
- if (account.includes(SYNC_MAPPING_KEY_SEPARATOR)) {
30
- throw new Error(
31
- `syncMapping accountUserId must not contain "${SYNC_MAPPING_KEY_SEPARATOR}"`
32
- );
33
- }
34
- return `${SYNC_MAPPING_KEY_PREFIX}${account}${SYNC_MAPPING_KEY_SEPARATOR}${local}`;
35
- }
36
- function isSyncMappingRecordKey(dbKey) {
37
- const key = normalizeSegment(dbKey);
38
- return key.startsWith(SYNC_MAPPING_KEY_PREFIX);
39
- }
40
- function syncMappingRecordKeyRange() {
41
- const start = SYNC_MAPPING_KEY_PREFIX;
42
- return {
43
- gte: start,
44
- lte: `${start}\uFFFF`
45
- };
46
- }
47
-
48
- // packages/database/sync/syncMappingDurable.ts
49
- var clean = (value) => asTrimmedString(value);
50
- function toDurableSyncMappingRecord(input) {
51
- const localDbKey = clean(input.localDbKey);
52
- const remoteDbKey = clean(input.remoteDbKey);
53
- const accountUserId = clean(input.accountUserId);
54
- const contentType = clean(input.contentType) || "unknown";
55
- const updatedAt = asOptionalFiniteNumber(input.updatedAt) ?? Date.now();
56
- if (!localDbKey || !remoteDbKey || !accountUserId) {
57
- throw new Error("durable syncMapping requires local/remote/account keys");
58
- }
59
- const dbKey = buildSyncMappingRecordKey(accountUserId, localDbKey);
60
- return {
61
- type: SYNC_MAPPING_RECORD_TYPE,
62
- userId: "local",
63
- dbKey,
64
- localDbKey,
65
- remoteDbKey,
66
- accountUserId,
67
- contentType,
68
- updatedAt
69
- };
70
- }
71
- function parseDurableSyncMappingRecord(value) {
72
- if (!value || typeof value !== "object") return null;
73
- const row = value;
74
- if (row.type !== SYNC_MAPPING_RECORD_TYPE) return null;
75
- if (row.userId !== "local" && row.userId !== void 0) {
76
- return null;
77
- }
78
- const localDbKey = clean(row.localDbKey);
79
- const remoteDbKey = clean(row.remoteDbKey);
80
- const accountUserId = clean(row.accountUserId);
81
- const contentType = clean(row.contentType) || "unknown";
82
- const updatedAt = asOptionalFiniteNumber(row.updatedAt) ?? Date.now();
83
- if (!localDbKey || !remoteDbKey || !accountUserId) return null;
84
- if (localDbKey === remoteDbKey) return null;
85
- if (accountUserId === "local") return null;
86
- return {
87
- localDbKey,
88
- remoteDbKey,
89
- accountUserId,
90
- contentType,
91
- updatedAt
92
- };
93
- }
94
- async function persistSyncMappingToDb(db, input) {
95
- const record = toDurableSyncMappingRecord(input);
96
- await db.put(record.dbKey, record);
97
- return record;
98
- }
99
- async function removeSyncMappingFromDb(db, accountUserId, localDbKey) {
100
- const dbKey = buildSyncMappingRecordKey(accountUserId, localDbKey);
101
- try {
102
- if (typeof db.del === "function") {
103
- await db.del(dbKey);
104
- return true;
105
- }
106
- await db.put(dbKey, null);
107
- return true;
108
- } catch (err) {
109
- if (isLevelNotFoundError(err)) return false;
110
- throw err;
111
- }
112
- }
113
- async function loadSyncMappingsFromDb(db) {
114
- if (typeof db.iterator !== "function") {
115
- return [];
116
- }
117
- const range = syncMappingRecordKeyRange();
118
- let iterator = db.iterator(range);
119
- if (iterator && typeof iterator.then === "function") {
120
- iterator = await iterator;
121
- }
122
- if (!iterator) return [];
123
- const out = [];
124
- for await (const entry of iterator) {
125
- const pair = entry;
126
- const key = Array.isArray(pair) ? pair[0] : "";
127
- const value = Array.isArray(pair) ? pair[1] : null;
128
- if (!isSyncMappingRecordKey(key)) continue;
129
- if (value == null) continue;
130
- const mapping = parseDurableSyncMappingRecord(value);
131
- if (mapping) out.push(mapping);
132
- }
133
- return out;
134
- }
135
-
136
- // packages/database/sync/syncMapping.ts
137
- var normalizeKey = (value) => asTrimmedString(value);
138
- var normalizeContentType = (value) => {
139
- const trimmed = normalizeKey(value);
140
- return trimmed.length > 0 ? trimmed : "unknown";
141
- };
142
- var toUpdatedAt = (value, fallback) => {
143
- const asNumber = asOptionalPositiveFiniteNumber(value);
144
- if (asNumber !== void 0) return asNumber;
145
- if (typeof value === "string" && value.trim()) {
146
- return asOptionalPositiveFiniteNumber(Date.parse(value)) ?? fallback;
147
- }
148
- return fallback;
149
- };
150
- var pairKey = (accountUserId, localDbKey) => `${accountUserId}\0${localDbKey}`;
151
- function normalizeSyncMapping(input, now = Date.now()) {
152
- const localDbKey = normalizeKey(input.localDbKey);
153
- const remoteDbKey = normalizeKey(input.remoteDbKey);
154
- const accountUserId = normalizeKey(input.accountUserId);
155
- const contentType = normalizeContentType(input.contentType);
156
- if (!localDbKey) {
157
- throw new Error("syncMapping.localDbKey is required");
158
- }
159
- if (!remoteDbKey) {
160
- throw new Error("syncMapping.remoteDbKey is required");
161
- }
162
- if (!accountUserId) {
163
- throw new Error("syncMapping.accountUserId is required");
164
- }
165
- if (localDbKey === remoteDbKey) {
166
- throw new Error("syncMapping.localDbKey and remoteDbKey must differ");
167
- }
168
- if (accountUserId === "local") {
169
- throw new Error(
170
- "syncMapping.accountUserId must be a non-local account user id"
171
- );
172
- }
173
- return {
174
- localDbKey,
175
- remoteDbKey,
176
- accountUserId,
177
- contentType,
178
- updatedAt: toUpdatedAt(input.updatedAt, now)
179
- };
180
- }
181
- function createSyncMappingStore(options) {
182
- const now = options?.now ?? Date.now;
183
- const byPair = /* @__PURE__ */ new Map();
184
- const remoteToPair = /* @__PURE__ */ new Map();
185
- const forgetRemoteIndex = (mapping) => {
186
- if (!mapping) return;
187
- const current = remoteToPair.get(mapping.remoteDbKey);
188
- if (current === pairKey(mapping.accountUserId, mapping.localDbKey)) {
189
- remoteToPair.delete(mapping.remoteDbKey);
190
- }
191
- };
192
- return {
193
- put(input) {
194
- const mapping = normalizeSyncMapping(input, now());
195
- const key = pairKey(mapping.accountUserId, mapping.localDbKey);
196
- const previousLocal = byPair.get(key);
197
- if (previousLocal) {
198
- forgetRemoteIndex(previousLocal);
199
- }
200
- const previousPairForRemote = remoteToPair.get(mapping.remoteDbKey);
201
- if (previousPairForRemote && previousPairForRemote !== key) {
202
- const displaced = byPair.get(previousPairForRemote);
203
- if (displaced) {
204
- byPair.delete(previousPairForRemote);
205
- }
206
- }
207
- byPair.set(key, mapping);
208
- remoteToPair.set(mapping.remoteDbKey, key);
209
- return { ...mapping };
210
- },
211
- get(localDbKey, accountUserId) {
212
- const local = normalizeKey(localDbKey);
213
- if (!local) return null;
214
- const account = normalizeKey(accountUserId);
215
- if (account) {
216
- const mapping = byPair.get(pairKey(account, local));
217
- return mapping ? { ...mapping } : null;
218
- }
219
- let best = null;
220
- for (const mapping of byPair.values()) {
221
- if (mapping.localDbKey !== local) continue;
222
- if (!best || mapping.updatedAt > best.updatedAt) {
223
- best = mapping;
224
- }
225
- }
226
- return best ? { ...best } : null;
227
- },
228
- getByRemoteDbKey(remoteDbKey, accountUserId) {
229
- const key = normalizeKey(remoteDbKey);
230
- if (!key) return null;
231
- const pair = remoteToPair.get(key);
232
- if (!pair) return null;
233
- const mapping = byPair.get(pair);
234
- if (!mapping) return null;
235
- const account = normalizeKey(accountUserId);
236
- if (account && mapping.accountUserId !== account) return null;
237
- return { ...mapping };
238
- },
239
- list(filter) {
240
- const accountUserId = normalizeKey(filter?.accountUserId);
241
- const contentType = normalizeKey(filter?.contentType);
242
- const rows = Array.from(byPair.values()).filter((mapping) => {
243
- if (accountUserId && mapping.accountUserId !== accountUserId) {
244
- return false;
245
- }
246
- if (contentType && mapping.contentType !== contentType) return false;
247
- return true;
248
- });
249
- return rows.map((mapping) => ({ ...mapping })).sort(
250
- (left, right) => right.updatedAt - left.updatedAt || left.localDbKey.localeCompare(right.localDbKey) || left.accountUserId.localeCompare(right.accountUserId)
251
- );
252
- },
253
- remove(localDbKey, accountUserId) {
254
- const local = normalizeKey(localDbKey);
255
- if (!local) return false;
256
- const account = normalizeKey(accountUserId);
257
- if (account) {
258
- const key = pairKey(account, local);
259
- const existing = byPair.get(key);
260
- if (!existing) return false;
261
- byPair.delete(key);
262
- forgetRemoteIndex(existing);
263
- return true;
264
- }
265
- let removed = false;
266
- for (const [key, mapping] of Array.from(byPair.entries())) {
267
- if (mapping.localDbKey !== local) continue;
268
- byPair.delete(key);
269
- forgetRemoteIndex(mapping);
270
- removed = true;
271
- }
272
- return removed;
273
- },
274
- clear() {
275
- byPair.clear();
276
- remoteToPair.clear();
277
- },
278
- size() {
279
- return byPair.size;
280
- }
281
- };
282
- }
283
- var defaultSyncMappingStore = createSyncMappingStore();
284
- var mappingVersion = 0;
285
- var mappingListeners = /* @__PURE__ */ new Set();
286
- var sameConsumerMapping = (a, b) => {
287
- if (a === b) return true;
288
- if (!a || !b) return false;
289
- return a.localDbKey === b.localDbKey && a.remoteDbKey === b.remoteDbKey && a.accountUserId === b.accountUserId && a.contentType === b.contentType;
290
- };
291
- var notifySyncMappingListeners = () => {
292
- mappingVersion += 1;
293
- for (const listener of mappingListeners) {
294
- try {
295
- listener();
296
- } catch {
297
- }
298
- }
299
- };
300
- function subscribeSyncMappingVersion(listener) {
301
- mappingListeners.add(listener);
302
- return () => {
303
- mappingListeners.delete(listener);
304
- };
305
- }
306
- function getSyncMappingVersion() {
307
- return mappingVersion;
308
- }
309
- var boundClientDb = null;
310
- var mappingsHydrated = false;
311
- var hydrateEpoch = 0;
312
- var hydrateInFlight = null;
313
- function bindSyncMappingClientDb(db) {
314
- boundClientDb = db;
315
- mappingsHydrated = false;
316
- hydrateEpoch += 1;
317
- }
318
- function getBoundSyncMappingClientDb() {
319
- return boundClientDb;
320
- }
321
- async function ensureSyncMappingsHydrated(db) {
322
- const client = db ?? boundClientDb;
323
- if (!client) return false;
324
- if (mappingsHydrated) return false;
325
- if (hydrateInFlight && hydrateInFlight.epoch === hydrateEpoch) {
326
- await hydrateInFlight.promise;
327
- return false;
328
- }
329
- const epoch = hydrateEpoch;
330
- const clientAtStart = client;
331
- const promise = (async () => {
332
- const rows = await loadSyncMappingsFromDb(clientAtStart);
333
- if (epoch !== hydrateEpoch) {
334
- return false;
335
- }
336
- const beforeSize = defaultSyncMappingStore.size();
337
- defaultSyncMappingStore.clear();
338
- for (const row of rows) {
339
- try {
340
- defaultSyncMappingStore.put(row);
341
- } catch {
342
- }
343
- }
344
- mappingsHydrated = true;
345
- if (beforeSize > 0 || rows.length > 0 || defaultSyncMappingStore.size() > 0) {
346
- notifySyncMappingListeners();
347
- }
348
- return true;
349
- })();
350
- hydrateInFlight = { epoch, promise };
351
- try {
352
- return await promise;
353
- } finally {
354
- if (hydrateInFlight?.promise === promise) {
355
- hydrateInFlight = null;
356
- }
357
- }
358
- }
359
- function putSyncMapping(mapping) {
360
- const account = normalizeKey(mapping.accountUserId);
361
- const local = normalizeKey(mapping.localDbKey);
362
- const previous = account && local ? defaultSyncMappingStore.get(local, account) : null;
363
- const next = defaultSyncMappingStore.put(mapping);
364
- if (!sameConsumerMapping(previous, next)) {
365
- notifySyncMappingListeners();
366
- }
367
- return next;
368
- }
369
- async function putSyncMappingDurable(mapping) {
370
- const normalized = normalizeSyncMapping(mapping);
371
- if (!boundClientDb) {
372
- throw new Error(
373
- "putSyncMappingDurable requires a bound client DB; refuse silent memory-only durability"
374
- );
375
- }
376
- await persistSyncMappingToDb(boundClientDb, normalized);
377
- return putSyncMapping(normalized);
378
- }
379
- function getSyncMapping(localDbKey, accountUserId) {
380
- return defaultSyncMappingStore.get(localDbKey, accountUserId);
381
- }
382
- function getSyncMappingByRemoteDbKey(remoteDbKey, accountUserId) {
383
- return defaultSyncMappingStore.getByRemoteDbKey(remoteDbKey, accountUserId);
384
- }
385
- function listSyncMappings(filter) {
386
- return defaultSyncMappingStore.list(filter);
387
- }
388
- function removeSyncMapping(localDbKey, accountUserId) {
389
- const removed = defaultSyncMappingStore.remove(localDbKey, accountUserId);
390
- if (removed) {
391
- notifySyncMappingListeners();
392
- }
393
- return removed;
394
- }
395
- async function removeSyncMappingDurable(localDbKey, accountUserId) {
396
- const account = normalizeKey(accountUserId);
397
- const local = normalizeKey(localDbKey);
398
- if (!account || !local) return false;
399
- if (boundClientDb) {
400
- await removeSyncMappingFromDb(boundClientDb, account, local);
401
- }
402
- return removeSyncMapping(local, account);
403
- }
404
- function clearSyncMappings() {
405
- const hadRows = defaultSyncMappingStore.size() > 0;
406
- defaultSyncMappingStore.clear();
407
- mappingsHydrated = false;
408
- hydrateEpoch += 1;
409
- if (hadRows) {
410
- notifySyncMappingListeners();
411
- }
412
- }
413
- function getDefaultSyncMappingStore() {
414
- return defaultSyncMappingStore;
415
- }
416
- function areSyncMappingsHydrated() {
417
- return mappingsHydrated;
418
- }
419
- export {
420
- areSyncMappingsHydrated,
421
- bindSyncMappingClientDb,
422
- clearSyncMappings,
423
- createSyncMappingStore,
424
- ensureSyncMappingsHydrated,
425
- getBoundSyncMappingClientDb,
426
- getDefaultSyncMappingStore,
427
- getSyncMapping,
428
- getSyncMappingByRemoteDbKey,
429
- getSyncMappingVersion,
430
- listSyncMappings,
431
- normalizeSyncMapping,
432
- putSyncMapping,
433
- putSyncMappingDurable,
434
- removeSyncMapping,
435
- removeSyncMappingDurable,
436
- subscribeSyncMappingVersion
437
- };