bfg-common 1.5.674 → 1.5.675

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.
@@ -1,80 +1,84 @@
1
- <template>
2
- <component
3
- :is="currentComponent"
4
- v-model:selected-tab="activeTabModel"
5
- :panel-collapsed-model="panelCollapsedModel"
6
- :tab-list="props.tabList"
7
- :data-table-recent-tasks="props.dataTableRecentTasks"
8
- :total-items-recent-tasks="props.totalItemsRecentTasks"
9
- :total-pages-recent-tasks="props.totalPagesRecentTasks"
10
- :pagination-recent-tasks="props.paginationRecentTasks"
11
- :loading-recent-tasks="props.loadingRecentTasks"
12
- :data-table-alarms="props.dataTableAlarms"
13
- :loading-alarms="props.loadingAlarms"
14
- @collapse-panel="onCollapseBottomPanel"
15
- @change-tab="emits('change-tab')"
16
- @sort-recent-task="emits('sort-recent-task', $event)"
17
- @pagination-recent-task="emits('pagination-recent-task', $event)"
18
- @pause-global-refresh-alarms="emits('pause-global-refresh-alarms')"
19
- @get-alarms="emits('get-alarms', $event)"
20
- />
21
- </template>
22
-
23
- <script setup lang="ts">
24
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
25
- import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
26
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
27
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
28
- import type {
29
- UI_I_Alarm,
30
- UI_I_AlarmPayload,
31
- } from '~/components/common/layout/bottomPanel/alarms/lib/models/interfaces'
32
- import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
33
-
34
- const panelCollapsedModel = defineModel<boolean>('panelCollapsed', {
35
- required: true,
36
- })
37
- const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
38
- required: true,
39
- })
40
- const props = withDefaults(
41
- defineProps<{
42
- tabList: UI_I_CollapseNavItem[]
43
- dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
44
- totalItemsRecentTasks: number
45
- totalPagesRecentTasks: number
46
- paginationRecentTasks: UI_I_Pagination
47
- loadingRecentTasks: boolean
48
- dataTableAlarms?: UI_I_Alarm | null
49
- loadingAlarms?: boolean
50
- }>(),
51
- {
52
- dataTableAlarms: null,
53
- loadingAlarms: false,
54
- }
55
- )
56
-
57
- const emits = defineEmits<{
58
- (event: 'change-tab'): void
59
- (event: 'sort-recent-task', value: string): void
60
- (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
61
- (event: 'pause-global-refresh-alarms'): void
62
- (event: 'get-alarms', value: UI_I_AlarmPayload): void
63
- }>()
64
-
65
- const { $store }: any = useNuxtApp()
66
-
67
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
68
-
69
- const currentComponent = computed(() =>
70
- isNewView.value
71
- ? defineAsyncComponent(() => import('./New.vue'))
72
- : defineAsyncComponent(() => import('./Old.vue'))
73
- )
74
-
75
- const onCollapseBottomPanel = (): void => {
76
- panelCollapsedModel.value = !panelCollapsedModel.value
77
- }
78
- </script>
79
-
80
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <component
3
+ :is="currentComponent"
4
+ v-model:selected-tab="activeTabModel"
5
+ v-model:status-filter="statusFilter"
6
+ :panel-collapsed-model="panelCollapsedModel"
7
+ :tab-list="props.tabList"
8
+ :data-table-recent-tasks="props.dataTableRecentTasks"
9
+ :total-items-recent-tasks="props.totalItemsRecentTasks"
10
+ :total-pages-recent-tasks="props.totalPagesRecentTasks"
11
+ :pagination-recent-tasks="props.paginationRecentTasks"
12
+ :loading-recent-tasks="props.loadingRecentTasks"
13
+ :data-table-alarms="props.dataTableAlarms"
14
+ :loading-alarms="props.loadingAlarms"
15
+ @collapse-panel="onCollapseBottomPanel"
16
+ @change-tab="emits('change-tab')"
17
+ @sort-recent-task="emits('sort-recent-task', $event)"
18
+ @pagination-recent-task="emits('pagination-recent-task', $event)"
19
+ @pause-global-refresh-alarms="emits('pause-global-refresh-alarms')"
20
+ @get-alarms="emits('get-alarms', $event)"
21
+ />
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
26
+ import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
27
+ import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
28
+ import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
29
+ import type {
30
+ UI_I_Alarm,
31
+ UI_I_AlarmPayload,
32
+ } from '~/components/common/layout/bottomPanel/alarms/lib/models/interfaces'
33
+ import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
34
+ import type { UI_T_SelectedStatus } from '~/components/common/layout/bottomPanel/recentTasks/old/lib/models/types'
35
+
36
+ const panelCollapsedModel = defineModel<boolean>('panelCollapsed', {
37
+ required: true,
38
+ })
39
+ const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
40
+ required: true,
41
+ })
42
+ const props = withDefaults(
43
+ defineProps<{
44
+ tabList: UI_I_CollapseNavItem[]
45
+ dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
46
+ totalItemsRecentTasks: number
47
+ totalPagesRecentTasks: number
48
+ paginationRecentTasks: UI_I_Pagination
49
+ loadingRecentTasks: boolean
50
+ dataTableAlarms?: UI_I_Alarm | null
51
+ loadingAlarms?: boolean
52
+ }>(),
53
+ {
54
+ dataTableAlarms: null,
55
+ loadingAlarms: false,
56
+ }
57
+ )
58
+
59
+ const emits = defineEmits<{
60
+ (event: 'change-tab'): void
61
+ (event: 'sort-recent-task', value: string): void
62
+ (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
63
+ (event: 'pause-global-refresh-alarms'): void
64
+ (event: 'get-alarms', value: UI_I_AlarmPayload): void
65
+ }>()
66
+
67
+ const { $store }: any = useNuxtApp()
68
+
69
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
70
+
71
+ const currentComponent = computed(() =>
72
+ isNewView.value
73
+ ? defineAsyncComponent(() => import('./New.vue'))
74
+ : defineAsyncComponent(() => import('./Old.vue'))
75
+ )
76
+
77
+ const onCollapseBottomPanel = (): void => {
78
+ panelCollapsedModel.value = !panelCollapsedModel.value
79
+ }
80
+
81
+ const statusFilter = ref<UI_T_SelectedStatus>(-1)
82
+ </script>
83
+
84
+ <style scoped lang="scss"></style>
@@ -1,239 +1,243 @@
1
- <template>
2
- <div
3
- :class="[
4
- 'bottom-panel flex flex-col h-full',
5
- { collapsed: props.panelCollapsedModel },
6
- ]"
7
- >
8
- <div class="bottom-panel__tab-list flex">
9
- <div class="bottom-panel__collapse relative">
10
- <button
11
- id="bottom-panel-collapse"
12
- data-id="bottom-panel-toggle-button"
13
- class="btn-collapse flex items-center"
14
- @click="emits('collapse-panel')"
15
- >
16
- <ui-icon class="collapse-icon" name="arrow" />
17
- </button>
18
- </div>
19
- <ui-tabs
20
- v-model="activeTabModel"
21
- :tabs="tabListLocal"
22
- test-id="bottom-panel-tab-list"
23
- type="underline"
24
- class="bottom-panel__tab"
25
- @change="emits('change-tab')"
26
- >
27
- </ui-tabs>
28
-
29
- <div
30
- v-show="isShowRecentTasksActions"
31
- class="actions flex items-center gap-4 pr-4"
32
- >
33
- <ui-select
34
- v-model="statusFilter"
35
- :items="statusFilterItems"
36
- test-id="status-filter"
37
- class="status-filter-select"
38
- />
39
- <ui-button
40
- test-id="more-tasks-button"
41
- variant="primary"
42
- type="text"
43
- class="more-tasks-button"
44
- is-without-sizes
45
- @click="onNavigateToTasksPage"
46
- >
47
- {{ localization.tasks.moreTasks }}
48
- </ui-button>
49
- </div>
50
- </div>
51
- <div
52
- v-show="!props.panelCollapsedModel"
53
- class="bottom-panel__table-wrapper overflow-hidden"
54
- >
55
- <common-layout-bottom-panel-recent-tasks
56
- v-show="activeTabModel === 'recentTask'"
57
- :data-table="props.dataTableRecentTasks"
58
- :total-items="props.totalItemsRecentTasks"
59
- :total-pages="props.totalPagesRecentTasks"
60
- :pagination="props.paginationRecentTasks"
61
- :loading="props.loadingRecentTasks"
62
- @sort="emits('sort-recent-task', $event)"
63
- @pagination="emits('pagination-recent-task', $event)"
64
- />
65
- <common-layout-bottom-panel-alarms
66
- v-show="activeTabModel === 'alarms'"
67
- :data-table="props.dataTableAlarms"
68
- :is-loading="props.loadingAlarms"
69
- @pause-global-refresh="emits('pause-global-refresh-alarms')"
70
- @get-alarms="emits('get-alarms', $event)"
71
- />
72
- </div>
73
- </div>
74
- </template>
75
-
76
- <script setup lang="ts">
77
- import type { UI_I_TabItem } from '~/node_modules/bfg-uikit/components/ui/tabs/models/interfaces'
78
- import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
79
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
80
- import type { UI_I_Localization } from '~/lib/models/interfaces'
81
- import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
82
- import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
83
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
84
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
85
- import type {
86
- UI_I_Alarm,
87
- UI_I_AlarmPayload,
88
- } from '~/components/common/layout/bottomPanel/alarms/lib/models/interfaces'
89
- import { statusFilterItemsFunc } from '~/components/common/layout/bottomPanel/lib/config/statusFilter'
90
-
91
- const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
92
- required: true,
93
- })
94
-
95
- const props = defineProps<{
96
- panelCollapsedModel: boolean
97
- tabList: UI_I_CollapseNavItem[]
98
- dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
99
- totalItemsRecentTasks: number
100
- totalPagesRecentTasks: number
101
- paginationRecentTasks: UI_I_Pagination
102
- loadingRecentTasks: boolean
103
- dataTableAlarms: UI_I_Alarm | null
104
- loadingAlarms: boolean
105
- }>()
106
-
107
- const emits = defineEmits<{
108
- (event: 'collapse-panel'): void
109
- (event: 'change-tab'): void
110
- (event: 'sort-recent-task', value: string): void
111
- (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
112
- (event: 'pause-global-refresh-alarms'): void
113
- (event: 'get-alarms', value: UI_I_AlarmPayload): void
114
- }>()
115
-
116
- const tabListLocal = computed<UI_I_TabItem[]>(() =>
117
- props.tabList.map(({ value, text: name, testId, development }) => ({
118
- name,
119
- development,
120
- value: value + '',
121
- testId: testId + '',
122
- }))
123
- )
124
-
125
- const localization = computed<UI_I_Localization>(() => useLocal())
126
- const statusFilter = ref<number>(-1)
127
- const statusFilterItems = ref<UI_I_Dropdown[]>(
128
- statusFilterItemsFunc(localization.value)
129
- )
130
-
131
- const onNavigateToTasksPage = (): void => {
132
- const router = useRouter()
133
- router.push('/tasks')
134
- }
135
-
136
- const isShowRecentTasksActions = computed<boolean>(
137
- () => activeTabModel.value === 'recentTask' && !props.panelCollapsedModel
138
- )
139
- </script>
140
-
141
- <style>
142
- :root {
143
- --bottom-pannel-bg-color: #fff;
144
- --bottom-pannel-border-color: #e9ebed;
145
- --bottom-pannel-rtask-link-text: #008fd6;
146
- --bottom-pannel-rtask-link-hover-text: #0081c1;
147
- --bottom-pannel-divider-color: #e9ebeda3;
148
- --bottom-pannel-collapse-button-icon: #213444;
149
- }
150
- :root.dark-theme {
151
- --bottom-pannel-bg-color: #213444;
152
- --bottom-pannel-border-color: #e9ebed1f;
153
- --bottom-pannel-rtask-link-text: #2ba2de;
154
- --bottom-pannel-rtask-link-hover-text: #008fd6;
155
- --bottom-pannel-divider-color: #e9ebed1f;
156
- --bottom-pannel-collapse-button-icon: #e9eaec;
157
- }
158
- </style>
159
- <style scoped lang="scss">
160
- @import '~/assets/scss/common/mixins';
161
- .bottom-panel {
162
- background-color: var(--bottom-pannel-bg-color);
163
-
164
- &__tab-list {
165
- border-bottom: 1px solid var(--bottom-pannel-border-color);
166
- }
167
- &__tab {
168
- align-items: flex-end;
169
- margin-left: 16px;
170
-
171
- &.tabs-wrapper.is-link:before {
172
- display: none;
173
- }
174
- .collapsed &.tabs-wrapper.is-link {
175
- :deep(.tab-item.active.tab-underline) {
176
- border-bottom: 3px solid transparent;
177
- }
178
- }
179
- }
180
- &__table-wrapper {
181
- height: inherit;
182
- }
183
-
184
- .btn-collapse {
185
- border: 0;
186
- outline: none;
187
- background-color: transparent;
188
- cursor: pointer;
189
-
190
- .collapse-icon {
191
- width: 20px;
192
- height: 20px;
193
- transform: rotate(180deg);
194
- color: var(--bottom-pannel-collapse-button-icon);
195
-
196
- .collapsed & {
197
- transform: rotate(0deg);
198
- }
199
- }
200
- }
201
- &__collapse {
202
- padding: 12px 16px;
203
-
204
- &:before {
205
- content: '';
206
- position: absolute;
207
- top: 8px;
208
- right: 0;
209
- bottom: 8px;
210
- width: 1px;
211
- background-color: var(--bottom-pannel-divider-color);
212
- }
213
- }
214
-
215
- .actions {
216
- flex: 1;
217
- justify-content: flex-end;
218
-
219
- .more-tasks-button {
220
- width: auto;
221
- }
222
-
223
- :deep(.ui-select-toggle-button) {
224
- height: 24px;
225
- min-width: 80px;
226
- padding: 4px 4px 4px 8px;
227
- border-radius: 6px;
228
- }
229
- :deep(.ui-popup-window) {
230
- border-radius: 6px;
231
- width: unset !important;
232
- }
233
- }
234
- }
235
-
236
- :deep(.table-container.default-layout) {
237
- border-radius: 0;
238
- }
239
- </style>
1
+ <template>
2
+ <div
3
+ :class="[
4
+ 'bottom-panel flex flex-col h-full',
5
+ { collapsed: props.panelCollapsedModel },
6
+ ]"
7
+ >
8
+ <div class="bottom-panel__tab-list flex">
9
+ <div class="bottom-panel__collapse relative">
10
+ <button
11
+ id="bottom-panel-collapse"
12
+ data-id="bottom-panel-toggle-button"
13
+ class="btn-collapse flex items-center"
14
+ @click="emits('collapse-panel')"
15
+ >
16
+ <ui-icon class="collapse-icon" name="arrow" />
17
+ </button>
18
+ </div>
19
+ <ui-tabs
20
+ v-model="activeTabModel"
21
+ :tabs="tabListLocal"
22
+ test-id="bottom-panel-tab-list"
23
+ type="underline"
24
+ class="bottom-panel__tab"
25
+ @change="emits('change-tab')"
26
+ >
27
+ </ui-tabs>
28
+
29
+ <div
30
+ v-show="isShowRecentTasksActions"
31
+ class="actions flex items-center gap-4 pr-4"
32
+ >
33
+ <ui-select
34
+ v-model="statusFilter"
35
+ :items="statusFilterItems"
36
+ test-id="status-filter"
37
+ class="status-filter-select"
38
+ />
39
+ <ui-button
40
+ test-id="more-tasks-button"
41
+ variant="primary"
42
+ type="text"
43
+ class="more-tasks-button"
44
+ is-without-sizes
45
+ @click="onNavigateToTasksPage"
46
+ >
47
+ {{ localization.tasks.moreTasks }}
48
+ </ui-button>
49
+ </div>
50
+ </div>
51
+ <div
52
+ v-show="!props.panelCollapsedModel"
53
+ class="bottom-panel__table-wrapper overflow-hidden"
54
+ >
55
+ <common-layout-bottom-panel-recent-tasks
56
+ v-show="activeTabModel === 'recentTask'"
57
+ v-model:status-filter="statusFilter"
58
+ :data-table="props.dataTableRecentTasks"
59
+ :total-items="props.totalItemsRecentTasks"
60
+ :total-pages="props.totalPagesRecentTasks"
61
+ :pagination="props.paginationRecentTasks"
62
+ :loading="props.loadingRecentTasks"
63
+ @sort="emits('sort-recent-task', $event)"
64
+ @pagination="emits('pagination-recent-task', $event)"
65
+ />
66
+ <common-layout-bottom-panel-alarms
67
+ v-show="activeTabModel === 'alarms'"
68
+ :data-table="props.dataTableAlarms"
69
+ :is-loading="props.loadingAlarms"
70
+ @pause-global-refresh="emits('pause-global-refresh-alarms')"
71
+ @get-alarms="emits('get-alarms', $event)"
72
+ />
73
+ </div>
74
+ </div>
75
+ </template>
76
+
77
+ <script setup lang="ts">
78
+ import type { UI_I_TabItem } from '~/node_modules/bfg-uikit/components/ui/tabs/models/interfaces'
79
+ import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
80
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
81
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
82
+ import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
83
+ import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
84
+ import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
85
+ import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
86
+ import type {
87
+ UI_I_Alarm,
88
+ UI_I_AlarmPayload,
89
+ } from '~/components/common/layout/bottomPanel/alarms/lib/models/interfaces'
90
+ import type { UI_T_SelectedStatus } from '~/components/common/layout/bottomPanel/recentTasks/old/lib/models/types'
91
+ import { statusFilterItemsFunc } from '~/components/common/layout/bottomPanel/lib/config/statusFilter'
92
+
93
+ const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
94
+ required: true,
95
+ })
96
+ const statusFilter = defineModel<UI_T_SelectedStatus>('statusFilter', {
97
+ required: true,
98
+ })
99
+
100
+ const props = defineProps<{
101
+ panelCollapsedModel: boolean
102
+ tabList: UI_I_CollapseNavItem[]
103
+ dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
104
+ totalItemsRecentTasks: number
105
+ totalPagesRecentTasks: number
106
+ paginationRecentTasks: UI_I_Pagination
107
+ loadingRecentTasks: boolean
108
+ dataTableAlarms: UI_I_Alarm | null
109
+ loadingAlarms: boolean
110
+ }>()
111
+
112
+ const emits = defineEmits<{
113
+ (event: 'collapse-panel'): void
114
+ (event: 'change-tab'): void
115
+ (event: 'sort-recent-task', value: string): void
116
+ (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
117
+ (event: 'pause-global-refresh-alarms'): void
118
+ (event: 'get-alarms', value: UI_I_AlarmPayload): void
119
+ }>()
120
+
121
+ const tabListLocal = computed<UI_I_TabItem[]>(() =>
122
+ props.tabList.map(({ value, text: name, testId, development }) => ({
123
+ name,
124
+ development,
125
+ value: value + '',
126
+ testId: testId + '',
127
+ }))
128
+ )
129
+
130
+ const localization = computed<UI_I_Localization>(() => useLocal())
131
+ const statusFilterItems = ref<UI_I_Dropdown[]>(
132
+ statusFilterItemsFunc(localization.value)
133
+ )
134
+
135
+ const onNavigateToTasksPage = (): void => {
136
+ const router = useRouter()
137
+ router.push('/tasks')
138
+ }
139
+
140
+ const isShowRecentTasksActions = computed<boolean>(
141
+ () => activeTabModel.value === 'recentTask' && !props.panelCollapsedModel
142
+ )
143
+ </script>
144
+
145
+ <style>
146
+ :root {
147
+ --bottom-pannel-bg-color: #fff;
148
+ --bottom-pannel-border-color: #e9ebed;
149
+ --bottom-pannel-rtask-link-text: #008fd6;
150
+ --bottom-pannel-rtask-link-hover-text: #0081c1;
151
+ --bottom-pannel-divider-color: #e9ebeda3;
152
+ --bottom-pannel-collapse-button-icon: #213444;
153
+ }
154
+ :root.dark-theme {
155
+ --bottom-pannel-bg-color: #213444;
156
+ --bottom-pannel-border-color: #e9ebed1f;
157
+ --bottom-pannel-rtask-link-text: #2ba2de;
158
+ --bottom-pannel-rtask-link-hover-text: #008fd6;
159
+ --bottom-pannel-divider-color: #e9ebed1f;
160
+ --bottom-pannel-collapse-button-icon: #e9eaec;
161
+ }
162
+ </style>
163
+ <style scoped lang="scss">
164
+ @import '~/assets/scss/common/mixins';
165
+ .bottom-panel {
166
+ background-color: var(--bottom-pannel-bg-color);
167
+
168
+ &__tab-list {
169
+ border-bottom: 1px solid var(--bottom-pannel-border-color);
170
+ }
171
+ &__tab {
172
+ align-items: flex-end;
173
+ margin-left: 16px;
174
+
175
+ &.tabs-wrapper.is-link:before {
176
+ display: none;
177
+ }
178
+ .collapsed &.tabs-wrapper.is-link {
179
+ :deep(.tab-item.active.tab-underline) {
180
+ border-bottom: 3px solid transparent;
181
+ }
182
+ }
183
+ }
184
+ &__table-wrapper {
185
+ height: inherit;
186
+ }
187
+
188
+ .btn-collapse {
189
+ border: 0;
190
+ outline: none;
191
+ background-color: transparent;
192
+ cursor: pointer;
193
+
194
+ .collapse-icon {
195
+ width: 20px;
196
+ height: 20px;
197
+ transform: rotate(180deg);
198
+ color: var(--bottom-pannel-collapse-button-icon);
199
+
200
+ .collapsed & {
201
+ transform: rotate(0deg);
202
+ }
203
+ }
204
+ }
205
+ &__collapse {
206
+ padding: 12px 16px;
207
+
208
+ &:before {
209
+ content: '';
210
+ position: absolute;
211
+ top: 8px;
212
+ right: 0;
213
+ bottom: 8px;
214
+ width: 1px;
215
+ background-color: var(--bottom-pannel-divider-color);
216
+ }
217
+ }
218
+
219
+ .actions {
220
+ flex: 1;
221
+ justify-content: flex-end;
222
+
223
+ .more-tasks-button {
224
+ width: auto;
225
+ }
226
+
227
+ :deep(.ui-select-toggle-button) {
228
+ height: 24px;
229
+ min-width: 80px;
230
+ padding: 4px 4px 4px 8px;
231
+ border-radius: 6px;
232
+ }
233
+ :deep(.ui-popup-window) {
234
+ border-radius: 6px;
235
+ width: unset !important;
236
+ }
237
+ }
238
+ }
239
+
240
+ :deep(.table-container.default-layout) {
241
+ border-radius: 0;
242
+ }
243
+ </style>