@gitlab/ui 118.1.2 → 119.0.0

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.
@@ -3774,7 +3774,8 @@
3774
3774
  "com.figma.scope": [
3775
3775
  "STROKE_COLOR"
3776
3776
  ]
3777
- }
3777
+ },
3778
+ "$deprecated": true
3778
3779
  },
3779
3780
  "hover": {
3780
3781
  "$value": "{button.dashed.border.color.default}",
@@ -3784,7 +3785,8 @@
3784
3785
  "com.figma.scope": [
3785
3786
  "STROKE_COLOR"
3786
3787
  ]
3787
- }
3788
+ },
3789
+ "$deprecated": true
3788
3790
  },
3789
3791
  "focus": {
3790
3792
  "$value": "{button.dashed.border.color.default}",
@@ -3794,7 +3796,8 @@
3794
3796
  "com.figma.scope": [
3795
3797
  "STROKE_COLOR"
3796
3798
  ]
3797
- }
3799
+ },
3800
+ "$deprecated": true
3798
3801
  },
3799
3802
  "active": {
3800
3803
  "$value": {
@@ -3807,7 +3810,8 @@
3807
3810
  "com.figma.scope": [
3808
3811
  "STROKE_COLOR"
3809
3812
  ]
3810
- }
3813
+ },
3814
+ "$deprecated": true
3811
3815
  }
3812
3816
  }
3813
3817
  }
@@ -16513,6 +16513,7 @@
16513
16513
  "STROKE_COLOR"
16514
16514
  ]
16515
16515
  },
16516
+ "$deprecated": true,
16516
16517
  "filePath": "src/tokens/contextual/button.tokens.json",
16517
16518
  "isSource": true,
16518
16519
  "original": {
@@ -16527,6 +16528,7 @@
16527
16528
  "STROKE_COLOR"
16528
16529
  ]
16529
16530
  },
16531
+ "$deprecated": true,
16530
16532
  "key": "{button.dashed.border.color.default}"
16531
16533
  },
16532
16534
  "name": "BUTTON_DASHED_BORDER_COLOR_DEFAULT",
@@ -16549,6 +16551,7 @@
16549
16551
  "STROKE_COLOR"
16550
16552
  ]
16551
16553
  },
16554
+ "$deprecated": true,
16552
16555
  "filePath": "src/tokens/contextual/button.tokens.json",
16553
16556
  "isSource": true,
16554
16557
  "original": {
@@ -16560,6 +16563,7 @@
16560
16563
  "STROKE_COLOR"
16561
16564
  ]
16562
16565
  },
16566
+ "$deprecated": true,
16563
16567
  "key": "{button.dashed.border.color.hover}"
16564
16568
  },
16565
16569
  "name": "BUTTON_DASHED_BORDER_COLOR_HOVER",
@@ -16582,6 +16586,7 @@
16582
16586
  "STROKE_COLOR"
16583
16587
  ]
16584
16588
  },
16589
+ "$deprecated": true,
16585
16590
  "filePath": "src/tokens/contextual/button.tokens.json",
16586
16591
  "isSource": true,
16587
16592
  "original": {
@@ -16593,6 +16598,7 @@
16593
16598
  "STROKE_COLOR"
16594
16599
  ]
16595
16600
  },
16601
+ "$deprecated": true,
16596
16602
  "key": "{button.dashed.border.color.focus}"
16597
16603
  },
16598
16604
  "name": "BUTTON_DASHED_BORDER_COLOR_FOCUS",
@@ -16615,6 +16621,7 @@
16615
16621
  "STROKE_COLOR"
16616
16622
  ]
16617
16623
  },
16624
+ "$deprecated": true,
16618
16625
  "filePath": "src/tokens/contextual/button.tokens.json",
16619
16626
  "isSource": true,
16620
16627
  "original": {
@@ -16629,6 +16636,7 @@
16629
16636
  "STROKE_COLOR"
16630
16637
  ]
16631
16638
  },
16639
+ "$deprecated": true,
16632
16640
  "key": "{button.dashed.border.color.active}"
16633
16641
  },
16634
16642
  "name": "BUTTON_DASHED_BORDER_COLOR_ACTIVE",
@@ -16513,6 +16513,7 @@
16513
16513
  "STROKE_COLOR"
16514
16514
  ]
16515
16515
  },
