@vscode/component-explorer-cli 0.2.1-5 → 0.2.1-51

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 (197) hide show
  1. package/README.md +6 -6
  2. package/dist/WorktreePool.d.ts +5 -4
  3. package/dist/WorktreePool.d.ts.map +1 -1
  4. package/dist/WorktreePool.js +3 -3
  5. package/dist/WorktreePool.js.map +1 -1
  6. package/dist/_virtual/_build-info.js +1 -1
  7. package/dist/browserPage.d.ts +50 -0
  8. package/dist/browserPage.d.ts.map +1 -1
  9. package/dist/browserPage.js +78 -0
  10. package/dist/browserPage.js.map +1 -1
  11. package/dist/commands/acceptCommand.d.ts +1 -1
  12. package/dist/commands/acceptCommand.d.ts.map +1 -1
  13. package/dist/commands/acceptCommand.js +15 -8
  14. package/dist/commands/acceptCommand.js.map +1 -1
  15. package/dist/commands/checkStabilityCommand.d.ts +2 -0
  16. package/dist/commands/checkStabilityCommand.d.ts.map +1 -1
  17. package/dist/commands/checkStabilityCommand.js +19 -2
  18. package/dist/commands/checkStabilityCommand.js.map +1 -1
  19. package/dist/commands/compareCommand.d.ts +1 -1
  20. package/dist/commands/compareCommand.d.ts.map +1 -1
  21. package/dist/commands/compareCommand.js +24 -15
  22. package/dist/commands/compareCommand.js.map +1 -1
  23. package/dist/commands/inputArg.d.ts +33 -0
  24. package/dist/commands/inputArg.d.ts.map +1 -0
  25. package/dist/commands/inputArg.js +103 -0
  26. package/dist/commands/inputArg.js.map +1 -0
  27. package/dist/commands/mcpCommand.d.ts +0 -2
  28. package/dist/commands/mcpCommand.d.ts.map +1 -1
  29. package/dist/commands/mcpCommand.js +136 -68
  30. package/dist/commands/mcpCommand.js.map +1 -1
  31. package/dist/commands/renderCommand.d.ts +9 -1
  32. package/dist/commands/renderCommand.d.ts.map +1 -1
  33. package/dist/commands/renderCommand.js +308 -21
  34. package/dist/commands/renderCommand.js.map +1 -1
  35. package/dist/commands/serveCommand.d.ts +1 -0
  36. package/dist/commands/serveCommand.d.ts.map +1 -1
  37. package/dist/commands/serveCommand.js +11 -6
  38. package/dist/commands/serveCommand.js.map +1 -1
  39. package/dist/commands/serviceDiffCommitsCommand.d.ts +1 -0
  40. package/dist/commands/serviceDiffCommitsCommand.d.ts.map +1 -1
  41. package/dist/commands/serviceDiffCommitsCommand.js +34 -28
  42. package/dist/commands/serviceDiffCommitsCommand.js.map +1 -1
  43. package/dist/commands/watchCommand.d.ts +1 -0
  44. package/dist/commands/watchCommand.d.ts.map +1 -1
  45. package/dist/commands/watchCommand.js +24 -13
  46. package/dist/commands/watchCommand.js.map +1 -1
  47. package/dist/comparison.d.ts +4 -3
  48. package/dist/comparison.d.ts.map +1 -1
  49. package/dist/comparison.js +17 -14
  50. package/dist/comparison.js.map +1 -1
  51. package/dist/component-explorer-config.schema.json +55 -2
  52. package/dist/componentExplorer.d.ts +106 -11
  53. package/dist/componentExplorer.d.ts.map +1 -1
  54. package/dist/componentExplorer.js +159 -16
  55. package/dist/componentExplorer.js.map +1 -1
  56. package/dist/config.d.ts +33 -4
  57. package/dist/config.d.ts.map +1 -1
  58. package/dist/config.js +64 -27
  59. package/dist/config.js.map +1 -1
  60. package/dist/coverage.d.ts +64 -0
  61. package/dist/coverage.d.ts.map +1 -0
  62. package/dist/coverage.js +212 -0
  63. package/dist/coverage.js.map +1 -0
  64. package/dist/daemon/DaemonService.d.ts +14 -5
  65. package/dist/daemon/DaemonService.d.ts.map +1 -1
  66. package/dist/daemon/DaemonService.js +39 -15
  67. package/dist/daemon/DaemonService.js.map +1 -1
  68. package/dist/daemon/approvalStore.d.ts +2 -1
  69. package/dist/daemon/approvalStore.d.ts.map +1 -1
  70. package/dist/daemon/approvalStore.js +4 -3
  71. package/dist/daemon/approvalStore.js.map +1 -1
  72. package/dist/daemon/inProcessClient.js +2 -2
  73. package/dist/daemon/lifecycle.d.ts +4 -1
  74. package/dist/daemon/lifecycle.d.ts.map +1 -1
  75. package/dist/daemon/lifecycle.js +1 -1
  76. package/dist/daemon/lifecycle.js.map +1 -1
  77. package/dist/daemon/pipeClient.d.ts +2 -0
  78. package/dist/daemon/pipeClient.d.ts.map +1 -1
  79. package/dist/daemon/pipeClient.js +21 -3
  80. package/dist/daemon/pipeClient.js.map +1 -1
  81. package/dist/daemon/pipeName.d.ts +3 -3
  82. package/dist/daemon/pipeName.d.ts.map +1 -1
  83. package/dist/daemon/pipeName.js +1 -2
  84. package/dist/daemon/pipeName.js.map +1 -1
  85. package/dist/daemon/pipeServer.js +2 -2
  86. package/dist/daemon/version.d.ts +1 -1
  87. package/dist/daemon/version.js +1 -1
  88. package/dist/dependencyInstaller.d.ts +2 -1
  89. package/dist/dependencyInstaller.d.ts.map +1 -1
  90. package/dist/dependencyInstaller.js +4 -4
  91. package/dist/dependencyInstaller.js.map +1 -1
  92. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js +3 -2
  93. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -1
  94. package/dist/external/vscode-observables/observables/dist/observableInternal/experimental/manualObserver.js +85 -0
  95. package/dist/external/vscode-observables/observables/dist/observableInternal/experimental/manualObserver.js.map +1 -0
  96. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js +3 -3
  97. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +1 -1
  98. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js +171 -28
  99. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +1 -1
  100. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js +9 -6
  101. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -1
  102. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js +11 -8
  103. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +1 -1
  104. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js +7 -5
  105. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +1 -1
  106. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js +16 -0
  107. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js.map +1 -1
  108. package/dist/git/gitCommitResolver.d.ts +2 -1
  109. package/dist/git/gitCommitResolver.d.ts.map +1 -1
  110. package/dist/git/gitCommitResolver.js +2 -2
  111. package/dist/git/gitCommitResolver.js.map +1 -1
  112. package/dist/git/gitIndexResolver.d.ts +2 -1
  113. package/dist/git/gitIndexResolver.d.ts.map +1 -1
  114. package/dist/git/gitIndexResolver.js +1 -1
  115. package/dist/git/gitIndexResolver.js.map +1 -1
  116. package/dist/git/gitService.d.ts +5 -4
  117. package/dist/git/gitService.d.ts.map +1 -1
  118. package/dist/git/gitService.js.map +1 -1
  119. package/dist/git/gitUtils.d.ts +6 -5
  120. package/dist/git/gitUtils.d.ts.map +1 -1
  121. package/dist/git/gitUtils.js +5 -4
  122. package/dist/git/gitUtils.js.map +1 -1
  123. package/dist/git/gitWorktreeManager.d.ts +15 -14
  124. package/dist/git/gitWorktreeManager.d.ts.map +1 -1
  125. package/dist/git/gitWorktreeManager.js +10 -11
  126. package/dist/git/gitWorktreeManager.js.map +1 -1
  127. package/dist/git/testUtils.d.ts +2 -1
  128. package/dist/git/testUtils.d.ts.map +1 -1
  129. package/dist/index.js +10 -1
  130. package/dist/index.js.map +1 -1
  131. package/dist/manifest.schema.json +38 -16
  132. package/dist/mcp/DaemonAccessor.d.ts +22 -0
  133. package/dist/mcp/DaemonAccessor.d.ts.map +1 -0
  134. package/dist/mcp/McpServer.d.ts +5 -19
  135. package/dist/mcp/McpServer.d.ts.map +1 -1
  136. package/dist/mcp/McpServer.js +367 -281
  137. package/dist/mcp/McpServer.js.map +1 -1
  138. package/dist/packages/common/dist/explorerUrl.js +21 -0
  139. package/dist/packages/common/dist/explorerUrl.js.map +1 -0
  140. package/dist/packages/common/dist/renderManifest.js +26 -5
  141. package/dist/packages/common/dist/renderManifest.js.map +1 -1
  142. package/dist/packages/simple-api/dist/{chunk-3R7GHWBM.js → chunk-FJ7AVNQE.js} +2 -1
  143. package/dist/packages/simple-api/dist/chunk-FJ7AVNQE.js.map +1 -0
  144. package/dist/packages/simple-api/dist/{chunk-SGBCNXYH.js → chunk-TTRCY65Z.js} +4 -1
  145. package/dist/packages/simple-api/dist/chunk-TTRCY65Z.js.map +1 -0
  146. package/dist/packages/simple-api/dist/{chunk-TAEFVNPN.js → chunk-WNXMRXWV.js} +2 -1
  147. package/dist/packages/simple-api/dist/chunk-WNXMRXWV.js.map +1 -0
  148. package/dist/packages/simple-api/dist/express.js +1 -1
  149. package/dist/packages/simple-api/dist/express.js.map +1 -1
  150. package/dist/path.d.ts +30 -0
  151. package/dist/path.d.ts.map +1 -0
  152. package/dist/path.js +78 -0
  153. package/dist/path.js.map +1 -0
  154. package/dist/processTree.d.ts +9 -0
  155. package/dist/processTree.d.ts.map +1 -0
  156. package/dist/processTree.js +41 -0
  157. package/dist/processTree.js.map +1 -0
  158. package/dist/screenshotServiceClient.d.ts +5 -1
  159. package/dist/screenshotServiceClient.d.ts.map +1 -1
  160. package/dist/screenshotServiceClient.js +8 -2
  161. package/dist/screenshotServiceClient.js.map +1 -1
  162. package/dist/server/httpServer.d.ts +1 -1
  163. package/dist/server/httpServer.d.ts.map +1 -1
  164. package/dist/server/httpServer.js +22 -20
  165. package/dist/server/httpServer.js.map +1 -1
  166. package/dist/server/serverConfig.d.ts +23 -6
  167. package/dist/server/serverConfig.d.ts.map +1 -1
  168. package/dist/server/serverConfig.js +11 -18
  169. package/dist/server/serverConfig.js.map +1 -1
  170. package/dist/server/viteServer.d.ts +16 -1
  171. package/dist/server/viteServer.d.ts.map +1 -1
  172. package/dist/server/viteServer.js +86 -5
  173. package/dist/server/viteServer.js.map +1 -1
  174. package/dist/storage.d.ts +2 -1
  175. package/dist/storage.d.ts.map +1 -1
  176. package/dist/storage.js +1 -1
  177. package/dist/storage.js.map +1 -1
  178. package/dist/utils.d.ts +3 -30
  179. package/dist/utils.d.ts.map +1 -1
  180. package/dist/utils.js +4 -24
  181. package/dist/utils.js.map +1 -1
  182. package/dist/visualCache.d.ts +2 -1
  183. package/dist/visualCache.d.ts.map +1 -1
  184. package/dist/visualCache.js +4 -3
  185. package/dist/visualCache.js.map +1 -1
  186. package/dist/viteProjectRef.d.ts +4 -12
  187. package/dist/viteProjectRef.d.ts.map +1 -1
  188. package/dist/viteProjectRef.js +9 -17
  189. package/dist/viteProjectRef.js.map +1 -1
  190. package/package.json +20 -19
  191. package/dist/commands/artifactCommand.d.ts +0 -14
  192. package/dist/commands/artifactCommand.d.ts.map +0 -1
  193. package/dist/commands/screenshotCommand.d.ts +0 -19
  194. package/dist/commands/screenshotCommand.d.ts.map +0 -1
  195. package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js.map +0 -1
  196. package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js.map +0 -1
  197. package/dist/packages/simple-api/dist/chunk-TAEFVNPN.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"derivedImpl.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { BaseObservable } from './baseObservable.js';\nimport { BugIndicatingError, onBugIndicatingError } from '../commonFacade/deps.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DisposableStore } from '../../disposables.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction derivedStateToString(state) {\n switch (state) {\n case 0 /* DerivedState.initial */: return 'initial';\n case 1 /* DerivedState.dependenciesMightHaveChanged */: return 'dependenciesMightHaveChanged';\n case 2 /* DerivedState.stale */: return 'stale';\n case 3 /* DerivedState.upToDate */: return 'upToDate';\n default: return '<unknown>';\n }\n}\nclass Derived extends BaseObservable {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? '(anonymous)';\n }\n constructor(_debugNameData, _computeFn, _changeTracker, _handleLastObserverRemoved = undefined, _equalityComparator, debugLocation) {\n super(debugLocation);\n this._debugNameData = _debugNameData;\n this._computeFn = _computeFn;\n this._changeTracker = _changeTracker;\n this._handleLastObserverRemoved = _handleLastObserverRemoved;\n this._equalityComparator = _equalityComparator;\n this._state = 0 /* DerivedState.initial */;\n this._value = undefined;\n this._updateCount = 0;\n this._dependencies = new Set();\n this._dependenciesToBeRemoved = new Set();\n this._changeSummary = undefined;\n this._isUpdating = false;\n this._isComputing = false;\n this._didReportChange = false;\n this._isInBeforeUpdate = false;\n this._isReaderValid = false;\n this._store = undefined;\n this._delayedStore = undefined;\n this._removedObserverToCallEndUpdateOn = null;\n this._changeSummary = this._changeTracker?.createChangeSummary(undefined);\n }\n onLastObserverRemoved() {\n /**\n * We are not tracking changes anymore, thus we have to assume\n * that our cache is invalid.\n */\n this._state = 0 /* DerivedState.initial */;\n this._value = undefined;\n getLogger()?.handleDerivedCleared(this);\n for (const d of this._dependencies) {\n d.removeObserver(this);\n }\n this._dependencies.clear();\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n if (this._delayedStore !== undefined) {\n this._delayedStore.dispose();\n this._delayedStore = undefined;\n }\n this._handleLastObserverRemoved?.();\n }\n get() {\n const checkEnabled = false; // TODO set to true\n if (this._isComputing && checkEnabled) {\n // investigate why this fails in the diff editor!\n throw new BugIndicatingError('Cyclic deriveds are not supported yet!');\n }\n if (this._observers.size === 0) {\n let result;\n // Without observers, we don't know when to clean up stuff.\n // Thus, we don't cache anything to prevent memory leaks.\n try {\n this._isReaderValid = true;\n let changeSummary = undefined;\n if (this._changeTracker) {\n changeSummary = this._changeTracker.createChangeSummary(undefined);\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n }\n result = this._computeFn(this, changeSummary);\n }\n finally {\n this._isReaderValid = false;\n }\n // Clear new dependencies\n this.onLastObserverRemoved();\n return result;\n }\n else {\n do {\n // We might not get a notification for a dependency that changed while it is updating,\n // thus we also have to ask all our depedencies if they changed in this case.\n if (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */) {\n for (const d of this._dependencies) {\n /** might call {@link handleChange} indirectly, which could make us stale */\n d.reportChanges();\n if (this._state === 2 /* DerivedState.stale */) {\n // The other dependencies will refresh on demand, so early break\n break;\n }\n }\n }\n // We called report changes of all dependencies.\n // If we are still not stale, we can assume to be up to date again.\n if (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */) {\n this._state = 3 /* DerivedState.upToDate */;\n }\n if (this._state !== 3 /* DerivedState.upToDate */) {\n this._recompute();\n }\n // In case recomputation changed one of our dependencies, we need to recompute again.\n } while (this._state !== 3 /* DerivedState.upToDate */);\n return this._value;\n }\n }\n _recompute() {\n let didChange = false;\n this._isComputing = true;\n this._didReportChange = false;\n const emptySet = this._dependenciesToBeRemoved;\n this._dependenciesToBeRemoved = this._dependencies;\n this._dependencies = emptySet;\n try {\n const changeSummary = this._changeSummary;\n this._isReaderValid = true;\n if (this._changeTracker) {\n this._isInBeforeUpdate = true;\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n this._isInBeforeUpdate = false;\n this._changeSummary = this._changeTracker?.createChangeSummary(changeSummary);\n }\n const hadValue = this._state !== 0 /* DerivedState.initial */;\n const oldValue = this._value;\n this._state = 3 /* DerivedState.upToDate */;\n const delayedStore = this._delayedStore;\n if (delayedStore !== undefined) {\n this._delayedStore = undefined;\n }\n try {\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n /** might call {@link handleChange} indirectly, which could invalidate us */\n this._value = this._computeFn(this, changeSummary);\n }\n finally {\n this._isReaderValid = false;\n // We don't want our observed observables to think that they are (not even temporarily) not being observed.\n // Thus, we only unsubscribe from observables that are definitely not read anymore.\n for (const o of this._dependenciesToBeRemoved) {\n o.removeObserver(this);\n }\n this._dependenciesToBeRemoved.clear();\n if (delayedStore !== undefined) {\n delayedStore.dispose();\n }\n }\n didChange = this._didReportChange || (hadValue && !(this._equalityComparator(oldValue, this._value)));\n getLogger()?.handleObservableUpdated(this, {\n oldValue,\n newValue: this._value,\n change: undefined,\n didChange,\n hadValue,\n });\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n this._isComputing = false;\n if (!this._didReportChange && didChange) {\n for (const r of this._observers) {\n r.handleChange(this, undefined);\n }\n }\n else {\n this._didReportChange = false;\n }\n }\n toString() {\n return `LazyDerived<${this.debugName}>`;\n }\n // IObserver Implementation\n beginUpdate(_observable) {\n if (this._isUpdating) {\n throw new BugIndicatingError('Cyclic deriveds are not supported yet!');\n }\n this._updateCount++;\n this._isUpdating = true;\n try {\n const propagateBeginUpdate = this._updateCount === 1;\n if (this._state === 3 /* DerivedState.upToDate */) {\n this._state = 1 /* DerivedState.dependenciesMightHaveChanged */;\n // If we propagate begin update, that will already signal a possible change.\n if (!propagateBeginUpdate) {\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n if (propagateBeginUpdate) {\n for (const r of this._observers) {\n r.beginUpdate(this); // This signals a possible change\n }\n }\n }\n finally {\n this._isUpdating = false;\n }\n }\n endUpdate(_observable) {\n this._updateCount--;\n if (this._updateCount === 0) {\n // End update could change the observer list.\n const observers = [...this._observers];\n for (const r of observers) {\n r.endUpdate(this);\n }\n if (this._removedObserverToCallEndUpdateOn) {\n const observers = [...this._removedObserverToCallEndUpdateOn];\n this._removedObserverToCallEndUpdateOn = null;\n for (const r of observers) {\n r.endUpdate(this);\n }\n }\n }\n }\n handlePossibleChange(observable) {\n // In all other states, observers already know that we might have changed.\n if (this._state === 3 /* DerivedState.upToDate */ && this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable)) {\n this._state = 1 /* DerivedState.dependenciesMightHaveChanged */;\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n handleChange(observable, change) {\n if (this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable) || this._isInBeforeUpdate) {\n getLogger()?.handleDerivedDependencyChanged(this, observable, change);\n let shouldReact = false;\n try {\n shouldReact = this._changeTracker ? this._changeTracker.handleChange({\n changedObservable: observable,\n change,\n didChange: (o) => o === observable,\n }, this._changeSummary) : true;\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n const wasUpToDate = this._state === 3 /* DerivedState.upToDate */;\n if (shouldReact && (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */ || wasUpToDate)) {\n this._state = 2 /* DerivedState.stale */;\n if (wasUpToDate) {\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n }\n }\n // IReader Implementation\n _ensureReaderValid() {\n if (!this._isReaderValid) {\n throw new BugIndicatingError('The reader object cannot be used outside its compute function!');\n }\n }\n readObservable(observable) {\n this._ensureReaderValid();\n // Subscribe before getting the value to enable caching\n observable.addObserver(this);\n /** This might call {@link handleChange} indirectly, which could invalidate us */\n const value = observable.get();\n // Which is why we only add the observable to the dependencies now.\n this._dependencies.add(observable);\n this._dependenciesToBeRemoved.delete(observable);\n return value;\n }\n reportChange(change) {\n this._ensureReaderValid();\n this._didReportChange = true;\n // TODO add logging\n for (const r of this._observers) {\n r.handleChange(this, change);\n }\n }\n get store() {\n this._ensureReaderValid();\n if (this._store === undefined) {\n this._store = new DisposableStore();\n }\n return this._store;\n }\n get delayedStore() {\n this._ensureReaderValid();\n if (this._delayedStore === undefined) {\n this._delayedStore = new DisposableStore();\n }\n return this._delayedStore;\n }\n addObserver(observer) {\n const shouldCallBeginUpdate = !this._observers.has(observer) && this._updateCount > 0;\n super.addObserver(observer);\n if (shouldCallBeginUpdate) {\n if (this._removedObserverToCallEndUpdateOn && this._removedObserverToCallEndUpdateOn.has(observer)) {\n this._removedObserverToCallEndUpdateOn.delete(observer);\n }\n else {\n observer.beginUpdate(this);\n }\n }\n }\n removeObserver(observer) {\n if (this._observers.has(observer) && this._updateCount > 0) {\n if (!this._removedObserverToCallEndUpdateOn) {\n this._removedObserverToCallEndUpdateOn = new Set();\n }\n this._removedObserverToCallEndUpdateOn.add(observer);\n }\n super.removeObserver(observer);\n }\n debugGetState() {\n return {\n state: this._state,\n stateStr: derivedStateToString(this._state),\n updateCount: this._updateCount,\n isComputing: this._isComputing,\n dependencies: this._dependencies,\n value: this._value,\n };\n }\n debugSetValue(newValue) {\n this._value = newValue;\n }\n debugRecompute() {\n if (!this._isComputing) {\n this._recompute();\n }\n else {\n this._state = 2 /* DerivedState.stale */;\n }\n }\n setValue(newValue, tx, change) {\n this._value = newValue;\n const observers = this._observers;\n tx.updateObserver(this, this);\n for (const d of observers) {\n d.handleChange(this, change);\n }\n }\n}\nclass DerivedWithSetter extends Derived {\n constructor(debugNameData, computeFn, changeTracker, handleLastObserverRemoved = undefined, equalityComparator, set, debugLocation) {\n super(debugNameData, computeFn, changeTracker, handleLastObserverRemoved, equalityComparator, debugLocation);\n this.set = set;\n }\n}\n\nexport { Derived, DerivedWithSetter };\n//# sourceMappingURL=derivedImpl.js.map\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derivedImpl.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { BaseObservable } from './baseObservable.js';\nimport { BugIndicatingError, onBugIndicatingError } from '../commonFacade/deps.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DisposableStore } from '../../disposables.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction derivedStateToString(state) {\n switch (state) {\n case 0 /* DerivedState.initial */: return 'initial';\n case 1 /* DerivedState.dependenciesMightHaveChanged */: return 'dependenciesMightHaveChanged';\n case 2 /* DerivedState.stale */: return 'stale';\n case 3 /* DerivedState.upToDate */: return 'upToDate';\n default: return '<unknown>';\n }\n}\nclass Derived extends BaseObservable {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? '(anonymous)';\n }\n constructor(_debugNameData, _computeFn, _changeTracker, _handleLastObserverRemoved = undefined, _equalityComparator, debugLocation) {\n super(debugLocation);\n this._debugNameData = _debugNameData;\n this._computeFn = _computeFn;\n this._changeTracker = _changeTracker;\n this._handleLastObserverRemoved = _handleLastObserverRemoved;\n this._equalityComparator = _equalityComparator;\n this._state = 0 /* DerivedState.initial */;\n this._value = undefined;\n this._updateCount = 0;\n this._dependencies = new Set();\n this._dependenciesToBeRemoved = new Set();\n this._changeSummary = undefined;\n this._isUpdating = false;\n this._isComputing = false;\n this._didReportChange = false;\n this._isInBeforeUpdate = false;\n this._isReaderValid = false;\n this._store = undefined;\n this._delayedStore = undefined;\n this._removedObserverToCallEndUpdateOn = null;\n this._changeSummary = this._changeTracker?.createChangeSummary(undefined);\n }\n onLastObserverRemoved() {\n /**\n * We are not tracking changes anymore, thus we have to assume\n * that our cache is invalid.\n */\n this._state = 0 /* DerivedState.initial */;\n this._value = undefined;\n getLogger()?.handleDerivedCleared(this);\n for (const d of this._dependencies) {\n d.removeObserver(this);\n }\n this._dependencies.clear();\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n if (this._delayedStore !== undefined) {\n this._delayedStore.dispose();\n this._delayedStore = undefined;\n }\n this._handleLastObserverRemoved?.();\n }\n get() {\n const checkEnabled = false; // TODO set to true\n if (this._isComputing && checkEnabled) {\n // investigate why this fails in the diff editor!\n throw new BugIndicatingError('Cyclic deriveds are not supported yet!');\n }\n if (this._observers.size === 0) {\n let result;\n // Without observers, we don't know when to clean up stuff.\n // Thus, we don't cache anything to prevent memory leaks.\n try {\n this._isReaderValid = true;\n let changeSummary = undefined;\n if (this._changeTracker) {\n changeSummary = this._changeTracker.createChangeSummary(undefined);\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n }\n result = this._computeFn(this, changeSummary);\n }\n finally {\n this._isReaderValid = false;\n }\n // Clear new dependencies\n this.onLastObserverRemoved();\n return result;\n }\n else {\n do {\n // We might not get a notification for a dependency that changed while it is updating,\n // thus we also have to ask all our depedencies if they changed in this case.\n if (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */) {\n for (const d of this._dependencies) {\n /** might call {@link handleChange} indirectly, which could make us stale */\n d.reportChanges();\n if (this._state === 2 /* DerivedState.stale */) {\n // The other dependencies will refresh on demand, so early break\n break;\n }\n }\n }\n // We called report changes of all dependencies.\n // If we are still not stale, we can assume to be up to date again.\n if (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */) {\n this._state = 3 /* DerivedState.upToDate */;\n }\n if (this._state !== 3 /* DerivedState.upToDate */) {\n this._recompute();\n }\n // In case recomputation changed one of our dependencies, we need to recompute again.\n } while (this._state !== 3 /* DerivedState.upToDate */);\n return this._value;\n }\n }\n _recompute() {\n let didChange = false;\n this._isComputing = true;\n this._didReportChange = false;\n const emptySet = this._dependenciesToBeRemoved;\n this._dependenciesToBeRemoved = this._dependencies;\n this._dependencies = emptySet;\n try {\n const changeSummary = this._changeSummary;\n this._isReaderValid = true;\n if (this._changeTracker) {\n this._isInBeforeUpdate = true;\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n this._isInBeforeUpdate = false;\n this._changeSummary = this._changeTracker?.createChangeSummary(changeSummary);\n }\n const hadValue = this._state !== 0 /* DerivedState.initial */;\n const oldValue = this._value;\n this._state = 3 /* DerivedState.upToDate */;\n const delayedStore = this._delayedStore;\n if (delayedStore !== undefined) {\n this._delayedStore = undefined;\n }\n try {\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n /** might call {@link handleChange} indirectly, which could invalidate us */\n this._value = this._computeFn(this, changeSummary);\n }\n finally {\n this._isReaderValid = false;\n // We don't want our observed observables to think that they are (not even temporarily) not being observed.\n // Thus, we only unsubscribe from observables that are definitely not read anymore.\n for (const o of this._dependenciesToBeRemoved) {\n o.removeObserver(this);\n }\n this._dependenciesToBeRemoved.clear();\n if (delayedStore !== undefined) {\n delayedStore.dispose();\n }\n }\n didChange = this._didReportChange || (hadValue && !(this._equalityComparator(oldValue, this._value)));\n getLogger()?.handleObservableUpdated(this, {\n oldValue,\n newValue: this._value,\n change: undefined,\n didChange,\n hadValue,\n });\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n this._isComputing = false;\n if (!this._didReportChange && didChange) {\n for (const r of this._observers) {\n r.handleChange(this, undefined);\n }\n }\n else {\n this._didReportChange = false;\n }\n }\n toString() {\n return `LazyDerived<${this.debugName}>`;\n }\n // IObserver Implementation\n beginUpdate(_observable) {\n if (this._isUpdating) {\n throw new BugIndicatingError('Cyclic deriveds are not supported yet!');\n }\n this._updateCount++;\n this._isUpdating = true;\n try {\n const propagateBeginUpdate = this._updateCount === 1;\n if (this._state === 3 /* DerivedState.upToDate */) {\n this._state = 1 /* DerivedState.dependenciesMightHaveChanged */;\n // If we propagate begin update, that will already signal a possible change.\n if (!propagateBeginUpdate) {\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n if (propagateBeginUpdate) {\n for (const r of this._observers) {\n r.beginUpdate(this); // This signals a possible change\n }\n }\n }\n finally {\n this._isUpdating = false;\n }\n }\n endUpdate(_observable) {\n this._updateCount--;\n if (this._updateCount === 0) {\n // End update could change the observer list.\n const observers = [...this._observers];\n for (const r of observers) {\n r.endUpdate(this);\n }\n if (this._removedObserverToCallEndUpdateOn) {\n const observers = [...this._removedObserverToCallEndUpdateOn];\n this._removedObserverToCallEndUpdateOn = null;\n for (const r of observers) {\n r.endUpdate(this);\n }\n }\n }\n }\n handlePossibleChange(observable) {\n // In all other states, observers already know that we might have changed.\n if (this._state === 3 /* DerivedState.upToDate */ && this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable)) {\n this._state = 1 /* DerivedState.dependenciesMightHaveChanged */;\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n handleChange(observable, change) {\n if (this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable) || this._isInBeforeUpdate) {\n getLogger()?.handleDerivedDependencyChanged(this, observable, change);\n let shouldReact = false;\n try {\n shouldReact = this._changeTracker ? this._changeTracker.handleChange({\n changedObservable: observable,\n change,\n didChange: (o) => o === observable,\n }, this._changeSummary) : true;\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n const wasUpToDate = this._state === 3 /* DerivedState.upToDate */;\n if (shouldReact && (this._state === 1 /* DerivedState.dependenciesMightHaveChanged */ || wasUpToDate)) {\n this._state = 2 /* DerivedState.stale */;\n if (wasUpToDate) {\n for (const r of this._observers) {\n r.handlePossibleChange(this);\n }\n }\n }\n }\n }\n // IReader Implementation\n _ensureReaderValid() {\n if (!this._isReaderValid) {\n throw new BugIndicatingError('The reader object cannot be used outside its compute function!');\n }\n }\n readObservable(observable) {\n this._ensureReaderValid();\n // Subscribe before getting the value to enable caching\n observable.addObserver(this);\n /** This might call {@link handleChange} indirectly, which could invalidate us */\n const value = observable.get();\n // Which is why we only add the observable to the dependencies now.\n this._dependencies.add(observable);\n this._dependenciesToBeRemoved.delete(observable);\n return value;\n }\n reportChange(change) {\n this._ensureReaderValid();\n this._didReportChange = true;\n // TODO add logging\n for (const r of this._observers) {\n r.handleChange(this, change);\n }\n }\n get store() {\n this._ensureReaderValid();\n if (this._store === undefined) {\n this._store = new DisposableStore();\n }\n return this._store;\n }\n get delayedStore() {\n this._ensureReaderValid();\n if (this._delayedStore === undefined) {\n this._delayedStore = new DisposableStore();\n }\n return this._delayedStore;\n }\n addObserver(observer) {\n const shouldCallBeginUpdate = !this._observers.has(observer) && this._updateCount > 0;\n super.addObserver(observer);\n if (shouldCallBeginUpdate) {\n if (!this._removedObserverToCallEndUpdateOn?.delete(observer)) {\n observer.beginUpdate(this);\n }\n }\n }\n removeObserver(observer) {\n if (this._observers.has(observer) && this._updateCount > 0) {\n if (!this._removedObserverToCallEndUpdateOn) {\n this._removedObserverToCallEndUpdateOn = new Set();\n }\n this._removedObserverToCallEndUpdateOn.add(observer);\n }\n super.removeObserver(observer);\n }\n debugGetState() {\n return {\n state: this._state,\n stateStr: derivedStateToString(this._state),\n updateCount: this._updateCount,\n isComputing: this._isComputing,\n dependencies: this._dependencies,\n value: this._value,\n };\n }\n debugSetValue(newValue) {\n this._value = newValue;\n }\n debugRecompute() {\n this.beginUpdate(this);\n try {\n if (!this._isComputing) {\n this._recompute();\n }\n else {\n this._state = 2 /* DerivedState.stale */;\n }\n }\n finally {\n this.endUpdate(this);\n }\n }\n setValue(newValue, tx, change) {\n this._value = newValue;\n const observers = this._observers;\n tx.updateObserver(this, this);\n for (const d of observers) {\n d.handleChange(this, change);\n }\n }\n}\nclass DerivedWithSetter extends Derived {\n constructor(debugNameData, computeFn, changeTracker, handleLastObserverRemoved = undefined, equalityComparator, set, debugLocation) {\n super(debugNameData, computeFn, changeTracker, handleLastObserverRemoved, equalityComparator, debugLocation);\n this.set = set;\n }\n}\n\nexport { Derived, DerivedWithSetter };\n//# sourceMappingURL=derivedImpl.js.map\n"],"names":[],"mappings":"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"}
