@gitlab/ui 36.7.0 → 37.1.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.
- package/CHANGELOG.md +32 -0
- package/dist/components/base/alert/alert.js +1 -11
- package/dist/components/base/card/card.js +1 -1
- package/dist/components/base/drawer/drawer.documentation.js +1 -1
- package/dist/components/base/pagination/pagination.js +1 -0
- package/dist/components/base/path/data.js +2 -1
- package/dist/components/base/path/path.js +5 -4
- package/dist/components/base/tabs/tab/tab.js +4 -0
- package/dist/components/base/tabs/tabs/tabs.documentation.js +2 -14
- package/dist/components/base/tabs/tabs/tabs.js +8 -0
- package/dist/components/charts/area/area.documentation.js +1 -7
- package/dist/components/charts/legend/legend.js +12 -0
- package/dist/components/charts/line/line.documentation.js +2 -5
- package/dist/index.css +2 -2
- package/dist/index.css.map +1 -1
- package/dist/utils/stories_utils.js +13 -1
- package/documentation/components_documentation.js +0 -2
- package/documentation/documented_stories.js +5 -0
- package/package.json +3 -3
- package/src/components/base/accordion/accordion.stories.js +2 -1
- package/src/components/base/alert/alert.scss +0 -38
- package/src/components/base/alert/alert.spec.js +0 -1
- package/src/components/base/alert/alert.stories.js +0 -8
- package/src/components/base/alert/alert.vue +30 -41
- package/src/components/base/badge/badge.stories.js +4 -24
- package/src/components/base/card/card.vue +2 -2
- package/src/components/base/daterange_picker/daterange_picker.stories.js +10 -35
- package/src/components/base/drawer/drawer.documentation.js +1 -1
- package/src/components/base/icon/icon.stories.js +2 -5
- package/src/components/base/pagination/pagination.spec.js +3 -0
- package/src/components/base/pagination/pagination.vue +1 -0
- package/src/components/base/path/__snapshots__/path.spec.js.snap +6 -0
- package/src/components/base/path/data.js +1 -0
- package/src/components/base/path/path.scss +6 -1
- package/src/components/base/path/path.spec.js +8 -0
- package/src/components/base/path/path.vue +10 -4
- package/src/components/base/tabs/tab/tab.vue +4 -0
- package/src/components/base/tabs/tabs/tabs.documentation.js +0 -12
- package/src/components/base/tabs/tabs/tabs.md +2 -7
- package/src/components/base/tabs/tabs/tabs.stories.js +221 -161
- package/src/components/base/tabs/tabs/tabs.vue +6 -0
- package/src/components/base/toggle/toggle.stories.js +2 -3
- package/src/components/charts/area/area.documentation.js +0 -5
- package/src/components/charts/area/area.stories.js +127 -127
- package/src/components/charts/bar/bar.stories.js +8 -5
- package/src/components/charts/heatmap/heatmap.stories.js +13 -16
- package/src/components/charts/legend/legend.stories.js +22 -15
- package/src/components/charts/legend/legend.vue +9 -0
- package/src/components/charts/line/line.documentation.js +0 -2
- package/src/components/charts/line/line.md +0 -2
- package/src/components/charts/line/line.stories.js +124 -113
- package/src/utils/stories_utils.js +6 -0
- package/src/utils/stories_utils.spec.js +18 -0
- package/dist/components/base/tabs/tab/examples/index.js +0 -13
- package/dist/components/base/tabs/tab/examples/tab.basic.example.js +0 -38
- package/dist/components/base/tabs/tab/tab.documentation.js +0 -18
- package/dist/components/base/tabs/tabs/examples/index.js +0 -60
- package/dist/components/base/tabs/tabs/examples/tabs.basic.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.contentless_tab.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.counterbadges.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.custom_title.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.disabled.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.justified.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.no_tabs.example.js +0 -38
- package/dist/components/base/tabs/tabs/examples/tabs.scrollable.example.js +0 -47
- package/dist/components/base/tabs/tabs/examples/tabs.styles_only.example.js +0 -38
- package/dist/components/charts/area/examples/area.basic.example.js +0 -45
- package/dist/components/charts/area/examples/area.basic_plus.example.js +0 -53
- package/dist/components/charts/area/examples/index.js +0 -19
- package/dist/components/charts/legend/examples/index.js +0 -22
- package/dist/components/charts/legend/examples/legend.basic.example.js +0 -93
- package/dist/components/charts/legend/examples/legend.toggled.example.js +0 -100
- package/dist/components/charts/legend/legend.documentation.js +0 -21
- package/dist/components/charts/line/examples/index.js +0 -19
- package/dist/components/charts/line/examples/line.basic.example.js +0 -45
- package/dist/components/charts/line/examples/line.series.example.js +0 -53
- package/src/components/base/tabs/tab/examples/index.js +0 -15
- package/src/components/base/tabs/tab/examples/tab.basic.example.vue +0 -5
- package/src/components/base/tabs/tab/tab.documentation.js +0 -16
- package/src/components/base/tabs/tab/tab.md +0 -3
- package/src/components/base/tabs/tab/tab.stories.js +0 -12
- package/src/components/base/tabs/tabs/examples/index.js +0 -72
- package/src/components/base/tabs/tabs/examples/tabs.basic.example.vue +0 -6
- package/src/components/base/tabs/tabs/examples/tabs.contentless_tab.example.vue +0 -17
- package/src/components/base/tabs/tabs/examples/tabs.counterbadges.example.vue +0 -28
- package/src/components/base/tabs/tabs/examples/tabs.custom_title.example.vue +0 -9
- package/src/components/base/tabs/tabs/examples/tabs.disabled.example.vue +0 -7
- package/src/components/base/tabs/tabs/examples/tabs.justified.example.vue +0 -6
- package/src/components/base/tabs/tabs/examples/tabs.no_tabs.example.vue +0 -8
- package/src/components/base/tabs/tabs/examples/tabs.scrollable.example.vue +0 -20
- package/src/components/base/tabs/tabs/examples/tabs.styles_only.example.vue +0 -22
- package/src/components/charts/area/area.md +0 -1
- package/src/components/charts/area/examples/area.basic.example.vue +0 -14
- package/src/components/charts/area/examples/area.basic_plus.example.vue +0 -25
- package/src/components/charts/area/examples/index.js +0 -22
- package/src/components/charts/legend/examples/index.js +0 -27
- package/src/components/charts/legend/examples/legend.basic.example.vue +0 -55
- package/src/components/charts/legend/examples/legend.toggled.example.vue +0 -60
- package/src/components/charts/legend/legend.documentation.js +0 -19
- package/src/components/charts/legend/legend.md +0 -0
- package/src/components/charts/line/examples/index.js +0 -22
- package/src/components/charts/line/examples/line.basic.example.vue +0 -14
- package/src/components/charts/line/examples/line.series.example.vue +0 -25
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { withKnobs, object, boolean, array } from '@storybook/addon-knobs';
|
|
2
1
|
import { GlLineChart } from '../../../charts';
|
|
3
|
-
import { documentedStoriesOf } from '../../../../documentation/documented_stories';
|
|
4
2
|
import { mockAnnotationsSeries, mockAnnotationsConfigs } from '../../../utils/charts/mock_data';
|
|
5
3
|
import { toolbox } from '../../../utils/charts/story_config';
|
|
6
4
|
import { timeSeriesDateFormatter } from '../../../utils/charts/utils';
|
|
7
5
|
import { generateTimeSeries } from '../../../utils/data_utils';
|
|
6
|
+
import { disableControls } from '../../../utils/stories_utils';
|
|
8
7
|
import readme from './line.md';
|
|
9
8
|
|
|
10
9
|
const components = {
|
|
@@ -50,6 +49,7 @@ const defaultData = [
|
|
|
50
49
|
];
|
|
51
50
|
|
|
52
51
|
const defaultOptions = {
|
|
52
|
+
animation: false,
|
|
53
53
|
xAxis: {
|
|
54
54
|
name: 'Time',
|
|
55
55
|
type: 'category',
|
|
@@ -64,127 +64,138 @@ const template = `<gl-line-chart
|
|
|
64
64
|
:includeLegendAvgMax="includeLegendAvgMax"
|
|
65
65
|
/>`;
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
const generateProps = ({
|
|
68
68
|
data = defaultData,
|
|
69
69
|
option = defaultOptions,
|
|
70
70
|
thresholds = [],
|
|
71
71
|
annotations = [],
|
|
72
72
|
includeLegendAvgMax = true,
|
|
73
|
-
} = {}) {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
73
|
+
} = {}) => ({
|
|
74
|
+
includeLegendAvgMax,
|
|
75
|
+
option,
|
|
76
|
+
thresholds,
|
|
77
|
+
annotations,
|
|
78
|
+
data,
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
const Template = (_args, { argTypes }) => ({
|
|
82
|
+
props: Object.keys(argTypes),
|
|
83
|
+
components,
|
|
84
|
+
template,
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
export const Default = Template.bind({});
|
|
88
|
+
Default.args = generateProps();
|
|
89
|
+
|
|
90
|
+
export const WithThreshold = Template.bind({});
|
|
91
|
+
WithThreshold.args = generateProps({
|
|
92
|
+
thresholds: [{ threshold: 1350, operator: '>' }],
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
export const WithAnnotationsAsProps = Template.bind({});
|
|
96
|
+
WithAnnotationsAsProps.storyNane = 'with annotations as props (recommended)';
|
|
97
|
+
WithAnnotationsAsProps.args = generateProps({
|
|
98
|
+
...mockAnnotationsConfigs,
|
|
99
|
+
data: [
|
|
100
|
+
{
|
|
101
|
+
name: 'Time Series',
|
|
102
|
+
data: generateTimeSeries(),
|
|
80
103
|
},
|
|
81
|
-
|
|
82
|
-
|
|
104
|
+
],
|
|
105
|
+
option: {
|
|
106
|
+
animation: false,
|
|
107
|
+
xAxis: {
|
|
108
|
+
type: 'time',
|
|
109
|
+
name: 'Time',
|
|
110
|
+
axisLabel: {
|
|
111
|
+
formatter: timeSeriesDateFormatter,
|
|
112
|
+
},
|
|
83
113
|
},
|
|
84
|
-
|
|
85
|
-
|
|
114
|
+
},
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
export const WithAnnotationsAsOptionSeries = Template.bind({});
|
|
118
|
+
WithAnnotationsAsOptionSeries.args = generateProps({
|
|
119
|
+
data: [
|
|
120
|
+
{
|
|
121
|
+
name: 'Time Series',
|
|
122
|
+
data: generateTimeSeries(),
|
|
86
123
|
},
|
|
87
|
-
|
|
88
|
-
|
|
124
|
+
],
|
|
125
|
+
option: {
|
|
126
|
+
...mockAnnotationsSeries,
|
|
127
|
+
animation: false,
|
|
128
|
+
xAxis: {
|
|
129
|
+
type: 'time',
|
|
130
|
+
name: 'Time',
|
|
131
|
+
axisLabel: {
|
|
132
|
+
formatter: timeSeriesDateFormatter,
|
|
133
|
+
},
|
|
89
134
|
},
|
|
90
|
-
}
|
|
91
|
-
}
|
|
135
|
+
},
|
|
136
|
+
});
|
|
92
137
|
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
props: generateProps({
|
|
109
|
-
...mockAnnotationsConfigs,
|
|
110
|
-
data: [
|
|
111
|
-
{
|
|
112
|
-
name: 'Time Series',
|
|
113
|
-
data: generateTimeSeries(),
|
|
114
|
-
},
|
|
115
|
-
],
|
|
116
|
-
option: {
|
|
117
|
-
xAxis: {
|
|
118
|
-
type: 'time',
|
|
119
|
-
name: 'Time',
|
|
120
|
-
axisLabel: {
|
|
121
|
-
formatter: timeSeriesDateFormatter,
|
|
122
|
-
},
|
|
123
|
-
},
|
|
124
|
-
},
|
|
125
|
-
}),
|
|
126
|
-
components,
|
|
127
|
-
template,
|
|
128
|
-
}))
|
|
129
|
-
.add('with annotations as option series', () => ({
|
|
130
|
-
props: generateProps({
|
|
131
|
-
data: [
|
|
132
|
-
{
|
|
133
|
-
name: 'Time Series',
|
|
134
|
-
data: generateTimeSeries(),
|
|
135
|
-
},
|
|
136
|
-
],
|
|
137
|
-
option: {
|
|
138
|
-
...mockAnnotationsSeries,
|
|
139
|
-
xAxis: {
|
|
140
|
-
type: 'time',
|
|
141
|
-
name: 'Time',
|
|
142
|
-
axisLabel: {
|
|
143
|
-
formatter: timeSeriesDateFormatter,
|
|
144
|
-
},
|
|
145
|
-
},
|
|
138
|
+
export const WithZoomAndScroll = Template.bind({});
|
|
139
|
+
WithZoomAndScroll.args = generateProps({
|
|
140
|
+
data: [
|
|
141
|
+
{
|
|
142
|
+
name: 'Time Series',
|
|
143
|
+
data: generateTimeSeries(),
|
|
144
|
+
},
|
|
145
|
+
],
|
|
146
|
+
option: {
|
|
147
|
+
animation: false,
|
|
148
|
+
xAxis: {
|
|
149
|
+
type: 'time',
|
|
150
|
+
name: 'Time',
|
|
151
|
+
axisLabel: {
|
|
152
|
+
formatter: timeSeriesDateFormatter,
|
|
146
153
|
},
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
props: generateProps({
|
|
153
|
-
data: [
|
|
154
|
-
{
|
|
155
|
-
name: 'Time Series',
|
|
156
|
-
data: generateTimeSeries(),
|
|
157
|
-
},
|
|
158
|
-
],
|
|
159
|
-
option: {
|
|
160
|
-
xAxis: {
|
|
161
|
-
type: 'time',
|
|
162
|
-
name: 'Time',
|
|
163
|
-
axisLabel: {
|
|
164
|
-
formatter: timeSeriesDateFormatter,
|
|
165
|
-
},
|
|
166
|
-
},
|
|
167
|
-
dataZoom: [
|
|
168
|
-
{
|
|
169
|
-
type: 'slider',
|
|
170
|
-
startValue: '2018-03-01T00:00:00.000',
|
|
171
|
-
},
|
|
172
|
-
],
|
|
154
|
+
},
|
|
155
|
+
dataZoom: [
|
|
156
|
+
{
|
|
157
|
+
type: 'slider',
|
|
158
|
+
startValue: '2018-03-01T00:00:00.000',
|
|
173
159
|
},
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
160
|
+
],
|
|
161
|
+
},
|
|
162
|
+
});
|
|
163
|
+
|
|
164
|
+
export const WithToolbox = Template.bind({});
|
|
165
|
+
WithToolbox.args = generateProps({
|
|
166
|
+
option: {
|
|
167
|
+
animation: false,
|
|
168
|
+
xAxis: {
|
|
169
|
+
name: 'Time',
|
|
170
|
+
type: 'category',
|
|
171
|
+
},
|
|
172
|
+
toolbox,
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
export default {
|
|
177
|
+
title: 'charts/line-chart',
|
|
178
|
+
component: GlLineChart,
|
|
179
|
+
parameters: {
|
|
180
|
+
docs: {
|
|
181
|
+
description: {
|
|
182
|
+
component: readme,
|
|
186
183
|
},
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
argTypes: {
|
|
187
|
+
...disableControls([
|
|
188
|
+
'showToolbox',
|
|
189
|
+
'toolboxZoomIconPath',
|
|
190
|
+
'toolboxBackIconPath',
|
|
191
|
+
'toolboxRestoreIconPath',
|
|
192
|
+
'toolboxSaveAsImageIconPath',
|
|
193
|
+
'formatTooltipText',
|
|
194
|
+
'legendAverageText',
|
|
195
|
+
'legendMaxText',
|
|
196
|
+
'legendMinText',
|
|
197
|
+
'legendCurrentText',
|
|
198
|
+
'legendLayout',
|
|
199
|
+
]),
|
|
200
|
+
},
|
|
201
|
+
};
|
|
@@ -12,3 +12,9 @@ export const SERIES_NAME = {
|
|
|
12
12
|
[SERIES_NAME_LONG_WITHOUT_SPACES]:
|
|
13
13
|
'Series_name_long._Lorem_ipsum_dolor_sit_amet,_consectetur_adipiscing_elit._Sed_tincidunt_interdum_sapien_ut_blandit._Nulla_fermentum_nisi_id_euismod_vulputate._END',
|
|
14
14
|
};
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Builds the parameters object disable one or multiple controls.
|
|
18
|
+
*/
|
|
19
|
+
export const disableControls = (controls = []) =>
|
|
20
|
+
Object.fromEntries(controls.map((control) => [control, { control: { disable: true } }]));
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { disableControls } from './stories_utils';
|
|
2
|
+
|
|
3
|
+
describe('stories utils', () => {
|
|
4
|
+
describe('disableControls', () => {
|
|
5
|
+
const DISABLE_CONTROL_PARAMETER = { control: { disable: true } };
|
|
6
|
+
|
|
7
|
+
it('returns an empty object if no argument is given', () => {
|
|
8
|
+
expect(disableControls()).toEqual({});
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
it('returns parameters object when given an array of strings', () => {
|
|
12
|
+
expect(disableControls(['foo', 'bar'])).toEqual({
|
|
13
|
+
foo: DISABLE_CONTROL_PARAMETER,
|
|
14
|
+
bar: DISABLE_CONTROL_PARAMETER,
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',[_c('gl-tab',{attrs:{"title":"First"}},[_vm._v("first content")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import examples from './examples';
|
|
2
|
-
|
|
3
|
-
var description = "### GlTab Component cannot be used alone\n\nIt must be used with `tabs` as the parent\n";
|
|
4
|
-
|
|
5
|
-
var tab_documentation = {
|
|
6
|
-
description,
|
|
7
|
-
examples,
|
|
8
|
-
bootstrapComponent: 'b-tab',
|
|
9
|
-
followsDesignSystem: true,
|
|
10
|
-
propsInfo: {
|
|
11
|
-
queryParamValue: {
|
|
12
|
-
additionalInfo: 'Query string parameter value to use when `gl-tabs` `sync-active-tab-with-query-params` prop is set to `true`.',
|
|
13
|
-
type: String
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
export default tab_documentation;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import BasicTabsExample from './tabs.basic.example';
|
|
2
|
-
import ContentlessTabExample from './tabs.contentless_tab.example';
|
|
3
|
-
import TabsWithCounterBadgesExample from './tabs.counterbadges.example';
|
|
4
|
-
import CustomTitleExample from './tabs.custom_title.example';
|
|
5
|
-
import DisabledTabExample from './tabs.disabled.example';
|
|
6
|
-
import JustifiedTabsExample from './tabs.justified.example';
|
|
7
|
-
import NoTabsExample from './tabs.no_tabs.example';
|
|
8
|
-
import TabsScrollableExample from './tabs.scrollable.example';
|
|
9
|
-
import TabsStylesOnlyExample from './tabs.styles_only.example';
|
|
10
|
-
|
|
11
|
-
var index = [{
|
|
12
|
-
name: 'Basic',
|
|
13
|
-
items: [{
|
|
14
|
-
id: 'tabs-basic',
|
|
15
|
-
name: 'Basic',
|
|
16
|
-
description: 'Basic Tabs',
|
|
17
|
-
component: BasicTabsExample
|
|
18
|
-
}, {
|
|
19
|
-
id: 'tabs-disabled',
|
|
20
|
-
name: 'Disabled',
|
|
21
|
-
description: 'Disabled Tab',
|
|
22
|
-
component: DisabledTabExample
|
|
23
|
-
}, {
|
|
24
|
-
id: 'tabs-custom-title',
|
|
25
|
-
name: 'Custom Title',
|
|
26
|
-
description: 'Custom Title Tab',
|
|
27
|
-
component: CustomTitleExample
|
|
28
|
-
}, {
|
|
29
|
-
id: 'tabs-contentless-tab',
|
|
30
|
-
name: 'Contentless Tab',
|
|
31
|
-
description: 'Contentless Tab',
|
|
32
|
-
component: ContentlessTabExample
|
|
33
|
-
}, {
|
|
34
|
-
id: 'tabs-no-tabs',
|
|
35
|
-
name: 'Empty state when no tabs',
|
|
36
|
-
description: 'Empty state/content for when there are no tabs',
|
|
37
|
-
component: NoTabsExample
|
|
38
|
-
}, {
|
|
39
|
-
id: 'tabs-with-counter-badges',
|
|
40
|
-
name: 'Tabs with counter badges',
|
|
41
|
-
component: TabsWithCounterBadgesExample
|
|
42
|
-
}, {
|
|
43
|
-
id: 'tabs-styles-only',
|
|
44
|
-
name: 'Tabs styles only',
|
|
45
|
-
component: TabsStylesOnlyExample
|
|
46
|
-
}, {
|
|
47
|
-
id: 'justified-tabs',
|
|
48
|
-
name: 'Justified tabs',
|
|
49
|
-
component: JustifiedTabsExample
|
|
50
|
-
}]
|
|
51
|
-
}, {
|
|
52
|
-
name: 'Scrollable',
|
|
53
|
-
items: [{
|
|
54
|
-
id: 'tabs-scrollable',
|
|
55
|
-
name: 'Scrollable tabs with lots of tabs',
|
|
56
|
-
component: TabsScrollableExample
|
|
57
|
-
}]
|
|
58
|
-
}];
|
|
59
|
-
|
|
60
|
-
export default index;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',[_c('gl-tab',{attrs:{"title":"Tab 1"}},[_vm._v("Tab panel 1")]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Tab 2"}},[_vm._v("Tab panel 2")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',{scopedSlots:_vm._u([{key:"tabs-end",fn:function(){return [_c('li',{staticClass:"nav-item align-self-center"},[_vm._v("Contentless tab")])]},proxy:true}])},[_c('gl-tab',{attrs:{"title":"Regular tab"}},[_c('p',[_vm._v("Regular tab content.")]),_vm._v(" "),_c('p',[_vm._v("\n The contentless tab is not selectable, as it has no content. This is useful for displaying\n things that aren't really tabs after the list of tabs.\n ")])]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Another tab"}},[_c('p',[_vm._v("Another tab's content.")])])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',[_c('gl-tab',{scopedSlots:_vm._u([{key:"title",fn:function(){return [_c('span',[_vm._v("Tab")]),_vm._v(" "),_c('gl-badge',{staticClass:"gl-tab-counter-badge",attrs:{"size":"sm"}},[_vm._v("500")]),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("items")])]},proxy:true}])},[_vm._v("\n Tab panel 1\n ")]),_vm._v(" "),_c('gl-tab',{scopedSlots:_vm._u([{key:"title",fn:function(){return [_c('span',[_vm._v("Tab")]),_vm._v(" "),_c('gl-badge',{staticClass:"gl-tab-counter-badge",attrs:{"size":"sm"}},[_vm._v("250")]),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("items")])]},proxy:true}])},[_vm._v("\n Tab panel 2\n ")]),_vm._v(" "),_c('gl-tab',{scopedSlots:_vm._u([{key:"title",fn:function(){return [_c('span',[_vm._v("Tab")]),_vm._v(" "),_c('gl-badge',{staticClass:"gl-tab-counter-badge",attrs:{"size":"sm"}},[_vm._v("250")]),_vm._v(" "),_c('span',{staticClass:"sr-only"},[_vm._v("items")])]},proxy:true}])},[_vm._v("\n Tab panel 3\n ")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',[_c('gl-tab',{attrs:{"title":"Tab 1"},scopedSlots:_vm._u([{key:"title",fn:function(){return [_c('i',[_vm._v("custom")]),_vm._v(" "),_c('strong',[_vm._v("Title")])]},proxy:true}])},[_vm._v("\n Tab panel 1\n ")]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Tab 2"}},[_vm._v("Tab panel 2")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',[_c('gl-tab',{attrs:{"title":"Tab 1"}},[_vm._v("Tab panel 1")]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Tab 2"}},[_vm._v("Tab panel 2")]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Tab 3","disabled":""}},[_vm._v("Disabled tab panel")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import __vue_normalize__ from 'vue-runtime-helpers/dist/normalize-component.js';
|
|
2
|
-
|
|
3
|
-
/* script */
|
|
4
|
-
|
|
5
|
-
/* template */
|
|
6
|
-
var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gl-tabs',{attrs:{"justified":""}},[_c('gl-tab',{attrs:{"title":"Tab 1"}},[_vm._v("Tab panel 1")]),_vm._v(" "),_c('gl-tab',{attrs:{"title":"Tab 2"}},[_vm._v("Tab panel 2")])],1)};
|
|
7
|
-
var __vue_staticRenderFns__ = [];
|
|
8
|
-
|
|
9
|
-
/* style */
|
|
10
|
-
const __vue_inject_styles__ = undefined;
|
|
11
|
-
/* scoped */
|
|
12
|
-
const __vue_scope_id__ = undefined;
|
|
13
|
-
/* module identifier */
|
|
14
|
-
const __vue_module_identifier__ = undefined;
|
|
15
|
-
/* functional template */
|
|
16
|
-
const __vue_is_functional_template__ = false;
|
|
17
|
-
/* style inject */
|
|
18
|
-
|
|
19
|
-
/* style inject SSR */
|
|
20
|
-
|
|
21
|
-
/* style inject shadow dom */
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const __vue_component__ = __vue_normalize__(
|
|
26
|
-
{ render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
|
|
27
|
-
__vue_inject_styles__,
|
|
28
|
-
{},
|
|
29
|
-
__vue_scope_id__,
|
|
30
|
-
__vue_is_functional_template__,
|
|
31
|
-
__vue_module_identifier__,
|
|
32
|
-
false,
|
|
33
|
-
undefined,
|
|
34
|
-
undefined,
|
|
35
|
-
undefined
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
export default __vue_component__;
|