@dataloop-ai/components 0.18.6 → 0.18.8
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/package.json +1 -1
- package/src/components/compound/DlCharts/charts/DlConfusionMatrix/DlConfusionMatrix.vue +90 -57
- package/src/components/compound/DlCharts/components/DlBrush.vue +24 -4
- package/src/components/compound/DlCharts/types/DlConfusionMatrix.types.ts +5 -5
- package/src/components/compound/DlCounters/DlCounters.vue +4 -9
- package/src/components/compound/DlCounters/types.ts +5 -0
- package/src/components/compound/types.ts +2 -0
- package/src/components/essential/{DlPageLayout/DlPageLayout.vue → DlLayout/DlLayout.vue} +11 -11
- package/src/components/essential/DlLayout/index.ts +2 -0
- package/src/components/essential/index.ts +1 -1
- package/src/demos/DlConfusionMatrixDemo.vue +93 -51
- package/src/demos/DlDatasetBrowserLayoutDemo/DlDatasetBrowserLayoutDemo.vue +85 -0
- package/src/demos/DlDatasetBrowserLayoutDemo/index.ts +2 -0
- package/src/demos/DlLayoutDemo.vue +25 -0
- package/src/demos/DlPageLayoutDemo/DlPageLayoutDemo.vue +81 -0
- package/src/demos/DlPageLayoutDemo/index.ts +2 -0
- package/src/demos/DlStudioLayoutDemo/DlStudioLayoutDemo.vue +85 -0
- package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/StudioLeftDrawer.vue +2 -2
- package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/StudioTabsMenu.vue +2 -2
- package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/TabMenu/FilterMenu.vue +1 -1
- package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/TabMenu/TabMenuAnnotations.vue +1 -6
- package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/TabMenu/TabMenuItem.vue +1 -1
- package/src/demos/DlStudioLayoutDemo/index.ts +2 -0
- package/src/demos/index.ts +2 -2
- package/src/index.ts +2 -0
- package/src/layouts/{DlDatasetBrowser/DlDatasetBrowser.vue → DlDatasetBrowserLayout/DlDatasetBrowserLayout.vue} +6 -6
- package/src/layouts/DlDatasetBrowserLayout/index.ts +2 -0
- package/src/layouts/DlPageLayout/DlPageLayout.vue +61 -0
- package/src/layouts/DlPageLayout/components/DlPageLayoutHeader/DlPageLayoutHeader.vue +76 -0
- package/src/layouts/DlPageLayout/components/DlPageLayoutHeader/index.ts +2 -0
- package/src/layouts/DlPageLayout/components/index.ts +1 -0
- package/src/{components/essential → layouts}/DlPageLayout/index.ts +2 -0
- package/src/layouts/DlStudioLayout/DlStudioLayout.vue +6 -9
- package/src/layouts/index.ts +3 -0
- package/src/demos/DlPageLayoutDemo.vue +0 -146
- package/src/layouts/DlStudioLayout/components/Demo/StudioHeader.vue +0 -121
- package/src/layouts/DlStudioLayout/components/NavigationDrawer.vue +0 -147
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/DatasetFooter.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/DatasetHeader.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/DatasetLeftDrawer.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/DatasetMainContent.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/DatasetRightDrawer.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/ActionsMenu.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/AutomationMenu.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/CardView.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/CardViewGallery.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/CardViewTable.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/EmptyState/LayoutEmptyState.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/EmptyState/UploadData.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/MainContentImages.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/MainContent/MainContentNav.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/NavbarKpi.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/NavbarSearch.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/SearchFilterMenu.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/filters/AddFilter.vue +0 -0
- /package/src/{layouts/DlDatasetBrowser/DemoComponents → demos/DlDatasetBrowserLayoutDemo/components}/types/imageMetadata.ts +0 -0
- /package/src/{layouts/DlStudioLayout → demos/DlStudioLayoutDemo}/components/LayoutNavbar.vue +0 -0
- /package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/LeftMenuContent.vue +0 -0
- /package/src/{layouts/DlStudioLayout → demos/DlStudioLayoutDemo}/components/ListAutocomplete.vue +0 -0
- /package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/StudioFooter.vue +0 -0
- /package/src/{layouts/DlStudioLayout/components/Demo → demos/DlStudioLayoutDemo/components}/StudioMainContent.vue +0 -0
- /package/src/{layouts/DlStudioLayout → demos/DlStudioLayoutDemo}/types/HorizontalItems.ts +0 -0
- /package/src/{layouts/DlStudioLayout → demos/DlStudioLayoutDemo}/types/VerticalItems.ts +0 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<dl-button @click="isOpenedDatasetBrowserModal = true">
|
|
4
|
+
Dataset Browser
|
|
5
|
+
</dl-button>
|
|
6
|
+
<div
|
|
7
|
+
v-if="isOpenedDatasetBrowserModal"
|
|
8
|
+
class="fullscreen-template"
|
|
9
|
+
>
|
|
10
|
+
<div class="fullscreen-template__close">
|
|
11
|
+
<dl-button
|
|
12
|
+
icon="icon-dl-close"
|
|
13
|
+
flat
|
|
14
|
+
@click="isOpenedDatasetBrowserModal = false"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
17
|
+
<dl-dataset-browser-layout>
|
|
18
|
+
<template #header>
|
|
19
|
+
<dataset-header />
|
|
20
|
+
</template>
|
|
21
|
+
<template #leftDrawer>
|
|
22
|
+
<dataset-left-drawer />
|
|
23
|
+
</template>
|
|
24
|
+
<template #rightDrawer>
|
|
25
|
+
<dataset-right-drawer />
|
|
26
|
+
</template>
|
|
27
|
+
<template #body>
|
|
28
|
+
<dataset-main-content />
|
|
29
|
+
</template>
|
|
30
|
+
<template #footer>
|
|
31
|
+
<dataset-footer />
|
|
32
|
+
</template>
|
|
33
|
+
</dl-dataset-browser-layout>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</template>
|
|
37
|
+
|
|
38
|
+
<script lang="ts">
|
|
39
|
+
import { defineComponent, ref } from 'vue-demi'
|
|
40
|
+
import { DlButton } from '../../components'
|
|
41
|
+
import { DlDatasetBrowserLayout } from '../../layouts'
|
|
42
|
+
import DatasetHeader from './components/DatasetHeader.vue'
|
|
43
|
+
import DatasetMainContent from './components/DatasetMainContent.vue'
|
|
44
|
+
import DatasetLeftDrawer from './components/DatasetLeftDrawer.vue'
|
|
45
|
+
import DatasetRightDrawer from './components/DatasetRightDrawer.vue'
|
|
46
|
+
import DatasetFooter from './components/DatasetFooter.vue'
|
|
47
|
+
|
|
48
|
+
export default defineComponent({
|
|
49
|
+
name: 'DlLayoutDemo',
|
|
50
|
+
components: {
|
|
51
|
+
DlButton,
|
|
52
|
+
DlDatasetBrowserLayout,
|
|
53
|
+
DatasetHeader,
|
|
54
|
+
DatasetLeftDrawer,
|
|
55
|
+
DatasetRightDrawer,
|
|
56
|
+
DatasetFooter,
|
|
57
|
+
DatasetMainContent
|
|
58
|
+
},
|
|
59
|
+
setup() {
|
|
60
|
+
const isOpenedDatasetBrowserModal = ref(false)
|
|
61
|
+
|
|
62
|
+
return {
|
|
63
|
+
isOpenedDatasetBrowserModal
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
})
|
|
67
|
+
</script>
|
|
68
|
+
|
|
69
|
+
<style scoped lang="scss">
|
|
70
|
+
.fullscreen-template {
|
|
71
|
+
position: fixed;
|
|
72
|
+
height: 100vh;
|
|
73
|
+
width: 100%;
|
|
74
|
+
top: 0;
|
|
75
|
+
left: 0;
|
|
76
|
+
background-color: var(--dl-color-panel-background);
|
|
77
|
+
z-index: 1000;
|
|
78
|
+
|
|
79
|
+
&__close {
|
|
80
|
+
position: absolute;
|
|
81
|
+
right: 10px;
|
|
82
|
+
z-index: 2;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
</style>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<DlStudioLayoutDemo />
|
|
4
|
+
<DlDatasetBrowserLayoutDemo />
|
|
5
|
+
<DlPageLayoutDemo />
|
|
6
|
+
</div>
|
|
7
|
+
</template>
|
|
8
|
+
|
|
9
|
+
<script lang="ts">
|
|
10
|
+
import { defineComponent } from 'vue-demi'
|
|
11
|
+
import { DlStudioLayoutDemo } from './DlStudioLayoutDemo'
|
|
12
|
+
import { DlDatasetBrowserLayoutDemo } from './DlDatasetBrowserLayoutDemo'
|
|
13
|
+
import { DlPageLayoutDemo } from './DlPageLayoutDemo'
|
|
14
|
+
|
|
15
|
+
export default defineComponent({
|
|
16
|
+
name: 'DlLayoutDemo',
|
|
17
|
+
components: {
|
|
18
|
+
DlStudioLayoutDemo,
|
|
19
|
+
DlDatasetBrowserLayoutDemo,
|
|
20
|
+
DlPageLayoutDemo
|
|
21
|
+
}
|
|
22
|
+
})
|
|
23
|
+
</script>
|
|
24
|
+
|
|
25
|
+
<style scoped lang="scss"></style>
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<dl-button @click="isOpenPageLayoutModal = true">
|
|
4
|
+
Page Layout
|
|
5
|
+
</dl-button>
|
|
6
|
+
<div
|
|
7
|
+
v-if="isOpenPageLayoutModal"
|
|
8
|
+
class="fullscreen-template"
|
|
9
|
+
>
|
|
10
|
+
<div class="fullscreen-template__close">
|
|
11
|
+
<dl-button
|
|
12
|
+
icon="icon-dl-close"
|
|
13
|
+
flat
|
|
14
|
+
@click="isOpenPageLayoutModal = false"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
17
|
+
<dl-page-layout
|
|
18
|
+
title="test title"
|
|
19
|
+
:counters="[
|
|
20
|
+
{
|
|
21
|
+
value: 200,
|
|
22
|
+
text: 'All dataset items'
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
value: 100,
|
|
26
|
+
text: 'Selected items'
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
value: 12,
|
|
30
|
+
text: 'Annotated items'
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
value: 17,
|
|
34
|
+
text: 'Annotations'
|
|
35
|
+
}
|
|
36
|
+
]"
|
|
37
|
+
>
|
|
38
|
+
<div>This is a body</div>
|
|
39
|
+
</dl-page-layout>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</template>
|
|
43
|
+
|
|
44
|
+
<script lang="ts">
|
|
45
|
+
import { defineComponent, ref } from 'vue-demi'
|
|
46
|
+
import { DlButton } from '../../components'
|
|
47
|
+
import { DlPageLayout } from '../../layouts'
|
|
48
|
+
|
|
49
|
+
export default defineComponent({
|
|
50
|
+
name: 'DlLayoutDemo',
|
|
51
|
+
components: {
|
|
52
|
+
DlButton,
|
|
53
|
+
DlPageLayout
|
|
54
|
+
},
|
|
55
|
+
setup() {
|
|
56
|
+
const isOpenPageLayoutModal = ref(false)
|
|
57
|
+
|
|
58
|
+
return {
|
|
59
|
+
isOpenPageLayoutModal
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
})
|
|
63
|
+
</script>
|
|
64
|
+
|
|
65
|
+
<style scoped lang="scss">
|
|
66
|
+
.fullscreen-template {
|
|
67
|
+
position: fixed;
|
|
68
|
+
height: 100vh;
|
|
69
|
+
width: 100%;
|
|
70
|
+
top: 0;
|
|
71
|
+
left: 0;
|
|
72
|
+
background-color: var(--dl-color-panel-background);
|
|
73
|
+
z-index: 1000;
|
|
74
|
+
|
|
75
|
+
&__close {
|
|
76
|
+
position: absolute;
|
|
77
|
+
right: 10px;
|
|
78
|
+
z-index: 2;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
</style>
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<dl-button @click="isOpenedStudioModal = true">
|
|
4
|
+
Studio Layout
|
|
5
|
+
</dl-button>
|
|
6
|
+
<div
|
|
7
|
+
v-if="isOpenedStudioModal"
|
|
8
|
+
class="fullscreen-template"
|
|
9
|
+
>
|
|
10
|
+
<div class="fullscreen-template__close">
|
|
11
|
+
<dl-button
|
|
12
|
+
flat
|
|
13
|
+
icon="icon-dl-close"
|
|
14
|
+
@click="isOpenedStudioModal = false"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
17
|
+
<DlStudioLayout>
|
|
18
|
+
<template #left-menu>
|
|
19
|
+
<left-menu-content />
|
|
20
|
+
</template>
|
|
21
|
+
<template #leftDrawer>
|
|
22
|
+
<studio-left-drawer />
|
|
23
|
+
</template>
|
|
24
|
+
<template #rightDrawer>
|
|
25
|
+
<studio-tabs-menu />
|
|
26
|
+
</template>
|
|
27
|
+
<template #body>
|
|
28
|
+
<studio-main-content />
|
|
29
|
+
</template>
|
|
30
|
+
<template #footer>
|
|
31
|
+
<studio-footer />
|
|
32
|
+
</template>
|
|
33
|
+
</DlStudioLayout>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</template>
|
|
37
|
+
|
|
38
|
+
<script lang="ts">
|
|
39
|
+
import { defineComponent, ref } from 'vue-demi'
|
|
40
|
+
import { DlButton } from '../../components'
|
|
41
|
+
import { DlStudioLayout } from '../../layouts'
|
|
42
|
+
import StudioMainContent from './components/StudioMainContent.vue'
|
|
43
|
+
import LeftMenuContent from './components/LeftMenuContent.vue'
|
|
44
|
+
import StudioTabsMenu from './components/StudioTabsMenu.vue'
|
|
45
|
+
import StudioLeftDrawer from './components/StudioLeftDrawer.vue'
|
|
46
|
+
import StudioFooter from './components/StudioFooter.vue'
|
|
47
|
+
|
|
48
|
+
export default defineComponent({
|
|
49
|
+
name: 'DlStudioLayoutDemo',
|
|
50
|
+
components: {
|
|
51
|
+
DlButton,
|
|
52
|
+
DlStudioLayout,
|
|
53
|
+
StudioMainContent,
|
|
54
|
+
StudioTabsMenu,
|
|
55
|
+
StudioLeftDrawer,
|
|
56
|
+
StudioFooter,
|
|
57
|
+
LeftMenuContent
|
|
58
|
+
},
|
|
59
|
+
setup() {
|
|
60
|
+
const isOpenedStudioModal = ref(false)
|
|
61
|
+
|
|
62
|
+
return {
|
|
63
|
+
isOpenedStudioModal
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
})
|
|
67
|
+
</script>
|
|
68
|
+
|
|
69
|
+
<style scoped lang="scss">
|
|
70
|
+
.fullscreen-template {
|
|
71
|
+
position: fixed;
|
|
72
|
+
height: 100vh;
|
|
73
|
+
width: 100%;
|
|
74
|
+
top: 0;
|
|
75
|
+
left: 0;
|
|
76
|
+
background-color: var(--dl-color-panel-background);
|
|
77
|
+
z-index: 1000;
|
|
78
|
+
|
|
79
|
+
&__close {
|
|
80
|
+
position: absolute;
|
|
81
|
+
right: 10px;
|
|
82
|
+
z-index: 2;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
</style>
|
|
@@ -117,14 +117,14 @@
|
|
|
117
117
|
|
|
118
118
|
<script lang="ts">
|
|
119
119
|
import { defineComponent, ref } from 'vue-demi'
|
|
120
|
-
import ListAutocomplete from '
|
|
120
|
+
import ListAutocomplete from './ListAutocomplete.vue'
|
|
121
121
|
import {
|
|
122
122
|
DlButton,
|
|
123
123
|
DlCheckbox,
|
|
124
124
|
DlTooltip,
|
|
125
125
|
DlIcon,
|
|
126
126
|
DlTypography
|
|
127
|
-
} from '
|
|
127
|
+
} from '../../../components'
|
|
128
128
|
|
|
129
129
|
export default defineComponent({
|
|
130
130
|
name: 'StudioLeftDrawer',
|
|
@@ -29,8 +29,8 @@ import {
|
|
|
29
29
|
DlTabPanel,
|
|
30
30
|
DlIcon,
|
|
31
31
|
DlButton
|
|
32
|
-
} from '
|
|
33
|
-
import { DlTabDetails } from '
|
|
32
|
+
} from '../../../components'
|
|
33
|
+
import { DlTabDetails } from '../../../components/types'
|
|
34
34
|
|
|
35
35
|
export default defineComponent({
|
|
36
36
|
name: 'StudioTabsMenu',
|
|
@@ -53,12 +53,7 @@
|
|
|
53
53
|
<script lang="ts">
|
|
54
54
|
import { defineComponent, ref } from 'vue-demi'
|
|
55
55
|
import FilterMenu from './FilterMenu.vue'
|
|
56
|
-
import {
|
|
57
|
-
DlSeparator,
|
|
58
|
-
DlButton,
|
|
59
|
-
DlIcon,
|
|
60
|
-
DlInput
|
|
61
|
-
} from '../../../../../components'
|
|
56
|
+
import { DlSeparator, DlButton, DlIcon, DlInput } from '../../../../components'
|
|
62
57
|
|
|
63
58
|
export default defineComponent({
|
|
64
59
|
name: 'TabMenuAnnotations',
|
package/src/demos/index.ts
CHANGED
|
@@ -64,7 +64,7 @@ import DlMarkupTableDemo from './DlMarkupTableDemo.vue'
|
|
|
64
64
|
import DlVirtualScrollDemo from './DlVirtualScrollDemo.vue'
|
|
65
65
|
import DlJsonEditorDemo from './DlJsonEditorDemo.vue'
|
|
66
66
|
import DlThumbnailGallery from './DlThumbnailGalleryDemo.vue'
|
|
67
|
-
import
|
|
67
|
+
import DlLayoutDemo from './DlLayoutDemo.vue'
|
|
68
68
|
import { DlCodeEditorDemo } from './DlCodeEditor'
|
|
69
69
|
|
|
70
70
|
export default {
|
|
@@ -132,5 +132,5 @@ export default {
|
|
|
132
132
|
DlJsonEditorDemo,
|
|
133
133
|
DlThumbnailGallery,
|
|
134
134
|
DlCodeEditorDemo,
|
|
135
|
-
|
|
135
|
+
DlLayoutDemo
|
|
136
136
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<dl-
|
|
3
|
+
<dl-layout :template="template">
|
|
4
4
|
<template #header>
|
|
5
5
|
<slot name="header" />
|
|
6
6
|
</template>
|
|
@@ -10,24 +10,24 @@
|
|
|
10
10
|
<template #rightDrawer>
|
|
11
11
|
<slot name="rightDrawer" />
|
|
12
12
|
</template>
|
|
13
|
-
<template #
|
|
14
|
-
<slot name="
|
|
13
|
+
<template #body>
|
|
14
|
+
<slot name="body" />
|
|
15
15
|
</template>
|
|
16
16
|
<template #footer>
|
|
17
17
|
<slot name="footer" />
|
|
18
18
|
</template>
|
|
19
|
-
</dl-
|
|
19
|
+
</dl-layout>
|
|
20
20
|
</div>
|
|
21
21
|
</template>
|
|
22
22
|
|
|
23
23
|
<script lang="ts">
|
|
24
24
|
import { defineComponent } from 'vue-demi'
|
|
25
|
-
import {
|
|
25
|
+
import { DlLayout } from '../../components'
|
|
26
26
|
|
|
27
27
|
export default defineComponent({
|
|
28
28
|
name: 'DlDatasetBrowser',
|
|
29
29
|
components: {
|
|
30
|
-
|
|
30
|
+
DlLayout
|
|
31
31
|
},
|
|
32
32
|
setup() {
|
|
33
33
|
const template = '"h h h" "l p r" "f f f"'
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<dl-layout :template="template">
|
|
4
|
+
<template #header>
|
|
5
|
+
<slot name="header">
|
|
6
|
+
<dl-page-layout-header
|
|
7
|
+
:title="title"
|
|
8
|
+
:sub-title="subTitle"
|
|
9
|
+
:counters="counters"
|
|
10
|
+
/>
|
|
11
|
+
</slot>
|
|
12
|
+
</template>
|
|
13
|
+
<template #body>
|
|
14
|
+
<slot name="body">
|
|
15
|
+
<slot />
|
|
16
|
+
</slot>
|
|
17
|
+
</template>
|
|
18
|
+
<template #footer>
|
|
19
|
+
<slot name="footer" />
|
|
20
|
+
</template>
|
|
21
|
+
</dl-layout>
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<script lang="ts">
|
|
26
|
+
import { defineComponent, PropType } from 'vue-demi'
|
|
27
|
+
import { DlLayout } from '../../components'
|
|
28
|
+
import { DlCounterItem } from '../../types'
|
|
29
|
+
import { DlPageLayoutHeader } from './components'
|
|
30
|
+
|
|
31
|
+
export default defineComponent({
|
|
32
|
+
name: 'DlPageLayout',
|
|
33
|
+
components: {
|
|
34
|
+
DlLayout,
|
|
35
|
+
DlPageLayoutHeader
|
|
36
|
+
},
|
|
37
|
+
props: {
|
|
38
|
+
title: {
|
|
39
|
+
type: String,
|
|
40
|
+
default: ''
|
|
41
|
+
},
|
|
42
|
+
subTitle: {
|
|
43
|
+
type: String,
|
|
44
|
+
default: ''
|
|
45
|
+
},
|
|
46
|
+
counters: {
|
|
47
|
+
type: Array as PropType<DlCounterItem[]>,
|
|
48
|
+
default: () => [] as DlCounterItem[]
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
setup() {
|
|
52
|
+
const template = '"h h h" "p p p" "f f f"'
|
|
53
|
+
|
|
54
|
+
return {
|
|
55
|
+
template
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
</script>
|
|
60
|
+
|
|
61
|
+
<style scoped></style>
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="page-layout-header">
|
|
3
|
+
<div style="display: flex; height: 100%; align-items: center">
|
|
4
|
+
<div style="padding-left: 25px">
|
|
5
|
+
<dl-typography
|
|
6
|
+
color="dl-color-lighter"
|
|
7
|
+
size="10px"
|
|
8
|
+
>
|
|
9
|
+
{{ subTitle }}
|
|
10
|
+
</dl-typography>
|
|
11
|
+
<dl-typography
|
|
12
|
+
color="dl-color-darker"
|
|
13
|
+
size="30px"
|
|
14
|
+
>
|
|
15
|
+
{{ title }}
|
|
16
|
+
</dl-typography>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
<div
|
|
20
|
+
v-if="counters.length > 0"
|
|
21
|
+
style="
|
|
22
|
+
display: flex;
|
|
23
|
+
height: 100%;
|
|
24
|
+
align-items: center;
|
|
25
|
+
justify-content: end;
|
|
26
|
+
padding-right: 10px;
|
|
27
|
+
"
|
|
28
|
+
>
|
|
29
|
+
<dl-counters
|
|
30
|
+
counter-font-size="20px"
|
|
31
|
+
title-font-size="12px"
|
|
32
|
+
:items="counters"
|
|
33
|
+
/>
|
|
34
|
+
</div>
|
|
35
|
+
</div>
|
|
36
|
+
</template>
|
|
37
|
+
|
|
38
|
+
<script lang="ts">
|
|
39
|
+
import { PropType, defineComponent } from 'vue-demi'
|
|
40
|
+
import { DlTypography, DlCounters } from '../../../../components'
|
|
41
|
+
import { DlCounterItem } from '../../../../types'
|
|
42
|
+
|
|
43
|
+
export default defineComponent({
|
|
44
|
+
name: 'DlPageLayoutHeader',
|
|
45
|
+
components: {
|
|
46
|
+
DlTypography,
|
|
47
|
+
DlCounters
|
|
48
|
+
},
|
|
49
|
+
props: {
|
|
50
|
+
title: {
|
|
51
|
+
type: String,
|
|
52
|
+
default: ''
|
|
53
|
+
},
|
|
54
|
+
subTitle: {
|
|
55
|
+
type: String,
|
|
56
|
+
default: ''
|
|
57
|
+
},
|
|
58
|
+
counters: {
|
|
59
|
+
type: Array as PropType<DlCounterItem[]>,
|
|
60
|
+
default: () => [] as DlCounterItem[]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
})
|
|
64
|
+
</script>
|
|
65
|
+
|
|
66
|
+
<style scoped>
|
|
67
|
+
.page-layout-header {
|
|
68
|
+
height: 100px;
|
|
69
|
+
display: grid;
|
|
70
|
+
grid-template-columns: 1fr 1fr;
|
|
71
|
+
width: 100%;
|
|
72
|
+
justify-self: center;
|
|
73
|
+
justify-content: center;
|
|
74
|
+
background-color: var(--dl-color-body-background);
|
|
75
|
+
}
|
|
76
|
+
</style>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './DlPageLayoutHeader'
|
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="dl-studio-layout">
|
|
3
|
-
<dl-
|
|
4
|
-
<template #header>
|
|
5
|
-
<slot name="header" />
|
|
6
|
-
</template>
|
|
3
|
+
<dl-layout :template="template">
|
|
7
4
|
<template #leftDrawer>
|
|
8
5
|
<slot name="leftDrawer" />
|
|
9
6
|
</template>
|
|
10
7
|
<template #rightDrawer>
|
|
11
8
|
<slot name="rightDrawer" />
|
|
12
9
|
</template>
|
|
13
|
-
<template #
|
|
14
|
-
<slot name="
|
|
10
|
+
<template #body>
|
|
11
|
+
<slot name="body" />
|
|
15
12
|
</template>
|
|
16
13
|
<template #footer>
|
|
17
14
|
<slot name="footer" />
|
|
18
15
|
</template>
|
|
19
|
-
</dl-
|
|
16
|
+
</dl-layout>
|
|
20
17
|
</div>
|
|
21
18
|
</template>
|
|
22
19
|
|
|
23
20
|
<script lang="ts">
|
|
24
21
|
import { defineComponent } from 'vue-demi'
|
|
25
|
-
import {
|
|
22
|
+
import { DlLayout } from '../../components'
|
|
26
23
|
|
|
27
24
|
export default defineComponent({
|
|
28
25
|
name: 'DlStudioLayout',
|
|
29
26
|
components: {
|
|
30
|
-
|
|
27
|
+
DlLayout
|
|
31
28
|
},
|
|
32
29
|
setup() {
|
|
33
30
|
const template = '"h h h" "l p r" "l f r"'
|