16516
+ "$deprecated": true,
16516
16517
  "filePath": "src/tokens/contextual/button.tokens.json",
16517
16518
  "isSource": true,
16518
16519
  "original": {
@@ -16527,6 +16528,7 @@
16527
16528
  "STROKE_COLOR"
16528
16529
  ]
16529
16530
  },
16531
+ "$deprecated": true,
16530
16532
  "key": "{button.dashed.border.color.default}"
16531
16533
  },
16532
16534
  "name": "BUTTON_DASHED_BORDER_COLOR_DEFAULT",
@@ -16549,6 +16551,7 @@
16549
16551
  "STROKE_COLOR"
16550
16552
  ]
16551
16553
  },
16554
+ "$deprecated": true,
16552
16555
  "filePath": "src/tokens/contextual/button.tokens.json",
16553
16556
  "isSource": true,
16554
16557
  "original": {
@@ -16560,6 +16563,7 @@
16560
16563
  "STROKE_COLOR"
16561
16564
  ]
16562
16565
  },
16566
+ "$deprecated": true,
16563
16567
  "key": "{button.dashed.border.color.hover}"
16564
16568
  },
16565
16569
  "name": "BUTTON_DASHED_BORDER_COLOR_HOVER",
@@ -16582,6 +16586,7 @@
16582
16586
  "STROKE_COLOR"
16583
16587
  ]
16584
16588
  },
16589
+ "$deprecated": true,
16585
16590
  "filePath": "src/tokens/contextual/button.tokens.json",
16586
16591
  "isSource": true,
16587
16592
  "original": {
@@ -16593,6 +16598,7 @@
16593
16598
  "STROKE_COLOR"
16594
16599
  ]
16595
16600
  },
16601
+ "$deprecated": true,
16596
16602
  "key": "{button.dashed.border.color.focus}"
16597
16603
  },
16598
16604
  "name": "BUTTON_DASHED_BORDER_COLOR_FOCUS",
@@ -16615,6 +16621,7 @@
16615
16621
  "STROKE_COLOR"
16616
16622
  ]
16617
16623
  },
16624
+ "$deprecated": true,
16618
16625
  "filePath": "src/tokens/contextual/button.tokens.json",
16619
16626
  "isSource": true,
16620
16627
  "original": {
@@ -16629,6 +16636,7 @@
16629
16636
  "STROKE_COLOR"
16630
16637
  ]
16631
16638
  },
16639
+ "$deprecated": true,
16632
16640
  "key": "{button.dashed.border.color.active}"
16633
16641
  },
16634
16642
  "name": "BUTTON_DASHED_BORDER_COLOR_ACTIVE",
