@opensumi/ide-core-common 2.12.1-next-079c1930
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/lib/application-error.d.ts +36 -0
- package/lib/application-error.d.ts.map +1 -0
- package/lib/application-error.js +64 -0
- package/lib/application-error.js.map +1 -0
- package/lib/application-props.d.ts +26 -0
- package/lib/application-props.d.ts.map +1 -0
- package/lib/application-props.js +3 -0
- package/lib/application-props.js.map +1 -0
- package/lib/arrays.d.ts +131 -0
- package/lib/arrays.d.ts.map +1 -0
- package/lib/arrays.js +533 -0
- package/lib/arrays.js.map +1 -0
- package/lib/async.d.ts +165 -0
- package/lib/async.d.ts.map +1 -0
- package/lib/async.js +417 -0
- package/lib/async.js.map +1 -0
- package/lib/browser-fs/ensure-dir.d.ts +7 -0
- package/lib/browser-fs/ensure-dir.d.ts.map +1 -0
- package/lib/browser-fs/ensure-dir.js +40 -0
- package/lib/browser-fs/ensure-dir.js.map +1 -0
- package/lib/browser-fs/util.d.ts +18 -0
- package/lib/browser-fs/util.d.ts.map +1 -0
- package/lib/browser-fs/util.js +21 -0
- package/lib/browser-fs/util.js.map +1 -0
- package/lib/cache.d.ts +12 -0
- package/lib/cache.d.ts.map +1 -0
- package/lib/cache.js +36 -0
- package/lib/cache.js.map +1 -0
- package/lib/cancellation.d.ts +23 -0
- package/lib/cancellation.d.ts.map +1 -0
- package/lib/cancellation.js +116 -0
- package/lib/cancellation.js.map +1 -0
- package/lib/charCode.d.ts +406 -0
- package/lib/charCode.d.ts.map +1 -0
- package/lib/charCode.js +8 -0
- package/lib/charCode.js.map +1 -0
- package/lib/character-classifier.d.ts +25 -0
- package/lib/character-classifier.d.ts.map +1 -0
- package/lib/character-classifier.js +58 -0
- package/lib/character-classifier.js.map +1 -0
- package/lib/command.d.ts +350 -0
- package/lib/command.d.ts.map +1 -0
- package/lib/command.js +408 -0
- package/lib/command.js.map +1 -0
- package/lib/connection.d.ts +8 -0
- package/lib/connection.d.ts.map +1 -0
- package/lib/connection.js +17 -0
- package/lib/connection.js.map +1 -0
- package/lib/const/application.d.ts +3 -0
- package/lib/const/application.d.ts.map +1 -0
- package/lib/const/application.js +6 -0
- package/lib/const/application.js.map +1 -0
- package/lib/const/encodings.d.ts +10 -0
- package/lib/const/encodings.d.ts.map +1 -0
- package/lib/const/encodings.js +244 -0
- package/lib/const/encodings.js.map +1 -0
- package/lib/const/index.d.ts +2 -0
- package/lib/const/index.d.ts.map +1 -0
- package/lib/const/index.js +5 -0
- package/lib/const/index.js.map +1 -0
- package/lib/contribution-provider.d.ts +38 -0
- package/lib/contribution-provider.d.ts.map +1 -0
- package/lib/contribution-provider.js +60 -0
- package/lib/contribution-provider.js.map +1 -0
- package/lib/credential.d.ts +21 -0
- package/lib/credential.d.ts.map +1 -0
- package/lib/credential.js +6 -0
- package/lib/credential.js.map +1 -0
- package/lib/cryptr.d.ts +7 -0
- package/lib/cryptr.d.ts.map +1 -0
- package/lib/cryptr.js +6 -0
- package/lib/cryptr.js.map +1 -0
- package/lib/date.d.ts +2 -0
- package/lib/date.d.ts.map +1 -0
- package/lib/date.js +16 -0
- package/lib/date.js.map +1 -0
- package/lib/declare.d.ts +3 -0
- package/lib/declare.d.ts.map +1 -0
- package/lib/declare.js +3 -0
- package/lib/declare.js.map +1 -0
- package/lib/di-helper/domain-helper.d.ts +14 -0
- package/lib/di-helper/domain-helper.d.ts.map +1 -0
- package/lib/di-helper/domain-helper.js +48 -0
- package/lib/di-helper/domain-helper.js.map +1 -0
- package/lib/di-helper/index.d.ts +2 -0
- package/lib/di-helper/index.d.ts.map +1 -0
- package/lib/di-helper/index.js +5 -0
- package/lib/di-helper/index.js.map +1 -0
- package/lib/disposable.d.ts +88 -0
- package/lib/disposable.d.ts.map +1 -0
- package/lib/disposable.js +309 -0
- package/lib/disposable.js.map +1 -0
- package/lib/electron.d.ts +118 -0
- package/lib/electron.d.ts.map +1 -0
- package/lib/electron.js +7 -0
- package/lib/electron.js.map +1 -0
- package/lib/encoding/index.d.ts +34 -0
- package/lib/encoding/index.d.ts.map +1 -0
- package/lib/encoding/index.js +219 -0
- package/lib/encoding/index.js.map +1 -0
- package/lib/env.d.ts +2 -0
- package/lib/env.d.ts.map +1 -0
- package/lib/env.js +5 -0
- package/lib/env.js.map +1 -0
- package/lib/errors.d.ts +60 -0
- package/lib/errors.d.ts.map +1 -0
- package/lib/errors.js +148 -0
- package/lib/errors.js.map +1 -0
- package/lib/event-bus/basic-event.d.ts +5 -0
- package/lib/event-bus/basic-event.d.ts.map +1 -0
- package/lib/event-bus/basic-event.js +10 -0
- package/lib/event-bus/basic-event.js.map +1 -0
- package/lib/event-bus/event-bus-types.d.ts +66 -0
- package/lib/event-bus/event-bus-types.d.ts.map +1 -0
- package/lib/event-bus/event-bus-types.js +5 -0
- package/lib/event-bus/event-bus-types.js.map +1 -0
- package/lib/event-bus/event-bus.d.ts +13 -0
- package/lib/event-bus/event-bus.d.ts.map +1 -0
- package/lib/event-bus/event-bus.js +55 -0
- package/lib/event-bus/event-bus.js.map +1 -0
- package/lib/event-bus/event-decorator.d.ts +10 -0
- package/lib/event-bus/event-decorator.d.ts.map +1 -0
- package/lib/event-bus/event-decorator.js +34 -0
- package/lib/event-bus/event-decorator.js.map +1 -0
- package/lib/event-bus/index.d.ts +5 -0
- package/lib/event-bus/index.d.ts.map +1 -0
- package/lib/event-bus/index.js +8 -0
- package/lib/event-bus/index.js.map +1 -0
- package/lib/event.d.ts +270 -0
- package/lib/event.d.ts.map +1 -0
- package/lib/event.js +810 -0
- package/lib/event.js.map +1 -0
- package/lib/filters.d.ts +51 -0
- package/lib/filters.d.ts.map +1 -0
- package/lib/filters.js +688 -0
- package/lib/filters.js.map +1 -0
- package/lib/functional.d.ts +4 -0
- package/lib/functional.d.ts.map +1 -0
- package/lib/functional.js +45 -0
- package/lib/functional.js.map +1 -0
- package/lib/hash-calculate/WASMInterface.d.ts +61 -0
- package/lib/hash-calculate/WASMInterface.d.ts.map +1 -0
- package/lib/hash-calculate/WASMInterface.js +180 -0
- package/lib/hash-calculate/WASMInterface.js.map +1 -0
- package/lib/hash-calculate/hash-calculate.d.ts +13 -0
- package/lib/hash-calculate/hash-calculate.d.ts.map +1 -0
- package/lib/hash-calculate/hash-calculate.js +41 -0
- package/lib/hash-calculate/hash-calculate.js.map +1 -0
- package/lib/hash-calculate/lockedCreate.d.ts +4 -0
- package/lib/hash-calculate/lockedCreate.d.ts.map +1 -0
- package/lib/hash-calculate/lockedCreate.js +17 -0
- package/lib/hash-calculate/lockedCreate.js.map +1 -0
- package/lib/hash-calculate/md5.wasm.json +1 -0
- package/lib/hash-calculate/mutex.d.ts +6 -0
- package/lib/hash-calculate/mutex.d.ts.map +1 -0
- package/lib/hash-calculate/mutex.js +32 -0
- package/lib/hash-calculate/mutex.js.map +1 -0
- package/lib/hash-calculate/util.d.ts +12 -0
- package/lib/hash-calculate/util.d.ts.map +1 -0
- package/lib/hash-calculate/util.js +166 -0
- package/lib/hash-calculate/util.js.map +1 -0
- package/lib/id-generator.d.ts +8 -0
- package/lib/id-generator.d.ts.map +1 -0
- package/lib/id-generator.js +15 -0
- package/lib/id-generator.js.map +1 -0
- package/lib/index.d.ts +47 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +50 -0
- package/lib/index.js.map +1 -0
- package/lib/iterator.d.ts +14 -0
- package/lib/iterator.d.ts.map +1 -0
- package/lib/iterator.js +9 -0
- package/lib/iterator.js.map +1 -0
- package/lib/json-schema.d.ts +65 -0
- package/lib/json-schema.d.ts.map +1 -0
- package/lib/json-schema.js +3 -0
- package/lib/json-schema.js.map +1 -0
- package/lib/keyboard/index.d.ts +3 -0
- package/lib/keyboard/index.d.ts.map +1 -0
- package/lib/keyboard/index.js +6 -0
- package/lib/keyboard/index.js.map +1 -0
- package/lib/keyboard/keyboard-layout-provider.d.ts +38 -0
- package/lib/keyboard/keyboard-layout-provider.d.ts.map +1 -0
- package/lib/keyboard/keyboard-layout-provider.js +23 -0
- package/lib/keyboard/keyboard-layout-provider.js.map +1 -0
- package/lib/keyboard/keymap.d.ts +71 -0
- package/lib/keyboard/keymap.d.ts.map +1 -0
- package/lib/keyboard/keymap.js +128 -0
- package/lib/keyboard/keymap.js.map +1 -0
- package/lib/lifecycle.d.ts +17 -0
- package/lib/lifecycle.d.ts.map +1 -0
- package/lib/lifecycle.js +37 -0
- package/lib/lifecycle.js.map +1 -0
- package/lib/line-text.d.ts +17 -0
- package/lib/line-text.d.ts.map +1 -0
- package/lib/line-text.js +72 -0
- package/lib/line-text.js.map +1 -0
- package/lib/linked-list.d.ts +18 -0
- package/lib/linked-list.d.ts.map +1 -0
- package/lib/linked-list.js +138 -0
- package/lib/linked-list.js.map +1 -0
- package/lib/linkedText.d.ts +13 -0
- package/lib/linkedText.d.ts.map +1 -0
- package/lib/linkedText.js +50 -0
- package/lib/linkedText.js.map +1 -0
- package/lib/localize.d.ts +52 -0
- package/lib/localize.d.ts.map +1 -0
- package/lib/localize.js +128 -0
- package/lib/localize.js.map +1 -0
- package/lib/log.d.ts +181 -0
- package/lib/log.d.ts.map +1 -0
- package/lib/log.js +163 -0
- package/lib/log.js.map +1 -0
- package/lib/map.d.ts +124 -0
- package/lib/map.d.ts.map +1 -0
- package/lib/map.js +819 -0
- package/lib/map.js.map +1 -0
- package/lib/menu.d.ts +27 -0
- package/lib/menu.d.ts.map +1 -0
- package/lib/menu.js +5 -0
- package/lib/menu.js.map +1 -0
- package/lib/mocks/electron/browserMock.d.ts +2 -0
- package/lib/mocks/electron/browserMock.d.ts.map +1 -0
- package/lib/mocks/electron/browserMock.js +15 -0
- package/lib/mocks/electron/browserMock.js.map +1 -0
- package/lib/mocks/electron/ipcRenderer.d.ts +13 -0
- package/lib/mocks/electron/ipcRenderer.d.ts.map +1 -0
- package/lib/mocks/electron/ipcRenderer.js +32 -0
- package/lib/mocks/electron/ipcRenderer.js.map +1 -0
- package/lib/module.d.ts +23 -0
- package/lib/module.d.ts.map +1 -0
- package/lib/module.js +22 -0
- package/lib/module.js.map +1 -0
- package/lib/network.d.ts +33 -0
- package/lib/network.d.ts.map +1 -0
- package/lib/network.js +37 -0
- package/lib/network.js.map +1 -0
- package/lib/node/port.d.ts +14 -0
- package/lib/node/port.d.ts.map +1 -0
- package/lib/node/port.js +124 -0
- package/lib/node/port.js.map +1 -0
- package/lib/path.d.ts +92 -0
- package/lib/path.d.ts.map +1 -0
- package/lib/path.js +1711 -0
- package/lib/path.js.map +1 -0
- package/lib/platform.d.ts +48 -0
- package/lib/platform.d.ts.map +1 -0
- package/lib/platform.js +143 -0
- package/lib/platform.js.map +1 -0
- package/lib/preferences/index.d.ts +3 -0
- package/lib/preferences/index.d.ts.map +1 -0
- package/lib/preferences/index.js +6 -0
- package/lib/preferences/index.js.map +1 -0
- package/lib/preferences/preference-schema.d.ts +76 -0
- package/lib/preferences/preference-schema.d.ts.map +1 -0
- package/lib/preferences/preference-schema.js +59 -0
- package/lib/preferences/preference-schema.js.map +1 -0
- package/lib/preferences/preference-scope.d.ts +15 -0
- package/lib/preferences/preference-scope.d.ts.map +1 -0
- package/lib/preferences/preference-scope.js +54 -0
- package/lib/preferences/preference-scope.js.map +1 -0
- package/lib/problem-matcher.d.ts +111 -0
- package/lib/problem-matcher.d.ts.map +1 -0
- package/lib/problem-matcher.js +294 -0
- package/lib/problem-matcher.js.map +1 -0
- package/lib/problem-pattern.d.ts +193 -0
- package/lib/problem-pattern.d.ts.map +1 -0
- package/lib/problem-pattern.js +416 -0
- package/lib/problem-pattern.js.map +1 -0
- package/lib/process.d.ts +5 -0
- package/lib/process.d.ts.map +1 -0
- package/lib/process.js +15 -0
- package/lib/process.js.map +1 -0
- package/lib/progress.d.ts +56 -0
- package/lib/progress.d.ts.map +1 -0
- package/lib/progress.js +25 -0
- package/lib/progress.js.map +1 -0
- package/lib/range.d.ts +7 -0
- package/lib/range.d.ts.map +1 -0
- package/lib/range.js +28 -0
- package/lib/range.js.map +1 -0
- package/lib/reference.d.ts +35 -0
- package/lib/reference.d.ts.map +1 -0
- package/lib/reference.js +122 -0
- package/lib/reference.js.map +1 -0
- package/lib/reporter.d.ts +16 -0
- package/lib/reporter.d.ts.map +1 -0
- package/lib/reporter.js +66 -0
- package/lib/reporter.js.map +1 -0
- package/lib/sequence.d.ts +20 -0
- package/lib/sequence.d.ts.map +1 -0
- package/lib/sequence.js +17 -0
- package/lib/sequence.js.map +1 -0
- package/lib/storage.d.ts +64 -0
- package/lib/storage.d.ts.map +1 -0
- package/lib/storage.js +70 -0
- package/lib/storage.js.map +1 -0
- package/lib/task-definition.d.ts +45 -0
- package/lib/task-definition.d.ts.map +1 -0
- package/lib/task-definition.js +130 -0
- package/lib/task-definition.js.map +1 -0
- package/lib/theme.d.ts +5 -0
- package/lib/theme.d.ts.map +1 -0
- package/lib/theme.js +8 -0
- package/lib/theme.js.map +1 -0
- package/lib/types/accessibility.d.ts +5 -0
- package/lib/types/accessibility.d.ts.map +1 -0
- package/lib/types/accessibility.js +3 -0
- package/lib/types/accessibility.js.map +1 -0
- package/lib/types/application.d.ts +13 -0
- package/lib/types/application.d.ts.map +1 -0
- package/lib/types/application.js +5 -0
- package/lib/types/application.js.map +1 -0
- package/lib/types/authentication.d.ts +90 -0
- package/lib/types/authentication.d.ts.map +1 -0
- package/lib/types/authentication.js +8 -0
- package/lib/types/authentication.js.map +1 -0
- package/lib/types/common.d.ts +10 -0
- package/lib/types/common.d.ts.map +1 -0
- package/lib/types/common.js +6 -0
- package/lib/types/common.js.map +1 -0
- package/lib/types/dnd.d.ts +8 -0
- package/lib/types/dnd.d.ts.map +1 -0
- package/lib/types/dnd.js +9 -0
- package/lib/types/dnd.js.map +1 -0
- package/lib/types/editor.d.ts +157 -0
- package/lib/types/editor.d.ts.map +1 -0
- package/lib/types/editor.js +148 -0
- package/lib/types/editor.js.map +1 -0
- package/lib/types/extension.d.ts +73 -0
- package/lib/types/extension.d.ts.map +1 -0
- package/lib/types/extension.js +28 -0
- package/lib/types/extension.js.map +1 -0
- package/lib/types/file-watch.d.ts +70 -0
- package/lib/types/file-watch.d.ts.map +1 -0
- package/lib/types/file-watch.js +72 -0
- package/lib/types/file-watch.js.map +1 -0
- package/lib/types/file.d.ts +219 -0
- package/lib/types/file.d.ts.map +1 -0
- package/lib/types/file.js +51 -0
- package/lib/types/file.js.map +1 -0
- package/lib/types/index.d.ts +13 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/index.js +16 -0
- package/lib/types/index.js.map +1 -0
- package/lib/types/markers/index.d.ts +3 -0
- package/lib/types/markers/index.d.ts.map +1 -0
- package/lib/types/markers/index.js +6 -0
- package/lib/types/markers/index.js.map +1 -0
- package/lib/types/markers/markers-manager.d.ts +120 -0
- package/lib/types/markers/markers-manager.d.ts.map +1 -0
- package/lib/types/markers/markers-manager.js +307 -0
- package/lib/types/markers/markers-manager.js.map +1 -0
- package/lib/types/markers/markers.d.ts +76 -0
- package/lib/types/markers/markers.d.ts.map +1 -0
- package/lib/types/markers/markers.js +76 -0
- package/lib/types/markers/markers.js.map +1 -0
- package/lib/types/message.d.ts +7 -0
- package/lib/types/message.d.ts.map +1 -0
- package/lib/types/message.js +11 -0
- package/lib/types/message.js.map +1 -0
- package/lib/types/reporter.d.ts +83 -0
- package/lib/types/reporter.d.ts.map +1 -0
- package/lib/types/reporter.js +63 -0
- package/lib/types/reporter.js.map +1 -0
- package/lib/types/string.d.ts +4 -0
- package/lib/types/string.d.ts.map +1 -0
- package/lib/types/string.js +3 -0
- package/lib/types/string.js.map +1 -0
- package/lib/uint.d.ts +32 -0
- package/lib/uint.d.ts.map +1 -0
- package/lib/uint.js +28 -0
- package/lib/uint.js.map +1 -0
- package/lib/uri.d.ts +94 -0
- package/lib/uri.d.ts.map +1 -0
- package/lib/uri.js +226 -0
- package/lib/uri.js.map +1 -0
- package/lib/utils/ansi.d.ts +5 -0
- package/lib/utils/ansi.d.ts.map +1 -0
- package/lib/utils/ansi.js +16 -0
- package/lib/utils/ansi.js.map +1 -0
- package/lib/utils/arrays.d.ts +62 -0
- package/lib/utils/arrays.d.ts.map +1 -0
- package/lib/utils/arrays.js +254 -0
- package/lib/utils/arrays.js.map +1 -0
- package/lib/utils/buffer.d.ts +36 -0
- package/lib/utils/buffer.d.ts.map +1 -0
- package/lib/utils/buffer.js +178 -0
- package/lib/utils/buffer.js.map +1 -0
- package/lib/utils/comparers.d.ts +7 -0
- package/lib/utils/comparers.d.ts.map +1 -0
- package/lib/utils/comparers.js +135 -0
- package/lib/utils/comparers.js.map +1 -0
- package/lib/utils/decorators.d.ts +13 -0
- package/lib/utils/decorators.d.ts.map +1 -0
- package/lib/utils/decorators.js +150 -0
- package/lib/utils/decorators.js.map +1 -0
- package/lib/utils/file-uri.d.ts +30 -0
- package/lib/utils/file-uri.d.ts.map +1 -0
- package/lib/utils/file-uri.js +62 -0
- package/lib/utils/file-uri.js.map +1 -0
- package/lib/utils/glob.d.ts +46 -0
- package/lib/utils/glob.d.ts.map +1 -0
- package/lib/utils/glob.js +546 -0
- package/lib/utils/glob.js.map +1 -0
- package/lib/utils/index.d.ts +14 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +17 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/ipc.d.ts +2 -0
- package/lib/utils/ipc.d.ts.map +1 -0
- package/lib/utils/ipc.js +21 -0
- package/lib/utils/ipc.js.map +1 -0
- package/lib/utils/json.d.ts +78 -0
- package/lib/utils/json.d.ts.map +1 -0
- package/lib/utils/json.js +190 -0
- package/lib/utils/json.js.map +1 -0
- package/lib/utils/marshalling.d.ts +7 -0
- package/lib/utils/marshalling.d.ts.map +1 -0
- package/lib/utils/marshalling.js +57 -0
- package/lib/utils/marshalling.js.map +1 -0
- package/lib/utils/objects.d.ts +6 -0
- package/lib/utils/objects.d.ts.map +1 -0
- package/lib/utils/objects.js +103 -0
- package/lib/utils/objects.js.map +1 -0
- package/lib/utils/os.d.ts +42 -0
- package/lib/utils/os.d.ts.map +1 -0
- package/lib/utils/os.js +94 -0
- package/lib/utils/os.js.map +1 -0
- package/lib/utils/paths.d.ts +35 -0
- package/lib/utils/paths.d.ts.map +1 -0
- package/lib/utils/paths.js +318 -0
- package/lib/utils/paths.js.map +1 -0
- package/lib/utils/promise-util.d.ts +10 -0
- package/lib/utils/promise-util.d.ts.map +1 -0
- package/lib/utils/promise-util.js +17 -0
- package/lib/utils/promise-util.js.map +1 -0
- package/lib/utils/strings.d.ts +177 -0
- package/lib/utils/strings.d.ts.map +1 -0
- package/lib/utils/strings.js +837 -0
- package/lib/utils/strings.js.map +1 -0
- package/lib/utils/types.d.ts +65 -0
- package/lib/utils/types.d.ts.map +1 -0
- package/lib/utils/types.js +194 -0
- package/lib/utils/types.js.map +1 -0
- package/lib/uuid.d.ts +2 -0
- package/lib/uuid.d.ts.map +1 -0
- package/lib/uuid.js +10 -0
- package/lib/uuid.js.map +1 -0
- package/package.json +30 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON对象的值为引用类型的类型
|
|
3
|
+
*/
|
|
4
|
+
export declare type JSONPrimitive = boolean | number | string | null;
|
|
5
|
+
/**
|
|
6
|
+
* JSON对象值类型
|
|
7
|
+
*/
|
|
8
|
+
export declare type JSONValue = JSONPrimitive | JSONObject | JSONArray;
|
|
9
|
+
/**
|
|
10
|
+
* JSON Object值类型
|
|
11
|
+
*/
|
|
12
|
+
export interface JSONObject {
|
|
13
|
+
[key: string]: JSONValue;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* JSON Array值类型
|
|
17
|
+
*/
|
|
18
|
+
export interface JSONArray extends Array<JSONValue> {
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* 只读的JSON Object类型
|
|
22
|
+
*/
|
|
23
|
+
export interface ReadonlyJSONObject {
|
|
24
|
+
readonly [key: string]: ReadonlyJSONValue;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* 只读的JSON Array类型
|
|
28
|
+
*/
|
|
29
|
+
export interface ReadonlyJSONArray extends ReadonlyArray<ReadonlyJSONValue> {
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 只读的JSON值类型
|
|
33
|
+
*/
|
|
34
|
+
export declare type ReadonlyJSONValue = JSONPrimitive | ReadonlyJSONObject | ReadonlyJSONArray;
|
|
35
|
+
/**
|
|
36
|
+
* JSON 工具方法空间
|
|
37
|
+
*/
|
|
38
|
+
export declare namespace JSONUtils {
|
|
39
|
+
/**
|
|
40
|
+
* 冻结的空JSON Object
|
|
41
|
+
*/
|
|
42
|
+
const emptyObject: ReadonlyJSONObject;
|
|
43
|
+
/**
|
|
44
|
+
* 冻结的空JSON Array
|
|
45
|
+
*/
|
|
46
|
+
const emptyArray: ReadonlyJSONArray;
|
|
47
|
+
/**
|
|
48
|
+
* 判断JSON是否为普通类型值,如JSONPrimitive
|
|
49
|
+
* @param value
|
|
50
|
+
*/
|
|
51
|
+
function isPrimitive(value: ReadonlyJSONValue): value is JSONPrimitive;
|
|
52
|
+
/**
|
|
53
|
+
* 判断JSON值是否为Array
|
|
54
|
+
* @param value
|
|
55
|
+
*/
|
|
56
|
+
function isArray(value: JSONValue): value is JSONArray;
|
|
57
|
+
function isArray(value: ReadonlyJSONValue): value is ReadonlyJSONArray;
|
|
58
|
+
/**
|
|
59
|
+
* 判断JSON值是否为Object.
|
|
60
|
+
* @param value
|
|
61
|
+
*/
|
|
62
|
+
function isObject(value: JSONValue): value is JSONObject;
|
|
63
|
+
function isObject(value: ReadonlyJSONValue): value is ReadonlyJSONObject;
|
|
64
|
+
/**
|
|
65
|
+
* 判断两个值是否深层相等
|
|
66
|
+
* @param first
|
|
67
|
+
* @param second
|
|
68
|
+
*/
|
|
69
|
+
function deepEqual(first: ReadonlyJSONValue, second: ReadonlyJSONValue): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* 深拷贝JSON值
|
|
72
|
+
* @param value
|
|
73
|
+
*/
|
|
74
|
+
function deepCopy<T extends ReadonlyJSONValue>(value: T): T;
|
|
75
|
+
}
|
|
76
|
+
export declare function parseWithComments<T>(content: any): T;
|
|
77
|
+
export declare function stripTrailingComma(content: string): string;
|
|
78
|
+
//# sourceMappingURL=json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAG7D;;GAEG;AACH,oBAAY,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,SAAS,CAAC;AAG/D;;GAEG;AACH,MAAM,WAAW,UAAU;IAAG,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;CAAE;AAGzD;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC;CAAI;AAGvD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAAG,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAAC;CAAE;AAGlF;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,aAAa,CAAC,iBAAiB,CAAC;CAAI;AAG/E;;GAEG;AACH,oBAAY,iBAAiB,GAAG,aAAa,GAAG,kBAAkB,GAAG,iBAAiB,CAAC;AAGvF;;GAEG;AACH,yBAAiB,SAAS,CAAC;IACzB;;OAEG;IACI,MAAM,WAAW,oBAA0C,CAAC;IAEnE;;OAEG;IACI,MAAM,UAAU,mBAAyC,CAAC;IAEjE;;;OAGG;IACH,SAAgB,WAAW,CAAC,KAAK,EAAE,iBAAiB,GAAG,KAAK,IAAI,aAAa,CAO5E;IAED;;;OAGG;IACH,SAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,SAAS,CAAC;IAC9D,SAAgB,OAAO,CAAC,KAAK,EAAE,iBAAiB,GAAG,KAAK,IAAI,iBAAiB,CAAC;IAK9E;;;OAGG;IACH,SAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,UAAU,CAAC;IAChE,SAAgB,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,KAAK,IAAI,kBAAkB,CAAC;IAKhF;;;;OAIG;IACH,SAAgB,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAqBtF;IAED;;;OAGG;IACH,SAAgB,QAAQ,CAAC,CAAC,SAAS,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAUjE;CA8EF;AAGD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,OAAO,KAAA,GAAG,CAAC,CAI/C;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,UAmCjD"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stripTrailingComma = exports.parseWithComments = exports.JSONUtils = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const strip_json_comments_1 = (0, tslib_1.__importDefault)(require("strip-json-comments"));
|
|
6
|
+
/**
|
|
7
|
+
* JSON 工具方法空间
|
|
8
|
+
*/
|
|
9
|
+
var JSONUtils;
|
|
10
|
+
(function (JSONUtils) {
|
|
11
|
+
/**
|
|
12
|
+
* 冻结的空JSON Object
|
|
13
|
+
*/
|
|
14
|
+
JSONUtils.emptyObject = Object.freeze({});
|
|
15
|
+
/**
|
|
16
|
+
* 冻结的空JSON Array
|
|
17
|
+
*/
|
|
18
|
+
JSONUtils.emptyArray = Object.freeze([]);
|
|
19
|
+
/**
|
|
20
|
+
* 判断JSON是否为普通类型值,如JSONPrimitive
|
|
21
|
+
* @param value
|
|
22
|
+
*/
|
|
23
|
+
function isPrimitive(value) {
|
|
24
|
+
return (value === null ||
|
|
25
|
+
typeof value === 'boolean' ||
|
|
26
|
+
typeof value === 'number' ||
|
|
27
|
+
typeof value === 'string');
|
|
28
|
+
}
|
|
29
|
+
JSONUtils.isPrimitive = isPrimitive;
|
|
30
|
+
function isArray(value) {
|
|
31
|
+
return Array.isArray(value);
|
|
32
|
+
}
|
|
33
|
+
JSONUtils.isArray = isArray;
|
|
34
|
+
function isObject(value) {
|
|
35
|
+
return !isPrimitive(value) && !isArray(value);
|
|
36
|
+
}
|
|
37
|
+
JSONUtils.isObject = isObject;
|
|
38
|
+
/**
|
|
39
|
+
* 判断两个值是否深层相等
|
|
40
|
+
* @param first
|
|
41
|
+
* @param second
|
|
42
|
+
*/
|
|
43
|
+
function deepEqual(first, second) {
|
|
44
|
+
if (first === second) {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
if (isPrimitive(first) || isPrimitive(second)) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
let a1 = isArray(first);
|
|
51
|
+
let a2 = isArray(second);
|
|
52
|
+
if (a1 !== a2) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
if (a1 && a2) {
|
|
56
|
+
return deepArrayEqual(first, second);
|
|
57
|
+
}
|
|
58
|
+
return deepObjectEqual(first, second);
|
|
59
|
+
}
|
|
60
|
+
JSONUtils.deepEqual = deepEqual;
|
|
61
|
+
/**
|
|
62
|
+
* 深拷贝JSON值
|
|
63
|
+
* @param value
|
|
64
|
+
*/
|
|
65
|
+
function deepCopy(value) {
|
|
66
|
+
if (isPrimitive(value)) {
|
|
67
|
+
return value;
|
|
68
|
+
}
|
|
69
|
+
if (isArray(value)) {
|
|
70
|
+
return deepArrayCopy(value);
|
|
71
|
+
}
|
|
72
|
+
return deepObjectCopy(value);
|
|
73
|
+
}
|
|
74
|
+
JSONUtils.deepCopy = deepCopy;
|
|
75
|
+
/**
|
|
76
|
+
* 对比两个数组类型的JSON是否深匹配
|
|
77
|
+
*/
|
|
78
|
+
function deepArrayEqual(first, second) {
|
|
79
|
+
if (first === second) {
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
if (first.length !== second.length) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
// Compare the values for equality.
|
|
86
|
+
for (let i = 0, n = first.length; i < n; ++i) {
|
|
87
|
+
if (!deepEqual(first[i], second[i])) {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// At this point, the arrays are equal.
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* 对比两个对象类型的JSON是否深匹配
|
|
96
|
+
*/
|
|
97
|
+
function deepObjectEqual(first, second) {
|
|
98
|
+
if (first === second) {
|
|
99
|
+
return true;
|
|
100
|
+
}
|
|
101
|
+
for (let key in first) {
|
|
102
|
+
if (!(key in second)) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Check for the second object's keys in the first object.
|
|
107
|
+
for (let key in second) {
|
|
108
|
+
if (!(key in first)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// Compare the values for equality.
|
|
113
|
+
for (let key in first) {
|
|
114
|
+
if (!deepEqual(first[key], second[key])) {
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// At this point, the objects are equal.
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* 深拷贝Array类型的值
|
|
123
|
+
*/
|
|
124
|
+
function deepArrayCopy(value) {
|
|
125
|
+
let result = new Array(value.length);
|
|
126
|
+
for (let i = 0, n = value.length; i < n; ++i) {
|
|
127
|
+
result[i] = deepCopy(value[i]);
|
|
128
|
+
}
|
|
129
|
+
return result;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* 深拷贝Object类型的值
|
|
133
|
+
*/
|
|
134
|
+
function deepObjectCopy(value) {
|
|
135
|
+
let result = {};
|
|
136
|
+
for (let key in value) {
|
|
137
|
+
result[key] = deepCopy(value[key]);
|
|
138
|
+
}
|
|
139
|
+
return result;
|
|
140
|
+
}
|
|
141
|
+
})(JSONUtils = exports.JSONUtils || (exports.JSONUtils = {}));
|
|
142
|
+
function parseWithComments(content) {
|
|
143
|
+
content = stripTrailingComma((0, strip_json_comments_1.default)(content));
|
|
144
|
+
const res = JSON.parse(content);
|
|
145
|
+
return res;
|
|
146
|
+
}
|
|
147
|
+
exports.parseWithComments = parseWithComments;
|
|
148
|
+
function stripTrailingComma(content) {
|
|
149
|
+
const subStrs = [];
|
|
150
|
+
let lastIndex = 0;
|
|
151
|
+
let inString = false;
|
|
152
|
+
let i = 0;
|
|
153
|
+
while (i < content.length) {
|
|
154
|
+
if (inString) {
|
|
155
|
+
if (content[i] === '"' && content[i - 1] !== '\\') {
|
|
156
|
+
inString = false;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
if (content[i] === ',') {
|
|
161
|
+
// 跳过空白
|
|
162
|
+
const candidate = i;
|
|
163
|
+
while (content[i + 1] && isWhiteSpace(content[i + 1])) {
|
|
164
|
+
i++;
|
|
165
|
+
}
|
|
166
|
+
if (content[i + 1] === ']' || content[i + 1] === '}') {
|
|
167
|
+
subStrs.push(content.substring(lastIndex, candidate));
|
|
168
|
+
lastIndex = candidate + 1;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else if (content[i] === '"') {
|
|
172
|
+
// 肯定是开始字符串
|
|
173
|
+
inString = true;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
i++;
|
|
177
|
+
}
|
|
178
|
+
if (lastIndex > 0) {
|
|
179
|
+
subStrs.push(content.substr(lastIndex));
|
|
180
|
+
return subStrs.join('');
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
return content;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
exports.stripTrailingComma = stripTrailingComma;
|
|
187
|
+
function isWhiteSpace(char) {
|
|
188
|
+
return char === ' ' || char === '\t' || char === '\n' || char === '\r';
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/utils/json.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function stringify(obj: any): string;
|
|
2
|
+
export declare function parse(text: string): any;
|
|
3
|
+
export interface MarshalledObject {
|
|
4
|
+
$mid: number;
|
|
5
|
+
}
|
|
6
|
+
export declare function revive(obj: any, depth?: number): any;
|
|
7
|
+
//# sourceMappingURL=marshalling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marshalling.d.ts","sourceRoot":"","sources":["../../src/utils/marshalling.ts"],"names":[],"mappings":"AAQA,wBAAgB,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAE1C;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAIvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAcD,wBAAgB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,GAAE,MAAU,GAAG,GAAG,CA4BvD"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
5
|
+
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.revive = exports.parse = exports.stringify = void 0;
|
|
8
|
+
const uri_1 = require("../uri");
|
|
9
|
+
const strings_1 = require("./strings");
|
|
10
|
+
function stringify(obj) {
|
|
11
|
+
return JSON.stringify(obj, replacer);
|
|
12
|
+
}
|
|
13
|
+
exports.stringify = stringify;
|
|
14
|
+
function parse(text) {
|
|
15
|
+
let data = JSON.parse(text);
|
|
16
|
+
data = revive(data, 0);
|
|
17
|
+
return data;
|
|
18
|
+
}
|
|
19
|
+
exports.parse = parse;
|
|
20
|
+
function replacer(key, value) {
|
|
21
|
+
// URI is done via toJSON-member
|
|
22
|
+
if (value instanceof RegExp) {
|
|
23
|
+
return {
|
|
24
|
+
$mid: 2,
|
|
25
|
+
source: value.source,
|
|
26
|
+
flags: (0, strings_1.regExpFlags)(value),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
}
|
|
31
|
+
function revive(obj, depth = 0) {
|
|
32
|
+
if (!obj || depth > 200) {
|
|
33
|
+
return obj;
|
|
34
|
+
}
|
|
35
|
+
if (typeof obj === 'object') {
|
|
36
|
+
switch (obj.$mid) {
|
|
37
|
+
case 1: return uri_1.URI.revive(obj);
|
|
38
|
+
case 2: return new RegExp(obj.source, obj.flags);
|
|
39
|
+
}
|
|
40
|
+
if (Array.isArray(obj)) {
|
|
41
|
+
for (let i = 0; i < obj.length; ++i) {
|
|
42
|
+
obj[i] = revive(obj[i], depth + 1);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
// walk object
|
|
47
|
+
for (const key in obj) {
|
|
48
|
+
if (Object.hasOwnProperty.call(obj, key)) {
|
|
49
|
+
obj[key] = revive(obj[key], depth + 1);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return obj;
|
|
55
|
+
}
|
|
56
|
+
exports.revive = revive;
|
|
57
|
+
//# sourceMappingURL=marshalling.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marshalling.js","sourceRoot":"","sources":["../../src/utils/marshalling.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;;;AAEhG,gCAA6B;AAC7B,uCAAwC;AAExC,SAAgB,SAAS,CAAC,GAAQ;IAChC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC;AAFD,8BAEC;AAED,SAAgB,KAAK,CAAC,IAAY;IAChC,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC;AACd,CAAC;AAJD,sBAIC;AAMD,SAAS,QAAQ,CAAC,GAAW,EAAE,KAAU;IACvC,gCAAgC;IAChC,IAAI,KAAK,YAAY,MAAM,EAAE;QAC3B,OAAO;YACL,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,IAAA,qBAAW,EAAC,KAAK,CAAC;SAC1B,CAAC;KACH;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAgB,MAAM,CAAC,GAAQ,EAAE,QAAgB,CAAC;IAEhD,IAAI,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,EAAE;QACvB,OAAO,GAAG,CAAC;KACZ;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAE3B,QAAS,GAAwB,CAAC,IAAI,EAAE;YACtC,KAAK,CAAC,CAAC,CAAC,OAAO,SAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,KAAK,CAAC,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;SAClD;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;gBACnC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;aACpC;SACF;aAAM;YACL,cAAc;YACd,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;oBACxC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;iBACxC;aACF;SACF;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AA5BD,wBA4BC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare function deepFreeze<T>(obj: T): T;
|
|
2
|
+
export declare function cloneAndChange(obj: any, changer: (orig: any) => any): any;
|
|
3
|
+
export declare function deepClone<T>(obj: T): T;
|
|
4
|
+
export declare function isPlainObject(obj: object): boolean;
|
|
5
|
+
export declare function removeUndefined<T extends object = any>(obj: T): T;
|
|
6
|
+
//# sourceMappingURL=objects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects.d.ts","sourceRoot":"","sources":["../../src/utils/objects.ts"],"names":[],"mappings":"AAUA,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAkBvC;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,CAEzE;AAsCD,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAiBtC;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,WAExC;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAWjE"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*---------------------------------------------------------------------------------------------
|
|
3
|
+
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
+
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
5
|
+
*--------------------------------------------------------------------------------------------*/
|
|
6
|
+
// Some code copued and modified from https://github.com/microsoft/vscode/blob/1.44.0/src/vs/base/common/objects.ts
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.removeUndefined = exports.isPlainObject = exports.deepClone = exports.cloneAndChange = exports.deepFreeze = void 0;
|
|
9
|
+
const types_1 = require("./types");
|
|
10
|
+
const _hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
11
|
+
function deepFreeze(obj) {
|
|
12
|
+
if (!obj || typeof obj !== 'object') {
|
|
13
|
+
return obj;
|
|
14
|
+
}
|
|
15
|
+
const stack = [obj];
|
|
16
|
+
while (stack.length > 0) {
|
|
17
|
+
const objectToFreeze = stack.shift();
|
|
18
|
+
Object.freeze(objectToFreeze);
|
|
19
|
+
for (const key in objectToFreeze) {
|
|
20
|
+
if (_hasOwnProperty.call(objectToFreeze, key)) {
|
|
21
|
+
const prop = objectToFreeze[key];
|
|
22
|
+
if (typeof prop === 'object' && !Object.isFrozen(prop)) {
|
|
23
|
+
stack.push(prop);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return obj;
|
|
29
|
+
}
|
|
30
|
+
exports.deepFreeze = deepFreeze;
|
|
31
|
+
function cloneAndChange(obj, changer) {
|
|
32
|
+
return _cloneAndChange(obj, changer, new Set());
|
|
33
|
+
}
|
|
34
|
+
exports.cloneAndChange = cloneAndChange;
|
|
35
|
+
function _cloneAndChange(obj, changer, seen) {
|
|
36
|
+
if ((0, types_1.isUndefinedOrNull)(obj)) {
|
|
37
|
+
return obj;
|
|
38
|
+
}
|
|
39
|
+
const changed = changer(obj);
|
|
40
|
+
if (typeof changed !== 'undefined') {
|
|
41
|
+
return changed;
|
|
42
|
+
}
|
|
43
|
+
if ((0, types_1.isArray)(obj)) {
|
|
44
|
+
const r1 = [];
|
|
45
|
+
for (const e of obj) {
|
|
46
|
+
r1.push(_cloneAndChange(e, changer, seen));
|
|
47
|
+
}
|
|
48
|
+
return r1;
|
|
49
|
+
}
|
|
50
|
+
if ((0, types_1.isObject)(obj)) {
|
|
51
|
+
if (seen.has(obj)) {
|
|
52
|
+
throw new Error('Cannot clone recursive data-structure');
|
|
53
|
+
}
|
|
54
|
+
seen.add(obj);
|
|
55
|
+
const r2 = {};
|
|
56
|
+
for (let i2 in obj) {
|
|
57
|
+
if (_hasOwnProperty.call(obj, i2)) {
|
|
58
|
+
r2[i2] = _cloneAndChange(obj[i2], changer, seen);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
seen.delete(obj);
|
|
62
|
+
return r2;
|
|
63
|
+
}
|
|
64
|
+
return obj;
|
|
65
|
+
}
|
|
66
|
+
function deepClone(obj) {
|
|
67
|
+
if (!obj || typeof obj !== 'object') {
|
|
68
|
+
return obj;
|
|
69
|
+
}
|
|
70
|
+
if (obj instanceof RegExp) {
|
|
71
|
+
return obj;
|
|
72
|
+
}
|
|
73
|
+
const result = Array.isArray(obj) ? [] : {};
|
|
74
|
+
Object.keys(obj).forEach((key) => {
|
|
75
|
+
const prop = obj[key];
|
|
76
|
+
if (prop && typeof prop === 'object') {
|
|
77
|
+
result[key] = deepClone(prop);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
result[key] = prop;
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
return result;
|
|
84
|
+
}
|
|
85
|
+
exports.deepClone = deepClone;
|
|
86
|
+
function isPlainObject(obj) {
|
|
87
|
+
return typeof obj === 'object' && obj.constructor === Object;
|
|
88
|
+
}
|
|
89
|
+
exports.isPlainObject = isPlainObject;
|
|
90
|
+
function removeUndefined(obj) {
|
|
91
|
+
if (!isPlainObject(obj)) {
|
|
92
|
+
return obj;
|
|
93
|
+
}
|
|
94
|
+
const keys = Object.keys(obj);
|
|
95
|
+
keys.forEach(key => {
|
|
96
|
+
if (obj[key] === undefined) {
|
|
97
|
+
delete obj[key];
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
return obj;
|
|
101
|
+
}
|
|
102
|
+
exports.removeUndefined = removeUndefined;
|
|
103
|
+
//# sourceMappingURL=objects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"objects.js","sourceRoot":"","sources":["../../src/utils/objects.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (C) 2017 TypeFox and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
export declare const isWindows: boolean;
|
|
17
|
+
export declare const isOSX: boolean;
|
|
18
|
+
export declare const isLinux: boolean;
|
|
19
|
+
export declare type CMD = [string, string[]];
|
|
20
|
+
export declare function cmd(command: string, ...args: string[]): CMD;
|
|
21
|
+
export declare namespace OS {
|
|
22
|
+
/**
|
|
23
|
+
* Enumeration of the supported operating systems.
|
|
24
|
+
*/
|
|
25
|
+
enum Type {
|
|
26
|
+
Windows = "Windows",
|
|
27
|
+
Linux = "Linux",
|
|
28
|
+
OSX = "OSX"
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Returns with the type of the operating system. If it is neither [Windows](isWindows) nor [OS X](isOSX), then
|
|
32
|
+
* it always return with the `Linux` OS type.
|
|
33
|
+
*/
|
|
34
|
+
function type(): OS.Type;
|
|
35
|
+
}
|
|
36
|
+
export declare function isNodeIntegrated(): boolean;
|
|
37
|
+
export declare function isElectronEnv(): boolean;
|
|
38
|
+
export declare function isElectronRenderer(): any;
|
|
39
|
+
export declare function isElectronNode(): string | undefined;
|
|
40
|
+
export declare function isDevelopment(): any;
|
|
41
|
+
export declare function getNodeRequire(): any;
|
|
42
|
+
//# sourceMappingURL=os.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"os.d.ts","sourceRoot":"","sources":["../../src/utils/os.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAiBlF,eAAO,MAAM,SAAS,SAAyB,CAAC;AAChD,eAAO,MAAM,KAAK,SAAsB,CAAC;AACzC,eAAO,MAAM,OAAO,SAAsB,CAAC;AAE3C,oBAAY,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AACrC,wBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,GAAG,CAK3D;AAED,yBAAiB,EAAE,CAAC;IAEhB;;OAEG;IACH,KAAY,IAAI;QACZ,OAAO,YAAY;QACnB,KAAK,UAAU;QACf,GAAG,QAAQ;KACd;IAED;;;OAGG;IACH,SAAgB,IAAI,IAAI,EAAE,CAAC,IAAI,CAQ9B;CAEJ;AAGD,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,wBAAgB,kBAAkB,QAEjC;AAED,wBAAgB,cAAc,uBAE7B;AAED,wBAAgB,aAAa,QAE5B;AASD,wBAAgB,cAAc,QAE7B"}
|
package/lib/utils/os.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (C) 2017 TypeFox and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.getNodeRequire = exports.isDevelopment = exports.isElectronNode = exports.isElectronRenderer = exports.isElectronEnv = exports.isNodeIntegrated = exports.OS = exports.cmd = exports.isLinux = exports.isOSX = exports.isWindows = void 0;
|
|
19
|
+
function is(userAgent, platform) {
|
|
20
|
+
if (global.hasOwnProperty('platform')) {
|
|
21
|
+
return (global.platform === platform);
|
|
22
|
+
}
|
|
23
|
+
if ((typeof process !== 'undefined') && process.platform !== 'browser') {
|
|
24
|
+
return (process.platform === platform);
|
|
25
|
+
}
|
|
26
|
+
if (typeof navigator !== 'undefined') {
|
|
27
|
+
if (navigator.userAgent && navigator.userAgent.indexOf(userAgent) >= 0) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
exports.isWindows = is('Windows', 'win32');
|
|
34
|
+
exports.isOSX = is('Mac', 'darwin');
|
|
35
|
+
exports.isLinux = is('Linux', 'linux');
|
|
36
|
+
function cmd(command, ...args) {
|
|
37
|
+
return [
|
|
38
|
+
exports.isWindows ? 'cmd' : command,
|
|
39
|
+
exports.isWindows ? ['/c', command, ...args] : args
|
|
40
|
+
];
|
|
41
|
+
}
|
|
42
|
+
exports.cmd = cmd;
|
|
43
|
+
var OS;
|
|
44
|
+
(function (OS) {
|
|
45
|
+
/**
|
|
46
|
+
* Enumeration of the supported operating systems.
|
|
47
|
+
*/
|
|
48
|
+
let Type;
|
|
49
|
+
(function (Type) {
|
|
50
|
+
Type["Windows"] = "Windows";
|
|
51
|
+
Type["Linux"] = "Linux";
|
|
52
|
+
Type["OSX"] = "OSX";
|
|
53
|
+
})(Type = OS.Type || (OS.Type = {}));
|
|
54
|
+
/**
|
|
55
|
+
* Returns with the type of the operating system. If it is neither [Windows](isWindows) nor [OS X](isOSX), then
|
|
56
|
+
* it always return with the `Linux` OS type.
|
|
57
|
+
*/
|
|
58
|
+
function type() {
|
|
59
|
+
if (exports.isWindows) {
|
|
60
|
+
return Type.Windows;
|
|
61
|
+
}
|
|
62
|
+
if (exports.isOSX) {
|
|
63
|
+
return Type.OSX;
|
|
64
|
+
}
|
|
65
|
+
return Type.Linux;
|
|
66
|
+
}
|
|
67
|
+
OS.type = type;
|
|
68
|
+
})(OS = exports.OS || (exports.OS = {}));
|
|
69
|
+
function isNodeIntegrated() {
|
|
70
|
+
return typeof module !== 'undefined' && !!module.exports;
|
|
71
|
+
}
|
|
72
|
+
exports.isNodeIntegrated = isNodeIntegrated;
|
|
73
|
+
function isElectronEnv() {
|
|
74
|
+
return isElectronRenderer() || isElectronNode();
|
|
75
|
+
}
|
|
76
|
+
exports.isElectronEnv = isElectronEnv;
|
|
77
|
+
function isElectronRenderer() {
|
|
78
|
+
return global.isElectronRenderer;
|
|
79
|
+
}
|
|
80
|
+
exports.isElectronRenderer = isElectronRenderer;
|
|
81
|
+
function isElectronNode() {
|
|
82
|
+
return process && process.env && process.env.ELECTRON_RUN_AS_NODE;
|
|
83
|
+
}
|
|
84
|
+
exports.isElectronNode = isElectronNode;
|
|
85
|
+
function isDevelopment() {
|
|
86
|
+
return global.isDev || (process && process.env.IS_DEV);
|
|
87
|
+
}
|
|
88
|
+
exports.isDevelopment = isDevelopment;
|
|
89
|
+
// https://github.com/webpack/webpack/issues/4175#issuecomment-342931035
|
|
90
|
+
function getNodeRequire() {
|
|
91
|
+
return typeof __webpack_require__ === 'function' ? __non_webpack_require__ : require;
|
|
92
|
+
}
|
|
93
|
+
exports.getNodeRequire = getNodeRequire;
|
|
94
|
+
//# sourceMappingURL=os.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"os.js","sourceRoot":"","sources":["../../src/utils/os.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,SAAS,EAAE,CAAC,SAAiB,EAAE,QAAgB;IAC3C,IAAI,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE;QACnC,OAAO,CAAE,MAAc,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;KAClD;IACD,IAAI,CAAC,OAAO,OAAO,KAAK,WAAW,CAAE,IAAI,OAAO,CAAC,QAAgB,KAAK,SAAS,EAAE;QAC7E,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;KAC1C;IACD,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;QAClC,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACpE,OAAO,IAAI,CAAC;SACf;KACJ;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAEY,QAAA,SAAS,GAAG,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACnC,QAAA,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC5B,QAAA,OAAO,GAAG,EAAE,CAAC,OAAO,EAAC,OAAO,CAAC,CAAC;AAG3C,SAAgB,GAAG,CAAC,OAAe,EAAE,GAAG,IAAc;IAClD,OAAO;QACH,iBAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;QAC3B,iBAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;KAC9C,CAAC;AACN,CAAC;AALD,kBAKC;AAED,IAAiB,EAAE,CAyBlB;AAzBD,WAAiB,EAAE;IAEf;;OAEG;IACH,IAAY,IAIX;IAJD,WAAY,IAAI;QACZ,2BAAmB,CAAA;QACnB,uBAAe,CAAA;QACf,mBAAW,CAAA;IACf,CAAC,EAJW,IAAI,GAAJ,OAAI,KAAJ,OAAI,QAIf;IAED;;;OAGG;IACH,SAAgB,IAAI;QAChB,IAAI,iBAAS,EAAE;YACX,OAAO,IAAI,CAAC,OAAO,CAAC;SACvB;QACD,IAAI,aAAK,EAAE;YACP,OAAO,IAAI,CAAC,GAAG,CAAC;SACnB;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IARe,OAAI,OAQnB,CAAA;AAEL,CAAC,EAzBgB,EAAE,GAAF,UAAE,KAAF,UAAE,QAyBlB;AAGD,SAAgB,gBAAgB;IAC5B,OAAO,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAA;AAC5D,CAAC;AAFD,4CAEC;AAED,SAAgB,aAAa;IACzB,OAAO,kBAAkB,EAAE,IAAI,cAAc,EAAE,CAAC;AACpD,CAAC;AAFD,sCAEC;AAED,SAAgB,kBAAkB;IAC9B,OAAQ,MAAc,CAAC,kBAAkB,CAAC;AAC9C,CAAC;AAFD,gDAEC;AAED,SAAgB,cAAc;IAC1B,OAAO,OAAO,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;AACtE,CAAC;AAFD,wCAEC;AAED,SAAgB,aAAa;IACzB,OAAQ,MAAc,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACpE,CAAC;AAFD,sCAEC;AAQD,wEAAwE;AACxE,SAAgB,cAAc;IAC5B,OAAO,OAAO,mBAAmB,KAAK,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC;AACvF,CAAC;AAFD,wCAEC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The forward slash path separator.
|
|
3
|
+
*/
|
|
4
|
+
export declare const sep = "/";
|
|
5
|
+
/**
|
|
6
|
+
* The native path separator depending on the OS.
|
|
7
|
+
*/
|
|
8
|
+
export declare const nativeSep: string;
|
|
9
|
+
/**
|
|
10
|
+
* Takes a Windows OS path and changes backward slashes to forward slashes.
|
|
11
|
+
* This should only be done for OS paths from Windows (or user provided paths potentially from Windows).
|
|
12
|
+
* Using it on a Linux or MaxOS path might change it.
|
|
13
|
+
*/
|
|
14
|
+
export declare function toSlashes(osPath: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* @returns the base name of a path.
|
|
17
|
+
*/
|
|
18
|
+
export declare function basename(path: string): string;
|
|
19
|
+
/**
|
|
20
|
+
* @returns `.far` from `boo.far` or the empty string.
|
|
21
|
+
*/
|
|
22
|
+
export declare function extname(path: string): string;
|
|
23
|
+
export declare function normalize(path: string, toOSPath?: boolean): string;
|
|
24
|
+
/**
|
|
25
|
+
* Computes the _root_ this path, like `getRoot('c:\files') === c:\`,
|
|
26
|
+
* `getRoot('files:///files/path') === files:///`,
|
|
27
|
+
* or `getRoot('\\server\shares\path') === \\server\shares\`
|
|
28
|
+
*/
|
|
29
|
+
export declare function getRoot(path: string, sep?: string): string;
|
|
30
|
+
export declare function isEqualOrParent(path: string, candidate: string, ignoreCase?: boolean): boolean;
|
|
31
|
+
export declare function resolve(...paths: string[]): string;
|
|
32
|
+
export declare function relative(from: string, to: string): string;
|
|
33
|
+
export declare function replaceAsarInPath(pathMayInAsar: string): string;
|
|
34
|
+
export declare function isValidBasename(name: string | null | undefined, isWindowsOS?: boolean): boolean;
|
|
35
|
+
//# sourceMappingURL=paths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/utils/paths.ts"],"names":[],"mappings":"AAaA;;GAEG;AACH,eAAO,MAAM,GAAG,MAAM,CAAC;AAEvB;;GAEG;AACH,eAAO,MAAM,SAAS,QAAyB,CAAC;AAKhD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,UAEvC;AAQD;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAS7C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI5C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAwDlE;AAMD;;;;GAIG;AAEH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,MAAY,GAAG,MAAM,CA2E/D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAoC9F;AAED,wBAAgB,OAAO,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAmBlD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CA4CzD;AAED,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,MAAM,UAQtD;AAOD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,WAAW,GAAE,OAAmB,GAAG,OAAO,CAiC1G"}
|