saby-customizer 0.0.2 → 0.0.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/features/git-branch.js +1 -10
- package/lib/saby-lib/toolbar.js +18 -12
- package/package.json +1 -1
package/features/git-branch.js
CHANGED
|
@@ -51,7 +51,6 @@ export class GitBranchCardData {
|
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
53
|
* Обновление выбранной версии и обновление карточки задачи
|
|
54
|
-
*
|
|
55
54
|
* @param {string} value Версия
|
|
56
55
|
*/
|
|
57
56
|
set version(value) {
|
|
@@ -70,7 +69,6 @@ export class GitBranchCardData {
|
|
|
70
69
|
|
|
71
70
|
/**
|
|
72
71
|
* Обновление доп. имени ветки и обновление карточки задачи
|
|
73
|
-
*
|
|
74
72
|
* @param {string} value Доп. имя ветки
|
|
75
73
|
*/
|
|
76
74
|
set branchSubName(value) {
|
|
@@ -84,7 +82,6 @@ export class GitBranchCardData {
|
|
|
84
82
|
|
|
85
83
|
/**
|
|
86
84
|
* Обновление краткого описания и карточки задачи
|
|
87
|
-
*
|
|
88
85
|
* @param {string} value Доп. имя ветки
|
|
89
86
|
*/
|
|
90
87
|
set description(value) {
|
|
@@ -103,7 +100,6 @@ export class GitBranchCardData {
|
|
|
103
100
|
|
|
104
101
|
/**
|
|
105
102
|
* Получение имени ветки с учетом выбора вехи и доп. имени ветки
|
|
106
|
-
*
|
|
107
103
|
* @returns {Promise<string>} Имя ветки
|
|
108
104
|
*/
|
|
109
105
|
async getBranchName() {
|
|
@@ -142,7 +138,6 @@ export class GitBranchCardData {
|
|
|
142
138
|
if (this.milestones.length) {
|
|
143
139
|
await this.saveToHistory()
|
|
144
140
|
}
|
|
145
|
-
|
|
146
141
|
}
|
|
147
142
|
|
|
148
143
|
/** Сохраняет данные в историю по карточкам для которых копировали имя ветки или описание */
|
|
@@ -187,7 +182,6 @@ export class GitBranchCardData {
|
|
|
187
182
|
|
|
188
183
|
/**
|
|
189
184
|
* Удаление карточки задачи из истории
|
|
190
|
-
*
|
|
191
185
|
* @param {number} primaryKey Ид записи в истории
|
|
192
186
|
*/
|
|
193
187
|
async removeFromHistory(primaryKey) {
|
|
@@ -407,7 +401,6 @@ class GitBranchCard extends oom.extends(HTMLElement) {
|
|
|
407
401
|
|
|
408
402
|
/**
|
|
409
403
|
* Обновление выбранной версии и обновление карточки задачи
|
|
410
|
-
*
|
|
411
404
|
* @param {string} value Версия
|
|
412
405
|
*/
|
|
413
406
|
set version(value) {
|
|
@@ -426,7 +419,6 @@ class GitBranchCard extends oom.extends(HTMLElement) {
|
|
|
426
419
|
|
|
427
420
|
/**
|
|
428
421
|
* Обновление доп. имени ветки и обновление карточки задачи
|
|
429
|
-
*
|
|
430
422
|
* @param {string} value Доп. имя ветки
|
|
431
423
|
*/
|
|
432
424
|
set branchSubName(value) {
|
|
@@ -444,7 +436,6 @@ class GitBranchCard extends oom.extends(HTMLElement) {
|
|
|
444
436
|
|
|
445
437
|
/**
|
|
446
438
|
* Обновление краткого описания и карточки задачи
|
|
447
|
-
*
|
|
448
439
|
* @param {string} value Доп. имя ветки
|
|
449
440
|
*/
|
|
450
441
|
set description(value) {
|
|
@@ -534,7 +525,6 @@ class GitBranchCard extends oom.extends(HTMLElement) {
|
|
|
534
525
|
|
|
535
526
|
/**
|
|
536
527
|
* Обработчик выбора версии из меню
|
|
537
|
-
*
|
|
538
528
|
* @param {number} index Выбранная в меню позиция
|
|
539
529
|
*/
|
|
540
530
|
selectedVersion(index) {
|
|
@@ -831,6 +821,7 @@ toolbar.addButton({
|
|
|
831
821
|
filter: { names: ['Merge request'] },
|
|
832
822
|
title: 'Открыть ветки для Review кода',
|
|
833
823
|
iconSVG: octicons.codescan.toSVG({ width: 18 }),
|
|
824
|
+
keysMapping: 'alt-KeyR',
|
|
834
825
|
onclick: card => {
|
|
835
826
|
const links = []
|
|
836
827
|
const view = card.element.querySelector('.fed2-DocumentPrint__content-view')?.shadowRoot
|
package/lib/saby-lib/toolbar.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { oom } from '@notml/core'
|
|
2
2
|
import { getListOfOpenCards } from './edo.js'
|
|
3
|
+
import { keysMapping } from 'saby-customizer/lib.js'
|
|
3
4
|
|
|
4
5
|
const { MutationObserver } = window
|
|
5
6
|
/**
|
|
@@ -68,6 +69,7 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
68
69
|
* @property {ButtonOptionsFilter} [filter] Фильтры отображения кнопок
|
|
69
70
|
* @property {string} title Всплывающая подсказка на кнопке
|
|
70
71
|
* @property {string} iconSVG Верстка иконки в формате SVG
|
|
72
|
+
* @property {string} [keysMapping] Горячие клавиши для вызова обработчика на onclick
|
|
71
73
|
* @property {Function} onclick Обработчик клика на иконку
|
|
72
74
|
*/
|
|
73
75
|
/** @type {ButtonOptions[]} */
|
|
@@ -84,13 +86,23 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
84
86
|
|
|
85
87
|
/**
|
|
86
88
|
* Регистрирует новую общую кнопку в панели сайта
|
|
87
|
-
*
|
|
88
89
|
* @param {ButtonOptions} options Опции кнопки
|
|
89
90
|
*/
|
|
90
91
|
static addButton(options) {
|
|
91
92
|
options = Object.assign({ position: 'right' }, options)
|
|
92
93
|
this.buttons.push(options)
|
|
93
94
|
|
|
95
|
+
if (options.keysMapping) {
|
|
96
|
+
keysMapping[options.keysMapping] = () => {
|
|
97
|
+
const container = Array.from(this.containers).pop()
|
|
98
|
+
const [card] = container.options.card
|
|
99
|
+
? getListOfOpenCards({ id: container.options.card.data.id })
|
|
100
|
+
: [null]
|
|
101
|
+
|
|
102
|
+
options.onclick(card)
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
94
106
|
this.containers.forEach(container => container.addButton(options))
|
|
95
107
|
|
|
96
108
|
if (!ToolbarContainer.globalContainer) {
|
|
@@ -104,7 +116,6 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
104
116
|
|
|
105
117
|
/**
|
|
106
118
|
* Добавляет в вертску сайта глобальный контейнер в панели для добавления кнопок
|
|
107
|
-
*
|
|
108
119
|
* @param {{searchCount:number}} options Опции регистарции обработчиков
|
|
109
120
|
*/
|
|
110
121
|
static addGlobalContainer({ searchCount } = { searchCount: 0 }) {
|
|
@@ -130,7 +141,6 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
130
141
|
|
|
131
142
|
/**
|
|
132
143
|
* Регистрирует обработчик для поиска открытых задач и добавления в них панели
|
|
133
|
-
*
|
|
134
144
|
* @param {{searchCount:number}} options Опции регистарции обработчиков
|
|
135
145
|
*/
|
|
136
146
|
static registerTaskPanelWatcher({ searchCount } = { searchCount: 0 }) {
|
|
@@ -226,7 +236,6 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
226
236
|
|
|
227
237
|
/**
|
|
228
238
|
* Добавляет новую общую кнопку в текущий контейнер панели
|
|
229
|
-
*
|
|
230
239
|
* @param {ButtonOptions} options Опции кнопки
|
|
231
240
|
*/
|
|
232
241
|
addButton(options) {
|
|
@@ -241,16 +250,13 @@ class ToolbarContainer extends oom.extends(HTMLElement, optionsDefaults) {
|
|
|
241
250
|
}
|
|
242
251
|
|
|
243
252
|
if (match) {
|
|
253
|
+
const [card] = this.options.card
|
|
254
|
+
? getListOfOpenCards({ id: this.options.card.data.id })
|
|
255
|
+
: [null]
|
|
244
256
|
const button = oom.div({
|
|
245
257
|
class: 'button',
|
|
246
258
|
title: options.title,
|
|
247
|
-
onclick: () =>
|
|
248
|
-
const [card] = this.options.card
|
|
249
|
-
? getListOfOpenCards({ id: this.options.card.data.id })
|
|
250
|
-
: [null]
|
|
251
|
-
|
|
252
|
-
options.onclick(card)
|
|
253
|
-
}
|
|
259
|
+
onclick: () => options.onclick(card)
|
|
254
260
|
})
|
|
255
261
|
|
|
256
262
|
if (options.iconSVG) {
|
|
@@ -268,5 +274,5 @@ oom.define(ToolbarContainer)
|
|
|
268
274
|
|
|
269
275
|
|
|
270
276
|
export const toolbar = {
|
|
271
|
-
addButton: (options) => ToolbarContainer.addButton(options)
|
|
277
|
+
addButton: (/** @type {ButtonOptions} */ options) => ToolbarContainer.addButton(options)
|
|
272
278
|
}
|