@@ -85,7 +85,6 @@ const buttonVariantOptions = {
85
85
  default: 'default',
86
86
  confirm: 'confirm',
87
87
  danger: 'danger',
88
- dashed: 'dashed',
89
88
  link: 'link',
90
89
  /**
91
90
  * The "reset" variant can be used when customization of GlButton styles is required
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gitlab/ui",
3
- "version": "118.1.2",
3
+ "version": "119.0.0",
4
4
  "description": "GitLab UI Components",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -71,6 +71,7 @@ export default {
71
71
  overflowingItems: [], // array of items that didn't fit and were put in a dropdown instead
72
72
  totalBreadcrumbsWidth: 0, // the total width of all breadcrumb items combined
73
73
  widthPerItem: [], // array with the individual widths of each breadcrumb item
74
+ dropdownWidth: 0, // the width of the breadcrumb item containing the dropdown toggle
74
75
  resizeDone: false, // to apply some CSS only during/after resizing
75
76
  };
76
77
  },
@@ -140,6 +141,9 @@ export default {
140
141
  this.widthPerItem[index] = width;
141
142
  });
142
143
 
144
+ // The dropdown gets rendered during `!resizeDone` so we can mesuare its real width here.
145
+ this.dropdownWidth = this.$refs.dropdown.clientWidth;
146
+
143
147
  this.makeBreadcrumbsFit();
144
148
  },
145
149
  makeBreadcrumbsFit() {
@@ -147,7 +151,6 @@ export default {
147
151
  this.resetItems();
148
152
 
149
153
  const containerWidth = this.$el.clientWidth;
150
- const buttonWidth = this.size === 'sm' ? 40 : 48; // px
151
154
 
152
155
  if (this.totalBreadcrumbsWidth > containerWidth) {
153
156
  // Not all breadcrumb items fit. Start moving items over to the dropdown.
@@ -165,7 +168,7 @@ export default {
165
168
  widthNeeded -= this.widthPerItem[index];
166
169
 
167
170
  // Does it fit now? Then stop.
168
- if (widthNeeded + buttonWidth < containerWidth) break;
171
+ if (widthNeeded + this.dropdownWidth < containerWidth) break;
169
172
  }
170
173
  }
171
174
 
@@ -201,7 +204,11 @@ export default {
201
204
  <template>
202
205
  <nav class="gl-breadcrumbs" :aria-label="ariaLabel" :style="breadcrumbStyle">
203
206
  <ol class="gl-breadcrumb-list breadcrumb" v-bind="$attrs" v-on="$listeners">
204
- <li v-if="hasCollapsible" :class="`gl-breadcrumb-item gl-breadcrumb-item-${size}`">
207
+ <li
208
+ v-if="hasCollapsible || !resizeDone"
209
+ ref="dropdown"
210
+ :class="`gl-breadcrumb-item gl-breadcrumb-item-${size}`"
211
+ >
205
212
  <gl-disclosure-dropdown
206
213
  :items="overflowingItems"
207
214
  :toggle-text="showMoreLabel"
@@ -196,8 +196,7 @@
196
196
  }
197
197
  }
198
198
 
199
- &.btn-default-tertiary,
200
- &.btn-dashed {
199
+ &.btn-default-tertiary {
201
200
  @include gl-button-theme(
202
201
  $color: var(--gl-button-default-tertiary-foreground-color-default),
203
202
  $background-color: var(--gl-button-default-tertiary-background-color-default),
@@ -317,7 +316,6 @@
317
316
  }
318
317
 
319
318
  &.btn-default-secondary,
320
- &.btn-dashed-secondary,
321
319
  &.btn-confirm-secondary,
322
320
  &.btn-danger-secondary,
323
321
  &.btn-reset-secondary,
@@ -329,7 +327,6 @@
329
327
  }
330
328
 
331
329
  &.btn-default,
332
- &.btn-dashed,
333
330
  &.btn-confirm,
334
331
  &.btn-danger {
335
332
  &-tertiary {
@@ -363,25 +360,6 @@
363
360
  }
364
361
  }
365
362
 
366
- &.btn-dashed,
367
- &.btn-dashed-tertiary {
368
- border-style: dashed;
369
- border-color: var(--gl-button-dashed-border-color-default);
370
-
371
- &:hover {
372
- border-color: var(--gl-button-dashed-border-color-hover);
373
- }
374
-
375
- &:focus {
376
- border-color: var(--gl-button-dashed-border-color-focus);
377
- }
378
-
379
- &:active,
380
- &.active {
381
- border-color: var(--gl-button-dashed-border-color-active);
382
- }
383
- }
384
-
385
363
  &.btn-icon {
386
364
  @apply gl-leading-normal;
387
365
  @apply gl-p-0;
@@ -41,20 +41,6 @@ $gl-button-group-border-z-index: $gl-button-group-focus-z-index + 1;
41
41
  }
42
42
  }
43
43
 
44
- // Button separators
45
- .btn-dashed {
46
- &::before {
47
- @apply gl-bg-transparent;
48
- border-left: 1px dashed var(--gl-button-dashed-border-color-default);
49
- }
50
-
51
- &.disabled::before,
52
- &[disabled]::before {
53
- @apply gl-bg-transparent;
54
- border-left: 1px dashed var(--gl-button-disabled-border-color);
55
- }
56
- }
57
-
58
44
  // GlButton confirm and danger variants have transparent gap between items
59
45
  .btn-confirm,
60
46
  .btn-danger {
@@ -130,18 +116,4 @@ $gl-button-group-border-z-index: $gl-button-group-focus-z-index + 1;
130
116
  @apply gl-bg-transparent;
131
117
  }
132
118
  }
133
-
134
- // Dashed button
135
- > .gl-button.btn-dashed:not(:first-child),
136
- > .btn-group:not(:first-child) > .gl-button.btn-dashed,
137
- > .gl-new-dropdown:not(:first-child) > .gl-button.btn-dashed {
138
- &::before {
139
- border-top: 1px dashed var(--gl-button-dashed-border-color-default);
140
- }
141
-
142
- &.disabled::before,
143
- &[disabled]::before {
144
- border-top: 1px dashed var(--gl-button-disabled-border-color);
145
- }
146
- }
147
119
  }
@@ -3774,7 +3774,8 @@
3774
3774
  "com.figma.scope": [
3775
3775
  "STROKE_COLOR"
3776
3776
  ]
3777
- }
3777
+ },
3778
+ "$deprecated": true
3778
3779
  },
3779
3780
  "hover": {
3780
3781
  "$value": "{button.dashed.border.color.default}",
@@ -3784,7 +3785,8 @@
3784
3785
  "com.figma.scope": [
3785
3786
  "STROKE_COLOR"
3786
3787
  ]
3787
- }
3788
+ },
3789
+ "$deprecated": true
3788
3790
  },
3789
3791
  "focus": {
3790
3792
  "$value": "{button.dashed.border.color.default}",
@@ -3794,7 +3796,8 @@
3794
3796
  "com.figma.scope": [
3795
3797
  "STROKE_COLOR"
3796
3798
  ]
3797
- }
3799
+ },
3800
+ "$deprecated": true
3798
3801
  },
3799
3802
  "active": {
3800
3803
  "$value": {
@@ -3807,7 +3810,8 @@
3807
3810
  "com.figma.scope": [
3808
3811
  "STROKE_COLOR"
3809
3812
  ]
3810
- }
3813
+ },
3814
+ "$deprecated": true
3811
3815
  }
3812
3816
  }
3813
3817
  }
@@ -16513,6 +16513,7 @@
16513
16513
  "STROKE_COLOR"
16514
16514
  ]
16515
16515
  },
16516
+ "$deprecated": true,
16516
16517
  "filePath": "src/tokens/contextual/button.tokens.json",
16517
16518
  "isSource": true,
16518
16519
  "original": {
@@ -16527,6 +16528,7 @@
16527
16528
  "STROKE_COLOR"
16528
16529
  ]
16529
16530
  },
16531
+ "$deprecated": true,
16530
16532
  "key": "{button.dashed.border.color.default}"
16531
16533
  },
16532
16534
  "name": "BUTTON_DASHED_BORDER_COLOR_DEFAULT",
@@ -16549,6 +16551,7 @@
16549
16551
  "STROKE_COLOR"
16550
16552
  ]
16551
16553
  },
16554
+ "$deprecated": true,
16552
16555
  "filePath": "src/tokens/contextual/button.tokens.json",
16553
16556
  "isSource": true,
16554
16557
  "original": {
@@ -16560,6 +16563,7 @@
16560
16563
  "STROKE_COLOR"
16561
16564
  ]
16562
16565
  },
16566
+ "$deprecated": true,
16563
16567
  "key": "{button.dashed.border.color.hover}"
16564
16568
  },
16565
16569
  "name": "BUTTON_DASHED_BORDER_COLOR_HOVER",
@@ -16582,6 +16586,7 @@
16582
16586
  "STROKE_COLOR"
16583
16587
  ]
16584
16588
  },
16589
+ "$deprecated": true,
16585
16590
  "filePath": "src/tokens/contextual/button.tokens.json",
16586
16591
  "isSource": true,
16587
16592
  "original": {
@@ -16593,6 +16598,7 @@
16593
16598
  "STROKE_COLOR"
16594
16599
  ]
16595
16600
  },
16601
+ "$deprecated": true,
16596
16602
  "key": "{button.dashed.border.color.focus}"
16597
16603
  },
16598
16604
  "name": "BUTTON_DASHED_BORDER_COLOR_FOCUS",
@@ -16615,6 +16621,7 @@
16615
16621
  "STROKE_COLOR"
16616
16622
  ]
16617
16623
  },
16624
+ "$deprecated": true,
16618
16625
  "filePath": "src/tokens/contextual/button.tokens.json",
16619
16626
  "isSource": true,
16620
16627
  "original": {
@@ -16629,6 +16636,7 @@
16629
16636
  "STROKE_COLOR"
16630
16637
  ]
16631
16638
  },
16639
+ "$deprecated": true,
16632
16640
  "key": "{button.dashed.border.color.active}"
16633
16641
  },
16634
16642
  "name": "BUTTON_DASHED_BORDER_COLOR_ACTIVE",
@@ -16513,6 +16513,7 @@
16513
16513
  "STROKE_COLOR"
16514
16514
  ]
16515
16515
  },
16516
+ "$deprecated": true,
16516
16517
  "filePath": "src/tokens/contextual/button.tokens.json",
16517
16518
  "isSource": true,
16518
16519
  "original": {
@@ -16527,6 +16528,7 @@
16527
16528
  "STROKE_COLOR"
16528
16529
  ]
16529
16530
  },
16531
+ "$deprecated": true,
16530
16532
  "key": "{button.dashed.border.color.default}"
16531
16533
  },
16532
16534
  "name": "BUTTON_DASHED_BORDER_COLOR_DEFAULT",
@@ -16549,6 +16551,7 @@
16549
16551
  "STROKE_COLOR"
16550
16552
  ]
16551
16553
  },
16554
+ "$deprecated": true,
16552
16555
  "filePath": "src/tokens/contextual/button.tokens.json",
16553
16556
  "isSource": true,
16554
16557
  "original": {
@@ -16560,6 +16563,7 @@
16560
16563
  "STROKE_COLOR"
16561
16564
  ]
16562
16565
  },
16566
+ "$deprecated": true,
16563
16567
  "key": "{button.dashed.border.color.hover}"
16564
16568
  },
16565
16569
  "name": "BUTTON_DASHED_BORDER_COLOR_HOVER",
@@ -16582,6 +16586,7 @@
16582
16586
  "STROKE_COLOR"
16583
16587
  ]
16584
16588
  },
16589
+ "$deprecated": true,
16585
16590
  "filePath": "src/tokens/contextual/button.tokens.json",
16586
16591
  "isSource": true,
16587
16592
  "original": {
@@ -16593,6 +16598,7 @@
16593
16598
  "STROKE_COLOR"
16594
16599
  ]
16595
16600
  },
16601
+ "$deprecated": true,
16596
16602
  "key": "{button.dashed.border.color.focus}"
16597
16603
  },
16598
16604
  "name": "BUTTON_DASHED_BORDER_COLOR_FOCUS",
@@ -16615,6 +16621,7 @@
16615
16621
  "STROKE_COLOR"
16616
16622
  ]
16617
16623
  },
16624
+ "$deprecated": true,
16618
16625
  "filePath": "src/tokens/contextual/button.tokens.json",
16619
16626
  "isSource": true,
16620
16627
  "original": {
@@ -16629,6 +16636,7 @@
16629
16636
  "STROKE_COLOR"
16630
16637
  ]
16631
16638
  },
16639
+ "$deprecated": true,
16632
16640
  "key": "{button.dashed.border.color.active}"
16633
16641
  },
16634
16642
  "name": "BUTTON_DASHED_BORDER_COLOR_ACTIVE",
@@ -1264,7 +1264,8 @@
1264
1264
  "com.figma.scope": [
1265
1265
  "STROKE_COLOR"
1266
1266
  ]
1267
- }
1267
+ },
1268
+ "$deprecated": true
1268
1269
  },
1269
1270
  "hover": {
1270
1271
  "$value": "{button.dashed.border.color.default}",
@@ -1274,7 +1275,8 @@
1274
1275
  "com.figma.scope": [
1275
1276
  "STROKE_COLOR"
1276
1277
  ]
1277
- }
1278
+ },
1279
+ "$deprecated": true
1278
1280
  },
1279
1281
  "focus": {
1280
1282
  "$value": "{button.dashed.border.color.default}",
@@ -1284,7 +1286,8 @@
1284
1286
  "com.figma.scope": [
1285
1287
  "STROKE_COLOR"
1286
1288
  ]
1287
- }
1289
+ },
1290
+ "$deprecated": true
1288
1291
  },
1289
1292
  "active": {
1290
1293
  "$value": {
@@ -1297,7 +1300,8 @@
1297
1300
  "com.figma.scope": [
1298
1301
  "STROKE_COLOR"
1299
1302
  ]
1300
- }
1303
+ },
1304
+ "$deprecated": true
1301
1305
  }
1302
1306
  }
1303
1307
  }
@@ -108,7 +108,6 @@ export const buttonVariantOptions = {
108
108
  default: 'default',
109
109
  confirm: 'confirm',
110
110
  danger: 'danger',
111
- dashed: 'dashed',
112
111
  link: 'link',
113
112
  /**
114
113
  * The "reset" variant can be used when customization of GlButton styles is required