@theia/scm 1.67.0-next.56 → 1.67.0-next.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/lib/browser/decorations/scm-decorations-service.d.ts +21 -0
  2. package/lib/browser/decorations/scm-decorations-service.d.ts.map +1 -0
  3. package/lib/browser/decorations/scm-decorations-service.js +134 -0
  4. package/lib/browser/decorations/scm-decorations-service.js.map +1 -0
  5. package/lib/browser/decorations/scm-navigator-decorator.d.ts +26 -0
  6. package/lib/browser/decorations/scm-navigator-decorator.d.ts.map +1 -0
  7. package/lib/browser/decorations/scm-navigator-decorator.js +122 -0
  8. package/lib/browser/decorations/scm-navigator-decorator.js.map +1 -0
  9. package/lib/browser/dirty-diff/content-lines.d.ts +15 -0
  10. package/lib/browser/dirty-diff/content-lines.d.ts.map +1 -0
  11. package/lib/browser/dirty-diff/content-lines.js +114 -0
  12. package/lib/browser/dirty-diff/content-lines.js.map +1 -0
  13. package/lib/browser/dirty-diff/content-lines.spec.d.ts +2 -0
  14. package/lib/browser/dirty-diff/content-lines.spec.d.ts.map +1 -0
  15. package/lib/browser/dirty-diff/content-lines.spec.js +40 -0
  16. package/lib/browser/dirty-diff/content-lines.spec.js.map +1 -0
  17. package/lib/browser/dirty-diff/diff-computer.d.ts +39 -0
  18. package/lib/browser/dirty-diff/diff-computer.d.ts.map +1 -0
  19. package/lib/browser/dirty-diff/diff-computer.js +167 -0
  20. package/lib/browser/dirty-diff/diff-computer.js.map +1 -0
  21. package/lib/browser/dirty-diff/diff-computer.spec.d.ts +2 -0
  22. package/lib/browser/dirty-diff/diff-computer.spec.d.ts.map +1 -0
  23. package/lib/browser/dirty-diff/diff-computer.spec.js +384 -0
  24. package/lib/browser/dirty-diff/diff-computer.spec.js.map +1 -0
  25. package/lib/browser/dirty-diff/dirty-diff-decorator.d.ts +17 -0
  26. package/lib/browser/dirty-diff/dirty-diff-decorator.d.ts.map +1 -0
  27. package/lib/browser/dirty-diff/dirty-diff-decorator.js +101 -0
  28. package/lib/browser/dirty-diff/dirty-diff-decorator.js.map +1 -0
  29. package/lib/browser/dirty-diff/dirty-diff-module.d.ts +4 -0
  30. package/lib/browser/dirty-diff/dirty-diff-module.d.ts.map +1 -0
  31. package/lib/browser/dirty-diff/dirty-diff-module.js +34 -0
  32. package/lib/browser/dirty-diff/dirty-diff-module.js.map +1 -0
  33. package/lib/browser/dirty-diff/dirty-diff-navigator.d.ts +49 -0
  34. package/lib/browser/dirty-diff/dirty-diff-navigator.d.ts.map +1 -0
  35. package/lib/browser/dirty-diff/dirty-diff-navigator.js +295 -0
  36. package/lib/browser/dirty-diff/dirty-diff-navigator.js.map +1 -0
  37. package/lib/browser/dirty-diff/dirty-diff-widget.d.ts +50 -0
  38. package/lib/browser/dirty-diff/dirty-diff-widget.d.ts.map +1 -0
  39. package/lib/browser/dirty-diff/dirty-diff-widget.js +357 -0
  40. package/lib/browser/dirty-diff/dirty-diff-widget.js.map +1 -0
  41. package/lib/browser/merge-editor/merge-editor-contribution.d.ts +34 -0
  42. package/lib/browser/merge-editor/merge-editor-contribution.d.ts.map +1 -0
  43. package/lib/browser/merge-editor/merge-editor-contribution.js +335 -0
  44. package/lib/browser/merge-editor/merge-editor-contribution.js.map +1 -0
  45. package/lib/browser/merge-editor/merge-editor-dev-contribution.d.ts +31 -0
  46. package/lib/browser/merge-editor/merge-editor-dev-contribution.d.ts.map +1 -0
  47. package/lib/browser/merge-editor/merge-editor-dev-contribution.js +151 -0
  48. package/lib/browser/merge-editor/merge-editor-dev-contribution.js.map +1 -0
  49. package/lib/browser/merge-editor/merge-editor-module.d.ts +24 -0
  50. package/lib/browser/merge-editor/merge-editor-module.d.ts.map +1 -0
  51. package/lib/browser/merge-editor/merge-editor-module.js +109 -0
  52. package/lib/browser/merge-editor/merge-editor-module.js.map +1 -0
  53. package/lib/browser/merge-editor/merge-editor.d.ts +122 -0
  54. package/lib/browser/merge-editor/merge-editor.d.ts.map +1 -0
  55. package/lib/browser/merge-editor/merge-editor.js +560 -0
  56. package/lib/browser/merge-editor/merge-editor.js.map +1 -0
  57. package/lib/browser/merge-editor/model/line-range.d.ts +37 -0
  58. package/lib/browser/merge-editor/model/line-range.d.ts.map +1 -0
  59. package/lib/browser/merge-editor/model/line-range.js +111 -0
  60. package/lib/browser/merge-editor/model/line-range.js.map +1 -0
  61. package/lib/browser/merge-editor/model/live-diff.d.ts +26 -0
  62. package/lib/browser/merge-editor/model/live-diff.d.ts.map +1 -0
  63. package/lib/browser/merge-editor/model/live-diff.js +85 -0
  64. package/lib/browser/merge-editor/model/live-diff.js.map +1 -0
  65. package/lib/browser/merge-editor/model/merge-editor-model.d.ts +116 -0
  66. package/lib/browser/merge-editor/model/merge-editor-model.d.ts.map +1 -0
  67. package/lib/browser/merge-editor/model/merge-editor-model.js +507 -0
  68. package/lib/browser/merge-editor/model/merge-editor-model.js.map +1 -0
  69. package/lib/browser/merge-editor/model/merge-range.d.ts +50 -0
  70. package/lib/browser/merge-editor/model/merge-range.d.ts.map +1 -0
  71. package/lib/browser/merge-editor/model/merge-range.js +215 -0
  72. package/lib/browser/merge-editor/model/merge-range.js.map +1 -0
  73. package/lib/browser/merge-editor/model/range-editing.d.ts +21 -0
  74. package/lib/browser/merge-editor/model/range-editing.d.ts.map +1 -0
  75. package/lib/browser/merge-editor/model/range-editing.js +68 -0
  76. package/lib/browser/merge-editor/model/range-editing.js.map +1 -0
  77. package/lib/browser/merge-editor/model/range-mapping.d.ts +106 -0
  78. package/lib/browser/merge-editor/model/range-mapping.d.ts.map +1 -0
  79. package/lib/browser/merge-editor/model/range-mapping.js +252 -0
  80. package/lib/browser/merge-editor/model/range-mapping.js.map +1 -0
  81. package/lib/browser/merge-editor/model/range-mapping.spec.d.ts +2 -0
  82. package/lib/browser/merge-editor/model/range-mapping.spec.d.ts.map +1 -0
  83. package/lib/browser/merge-editor/model/range-mapping.spec.js +48 -0
  84. package/lib/browser/merge-editor/model/range-mapping.spec.js.map +1 -0
  85. package/lib/browser/merge-editor/model/range-utils.d.ts +25 -0
  86. package/lib/browser/merge-editor/model/range-utils.d.ts.map +1 -0
  87. package/lib/browser/merge-editor/model/range-utils.js +118 -0
  88. package/lib/browser/merge-editor/model/range-utils.js.map +1 -0
  89. package/lib/browser/merge-editor/view/diff-spacers.d.ts +50 -0
  90. package/lib/browser/merge-editor/view/diff-spacers.d.ts.map +1 -0
  91. package/lib/browser/merge-editor/view/diff-spacers.js +133 -0
  92. package/lib/browser/merge-editor/view/diff-spacers.js.map +1 -0
  93. package/lib/browser/merge-editor/view/merge-editor-panes/index.d.ts +6 -0
  94. package/lib/browser/merge-editor/view/merge-editor-panes/index.d.ts.map +1 -0
  95. package/lib/browser/merge-editor/view/merge-editor-panes/index.js +24 -0
  96. package/lib/browser/merge-editor/view/merge-editor-panes/index.js.map +1 -0
  97. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.d.ts +12 -0
  98. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.d.ts.map +1 -0
  99. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.js +65 -0
  100. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-base-pane.js.map +1 -0
  101. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.d.ts +30 -0
  102. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.d.ts.map +1 -0
  103. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js +102 -0
  104. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane-header.js.map +1 -0
  105. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.d.ts +49 -0
  106. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.d.ts.map +1 -0
  107. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.js +214 -0
  108. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-pane.js.map +1 -0
  109. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.d.ts +16 -0
  110. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.d.ts.map +1 -0
  111. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.js +107 -0
  112. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-result-pane.js.map +1 -0
  113. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.d.ts +27 -0
  114. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.d.ts.map +1 -0
  115. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.js +135 -0
  116. package/lib/browser/merge-editor/view/merge-editor-panes/merge-editor-side-pane.js.map +1 -0
  117. package/lib/browser/merge-editor/view/merge-editor-scroll-sync.d.ts +20 -0
  118. package/lib/browser/merge-editor/view/merge-editor-scroll-sync.d.ts.map +1 -0
  119. package/lib/browser/merge-editor/view/merge-editor-scroll-sync.js +218 -0
  120. package/lib/browser/merge-editor/view/merge-editor-scroll-sync.js.map +1 -0
  121. package/lib/browser/merge-editor/view/merge-editor-view-zones.d.ts +57 -0
  122. package/lib/browser/merge-editor/view/merge-editor-view-zones.d.ts.map +1 -0
  123. package/lib/browser/merge-editor/view/merge-editor-view-zones.js +218 -0
  124. package/lib/browser/merge-editor/view/merge-editor-view-zones.js.map +1 -0
  125. package/lib/browser/merge-editor/view/merge-range-actions.d.ts +23 -0
  126. package/lib/browser/merge-editor/view/merge-range-actions.d.ts.map +1 -0
  127. package/lib/browser/merge-editor/view/merge-range-actions.js +142 -0
  128. package/lib/browser/merge-editor/view/merge-range-actions.js.map +1 -0
  129. package/lib/browser/scm-amend-component.d.ts +124 -0
  130. package/lib/browser/scm-amend-component.d.ts.map +1 -0
  131. package/lib/browser/scm-amend-component.js +464 -0
  132. package/lib/browser/scm-amend-component.js.map +1 -0
  133. package/lib/browser/scm-amend-widget.d.ts +21 -0
  134. package/lib/browser/scm-amend-widget.d.ts.map +1 -0
  135. package/lib/browser/scm-amend-widget.js +91 -0
  136. package/lib/browser/scm-amend-widget.js.map +1 -0
  137. package/lib/browser/scm-avatar-service.d.ts +4 -0
  138. package/lib/browser/scm-avatar-service.d.ts.map +1 -0
  139. package/lib/browser/scm-avatar-service.js +32 -0
  140. package/lib/browser/scm-avatar-service.js.map +1 -0
  141. package/lib/browser/scm-colors.d.ts +8 -0
  142. package/lib/browser/scm-colors.d.ts.map +1 -0
  143. package/lib/browser/scm-colors.js +27 -0
  144. package/lib/browser/scm-colors.js.map +1 -0
  145. package/lib/browser/scm-commit-widget.d.ts +53 -0
  146. package/lib/browser/scm-commit-widget.d.ts.map +1 -0
  147. package/lib/browser/scm-commit-widget.js +188 -0
  148. package/lib/browser/scm-commit-widget.js.map +1 -0
  149. package/lib/browser/scm-context-key-service.d.ts +13 -0
  150. package/lib/browser/scm-context-key-service.d.ts.map +1 -0
  151. package/lib/browser/scm-context-key-service.js +55 -0
  152. package/lib/browser/scm-context-key-service.js.map +1 -0
  153. package/lib/browser/scm-contribution.d.ts +98 -0
  154. package/lib/browser/scm-contribution.d.ts.map +1 -0
  155. package/lib/browser/scm-contribution.js +480 -0
  156. package/lib/browser/scm-contribution.js.map +1 -0
  157. package/lib/browser/scm-frontend-module.d.ts +7 -0
  158. package/lib/browser/scm-frontend-module.d.ts.map +1 -0
  159. package/lib/browser/scm-frontend-module.js +129 -0
  160. package/lib/browser/scm-frontend-module.js.map +1 -0
  161. package/lib/browser/scm-groups-tree-model.d.ts +15 -0
  162. package/lib/browser/scm-groups-tree-model.d.ts.map +1 -0
  163. package/lib/browser/scm-groups-tree-model.js +90 -0
  164. package/lib/browser/scm-groups-tree-model.js.map +1 -0
  165. package/lib/browser/scm-input.d.ts +54 -0
  166. package/lib/browser/scm-input.d.ts.map +1 -0
  167. package/lib/browser/scm-input.js +128 -0
  168. package/lib/browser/scm-input.js.map +1 -0
  169. package/lib/browser/scm-layout-migrations.d.ts +10 -0
  170. package/lib/browser/scm-layout-migrations.d.ts.map +1 -0
  171. package/lib/browser/scm-layout-migrations.js +75 -0
  172. package/lib/browser/scm-layout-migrations.js.map +1 -0
  173. package/lib/browser/scm-no-repository-widget.d.ts +9 -0
  174. package/lib/browser/scm-no-repository-widget.d.ts.map +1 -0
  175. package/lib/browser/scm-no-repository-widget.js +42 -0
  176. package/lib/browser/scm-no-repository-widget.js.map +1 -0
  177. package/lib/browser/scm-provider.d.ts +60 -0
  178. package/lib/browser/scm-provider.d.ts.map +1 -0
  179. package/lib/browser/scm-provider.js +20 -0
  180. package/lib/browser/scm-provider.js.map +1 -0
  181. package/lib/browser/scm-quick-open-service.d.ts +12 -0
  182. package/lib/browser/scm-quick-open-service.d.ts.map +1 -0
  183. package/lib/browser/scm-quick-open-service.js +66 -0
  184. package/lib/browser/scm-quick-open-service.js.map +1 -0
  185. package/lib/browser/scm-repository.d.ts +18 -0
  186. package/lib/browser/scm-repository.d.ts.map +1 -0
  187. package/lib/browser/scm-repository.js +42 -0
  188. package/lib/browser/scm-repository.js.map +1 -0
  189. package/lib/browser/scm-service.d.ts +27 -0
  190. package/lib/browser/scm-service.d.ts.map +1 -0
  191. package/lib/browser/scm-service.js +101 -0
  192. package/lib/browser/scm-service.js.map +1 -0
  193. package/lib/browser/scm-tree-label-provider.d.ts +8 -0
  194. package/lib/browser/scm-tree-label-provider.d.ts.map +1 -0
  195. package/lib/browser/scm-tree-label-provider.js +50 -0
  196. package/lib/browser/scm-tree-label-provider.js.map +1 -0
  197. package/lib/browser/scm-tree-model.d.ts +76 -0
  198. package/lib/browser/scm-tree-model.d.ts.map +1 -0
  199. package/lib/browser/scm-tree-model.js +349 -0
  200. package/lib/browser/scm-tree-model.js.map +1 -0
  201. package/lib/browser/scm-tree-widget.d.ts +206 -0
  202. package/lib/browser/scm-tree-widget.d.ts.map +1 -0
  203. package/lib/browser/scm-tree-widget.js +677 -0
  204. package/lib/browser/scm-tree-widget.js.map +1 -0
  205. package/lib/browser/scm-widget.d.ts +42 -0
  206. package/lib/browser/scm-widget.d.ts.map +1 -0
  207. package/lib/browser/scm-widget.js +220 -0
  208. package/lib/browser/scm-widget.js.map +1 -0
  209. package/lib/common/scm-preferences.d.ts +12 -0
  210. package/lib/common/scm-preferences.d.ts.map +1 -0
  211. package/lib/common/scm-preferences.js +51 -0
  212. package/lib/common/scm-preferences.js.map +1 -0
  213. package/lib/node/scm-backend-module.d.ts +4 -0
  214. package/lib/node/scm-backend-module.d.ts.map +1 -0
  215. package/lib/node/scm-backend-module.js +23 -0
  216. package/lib/node/scm-backend-module.js.map +1 -0
  217. package/package.json +6 -6
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2018 TypeFox and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ScmAvatarService = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ const ts_md5_1 = require("ts-md5");
22
+ let ScmAvatarService = class ScmAvatarService {
23
+ async getAvatar(email) {
24
+ const hash = ts_md5_1.Md5.hashStr(email);
25
+ return `https://www.gravatar.com/avatar/${hash}?d=robohash`;
26
+ }
27
+ };
28
+ exports.ScmAvatarService = ScmAvatarService;
29
+ exports.ScmAvatarService = ScmAvatarService = tslib_1.__decorate([
30
+ (0, inversify_1.injectable)()
31
+ ], ScmAvatarService);
32
+ //# sourceMappingURL=scm-avatar-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-avatar-service.js","sourceRoot":"","sources":["../../src/browser/scm-avatar-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA0D;AAC1D,mCAA6B;AAGtB,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAEzB,KAAK,CAAC,SAAS,CAAC,KAAa;QACzB,MAAM,IAAI,GAAG,YAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,mCAAmC,IAAI,aAAa,CAAC;IAChE,CAAC;CACJ,CAAA;AANY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,sBAAU,GAAE;GACA,gBAAgB,CAM5B"}
@@ -0,0 +1,8 @@
1
+ export declare namespace ScmColors {
2
+ const editorGutterModifiedBackground = "editorGutter.modifiedBackground";
3
+ const editorGutterAddedBackground = "editorGutter.addedBackground";
4
+ const editorGutterDeletedBackground = "editorGutter.deletedBackground";
5
+ const handledConflictMinimapOverviewRulerColor = "mergeEditor.conflict.handled.minimapOverViewRuler";
6
+ const unhandledConflictMinimapOverviewRulerColor = "mergeEditor.conflict.unhandled.minimapOverViewRuler";
7
+ }
8
+ //# sourceMappingURL=scm-colors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-colors.d.ts","sourceRoot":"","sources":["../../src/browser/scm-colors.ts"],"names":[],"mappings":"AAgBA,yBAAiB,SAAS,CAAC;IAChB,MAAM,8BAA8B,oCAAoC,CAAC;IACzE,MAAM,2BAA2B,iCAAiC,CAAC;IACnE,MAAM,6BAA6B,mCAAmC,CAAC;IACvE,MAAM,wCAAwC,sDAAsD,CAAC;IACrG,MAAM,0CAA0C,wDAAwD,CAAC;CACnH"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2019 Red Hat, Inc. and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ScmColors = void 0;
19
+ var ScmColors;
20
+ (function (ScmColors) {
21
+ ScmColors.editorGutterModifiedBackground = 'editorGutter.modifiedBackground';
22
+ ScmColors.editorGutterAddedBackground = 'editorGutter.addedBackground';
23
+ ScmColors.editorGutterDeletedBackground = 'editorGutter.deletedBackground';
24
+ ScmColors.handledConflictMinimapOverviewRulerColor = 'mergeEditor.conflict.handled.minimapOverViewRuler';
25
+ ScmColors.unhandledConflictMinimapOverviewRulerColor = 'mergeEditor.conflict.unhandled.minimapOverViewRuler';
26
+ })(ScmColors || (exports.ScmColors = ScmColors = {}));
27
+ //# sourceMappingURL=scm-colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-colors.js","sourceRoot":"","sources":["../../src/browser/scm-colors.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,IAAiB,SAAS,CAMzB;AAND,WAAiB,SAAS;IACT,wCAA8B,GAAG,iCAAiC,CAAC;IACnE,qCAA2B,GAAG,8BAA8B,CAAC;IAC7D,uCAA6B,GAAG,gCAAgC,CAAC;IACjE,kDAAwC,GAAG,mDAAmD,CAAC;IAC/F,oDAA0C,GAAG,qDAAqD,CAAC;AACpH,CAAC,EANgB,SAAS,yBAAT,SAAS,QAMzB"}
@@ -0,0 +1,53 @@
1
+ /// <reference types="react" />
2
+ import { DisposableCollection } from '@theia/core';
3
+ import { Message } from '@theia/core/shared/@lumino/messaging';
4
+ import * as React from '@theia/core/shared/react';
5
+ import { ScmInput } from './scm-input';
6
+ import { ContextMenuRenderer, ReactWidget, KeybindingRegistry, StatefulWidget } from '@theia/core/lib/browser';
7
+ import { ScmService } from './scm-service';
8
+ export declare class ScmCommitWidget extends ReactWidget implements StatefulWidget {
9
+ protected readonly contextMenuRenderer: ContextMenuRenderer;
10
+ static ID: string;
11
+ protected readonly scmService: ScmService;
12
+ protected readonly keybindings: KeybindingRegistry;
13
+ protected readonly toDisposeOnRepositoryChange: DisposableCollection;
14
+ protected shouldScrollToRow: boolean;
15
+ /**
16
+ * Don't modify DOM use React! only exposed for `focusInput`
17
+ * Use `this.scmService.selectedRepository?.input.value` as a single source of truth!
18
+ */
19
+ protected readonly inputRef: React.RefObject<HTMLTextAreaElement>;
20
+ constructor(contextMenuRenderer: ContextMenuRenderer);
21
+ protected onAfterAttach(msg: Message): void;
22
+ protected refreshOnRepositoryChange(): void;
23
+ protected onActivateRequest(msg: Message): void;
24
+ focus(): void;
25
+ protected render(): React.ReactNode;
26
+ /**
27
+ * Create the container attributes for the widget.
28
+ */
29
+ protected createContainerAttributes(): React.HTMLAttributes<HTMLElement>;
30
+ protected renderInput(input: ScmInput): React.ReactNode;
31
+ protected setInputValue: (event: React.FormEvent<HTMLTextAreaElement> | React.ChangeEvent<HTMLTextAreaElement> | string) => void;
32
+ /**
33
+ * Store the tree state.
34
+ */
35
+ storeState(): ScmCommitWidget.State;
36
+ /**
37
+ * Restore the state.
38
+ * @param oldState the old state object.
39
+ */
40
+ restoreState(oldState: ScmCommitWidget.State): void;
41
+ }
42
+ export declare namespace ScmCommitWidget {
43
+ namespace Styles {
44
+ const INPUT_MESSAGE_CONTAINER = "theia-scm-input-message-container";
45
+ const INPUT_MESSAGE = "theia-scm-input-message";
46
+ const VALIDATION_MESSAGE = "theia-scm-input-validation-message";
47
+ const NO_SELECT = "no-select";
48
+ }
49
+ interface State {
50
+ message?: string;
51
+ }
52
+ }
53
+ //# sourceMappingURL=scm-commit-widget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-commit-widget.d.ts","sourceRoot":"","sources":["../../src/browser/scm-commit-widget.tsx"],"names":[],"mappings":";AAiBA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAC/D,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAqB,MAAM,aAAa,CAAC;AAC1D,OAAO,EACH,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,cAAc,EACvE,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBACa,eAAgB,SAAQ,WAAY,YAAW,cAAc;IAkBrC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB;IAhB5F,MAAM,CAAC,EAAE,SAAuB;IAEZ,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IAE/E,SAAS,CAAC,QAAQ,CAAC,2BAA2B,uBAA8B;IAE5E,SAAS,CAAC,iBAAiB,UAAQ;IAEnC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,QAAQ,uCAA0C;gBAGjB,mBAAmB,EAAE,mBAAmB;cAWzE,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IASpD,SAAS,CAAC,yBAAyB,IAAI,IAAI;cAaxB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKjD,KAAK,IAAI,IAAI;IAIpB,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;IAOnC;;OAEG;IACH,SAAS,CAAC,yBAAyB,IAAI,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAMxE,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS;IAwDvD,SAAS,CAAC,aAAa,UAAW,MAAM,SAAS,CAAC,mBAAmB,CAAC,GAAG,MAAM,WAAW,CAAC,mBAAmB,CAAC,GAAG,MAAM,UAKtH;IAEF;;OAEG;IACH,UAAU,IAAI,eAAe,CAAC,KAAK;IAKnC;;;OAGG;IACH,YAAY,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,GAAG,IAAI;CAsBtD;AAED,yBAAiB,eAAe,CAAC;IAE7B,UAAiB,MAAM,CAAC;QACb,MAAM,uBAAuB,sCAAsC,CAAC;QACpE,MAAM,aAAa,4BAA4B,CAAC;QAChD,MAAM,kBAAkB,uCAAuC,CAAC;QAChE,MAAM,SAAS,cAAc,CAAC;KACxC;IAED,UAAiB,KAAK;QAClB,OAAO,CAAC,EAAE,MAAM,CAAA;KACnB;CACJ"}
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2018 TypeFox and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ var ScmCommitWidget_1;
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.ScmCommitWidget = void 0;
20
+ const tslib_1 = require("tslib");
21
+ const inversify_1 = require("@theia/core/shared/inversify");
22
+ const core_1 = require("@theia/core");
23
+ const React = require("@theia/core/shared/react");
24
+ const react_textarea_autosize_1 = require("react-textarea-autosize");
25
+ const scm_input_1 = require("./scm-input");
26
+ const browser_1 = require("@theia/core/lib/browser");
27
+ const scm_service_1 = require("./scm-service");
28
+ let ScmCommitWidget = ScmCommitWidget_1 = class ScmCommitWidget extends browser_1.ReactWidget {
29
+ constructor(contextMenuRenderer) {
30
+ super();
31
+ this.contextMenuRenderer = contextMenuRenderer;
32
+ this.toDisposeOnRepositoryChange = new core_1.DisposableCollection();
33
+ this.shouldScrollToRow = true;
34
+ /**
35
+ * Don't modify DOM use React! only exposed for `focusInput`
36
+ * Use `this.scmService.selectedRepository?.input.value` as a single source of truth!
37
+ */
38
+ this.inputRef = React.createRef();
39
+ this.setInputValue = (event) => {
40
+ const repository = this.scmService.selectedRepository;
41
+ if (repository) {
42
+ repository.input.value = typeof event === 'string' ? event : event.currentTarget.value;
43
+ }
44
+ };
45
+ this.scrollOptions = {
46
+ suppressScrollX: true,
47
+ minScrollbarLength: 35
48
+ };
49
+ this.addClass('theia-scm-commit');
50
+ this.id = ScmCommitWidget_1.ID;
51
+ }
52
+ onAfterAttach(msg) {
53
+ super.onAfterAttach(msg);
54
+ this.refreshOnRepositoryChange();
55
+ this.toDisposeOnDetach.push(this.scmService.onDidChangeSelectedRepository(() => {
56
+ this.refreshOnRepositoryChange();
57
+ this.update();
58
+ }));
59
+ }
60
+ refreshOnRepositoryChange() {
61
+ this.toDisposeOnRepositoryChange.dispose();
62
+ const repository = this.scmService.selectedRepository;
63
+ if (repository) {
64
+ this.toDisposeOnRepositoryChange.push(repository.provider.onDidChange(async () => {
65
+ this.update();
66
+ }));
67
+ this.toDisposeOnRepositoryChange.push(repository.provider.onDidChangeCommitTemplate(e => {
68
+ this.setInputValue(e);
69
+ }));
70
+ }
71
+ }
72
+ onActivateRequest(msg) {
73
+ super.onActivateRequest(msg);
74
+ this.focus();
75
+ }
76
+ focus() {
77
+ (this.inputRef.current || this.node).focus();
78
+ }
79
+ render() {
80
+ const repository = this.scmService.selectedRepository;
81
+ if (repository) {
82
+ return React.createElement('div', this.createContainerAttributes(), this.renderInput(repository.input));
83
+ }
84
+ }
85
+ /**
86
+ * Create the container attributes for the widget.
87
+ */
88
+ createContainerAttributes() {
89
+ return {
90
+ style: { flexGrow: 0 }
91
+ };
92
+ }
93
+ renderInput(input) {
94
+ let validationStatus = 'idle';
95
+ if (input.issue) {
96
+ switch (input.issue.type) {
97
+ case scm_input_1.ScmInputIssueType.Error:
98
+ validationStatus = 'error';
99
+ break;
100
+ case scm_input_1.ScmInputIssueType.Information:
101
+ validationStatus = 'info';
102
+ break;
103
+ case scm_input_1.ScmInputIssueType.Warning:
104
+ validationStatus = 'warning';
105
+ break;
106
+ }
107
+ }
108
+ const validationMessage = input.issue ? input.issue.message : '';
109
+ const format = (value, ...args) => {
110
+ if (args.length !== 0) {
111
+ return value.replace(/{(\d+)}/g, (found, n) => {
112
+ const i = parseInt(n);
113
+ return isNaN(i) || i < 0 || i >= args.length ? found : args[i];
114
+ });
115
+ }
116
+ return value;
117
+ };
118
+ const keybinding = this.keybindings.acceleratorFor(this.keybindings.getKeybindingsForCommand('scm.acceptInput')[0]).join('+');
119
+ const message = format(input.placeholder || '', keybinding);
120
+ const textArea = input.visible &&
121
+ React.createElement(react_textarea_autosize_1.default, { className: `${ScmCommitWidget_1.Styles.INPUT_MESSAGE} theia-input theia-scm-input-message-${validationStatus}`, id: ScmCommitWidget_1.Styles.INPUT_MESSAGE, placeholder: message, spellCheck: false, autoFocus: true, value: input.value, disabled: !input.enabled, onChange: this.setInputValue, ref: this.inputRef, rows: 1, maxRows: 6 });
122
+ return React.createElement("div", { className: ScmCommitWidget_1.Styles.INPUT_MESSAGE_CONTAINER },
123
+ textArea,
124
+ React.createElement("div", { className: `${ScmCommitWidget_1.Styles.VALIDATION_MESSAGE} ${ScmCommitWidget_1.Styles.NO_SELECT}
125
+ theia-scm-validation-message-${validationStatus} theia-scm-input-message-${validationStatus}`, style: {
126
+ display: !!input.issue ? 'block' : 'none'
127
+ } }, validationMessage));
128
+ }
129
+ /**
130
+ * Store the tree state.
131
+ */
132
+ storeState() {
133
+ var _a;
134
+ const message = (_a = this.scmService.selectedRepository) === null || _a === void 0 ? void 0 : _a.input.value;
135
+ return { message };
136
+ }
137
+ /**
138
+ * Restore the state.
139
+ * @param oldState the old state object.
140
+ */
141
+ restoreState(oldState) {
142
+ const value = oldState.message;
143
+ if (!value) {
144
+ return;
145
+ }
146
+ let repository = this.scmService.selectedRepository;
147
+ if (repository) {
148
+ repository.input.value = value;
149
+ }
150
+ else {
151
+ const listener = this.scmService.onDidChangeSelectedRepository(() => {
152
+ repository = this.scmService.selectedRepository;
153
+ if (repository) {
154
+ listener.dispose();
155
+ if (!repository.input.value) {
156
+ repository.input.value = value;
157
+ }
158
+ }
159
+ });
160
+ this.toDispose.push(listener);
161
+ }
162
+ }
163
+ };
164
+ exports.ScmCommitWidget = ScmCommitWidget;
165
+ ScmCommitWidget.ID = 'scm-commit-widget';
166
+ tslib_1.__decorate([
167
+ (0, inversify_1.inject)(scm_service_1.ScmService),
168
+ tslib_1.__metadata("design:type", scm_service_1.ScmService)
169
+ ], ScmCommitWidget.prototype, "scmService", void 0);
170
+ tslib_1.__decorate([
171
+ (0, inversify_1.inject)(browser_1.KeybindingRegistry),
172
+ tslib_1.__metadata("design:type", browser_1.KeybindingRegistry)
173
+ ], ScmCommitWidget.prototype, "keybindings", void 0);
174
+ exports.ScmCommitWidget = ScmCommitWidget = ScmCommitWidget_1 = tslib_1.__decorate([
175
+ (0, inversify_1.injectable)(),
176
+ tslib_1.__param(0, (0, inversify_1.inject)(browser_1.ContextMenuRenderer)),
177
+ tslib_1.__metadata("design:paramtypes", [browser_1.ContextMenuRenderer])
178
+ ], ScmCommitWidget);
179
+ (function (ScmCommitWidget) {
180
+ let Styles;
181
+ (function (Styles) {
182
+ Styles.INPUT_MESSAGE_CONTAINER = 'theia-scm-input-message-container';
183
+ Styles.INPUT_MESSAGE = 'theia-scm-input-message';
184
+ Styles.VALIDATION_MESSAGE = 'theia-scm-input-validation-message';
185
+ Styles.NO_SELECT = 'no-select';
186
+ })(Styles = ScmCommitWidget.Styles || (ScmCommitWidget.Styles = {}));
187
+ })(ScmCommitWidget || (exports.ScmCommitWidget = ScmCommitWidget = {}));
188
+ //# sourceMappingURL=scm-commit-widget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-commit-widget.js","sourceRoot":"","sources":["../../src/browser/scm-commit-widget.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { ContextKeyService, ContextKey } from '@theia/core/lib/browser/context-key-service';
2
+ export declare class ScmContextKeyService {
3
+ protected readonly contextKeyService: ContextKeyService;
4
+ protected _scmProvider: ContextKey<string | undefined>;
5
+ get scmProvider(): ContextKey<string | undefined>;
6
+ protected _scmResourceGroup: ContextKey<string | undefined>;
7
+ get scmResourceGroup(): ContextKey<string | undefined>;
8
+ protected _scmResourceGroupState: ContextKey<string | undefined>;
9
+ get scmResourceGroupState(): ContextKey<string | undefined>;
10
+ protected init(): void;
11
+ match(expression: string | undefined): boolean;
12
+ }
13
+ //# sourceMappingURL=scm-context-key-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-context-key-service.d.ts","sourceRoot":"","sources":["../../src/browser/scm-context-key-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAE5F,qBACa,oBAAoB;IAG7B,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,SAAS,CAAC,YAAY,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACvD,IAAI,WAAW,IAAI,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAEhD;IAED,SAAS,CAAC,iBAAiB,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5D,IAAI,gBAAgB,IAAI,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAErD;IAED,SAAS,CAAC,sBAAsB,EAAE,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACjE,IAAI,qBAAqB,IAAI,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,CAE1D;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAMtB,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;CAIjD"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2019 TypeFox and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ScmContextKeyService = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ const context_key_service_1 = require("@theia/core/lib/browser/context-key-service");
22
+ let ScmContextKeyService = class ScmContextKeyService {
23
+ get scmProvider() {
24
+ return this._scmProvider;
25
+ }
26
+ get scmResourceGroup() {
27
+ return this._scmResourceGroup;
28
+ }
29
+ get scmResourceGroupState() {
30
+ return this._scmResourceGroupState;
31
+ }
32
+ init() {
33
+ this._scmProvider = this.contextKeyService.createKey('scmProvider', undefined);
34
+ this._scmResourceGroup = this.contextKeyService.createKey('scmResourceGroup', undefined);
35
+ this._scmResourceGroupState = this.contextKeyService.createKey('scmResourceGroupState', undefined);
36
+ }
37
+ match(expression) {
38
+ return !expression || this.contextKeyService.match(expression);
39
+ }
40
+ };
41
+ exports.ScmContextKeyService = ScmContextKeyService;
42
+ tslib_1.__decorate([
43
+ (0, inversify_1.inject)(context_key_service_1.ContextKeyService),
44
+ tslib_1.__metadata("design:type", Object)
45
+ ], ScmContextKeyService.prototype, "contextKeyService", void 0);
46
+ tslib_1.__decorate([
47
+ (0, inversify_1.postConstruct)(),
48
+ tslib_1.__metadata("design:type", Function),
49
+ tslib_1.__metadata("design:paramtypes", []),
50
+ tslib_1.__metadata("design:returntype", void 0)
51
+ ], ScmContextKeyService.prototype, "init", null);
52
+ exports.ScmContextKeyService = ScmContextKeyService = tslib_1.__decorate([
53
+ (0, inversify_1.injectable)()
54
+ ], ScmContextKeyService);
55
+ //# sourceMappingURL=scm-context-key-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-context-key-service.js","sourceRoot":"","sources":["../../src/browser/scm-context-key-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAiF;AACjF,qFAA4F;AAGrF,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAM7B,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAGD,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAGD,IAAI,qBAAqB;QACrB,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACvC,CAAC;IAGS,IAAI;QACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAqB,aAAa,EAAE,SAAS,CAAC,CAAC;QACnG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAqB,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC7G,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAqB,uBAAuB,EAAE,SAAS,CAAC,CAAC;IAC3H,CAAC;IAED,KAAK,CAAC,UAA8B;QAChC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;CAEJ,CAAA;AA/BY,oDAAoB;AAGV;IADlB,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;+DAC8B;AAkB9C;IADT,IAAA,yBAAa,GAAE;;;;gDAKf;+BAzBQ,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA+BhC"}
@@ -0,0 +1,98 @@
1
+ import { AbstractViewContribution, FrontendApplicationContribution, LabelProvider, StatusBar, StatusBarEntry, KeybindingRegistry, ViewContainerTitleOptions, StylingParticipant, ColorTheme, CssStyleCollector } from '@theia/core/lib/browser';
2
+ import { TabBarToolbarContribution, TabBarToolbarRegistry } from '@theia/core/lib/browser/shell/tab-bar-toolbar';
3
+ import { CommandRegistry, Command, DisposableCollection, CommandService, MenuModelRegistry } from '@theia/core/lib/common';
4
+ import { ContextKeyService, ContextKey } from '@theia/core/lib/browser/context-key-service';
5
+ import { ScmService } from './scm-service';
6
+ import { ScmWidget } from '../browser/scm-widget';
7
+ import { ScmQuickOpenService } from './scm-quick-open-service';
8
+ import { ColorContribution } from '@theia/core/lib/browser/color-application-contribution';
9
+ import { ColorRegistry } from '@theia/core/lib/browser/color-registry';
10
+ import { ScmColors } from './scm-colors';
11
+ import { ScmCommand } from './scm-provider';
12
+ import { ScmDecorationsService } from '../browser/decorations/scm-decorations-service';
13
+ import { DirtyDiffNavigator } from './dirty-diff/dirty-diff-navigator';
14
+ export declare const SCM_WIDGET_FACTORY_ID: string;
15
+ export declare const SCM_VIEW_CONTAINER_ID = "scm-view-container";
16
+ export declare const SCM_VIEW_CONTAINER_TITLE_OPTIONS: ViewContainerTitleOptions;
17
+ export declare namespace ScmMenus {
18
+ const CHANGES_GROUP: string[];
19
+ }
20
+ export declare namespace SCM_COMMANDS {
21
+ const CHANGE_REPOSITORY: {
22
+ id: string;
23
+ category: string;
24
+ originalCategory: string;
25
+ label: string;
26
+ originalLabel: string;
27
+ };
28
+ const ACCEPT_INPUT: {
29
+ id: string;
30
+ };
31
+ const TREE_VIEW_MODE: {
32
+ id: string;
33
+ tooltip: string;
34
+ iconClass: string;
35
+ originalLabel: string;
36
+ label: string;
37
+ };
38
+ const LIST_VIEW_MODE: {
39
+ id: string;
40
+ tooltip: string;
41
+ iconClass: string;
42
+ originalLabel: string;
43
+ label: string;
44
+ };
45
+ const COLLAPSE_ALL: {
46
+ id: string;
47
+ category: string;
48
+ originalCategory: string;
49
+ tooltip: string;
50
+ iconClass: string;
51
+ label: string;
52
+ originalLabel: string;
53
+ };
54
+ const GOTO_NEXT_CHANGE: Command;
55
+ const GOTO_PREVIOUS_CHANGE: Command;
56
+ const SHOW_NEXT_CHANGE: Command;
57
+ const SHOW_PREVIOUS_CHANGE: Command;
58
+ const CLOSE_CHANGE_PEEK_VIEW: {
59
+ id: string;
60
+ category: string;
61
+ originalCategory: string;
62
+ label: string;
63
+ originalLabel: string;
64
+ };
65
+ }
66
+ export { ScmColors };
67
+ export declare class ScmContribution extends AbstractViewContribution<ScmWidget> implements FrontendApplicationContribution, TabBarToolbarContribution, ColorContribution, StylingParticipant {
68
+ protected readonly statusBar: StatusBar;
69
+ protected readonly scmService: ScmService;
70
+ protected readonly scmQuickOpenService: ScmQuickOpenService;
71
+ protected readonly labelProvider: LabelProvider;
72
+ protected readonly commands: CommandService;
73
+ protected readonly commandRegistry: CommandRegistry;
74
+ protected readonly contextKeys: ContextKeyService;
75
+ protected readonly scmDecorationsService: ScmDecorationsService;
76
+ protected readonly dirtyDiffNavigator: DirtyDiffNavigator;
77
+ protected scmFocus: ContextKey<boolean>;
78
+ constructor();
79
+ protected init(): void;
80
+ initializeLayout(): Promise<void>;
81
+ onStart(): void;
82
+ protected updateContextKeys(): void;
83
+ registerCommands(commandRegistry: CommandRegistry): void;
84
+ registerMenus(menus: MenuModelRegistry): void;
85
+ registerToolbarItems(registry: TabBarToolbarRegistry): void;
86
+ registerKeybindings(keybindings: KeybindingRegistry): void;
87
+ protected acceptInput(): Promise<void>;
88
+ protected acceptInputCommand(): ScmCommand | undefined;
89
+ protected readonly statusBarDisposable: DisposableCollection;
90
+ protected updateStatusBar(): void;
91
+ protected setStatusBarEntry(id: string, entry: StatusBarEntry): void;
92
+ /**
93
+ * It should be aligned with https://github.com/microsoft/vscode/blob/0dfa355b3ad185a6289ba28a99c141ab9e72d2be/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.ts#L808
94
+ */
95
+ registerColors(colors: ColorRegistry): void;
96
+ registerThemeStyle(theme: ColorTheme, collector: CssStyleCollector): void;
97
+ }
98
+ //# sourceMappingURL=scm-contribution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scm-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/scm-contribution.ts"],"names":[],"mappings":"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"}