@@ -14,14 +14,16 @@ import { DebugLocation } from '../debugLocation.js';
14
14
  * Copyright (c) Microsoft Corporation. All rights reserved.
15
15
  * Licensed under the MIT License. See License.txt in the project root for license information.
16
16
  *--------------------------------------------------------------------------------------------*/
17
- function observableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {
18
- let debugNameData;
17
+ function toDebugNameData(nameOrOwner) {
19
18
  if (typeof nameOrOwner === 'string') {
20
- debugNameData = new DebugNameData(undefined, nameOrOwner, undefined);
19
+ return new DebugNameData(undefined, nameOrOwner, undefined);
21
20
  }
22
21
  else {
23
- debugNameData = new DebugNameData(nameOrOwner, undefined, undefined);
22
+ return new DebugNameData(nameOrOwner, undefined, undefined);
24
23
  }
24
+ }
25
+ function observableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {
26
+ const debugNameData = toDebugNameData(nameOrOwner);
25
27
  return new ObservableValue(debugNameData, initialValue, strictEquals, debugLocation);
26
28
  }
27
29
  class ObservableValue extends BaseObservable {
@@ -77,5 +79,5 @@ class ObservableValue extends BaseObservable {
77
79
  }
78
80
  }
79
81
 
80
- export { ObservableValue, observableValue };
82
+ export { ObservableValue, observableValue, toDebugNameData };
81
83
  //# sourceMappingURL=observableValue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"observableValue.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { TransactionImpl } from '../transaction.js';\nimport { BaseObservable } from './baseObservable.js';\nimport { strictEquals } from '../commonFacade/deps.js';\nimport { DebugNameData } from '../debugName.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DebugLocation } from '../debugLocation.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction observableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {\n let debugNameData;\n if (typeof nameOrOwner === 'string') {\n debugNameData = new DebugNameData(undefined, nameOrOwner, undefined);\n }\n else {\n debugNameData = new DebugNameData(nameOrOwner, undefined, undefined);\n }\n return new ObservableValue(debugNameData, initialValue, strictEquals, debugLocation);\n}\nclass ObservableValue extends BaseObservable {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? 'ObservableValue';\n }\n constructor(_debugNameData, initialValue, _equalityComparator, debugLocation) {\n super(debugLocation);\n this._debugNameData = _debugNameData;\n this._equalityComparator = _equalityComparator;\n this._value = initialValue;\n getLogger()?.handleObservableUpdated(this, { hadValue: false, newValue: initialValue, change: undefined, didChange: true, oldValue: undefined });\n }\n get() {\n return this._value;\n }\n set(value, tx, change) {\n if (change === undefined && this._equalityComparator(this._value, value)) {\n return;\n }\n let _tx;\n if (!tx) {\n tx = _tx = new TransactionImpl(() => { }, () => `Setting ${this.debugName}`);\n }\n try {\n const oldValue = this._value;\n this._setValue(value);\n getLogger()?.handleObservableUpdated(this, { oldValue, newValue: value, change, didChange: true, hadValue: true });\n for (const observer of this._observers) {\n tx.updateObserver(observer, this);\n observer.handleChange(this, change);\n }\n }\n finally {\n if (_tx) {\n _tx.finish();\n }\n }\n }\n toString() {\n return `${this.debugName}: ${this._value}`;\n }\n _setValue(newValue) {\n this._value = newValue;\n }\n debugGetState() {\n return {\n value: this._value,\n };\n }\n debugSetValue(value) {\n this._value = value;\n }\n}\n/**\n * A disposable observable. When disposed, its value is also disposed.\n * When a new value is set, the previous value is disposed.\n */\nfunction disposableObservableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {\n let debugNameData;\n if (typeof nameOrOwner === 'string') {\n debugNameData = new DebugNameData(undefined, nameOrOwner, undefined);\n }\n else {\n debugNameData = new DebugNameData(nameOrOwner, undefined, undefined);\n }\n return new DisposableObservableValue(debugNameData, initialValue, strictEquals, debugLocation);\n}\nclass DisposableObservableValue extends ObservableValue {\n _setValue(newValue) {\n if (this._value === newValue) {\n return;\n }\n if (this._value) {\n this._value.dispose();\n }\n this._value = newValue;\n }\n dispose() {\n this._value?.dispose();\n }\n}\n\nexport { DisposableObservableValue, ObservableValue, disposableObservableValue, observableValue };\n//# sourceMappingURL=observableValue.js.map\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observableValue.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { TransactionImpl } from '../transaction.js';\nimport { BaseObservable } from './baseObservable.js';\nimport { strictEquals } from '../commonFacade/deps.js';\nimport { DebugNameData } from '../debugName.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DebugLocation } from '../debugLocation.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction toDebugNameData(nameOrOwner) {\n if (typeof nameOrOwner === 'string') {\n return new DebugNameData(undefined, nameOrOwner, undefined);\n }\n else {\n return new DebugNameData(nameOrOwner, undefined, undefined);\n }\n}\nfunction observableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {\n const debugNameData = toDebugNameData(nameOrOwner);\n return new ObservableValue(debugNameData, initialValue, strictEquals, debugLocation);\n}\nclass ObservableValue extends BaseObservable {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? 'ObservableValue';\n }\n constructor(_debugNameData, initialValue, _equalityComparator, debugLocation) {\n super(debugLocation);\n this._debugNameData = _debugNameData;\n this._equalityComparator = _equalityComparator;\n this._value = initialValue;\n getLogger()?.handleObservableUpdated(this, { hadValue: false, newValue: initialValue, change: undefined, didChange: true, oldValue: undefined });\n }\n get() {\n return this._value;\n }\n set(value, tx, change) {\n if (change === undefined && this._equalityComparator(this._value, value)) {\n return;\n }\n let _tx;\n if (!tx) {\n tx = _tx = new TransactionImpl(() => { }, () => `Setting ${this.debugName}`);\n }\n try {\n const oldValue = this._value;\n this._setValue(value);\n getLogger()?.handleObservableUpdated(this, { oldValue, newValue: value, change, didChange: true, hadValue: true });\n for (const observer of this._observers) {\n tx.updateObserver(observer, this);\n observer.handleChange(this, change);\n }\n }\n finally {\n if (_tx) {\n _tx.finish();\n }\n }\n }\n toString() {\n return `${this.debugName}: ${this._value}`;\n }\n _setValue(newValue) {\n this._value = newValue;\n }\n debugGetState() {\n return {\n value: this._value,\n };\n }\n debugSetValue(value) {\n this._value = value;\n }\n}\n/**\n * A disposable observable. When disposed, its value is also disposed.\n * When a new value is set, the previous value is disposed.\n */\nfunction disposableObservableValue(nameOrOwner, initialValue, debugLocation = DebugLocation.ofCaller()) {\n let debugNameData;\n if (typeof nameOrOwner === 'string') {\n debugNameData = new DebugNameData(undefined, nameOrOwner, undefined);\n }\n else {\n debugNameData = new DebugNameData(nameOrOwner, undefined, undefined);\n }\n return new DisposableObservableValue(debugNameData, initialValue, strictEquals, debugLocation);\n}\nclass DisposableObservableValue extends ObservableValue {\n _setValue(newValue) {\n if (this._value === newValue) {\n return;\n }\n if (this._value) {\n this._value.dispose();\n }\n this._value = newValue;\n }\n dispose() {\n this._value?.dispose();\n }\n}\n\nexport { DisposableObservableValue, ObservableValue, disposableObservableValue, observableValue, toDebugNameData };\n//# sourceMappingURL=observableValue.js.map\n"],"names":[],"mappings":"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"}
@@ -33,6 +33,7 @@ class AutorunObserver {
33
33
  this._dependencies = new Set();
34
34
  this._dependenciesToBeRemoved = new Set();
35
35
  this._isRunning = false;
36
+ this._iteration = 0;
36
37
  this._store = undefined;
37
38
  this._delayedStore = undefined;
38
39
  this._changeSummary = this._changeTracker?.createChangeSummary(undefined);
@@ -110,6 +111,7 @@ class AutorunObserver {
110
111
  // IObserver implementation
111
112
  beginUpdate(_observable) {
112
113
  if (this._state === 3 /* AutorunState.upToDate */) {
114
+ this._checkIterations();
113
115
  this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;
114
116
  }
115
117
  this._updateCount++;
@@ -117,7 +119,11 @@ class AutorunObserver {
117
119
  endUpdate(_observable) {
118
120
  try {
119
121
  if (this._updateCount === 1) {
122
+ this._iteration = 1;
120
123
  do {
124
+ if (this._checkIterations()) {
125
+ return;
126
+ }
121
127
  if (this._state === 1 /* AutorunState.dependenciesMightHaveChanged */) {
122
128
  this._state = 3 /* AutorunState.upToDate */;
123
129
  for (const d of this._dependencies) {
@@ -128,6 +134,7 @@ class AutorunObserver {
128
134
  }
129
135
  }
130
136
  }
137
+ this._iteration++;
131
138
  if (this._state !== 3 /* AutorunState.upToDate */) {
132
139
  this._run(); // Warning: indirect external call!
133
140
  }
@@ -140,6 +147,7 @@ class AutorunObserver {
140
147
  }
141
148
  handlePossibleChange(observable) {
142
149
  if (this._state === 3 /* AutorunState.upToDate */ && this._isDependency(observable)) {
150
+ this._checkIterations();
143
151
  this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;
144
152
  }
145
153
  }
@@ -154,6 +162,7 @@ class AutorunObserver {
154
162
  didChange: (o) => o === observable,
155
163
  }, this._changeSummary) : true;
156
164
  if (shouldReact) {
165
+ this._checkIterations();
157
166
  this._state = 2 /* AutorunState.stale */;
158
167
  }
159
168
  }
@@ -220,6 +229,13 @@ class AutorunObserver {
220
229
  this._state = 2 /* AutorunState.stale */;
221
230
  }
222
231
  }
232
+ _checkIterations() {
233
+ if (this._iteration > 100) {
234
+ onBugIndicatingError(new BugIndicatingError(`Autorun '${this.debugName}' is stuck in an infinite update loop.`));
235
+ return true;
236
+ }
237
+ return false;
238
+ }
223
239
  }
224
240
 
225
241
  export { AutorunObserver };
@@ -1 +1 @@
1
- {"version":3,"file":"autorunImpl.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { onBugIndicatingError, BugIndicatingError } from '../commonFacade/deps.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DisposableStore } from '../../disposables.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction autorunStateToString(state) {\n switch (state) {\n case 1 /* AutorunState.dependenciesMightHaveChanged */: return 'dependenciesMightHaveChanged';\n case 2 /* AutorunState.stale */: return 'stale';\n case 3 /* AutorunState.upToDate */: return 'upToDate';\n default: return '<unknown>';\n }\n}\nclass AutorunObserver {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? '(anonymous)';\n }\n constructor(_debugNameData, _runFn, _changeTracker, debugLocation) {\n this._debugNameData = _debugNameData;\n this._runFn = _runFn;\n this._changeTracker = _changeTracker;\n this._state = 2 /* AutorunState.stale */;\n this._updateCount = 0;\n this._disposed = false;\n this._dependencies = new Set();\n this._dependenciesToBeRemoved = new Set();\n this._isRunning = false;\n this._store = undefined;\n this._delayedStore = undefined;\n this._changeSummary = this._changeTracker?.createChangeSummary(undefined);\n getLogger()?.handleAutorunCreated(this, debugLocation);\n this._run();\n }\n dispose() {\n if (this._disposed) {\n return;\n }\n this._disposed = true;\n for (const o of this._dependencies) {\n o.removeObserver(this); // Warning: external call!\n }\n this._dependencies.clear();\n if (this._store !== undefined) {\n this._store.dispose();\n }\n if (this._delayedStore !== undefined) {\n this._delayedStore.dispose();\n }\n getLogger()?.handleAutorunDisposed(this);\n }\n _run() {\n const emptySet = this._dependenciesToBeRemoved;\n this._dependenciesToBeRemoved = this._dependencies;\n this._dependencies = emptySet;\n this._state = 3 /* AutorunState.upToDate */;\n try {\n if (!this._disposed) {\n getLogger()?.handleAutorunStarted(this);\n const changeSummary = this._changeSummary;\n const delayedStore = this._delayedStore;\n if (delayedStore !== undefined) {\n this._delayedStore = undefined;\n }\n try {\n this._isRunning = true;\n if (this._changeTracker) {\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n this._changeSummary = this._changeTracker.createChangeSummary(changeSummary); // Warning: external call!\n }\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n this._runFn(this, changeSummary); // Warning: external call!\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n finally {\n this._isRunning = false;\n if (delayedStore !== undefined) {\n delayedStore.dispose();\n }\n }\n }\n }\n finally {\n if (!this._disposed) {\n getLogger()?.handleAutorunFinished(this);\n }\n // We don't want our observed observables to think that they are (not even temporarily) not being observed.\n // Thus, we only unsubscribe from observables that are definitely not read anymore.\n for (const o of this._dependenciesToBeRemoved) {\n o.removeObserver(this); // Warning: external call!\n }\n this._dependenciesToBeRemoved.clear();\n }\n }\n toString() {\n return `Autorun<${this.debugName}>`;\n }\n // IObserver implementation\n beginUpdate(_observable) {\n if (this._state === 3 /* AutorunState.upToDate */) {\n this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;\n }\n this._updateCount++;\n }\n endUpdate(_observable) {\n try {\n if (this._updateCount === 1) {\n do {\n if (this._state === 1 /* AutorunState.dependenciesMightHaveChanged */) {\n this._state = 3 /* AutorunState.upToDate */;\n for (const d of this._dependencies) {\n d.reportChanges(); // Warning: external call!\n if (this._state === 2 /* AutorunState.stale */) {\n // The other dependencies will refresh on demand\n break;\n }\n }\n }\n if (this._state !== 3 /* AutorunState.upToDate */) {\n this._run(); // Warning: indirect external call!\n }\n } while (this._state !== 3 /* AutorunState.upToDate */);\n }\n }\n finally {\n this._updateCount--;\n }\n }\n handlePossibleChange(observable) {\n if (this._state === 3 /* AutorunState.upToDate */ && this._isDependency(observable)) {\n this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;\n }\n }\n handleChange(observable, change) {\n if (this._isDependency(observable)) {\n getLogger()?.handleAutorunDependencyChanged(this, observable, change);\n try {\n // Warning: external call!\n const shouldReact = this._changeTracker ? this._changeTracker.handleChange({\n changedObservable: observable,\n change,\n didChange: (o) => o === observable,\n }, this._changeSummary) : true;\n if (shouldReact) {\n this._state = 2 /* AutorunState.stale */;\n }\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n }\n }\n _isDependency(observable) {\n return this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable);\n }\n // IReader implementation\n _ensureNoRunning() {\n if (!this._isRunning) {\n throw new BugIndicatingError('The reader object cannot be used outside its compute function!');\n }\n }\n readObservable(observable) {\n this._ensureNoRunning();\n // In case the run action disposes the autorun\n if (this._disposed) {\n return observable.get(); // warning: external call!\n }\n observable.addObserver(this); // warning: external call!\n const value = observable.get(); // warning: external call!\n this._dependencies.add(observable);\n this._dependenciesToBeRemoved.delete(observable);\n return value;\n }\n get store() {\n this._ensureNoRunning();\n if (this._disposed) {\n throw new BugIndicatingError('Cannot access store after dispose');\n }\n if (this._store === undefined) {\n this._store = new DisposableStore();\n }\n return this._store;\n }\n get delayedStore() {\n this._ensureNoRunning();\n if (this._disposed) {\n throw new BugIndicatingError('Cannot access store after dispose');\n }\n if (this._delayedStore === undefined) {\n this._delayedStore = new DisposableStore();\n }\n return this._delayedStore;\n }\n debugGetState() {\n return {\n isRunning: this._isRunning,\n updateCount: this._updateCount,\n dependencies: this._dependencies,\n state: this._state,\n stateStr: autorunStateToString(this._state),\n };\n }\n debugRerun() {\n if (!this._isRunning) {\n this._run();\n }\n else {\n this._state = 2 /* AutorunState.stale */;\n }\n }\n}\n\nexport { AutorunObserver };\n//# sourceMappingURL=autorunImpl.js.map\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autorunImpl.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { onBugIndicatingError, BugIndicatingError } from '../commonFacade/deps.js';\nimport { getLogger } from '../logging/logging.js';\nimport { DisposableStore } from '../../disposables.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction autorunStateToString(state) {\n switch (state) {\n case 1 /* AutorunState.dependenciesMightHaveChanged */: return 'dependenciesMightHaveChanged';\n case 2 /* AutorunState.stale */: return 'stale';\n case 3 /* AutorunState.upToDate */: return 'upToDate';\n default: return '<unknown>';\n }\n}\nclass AutorunObserver {\n get debugName() {\n return this._debugNameData.getDebugName(this) ?? '(anonymous)';\n }\n constructor(_debugNameData, _runFn, _changeTracker, debugLocation) {\n this._debugNameData = _debugNameData;\n this._runFn = _runFn;\n this._changeTracker = _changeTracker;\n this._state = 2 /* AutorunState.stale */;\n this._updateCount = 0;\n this._disposed = false;\n this._dependencies = new Set();\n this._dependenciesToBeRemoved = new Set();\n this._isRunning = false;\n this._iteration = 0;\n this._store = undefined;\n this._delayedStore = undefined;\n this._changeSummary = this._changeTracker?.createChangeSummary(undefined);\n getLogger()?.handleAutorunCreated(this, debugLocation);\n this._run();\n }\n dispose() {\n if (this._disposed) {\n return;\n }\n this._disposed = true;\n for (const o of this._dependencies) {\n o.removeObserver(this); // Warning: external call!\n }\n this._dependencies.clear();\n if (this._store !== undefined) {\n this._store.dispose();\n }\n if (this._delayedStore !== undefined) {\n this._delayedStore.dispose();\n }\n getLogger()?.handleAutorunDisposed(this);\n }\n _run() {\n const emptySet = this._dependenciesToBeRemoved;\n this._dependenciesToBeRemoved = this._dependencies;\n this._dependencies = emptySet;\n this._state = 3 /* AutorunState.upToDate */;\n try {\n if (!this._disposed) {\n getLogger()?.handleAutorunStarted(this);\n const changeSummary = this._changeSummary;\n const delayedStore = this._delayedStore;\n if (delayedStore !== undefined) {\n this._delayedStore = undefined;\n }\n try {\n this._isRunning = true;\n if (this._changeTracker) {\n this._changeTracker.beforeUpdate?.(this, changeSummary);\n this._changeSummary = this._changeTracker.createChangeSummary(changeSummary); // Warning: external call!\n }\n if (this._store !== undefined) {\n this._store.dispose();\n this._store = undefined;\n }\n this._runFn(this, changeSummary); // Warning: external call!\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n finally {\n this._isRunning = false;\n if (delayedStore !== undefined) {\n delayedStore.dispose();\n }\n }\n }\n }\n finally {\n if (!this._disposed) {\n getLogger()?.handleAutorunFinished(this);\n }\n // We don't want our observed observables to think that they are (not even temporarily) not being observed.\n // Thus, we only unsubscribe from observables that are definitely not read anymore.\n for (const o of this._dependenciesToBeRemoved) {\n o.removeObserver(this); // Warning: external call!\n }\n this._dependenciesToBeRemoved.clear();\n }\n }\n toString() {\n return `Autorun<${this.debugName}>`;\n }\n // IObserver implementation\n beginUpdate(_observable) {\n if (this._state === 3 /* AutorunState.upToDate */) {\n this._checkIterations();\n this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;\n }\n this._updateCount++;\n }\n endUpdate(_observable) {\n try {\n if (this._updateCount === 1) {\n this._iteration = 1;\n do {\n if (this._checkIterations()) {\n return;\n }\n if (this._state === 1 /* AutorunState.dependenciesMightHaveChanged */) {\n this._state = 3 /* AutorunState.upToDate */;\n for (const d of this._dependencies) {\n d.reportChanges(); // Warning: external call!\n if (this._state === 2 /* AutorunState.stale */) {\n // The other dependencies will refresh on demand\n break;\n }\n }\n }\n this._iteration++;\n if (this._state !== 3 /* AutorunState.upToDate */) {\n this._run(); // Warning: indirect external call!\n }\n } while (this._state !== 3 /* AutorunState.upToDate */);\n }\n }\n finally {\n this._updateCount--;\n }\n }\n handlePossibleChange(observable) {\n if (this._state === 3 /* AutorunState.upToDate */ && this._isDependency(observable)) {\n this._checkIterations();\n this._state = 1 /* AutorunState.dependenciesMightHaveChanged */;\n }\n }\n handleChange(observable, change) {\n if (this._isDependency(observable)) {\n getLogger()?.handleAutorunDependencyChanged(this, observable, change);\n try {\n // Warning: external call!\n const shouldReact = this._changeTracker ? this._changeTracker.handleChange({\n changedObservable: observable,\n change,\n didChange: (o) => o === observable,\n }, this._changeSummary) : true;\n if (shouldReact) {\n this._checkIterations();\n this._state = 2 /* AutorunState.stale */;\n }\n }\n catch (e) {\n onBugIndicatingError(e);\n }\n }\n }\n _isDependency(observable) {\n return this._dependencies.has(observable) && !this._dependenciesToBeRemoved.has(observable);\n }\n // IReader implementation\n _ensureNoRunning() {\n if (!this._isRunning) {\n throw new BugIndicatingError('The reader object cannot be used outside its compute function!');\n }\n }\n readObservable(observable) {\n this._ensureNoRunning();\n // In case the run action disposes the autorun\n if (this._disposed) {\n return observable.get(); // warning: external call!\n }\n observable.addObserver(this); // warning: external call!\n const value = observable.get(); // warning: external call!\n this._dependencies.add(observable);\n this._dependenciesToBeRemoved.delete(observable);\n return value;\n }\n get store() {\n this._ensureNoRunning();\n if (this._disposed) {\n throw new BugIndicatingError('Cannot access store after dispose');\n }\n if (this._store === undefined) {\n this._store = new DisposableStore();\n }\n return this._store;\n }\n get delayedStore() {\n this._ensureNoRunning();\n if (this._disposed) {\n throw new BugIndicatingError('Cannot access store after dispose');\n }\n if (this._delayedStore === undefined) {\n this._delayedStore = new DisposableStore();\n }\n return this._delayedStore;\n }\n debugGetState() {\n return {\n isRunning: this._isRunning,\n updateCount: this._updateCount,\n dependencies: this._dependencies,\n state: this._state,\n stateStr: autorunStateToString(this._state),\n };\n }\n debugRerun() {\n if (!this._isRunning) {\n this._run();\n }\n else {\n this._state = 2 /* AutorunState.stale */;\n }\n }\n _checkIterations() {\n if (this._iteration > 100) {\n onBugIndicatingError(new BugIndicatingError(`Autorun '${this.debugName}' is stuck in an infinite update loop.`));\n return true;\n }\n return false;\n }\n}\n\nexport { AutorunObserver };\n//# sourceMappingURL=autorunImpl.js.map\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { IDisposable } from '@vscode/observables';
2
2
  import { type IObservable } from '@vscode/observables';
3
3
  import { GitCommitId } from './gitCommitId.js';
4
+ import { AbsolutePath } from '../path.js';
4
5
  export interface IGitCommitResolver extends IDisposable {
5
6
  readonly ref: string;
6
7
  readonly resolvedCommit: IObservable<GitCommitId>;
@@ -14,7 +15,7 @@ export declare class GitCommitResolver implements IGitCommitResolver {
14
15
  private _disposed;
15
16
  get resolvedCommit(): IObservable<GitCommitId>;
16
17
  private constructor();
17
- static create(gitRoot: string, ref: string): Promise<GitCommitResolver>;
18
+ static create(gitRoot: AbsolutePath, ref: string): Promise<GitCommitResolver>;
18
19
  private _startWatching;
19
20
  private _scheduleResolve;
20
21
  private _resolve;
@@ -1 +1 @@
1
- {"version":3,"file":"gitCommitResolver.d.ts","sourceRoot":"","sources":["../../src/git/gitCommitResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,qBAAa,iBAAkB,YAAW,kBAAkB;IAW1D,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAX1B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,SAAS,CAAS;IAE1B,IAAI,cAAc,IAAI,WAAW,CAAC,WAAW,CAAC,CAE7C;IAED,OAAO;WAQM,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAW7E,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,gBAAgB;YAMV,QAAQ;IAatB,OAAO,IAAI,IAAI;CAQf"}
1
+ {"version":3,"file":"gitCommitResolver.d.ts","sourceRoot":"","sources":["../../src/git/gitCommitResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,cAAc,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;CAClD;AAED,qBAAa,iBAAkB,YAAW,kBAAkB;IAW1D,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAX1B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAsB;IAChD,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,SAAS,CAAS;IAE1B,IAAI,cAAc,IAAI,WAAW,CAAC,WAAW,CAAC,CAE7C;IAED,OAAO;WAQM,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAWnF,OAAO,CAAC,cAAc;IAoBtB,OAAO,CAAC,gBAAgB;YAMV,QAAQ;IAatB,OAAO,IAAI,IAAI;CAQf"}
@@ -34,8 +34,8 @@ class GitCommitResolver {
34
34
  }
35
35
  _startWatching() {
36
36
  const watchTargets = [
37
- path.join(this._gitRoot, '.git', 'refs', 'heads', this.ref),
38
- path.join(this._gitRoot, '.git', 'packed-refs'),
37
+ path.join(this._gitRoot.value, '.git', 'refs', 'heads', this.ref),
38
+ path.join(this._gitRoot.value, '.git', 'packed-refs'),
39
39
  ];
40
40
  for (const target of watchTargets) {
41
41
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"gitCommitResolver.js","sources":["../../src/git/gitCommitResolver.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitCommitResolver.js","sources":["../../src/git/gitCommitResolver.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { IDisposable } from '@vscode/observables';
2
2
  import { type IObservable } from '@vscode/observables';
3
3
  import { GitCommitId } from './gitCommitId.js';
4
+ import { AbsolutePath } from '../path.js';
4
5
  /**
5
6
  * Watches the git index and creates temporary commits representing the staged state.
6
7
  * This enables worktree sessions checked out at "INDEX" — a snapshot of what's staged.
@@ -15,7 +16,7 @@ export declare class GitIndexResolver implements IDisposable {
15
16
  get ref(): string;
16
17
  get resolvedCommit(): IObservable<GitCommitId>;
17
18
  private constructor();
18
- static create(gitRoot: string): Promise<GitIndexResolver>;
19
+ static create(gitRoot: AbsolutePath): Promise<GitIndexResolver>;
19
20
  private static _createIndexCommit;
20
21
  private _startWatching;
21
22
  private _scheduleResolve;
@@ -1 +1 @@
1
- {"version":3,"file":"gitIndexResolver.d.ts","sourceRoot":"","sources":["../../src/git/gitIndexResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAYlD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAX1B,MAAM,CAAC,QAAQ,CAAC,SAAS,WAAW;IAEpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACjC,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,SAAS,CAAS;IAE1B,IAAI,GAAG,IAAI,MAAM,CAAuC;IACxD,IAAI,cAAc,IAAI,WAAW,CAAC,WAAW,CAAC,CAAiC;IAE/E,OAAO;WAOM,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;mBAO1C,kBAAkB;IAWvC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,gBAAgB;YAMV,QAAQ;IAYtB,OAAO,IAAI,IAAI;CAMf"}
1
+ {"version":3,"file":"gitIndexResolver.d.ts","sourceRoot":"","sources":["../../src/git/gitIndexResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAmB,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAYlD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAX1B,MAAM,CAAC,QAAQ,CAAC,SAAS,WAAW;IAEpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACjC,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,SAAS,CAAS;IAE1B,IAAI,GAAG,IAAI,MAAM,CAAuC;IACxD,IAAI,cAAc,IAAI,WAAW,CAAC,WAAW,CAAC,CAAiC;IAE/E,OAAO;WAOM,MAAM,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;mBAOhD,kBAAkB;IAWvC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,gBAAgB;YAMV,QAAQ;IAYtB,OAAO,IAAI,IAAI;CAMf"}
@@ -43,7 +43,7 @@ class GitIndexResolver {
43
43
  return new GitCommitId(commitHash);
44
44
  }
45
45
  _startWatching() {
46
- const indexPath = path.join(this._gitRoot, '.git', 'index');
46
+ const indexPath = path.join(this._gitRoot.value, '.git', 'index');
47
47
  try {
48
48
  this._watcher = fs.watch(indexPath, { persistent: false }, () => {
49
49
  this._scheduleResolve();
@@ -1 +1 @@
1
- {"version":3,"file":"gitIndexResolver.js","sources":["../../src/git/gitIndexResolver.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitIndexResolver.js","sources":["../../src/git/gitIndexResolver.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -3,18 +3,19 @@ import type { IGitCommitResolver } from './gitCommitResolver.js';
3
3
  import { GitIndexResolver } from './gitIndexResolver.js';
4
4
  import { type GitWorktreeManager } from './gitWorktreeManager.js';
5
5
  import { GitCommitId } from './gitCommitId.js';
6
+ import { AbsolutePath } from '../path.js';
6
7
  export interface IGitService {
7
- getRootRepoFromDir(fromDir: string): Promise<IGitRepo>;
8
+ getRootRepoFromDir(fromDir: AbsolutePath): Promise<IGitRepo>;
8
9
  }
9
10
  export interface IGitRepo extends IDisposable {
10
- readonly gitRoot: string;
11
+ readonly gitRoot: AbsolutePath;
11
12
  readonly worktrees: GitWorktreeManager;
12
13
  createCommitResolver(ref: string): Promise<IGitCommitResolver>;
13
14
  createIndexResolver(): Promise<GitIndexResolver>;
14
15
  resolveRef(ref: string): Promise<GitCommitId>;
15
- worktreeRootPath(): string;
16
+ worktreeRootPath(): AbsolutePath;
16
17
  }
17
18
  export declare class GitService implements IGitService {
18
- getRootRepoFromDir(fromDir: string): Promise<IGitRepo>;
19
+ getRootRepoFromDir(fromDir: AbsolutePath): Promise<IGitRepo>;
19
20
  }
20
21
  //# sourceMappingURL=gitService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gitService.d.ts","sourceRoot":"","sources":["../../src/git/gitService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,KAAK,kBAAkB,EAA6B,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,WAAW;IAC3B,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,QAAS,SAAQ,WAAW;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/D,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,gBAAgB,IAAI,MAAM,CAAC;CAC3B;AAED,qBAAa,UAAW,YAAW,WAAW;IACvC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAI5D"}
1
+ {"version":3,"file":"gitService.d.ts","sourceRoot":"","sources":["../../src/git/gitService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,KAAK,kBAAkB,EAA6B,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,MAAM,WAAW,WAAW;IAC3B,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,QAAS,SAAQ,WAAW;IAC5C,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/D,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,gBAAgB,IAAI,YAAY,CAAC;CACjC;AAED,qBAAa,UAAW,YAAW,WAAW;IACvC,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC;CAIlE"}
@@ -1 +1 @@
1
- {"version":3,"file":"gitService.js","sources":["../../src/git/gitService.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;MAqBa,UAAU,CAAA;IACtB,MAAM,kBAAkB,CAAC,OAAe,EAAA;AACvC,QAAA,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;AACzC,QAAA,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAC5B;AACA;AAED,MAAM,OAAO,CAAA;AAIS,IAAA,OAAA;AAHZ,IAAA,SAAS;AACD,IAAA,UAAU,GAAG,IAAI,GAAG,EAAsB;AAE3D,IAAA,WAAA,CAAqB,OAAe,EAAA;QAAf,IAAA,CAAA,OAAO,GAAP,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,yBAAyB,CAAC,OAAO,CAAC;IACxD;IAEA,MAAM,oBAAoB,CAAC,GAAW,EAAA;AACrC,QAAA,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;AAClE,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7B,QAAA,OAAO,QAAQ;IAChB;AAEA,IAAA,MAAM,mBAAmB,GAAA;QACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;AAC5D,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7B,QAAA,OAAO,QAAQ;IAChB;IAEA,MAAM,UAAU,CAAC,GAAW,EAAA;QAC3B,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;AAChD,QAAA,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC;IAC7B;IAEA,gBAAgB,GAAA;AACf,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;IACtC;IAEA,OAAO,GAAA;AACN,QAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;YACvC,QAAQ,CAAC,OAAO,EAAE;QACnB;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;IACxB;AACA;;;;"}
1
+ {"version":3,"file":"gitService.js","sources":["../../src/git/gitService.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;MAsBa,UAAU,CAAA;IACtB,MAAM,kBAAkB,CAAC,OAAqB,EAAA;AAC7C,QAAA,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;AACzC,QAAA,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAC5B;AACA;AAED,MAAM,OAAO,CAAA;AAIS,IAAA,OAAA;AAHZ,IAAA,SAAS;AACD,IAAA,UAAU,GAAG,IAAI,GAAG,EAAsB;AAE3D,IAAA,WAAA,CAAqB,OAAqB,EAAA;QAArB,IAAA,CAAA,OAAO,GAAP,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,yBAAyB,CAAC,OAAO,CAAC;IACxD;IAEA,MAAM,oBAAoB,CAAC,GAAW,EAAA;AACrC,QAAA,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;AAClE,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7B,QAAA,OAAO,QAAQ;IAChB;AAEA,IAAA,MAAM,mBAAmB,GAAA;QACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;AAC5D,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7B,QAAA,OAAO,QAAQ;IAChB;IAEA,MAAM,UAAU,CAAC,GAAW,EAAA;QAC3B,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;AAChD,QAAA,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC;IAC7B;IAEA,gBAAgB,GAAA;AACf,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;IACtC;IAEA,OAAO,GAAA;AACN,QAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;YACvC,QAAQ,CAAC,OAAO,EAAE;QACnB;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;IACxB;AACA;;;;"}
@@ -1,7 +1,8 @@
1
- export declare function getGitRoot(fromDir: string): Promise<string>;
2
- export declare function resolveRef(gitRoot: string, ref: string): Promise<string>;
3
- export declare function getMergeBase(gitRoot: string, ref1: string, ref2: string): Promise<string>;
1
+ import { AbsolutePath } from '../path.js';
2
+ export declare function getGitRoot(fromDir: AbsolutePath): Promise<AbsolutePath>;
3
+ export declare function resolveRef(gitRoot: AbsolutePath, ref: string): Promise<string>;
4
+ export declare function getMergeBase(gitRoot: AbsolutePath, ref1: string, ref2: string): Promise<string>;
4
5
  export declare function isConcreteCommitHash(ref: string): boolean;
5
- export declare function worktreeRootPath(gitRoot: string): string;
6
- export declare function execGit(cwd: string, args: readonly string[]): Promise<string>;
6
+ export declare function worktreeRootPath(gitRoot: AbsolutePath): AbsolutePath;
7
+ export declare function execGit(cwd: AbsolutePath, args: readonly string[]): Promise<string>;
7
8
  //# sourceMappingURL=gitUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/git/gitUtils.ts"],"names":[],"mappings":"AAGA,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGjE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG9E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/F;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAU7E"}
1
+ {"version":3,"file":"gitUtils.d.ts","sourceRoot":"","sources":["../../src/git/gitUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,wBAAsB,UAAU,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAG7E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGpF;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGrG;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAGpE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAUnF"}
@@ -1,9 +1,10 @@
1
1
  import { execFile } from 'node:child_process';
2
2
  import * as path from 'node:path';
3
+ import { AbsolutePath } from '../path.js';
3
4
 
4
5
  async function getGitRoot(fromDir) {
5
6
  const output = await execGit(fromDir, ['rev-parse', '--show-toplevel']);
6
- return output.trim();
7
+ return AbsolutePath.from(output.trim());
7
8
  }
8
9
  async function resolveRef(gitRoot, ref) {
9
10
  const output = await execGit(gitRoot, ['rev-parse', ref]);
@@ -17,12 +18,12 @@ function isConcreteCommitHash(ref) {
17
18
  return /^[0-9a-f]{40}$/i.test(ref);
18
19
  }
19
20
  function worktreeRootPath(gitRoot) {
20
- const repoName = path.basename(gitRoot);
21
- return path.resolve(gitRoot, '..', `${repoName}.worktrees`);
21
+ const repoName = path.basename(gitRoot.value);
22
+ return AbsolutePath.from(path.resolve(gitRoot.value, '..', `${repoName}.worktrees`));
22
23
  }
23
24
  function execGit(cwd, args) {
24
25
  return new Promise((resolve, reject) => {
25
- execFile('git', ['-C', cwd, ...args], { encoding: 'utf-8', windowsHide: true }, (err, stdout, stderr) => {
26
+ execFile('git', ['-C', cwd.value, ...args], { encoding: 'utf-8', windowsHide: true }, (err, stdout, stderr) => {
26
27
  if (err) {
27
28
  reject(new Error(`git ${args.join(' ')} failed: ${stderr || err.message}`));
28
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gitUtils.js","sources":["../../src/git/gitUtils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAGO,eAAe,UAAU,CAAC,OAAe,EAAA;AAC/C,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AACvE,IAAA,OAAO,MAAM,CAAC,IAAI,EAAE;AACrB;AAEO,eAAe,UAAU,CAAC,OAAe,EAAE,GAAW,EAAA;AAC5D,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACzD,IAAA,OAAO,MAAM,CAAC,IAAI,EAAE;AACrB;AAEO,eAAe,YAAY,CAAC,OAAe,EAAE,IAAY,EAAE,IAAY,EAAA;AAC7E,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACjE,IAAA,OAAO,MAAM,CAAC,IAAI,EAAE;AACrB;AAEM,SAAU,oBAAoB,CAAC,GAAW,EAAA;AAC/C,IAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;AACnC;AAEM,SAAU,gBAAgB,CAAC,OAAe,EAAA;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AACvC,IAAA,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,CAAA,EAAG,QAAQ,CAAA,UAAA,CAAY,CAAC;AAC5D;AAEM,SAAU,OAAO,CAAC,GAAW,EAAE,IAAuB,EAAA;IAC3D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACtC,QAAA,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,KAAI;YACvG,IAAI,GAAG,EAAE;gBACR,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,SAAA,EAAY,MAAM,IAAI,GAAG,CAAC,OAAO,CAAA,CAAE,CAAC,CAAC;YAC5E;iBAAO;gBACN,OAAO,CAAC,MAAM,CAAC;YAChB;AACD,QAAA,CAAC,CAAC;AACH,IAAA,CAAC,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"gitUtils.js","sources":["../../src/git/gitUtils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIO,eAAe,UAAU,CAAC,OAAqB,EAAA;AACrD,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IACvE,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACxC;AAEO,eAAe,UAAU,CAAC,OAAqB,EAAE,GAAW,EAAA;AAClE,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACzD,IAAA,OAAO,MAAM,CAAC,IAAI,EAAE;AACrB;AAEO,eAAe,YAAY,CAAC,OAAqB,EAAE,IAAY,EAAE,IAAY,EAAA;AACnF,IAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACjE,IAAA,OAAO,MAAM,CAAC,IAAI,EAAE;AACrB;AAEM,SAAU,oBAAoB,CAAC,GAAW,EAAA;AAC/C,IAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC;AACnC;AAEM,SAAU,gBAAgB,CAAC,OAAqB,EAAA;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC;AAC7C,IAAA,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,CAAA,EAAG,QAAQ,CAAA,UAAA,CAAY,CAAC,CAAC;AACrF;AAEM,SAAU,OAAO,CAAC,GAAiB,EAAE,IAAuB,EAAA;IACjE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACtC,QAAA,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,KAAI;YAC7G,IAAI,GAAG,EAAE;gBACR,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,SAAA,EAAY,MAAM,IAAI,GAAG,CAAC,OAAO,CAAA,CAAE,CAAC,CAAC;YAC5E;iBAAO;gBACN,OAAO,CAAC,MAAM,CAAC;YAChB;AACD,QAAA,CAAC,CAAC;AACH,IAAA,CAAC,CAAC;AACH;;;;"}
@@ -1,29 +1,30 @@
1
1
  import { GitCommitId } from './gitCommitId.js';
2
+ import { AbsolutePath } from '../path.js';
2
3
  export interface GitWorktreeInfo {
3
- readonly path: string;
4
+ readonly path: AbsolutePath;
4
5
  readonly checkedOutCommit: GitCommitId;
5
6
  readonly isDirty: boolean;
6
7
  readonly dirtyFiles: readonly string[];
7
8
  }
8
9
  export declare class DirtyWorktreeError extends Error {
9
- readonly worktreePath: string;
10
+ readonly worktreePath: AbsolutePath;
10
11
  readonly dirtyFiles: readonly string[];
11
- constructor(worktreePath: string, dirtyFiles: readonly string[], operation: string);
12
+ constructor(worktreePath: AbsolutePath, dirtyFiles: readonly string[], operation: string);
12
13
  }
13
14
  export interface GitWorktreeManager {
14
- create(worktreePath: string, commit: GitCommitId): Promise<GitWorktreeInfo>;
15
- remove(worktreePath: string): Promise<void>;
16
- checkout(worktreePath: string, commit: GitCommitId): Promise<GitWorktreeInfo>;
17
- info(worktreePath: string): Promise<GitWorktreeInfo | undefined>;
18
- list(worktreeRoot: string): Promise<readonly GitWorktreeInfo[]>;
15
+ create(worktreePath: AbsolutePath, commit: GitCommitId): Promise<GitWorktreeInfo>;
16
+ remove(worktreePath: AbsolutePath): Promise<void>;
17
+ checkout(worktreePath: AbsolutePath, commit: GitCommitId): Promise<GitWorktreeInfo>;
18
+ info(worktreePath: AbsolutePath): Promise<GitWorktreeInfo | undefined>;
19
+ list(worktreeRoot: AbsolutePath): Promise<readonly GitWorktreeInfo[]>;
19
20
  }
20
21
  export declare class DefaultGitWorktreeManager implements GitWorktreeManager {
21
22
  private readonly _gitRoot;
22
- constructor(_gitRoot: string);
23
- create(worktreePath: string, commit: GitCommitId): Promise<GitWorktreeInfo>;
24
- remove(worktreePath: string): Promise<void>;
25
- checkout(worktreePath: string, commit: GitCommitId): Promise<GitWorktreeInfo>;
26
- info(worktreePath: string): Promise<GitWorktreeInfo | undefined>;
27
- list(worktreeRoot: string): Promise<readonly GitWorktreeInfo[]>;
23
+ constructor(_gitRoot: AbsolutePath);
24
+ create(worktreePath: AbsolutePath, commit: GitCommitId): Promise<GitWorktreeInfo>;
25
+ remove(worktreePath: AbsolutePath): Promise<void>;
26
+ checkout(worktreePath: AbsolutePath, commit: GitCommitId): Promise<GitWorktreeInfo>;
27
+ info(worktreePath: AbsolutePath): Promise<GitWorktreeInfo | undefined>;
28
+ list(worktreeRoot: AbsolutePath): Promise<readonly GitWorktreeInfo[]>;
28
29
  }
29
30
  //# sourceMappingURL=gitWorktreeManager.d.ts.map