claude-flow-novice 2.0.3 → 2.0.5
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.
- package/dist/src/cli/commands/swarm.js +1 -1
- package/dist/src/cli/main.js +1 -1
- package/dist/src/coordination/byzantine-memory-channels.js +25 -1
- package/dist/src/index.js +384 -35
- package/dist/src/utils/error-handler.js +2 -36
- package/dist/src/web/api/apm-routes.js +353 -0
- package/dist/src/web/api/config/api-config.js +184 -0
- package/dist/src/web/api/middleware/auth.js +203 -0
- package/dist/src/web/api/middleware/cache.js +273 -0
- package/dist/src/web/api/middleware/error-handler.js +257 -0
- package/dist/src/web/api/middleware/request-logger.js +215 -0
- package/dist/src/web/api/middleware/validation.js +323 -0
- package/dist/src/web/api/routes/events.js +463 -0
- package/dist/src/web/api/routes/hierarchy.js +300 -0
- package/dist/src/web/api/routes/index.js +12 -0
- package/dist/src/web/api/routes/metrics.js +559 -0
- package/dist/src/web/api/routes/parallel-status.js +359 -0
- package/dist/src/web/api/routes/status.js +448 -0
- package/dist/src/web/api/server.js +462 -0
- package/dist/src/web/dashboard/hooks/useWebSocket.js +383 -0
- package/dist/src/web/dashboard/index.js +85 -0
- package/dist/src/web/dashboard/realtime/CustomSyncManager.js +439 -0
- package/dist/src/web/dashboard/realtime/NativeWebSocketManager.js +323 -0
- package/dist/src/web/dashboard/realtime/PerformanceBenchmark.js +527 -0
- package/dist/src/web/dashboard/realtime/RealtimeCommunicationManager.js +474 -0
- package/dist/src/web/dashboard/realtime/RealtimeServer.js +666 -0
- package/dist/src/web/dashboard/realtime/SSEManager.js +426 -0
- package/dist/src/web/dashboard/types.js +4 -0
- package/dist/src/web/messaging/agent-status-tracker.js +453 -0
- package/dist/src/web/messaging/human-intervention-system.js +305 -0
- package/dist/src/web/messaging/message-filter.js +302 -0
- package/dist/src/web/messaging/swarm-message-router.js +324 -0
- package/dist/src/web/messaging/transparency-logger.js +421 -0
- package/dist/src/web/portal-server.js +460 -0
- package/dist/src/web/server.js +322 -0
- package/dist/src/web/websocket/apm-websocket-handler.js +453 -0
- package/dist/src/web/websocket/websocket-manager.js +780 -0
- package/package.json +6 -4
- package/dist/src/cli/minimal-main.js +0 -22
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.js +0 -23
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +0 -57
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +0 -401
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +0 -181
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +0 -44
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +0 -157
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.js +0 -71
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/editorState/browser/editorState.js +0 -112
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findController.js +0 -990
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findDecorations.js +0 -296
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findModel.js +0 -488
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findOptionsWidget.js +0 -138
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findState.js +0 -243
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/find/browser/findWidget.js +0 -1177
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/folding/browser/folding.js +0 -1093
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/folding/browser/foldingDecorations.js +0 -133
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/folding/browser/foldingModel.js +0 -538
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/folding/browser/foldingRanges.js +0 -351
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js +0 -49
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/format/browser/format.js +0 -360
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/format/browser/formatActions.js +0 -263
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/format/browser/formattingEdit.js +0 -54
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +0 -149
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/hover/browser/contentHover.js +0 -874
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/inlineCompletions/browser/commandIds.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/inlineCompletions/browser/commands.js +0 -199
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +0 -70
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js +0 -26
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +0 -153
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js +0 -33
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +0 -354
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.js +0 -146
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/suggest/browser/completionModel.js +0 -224
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +0 -119
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/edcore.main.js +0 -14
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/editor.all.js +0 -63
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/editor.api.js +0 -55
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/editor.main.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/editor.worker.js +0 -25
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/editor/standalone/browser/colorizer.js +0 -118
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/language/css/css.worker.js +0 -36869
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/language/css/cssMode.js +0 -2035
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/browser/accessibilityService.js +0 -88
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/accessibility/common/accessibility.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/action.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/action/common/actionCommonCategories.js +0 -13
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionList.js +0 -276
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/browser/actionWidget.js +0 -248
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actionWidget/common/actionWidget.js +0 -5
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/actions/common/actions.js +0 -409
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/audioCues/browser/audioCueService.js +0 -176
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/browser/clipboardService.js +0 -141
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/clipboard/common/clipboardService.js +0 -6
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/commands/common/commands.js +0 -80
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configuration.js +0 -86
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationModels.js +0 -554
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurationRegistry.js +0 -317
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/configuration/common/configurations.js +0 -41
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/browser/contextKeyService.js +0 -432
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkey.js +0 -1547
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextkey/common/contextkeys.js +0 -18
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuHandler.js +0 -124
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextMenuService.js +0 -101
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextView.js +0 -7
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/contextview/browser/contextViewService.js +0 -72
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dialogs/common/dialogs.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/dnd/browser/dnd.js +0 -36
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/editor/common/editor.js +0 -17
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/environment/common/environment.js +0 -2
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/extensions/common/extensions.js +0 -47
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/files/common/files.js +0 -9
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +0 -105
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/descriptors.js +0 -11
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/instantiation/common/extensions.js +0 -15
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/abstractKeybindingService.js +0 -277
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/keybinding/common/baseResolvedKeybinding.js +0 -53
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +0 -354
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/browser/defaultStyles.js +0 -162
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/esm/vs/platform/theme/common/colorRegistry.js +0 -482
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/abap/abap.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/apex/apex.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/azcli/azcli.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bat/bat.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/bicep/bicep.js +0 -11
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/cameligo/cameligo.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/clojure/clojure.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/coffee/coffee.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/cpp/cpp.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/csharp/csharp.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/csp/csp.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/css/css.js +0 -12
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/cypher/cypher.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/dart/dart.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/dockerfile/dockerfile.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/ecl/ecl.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/elixir/elixir.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/basic-languages/flow9/flow9.js +0 -10
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.js +0 -745
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.de.js +0 -31
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.es.js +0 -31
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.fr.js +0 -29
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.it.js +0 -29
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.ja.js +0 -31
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.js +0 -29
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.ko.js +0 -29
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.ru.js +0 -31
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.zh-cn.js +0 -31
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/editor/editor.main.nls.zh-tw.js +0 -29
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/language/css/cssMode.js +0 -13
- package/dist/src/web/frontend/node_modules/.monaco-editor-MndU045b/min/vs/language/css/cssWorker.js +0 -81
- package/dist/src/web/frontend/node_modules/.multicast-dns-iKseM9bB/cli.js +0 -64
- package/dist/src/web/frontend/node_modules/.multicast-dns-iKseM9bB/example.js +0 -36
- package/dist/src/web/frontend/node_modules/.multicast-dns-iKseM9bB/index.js +0 -205
- package/dist/src/web/frontend/node_modules/.multicast-dns-iKseM9bB/test.js +0 -260
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/async/index.browser.js +0 -34
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/async/index.js +0 -35
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/async/index.native.js +0 -26
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/index.browser.js +0 -34
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/index.js +0 -45
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/nanoid.js +0 -1
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/non-secure/index.js +0 -21
- package/dist/src/web/frontend/node_modules/.nanoid-PAMEV9Hd/url-alphabet/index.js +0 -3
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/bin/nodemon.js +0 -16
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/cli/index.js +0 -49
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/cli/parse.js +0 -230
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/config/command.js +0 -43
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/config/defaults.js +0 -34
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/config/exec.js +0 -234
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/config/index.js +0 -93
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/config/load.js +0 -225
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/help/index.js +0 -27
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/index.js +0 -1
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/monitor/index.js +0 -4
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/monitor/match.js +0 -287
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/monitor/run.js +0 -562
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/monitor/signals.js +0 -34
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/monitor/watch.js +0 -244
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/nodemon.js +0 -317
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/rules/add.js +0 -89
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/rules/index.js +0 -53
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/rules/parse.js +0 -43
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/spawn.js +0 -74
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/bus.js +0 -44
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/clone.js +0 -40
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/colour.js +0 -26
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/index.js +0 -103
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/log.js +0 -82
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/utils/merge.js +0 -47
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/lib/version.js +0 -100
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/node_modules/brace-expansion/index.js +0 -201
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/node_modules/has-flag/index.js +0 -8
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/node_modules/minimatch/minimatch.js +0 -947
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/node_modules/supports-color/browser.js +0 -5
- package/dist/src/web/frontend/node_modules/.nodemon-QcvNKhKT/node_modules/supports-color/index.js +0 -131
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/bin/pidtree.js +0 -128
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/index.js +0 -49
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/lib/bin.js +0 -61
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/lib/get.js +0 -45
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/lib/pidtree.js +0 -104
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/lib/ps.js +0 -47
- package/dist/src/web/frontend/node_modules/.pidtree-icfat3SQ/lib/wmic.js +0 -49
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/doc.js +0 -1270
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/acorn.js +0 -15
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/angular.js +0 -2
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/babel.js +0 -15
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/estree.js +0 -36
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/flow.js +0 -19
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/glimmer.js +0 -29
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/graphql.js +0 -29
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/html.js +0 -22
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/markdown.js +0 -63
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/meriyah.js +0 -4
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/postcss.js +0 -54
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/typescript.js +0 -20
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/plugins/yaml.js +0 -160
- package/dist/src/web/frontend/node_modules/.prettier-ApZm3b7s/standalone.js +0 -34
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/bin/react-scripts.js +0 -58
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/env.js +0 -112
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/getHttpsConfig.js +0 -74
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/jest/babelTransform.js +0 -37
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/jest/cssTransform.js +0 -22
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/jest/fileTransform.js +0 -40
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/modules.js +0 -142
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/paths.js +0 -153
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/webpack/persistentCache/createEnvironmentHash.js +0 -9
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/webpack.config.js +0 -796
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/config/webpackDevServer.config.js +0 -135
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/scripts/build.js +0 -225
- package/dist/src/web/frontend/node_modules/.react-scripts-OTANyoRb/scripts/eject.js +0 -340
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Codicon } from '../../../../base/common/codicons.js';
|
|
6
|
-
import { MinimapPosition } from '../../../common/model.js';
|
|
7
|
-
import { ModelDecorationOptions } from '../../../common/model/textModel.js';
|
|
8
|
-
import { localize } from '../../../../nls.js';
|
|
9
|
-
import { editorSelectionBackground, iconForeground, registerColor, transparent } from '../../../../platform/theme/common/colorRegistry.js';
|
|
10
|
-
import { registerIcon } from '../../../../platform/theme/common/iconRegistry.js';
|
|
11
|
-
import { themeColorFromId } from '../../../../platform/theme/common/themeService.js';
|
|
12
|
-
import { ThemeIcon } from '../../../../base/common/themables.js';
|
|
13
|
-
const foldBackground = registerColor('editor.foldBackground', { light: transparent(editorSelectionBackground, 0.3), dark: transparent(editorSelectionBackground, 0.3), hcDark: null, hcLight: null }, localize('foldBackgroundBackground', "Background color behind folded ranges. The color must not be opaque so as not to hide underlying decorations."), true);
|
|
14
|
-
registerColor('editorGutter.foldingControlForeground', { dark: iconForeground, light: iconForeground, hcDark: iconForeground, hcLight: iconForeground }, localize('editorGutter.foldingControlForeground', 'Color of the folding control in the editor gutter.'));
|
|
15
|
-
export const foldingExpandedIcon = registerIcon('folding-expanded', Codicon.chevronDown, localize('foldingExpandedIcon', 'Icon for expanded ranges in the editor glyph margin.'));
|
|
16
|
-
export const foldingCollapsedIcon = registerIcon('folding-collapsed', Codicon.chevronRight, localize('foldingCollapsedIcon', 'Icon for collapsed ranges in the editor glyph margin.'));
|
|
17
|
-
export const foldingManualCollapsedIcon = registerIcon('folding-manual-collapsed', foldingCollapsedIcon, localize('foldingManualCollapedIcon', 'Icon for manually collapsed ranges in the editor glyph margin.'));
|
|
18
|
-
export const foldingManualExpandedIcon = registerIcon('folding-manual-expanded', foldingExpandedIcon, localize('foldingManualExpandedIcon', 'Icon for manually expanded ranges in the editor glyph margin.'));
|
|
19
|
-
const foldedBackgroundMinimap = { color: themeColorFromId(foldBackground), position: MinimapPosition.Inline };
|
|
20
|
-
export class FoldingDecorationProvider {
|
|
21
|
-
constructor(editor) {
|
|
22
|
-
this.editor = editor;
|
|
23
|
-
this.showFoldingControls = 'mouseover';
|
|
24
|
-
this.showFoldingHighlights = true;
|
|
25
|
-
}
|
|
26
|
-
getDecorationOption(isCollapsed, isHidden, isManual) {
|
|
27
|
-
if (isHidden) { // is inside another collapsed region
|
|
28
|
-
return FoldingDecorationProvider.HIDDEN_RANGE_DECORATION;
|
|
29
|
-
}
|
|
30
|
-
if (this.showFoldingControls === 'never') {
|
|
31
|
-
if (isCollapsed) {
|
|
32
|
-
return this.showFoldingHighlights ? FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION : FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_RANGE_DECORATION;
|
|
33
|
-
}
|
|
34
|
-
return FoldingDecorationProvider.NO_CONTROLS_EXPANDED_RANGE_DECORATION;
|
|
35
|
-
}
|
|
36
|
-
if (isCollapsed) {
|
|
37
|
-
return isManual ?
|
|
38
|
-
(this.showFoldingHighlights ? FoldingDecorationProvider.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION : FoldingDecorationProvider.MANUALLY_COLLAPSED_VISUAL_DECORATION)
|
|
39
|
-
: (this.showFoldingHighlights ? FoldingDecorationProvider.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION : FoldingDecorationProvider.COLLAPSED_VISUAL_DECORATION);
|
|
40
|
-
}
|
|
41
|
-
else if (this.showFoldingControls === 'mouseover') {
|
|
42
|
-
return isManual ? FoldingDecorationProvider.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION : FoldingDecorationProvider.EXPANDED_AUTO_HIDE_VISUAL_DECORATION;
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
return isManual ? FoldingDecorationProvider.MANUALLY_EXPANDED_VISUAL_DECORATION : FoldingDecorationProvider.EXPANDED_VISUAL_DECORATION;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
changeDecorations(callback) {
|
|
49
|
-
return this.editor.changeDecorations(callback);
|
|
50
|
-
}
|
|
51
|
-
removeDecorations(decorationIds) {
|
|
52
|
-
this.editor.removeDecorations(decorationIds);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
FoldingDecorationProvider.COLLAPSED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
56
|
-
description: 'folding-collapsed-visual-decoration',
|
|
57
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
58
|
-
afterContentClassName: 'inline-folded',
|
|
59
|
-
isWholeLine: true,
|
|
60
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingCollapsedIcon),
|
|
61
|
-
});
|
|
62
|
-
FoldingDecorationProvider.COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
63
|
-
description: 'folding-collapsed-highlighted-visual-decoration',
|
|
64
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
65
|
-
afterContentClassName: 'inline-folded',
|
|
66
|
-
className: 'folded-background',
|
|
67
|
-
minimap: foldedBackgroundMinimap,
|
|
68
|
-
isWholeLine: true,
|
|
69
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingCollapsedIcon)
|
|
70
|
-
});
|
|
71
|
-
FoldingDecorationProvider.MANUALLY_COLLAPSED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
72
|
-
description: 'folding-manually-collapsed-visual-decoration',
|
|
73
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
74
|
-
afterContentClassName: 'inline-folded',
|
|
75
|
-
isWholeLine: true,
|
|
76
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingManualCollapsedIcon)
|
|
77
|
-
});
|
|
78
|
-
FoldingDecorationProvider.MANUALLY_COLLAPSED_HIGHLIGHTED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
79
|
-
description: 'folding-manually-collapsed-highlighted-visual-decoration',
|
|
80
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
81
|
-
afterContentClassName: 'inline-folded',
|
|
82
|
-
className: 'folded-background',
|
|
83
|
-
minimap: foldedBackgroundMinimap,
|
|
84
|
-
isWholeLine: true,
|
|
85
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingManualCollapsedIcon)
|
|
86
|
-
});
|
|
87
|
-
FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_RANGE_DECORATION = ModelDecorationOptions.register({
|
|
88
|
-
description: 'folding-no-controls-range-decoration',
|
|
89
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
90
|
-
afterContentClassName: 'inline-folded',
|
|
91
|
-
isWholeLine: true
|
|
92
|
-
});
|
|
93
|
-
FoldingDecorationProvider.NO_CONTROLS_COLLAPSED_HIGHLIGHTED_RANGE_DECORATION = ModelDecorationOptions.register({
|
|
94
|
-
description: 'folding-no-controls-range-decoration',
|
|
95
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
96
|
-
afterContentClassName: 'inline-folded',
|
|
97
|
-
className: 'folded-background',
|
|
98
|
-
minimap: foldedBackgroundMinimap,
|
|
99
|
-
isWholeLine: true
|
|
100
|
-
});
|
|
101
|
-
FoldingDecorationProvider.EXPANDED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
102
|
-
description: 'folding-expanded-visual-decoration',
|
|
103
|
-
stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,
|
|
104
|
-
isWholeLine: true,
|
|
105
|
-
firstLineDecorationClassName: 'alwaysShowFoldIcons ' + ThemeIcon.asClassName(foldingExpandedIcon)
|
|
106
|
-
});
|
|
107
|
-
FoldingDecorationProvider.EXPANDED_AUTO_HIDE_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
108
|
-
description: 'folding-expanded-auto-hide-visual-decoration',
|
|
109
|
-
stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */,
|
|
110
|
-
isWholeLine: true,
|
|
111
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingExpandedIcon)
|
|
112
|
-
});
|
|
113
|
-
FoldingDecorationProvider.MANUALLY_EXPANDED_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
114
|
-
description: 'folding-manually-expanded-visual-decoration',
|
|
115
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
116
|
-
isWholeLine: true,
|
|
117
|
-
firstLineDecorationClassName: 'alwaysShowFoldIcons ' + ThemeIcon.asClassName(foldingManualExpandedIcon)
|
|
118
|
-
});
|
|
119
|
-
FoldingDecorationProvider.MANUALLY_EXPANDED_AUTO_HIDE_VISUAL_DECORATION = ModelDecorationOptions.register({
|
|
120
|
-
description: 'folding-manually-expanded-auto-hide-visual-decoration',
|
|
121
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
122
|
-
isWholeLine: true,
|
|
123
|
-
firstLineDecorationClassName: ThemeIcon.asClassName(foldingManualExpandedIcon)
|
|
124
|
-
});
|
|
125
|
-
FoldingDecorationProvider.NO_CONTROLS_EXPANDED_RANGE_DECORATION = ModelDecorationOptions.register({
|
|
126
|
-
description: 'folding-no-controls-range-decoration',
|
|
127
|
-
stickiness: 0 /* TrackedRangeStickiness.AlwaysGrowsWhenTypingAtEdges */,
|
|
128
|
-
isWholeLine: true
|
|
129
|
-
});
|
|
130
|
-
FoldingDecorationProvider.HIDDEN_RANGE_DECORATION = ModelDecorationOptions.register({
|
|
131
|
-
description: 'folding-hidden-range-decoration',
|
|
132
|
-
stickiness: 1 /* TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges */
|
|
133
|
-
});
|
|
@@ -1,538 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
3
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Emitter } from '../../../../base/common/event.js';
|
|
6
|
-
import { FoldingRegions } from './foldingRanges.js';
|
|
7
|
-
import { hash } from '../../../../base/common/hash.js';
|
|
8
|
-
export class FoldingModel {
|
|
9
|
-
get regions() { return this._regions; }
|
|
10
|
-
get textModel() { return this._textModel; }
|
|
11
|
-
constructor(textModel, decorationProvider) {
|
|
12
|
-
this._updateEventEmitter = new Emitter();
|
|
13
|
-
this.onDidChange = this._updateEventEmitter.event;
|
|
14
|
-
this._textModel = textModel;
|
|
15
|
-
this._decorationProvider = decorationProvider;
|
|
16
|
-
this._regions = new FoldingRegions(new Uint32Array(0), new Uint32Array(0));
|
|
17
|
-
this._editorDecorationIds = [];
|
|
18
|
-
}
|
|
19
|
-
toggleCollapseState(toggledRegions) {
|
|
20
|
-
if (!toggledRegions.length) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
toggledRegions = toggledRegions.sort((r1, r2) => r1.regionIndex - r2.regionIndex);
|
|
24
|
-
const processed = {};
|
|
25
|
-
this._decorationProvider.changeDecorations(accessor => {
|
|
26
|
-
let k = 0; // index from [0 ... this.regions.length]
|
|
27
|
-
let dirtyRegionEndLine = -1; // end of the range where decorations need to be updated
|
|
28
|
-
let lastHiddenLine = -1; // the end of the last hidden lines
|
|
29
|
-
const updateDecorationsUntil = (index) => {
|
|
30
|
-
while (k < index) {
|
|
31
|
-
const endLineNumber = this._regions.getEndLineNumber(k);
|
|
32
|
-
const isCollapsed = this._regions.isCollapsed(k);
|
|
33
|
-
if (endLineNumber <= dirtyRegionEndLine) {
|
|
34
|
-
const isManual = this.regions.getSource(k) !== 0 /* FoldSource.provider */;
|
|
35
|
-
accessor.changeDecorationOptions(this._editorDecorationIds[k], this._decorationProvider.getDecorationOption(isCollapsed, endLineNumber <= lastHiddenLine, isManual));
|
|
36
|
-
}
|
|
37
|
-
if (isCollapsed && endLineNumber > lastHiddenLine) {
|
|
38
|
-
lastHiddenLine = endLineNumber;
|
|
39
|
-
}
|
|
40
|
-
k++;
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
for (const region of toggledRegions) {
|
|
44
|
-
const index = region.regionIndex;
|
|
45
|
-
const editorDecorationId = this._editorDecorationIds[index];
|
|
46
|
-
if (editorDecorationId && !processed[editorDecorationId]) {
|
|
47
|
-
processed[editorDecorationId] = true;
|
|
48
|
-
updateDecorationsUntil(index); // update all decorations up to current index using the old dirtyRegionEndLine
|
|
49
|
-
const newCollapseState = !this._regions.isCollapsed(index);
|
|
50
|
-
this._regions.setCollapsed(index, newCollapseState);
|
|
51
|
-
dirtyRegionEndLine = Math.max(dirtyRegionEndLine, this._regions.getEndLineNumber(index));
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
updateDecorationsUntil(this._regions.length);
|
|
55
|
-
});
|
|
56
|
-
this._updateEventEmitter.fire({ model: this, collapseStateChanged: toggledRegions });
|
|
57
|
-
}
|
|
58
|
-
removeManualRanges(ranges) {
|
|
59
|
-
const newFoldingRanges = new Array();
|
|
60
|
-
const intersects = (foldRange) => {
|
|
61
|
-
for (const range of ranges) {
|
|
62
|
-
if (!(range.startLineNumber > foldRange.endLineNumber || foldRange.startLineNumber > range.endLineNumber)) {
|
|
63
|
-
return true;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return false;
|
|
67
|
-
};
|
|
68
|
-
for (let i = 0; i < this._regions.length; i++) {
|
|
69
|
-
const foldRange = this._regions.toFoldRange(i);
|
|
70
|
-
if (foldRange.source === 0 /* FoldSource.provider */ || !intersects(foldRange)) {
|
|
71
|
-
newFoldingRanges.push(foldRange);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
this.updatePost(FoldingRegions.fromFoldRanges(newFoldingRanges));
|
|
75
|
-
}
|
|
76
|
-
update(newRegions, blockedLineNumers = []) {
|
|
77
|
-
const foldedOrManualRanges = this._currentFoldedOrManualRanges(blockedLineNumers);
|
|
78
|
-
const newRanges = FoldingRegions.sanitizeAndMerge(newRegions, foldedOrManualRanges, this._textModel.getLineCount());
|
|
79
|
-
this.updatePost(FoldingRegions.fromFoldRanges(newRanges));
|
|
80
|
-
}
|
|
81
|
-
updatePost(newRegions) {
|
|
82
|
-
const newEditorDecorations = [];
|
|
83
|
-
let lastHiddenLine = -1;
|
|
84
|
-
for (let index = 0, limit = newRegions.length; index < limit; index++) {
|
|
85
|
-
const startLineNumber = newRegions.getStartLineNumber(index);
|
|
86
|
-
const endLineNumber = newRegions.getEndLineNumber(index);
|
|
87
|
-
const isCollapsed = newRegions.isCollapsed(index);
|
|
88
|
-
const isManual = newRegions.getSource(index) !== 0 /* FoldSource.provider */;
|
|
89
|
-
const decorationRange = {
|
|
90
|
-
startLineNumber: startLineNumber,
|
|
91
|
-
startColumn: this._textModel.getLineMaxColumn(startLineNumber),
|
|
92
|
-
endLineNumber: endLineNumber,
|
|
93
|
-
endColumn: this._textModel.getLineMaxColumn(endLineNumber) + 1
|
|
94
|
-
};
|
|
95
|
-
newEditorDecorations.push({ range: decorationRange, options: this._decorationProvider.getDecorationOption(isCollapsed, endLineNumber <= lastHiddenLine, isManual) });
|
|
96
|
-
if (isCollapsed && endLineNumber > lastHiddenLine) {
|
|
97
|
-
lastHiddenLine = endLineNumber;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
this._decorationProvider.changeDecorations(accessor => this._editorDecorationIds = accessor.deltaDecorations(this._editorDecorationIds, newEditorDecorations));
|
|
101
|
-
this._regions = newRegions;
|
|
102
|
-
this._updateEventEmitter.fire({ model: this });
|
|
103
|
-
}
|
|
104
|
-
_currentFoldedOrManualRanges(blockedLineNumers = []) {
|
|
105
|
-
const isBlocked = (startLineNumber, endLineNumber) => {
|
|
106
|
-
for (const blockedLineNumber of blockedLineNumers) {
|
|
107
|
-
if (startLineNumber < blockedLineNumber && blockedLineNumber <= endLineNumber) { // first line is visible
|
|
108
|
-
return true;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
return false;
|
|
112
|
-
};
|
|
113
|
-
const foldedRanges = [];
|
|
114
|
-
for (let i = 0, limit = this._regions.length; i < limit; i++) {
|
|
115
|
-
let isCollapsed = this.regions.isCollapsed(i);
|
|
116
|
-
const source = this.regions.getSource(i);
|
|
117
|
-
if (isCollapsed || source !== 0 /* FoldSource.provider */) {
|
|
118
|
-
const foldRange = this._regions.toFoldRange(i);
|
|
119
|
-
const decRange = this._textModel.getDecorationRange(this._editorDecorationIds[i]);
|
|
120
|
-
if (decRange) {
|
|
121
|
-
if (isCollapsed && isBlocked(decRange.startLineNumber, decRange.endLineNumber)) {
|
|
122
|
-
isCollapsed = false; // uncollapse is the range is blocked
|
|
123
|
-
}
|
|
124
|
-
foldedRanges.push({
|
|
125
|
-
startLineNumber: decRange.startLineNumber,
|
|
126
|
-
endLineNumber: decRange.endLineNumber,
|
|
127
|
-
type: foldRange.type,
|
|
128
|
-
isCollapsed,
|
|
129
|
-
source
|
|
130
|
-
});
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
return foldedRanges;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Collapse state memento, for persistence only
|
|
138
|
-
*/
|
|
139
|
-
getMemento() {
|
|
140
|
-
const foldedOrManualRanges = this._currentFoldedOrManualRanges();
|
|
141
|
-
const result = [];
|
|
142
|
-
const maxLineNumber = this._textModel.getLineCount();
|
|
143
|
-
for (let i = 0, limit = foldedOrManualRanges.length; i < limit; i++) {
|
|
144
|
-
const range = foldedOrManualRanges[i];
|
|
145
|
-
if (range.startLineNumber >= range.endLineNumber || range.startLineNumber < 1 || range.endLineNumber > maxLineNumber) {
|
|
146
|
-
continue;
|
|
147
|
-
}
|
|
148
|
-
const checksum = this._getLinesChecksum(range.startLineNumber + 1, range.endLineNumber);
|
|
149
|
-
result.push({
|
|
150
|
-
startLineNumber: range.startLineNumber,
|
|
151
|
-
endLineNumber: range.endLineNumber,
|
|
152
|
-
isCollapsed: range.isCollapsed,
|
|
153
|
-
source: range.source,
|
|
154
|
-
checksum: checksum
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
return (result.length > 0) ? result : undefined;
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Apply persisted state, for persistence only
|
|
161
|
-
*/
|
|
162
|
-
applyMemento(state) {
|
|
163
|
-
var _a, _b;
|
|
164
|
-
if (!Array.isArray(state)) {
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
const rangesToRestore = [];
|
|
168
|
-
const maxLineNumber = this._textModel.getLineCount();
|
|
169
|
-
for (const range of state) {
|
|
170
|
-
if (range.startLineNumber >= range.endLineNumber || range.startLineNumber < 1 || range.endLineNumber > maxLineNumber) {
|
|
171
|
-
continue;
|
|
172
|
-
}
|
|
173
|
-
const checksum = this._getLinesChecksum(range.startLineNumber + 1, range.endLineNumber);
|
|
174
|
-
if (!range.checksum || checksum === range.checksum) {
|
|
175
|
-
rangesToRestore.push({
|
|
176
|
-
startLineNumber: range.startLineNumber,
|
|
177
|
-
endLineNumber: range.endLineNumber,
|
|
178
|
-
type: undefined,
|
|
179
|
-
isCollapsed: (_a = range.isCollapsed) !== null && _a !== void 0 ? _a : true,
|
|
180
|
-
source: (_b = range.source) !== null && _b !== void 0 ? _b : 0 /* FoldSource.provider */
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
const newRanges = FoldingRegions.sanitizeAndMerge(this._regions, rangesToRestore, maxLineNumber);
|
|
185
|
-
this.updatePost(FoldingRegions.fromFoldRanges(newRanges));
|
|
186
|
-
}
|
|
187
|
-
_getLinesChecksum(lineNumber1, lineNumber2) {
|
|
188
|
-
const h = hash(this._textModel.getLineContent(lineNumber1)
|
|
189
|
-
+ this._textModel.getLineContent(lineNumber2));
|
|
190
|
-
return h % 1000000; // 6 digits is plenty
|
|
191
|
-
}
|
|
192
|
-
dispose() {
|
|
193
|
-
this._decorationProvider.removeDecorations(this._editorDecorationIds);
|
|
194
|
-
}
|
|
195
|
-
getAllRegionsAtLine(lineNumber, filter) {
|
|
196
|
-
const result = [];
|
|
197
|
-
if (this._regions) {
|
|
198
|
-
let index = this._regions.findRange(lineNumber);
|
|
199
|
-
let level = 1;
|
|
200
|
-
while (index >= 0) {
|
|
201
|
-
const current = this._regions.toRegion(index);
|
|
202
|
-
if (!filter || filter(current, level)) {
|
|
203
|
-
result.push(current);
|
|
204
|
-
}
|
|
205
|
-
level++;
|
|
206
|
-
index = current.parentIndex;
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return result;
|
|
210
|
-
}
|
|
211
|
-
getRegionAtLine(lineNumber) {
|
|
212
|
-
if (this._regions) {
|
|
213
|
-
const index = this._regions.findRange(lineNumber);
|
|
214
|
-
if (index >= 0) {
|
|
215
|
-
return this._regions.toRegion(index);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
return null;
|
|
219
|
-
}
|
|
220
|
-
getRegionsInside(region, filter) {
|
|
221
|
-
const result = [];
|
|
222
|
-
const index = region ? region.regionIndex + 1 : 0;
|
|
223
|
-
const endLineNumber = region ? region.endLineNumber : Number.MAX_VALUE;
|
|
224
|
-
if (filter && filter.length === 2) {
|
|
225
|
-
const levelStack = [];
|
|
226
|
-
for (let i = index, len = this._regions.length; i < len; i++) {
|
|
227
|
-
const current = this._regions.toRegion(i);
|
|
228
|
-
if (this._regions.getStartLineNumber(i) < endLineNumber) {
|
|
229
|
-
while (levelStack.length > 0 && !current.containedBy(levelStack[levelStack.length - 1])) {
|
|
230
|
-
levelStack.pop();
|
|
231
|
-
}
|
|
232
|
-
levelStack.push(current);
|
|
233
|
-
if (filter(current, levelStack.length)) {
|
|
234
|
-
result.push(current);
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
else {
|
|
238
|
-
break;
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
else {
|
|
243
|
-
for (let i = index, len = this._regions.length; i < len; i++) {
|
|
244
|
-
const current = this._regions.toRegion(i);
|
|
245
|
-
if (this._regions.getStartLineNumber(i) < endLineNumber) {
|
|
246
|
-
if (!filter || filter(current)) {
|
|
247
|
-
result.push(current);
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
else {
|
|
251
|
-
break;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
return result;
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
/**
|
|
259
|
-
* Collapse or expand the regions at the given locations
|
|
260
|
-
* @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.
|
|
261
|
-
* @param lineNumbers the location of the regions to collapse or expand, or if not set, all regions in the model.
|
|
262
|
-
*/
|
|
263
|
-
export function toggleCollapseState(foldingModel, levels, lineNumbers) {
|
|
264
|
-
const toToggle = [];
|
|
265
|
-
for (const lineNumber of lineNumbers) {
|
|
266
|
-
const region = foldingModel.getRegionAtLine(lineNumber);
|
|
267
|
-
if (region) {
|
|
268
|
-
const doCollapse = !region.isCollapsed;
|
|
269
|
-
toToggle.push(region);
|
|
270
|
-
if (levels > 1) {
|
|
271
|
-
const regionsInside = foldingModel.getRegionsInside(region, (r, level) => r.isCollapsed !== doCollapse && level < levels);
|
|
272
|
-
toToggle.push(...regionsInside);
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* Collapse or expand the regions at the given locations including all children.
|
|
280
|
-
* @param doCollapse Whether to collapse or expand
|
|
281
|
-
* @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.
|
|
282
|
-
* @param lineNumbers the location of the regions to collapse or expand, or if not set, all regions in the model.
|
|
283
|
-
*/
|
|
284
|
-
export function setCollapseStateLevelsDown(foldingModel, doCollapse, levels = Number.MAX_VALUE, lineNumbers) {
|
|
285
|
-
const toToggle = [];
|
|
286
|
-
if (lineNumbers && lineNumbers.length > 0) {
|
|
287
|
-
for (const lineNumber of lineNumbers) {
|
|
288
|
-
const region = foldingModel.getRegionAtLine(lineNumber);
|
|
289
|
-
if (region) {
|
|
290
|
-
if (region.isCollapsed !== doCollapse) {
|
|
291
|
-
toToggle.push(region);
|
|
292
|
-
}
|
|
293
|
-
if (levels > 1) {
|
|
294
|
-
const regionsInside = foldingModel.getRegionsInside(region, (r, level) => r.isCollapsed !== doCollapse && level < levels);
|
|
295
|
-
toToggle.push(...regionsInside);
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
else {
|
|
301
|
-
const regionsInside = foldingModel.getRegionsInside(null, (r, level) => r.isCollapsed !== doCollapse && level < levels);
|
|
302
|
-
toToggle.push(...regionsInside);
|
|
303
|
-
}
|
|
304
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
305
|
-
}
|
|
306
|
-
/**
|
|
307
|
-
* Collapse or expand the regions at the given locations including all parents.
|
|
308
|
-
* @param doCollapse Whether to collapse or expand
|
|
309
|
-
* @param levels The number of levels. Use 1 to only impact the regions at the location, use Number.MAX_VALUE for all levels.
|
|
310
|
-
* @param lineNumbers the location of the regions to collapse or expand.
|
|
311
|
-
*/
|
|
312
|
-
export function setCollapseStateLevelsUp(foldingModel, doCollapse, levels, lineNumbers) {
|
|
313
|
-
const toToggle = [];
|
|
314
|
-
for (const lineNumber of lineNumbers) {
|
|
315
|
-
const regions = foldingModel.getAllRegionsAtLine(lineNumber, (region, level) => region.isCollapsed !== doCollapse && level <= levels);
|
|
316
|
-
toToggle.push(...regions);
|
|
317
|
-
}
|
|
318
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
319
|
-
}
|
|
320
|
-
/**
|
|
321
|
-
* Collapse or expand a region at the given locations. If the inner most region is already collapsed/expanded, uses the first parent instead.
|
|
322
|
-
* @param doCollapse Whether to collapse or expand
|
|
323
|
-
* @param lineNumbers the location of the regions to collapse or expand.
|
|
324
|
-
*/
|
|
325
|
-
export function setCollapseStateUp(foldingModel, doCollapse, lineNumbers) {
|
|
326
|
-
const toToggle = [];
|
|
327
|
-
for (const lineNumber of lineNumbers) {
|
|
328
|
-
const regions = foldingModel.getAllRegionsAtLine(lineNumber, (region) => region.isCollapsed !== doCollapse);
|
|
329
|
-
if (regions.length > 0) {
|
|
330
|
-
toToggle.push(regions[0]);
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* Folds or unfolds all regions that have a given level, except if they contain one of the blocked lines.
|
|
337
|
-
* @param foldLevel level. Level == 1 is the top level
|
|
338
|
-
* @param doCollapse Whether to collapse or expand
|
|
339
|
-
*/
|
|
340
|
-
export function setCollapseStateAtLevel(foldingModel, foldLevel, doCollapse, blockedLineNumbers) {
|
|
341
|
-
const filter = (region, level) => level === foldLevel && region.isCollapsed !== doCollapse && !blockedLineNumbers.some(line => region.containsLine(line));
|
|
342
|
-
const toToggle = foldingModel.getRegionsInside(null, filter);
|
|
343
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
344
|
-
}
|
|
345
|
-
/**
|
|
346
|
-
* Folds or unfolds all regions, except if they contain or are contained by a region of one of the blocked lines.
|
|
347
|
-
* @param doCollapse Whether to collapse or expand
|
|
348
|
-
* @param blockedLineNumbers the location of regions to not collapse or expand
|
|
349
|
-
*/
|
|
350
|
-
export function setCollapseStateForRest(foldingModel, doCollapse, blockedLineNumbers) {
|
|
351
|
-
const filteredRegions = [];
|
|
352
|
-
for (const lineNumber of blockedLineNumbers) {
|
|
353
|
-
const regions = foldingModel.getAllRegionsAtLine(lineNumber, undefined);
|
|
354
|
-
if (regions.length > 0) {
|
|
355
|
-
filteredRegions.push(regions[0]);
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
const filter = (region) => filteredRegions.every((filteredRegion) => !filteredRegion.containedBy(region) && !region.containedBy(filteredRegion)) && region.isCollapsed !== doCollapse;
|
|
359
|
-
const toToggle = foldingModel.getRegionsInside(null, filter);
|
|
360
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
361
|
-
}
|
|
362
|
-
/**
|
|
363
|
-
* Folds all regions for which the lines start with a given regex
|
|
364
|
-
* @param foldingModel the folding model
|
|
365
|
-
*/
|
|
366
|
-
export function setCollapseStateForMatchingLines(foldingModel, regExp, doCollapse) {
|
|
367
|
-
const editorModel = foldingModel.textModel;
|
|
368
|
-
const regions = foldingModel.regions;
|
|
369
|
-
const toToggle = [];
|
|
370
|
-
for (let i = regions.length - 1; i >= 0; i--) {
|
|
371
|
-
if (doCollapse !== regions.isCollapsed(i)) {
|
|
372
|
-
const startLineNumber = regions.getStartLineNumber(i);
|
|
373
|
-
if (regExp.test(editorModel.getLineContent(startLineNumber))) {
|
|
374
|
-
toToggle.push(regions.toRegion(i));
|
|
375
|
-
}
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
379
|
-
}
|
|
380
|
-
/**
|
|
381
|
-
* Folds all regions of the given type
|
|
382
|
-
* @param foldingModel the folding model
|
|
383
|
-
*/
|
|
384
|
-
export function setCollapseStateForType(foldingModel, type, doCollapse) {
|
|
385
|
-
const regions = foldingModel.regions;
|
|
386
|
-
const toToggle = [];
|
|
387
|
-
for (let i = regions.length - 1; i >= 0; i--) {
|
|
388
|
-
if (doCollapse !== regions.isCollapsed(i) && type === regions.getType(i)) {
|
|
389
|
-
toToggle.push(regions.toRegion(i));
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
foldingModel.toggleCollapseState(toToggle);
|
|
393
|
-
}
|
|
394
|
-
/**
|
|
395
|
-
* Get line to go to for parent fold of current line
|
|
396
|
-
* @param lineNumber the current line number
|
|
397
|
-
* @param foldingModel the folding model
|
|
398
|
-
*
|
|
399
|
-
* @return Parent fold start line
|
|
400
|
-
*/
|
|
401
|
-
export function getParentFoldLine(lineNumber, foldingModel) {
|
|
402
|
-
let startLineNumber = null;
|
|
403
|
-
const foldingRegion = foldingModel.getRegionAtLine(lineNumber);
|
|
404
|
-
if (foldingRegion !== null) {
|
|
405
|
-
startLineNumber = foldingRegion.startLineNumber;
|
|
406
|
-
// If current line is not the start of the current fold, go to top line of current fold. If not, go to parent fold
|
|
407
|
-
if (lineNumber === startLineNumber) {
|
|
408
|
-
const parentFoldingIdx = foldingRegion.parentIndex;
|
|
409
|
-
if (parentFoldingIdx !== -1) {
|
|
410
|
-
startLineNumber = foldingModel.regions.getStartLineNumber(parentFoldingIdx);
|
|
411
|
-
}
|
|
412
|
-
else {
|
|
413
|
-
startLineNumber = null;
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
return startLineNumber;
|
|
418
|
-
}
|
|
419
|
-
/**
|
|
420
|
-
* Get line to go to for previous fold at the same level of current line
|
|
421
|
-
* @param lineNumber the current line number
|
|
422
|
-
* @param foldingModel the folding model
|
|
423
|
-
*
|
|
424
|
-
* @return Previous fold start line
|
|
425
|
-
*/
|
|
426
|
-
export function getPreviousFoldLine(lineNumber, foldingModel) {
|
|
427
|
-
let foldingRegion = foldingModel.getRegionAtLine(lineNumber);
|
|
428
|
-
// If on the folding range start line, go to previous sibling.
|
|
429
|
-
if (foldingRegion !== null && foldingRegion.startLineNumber === lineNumber) {
|
|
430
|
-
// If current line is not the start of the current fold, go to top line of current fold. If not, go to previous fold.
|
|
431
|
-
if (lineNumber !== foldingRegion.startLineNumber) {
|
|
432
|
-
return foldingRegion.startLineNumber;
|
|
433
|
-
}
|
|
434
|
-
else {
|
|
435
|
-
// Find min line number to stay within parent.
|
|
436
|
-
const expectedParentIndex = foldingRegion.parentIndex;
|
|
437
|
-
let minLineNumber = 0;
|
|
438
|
-
if (expectedParentIndex !== -1) {
|
|
439
|
-
minLineNumber = foldingModel.regions.getStartLineNumber(foldingRegion.parentIndex);
|
|
440
|
-
}
|
|
441
|
-
// Find fold at same level.
|
|
442
|
-
while (foldingRegion !== null) {
|
|
443
|
-
if (foldingRegion.regionIndex > 0) {
|
|
444
|
-
foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex - 1);
|
|
445
|
-
// Keep at same level.
|
|
446
|
-
if (foldingRegion.startLineNumber <= minLineNumber) {
|
|
447
|
-
return null;
|
|
448
|
-
}
|
|
449
|
-
else if (foldingRegion.parentIndex === expectedParentIndex) {
|
|
450
|
-
return foldingRegion.startLineNumber;
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
else {
|
|
454
|
-
return null;
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
|
-
}
|
|
458
|
-
}
|
|
459
|
-
else {
|
|
460
|
-
// Go to last fold that's before the current line.
|
|
461
|
-
if (foldingModel.regions.length > 0) {
|
|
462
|
-
foldingRegion = foldingModel.regions.toRegion(foldingModel.regions.length - 1);
|
|
463
|
-
while (foldingRegion !== null) {
|
|
464
|
-
// Found fold before current line.
|
|
465
|
-
if (foldingRegion.startLineNumber < lineNumber) {
|
|
466
|
-
return foldingRegion.startLineNumber;
|
|
467
|
-
}
|
|
468
|
-
if (foldingRegion.regionIndex > 0) {
|
|
469
|
-
foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex - 1);
|
|
470
|
-
}
|
|
471
|
-
else {
|
|
472
|
-
foldingRegion = null;
|
|
473
|
-
}
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
}
|
|
477
|
-
return null;
|
|
478
|
-
}
|
|
479
|
-
/**
|
|
480
|
-
* Get line to go to next fold at the same level of current line
|
|
481
|
-
* @param lineNumber the current line number
|
|
482
|
-
* @param foldingModel the folding model
|
|
483
|
-
*
|
|
484
|
-
* @return Next fold start line
|
|
485
|
-
*/
|
|
486
|
-
export function getNextFoldLine(lineNumber, foldingModel) {
|
|
487
|
-
let foldingRegion = foldingModel.getRegionAtLine(lineNumber);
|
|
488
|
-
// If on the folding range start line, go to next sibling.
|
|
489
|
-
if (foldingRegion !== null && foldingRegion.startLineNumber === lineNumber) {
|
|
490
|
-
// Find max line number to stay within parent.
|
|
491
|
-
const expectedParentIndex = foldingRegion.parentIndex;
|
|
492
|
-
let maxLineNumber = 0;
|
|
493
|
-
if (expectedParentIndex !== -1) {
|
|
494
|
-
maxLineNumber = foldingModel.regions.getEndLineNumber(foldingRegion.parentIndex);
|
|
495
|
-
}
|
|
496
|
-
else if (foldingModel.regions.length === 0) {
|
|
497
|
-
return null;
|
|
498
|
-
}
|
|
499
|
-
else {
|
|
500
|
-
maxLineNumber = foldingModel.regions.getEndLineNumber(foldingModel.regions.length - 1);
|
|
501
|
-
}
|
|
502
|
-
// Find fold at same level.
|
|
503
|
-
while (foldingRegion !== null) {
|
|
504
|
-
if (foldingRegion.regionIndex < foldingModel.regions.length) {
|
|
505
|
-
foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex + 1);
|
|
506
|
-
// Keep at same level.
|
|
507
|
-
if (foldingRegion.startLineNumber >= maxLineNumber) {
|
|
508
|
-
return null;
|
|
509
|
-
}
|
|
510
|
-
else if (foldingRegion.parentIndex === expectedParentIndex) {
|
|
511
|
-
return foldingRegion.startLineNumber;
|
|
512
|
-
}
|
|
513
|
-
}
|
|
514
|
-
else {
|
|
515
|
-
return null;
|
|
516
|
-
}
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
|
-
else {
|
|
520
|
-
// Go to first fold that's after the current line.
|
|
521
|
-
if (foldingModel.regions.length > 0) {
|
|
522
|
-
foldingRegion = foldingModel.regions.toRegion(0);
|
|
523
|
-
while (foldingRegion !== null) {
|
|
524
|
-
// Found fold after current line.
|
|
525
|
-
if (foldingRegion.startLineNumber > lineNumber) {
|
|
526
|
-
return foldingRegion.startLineNumber;
|
|
527
|
-
}
|
|
528
|
-
if (foldingRegion.regionIndex < foldingModel.regions.length) {
|
|
529
|
-
foldingRegion = foldingModel.regions.toRegion(foldingRegion.regionIndex + 1);
|
|
530
|
-
}
|
|
531
|
-
else {
|
|
532
|
-
foldingRegion = null;
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
}
|
|
536
|
-
}
|
|
537
|
-
return null;
|
|
538
|
-
}
|