@codingame/monaco-vscode-git-base-default-extension 1.85.2 → 1.85.3
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/index.js +14 -10
- package/package.json +2 -2
- package/resources/README.md +21 -0
- package/resources/extension.js +2 -0
- package/resources/extension.js.map +1 -0
- package/resources/git-commit.language-configuration.json +1 -0
- package/resources/git-commit.tmLanguage.json +1 -0
- package/resources/git-rebase.tmLanguage.json +1 -0
- package/resources/git.png +0 -0
- package/resources/ignore.language-configuration.json +1 -0
- package/resources/ignore.tmLanguage.json +1 -0
- package/resources/package.json +1 -0
- package/resources/package.nls.json +1 -0
- package/extension.js +0 -530
- package/extension.js.map +0 -1
- package/git-commit.language-configuration.json +0 -11
- package/git-commit.tmLanguage.json +0 -90
- package/git-rebase.tmLanguage.json +0 -61
- package/ignore.language-configuration.json +0 -5
- package/ignore.tmLanguage.json +0 -10
- package/package.nls.json +0 -5
package/index.js
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
import { registerExtension } from 'vscode/extensions';
|
|
2
2
|
|
|
3
|
-
var manifest = {name:"git-base",displayName:"%displayName%",description:"%description%",version:"1.0.0",publisher:"vscode",license:"MIT",engines:{vscode:"0.10.x"},categories:["Other"],activationEvents:["*"],main:undefined,browser:"./dist/browser/extension.js",icon:"resources/icons/git.png",
|
|
3
|
+
var manifest = {name:"git-base",displayName:"%displayName%",description:"%description%",version:"1.0.0",publisher:"vscode",license:"MIT",engines:{vscode:"0.10.x"},categories:["Other"],activationEvents:["*"],main:undefined,browser:"./dist/browser/extension.js",icon:"resources/icons/git.png",capabilities:{virtualWorkspaces:true,untrustedWorkspaces:{supported:true}},contributes:{commands:[{command:"git-base.api.getRemoteSources",title:"%command.api.getRemoteSources%",category:"Git Base API"}],menus:{commandPalette:[{command:"git-base.api.getRemoteSources",when:"false"}]},languages:[{id:"git-commit",aliases:["Git Commit Message","git-commit"],filenames:["COMMIT_EDITMSG","MERGE_MSG"],configuration:"./languages/git-commit.language-configuration.json"},{id:"git-rebase",aliases:["Git Rebase Message","git-rebase"],filenames:["git-rebase-todo"],filenamePatterns:["**/rebase-merge/done"],configuration:"./languages/git-rebase.language-configuration.json"},{id:"ignore",aliases:["Ignore","ignore"],extensions:[".gitignore_global",".gitignore",".git-blame-ignore-revs"],configuration:"./languages/ignore.language-configuration.json"}],grammars:[{language:"git-commit",scopeName:"text.git-commit",path:"./syntaxes/git-commit.tmLanguage.json"},{language:"git-rebase",scopeName:"text.git-rebase",path:"./syntaxes/git-rebase.tmLanguage.json"},{language:"ignore",scopeName:"source.ignore",path:"./syntaxes/ignore.tmLanguage.json"}]},repository:{type:"git",url:"https://github.com/microsoft/vscode.git"}};
|
|
4
4
|
|
|
5
5
|
const { registerFileUrl, whenReady } = registerExtension(manifest);
|
|
6
|
-
registerFileUrl('
|
|
7
|
-
registerFileUrl('
|
|
8
|
-
registerFileUrl('
|
|
9
|
-
registerFileUrl('
|
|
10
|
-
registerFileUrl('
|
|
11
|
-
registerFileUrl('
|
|
12
|
-
registerFileUrl('
|
|
13
|
-
registerFileUrl('
|
|
14
|
-
registerFileUrl('
|
|
6
|
+
registerFileUrl('README.md', new URL('./resources/README.md', import.meta.url).toString(), 'text/markdown');
|
|
7
|
+
registerFileUrl('package.json', new URL('./resources/package.json', import.meta.url).toString(), 'application/json');
|
|
8
|
+
registerFileUrl('package.nls.json', new URL('./resources/package.nls.json', import.meta.url).toString(), 'application/json');
|
|
9
|
+
registerFileUrl('languages/git-commit.language-configuration.json', new URL('./resources/git-commit.language-configuration.json', import.meta.url).toString(), 'application/json');
|
|
10
|
+
registerFileUrl('languages/git-rebase.language-configuration.json', new URL('./resources/git-commit.language-configuration.json', import.meta.url).toString(), 'application/json');
|
|
11
|
+
registerFileUrl('languages/ignore.language-configuration.json', new URL('./resources/ignore.language-configuration.json', import.meta.url).toString(), 'application/json');
|
|
12
|
+
registerFileUrl('syntaxes/git-commit.tmLanguage.json', new URL('./resources/git-commit.tmLanguage.json', import.meta.url).toString(), 'application/json');
|
|
13
|
+
registerFileUrl('syntaxes/git-rebase.tmLanguage.json', new URL('./resources/git-rebase.tmLanguage.json', import.meta.url).toString(), 'application/json');
|
|
14
|
+
registerFileUrl('syntaxes/ignore.tmLanguage.json', new URL('./resources/ignore.tmLanguage.json', import.meta.url).toString(), 'application/json');
|
|
15
|
+
registerFileUrl('dist/browser/extension.js', new URL('./resources/extension.js', import.meta.url).toString(), 'application/javascript');
|
|
16
|
+
registerFileUrl('dist/browser/extension', new URL('./resources/extension.js', import.meta.url).toString(), 'application/javascript');
|
|
17
|
+
registerFileUrl('dist/browser/extension.js.map', new URL('./resources/extension.js.map', import.meta.url).toString(), 'application/json');
|
|
18
|
+
registerFileUrl('resources/icons/git.png', new URL('./resources/git.png', import.meta.url).toString(), 'image/png');
|
|
15
19
|
|
|
16
20
|
export { whenReady };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-git-base-default-extension",
|
|
3
|
-
"version": "1.85.
|
|
3
|
+
"version": "1.85.3",
|
|
4
4
|
"keywords": [],
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "CodinGame",
|
|
@@ -18,6 +18,6 @@
|
|
|
18
18
|
"module": "index.js",
|
|
19
19
|
"types": "index.d.ts",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"vscode": "npm:@codingame/monaco-vscode-api@1.85.
|
|
21
|
+
"vscode": "npm:@codingame/monaco-vscode-api@1.85.3"
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Git static contributions and remote repository picker
|
|
2
|
+
|
|
3
|
+
**Notice:** This extension is bundled with Visual Studio Code. It can be disabled but not uninstalled.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
Git static contributions and remote repository picker.
|
|
8
|
+
|
|
9
|
+
## API
|
|
10
|
+
|
|
11
|
+
The Git extension exposes an API, reachable by any other extension.
|
|
12
|
+
|
|
13
|
+
1. Copy `src/api/git-base.d.ts` to your extension's sources;
|
|
14
|
+
2. Include `git-base.d.ts` in your extension's compilation.
|
|
15
|
+
3. Get a hold of the API with the following snippet:
|
|
16
|
+
|
|
17
|
+
```ts
|
|
18
|
+
const gitBaseExtension = vscode.extensions.getExtension<GitBaseExtension>('vscode.git-base').exports;
|
|
19
|
+
const git = gitBaseExtension.getAPI(1);
|
|
20
|
+
|
|
21
|
+
```
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
(()=>{"use strict";var e={134:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.$j=t.$i=void 0;const o=r(496),i=r(269);t.$i=class{constructor(e){this.a=e}pickRemoteSource(e){return(0,i.$g)(this.a,e)}getRemoteSourceActions(e){return(0,i.$f)(this.a,e)}registerRemoteSourceProvider(e){return this.a.registerRemoteSourceProvider(e)}},t.$j=function(e){const t=[];return t.push(o.commands.registerCommand("git-base.api.getRemoteSources",(t=>{if(e.model)return(0,i.$g)(e.model,t)}))),o.Disposable.from(...t)}},839:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.$h=void 0;const o=r(496),i=r(134);t.$h=class{set model(e){this.b=e;const t=!!e;this.enabled!==t&&(this.enabled=t,this.a.fire(this.enabled))}get model(){return this.b}constructor(e){this.enabled=!1,this.a=new o.EventEmitter,this.onDidChangeEnablement=this.a.event,this.b=void 0,e&&(this.enabled=!0,this.b=e)}getAPI(e){if(!this.b)throw new Error("Git model not found");if(1!==e)throw new Error(`No API version ${e} found.`);return new i.$i(this.b)}}},494:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.$d=t.$c=void 0;const o=r(415);function i(e){return(t,r,o)=>{let i=null,n=null;if("function"==typeof o.value?(i="value",n=o.value):"function"==typeof o.get&&(i="get",n=o.get),!n||!i)throw new Error("not supported");o[i]=e(n,r)}}t.$c=function(e){return i(((t,r)=>{const o=`$debounce$${r}`;return function(...r){clearTimeout(this[o]),this[o]=setTimeout((()=>t.apply(this,r)),e)}}))},t.$d=i((function(e,t){const r=`$throttle$current$${t}`,i=`$throttle$next$${t}`,n=function(...t){if(this[i])return this[i];if(this[r])return this[i]=(0,o.$b)(this[r]).then((()=>(this[i]=void 0,n.apply(this,t)))),this[i];this[r]=e.apply(this,t);const s=()=>this[r]=void 0;return(0,o.$b)(this[r]).then(s,s),this[r]};return n}))},634:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.$e=void 0;const o=r(496),i=r(415);t.$e=class{constructor(){this.a=new Set,this.b=new o.EventEmitter,this.onDidAddRemoteSourceProvider=this.b.event,this.c=new o.EventEmitter,this.onDidRemoveRemoteSourceProvider=this.c.event}registerRemoteSourceProvider(e){return this.a.add(e),this.b.fire(e),(0,i.$a)((()=>{this.a.delete(e),this.c.fire(e)}))}getRemoteProviders(){return[...this.a.values()]}}},269:function(e,t,r){var o=this&&this.__decorate||function(e,t,r,o){var i,n=arguments.length,s=n<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,o);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(n<3?i(s):n>3?i(t,r,s):i(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s};Object.defineProperty(t,"__esModule",{value:!0}),t.$g=t.$f=void 0;const i=r(496),n=r(494);async function s(e){const t=await new Promise((t=>{e.onDidAccept((()=>t(e.selectedItems[0]))),e.onDidHide((()=>t(void 0))),e.show()}));return e.hide(),t}class a{constructor(e){this.e=e}f(){this.d||(this.d=i.window.createQuickPick(),this.d.ignoreFocusOut=!0,this.e.supportsQuery?(this.d.placeholder=this.e.placeholder??i.l10n.t("Repository name (type to search)"),this.d.onDidChangeValue(this.g,this)):this.d.placeholder=this.e.placeholder??i.l10n.t("Repository name"))}g(){this.h()}async h(){try{this.f(),this.d.busy=!0,this.d.show();const e=await this.e.getRemoteSources(this.d?.value)||[];0===e.length?this.d.items=[{label:i.l10n.t("No remote repositories found."),alwaysShow:!0}]:this.d.items=e.map((e=>({label:e.icon?`$(${e.icon}) ${e.name}`:e.name,description:e.description||("string"==typeof e.url?e.url:e.url[0]),detail:e.detail,remoteSource:e,alwaysShow:!0})))}catch(e){this.d.items=[{label:i.l10n.t("{0} Error: {1}","$(error)",e.message),alwaysShow:!0}],console.error(e)}finally{this.d.busy=!1}}async pick(){return await this.h(),(await s(this.d))?.remoteSource}}async function c(e,t={}){const r=new a(e),o=await r.pick();let n;if(o&&("string"==typeof o.url?n=o.url:o.url.length>0&&(n=await i.window.showQuickPick(o.url,{ignoreFocusOut:!0,placeHolder:i.l10n.t("Choose a URL to clone from.")}))),!n||!t.branch)return n;if(!e.getBranches)return{url:n};const s=await e.getBranches(n);if(!s)return{url:n};const c=await i.window.showQuickPick(s,{placeHolder:i.l10n.t("Branch name")});return c?{url:n,branch:c}:{url:n}}o([(0,n.$c)(300)],a.prototype,"g",null),o([n.$d],a.prototype,"h",null),t.$f=async function(e,t){const r=e.getRemoteProviders(),o=[];for(const e of r){const r=await(e.getRemoteSourceActions?.(t));r?.length&&o.push(...r)}return o},t.$g=async function(e,t={}){const r=i.window.createQuickPick();if(r.title=t.title,t.providerName){const r=e.getRemoteProviders().filter((e=>e.name===t.providerName))[0];if(r)return await c(r,t)}const o=e.getRemoteProviders().map((e=>({label:(e.icon?`$(${e.icon}) `:"")+(t.providerLabel?t.providerLabel(e):e.name),alwaysShow:!0,provider:e}))),n=[];if(t.showRecentSources)for(const{provider:e}of o){const t=(await(e.getRecentRemoteSources?.())??[]).map((e=>({...e,label:(e.icon?`$(${e.icon}) `:"")+e.name,url:"string"==typeof e.url?e.url:e.url[0]})));n.push(...t)}const a=[{kind:i.QuickPickItemKind.Separator,label:i.l10n.t("remote sources")},...o,{kind:i.QuickPickItemKind.Separator,label:i.l10n.t("recently opened")},...n.sort(((e,t)=>t.timestamp-e.timestamp))];r.placeholder=t.placeholder??(0===o.length?i.l10n.t("Provide repository URL"):i.l10n.t("Provide repository URL or pick a repository source."));const l=e=>{if(e){const o=("string"==typeof t.urlLabel?t.urlLabel:t.urlLabel?.(e))??i.l10n.t("URL");r.items=[{label:o,description:e,alwaysShow:!0,url:e},...a]}else r.items=a};r.onDidChangeValue(l),l();const u=await s(r);if(u){if(u.url)return u.url;if(u.provider)return await c(u.provider,t)}}},415:(e,t)=>{var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Versions=t.$b=t.$a=void 0,t.$a=function(e){return{dispose:e}},t.$b=function(e){return e.then((()=>{}))},function(e){function t(e,t,r,o){return{major:"string"==typeof e?parseInt(e,10):e,minor:"string"==typeof t?parseInt(t,10):t,patch:null==r?0:"string"==typeof r?parseInt(r,10):r,pre:o}}function r(e){const[r,o]=e.split("-"),[i,n,s]=r.split(".");return t(i,n,s,o)}e.compare=function(e,t){return"string"==typeof e&&(e=r(e)),"string"==typeof t&&(t=r(t)),e.major>t.major?1:e.major<t.major?-1:e.minor>t.minor?1:e.minor<t.minor?-1:e.patch>t.patch?1:e.patch<t.patch?-1:void 0===e.pre&&void 0!==t.pre?1:void 0!==e.pre&&void 0===t.pre?-1:void 0!==e.pre&&void 0!==t.pre?e.pre.localeCompare(t.pre):0},e.from=t,e.fromString=r}(r||(t.Versions=r={}))},496:e=>{e.exports=require("vscode")}},t={};function r(o){var i=t[o];if(void 0!==i)return i.exports;var n=t[o]={exports:{}};return e[o].call(n.exports,n,n.exports,r),n.exports}var o={};(()=>{var e=o;Object.defineProperty(e,"__esModule",{value:!0}),e.activate=void 0;const t=r(134),i=r(839),n=r(634);e.activate=function(e){const r=new i.$h(new n.$e);return e.subscriptions.push((0,t.$j)(r)),r}})();var i=exports;for(var n in o)i[n]=o[n];o.__esModule&&Object.defineProperty(i,"__esModule",{value:!0})})();
|
|
2
|
+
//# sourceMappingURL=https://ticino.blob.core.windows.net/sourcemaps/af28b32d7e553898b2a91af498b1fb666fdebe0c/extensions/git-base/dist/browser/extension.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension.js","mappings":"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","sources":["webpack://git-base/./src/api/api1.ts","webpack://git-base/./src/api/extension.ts","webpack://git-base/./src/decorators.ts","webpack://git-base/./src/model.ts","webpack://git-base/./src/remoteSource.ts","webpack://git-base/./src/util.ts","webpack://git-base/external commonjs \"vscode\"","webpack://git-base/webpack/bootstrap","webpack://git-base/./src/extension.ts"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { Disposable, commands } from 'vscode';\nimport { $e } from '../model';\nimport { $f, $g } from '../remoteSource';\nimport { $h } from './extension';\nimport { API, PickRemoteSourceOptions, PickRemoteSourceResult, RemoteSourceAction, RemoteSourceProvider } from './git-base';\n\nexport class $i implements API {\n\n\tconstructor(private a: $e) { }\n\n\tpickRemoteSource(options: PickRemoteSourceOptions): Promise<PickRemoteSourceResult | string | undefined> {\n\t\treturn $g(this.a, options as any);\n\t}\n\n\tgetRemoteSourceActions(url: string): Promise<RemoteSourceAction[]> {\n\t\treturn $f(this.a, url);\n\t}\n\n\tregisterRemoteSourceProvider(provider: RemoteSourceProvider): Disposable {\n\t\treturn this.a.registerRemoteSourceProvider(provider);\n\t}\n}\n\nexport function $j(extension: $h): Disposable {\n\tconst disposables: Disposable[] = [];\n\n\tdisposables.push(commands.registerCommand('git-base.api.getRemoteSources', (opts?: PickRemoteSourceOptions) => {\n\t\tif (!extension.model) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn $g(extension.model, opts as any);\n\t}));\n\n\treturn Disposable.from(...disposables);\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { $e } from '../model';\nimport { GitBaseExtension, API } from './git-base';\nimport { Event, EventEmitter } from 'vscode';\nimport { $i } from './api1';\n\nexport class $h implements GitBaseExtension {\n\n\tenabled: boolean = false;\n\n\tprivate a = new EventEmitter<boolean>();\n\treadonly onDidChangeEnablement: Event<boolean> = this.a.event;\n\n\tprivate b: $e | undefined = undefined;\n\n\tset model(model: $e | undefined) {\n\t\tthis.b = model;\n\n\t\tconst enabled = !!model;\n\n\t\tif (this.enabled === enabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.enabled = enabled;\n\t\tthis.a.fire(this.enabled);\n\t}\n\n\tget model(): $e | undefined {\n\t\treturn this.b;\n\t}\n\n\tconstructor(model?: $e) {\n\t\tif (model) {\n\t\t\tthis.enabled = true;\n\t\t\tthis.b = model;\n\t\t}\n\t}\n\n\tgetAPI(version: number): API {\n\t\tif (!this.b) {\n\t\t\tthrow new Error('Git model not found');\n\t\t}\n\n\t\tif (version !== 1) {\n\t\t\tthrow new Error(`No API version ${version} found.`);\n\t\t}\n\n\t\treturn new $i(this.b);\n\t}\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { $b } from './util';\n\nexport function $c(delay: number): Function {\n\treturn decorate((fn, key) => {\n\t\tconst timerKey = `$debounce$${key}`;\n\n\t\treturn function (this: any, ...args: any[]) {\n\t\t\tclearTimeout(this[timerKey]);\n\t\t\tthis[timerKey] = setTimeout(() => fn.apply(this, args), delay);\n\t\t};\n\t});\n}\n\nexport const $d = decorate(_throttle);\n\nfunction _throttle<T>(fn: Function, key: string): Function {\n\tconst currentKey = `$throttle$current$${key}`;\n\tconst nextKey = `$throttle$next$${key}`;\n\n\tconst trigger = function (this: any, ...args: any[]) {\n\t\tif (this[nextKey]) {\n\t\t\treturn this[nextKey];\n\t\t}\n\n\t\tif (this[currentKey]) {\n\t\t\tthis[nextKey] = $b(this[currentKey]).then(() => {\n\t\t\t\tthis[nextKey] = undefined;\n\t\t\t\treturn trigger.apply(this, args);\n\t\t\t});\n\n\t\t\treturn this[nextKey];\n\t\t}\n\n\t\tthis[currentKey] = fn.apply(this, args) as Promise<T>;\n\n\t\tconst clear = () => this[currentKey] = undefined;\n\t\t$b(this[currentKey]).then(clear, clear);\n\n\t\treturn this[currentKey];\n\t};\n\n\treturn trigger;\n}\n\nfunction decorate(decorator: (fn: Function, key: string) => Function): Function {\n\treturn (_target: any, key: string, descriptor: any) => {\n\t\tlet fnKey: string | null = null;\n\t\tlet fn: Function | null = null;\n\n\t\tif (typeof descriptor.value === 'function') {\n\t\t\tfnKey = 'value';\n\t\t\tfn = descriptor.value;\n\t\t} else if (typeof descriptor.get === 'function') {\n\t\t\tfnKey = 'get';\n\t\t\tfn = descriptor.get;\n\t\t}\n\n\t\tif (!fn || !fnKey) {\n\t\t\tthrow new Error('not supported');\n\t\t}\n\n\t\tdescriptor[fnKey] = decorator(fn, key);\n\t};\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { EventEmitter, Disposable } from 'vscode';\nimport { $a } from './util';\nimport { RemoteSourceProvider } from './api/git-base';\nimport { IRemoteSourceProviderRegistry } from './remoteProvider';\n\nexport class $e implements IRemoteSourceProviderRegistry {\n\n\tprivate a = new Set<RemoteSourceProvider>();\n\n\tprivate b = new EventEmitter<RemoteSourceProvider>();\n\treadonly onDidAddRemoteSourceProvider = this.b.event;\n\n\tprivate c = new EventEmitter<RemoteSourceProvider>();\n\treadonly onDidRemoveRemoteSourceProvider = this.c.event;\n\n\tregisterRemoteSourceProvider(provider: RemoteSourceProvider): Disposable {\n\t\tthis.a.add(provider);\n\t\tthis.b.fire(provider);\n\n\t\treturn $a(() => {\n\t\t\tthis.a.delete(provider);\n\t\t\tthis.c.fire(provider);\n\t\t});\n\t}\n\n\tgetRemoteProviders(): RemoteSourceProvider[] {\n\t\treturn [...this.a.values()];\n\t}\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { QuickPickItem, window, QuickPick, QuickPickItemKind, l10n } from 'vscode';\nimport { RemoteSourceProvider, RemoteSource, PickRemoteSourceOptions, PickRemoteSourceResult, RemoteSourceAction } from './api/git-base';\nimport { $e } from './model';\nimport { $d, $c } from './decorators';\n\nasync function getQuickPickResult<T extends QuickPickItem>(quickpick: QuickPick<T>): Promise<T | undefined> {\n\tconst result = await new Promise<T | undefined>(c => {\n\t\tquickpick.onDidAccept(() => c(quickpick.selectedItems[0]));\n\t\tquickpick.onDidHide(() => c(undefined));\n\t\tquickpick.show();\n\t});\n\n\tquickpick.hide();\n\treturn result;\n}\n\nclass RemoteSourceProviderQuickPick {\n\n\tprivate d: QuickPick<QuickPickItem & { remoteSource?: RemoteSource }> | undefined;\n\n\tconstructor(private e: RemoteSourceProvider) { }\n\n\tprivate f() {\n\t\tif (!this.d) {\n\t\t\tthis.d = window.createQuickPick();\n\t\t\tthis.d.ignoreFocusOut = true;\n\t\t\tif (this.e.supportsQuery) {\n\t\t\t\tthis.d.placeholder = this.e.placeholder ?? l10n.t('Repository name (type to search)');\n\t\t\t\tthis.d.onDidChangeValue(this.g, this);\n\t\t\t} else {\n\t\t\t\tthis.d.placeholder = this.e.placeholder ?? l10n.t('Repository name');\n\t\t\t}\n\t\t}\n\t}\n\n\t@$c(300)\n\tprivate g(): void {\n\t\tthis.h();\n\t}\n\n\t@$d\n\tprivate async h(): Promise<void> {\n\t\ttry {\n\t\t\tthis.f();\n\t\t\tthis.d!.busy = true;\n\t\t\tthis.d!.show();\n\n\t\t\tconst remoteSources = await this.e.getRemoteSources(this.d?.value) || [];\n\n\t\t\tif (remoteSources.length === 0) {\n\t\t\t\tthis.d!.items = [{\n\t\t\t\t\tlabel: l10n.t('No remote repositories found.'),\n\t\t\t\t\talwaysShow: true\n\t\t\t\t}];\n\t\t\t} else {\n\t\t\t\tthis.d!.items = remoteSources.map(remoteSource => ({\n\t\t\t\t\tlabel: remoteSource.icon ? `$(${remoteSource.icon}) ${remoteSource.name}` : remoteSource.name,\n\t\t\t\t\tdescription: remoteSource.description || (typeof remoteSource.url === 'string' ? remoteSource.url : remoteSource.url[0]),\n\t\t\t\t\tdetail: remoteSource.detail,\n\t\t\t\t\tremoteSource,\n\t\t\t\t\talwaysShow: true\n\t\t\t\t}));\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tthis.d!.items = [{ label: l10n.t('{0} Error: {1}', '$(error)', err.message), alwaysShow: true }];\n\t\t\tconsole.error(err);\n\t\t} finally {\n\t\t\tthis.d!.busy = false;\n\t\t}\n\t}\n\n\tasync pick(): Promise<RemoteSource | undefined> {\n\t\tawait this.h();\n\t\tconst result = await getQuickPickResult(this.d!);\n\t\treturn result?.remoteSource;\n\t}\n}\n\nexport async function $f(model: $e, url: string): Promise<RemoteSourceAction[]> {\n\tconst providers = model.getRemoteProviders();\n\n\tconst remoteSourceActions = [];\n\tfor (const provider of providers) {\n\t\tconst providerActions = await provider.getRemoteSourceActions?.(url);\n\t\tif (providerActions?.length) {\n\t\t\tremoteSourceActions.push(...providerActions);\n\t\t}\n\t}\n\n\treturn remoteSourceActions;\n}\n\nexport async function $g(model: $e, options: PickRemoteSourceOptions & { branch?: false | undefined }): Promise<string | undefined>;\nexport async function $g(model: $e, options: PickRemoteSourceOptions & { branch: true }): Promise<PickRemoteSourceResult | undefined>;\nexport async function $g(model: $e, options: PickRemoteSourceOptions = {}): Promise<string | PickRemoteSourceResult | undefined> {\n\tconst quickpick = window.createQuickPick<(QuickPickItem & { provider?: RemoteSourceProvider; url?: string })>();\n\tquickpick.title = options.title;\n\n\tif (options.providerName) {\n\t\tconst provider = model.getRemoteProviders()\n\t\t\t.filter(provider => provider.name === options.providerName)[0];\n\n\t\tif (provider) {\n\t\t\treturn await pickProviderSource(provider, options);\n\t\t}\n\t}\n\n\tconst remoteProviders = model.getRemoteProviders()\n\t\t.map(provider => ({ label: (provider.icon ? `$(${provider.icon}) ` : '') + (options.providerLabel ? options.providerLabel(provider) : provider.name), alwaysShow: true, provider }));\n\n\tconst recentSources: (QuickPickItem & { url?: string; timestamp: number })[] = [];\n\tif (options.showRecentSources) {\n\t\tfor (const { provider } of remoteProviders) {\n\t\t\tconst sources = (await provider.getRecentRemoteSources?.() ?? []).map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\t...item,\n\t\t\t\t\tlabel: (item.icon ? `$(${item.icon}) ` : '') + item.name,\n\t\t\t\t\turl: typeof item.url === 'string' ? item.url : item.url[0],\n\t\t\t\t};\n\t\t\t});\n\t\t\trecentSources.push(...sources);\n\t\t}\n\t}\n\n\tconst items = [\n\t\t{ kind: QuickPickItemKind.Separator, label: l10n.t('remote sources') },\n\t\t...remoteProviders,\n\t\t{ kind: QuickPickItemKind.Separator, label: l10n.t('recently opened') },\n\t\t...recentSources.sort((a, b) => b.timestamp - a.timestamp)\n\t];\n\n\tquickpick.placeholder = options.placeholder ?? (remoteProviders.length === 0\n\t\t? l10n.t('Provide repository URL')\n\t\t: l10n.t('Provide repository URL or pick a repository source.'));\n\n\tconst updatePicks = (value?: string) => {\n\t\tif (value) {\n\t\t\tconst label = (typeof options.urlLabel === 'string' ? options.urlLabel : options.urlLabel?.(value)) ?? l10n.t('URL');\n\t\t\tquickpick.items = [{\n\t\t\t\tlabel: label,\n\t\t\t\tdescription: value,\n\t\t\t\talwaysShow: true,\n\t\t\t\turl: value\n\t\t\t},\n\t\t\t...items\n\t\t\t];\n\t\t} else {\n\t\t\tquickpick.items = items;\n\t\t}\n\t};\n\n\tquickpick.onDidChangeValue(updatePicks);\n\tupdatePicks();\n\n\tconst result = await getQuickPickResult(quickpick);\n\n\tif (result) {\n\t\tif (result.url) {\n\t\t\treturn result.url;\n\t\t} else if (result.provider) {\n\t\t\treturn await pickProviderSource(result.provider, options);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nasync function pickProviderSource(provider: RemoteSourceProvider, options: PickRemoteSourceOptions = {}): Promise<string | PickRemoteSourceResult | undefined> {\n\tconst quickpick = new RemoteSourceProviderQuickPick(provider);\n\tconst remote = await quickpick.pick();\n\n\tlet url: string | undefined;\n\n\tif (remote) {\n\t\tif (typeof remote.url === 'string') {\n\t\t\turl = remote.url;\n\t\t} else if (remote.url.length > 0) {\n\t\t\turl = await window.showQuickPick(remote.url, { ignoreFocusOut: true, placeHolder: l10n.t('Choose a URL to clone from.') });\n\t\t}\n\t}\n\n\tif (!url || !options.branch) {\n\t\treturn url;\n\t}\n\n\tif (!provider.getBranches) {\n\t\treturn { url };\n\t}\n\n\tconst branches = await provider.getBranches(url);\n\n\tif (!branches) {\n\t\treturn { url };\n\t}\n\n\tconst branch = await window.showQuickPick(branches, {\n\t\tplaceHolder: l10n.t('Branch name')\n\t});\n\n\tif (!branch) {\n\t\treturn { url };\n\t}\n\n\treturn { url, branch };\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nexport interface IDisposable {\n\tdispose(): void;\n}\n\nexport function $a(dispose: () => void): IDisposable {\n\treturn { dispose };\n}\n\nexport function $b<T>(promise: Promise<T>): Promise<void> {\n\treturn promise.then<void>(() => undefined);\n}\n\nexport namespace Versions {\n\tdeclare type VersionComparisonResult = -1 | 0 | 1;\n\n\texport interface Version {\n\t\tmajor: number;\n\t\tminor: number;\n\t\tpatch: number;\n\t\tpre?: string;\n\t}\n\n\texport function compare(v1: string | Version, v2: string | Version): VersionComparisonResult {\n\t\tif (typeof v1 === 'string') {\n\t\t\tv1 = fromString(v1);\n\t\t}\n\t\tif (typeof v2 === 'string') {\n\t\t\tv2 = fromString(v2);\n\t\t}\n\n\t\tif (v1.major > v2.major) { return 1; }\n\t\tif (v1.major < v2.major) { return -1; }\n\n\t\tif (v1.minor > v2.minor) { return 1; }\n\t\tif (v1.minor < v2.minor) { return -1; }\n\n\t\tif (v1.patch > v2.patch) { return 1; }\n\t\tif (v1.patch < v2.patch) { return -1; }\n\n\t\tif (v1.pre === undefined && v2.pre !== undefined) { return 1; }\n\t\tif (v1.pre !== undefined && v2.pre === undefined) { return -1; }\n\n\t\tif (v1.pre !== undefined && v2.pre !== undefined) {\n\t\t\treturn v1.pre.localeCompare(v2.pre) as VersionComparisonResult;\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\texport function from(major: string | number, minor: string | number, patch?: string | number, pre?: string): Version {\n\t\treturn {\n\t\t\tmajor: typeof major === 'string' ? parseInt(major, 10) : major,\n\t\t\tminor: typeof minor === 'string' ? parseInt(minor, 10) : minor,\n\t\t\tpatch: patch === undefined || patch === null ? 0 : typeof patch === 'string' ? parseInt(patch, 10) : patch,\n\t\t\tpre: pre,\n\t\t};\n\t}\n\n\texport function fromString(version: string): Version {\n\t\tconst [ver, pre] = version.split('-');\n\t\tconst [major, minor, patch] = ver.split('.');\n\t\treturn from(major, minor, patch, pre);\n\t}\n}\n","module.exports = require(\"vscode\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { ExtensionContext } from 'vscode';\nimport { $j } from './api/api1';\nimport { $h } from './api/extension';\nimport { $e } from './model';\n\nexport function activate(context: ExtensionContext): $h {\n\tconst apiImpl = new $h(new $e());\n\tcontext.subscriptions.push($j(apiImpl));\n\n\treturn apiImpl;\n}\n"],"names":["constructor","a","pickRemoteSource","options","$g","this","getRemoteSourceActions","url","$f","registerRemoteSourceProvider","provider","extension","disposables","push","commands","registerCommand","opts","model","Disposable","from","b","enabled","fire","EventEmitter","onDidChangeEnablement","event","undefined","getAPI","version","Error","$i","decorate","decorator","_target","key","descriptor","fnKey","fn","value","get","delay","timerKey","args","clearTimeout","setTimeout","apply","$d","currentKey","nextKey","trigger","$b","then","clear","Set","onDidAddRemoteSourceProvider","c","onDidRemoveRemoteSourceProvider","add","$a","delete","getRemoteProviders","values","async","getQuickPickResult","quickpick","result","Promise","onDidAccept","selectedItems","onDidHide","show","hide","RemoteSourceProviderQuickPick","e","f","d","window","createQuickPick","ignoreFocusOut","supportsQuery","placeholder","l10n","t","onDidChangeValue","g","h","busy","remoteSources","getRemoteSources","length","items","label","alwaysShow","map","remoteSource","icon","name","description","detail","err","message","console","error","pickProviderSource","remote","pick","showQuickPick","placeHolder","branch","getBranches","branches","$c","providers","remoteSourceActions","providerActions","title","providerName","filter","remoteProviders","providerLabel","recentSources","showRecentSources","sources","getRecentRemoteSources","item","kind","QuickPickItemKind","Separator","sort","timestamp","updatePicks","urlLabel","Versions","dispose","promise","major","minor","patch","pre","parseInt","fromString","ver","split","compare","v1","v2","localeCompare","module","exports","require","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","call","context","apiImpl","$h","$e","subscriptions","$j"],"sourceRoot":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"comments":{"lineComment":"#","blockComment":["#"," "]},"brackets":[["{","}"],["[","]"],["(",")"]]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"information_for_contributors":["This file has been converted from https://github.com/walles/git-commit-message-plus/blob/master/syntaxes/git-commit.tmLanguage.json","If you want to provide a fix or improvement, please create a pull request against the original repository.","Once accepted there, we are happy to receive an update request."],"version":"https://github.com/walles/git-commit-message-plus/commit/35a079dea5a91b087021b40c01a6bb4eb0337a87","name":"Git Commit Message","scopeName":"text.git-commit","patterns":[{"comment":"diff presented at the end of the commit message when using commit -v.","name":"meta.embedded.diff.git-commit","contentName":"source.diff","begin":"(?=^diff\\ \\-\\-git)","end":"\\z","patterns":[{"include":"source.diff"}]},{"comment":"User supplied message","name":"meta.scope.message.git-commit","begin":"^(?!#)","end":"^(?=#)","patterns":[{"comment":"Mark > 50 lines as deprecated, > 72 as illegal","name":"meta.scope.subject.git-commit","match":"\\G.{0,50}(.{0,22}(.*))$","captures":{"1":{"name":"invalid.deprecated.line-too-long.git-commit"},"2":{"name":"invalid.illegal.line-too-long.git-commit"}}}]},{"comment":"Git supplied metadata in a number of lines starting with #","name":"meta.scope.metadata.git-commit","begin":"^(?=#)","contentName":"comment.line.number-sign.git-commit","end":"^(?!#)","patterns":[{"match":"^#\\t((modified|renamed):.*)$","captures":{"1":{"name":"markup.changed.git-commit"}}},{"match":"^#\\t(new file:.*)$","captures":{"1":{"name":"markup.inserted.git-commit"}}},{"match":"^#\\t(deleted.*)$","captures":{"1":{"name":"markup.deleted.git-commit"}}},{"comment":"Fallback for non-English git commit template","match":"^#\\t([^:]+): *(.*)$","captures":{"1":{"name":"keyword.other.file-type.git-commit"},"2":{"name":"string.unquoted.filename.git-commit"}}}]}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"information_for_contributors":["This file has been converted from https://github.com/textmate/git.tmbundle/blob/master/Syntaxes/Git%20Rebase%20Message.tmLanguage","If you want to provide a fix or improvement, please create a pull request against the original repository.","Once accepted there, we are happy to receive an update request."],"version":"https://github.com/textmate/git.tmbundle/commit/5870cf3f8abad3a6637bdf69250b5d2ded427dc4","name":"Git Rebase Message","scopeName":"text.git-rebase","patterns":[{"captures":{"1":{"name":"punctuation.definition.comment.git-rebase"}},"match":"^\\s*(#).*$\\n?","name":"comment.line.number-sign.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"},"2":{"name":"constant.sha.git-rebase"},"3":{"name":"meta.commit-message.git-rebase"}},"match":"^\\s*(pick|p|reword|r|edit|e|squash|s|fixup|f|drop|d)\\s+([0-9a-f]+)\\s+(.*)$","name":"meta.commit-command.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"},"2":{"patterns":[{"include":"source.shell"}]}},"match":"^\\s*(exec|x)\\s+(.*)$","name":"meta.commit-command.git-rebase"},{"captures":{"1":{"name":"support.function.git-rebase"}},"match":"^\\s*(break|b)\\s*$","name":"meta.commit-command.git-rebase"}]}
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"comments":{"lineComment":"#"}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"Ignore","scopeName":"source.ignore","patterns":[{"match":"^#.*","name":"comment.line.number-sign.ignore"}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"git-base","displayName":"%displayName%","description":"%description%","version":"1.0.0","publisher":"vscode","license":"MIT","engines":{"vscode":"0.10.x"},"categories":["Other"],"activationEvents":["*"],"main":"./dist/extension.js","browser":"./dist/browser/extension.js","icon":"resources/icons/git.png","capabilities":{"virtualWorkspaces":true,"untrustedWorkspaces":{"supported":true}},"contributes":{"commands":[{"command":"git-base.api.getRemoteSources","title":"%command.api.getRemoteSources%","category":"Git Base API"}],"menus":{"commandPalette":[{"command":"git-base.api.getRemoteSources","when":"false"}]},"languages":[{"id":"git-commit","aliases":["Git Commit Message","git-commit"],"filenames":["COMMIT_EDITMSG","MERGE_MSG"],"configuration":"./languages/git-commit.language-configuration.json"},{"id":"git-rebase","aliases":["Git Rebase Message","git-rebase"],"filenames":["git-rebase-todo"],"filenamePatterns":["**/rebase-merge/done"],"configuration":"./languages/git-rebase.language-configuration.json"},{"id":"ignore","aliases":["Ignore","ignore"],"extensions":[".gitignore_global",".gitignore",".git-blame-ignore-revs"],"configuration":"./languages/ignore.language-configuration.json"}],"grammars":[{"language":"git-commit","scopeName":"text.git-commit","path":"./syntaxes/git-commit.tmLanguage.json"},{"language":"git-rebase","scopeName":"text.git-rebase","path":"./syntaxes/git-rebase.tmLanguage.json"},{"language":"ignore","scopeName":"source.ignore","path":"./syntaxes/ignore.tmLanguage.json"}]},"repository":{"type":"git","url":"https://github.com/microsoft/vscode.git"}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"displayName":"Git Base","description":"Git static contributions and pickers.","command.api.getRemoteSources":"Get Remote Sources"}
|
package/extension.js
DELETED
|
@@ -1,530 +0,0 @@
|
|
|
1
|
-
/******/ (() => { // webpackBootstrap
|
|
2
|
-
/******/ "use strict";
|
|
3
|
-
/******/ var __webpack_modules__ = ([
|
|
4
|
-
/* 0 */,
|
|
5
|
-
/* 1 */
|
|
6
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
/*---------------------------------------------------------------------------------------------
|
|
10
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
11
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
12
|
-
*--------------------------------------------------------------------------------------------*/
|
|
13
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
14
|
-
exports.registerAPICommands = exports.ApiImpl = void 0;
|
|
15
|
-
const vscode_1 = __webpack_require__(2);
|
|
16
|
-
const remoteSource_1 = __webpack_require__(3);
|
|
17
|
-
class ApiImpl {
|
|
18
|
-
constructor(_model) {
|
|
19
|
-
this._model = _model;
|
|
20
|
-
}
|
|
21
|
-
pickRemoteSource(options) {
|
|
22
|
-
return (0, remoteSource_1.pickRemoteSource)(this._model, options);
|
|
23
|
-
}
|
|
24
|
-
getRemoteSourceActions(url) {
|
|
25
|
-
return (0, remoteSource_1.getRemoteSourceActions)(this._model, url);
|
|
26
|
-
}
|
|
27
|
-
registerRemoteSourceProvider(provider) {
|
|
28
|
-
return this._model.registerRemoteSourceProvider(provider);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.ApiImpl = ApiImpl;
|
|
32
|
-
function registerAPICommands(extension) {
|
|
33
|
-
const disposables = [];
|
|
34
|
-
disposables.push(vscode_1.commands.registerCommand('git-base.api.getRemoteSources', (opts) => {
|
|
35
|
-
if (!extension.model) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
return (0, remoteSource_1.pickRemoteSource)(extension.model, opts);
|
|
39
|
-
}));
|
|
40
|
-
return vscode_1.Disposable.from(...disposables);
|
|
41
|
-
}
|
|
42
|
-
exports.registerAPICommands = registerAPICommands;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
/***/ }),
|
|
46
|
-
/* 2 */
|
|
47
|
-
/***/ ((module) => {
|
|
48
|
-
|
|
49
|
-
module.exports = require("vscode");
|
|
50
|
-
|
|
51
|
-
/***/ }),
|
|
52
|
-
/* 3 */
|
|
53
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
/*---------------------------------------------------------------------------------------------
|
|
57
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
58
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
59
|
-
*--------------------------------------------------------------------------------------------*/
|
|
60
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
61
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
62
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
63
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
64
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
65
|
-
};
|
|
66
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
67
|
-
exports.pickRemoteSource = exports.getRemoteSourceActions = void 0;
|
|
68
|
-
const vscode_1 = __webpack_require__(2);
|
|
69
|
-
const decorators_1 = __webpack_require__(4);
|
|
70
|
-
async function getQuickPickResult(quickpick) {
|
|
71
|
-
const result = await new Promise(c => {
|
|
72
|
-
quickpick.onDidAccept(() => c(quickpick.selectedItems[0]));
|
|
73
|
-
quickpick.onDidHide(() => c(undefined));
|
|
74
|
-
quickpick.show();
|
|
75
|
-
});
|
|
76
|
-
quickpick.hide();
|
|
77
|
-
return result;
|
|
78
|
-
}
|
|
79
|
-
class RemoteSourceProviderQuickPick {
|
|
80
|
-
constructor(provider) {
|
|
81
|
-
this.provider = provider;
|
|
82
|
-
}
|
|
83
|
-
ensureQuickPick() {
|
|
84
|
-
if (!this.quickpick) {
|
|
85
|
-
this.quickpick = vscode_1.window.createQuickPick();
|
|
86
|
-
this.quickpick.ignoreFocusOut = true;
|
|
87
|
-
if (this.provider.supportsQuery) {
|
|
88
|
-
this.quickpick.placeholder = this.provider.placeholder ?? vscode_1.l10n.t('Repository name (type to search)');
|
|
89
|
-
this.quickpick.onDidChangeValue(this.onDidChangeValue, this);
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
this.quickpick.placeholder = this.provider.placeholder ?? vscode_1.l10n.t('Repository name');
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
onDidChangeValue() {
|
|
97
|
-
this.query();
|
|
98
|
-
}
|
|
99
|
-
async query() {
|
|
100
|
-
try {
|
|
101
|
-
this.ensureQuickPick();
|
|
102
|
-
this.quickpick.busy = true;
|
|
103
|
-
this.quickpick.show();
|
|
104
|
-
const remoteSources = await this.provider.getRemoteSources(this.quickpick?.value) || [];
|
|
105
|
-
if (remoteSources.length === 0) {
|
|
106
|
-
this.quickpick.items = [{
|
|
107
|
-
label: vscode_1.l10n.t('No remote repositories found.'),
|
|
108
|
-
alwaysShow: true
|
|
109
|
-
}];
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
this.quickpick.items = remoteSources.map(remoteSource => ({
|
|
113
|
-
label: remoteSource.icon ? `$(${remoteSource.icon}) ${remoteSource.name}` : remoteSource.name,
|
|
114
|
-
description: remoteSource.description || (typeof remoteSource.url === 'string' ? remoteSource.url : remoteSource.url[0]),
|
|
115
|
-
detail: remoteSource.detail,
|
|
116
|
-
remoteSource,
|
|
117
|
-
alwaysShow: true
|
|
118
|
-
}));
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
catch (err) {
|
|
122
|
-
this.quickpick.items = [{ label: vscode_1.l10n.t('{0} Error: {1}', '$(error)', err.message), alwaysShow: true }];
|
|
123
|
-
console.error(err);
|
|
124
|
-
}
|
|
125
|
-
finally {
|
|
126
|
-
this.quickpick.busy = false;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
async pick() {
|
|
130
|
-
await this.query();
|
|
131
|
-
const result = await getQuickPickResult(this.quickpick);
|
|
132
|
-
return result?.remoteSource;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
__decorate([
|
|
136
|
-
(0, decorators_1.debounce)(300)
|
|
137
|
-
], RemoteSourceProviderQuickPick.prototype, "onDidChangeValue", null);
|
|
138
|
-
__decorate([
|
|
139
|
-
decorators_1.throttle
|
|
140
|
-
], RemoteSourceProviderQuickPick.prototype, "query", null);
|
|
141
|
-
async function getRemoteSourceActions(model, url) {
|
|
142
|
-
const providers = model.getRemoteProviders();
|
|
143
|
-
const remoteSourceActions = [];
|
|
144
|
-
for (const provider of providers) {
|
|
145
|
-
const providerActions = await provider.getRemoteSourceActions?.(url);
|
|
146
|
-
if (providerActions?.length) {
|
|
147
|
-
remoteSourceActions.push(...providerActions);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return remoteSourceActions;
|
|
151
|
-
}
|
|
152
|
-
exports.getRemoteSourceActions = getRemoteSourceActions;
|
|
153
|
-
async function pickRemoteSource(model, options = {}) {
|
|
154
|
-
const quickpick = vscode_1.window.createQuickPick();
|
|
155
|
-
quickpick.title = options.title;
|
|
156
|
-
if (options.providerName) {
|
|
157
|
-
const provider = model.getRemoteProviders()
|
|
158
|
-
.filter(provider => provider.name === options.providerName)[0];
|
|
159
|
-
if (provider) {
|
|
160
|
-
return await pickProviderSource(provider, options);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
const remoteProviders = model.getRemoteProviders()
|
|
164
|
-
.map(provider => ({ label: (provider.icon ? `$(${provider.icon}) ` : '') + (options.providerLabel ? options.providerLabel(provider) : provider.name), alwaysShow: true, provider }));
|
|
165
|
-
const recentSources = [];
|
|
166
|
-
if (options.showRecentSources) {
|
|
167
|
-
for (const { provider } of remoteProviders) {
|
|
168
|
-
const sources = (await provider.getRecentRemoteSources?.() ?? []).map((item) => {
|
|
169
|
-
return {
|
|
170
|
-
...item,
|
|
171
|
-
label: (item.icon ? `$(${item.icon}) ` : '') + item.name,
|
|
172
|
-
url: typeof item.url === 'string' ? item.url : item.url[0],
|
|
173
|
-
};
|
|
174
|
-
});
|
|
175
|
-
recentSources.push(...sources);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
const items = [
|
|
179
|
-
{ kind: vscode_1.QuickPickItemKind.Separator, label: vscode_1.l10n.t('remote sources') },
|
|
180
|
-
...remoteProviders,
|
|
181
|
-
{ kind: vscode_1.QuickPickItemKind.Separator, label: vscode_1.l10n.t('recently opened') },
|
|
182
|
-
...recentSources.sort((a, b) => b.timestamp - a.timestamp)
|
|
183
|
-
];
|
|
184
|
-
quickpick.placeholder = options.placeholder ?? (remoteProviders.length === 0
|
|
185
|
-
? vscode_1.l10n.t('Provide repository URL')
|
|
186
|
-
: vscode_1.l10n.t('Provide repository URL or pick a repository source.'));
|
|
187
|
-
const updatePicks = (value) => {
|
|
188
|
-
if (value) {
|
|
189
|
-
const label = (typeof options.urlLabel === 'string' ? options.urlLabel : options.urlLabel?.(value)) ?? vscode_1.l10n.t('URL');
|
|
190
|
-
quickpick.items = [{
|
|
191
|
-
label: label,
|
|
192
|
-
description: value,
|
|
193
|
-
alwaysShow: true,
|
|
194
|
-
url: value
|
|
195
|
-
},
|
|
196
|
-
...items
|
|
197
|
-
];
|
|
198
|
-
}
|
|
199
|
-
else {
|
|
200
|
-
quickpick.items = items;
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
quickpick.onDidChangeValue(updatePicks);
|
|
204
|
-
updatePicks();
|
|
205
|
-
const result = await getQuickPickResult(quickpick);
|
|
206
|
-
if (result) {
|
|
207
|
-
if (result.url) {
|
|
208
|
-
return result.url;
|
|
209
|
-
}
|
|
210
|
-
else if (result.provider) {
|
|
211
|
-
return await pickProviderSource(result.provider, options);
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
return undefined;
|
|
215
|
-
}
|
|
216
|
-
exports.pickRemoteSource = pickRemoteSource;
|
|
217
|
-
async function pickProviderSource(provider, options = {}) {
|
|
218
|
-
const quickpick = new RemoteSourceProviderQuickPick(provider);
|
|
219
|
-
const remote = await quickpick.pick();
|
|
220
|
-
let url;
|
|
221
|
-
if (remote) {
|
|
222
|
-
if (typeof remote.url === 'string') {
|
|
223
|
-
url = remote.url;
|
|
224
|
-
}
|
|
225
|
-
else if (remote.url.length > 0) {
|
|
226
|
-
url = await vscode_1.window.showQuickPick(remote.url, { ignoreFocusOut: true, placeHolder: vscode_1.l10n.t('Choose a URL to clone from.') });
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
if (!url || !options.branch) {
|
|
230
|
-
return url;
|
|
231
|
-
}
|
|
232
|
-
if (!provider.getBranches) {
|
|
233
|
-
return { url };
|
|
234
|
-
}
|
|
235
|
-
const branches = await provider.getBranches(url);
|
|
236
|
-
if (!branches) {
|
|
237
|
-
return { url };
|
|
238
|
-
}
|
|
239
|
-
const branch = await vscode_1.window.showQuickPick(branches, {
|
|
240
|
-
placeHolder: vscode_1.l10n.t('Branch name')
|
|
241
|
-
});
|
|
242
|
-
if (!branch) {
|
|
243
|
-
return { url };
|
|
244
|
-
}
|
|
245
|
-
return { url, branch };
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
/***/ }),
|
|
250
|
-
/* 4 */
|
|
251
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
/*---------------------------------------------------------------------------------------------
|
|
255
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
256
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
257
|
-
*--------------------------------------------------------------------------------------------*/
|
|
258
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
259
|
-
exports.throttle = exports.debounce = void 0;
|
|
260
|
-
const util_1 = __webpack_require__(5);
|
|
261
|
-
function debounce(delay) {
|
|
262
|
-
return decorate((fn, key) => {
|
|
263
|
-
const timerKey = `$debounce$${key}`;
|
|
264
|
-
return function (...args) {
|
|
265
|
-
clearTimeout(this[timerKey]);
|
|
266
|
-
this[timerKey] = setTimeout(() => fn.apply(this, args), delay);
|
|
267
|
-
};
|
|
268
|
-
});
|
|
269
|
-
}
|
|
270
|
-
exports.debounce = debounce;
|
|
271
|
-
exports.throttle = decorate(_throttle);
|
|
272
|
-
function _throttle(fn, key) {
|
|
273
|
-
const currentKey = `$throttle$current$${key}`;
|
|
274
|
-
const nextKey = `$throttle$next$${key}`;
|
|
275
|
-
const trigger = function (...args) {
|
|
276
|
-
if (this[nextKey]) {
|
|
277
|
-
return this[nextKey];
|
|
278
|
-
}
|
|
279
|
-
if (this[currentKey]) {
|
|
280
|
-
this[nextKey] = (0, util_1.done)(this[currentKey]).then(() => {
|
|
281
|
-
this[nextKey] = undefined;
|
|
282
|
-
return trigger.apply(this, args);
|
|
283
|
-
});
|
|
284
|
-
return this[nextKey];
|
|
285
|
-
}
|
|
286
|
-
this[currentKey] = fn.apply(this, args);
|
|
287
|
-
const clear = () => this[currentKey] = undefined;
|
|
288
|
-
(0, util_1.done)(this[currentKey]).then(clear, clear);
|
|
289
|
-
return this[currentKey];
|
|
290
|
-
};
|
|
291
|
-
return trigger;
|
|
292
|
-
}
|
|
293
|
-
function decorate(decorator) {
|
|
294
|
-
return (_target, key, descriptor) => {
|
|
295
|
-
let fnKey = null;
|
|
296
|
-
let fn = null;
|
|
297
|
-
if (typeof descriptor.value === 'function') {
|
|
298
|
-
fnKey = 'value';
|
|
299
|
-
fn = descriptor.value;
|
|
300
|
-
}
|
|
301
|
-
else if (typeof descriptor.get === 'function') {
|
|
302
|
-
fnKey = 'get';
|
|
303
|
-
fn = descriptor.get;
|
|
304
|
-
}
|
|
305
|
-
if (!fn || !fnKey) {
|
|
306
|
-
throw new Error('not supported');
|
|
307
|
-
}
|
|
308
|
-
descriptor[fnKey] = decorator(fn, key);
|
|
309
|
-
};
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
/***/ }),
|
|
314
|
-
/* 5 */
|
|
315
|
-
/***/ ((__unused_webpack_module, exports) => {
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
/*---------------------------------------------------------------------------------------------
|
|
319
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
320
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
321
|
-
*--------------------------------------------------------------------------------------------*/
|
|
322
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
323
|
-
exports.Versions = exports.done = exports.toDisposable = void 0;
|
|
324
|
-
function toDisposable(dispose) {
|
|
325
|
-
return { dispose };
|
|
326
|
-
}
|
|
327
|
-
exports.toDisposable = toDisposable;
|
|
328
|
-
function done(promise) {
|
|
329
|
-
return promise.then(() => undefined);
|
|
330
|
-
}
|
|
331
|
-
exports.done = done;
|
|
332
|
-
var Versions;
|
|
333
|
-
(function (Versions) {
|
|
334
|
-
function compare(v1, v2) {
|
|
335
|
-
if (typeof v1 === 'string') {
|
|
336
|
-
v1 = fromString(v1);
|
|
337
|
-
}
|
|
338
|
-
if (typeof v2 === 'string') {
|
|
339
|
-
v2 = fromString(v2);
|
|
340
|
-
}
|
|
341
|
-
if (v1.major > v2.major) {
|
|
342
|
-
return 1;
|
|
343
|
-
}
|
|
344
|
-
if (v1.major < v2.major) {
|
|
345
|
-
return -1;
|
|
346
|
-
}
|
|
347
|
-
if (v1.minor > v2.minor) {
|
|
348
|
-
return 1;
|
|
349
|
-
}
|
|
350
|
-
if (v1.minor < v2.minor) {
|
|
351
|
-
return -1;
|
|
352
|
-
}
|
|
353
|
-
if (v1.patch > v2.patch) {
|
|
354
|
-
return 1;
|
|
355
|
-
}
|
|
356
|
-
if (v1.patch < v2.patch) {
|
|
357
|
-
return -1;
|
|
358
|
-
}
|
|
359
|
-
if (v1.pre === undefined && v2.pre !== undefined) {
|
|
360
|
-
return 1;
|
|
361
|
-
}
|
|
362
|
-
if (v1.pre !== undefined && v2.pre === undefined) {
|
|
363
|
-
return -1;
|
|
364
|
-
}
|
|
365
|
-
if (v1.pre !== undefined && v2.pre !== undefined) {
|
|
366
|
-
return v1.pre.localeCompare(v2.pre);
|
|
367
|
-
}
|
|
368
|
-
return 0;
|
|
369
|
-
}
|
|
370
|
-
Versions.compare = compare;
|
|
371
|
-
function from(major, minor, patch, pre) {
|
|
372
|
-
return {
|
|
373
|
-
major: typeof major === 'string' ? parseInt(major, 10) : major,
|
|
374
|
-
minor: typeof minor === 'string' ? parseInt(minor, 10) : minor,
|
|
375
|
-
patch: patch === undefined || patch === null ? 0 : typeof patch === 'string' ? parseInt(patch, 10) : patch,
|
|
376
|
-
pre: pre,
|
|
377
|
-
};
|
|
378
|
-
}
|
|
379
|
-
Versions.from = from;
|
|
380
|
-
function fromString(version) {
|
|
381
|
-
const [ver, pre] = version.split('-');
|
|
382
|
-
const [major, minor, patch] = ver.split('.');
|
|
383
|
-
return from(major, minor, patch, pre);
|
|
384
|
-
}
|
|
385
|
-
Versions.fromString = fromString;
|
|
386
|
-
})(Versions || (exports.Versions = Versions = {}));
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
/***/ }),
|
|
390
|
-
/* 6 */
|
|
391
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
/*---------------------------------------------------------------------------------------------
|
|
395
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
396
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
397
|
-
*--------------------------------------------------------------------------------------------*/
|
|
398
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
399
|
-
exports.GitBaseExtensionImpl = void 0;
|
|
400
|
-
const vscode_1 = __webpack_require__(2);
|
|
401
|
-
const api1_1 = __webpack_require__(1);
|
|
402
|
-
class GitBaseExtensionImpl {
|
|
403
|
-
set model(model) {
|
|
404
|
-
this._model = model;
|
|
405
|
-
const enabled = !!model;
|
|
406
|
-
if (this.enabled === enabled) {
|
|
407
|
-
return;
|
|
408
|
-
}
|
|
409
|
-
this.enabled = enabled;
|
|
410
|
-
this._onDidChangeEnablement.fire(this.enabled);
|
|
411
|
-
}
|
|
412
|
-
get model() {
|
|
413
|
-
return this._model;
|
|
414
|
-
}
|
|
415
|
-
constructor(model) {
|
|
416
|
-
this.enabled = false;
|
|
417
|
-
this._onDidChangeEnablement = new vscode_1.EventEmitter();
|
|
418
|
-
this.onDidChangeEnablement = this._onDidChangeEnablement.event;
|
|
419
|
-
this._model = undefined;
|
|
420
|
-
if (model) {
|
|
421
|
-
this.enabled = true;
|
|
422
|
-
this._model = model;
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
getAPI(version) {
|
|
426
|
-
if (!this._model) {
|
|
427
|
-
throw new Error('Git model not found');
|
|
428
|
-
}
|
|
429
|
-
if (version !== 1) {
|
|
430
|
-
throw new Error(`No API version ${version} found.`);
|
|
431
|
-
}
|
|
432
|
-
return new api1_1.ApiImpl(this._model);
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
exports.GitBaseExtensionImpl = GitBaseExtensionImpl;
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
/***/ }),
|
|
439
|
-
/* 7 */
|
|
440
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
/*---------------------------------------------------------------------------------------------
|
|
444
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
445
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
446
|
-
*--------------------------------------------------------------------------------------------*/
|
|
447
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
448
|
-
exports.Model = void 0;
|
|
449
|
-
const vscode_1 = __webpack_require__(2);
|
|
450
|
-
const util_1 = __webpack_require__(5);
|
|
451
|
-
class Model {
|
|
452
|
-
constructor() {
|
|
453
|
-
this.remoteSourceProviders = new Set();
|
|
454
|
-
this._onDidAddRemoteSourceProvider = new vscode_1.EventEmitter();
|
|
455
|
-
this.onDidAddRemoteSourceProvider = this._onDidAddRemoteSourceProvider.event;
|
|
456
|
-
this._onDidRemoveRemoteSourceProvider = new vscode_1.EventEmitter();
|
|
457
|
-
this.onDidRemoveRemoteSourceProvider = this._onDidRemoveRemoteSourceProvider.event;
|
|
458
|
-
}
|
|
459
|
-
registerRemoteSourceProvider(provider) {
|
|
460
|
-
this.remoteSourceProviders.add(provider);
|
|
461
|
-
this._onDidAddRemoteSourceProvider.fire(provider);
|
|
462
|
-
return (0, util_1.toDisposable)(() => {
|
|
463
|
-
this.remoteSourceProviders.delete(provider);
|
|
464
|
-
this._onDidRemoveRemoteSourceProvider.fire(provider);
|
|
465
|
-
});
|
|
466
|
-
}
|
|
467
|
-
getRemoteProviders() {
|
|
468
|
-
return [...this.remoteSourceProviders.values()];
|
|
469
|
-
}
|
|
470
|
-
}
|
|
471
|
-
exports.Model = Model;
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
/***/ })
|
|
475
|
-
/******/ ]);
|
|
476
|
-
/************************************************************************/
|
|
477
|
-
/******/ // The module cache
|
|
478
|
-
/******/ var __webpack_module_cache__ = {};
|
|
479
|
-
/******/
|
|
480
|
-
/******/ // The require function
|
|
481
|
-
/******/ function __webpack_require__(moduleId) {
|
|
482
|
-
/******/ // Check if module is in cache
|
|
483
|
-
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
|
484
|
-
/******/ if (cachedModule !== undefined) {
|
|
485
|
-
/******/ return cachedModule.exports;
|
|
486
|
-
/******/ }
|
|
487
|
-
/******/ // Create a new module (and put it into the cache)
|
|
488
|
-
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
489
|
-
/******/ // no module.id needed
|
|
490
|
-
/******/ // no module.loaded needed
|
|
491
|
-
/******/ exports: {}
|
|
492
|
-
/******/ };
|
|
493
|
-
/******/
|
|
494
|
-
/******/ // Execute the module function
|
|
495
|
-
/******/ __webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
|
496
|
-
/******/
|
|
497
|
-
/******/ // Return the exports of the module
|
|
498
|
-
/******/ return module.exports;
|
|
499
|
-
/******/ }
|
|
500
|
-
/******/
|
|
501
|
-
/************************************************************************/
|
|
502
|
-
var __webpack_exports__ = {};
|
|
503
|
-
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
|
|
504
|
-
(() => {
|
|
505
|
-
var exports = __webpack_exports__;
|
|
506
|
-
|
|
507
|
-
/*---------------------------------------------------------------------------------------------
|
|
508
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
509
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
510
|
-
*--------------------------------------------------------------------------------------------*/
|
|
511
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
512
|
-
exports.activate = void 0;
|
|
513
|
-
const api1_1 = __webpack_require__(1);
|
|
514
|
-
const extension_1 = __webpack_require__(6);
|
|
515
|
-
const model_1 = __webpack_require__(7);
|
|
516
|
-
function activate(context) {
|
|
517
|
-
const apiImpl = new extension_1.GitBaseExtensionImpl(new model_1.Model());
|
|
518
|
-
context.subscriptions.push((0, api1_1.registerAPICommands)(apiImpl));
|
|
519
|
-
return apiImpl;
|
|
520
|
-
}
|
|
521
|
-
exports.activate = activate;
|
|
522
|
-
|
|
523
|
-
})();
|
|
524
|
-
|
|
525
|
-
var __webpack_export_target__ = exports;
|
|
526
|
-
for(var i in __webpack_exports__) __webpack_export_target__[i] = __webpack_exports__[i];
|
|
527
|
-
if(__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, "__esModule", { value: true });
|
|
528
|
-
/******/ })()
|
|
529
|
-
;
|
|
530
|
-
//# sourceMappingURL=extension.js.map
|
package/extension.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","mappings":";;;;;;;;AAAA;;;gGAGgG;;;AAEhG,wCAA8C;AAE9C,8CAA2E;AAI3E,MAAa,OAAO;IAEnB,YAAoB,MAAa;QAAb,WAAM,GAAN,MAAM,CAAO;IAAI,CAAC;IAEtC,gBAAgB,CAAC,OAAgC;QAChD,OAAO,mCAAgB,EAAC,IAAI,CAAC,MAAM,EAAE,OAAc,CAAC,CAAC;IACtD,CAAC;IAED,sBAAsB,CAAC,GAAW;QACjC,OAAO,yCAAsB,EAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,4BAA4B,CAAC,QAA8B;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;CACD;AAfD,0BAeC;AAED,SAAgB,mBAAmB,CAAC,SAA+B;IAClE,MAAM,WAAW,GAAiB,EAAE,CAAC;IAErC,WAAW,CAAC,IAAI,CAAC,iBAAQ,CAAC,eAAe,CAAC,+BAA+B,EAAE,CAAC,IAA8B,EAAE,EAAE;QAC7G,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QAED,OAAO,mCAAgB,EAAC,SAAS,CAAC,KAAK,EAAE,IAAW,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC,CAAC;IAEJ,OAAO,mBAAU,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;AACxC,CAAC;AAZD,kDAYC;;;;;;;ACxCD;;;;;;;ACAA;;;gGAGgG;;;;;;;;;AAEhG,wCAAmF;AAGnF,4CAAkD;AAElD,KAAK,UAAU,kBAAkB,CAA0B,SAAuB;IACjF,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAgB,CAAC,CAAC,EAAE;QACnD,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACxC,SAAS,CAAC,IAAI,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,IAAI,EAAE,CAAC;IACjB,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,6BAA6B;IAIlC,YAAoB,QAA8B;QAA9B,aAAQ,GAAR,QAAQ,CAAsB;IAAI,CAAC;IAE/C,eAAe;QACtB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,eAAM,CAAC,eAAe,EAAE,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC;YACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;gBACjC,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,aAAI,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC;gBACrG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,aAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACrF,CAAC;QACF,CAAC;IACF,CAAC;IAGO,gBAAgB;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAGa,KAAD,CAAC,KAAK;QAClB,IAAI,CAAC;YACJ,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,SAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,SAAU,CAAC,IAAI,EAAE,CAAC;YAEvB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YAExF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAU,CAAC,KAAK,GAAG,CAAC;wBACxB,KAAK,EAAE,aAAI,CAAC,CAAC,CAAC,+BAA+B,CAAC;wBAC9C,UAAU,EAAE,IAAI;qBAChB,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,SAAU,CAAC,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;oBAC1D,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI;oBAC7F,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,CAAC,OAAO,YAAY,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACxH,MAAM,EAAE,YAAY,CAAC,MAAM;oBAC3B,YAAY;oBACZ,UAAU,EAAE,IAAI;iBAChB,CAAC,CAAC,CAAC;YACL,CAAC;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,SAAU,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,aAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YACzG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC,SAAU,CAAC,IAAI,GAAG,KAAK,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI;QACT,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,SAAU,CAAC,CAAC;QACzD,OAAO,MAAM,EAAE,YAAY,CAAC;IAC7B,CAAC;CACD;AAxCQ;IADP,yBAAQ,EAAC,GAAG,CAAC;qEAGb;AAGa;IADb,qBAAQ;0DA6BR;AASK,KAAK,UAAU,sBAAsB,CAAC,KAAY,EAAE,GAAW;IACrE,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAE7C,MAAM,mBAAmB,GAAG,EAAE,CAAC;IAC/B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,eAAe,EAAE,MAAM,EAAE,CAAC;YAC7B,mBAAmB,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QAC9C,CAAC;IACF,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC5B,CAAC;AAZD,wDAYC;AAIM,KAAK,UAAU,gBAAgB,CAAC,KAAY,EAAE,UAAmC,EAAE;IACzF,MAAM,SAAS,GAAG,eAAM,CAAC,eAAe,EAAuE,CAAC;IAChH,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAEhC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,kBAAkB,EAAE;aACzC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhE,IAAI,QAAQ,EAAE,CAAC;YACd,OAAO,MAAM,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,kBAAkB,EAAE;SAChD,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEtL,MAAM,aAAa,GAA4D,EAAE,CAAC;IAClF,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC/B,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,eAAe,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC9E,OAAO;oBACN,GAAG,IAAI;oBACP,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI;oBACxD,GAAG,EAAE,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC1D,CAAC;YACH,CAAC,CAAC,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAChC,CAAC;IACF,CAAC;IAED,MAAM,KAAK,GAAG;QACb,EAAE,IAAI,EAAE,0BAAiB,CAAC,SAAS,EAAE,KAAK,EAAE,aAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE;QACtE,GAAG,eAAe;QAClB,EAAE,IAAI,EAAE,0BAAiB,CAAC,SAAS,EAAE,KAAK,EAAE,aAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,EAAE;QACvE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;KAC1D,CAAC;IAEF,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC;QAC3E,CAAC,CAAC,aAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC;QAClC,CAAC,CAAC,aAAI,CAAC,CAAC,CAAC,qDAAqD,CAAC,CAAC,CAAC;IAElE,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,EAAE;QACtC,IAAI,KAAK,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,CAAC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,aAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACrH,SAAS,CAAC,KAAK,GAAG,CAAC;oBAClB,KAAK,EAAE,KAAK;oBACZ,WAAW,EAAE,KAAK;oBAClB,UAAU,EAAE,IAAI;oBAChB,GAAG,EAAE,KAAK;iBACV;gBACD,GAAG,KAAK;aACP,CAAC;QACH,CAAC;aAAM,CAAC;YACP,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,CAAC;IACF,CAAC,CAAC;IAEF,SAAS,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACxC,WAAW,EAAE,CAAC;IAEd,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAEnD,IAAI,MAAM,EAAE,CAAC;QACZ,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC,GAAG,CAAC;QACnB,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YAC5B,OAAO,MAAM,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;IACF,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC;AAvED,4CAuEC;AAED,KAAK,UAAU,kBAAkB,CAAC,QAA8B,EAAE,UAAmC,EAAE;IACtG,MAAM,SAAS,GAAG,IAAI,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;IAEtC,IAAI,GAAuB,CAAC;IAE5B,IAAI,MAAM,EAAE,CAAC;QACZ,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QAClB,CAAC;aAAM,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,GAAG,GAAG,MAAM,eAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,aAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;IACF,CAAC;IAED,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC7B,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC3B,OAAO,EAAE,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,OAAO,EAAE,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,eAAM,CAAC,aAAa,CAAC,QAAQ,EAAE;QACnD,WAAW,EAAE,aAAI,CAAC,CAAC,CAAC,aAAa,CAAC;KAClC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,EAAE,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;AACxB,CAAC;;;;;;;;ACjND;;;gGAGgG;;;AAEhG,sCAA8B;AAE9B,SAAgB,QAAQ,CAAC,KAAa;IACrC,OAAO,QAAQ,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QAC3B,MAAM,QAAQ,GAAG,aAAa,GAAG,EAAE,CAAC;QAEpC,OAAO,UAAqB,GAAG,IAAW;YACzC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC;AATD,4BASC;AAEY,gBAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;AAE5C,SAAS,SAAS,CAAI,EAAY,EAAE,GAAW;IAC9C,MAAM,UAAU,GAAG,qBAAqB,GAAG,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,kBAAkB,GAAG,EAAE,CAAC;IAExC,MAAM,OAAO,GAAG,UAAqB,GAAG,IAAW;QAClD,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,CAAC,GAAG,eAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,IAAI,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;gBAC1B,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAe,CAAC;QAEtD,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;QACjD,eAAI,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1C,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,SAAS,QAAQ,CAAC,SAAkD;IACnE,OAAO,CAAC,OAAY,EAAE,GAAW,EAAE,UAAe,EAAE,EAAE;QACrD,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,IAAI,EAAE,GAAoB,IAAI,CAAC;QAE/B,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAC5C,KAAK,GAAG,OAAO,CAAC;YAChB,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC;QACvB,CAAC;aAAM,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YACjD,KAAK,GAAG,KAAK,CAAC;YACd,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAClC,CAAC;QAED,UAAU,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC,CAAC;AACH,CAAC;;;;;;;;ACpED;;;gGAGgG;;;AAMhG,SAAgB,YAAY,CAAC,OAAmB;IAC/C,OAAO,EAAE,OAAO,EAAE,CAAC;AACpB,CAAC;AAFD,oCAEC;AAED,SAAgB,IAAI,CAAI,OAAmB;IAC1C,OAAO,OAAO,CAAC,IAAI,CAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC;AAFD,oBAEC;AAED,IAAiB,QAAQ,CAmDxB;AAnDD,WAAiB,QAAQ;IAUxB,SAAgB,OAAO,CAAC,EAAoB,EAAE,EAAoB;QACjE,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC5B,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC5B,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;QAED,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACtC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAEvC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACtC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAEvC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACtC,IAAI,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAEvC,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAC/D,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAEhE,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAClD,OAAO,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,GAAG,CAA4B,CAAC;QAChE,CAAC;QAED,OAAO,CAAC,CAAC;IACV,CAAC;IAzBe,gBAAO,UAyBtB;IAED,SAAgB,IAAI,CAAC,KAAsB,EAAE,KAAsB,EAAE,KAAuB,EAAE,GAAY;QACzG,OAAO;YACN,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK;YAC9D,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK;YAC9D,KAAK,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK;YAC1G,GAAG,EAAE,GAAG;SACR,CAAC;IACH,CAAC;IAPe,aAAI,OAOnB;IAED,SAAgB,UAAU,CAAC,OAAe;QACzC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IACvC,CAAC;IAJe,mBAAU,aAIzB;AACF,CAAC,EAnDgB,QAAQ,wBAAR,QAAQ,QAmDxB;;;;;;;;ACpED;;;gGAGgG;;;AAIhG,wCAA6C;AAC7C,sCAAiC;AAEjC,MAAa,oBAAoB;IAShC,IAAI,KAAK,CAAC,KAAwB;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC;QAExB,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC9B,OAAO;QACR,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IAED,YAAY,KAAa;QAxBzB,YAAO,GAAY,KAAK,CAAC;QAEjB,2BAAsB,GAAG,IAAI,qBAAY,EAAW,CAAC;QACpD,0BAAqB,GAAmB,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAE3E,WAAM,GAAsB,SAAS,CAAC;QAoB7C,IAAI,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACrB,CAAC;IACF,CAAC;IAED,MAAM,CAAC,OAAe;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,SAAS,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,IAAI,cAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;CACD;AA5CD,oDA4CC;;;;;;;;ACtDD;;;gGAGgG;;;AAEhG,wCAAkD;AAClD,sCAAsC;AAItC,MAAa,KAAK;IAAlB;QAES,0BAAqB,GAAG,IAAI,GAAG,EAAwB,CAAC;QAExD,kCAA6B,GAAG,IAAI,qBAAY,EAAwB,CAAC;QACxE,iCAA4B,GAAG,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC;QAEzE,qCAAgC,GAAG,IAAI,qBAAY,EAAwB,CAAC;QAC3E,oCAA+B,GAAG,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC;IAexF,CAAC;IAbA,4BAA4B,CAAC,QAA8B;QAC1D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElD,OAAO,uBAAY,EAAC,GAAG,EAAE;YACxB,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,kBAAkB;QACjB,OAAO,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;CACD;AAvBD,sBAuBC;;;;;;UCjCD;UACA;;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;;UAEA;UACA;;UAEA;UACA;UACA;;;;;;;;ACtBA;;;gGAGgG;;;AAGhG,sCAAiD;AACjD,2CAAuD;AACvD,uCAAgC;AAEhC,SAAgB,QAAQ,CAAC,OAAyB;IACjD,MAAM,OAAO,GAAG,IAAI,gCAAoB,CAAC,IAAI,aAAK,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,8BAAmB,EAAC,OAAO,CAAC,CAAC,CAAC;IAEzD,OAAO,OAAO,CAAC;AAChB,CAAC;AALD,4BAKC","sources":["webpack://git-base/./src/api/api1.ts","webpack://git-base/external commonjs \"vscode\"","webpack://git-base/./src/remoteSource.ts","webpack://git-base/./src/decorators.ts","webpack://git-base/./src/util.ts","webpack://git-base/./src/api/extension.ts","webpack://git-base/./src/model.ts","webpack://git-base/webpack/bootstrap","webpack://git-base/./src/extension.ts"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { Disposable, commands } from 'vscode';\nimport { Model } from '../model';\nimport { getRemoteSourceActions, pickRemoteSource } from '../remoteSource';\nimport { GitBaseExtensionImpl } from './extension';\nimport { API, PickRemoteSourceOptions, PickRemoteSourceResult, RemoteSourceAction, RemoteSourceProvider } from './git-base';\n\nexport class ApiImpl implements API {\n\n\tconstructor(private _model: Model) { }\n\n\tpickRemoteSource(options: PickRemoteSourceOptions): Promise<PickRemoteSourceResult | string | undefined> {\n\t\treturn pickRemoteSource(this._model, options as any);\n\t}\n\n\tgetRemoteSourceActions(url: string): Promise<RemoteSourceAction[]> {\n\t\treturn getRemoteSourceActions(this._model, url);\n\t}\n\n\tregisterRemoteSourceProvider(provider: RemoteSourceProvider): Disposable {\n\t\treturn this._model.registerRemoteSourceProvider(provider);\n\t}\n}\n\nexport function registerAPICommands(extension: GitBaseExtensionImpl): Disposable {\n\tconst disposables: Disposable[] = [];\n\n\tdisposables.push(commands.registerCommand('git-base.api.getRemoteSources', (opts?: PickRemoteSourceOptions) => {\n\t\tif (!extension.model) {\n\t\t\treturn;\n\t\t}\n\n\t\treturn pickRemoteSource(extension.model, opts as any);\n\t}));\n\n\treturn Disposable.from(...disposables);\n}\n","module.exports = require(\"vscode\");","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { QuickPickItem, window, QuickPick, QuickPickItemKind, l10n } from 'vscode';\nimport { RemoteSourceProvider, RemoteSource, PickRemoteSourceOptions, PickRemoteSourceResult, RemoteSourceAction } from './api/git-base';\nimport { Model } from './model';\nimport { throttle, debounce } from './decorators';\n\nasync function getQuickPickResult<T extends QuickPickItem>(quickpick: QuickPick<T>): Promise<T | undefined> {\n\tconst result = await new Promise<T | undefined>(c => {\n\t\tquickpick.onDidAccept(() => c(quickpick.selectedItems[0]));\n\t\tquickpick.onDidHide(() => c(undefined));\n\t\tquickpick.show();\n\t});\n\n\tquickpick.hide();\n\treturn result;\n}\n\nclass RemoteSourceProviderQuickPick {\n\n\tprivate quickpick: QuickPick<QuickPickItem & { remoteSource?: RemoteSource }> | undefined;\n\n\tconstructor(private provider: RemoteSourceProvider) { }\n\n\tprivate ensureQuickPick() {\n\t\tif (!this.quickpick) {\n\t\t\tthis.quickpick = window.createQuickPick();\n\t\t\tthis.quickpick.ignoreFocusOut = true;\n\t\t\tif (this.provider.supportsQuery) {\n\t\t\t\tthis.quickpick.placeholder = this.provider.placeholder ?? l10n.t('Repository name (type to search)');\n\t\t\t\tthis.quickpick.onDidChangeValue(this.onDidChangeValue, this);\n\t\t\t} else {\n\t\t\t\tthis.quickpick.placeholder = this.provider.placeholder ?? l10n.t('Repository name');\n\t\t\t}\n\t\t}\n\t}\n\n\t@debounce(300)\n\tprivate onDidChangeValue(): void {\n\t\tthis.query();\n\t}\n\n\t@throttle\n\tprivate async query(): Promise<void> {\n\t\ttry {\n\t\t\tthis.ensureQuickPick();\n\t\t\tthis.quickpick!.busy = true;\n\t\t\tthis.quickpick!.show();\n\n\t\t\tconst remoteSources = await this.provider.getRemoteSources(this.quickpick?.value) || [];\n\n\t\t\tif (remoteSources.length === 0) {\n\t\t\t\tthis.quickpick!.items = [{\n\t\t\t\t\tlabel: l10n.t('No remote repositories found.'),\n\t\t\t\t\talwaysShow: true\n\t\t\t\t}];\n\t\t\t} else {\n\t\t\t\tthis.quickpick!.items = remoteSources.map(remoteSource => ({\n\t\t\t\t\tlabel: remoteSource.icon ? `$(${remoteSource.icon}) ${remoteSource.name}` : remoteSource.name,\n\t\t\t\t\tdescription: remoteSource.description || (typeof remoteSource.url === 'string' ? remoteSource.url : remoteSource.url[0]),\n\t\t\t\t\tdetail: remoteSource.detail,\n\t\t\t\t\tremoteSource,\n\t\t\t\t\talwaysShow: true\n\t\t\t\t}));\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tthis.quickpick!.items = [{ label: l10n.t('{0} Error: {1}', '$(error)', err.message), alwaysShow: true }];\n\t\t\tconsole.error(err);\n\t\t} finally {\n\t\t\tthis.quickpick!.busy = false;\n\t\t}\n\t}\n\n\tasync pick(): Promise<RemoteSource | undefined> {\n\t\tawait this.query();\n\t\tconst result = await getQuickPickResult(this.quickpick!);\n\t\treturn result?.remoteSource;\n\t}\n}\n\nexport async function getRemoteSourceActions(model: Model, url: string): Promise<RemoteSourceAction[]> {\n\tconst providers = model.getRemoteProviders();\n\n\tconst remoteSourceActions = [];\n\tfor (const provider of providers) {\n\t\tconst providerActions = await provider.getRemoteSourceActions?.(url);\n\t\tif (providerActions?.length) {\n\t\t\tremoteSourceActions.push(...providerActions);\n\t\t}\n\t}\n\n\treturn remoteSourceActions;\n}\n\nexport async function pickRemoteSource(model: Model, options: PickRemoteSourceOptions & { branch?: false | undefined }): Promise<string | undefined>;\nexport async function pickRemoteSource(model: Model, options: PickRemoteSourceOptions & { branch: true }): Promise<PickRemoteSourceResult | undefined>;\nexport async function pickRemoteSource(model: Model, options: PickRemoteSourceOptions = {}): Promise<string | PickRemoteSourceResult | undefined> {\n\tconst quickpick = window.createQuickPick<(QuickPickItem & { provider?: RemoteSourceProvider; url?: string })>();\n\tquickpick.title = options.title;\n\n\tif (options.providerName) {\n\t\tconst provider = model.getRemoteProviders()\n\t\t\t.filter(provider => provider.name === options.providerName)[0];\n\n\t\tif (provider) {\n\t\t\treturn await pickProviderSource(provider, options);\n\t\t}\n\t}\n\n\tconst remoteProviders = model.getRemoteProviders()\n\t\t.map(provider => ({ label: (provider.icon ? `$(${provider.icon}) ` : '') + (options.providerLabel ? options.providerLabel(provider) : provider.name), alwaysShow: true, provider }));\n\n\tconst recentSources: (QuickPickItem & { url?: string; timestamp: number })[] = [];\n\tif (options.showRecentSources) {\n\t\tfor (const { provider } of remoteProviders) {\n\t\t\tconst sources = (await provider.getRecentRemoteSources?.() ?? []).map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\t...item,\n\t\t\t\t\tlabel: (item.icon ? `$(${item.icon}) ` : '') + item.name,\n\t\t\t\t\turl: typeof item.url === 'string' ? item.url : item.url[0],\n\t\t\t\t};\n\t\t\t});\n\t\t\trecentSources.push(...sources);\n\t\t}\n\t}\n\n\tconst items = [\n\t\t{ kind: QuickPickItemKind.Separator, label: l10n.t('remote sources') },\n\t\t...remoteProviders,\n\t\t{ kind: QuickPickItemKind.Separator, label: l10n.t('recently opened') },\n\t\t...recentSources.sort((a, b) => b.timestamp - a.timestamp)\n\t];\n\n\tquickpick.placeholder = options.placeholder ?? (remoteProviders.length === 0\n\t\t? l10n.t('Provide repository URL')\n\t\t: l10n.t('Provide repository URL or pick a repository source.'));\n\n\tconst updatePicks = (value?: string) => {\n\t\tif (value) {\n\t\t\tconst label = (typeof options.urlLabel === 'string' ? options.urlLabel : options.urlLabel?.(value)) ?? l10n.t('URL');\n\t\t\tquickpick.items = [{\n\t\t\t\tlabel: label,\n\t\t\t\tdescription: value,\n\t\t\t\talwaysShow: true,\n\t\t\t\turl: value\n\t\t\t},\n\t\t\t...items\n\t\t\t];\n\t\t} else {\n\t\t\tquickpick.items = items;\n\t\t}\n\t};\n\n\tquickpick.onDidChangeValue(updatePicks);\n\tupdatePicks();\n\n\tconst result = await getQuickPickResult(quickpick);\n\n\tif (result) {\n\t\tif (result.url) {\n\t\t\treturn result.url;\n\t\t} else if (result.provider) {\n\t\t\treturn await pickProviderSource(result.provider, options);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nasync function pickProviderSource(provider: RemoteSourceProvider, options: PickRemoteSourceOptions = {}): Promise<string | PickRemoteSourceResult | undefined> {\n\tconst quickpick = new RemoteSourceProviderQuickPick(provider);\n\tconst remote = await quickpick.pick();\n\n\tlet url: string | undefined;\n\n\tif (remote) {\n\t\tif (typeof remote.url === 'string') {\n\t\t\turl = remote.url;\n\t\t} else if (remote.url.length > 0) {\n\t\t\turl = await window.showQuickPick(remote.url, { ignoreFocusOut: true, placeHolder: l10n.t('Choose a URL to clone from.') });\n\t\t}\n\t}\n\n\tif (!url || !options.branch) {\n\t\treturn url;\n\t}\n\n\tif (!provider.getBranches) {\n\t\treturn { url };\n\t}\n\n\tconst branches = await provider.getBranches(url);\n\n\tif (!branches) {\n\t\treturn { url };\n\t}\n\n\tconst branch = await window.showQuickPick(branches, {\n\t\tplaceHolder: l10n.t('Branch name')\n\t});\n\n\tif (!branch) {\n\t\treturn { url };\n\t}\n\n\treturn { url, branch };\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { done } from './util';\n\nexport function debounce(delay: number): Function {\n\treturn decorate((fn, key) => {\n\t\tconst timerKey = `$debounce$${key}`;\n\n\t\treturn function (this: any, ...args: any[]) {\n\t\t\tclearTimeout(this[timerKey]);\n\t\t\tthis[timerKey] = setTimeout(() => fn.apply(this, args), delay);\n\t\t};\n\t});\n}\n\nexport const throttle = decorate(_throttle);\n\nfunction _throttle<T>(fn: Function, key: string): Function {\n\tconst currentKey = `$throttle$current$${key}`;\n\tconst nextKey = `$throttle$next$${key}`;\n\n\tconst trigger = function (this: any, ...args: any[]) {\n\t\tif (this[nextKey]) {\n\t\t\treturn this[nextKey];\n\t\t}\n\n\t\tif (this[currentKey]) {\n\t\t\tthis[nextKey] = done(this[currentKey]).then(() => {\n\t\t\t\tthis[nextKey] = undefined;\n\t\t\t\treturn trigger.apply(this, args);\n\t\t\t});\n\n\t\t\treturn this[nextKey];\n\t\t}\n\n\t\tthis[currentKey] = fn.apply(this, args) as Promise<T>;\n\n\t\tconst clear = () => this[currentKey] = undefined;\n\t\tdone(this[currentKey]).then(clear, clear);\n\n\t\treturn this[currentKey];\n\t};\n\n\treturn trigger;\n}\n\nfunction decorate(decorator: (fn: Function, key: string) => Function): Function {\n\treturn (_target: any, key: string, descriptor: any) => {\n\t\tlet fnKey: string | null = null;\n\t\tlet fn: Function | null = null;\n\n\t\tif (typeof descriptor.value === 'function') {\n\t\t\tfnKey = 'value';\n\t\t\tfn = descriptor.value;\n\t\t} else if (typeof descriptor.get === 'function') {\n\t\t\tfnKey = 'get';\n\t\t\tfn = descriptor.get;\n\t\t}\n\n\t\tif (!fn || !fnKey) {\n\t\t\tthrow new Error('not supported');\n\t\t}\n\n\t\tdescriptor[fnKey] = decorator(fn, key);\n\t};\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nexport interface IDisposable {\n\tdispose(): void;\n}\n\nexport function toDisposable(dispose: () => void): IDisposable {\n\treturn { dispose };\n}\n\nexport function done<T>(promise: Promise<T>): Promise<void> {\n\treturn promise.then<void>(() => undefined);\n}\n\nexport namespace Versions {\n\tdeclare type VersionComparisonResult = -1 | 0 | 1;\n\n\texport interface Version {\n\t\tmajor: number;\n\t\tminor: number;\n\t\tpatch: number;\n\t\tpre?: string;\n\t}\n\n\texport function compare(v1: string | Version, v2: string | Version): VersionComparisonResult {\n\t\tif (typeof v1 === 'string') {\n\t\t\tv1 = fromString(v1);\n\t\t}\n\t\tif (typeof v2 === 'string') {\n\t\t\tv2 = fromString(v2);\n\t\t}\n\n\t\tif (v1.major > v2.major) { return 1; }\n\t\tif (v1.major < v2.major) { return -1; }\n\n\t\tif (v1.minor > v2.minor) { return 1; }\n\t\tif (v1.minor < v2.minor) { return -1; }\n\n\t\tif (v1.patch > v2.patch) { return 1; }\n\t\tif (v1.patch < v2.patch) { return -1; }\n\n\t\tif (v1.pre === undefined && v2.pre !== undefined) { return 1; }\n\t\tif (v1.pre !== undefined && v2.pre === undefined) { return -1; }\n\n\t\tif (v1.pre !== undefined && v2.pre !== undefined) {\n\t\t\treturn v1.pre.localeCompare(v2.pre) as VersionComparisonResult;\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\texport function from(major: string | number, minor: string | number, patch?: string | number, pre?: string): Version {\n\t\treturn {\n\t\t\tmajor: typeof major === 'string' ? parseInt(major, 10) : major,\n\t\t\tminor: typeof minor === 'string' ? parseInt(minor, 10) : minor,\n\t\t\tpatch: patch === undefined || patch === null ? 0 : typeof patch === 'string' ? parseInt(patch, 10) : patch,\n\t\t\tpre: pre,\n\t\t};\n\t}\n\n\texport function fromString(version: string): Version {\n\t\tconst [ver, pre] = version.split('-');\n\t\tconst [major, minor, patch] = ver.split('.');\n\t\treturn from(major, minor, patch, pre);\n\t}\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { Model } from '../model';\nimport { GitBaseExtension, API } from './git-base';\nimport { Event, EventEmitter } from 'vscode';\nimport { ApiImpl } from './api1';\n\nexport class GitBaseExtensionImpl implements GitBaseExtension {\n\n\tenabled: boolean = false;\n\n\tprivate _onDidChangeEnablement = new EventEmitter<boolean>();\n\treadonly onDidChangeEnablement: Event<boolean> = this._onDidChangeEnablement.event;\n\n\tprivate _model: Model | undefined = undefined;\n\n\tset model(model: Model | undefined) {\n\t\tthis._model = model;\n\n\t\tconst enabled = !!model;\n\n\t\tif (this.enabled === enabled) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.enabled = enabled;\n\t\tthis._onDidChangeEnablement.fire(this.enabled);\n\t}\n\n\tget model(): Model | undefined {\n\t\treturn this._model;\n\t}\n\n\tconstructor(model?: Model) {\n\t\tif (model) {\n\t\t\tthis.enabled = true;\n\t\t\tthis._model = model;\n\t\t}\n\t}\n\n\tgetAPI(version: number): API {\n\t\tif (!this._model) {\n\t\t\tthrow new Error('Git model not found');\n\t\t}\n\n\t\tif (version !== 1) {\n\t\t\tthrow new Error(`No API version ${version} found.`);\n\t\t}\n\n\t\treturn new ApiImpl(this._model);\n\t}\n}\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { EventEmitter, Disposable } from 'vscode';\nimport { toDisposable } from './util';\nimport { RemoteSourceProvider } from './api/git-base';\nimport { IRemoteSourceProviderRegistry } from './remoteProvider';\n\nexport class Model implements IRemoteSourceProviderRegistry {\n\n\tprivate remoteSourceProviders = new Set<RemoteSourceProvider>();\n\n\tprivate _onDidAddRemoteSourceProvider = new EventEmitter<RemoteSourceProvider>();\n\treadonly onDidAddRemoteSourceProvider = this._onDidAddRemoteSourceProvider.event;\n\n\tprivate _onDidRemoveRemoteSourceProvider = new EventEmitter<RemoteSourceProvider>();\n\treadonly onDidRemoveRemoteSourceProvider = this._onDidRemoveRemoteSourceProvider.event;\n\n\tregisterRemoteSourceProvider(provider: RemoteSourceProvider): Disposable {\n\t\tthis.remoteSourceProviders.add(provider);\n\t\tthis._onDidAddRemoteSourceProvider.fire(provider);\n\n\t\treturn toDisposable(() => {\n\t\t\tthis.remoteSourceProviders.delete(provider);\n\t\t\tthis._onDidRemoveRemoteSourceProvider.fire(provider);\n\t\t});\n\t}\n\n\tgetRemoteProviders(): RemoteSourceProvider[] {\n\t\treturn [...this.remoteSourceProviders.values()];\n\t}\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { ExtensionContext } from 'vscode';\nimport { registerAPICommands } from './api/api1';\nimport { GitBaseExtensionImpl } from './api/extension';\nimport { Model } from './model';\n\nexport function activate(context: ExtensionContext): GitBaseExtensionImpl {\n\tconst apiImpl = new GitBaseExtensionImpl(new Model());\n\tcontext.subscriptions.push(registerAPICommands(apiImpl));\n\n\treturn apiImpl;\n}\n"],"names":[],"sourceRoot":""}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"information_for_contributors": [
|
|
3
|
-
"This file has been converted from https://github.com/walles/git-commit-message-plus/blob/master/syntaxes/git-commit.tmLanguage.json",
|
|
4
|
-
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
|
|
5
|
-
"Once accepted there, we are happy to receive an update request."
|
|
6
|
-
],
|
|
7
|
-
"version": "https://github.com/walles/git-commit-message-plus/commit/35a079dea5a91b087021b40c01a6bb4eb0337a87",
|
|
8
|
-
"name": "Git Commit Message",
|
|
9
|
-
"scopeName": "text.git-commit",
|
|
10
|
-
"patterns": [
|
|
11
|
-
{
|
|
12
|
-
"comment": "diff presented at the end of the commit message when using commit -v.",
|
|
13
|
-
"name": "meta.embedded.diff.git-commit",
|
|
14
|
-
"contentName": "source.diff",
|
|
15
|
-
"begin": "(?=^diff\\ \\-\\-git)",
|
|
16
|
-
"end": "\\z",
|
|
17
|
-
"patterns": [
|
|
18
|
-
{
|
|
19
|
-
"include": "source.diff"
|
|
20
|
-
}
|
|
21
|
-
]
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
"comment": "User supplied message",
|
|
25
|
-
"name": "meta.scope.message.git-commit",
|
|
26
|
-
"begin": "^(?!#)",
|
|
27
|
-
"end": "^(?=#)",
|
|
28
|
-
"patterns": [
|
|
29
|
-
{
|
|
30
|
-
"comment": "Mark > 50 lines as deprecated, > 72 as illegal",
|
|
31
|
-
"name": "meta.scope.subject.git-commit",
|
|
32
|
-
"match": "\\G.{0,50}(.{0,22}(.*))$",
|
|
33
|
-
"captures": {
|
|
34
|
-
"1": {
|
|
35
|
-
"name": "invalid.deprecated.line-too-long.git-commit"
|
|
36
|
-
},
|
|
37
|
-
"2": {
|
|
38
|
-
"name": "invalid.illegal.line-too-long.git-commit"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
]
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
"comment": "Git supplied metadata in a number of lines starting with #",
|
|
46
|
-
"name": "meta.scope.metadata.git-commit",
|
|
47
|
-
"begin": "^(?=#)",
|
|
48
|
-
"contentName": "comment.line.number-sign.git-commit",
|
|
49
|
-
"end": "^(?!#)",
|
|
50
|
-
"patterns": [
|
|
51
|
-
{
|
|
52
|
-
"match": "^#\\t((modified|renamed):.*)$",
|
|
53
|
-
"captures": {
|
|
54
|
-
"1": {
|
|
55
|
-
"name": "markup.changed.git-commit"
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"match": "^#\\t(new file:.*)$",
|
|
61
|
-
"captures": {
|
|
62
|
-
"1": {
|
|
63
|
-
"name": "markup.inserted.git-commit"
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
"match": "^#\\t(deleted.*)$",
|
|
69
|
-
"captures": {
|
|
70
|
-
"1": {
|
|
71
|
-
"name": "markup.deleted.git-commit"
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
"comment": "Fallback for non-English git commit template",
|
|
77
|
-
"match": "^#\\t([^:]+): *(.*)$",
|
|
78
|
-
"captures": {
|
|
79
|
-
"1": {
|
|
80
|
-
"name": "keyword.other.file-type.git-commit"
|
|
81
|
-
},
|
|
82
|
-
"2": {
|
|
83
|
-
"name": "string.unquoted.filename.git-commit"
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
]
|
|
88
|
-
}
|
|
89
|
-
]
|
|
90
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"information_for_contributors": [
|
|
3
|
-
"This file has been converted from https://github.com/textmate/git.tmbundle/blob/master/Syntaxes/Git%20Rebase%20Message.tmLanguage",
|
|
4
|
-
"If you want to provide a fix or improvement, please create a pull request against the original repository.",
|
|
5
|
-
"Once accepted there, we are happy to receive an update request."
|
|
6
|
-
],
|
|
7
|
-
"version": "https://github.com/textmate/git.tmbundle/commit/5870cf3f8abad3a6637bdf69250b5d2ded427dc4",
|
|
8
|
-
"name": "Git Rebase Message",
|
|
9
|
-
"scopeName": "text.git-rebase",
|
|
10
|
-
"patterns": [
|
|
11
|
-
{
|
|
12
|
-
"captures": {
|
|
13
|
-
"1": {
|
|
14
|
-
"name": "punctuation.definition.comment.git-rebase"
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
"match": "^\\s*(#).*$\\n?",
|
|
18
|
-
"name": "comment.line.number-sign.git-rebase"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"captures": {
|
|
22
|
-
"1": {
|
|
23
|
-
"name": "support.function.git-rebase"
|
|
24
|
-
},
|
|
25
|
-
"2": {
|
|
26
|
-
"name": "constant.sha.git-rebase"
|
|
27
|
-
},
|
|
28
|
-
"3": {
|
|
29
|
-
"name": "meta.commit-message.git-rebase"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"match": "^\\s*(pick|p|reword|r|edit|e|squash|s|fixup|f|drop|d)\\s+([0-9a-f]+)\\s+(.*)$",
|
|
33
|
-
"name": "meta.commit-command.git-rebase"
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"captures": {
|
|
37
|
-
"1": {
|
|
38
|
-
"name": "support.function.git-rebase"
|
|
39
|
-
},
|
|
40
|
-
"2": {
|
|
41
|
-
"patterns": [
|
|
42
|
-
{
|
|
43
|
-
"include": "source.shell"
|
|
44
|
-
}
|
|
45
|
-
]
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
"match": "^\\s*(exec|x)\\s+(.*)$",
|
|
49
|
-
"name": "meta.commit-command.git-rebase"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"captures": {
|
|
53
|
-
"1": {
|
|
54
|
-
"name": "support.function.git-rebase"
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
"match": "^\\s*(break|b)\\s*$",
|
|
58
|
-
"name": "meta.commit-command.git-rebase"
|
|
59
|
-
}
|
|
60
|
-
]
|
|
61
|
-
}
|
package/ignore.tmLanguage.json
DELETED