@flux-ui/components 3.0.0-next.2 → 3.0.0-next.20
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/README.md +12 -40
- package/dist/component/FluxActions.vue.d.ts.map +1 -1
- package/dist/component/FluxDataTable.vue.d.ts +49 -17
- package/dist/component/FluxDataTable.vue.d.ts.map +1 -1
- package/dist/component/FluxDatePicker.vue.d.ts.map +1 -1
- package/dist/component/FluxFilter.vue.d.ts.map +1 -1
- package/dist/component/FluxFlyout.vue.d.ts.map +1 -1
- package/dist/component/FluxFormDateInput.vue.d.ts.map +1 -1
- package/dist/component/FluxFormDateRangeInput.vue.d.ts.map +1 -1
- package/dist/component/FluxFormDateTimeInput.vue.d.ts.map +1 -1
- package/dist/component/FluxFormInput.vue.d.ts +1 -0
- package/dist/component/FluxFormInput.vue.d.ts.map +1 -1
- package/dist/component/FluxFormInputGroup.vue.d.ts +1 -0
- package/dist/component/FluxFormInputGroup.vue.d.ts.map +1 -1
- package/dist/component/FluxFormTimeZonePicker.vue.d.ts.map +1 -1
- package/dist/component/FluxMenuItem.vue.d.ts.map +1 -1
- package/dist/component/FluxOverlayProvider.vue.d.ts +3 -0
- package/dist/component/FluxOverlayProvider.vue.d.ts.map +1 -0
- package/dist/component/FluxPagination.vue.d.ts +1 -1
- package/dist/component/FluxPagination.vue.d.ts.map +1 -1
- package/dist/component/FluxPaginationBar.vue.d.ts +1 -1
- package/dist/component/FluxPaginationBar.vue.d.ts.map +1 -1
- package/dist/component/FluxPaginationButton.vue.d.ts +30 -0
- package/dist/component/FluxPaginationButton.vue.d.ts.map +1 -0
- package/dist/component/FluxPrompt.vue.d.ts +2 -0
- package/dist/component/FluxPrompt.vue.d.ts.map +1 -1
- package/dist/component/FluxRoot.vue.d.ts.map +1 -1
- package/dist/component/FluxTabBar.vue.d.ts.map +1 -1
- package/dist/component/FluxTabBarItem.vue.d.ts.map +1 -1
- package/dist/component/FluxTable.vue.d.ts +14 -8
- package/dist/component/FluxTable.vue.d.ts.map +1 -1
- package/dist/component/FluxTooltip.vue.d.ts.map +1 -1
- package/dist/component/FluxTooltipProvider.vue.d.ts.map +1 -1
- package/dist/component/index.d.ts +1 -0
- package/dist/component/index.d.ts.map +1 -1
- package/dist/component/primitive/AnchorPopup.vue.d.ts.map +1 -1
- package/dist/component/primitive/SelectBase.vue.d.ts +2 -0
- package/dist/component/primitive/SelectBase.vue.d.ts.map +1 -1
- package/dist/composable/index.d.ts +1 -0
- package/dist/composable/index.d.ts.map +1 -1
- package/dist/composable/private/useFormSelect.d.ts +2 -2
- package/dist/composable/private/useFormSelect.d.ts.map +1 -1
- package/dist/composable/useFlyoutInjection.d.ts +1 -5
- package/dist/composable/useFlyoutInjection.d.ts.map +1 -1
- package/dist/composable/useTableInjection.d.ts +1 -6
- package/dist/composable/useTableInjection.d.ts.map +1 -1
- package/dist/composable/useTooltipInjection.d.ts +2 -0
- package/dist/composable/useTooltipInjection.d.ts.map +1 -0
- package/dist/data/di.d.ts +4 -0
- package/dist/data/di.d.ts.map +1 -1
- package/dist/data/i18n.d.ts +1 -1
- package/dist/data/store.d.ts +2 -2
- package/dist/data/store.d.ts.map +1 -1
- package/dist/index.css +5808 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14674 -0
- package/dist/index.js.map +1 -0
- package/dist/util/createDialogRenderer.d.ts +1 -1
- package/dist/util/createDialogRenderer.d.ts.map +1 -1
- package/package.json +21 -22
- package/src/component/FluxDataTable.vue +68 -16
- package/src/component/FluxDatePicker.vue +5 -1
- package/src/component/FluxFlyout.vue +2 -1
- package/src/component/FluxFormInput.vue +3 -1
- package/src/component/FluxFormInputGroup.vue +2 -0
- package/src/component/FluxFormSelect.vue +1 -1
- package/src/component/FluxFormTimeZonePicker.vue +5 -0
- package/src/component/FluxGallery.vue +2 -2
- package/src/component/FluxMenuItem.vue +1 -0
- package/src/component/FluxOverlayProvider.vue +39 -0
- package/src/component/FluxPagination.vue +16 -14
- package/src/component/FluxPaginationBar.vue +27 -38
- package/src/component/FluxPaginationButton.vue +39 -0
- package/src/component/FluxProgressBar.vue +1 -1
- package/src/component/FluxRoot.vue +3 -26
- package/src/component/FluxTabBar.vue +21 -16
- package/src/component/FluxTable.vue +25 -4
- package/src/component/FluxTooltip.vue +2 -0
- package/src/component/FluxTooltipProvider.vue +7 -3
- package/src/component/index.ts +1 -0
- package/src/component/primitive/AnchorPopup.vue +5 -3
- package/src/composable/index.ts +1 -0
- package/src/composable/private/useFormSelect.ts +2 -2
- package/src/composable/useTooltipInjection.ts +8 -0
- package/src/css/base.scss +6 -3
- package/src/css/component/Action.module.scss +14 -14
- package/src/css/component/Avatar.module.scss +14 -14
- package/src/css/component/Badge.module.scss +14 -14
- package/src/css/component/Button.module.scss +39 -54
- package/src/css/component/Calendar.module.scss +12 -16
- package/src/css/component/Chip.module.scss +9 -19
- package/src/css/component/Color.module.scss +4 -4
- package/src/css/component/Comment.module.scss +15 -14
- package/src/css/component/DatePicker.module.scss +12 -23
- package/src/css/component/Divider.module.scss +2 -2
- package/src/css/component/DropZone.module.scss +27 -24
- package/src/css/component/Expandable.module.scss +9 -11
- package/src/css/component/Filter.module.scss +3 -5
- package/src/css/component/Form.module.scss +68 -49
- package/src/css/component/Gallery.module.scss +14 -6
- package/src/css/component/Icon.module.scss +76 -79
- package/src/css/component/Info.module.scss +1 -1
- package/src/css/component/Layout.module.scss +41 -45
- package/src/css/component/Legend.module.scss +2 -4
- package/src/css/component/Menu.module.scss +28 -49
- package/src/css/component/Notice.module.scss +45 -47
- package/src/css/component/Overlay.module.scss +56 -4
- package/src/css/component/Pagination.module.scss +70 -33
- package/src/css/component/Pane.module.scss +62 -67
- package/src/css/component/Placeholder.module.scss +4 -4
- package/src/css/component/Progress.module.scss +18 -9
- package/src/css/component/Remove.module.scss +4 -4
- package/src/css/component/SegmentedControl.module.scss +6 -6
- package/src/css/component/Snackbar.module.scss +20 -17
- package/src/css/component/Spinner.module.scss +2 -2
- package/src/css/component/Statistic.module.scss +19 -17
- package/src/css/component/Stepper.module.scss +12 -14
- package/src/css/component/Tab.module.scss +8 -7
- package/src/css/component/Table.module.scss +79 -29
- package/src/css/component/Timeline.module.scss +14 -18
- package/src/css/component/Toolbar.module.scss +9 -7
- package/src/css/component/Tooltip.module.scss +3 -2
- package/src/css/component/Transition.module.scss +1 -1
- package/src/css/component/Visual.module.scss +3 -3
- package/src/css/component/base/Pane.module.scss +25 -31
- package/src/css/component/primitive/CoordinatePicker.module.scss +3 -5
- package/src/css/component/primitive/Slider.module.scss +9 -14
- package/src/css/mixin/focus-ring.scss +2 -2
- package/src/css/typography.scss +3 -3
- package/src/css/variables.scss +178 -183
- package/src/data/di.ts +5 -0
- package/src/data/i18n.ts +1 -1
- package/src/data/iconRegistry.ts +1 -1
- package/src/data/store.ts +6 -4
- package/src/index.ts +1 -0
- package/src/util/createDialogRenderer.ts +33 -18
- package/dist/flux.css +0 -1
- package/dist/flux.js +0 -11402
- package/dist/flux.js.map +0 -1
|
@@ -6,27 +6,7 @@
|
|
|
6
6
|
<slot/>
|
|
7
7
|
</div>
|
|
8
8
|
|
|
9
|
-
<
|
|
10
|
-
<FluxAlert
|
|
11
|
-
v-for="alert of alerts"
|
|
12
|
-
:key="alert.id"
|
|
13
|
-
:alert="alert"/>
|
|
14
|
-
</FluxOverlay>
|
|
15
|
-
|
|
16
|
-
<FluxOverlay size="medium">
|
|
17
|
-
<FluxConfirm
|
|
18
|
-
v-for="confirm of confirms"
|
|
19
|
-
:key="confirm.id"
|
|
20
|
-
:confirm="confirm"/>
|
|
21
|
-
</FluxOverlay>
|
|
22
|
-
|
|
23
|
-
<FluxOverlay size="medium">
|
|
24
|
-
<FluxPrompt
|
|
25
|
-
v-for="prompt of prompts"
|
|
26
|
-
:key="prompt.id"
|
|
27
|
-
:prompt="prompt"/>
|
|
28
|
-
</FluxOverlay>
|
|
29
|
-
|
|
9
|
+
<FluxOverlayProvider/>
|
|
30
10
|
<FluxSnackbarProvider/>
|
|
31
11
|
<FluxTooltipProvider/>
|
|
32
12
|
</template>
|
|
@@ -36,10 +16,7 @@
|
|
|
36
16
|
setup>
|
|
37
17
|
import { watch } from 'vue';
|
|
38
18
|
import { useFluxStore } from '$flux/data';
|
|
39
|
-
import
|
|
40
|
-
import FluxConfirm from './FluxConfirm.vue';
|
|
41
|
-
import FluxPrompt from './FluxPrompt.vue';
|
|
42
|
-
import FluxOverlay from './FluxOverlay.vue';
|
|
19
|
+
import FluxOverlayProvider from './FluxOverlayProvider.vue';
|
|
43
20
|
import FluxSnackbarProvider from './FluxSnackbarProvider.vue';
|
|
44
21
|
import FluxTooltipProvider from './FluxTooltipProvider.vue';
|
|
45
22
|
import $style from '$flux/css/component/Root.module.scss';
|
|
@@ -52,7 +29,7 @@
|
|
|
52
29
|
default(): any;
|
|
53
30
|
}>();
|
|
54
31
|
|
|
55
|
-
const {
|
|
32
|
+
const {inertMain} = useFluxStore();
|
|
56
33
|
|
|
57
34
|
watch(inertMain, (inert, _, onCleanup): void => {
|
|
58
35
|
if (!inert) {
|
|
@@ -3,14 +3,16 @@
|
|
|
3
3
|
:class="$style.tabBar"
|
|
4
4
|
role="tablist"
|
|
5
5
|
aria-orientation="horizontal">
|
|
6
|
-
<
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
<FluxFadeTransition>
|
|
7
|
+
<button
|
|
8
|
+
v-if="isStartArrowVisible"
|
|
9
|
+
:class="$style.tabBarArrowStart"
|
|
10
|
+
tabindex="-1"
|
|
11
|
+
type="button"
|
|
12
|
+
@click="scrollToStart">
|
|
13
|
+
<FluxIcon name="angle-left"/>
|
|
14
|
+
</button>
|
|
15
|
+
</FluxFadeTransition>
|
|
14
16
|
|
|
15
17
|
<div
|
|
16
18
|
ref="tabBar"
|
|
@@ -22,14 +24,16 @@
|
|
|
22
24
|
<slot/>
|
|
23
25
|
</div>
|
|
24
26
|
|
|
25
|
-
<
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
27
|
+
<FluxFadeTransition>
|
|
28
|
+
<button
|
|
29
|
+
v-if="isEndArrowVisible"
|
|
30
|
+
:class="$style.tabBarArrowEnd"
|
|
31
|
+
tabindex="-1"
|
|
32
|
+
type="button"
|
|
33
|
+
@click="scrollToEnd">
|
|
34
|
+
<FluxIcon name="angle-right"/>
|
|
35
|
+
</button>
|
|
36
|
+
</FluxFadeTransition>
|
|
33
37
|
</nav>
|
|
34
38
|
</template>
|
|
35
39
|
|
|
@@ -39,6 +43,7 @@
|
|
|
39
43
|
import { unrefTemplateElement, useEventListener, useMutationObserver } from '@flux-ui/internals';
|
|
40
44
|
import { clsx } from 'clsx';
|
|
41
45
|
import { onMounted, ref, useTemplateRef } from 'vue';
|
|
46
|
+
import { FluxFadeTransition } from '$flux/transition';
|
|
42
47
|
import FluxIcon from './FluxIcon.vue';
|
|
43
48
|
import $style from '$flux/css/component/Tab.module.scss';
|
|
44
49
|
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div :class="$style.table">
|
|
3
3
|
<table :class="$style.tableBase">
|
|
4
|
+
<slot name="colgroups"/>
|
|
5
|
+
|
|
4
6
|
<thead v-if="slots.header">
|
|
5
7
|
<slot name="header"/>
|
|
6
8
|
</thead>
|
|
7
9
|
|
|
8
10
|
<tbody v-if="slots.default">
|
|
9
11
|
<slot/>
|
|
12
|
+
|
|
13
|
+
<FluxTableRow
|
|
14
|
+
v-if="fillColumns"
|
|
15
|
+
:class="$style.tableFill">
|
|
16
|
+
<FluxTableCell v-for="_ of fillColumns"/>
|
|
17
|
+
</FluxTableRow>
|
|
10
18
|
</tbody>
|
|
11
19
|
|
|
12
20
|
<tfoot v-if="slots.footer">
|
|
@@ -25,15 +33,25 @@
|
|
|
25
33
|
:class="$style.tableLoader">
|
|
26
34
|
<FluxSpinner/>
|
|
27
35
|
</div>
|
|
36
|
+
|
|
37
|
+
<FluxPaneBody
|
|
38
|
+
v-if="slots.pagination"
|
|
39
|
+
:class="$style.tablePagination">
|
|
40
|
+
<slot name="pagination"/>
|
|
41
|
+
</FluxPaneBody>
|
|
28
42
|
</div>
|
|
29
43
|
</template>
|
|
30
44
|
|
|
31
45
|
<script
|
|
32
46
|
lang="ts"
|
|
33
47
|
setup>
|
|
48
|
+
import type { VNode } from 'vue';
|
|
34
49
|
import { provide } from 'vue';
|
|
35
50
|
import { FluxTableInjectionKey } from '$flux/data';
|
|
51
|
+
import FluxPaneBody from './FluxPaneBody.vue';
|
|
36
52
|
import FluxSpinner from './FluxSpinner.vue';
|
|
53
|
+
import FluxTableCell from './FluxTableCell.vue';
|
|
54
|
+
import FluxTableRow from './FluxTableRow.vue';
|
|
37
55
|
import $style from '$flux/css/component/Table.module.scss';
|
|
38
56
|
|
|
39
57
|
const {
|
|
@@ -45,6 +63,7 @@
|
|
|
45
63
|
isStriped = false
|
|
46
64
|
} = defineProps<{
|
|
47
65
|
readonly captionSide?: 'top' | 'bottom';
|
|
66
|
+
readonly fillColumns?: number;
|
|
48
67
|
readonly isBordered?: boolean;
|
|
49
68
|
readonly isHoverable?: boolean;
|
|
50
69
|
readonly isLoading?: boolean;
|
|
@@ -53,10 +72,12 @@
|
|
|
53
72
|
}>();
|
|
54
73
|
|
|
55
74
|
const slots = defineSlots<{
|
|
56
|
-
default?():
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
75
|
+
default?(): VNode;
|
|
76
|
+
colgroups?(): VNode;
|
|
77
|
+
caption?(): VNode;
|
|
78
|
+
footer?(): VNode;
|
|
79
|
+
header?(): VNode;
|
|
80
|
+
pagination?(): VNode;
|
|
60
81
|
}>();
|
|
61
82
|
|
|
62
83
|
provide(FluxTableInjectionKey, {
|
|
@@ -20,12 +20,14 @@
|
|
|
20
20
|
const elm = instance.proxy!.$el;
|
|
21
21
|
elm.addEventListener('mouseenter', onHover, {passive: true});
|
|
22
22
|
elm.addEventListener('mouseleave', onLeave, {passive: true});
|
|
23
|
+
window.addEventListener('scroll', onLeave, {capture: true});
|
|
23
24
|
});
|
|
24
25
|
|
|
25
26
|
onUnmounted(() => {
|
|
26
27
|
const elm = instance.proxy!.$el;
|
|
27
28
|
elm.removeEventListener('mouseenter', onHover);
|
|
28
29
|
elm.removeEventListener('mouseleave', onLeave);
|
|
30
|
+
window.removeEventListener('scroll', onLeave);
|
|
29
31
|
onLeave();
|
|
30
32
|
});
|
|
31
33
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { unrefTemplateElement } from '@flux-ui/internals';
|
|
3
3
|
import { clsx } from 'clsx';
|
|
4
|
-
import { computed, defineComponent, h, ref, unref, watch } from 'vue';
|
|
5
|
-
import { useFluxStore } from '$flux/data';
|
|
4
|
+
import { computed, defineComponent, h, provide, ref, unref, watch } from 'vue';
|
|
5
|
+
import { FluxTooltipInjectionKey, useFluxStore } from '$flux/data';
|
|
6
6
|
import { FluxTooltipTransition } from '$flux/transition';
|
|
7
7
|
import $style from '$flux/css/component/Tooltip.module.scss';
|
|
8
8
|
|
|
@@ -60,7 +60,11 @@
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
provide(FluxTooltipInjectionKey, {
|
|
64
|
+
calculate
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
watch(content, () => requestAnimationFrame(calculate));
|
|
64
68
|
|
|
65
69
|
return () => h(FluxTooltipTransition, {}, {
|
|
66
70
|
default: () => {
|
package/src/component/index.ts
CHANGED
|
@@ -84,6 +84,7 @@ export { default as FluxMenuTitle } from './FluxMenuTitle.vue';
|
|
|
84
84
|
export { default as FluxNotice } from './FluxNotice.vue';
|
|
85
85
|
export { default as FluxNoticeStack } from './FluxNoticeStack.vue';
|
|
86
86
|
export { default as FluxOverlay } from './FluxOverlay.vue';
|
|
87
|
+
export { default as FluxOverlayProvider } from './FluxOverlayProvider.vue';
|
|
87
88
|
export { default as FluxPagination } from './FluxPagination.vue';
|
|
88
89
|
export { default as FluxPaginationBar } from './FluxPaginationBar.vue';
|
|
89
90
|
export { default as FluxPane } from './FluxPane.vue';
|
|
@@ -150,7 +150,7 @@
|
|
|
150
150
|
px = x + width / 2 - popupWidth / 2;
|
|
151
151
|
py = y + height + margin;
|
|
152
152
|
|
|
153
|
-
if (py + popupHeight > innerHeight) {
|
|
153
|
+
if (py + popupHeight + margin > innerHeight) {
|
|
154
154
|
py = y - popupHeight - margin;
|
|
155
155
|
}
|
|
156
156
|
}
|
|
@@ -188,7 +188,9 @@
|
|
|
188
188
|
|
|
189
189
|
anchorRef.value = isHtmlElement(anchor) ? anchor : anchor.$el;
|
|
190
190
|
|
|
191
|
-
requestAnimationFrame(
|
|
192
|
-
|
|
191
|
+
requestAnimationFrame(() => {
|
|
192
|
+
requestAnimationFrame(resize);
|
|
193
|
+
requestAnimationFrame(reposition);
|
|
194
|
+
});
|
|
193
195
|
});
|
|
194
196
|
</script>
|
package/src/composable/index.ts
CHANGED
|
@@ -7,3 +7,4 @@ export { default as useFilterInjection } from './useFilterInjection';
|
|
|
7
7
|
export { default as useFlyoutInjection } from './useFlyoutInjection';
|
|
8
8
|
export { default as useFormFieldInjection } from './useFormFieldInjection';
|
|
9
9
|
export { default as useTableInjection } from './useTableInjection';
|
|
10
|
+
export { default as useTooltipInjection } from './useTooltipInjection';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { FluxFormSelectEntry, FluxFormSelectOption, FluxFormSelectOptions, FluxFormSelectValue } from '@flux-ui/types';
|
|
2
|
-
import type {
|
|
2
|
+
import type { Ref } from 'vue';
|
|
3
3
|
import { computed, unref } from 'vue';
|
|
4
4
|
import { isFluxFormSelectGroup, isFluxFormSelectOption } from '$flux/data';
|
|
5
5
|
|
|
6
|
-
export default function (modelValue: Ref<FluxFormSelectValue>, isMultiple: boolean, options:
|
|
6
|
+
export default function (modelValue: Ref<FluxFormSelectValue>, isMultiple: boolean, options: Ref<FluxFormSelectEntry[]>, searchQuery?: Ref<string>) {
|
|
7
7
|
const values = computed(() => {
|
|
8
8
|
const model = unref(modelValue);
|
|
9
9
|
return Array.isArray(model) ? model : [model];
|
package/src/css/base.scss
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
@use 'variables';
|
|
2
2
|
|
|
3
3
|
@layer flux-base {
|
|
4
|
-
:root
|
|
4
|
+
:root {
|
|
5
5
|
@include variables.animation;
|
|
6
|
+
@include variables.defaults;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
:root, [light] {
|
|
6
10
|
@include variables.color-light;
|
|
7
|
-
@include variables.default-light;
|
|
8
11
|
@include variables.shadow-light;
|
|
9
12
|
}
|
|
10
13
|
|
|
11
14
|
[dark] {
|
|
15
|
+
@include variables.defaults-dark;
|
|
12
16
|
@include variables.color-dark;
|
|
13
|
-
@include variables.default-dark;
|
|
14
17
|
@include variables.shadow-dark;
|
|
15
18
|
}
|
|
16
19
|
|
|
@@ -1,25 +1,22 @@
|
|
|
1
1
|
@use '$flux/css/mixin';
|
|
2
2
|
|
|
3
|
-
@value button, buttonIcon, buttonLabel from './base/Button.module.scss';
|
|
4
|
-
@value basePaneStructure from './base/Pane.module.scss';
|
|
5
|
-
|
|
6
3
|
.action {
|
|
7
|
-
composes: button;
|
|
4
|
+
composes: button from './base/Button.module.scss';
|
|
8
5
|
|
|
9
6
|
height: 30px;
|
|
10
7
|
width: 30px;
|
|
11
8
|
padding-left: 6px;
|
|
12
9
|
padding-right: 6px;
|
|
13
10
|
border: 0;
|
|
14
|
-
border-radius:
|
|
11
|
+
border-radius: var(--radius);
|
|
15
12
|
box-shadow: none;
|
|
16
13
|
|
|
17
14
|
@include mixin.hover {
|
|
18
|
-
background:
|
|
15
|
+
background: var(--gray-2);
|
|
19
16
|
}
|
|
20
17
|
|
|
21
18
|
&:active {
|
|
22
|
-
background:
|
|
19
|
+
background: var(--gray-3);
|
|
23
20
|
}
|
|
24
21
|
|
|
25
22
|
.spinner {
|
|
@@ -28,18 +25,18 @@
|
|
|
28
25
|
}
|
|
29
26
|
|
|
30
27
|
.actionIcon {
|
|
31
|
-
composes: buttonIcon;
|
|
28
|
+
composes: buttonIcon from './base/Button.module.scss';
|
|
32
29
|
|
|
33
30
|
color: var(--foreground);
|
|
34
31
|
font-size: 18px;
|
|
35
32
|
}
|
|
36
33
|
|
|
37
34
|
.action.isDestructive .actionIcon {
|
|
38
|
-
color:
|
|
35
|
+
color: var(--danger-7);
|
|
39
36
|
}
|
|
40
37
|
|
|
41
38
|
.actionLabel {
|
|
42
|
-
composes: buttonLabel;
|
|
39
|
+
composes: buttonLabel from './base/Button.module.scss';
|
|
43
40
|
|
|
44
41
|
color: var(--foreground);
|
|
45
42
|
}
|
|
@@ -59,10 +56,10 @@
|
|
|
59
56
|
}
|
|
60
57
|
}
|
|
61
58
|
|
|
62
|
-
|
|
59
|
+
.basePaneStructure > .actionBar {
|
|
63
60
|
padding: 15px 21px;
|
|
64
|
-
background:
|
|
65
|
-
border: 1px solid
|
|
61
|
+
background: var(--gray-1);
|
|
62
|
+
border: 1px solid var(--gray-2);
|
|
66
63
|
border-left: 0;
|
|
67
64
|
border-right: 0;
|
|
68
65
|
|
|
@@ -102,6 +99,9 @@
|
|
|
102
99
|
|
|
103
100
|
.actionPaneBody {
|
|
104
101
|
position: relative;
|
|
105
|
-
padding: 0;
|
|
106
102
|
text-wrap: pretty;
|
|
103
|
+
|
|
104
|
+
&:local(.paneBody) {
|
|
105
|
+
padding: 0;
|
|
106
|
+
}
|
|
107
107
|
}
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
display: block;
|
|
15
15
|
height: inherit;
|
|
16
16
|
width: inherit;
|
|
17
|
-
background:
|
|
17
|
+
background: var(--gray-1);
|
|
18
18
|
border-radius: inherit;
|
|
19
|
-
box-shadow: inset 0 0 0 1px
|
|
19
|
+
box-shadow: inset 0 0 0 1px var(--gray-2);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
.avatarFallback {
|
|
@@ -41,18 +41,18 @@
|
|
|
41
41
|
.avatarFallbackColorized {
|
|
42
42
|
composes: avatarFallback;
|
|
43
43
|
|
|
44
|
-
background: color-mix(in srgb, var(--color),
|
|
44
|
+
background: color-mix(in srgb, var(--color), var(--gray-0) 80%);
|
|
45
45
|
color: var(--color);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
[dark] .avatarFallbackColorized {
|
|
49
|
-
background: color-mix(in srgb, var(--color),
|
|
49
|
+
background: color-mix(in srgb, var(--color), var(--gray-0) 70%);
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
.avatarFallbackNeutral {
|
|
53
53
|
composes: avatarFallback;
|
|
54
54
|
|
|
55
|
-
background:
|
|
55
|
+
background: var(--gray-2);
|
|
56
56
|
color: var(--foreground-secondary);
|
|
57
57
|
}
|
|
58
58
|
|
|
@@ -62,8 +62,8 @@
|
|
|
62
62
|
inset: 0;
|
|
63
63
|
align-items: center;
|
|
64
64
|
justify-content: center;
|
|
65
|
-
background:
|
|
66
|
-
box-shadow: inset 0 0 0 1px
|
|
65
|
+
background: oklch(from var(--gray-1) l c h / .84);
|
|
66
|
+
box-shadow: inset 0 0 0 1px var(--gray-2);
|
|
67
67
|
border-radius: inherit;
|
|
68
68
|
backdrop-filter: blur(3px) saturate(180%);
|
|
69
69
|
|
|
@@ -86,37 +86,37 @@
|
|
|
86
86
|
.avatarStatusGray {
|
|
87
87
|
composes: avatarStatus;
|
|
88
88
|
|
|
89
|
-
background:
|
|
89
|
+
background: var(--gray-6);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
.avatarStatusPrimary {
|
|
93
93
|
composes: avatarStatus;
|
|
94
94
|
|
|
95
|
-
background:
|
|
95
|
+
background: var(--primary-7);
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
.avatarStatusDanger {
|
|
99
99
|
composes: avatarStatus;
|
|
100
100
|
|
|
101
|
-
background:
|
|
101
|
+
background: var(--danger-7);
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
.avatarStatusInfo {
|
|
105
105
|
composes: avatarStatus;
|
|
106
106
|
|
|
107
|
-
background:
|
|
107
|
+
background: var(--info-7);
|
|
108
108
|
}
|
|
109
109
|
|
|
110
110
|
.avatarStatusSuccess {
|
|
111
111
|
composes: avatarStatus;
|
|
112
112
|
|
|
113
|
-
background:
|
|
113
|
+
background: var(--success-7);
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
.avatarStatusWarning {
|
|
117
117
|
composes: avatarStatus;
|
|
118
118
|
|
|
119
|
-
background:
|
|
119
|
+
background: var(--warning-7);
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
.avatarClickable {
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
@include mixin.focus-ring(2px);
|
|
155
155
|
|
|
156
156
|
@include mixin.hover {
|
|
157
|
-
background:
|
|
157
|
+
background: var(--gray-2);
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
padding-right: 9px;
|
|
11
11
|
align-items: center;
|
|
12
12
|
gap: 6px;
|
|
13
|
-
background:
|
|
14
|
-
border: 1px solid
|
|
13
|
+
background: var(--gray-0);
|
|
14
|
+
border: 1px solid var(--gray-2);
|
|
15
15
|
border-radius: 99px;
|
|
16
16
|
color: var(--foreground-prominent);
|
|
17
17
|
font-size: 13px;
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
transition: background 180ms var(--swift-out);
|
|
25
25
|
|
|
26
26
|
@include mixin.hover {
|
|
27
|
-
background:
|
|
27
|
+
background: var(--gray-1);
|
|
28
28
|
color: var(--foreground-prominent);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
cursor: pointer;
|
|
50
50
|
|
|
51
51
|
@include mixin.hover {
|
|
52
|
-
background:
|
|
52
|
+
background: var(--gray-2);
|
|
53
53
|
color: var(--foreground);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
&:active {
|
|
57
|
-
background:
|
|
57
|
+
background: var(--gray-3);
|
|
58
58
|
color: var(--foreground);
|
|
59
59
|
}
|
|
60
60
|
|
|
@@ -91,52 +91,52 @@
|
|
|
91
91
|
.badgeGray {
|
|
92
92
|
composes: badge;
|
|
93
93
|
|
|
94
|
-
--color:
|
|
94
|
+
--color: var(--gray-8);
|
|
95
95
|
|
|
96
96
|
.badgeLabel {
|
|
97
97
|
color: var(--foreground-prominent);
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
.spinner {
|
|
101
|
-
--value:
|
|
101
|
+
--value: var(--primary-7);
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
.badgePrimary {
|
|
106
106
|
composes: badge;
|
|
107
107
|
|
|
108
|
-
--color:
|
|
108
|
+
--color: var(--primary-7);
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
.badgeDanger {
|
|
112
112
|
composes: badge;
|
|
113
113
|
|
|
114
|
-
--color:
|
|
114
|
+
--color: var(--danger-7);
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
.badgeInfo {
|
|
118
118
|
composes: badge;
|
|
119
119
|
|
|
120
|
-
--color:
|
|
120
|
+
--color: var(--info-7);
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
.badgeSuccess {
|
|
124
124
|
composes: badge;
|
|
125
125
|
|
|
126
|
-
--color:
|
|
126
|
+
--color: var(--success-7);
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
.badgeWarning {
|
|
130
130
|
composes: badge;
|
|
131
131
|
|
|
132
|
-
--color:
|
|
132
|
+
--color: var(--warning-7);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
135
|
.tag {
|
|
136
136
|
composes: badge;
|
|
137
137
|
|
|
138
|
-
background:
|
|
139
|
-
border-color:
|
|
138
|
+
background: var(--gray-1);
|
|
139
|
+
border-color: var(--gray-2);
|
|
140
140
|
border-radius: calc(var(--radius) / 2);
|
|
141
141
|
font-weight: 400;
|
|
142
142
|
}
|