@interopio/groups-ui-react 2.7.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist/cjs/GroupWrapper.d.ts +2 -1
  2. package/dist/cjs/defaultComponents/buttons/StandardButton.d.ts +4 -0
  3. package/dist/cjs/defaultComponents/utils/common.d.ts +3 -0
  4. package/dist/cjs/defaultComponents/utils/useDragMove.d.ts +6 -0
  5. package/dist/cjs/index.d.ts +2 -1
  6. package/dist/cjs/index.js +207 -92
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/cjs/tests/buttons/BaseButton.test.d.ts +1 -0
  9. package/dist/cjs/tests/buttons/CloneButton.test.d.ts +1 -0
  10. package/dist/cjs/tests/buttons/CloseButton.test.d.ts +1 -0
  11. package/dist/cjs/tests/buttons/CustomButton.test.d.ts +1 -0
  12. package/dist/cjs/tests/buttons/ExtractButton.test.d.ts +1 -0
  13. package/dist/cjs/tests/buttons/FeedbackButton.test.d.ts +1 -0
  14. package/dist/cjs/tests/buttons/LockButtons.test.d.ts +1 -0
  15. package/dist/cjs/tests/buttons/MaximizeButton.test.d.ts +1 -0
  16. package/dist/cjs/tests/buttons/MinimizeButton.test.d.ts +1 -0
  17. package/dist/cjs/tests/buttons/OverflowButton.test.d.ts +1 -0
  18. package/dist/cjs/tests/buttons/RestoreButton.test.d.ts +1 -0
  19. package/dist/cjs/tests/buttons/StickyButton.test.d.ts +1 -0
  20. package/dist/cjs/tests/buttons/UnlockButton.test.d.ts +1 -0
  21. package/dist/cjs/tests/captionEditor/CaptionEditor.test.d.ts +1 -0
  22. package/dist/cjs/tests/channelSelector/BaseChannelSelector.test.d.ts +1 -0
  23. package/dist/cjs/tests/flatCaptionBar/FlatCaptionBar.test.d.ts +1 -0
  24. package/dist/cjs/tests/groupCaptionBar/GroupCaptionBar.test.d.ts +1 -0
  25. package/dist/cjs/tests/htmlButtonBar/HtmlButtonBar.test.d.ts +1 -0
  26. package/dist/cjs/tests/popups/TabOverflowPopup.test.d.ts +1 -0
  27. package/dist/cjs/tests/tabs/Tab.test.d.ts +1 -0
  28. package/dist/cjs/types/api.d.ts +12 -1
  29. package/dist/cjs/types/defaultComponents.d.ts +10 -2
  30. package/dist/cjs/types/internal.d.ts +48 -45
  31. package/dist/cjs/webGroupsManager.d.ts +6 -1
  32. package/dist/esm/GroupWrapper.d.ts +2 -1
  33. package/dist/esm/defaultComponents/buttons/StandardButton.d.ts +4 -0
  34. package/dist/esm/defaultComponents/utils/common.d.ts +3 -0
  35. package/dist/esm/defaultComponents/utils/useDragMove.d.ts +6 -0
  36. package/dist/esm/index.d.ts +2 -1
  37. package/dist/esm/index.js +207 -93
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/esm/tests/buttons/BaseButton.test.d.ts +1 -0
  40. package/dist/esm/tests/buttons/CloneButton.test.d.ts +1 -0
  41. package/dist/esm/tests/buttons/CloseButton.test.d.ts +1 -0
  42. package/dist/esm/tests/buttons/CustomButton.test.d.ts +1 -0
  43. package/dist/esm/tests/buttons/ExtractButton.test.d.ts +1 -0
  44. package/dist/esm/tests/buttons/FeedbackButton.test.d.ts +1 -0
  45. package/dist/esm/tests/buttons/LockButtons.test.d.ts +1 -0
  46. package/dist/esm/tests/buttons/MaximizeButton.test.d.ts +1 -0
  47. package/dist/esm/tests/buttons/MinimizeButton.test.d.ts +1 -0
  48. package/dist/esm/tests/buttons/OverflowButton.test.d.ts +1 -0
  49. package/dist/esm/tests/buttons/RestoreButton.test.d.ts +1 -0
  50. package/dist/esm/tests/buttons/StickyButton.test.d.ts +1 -0
  51. package/dist/esm/tests/buttons/UnlockButton.test.d.ts +1 -0
  52. package/dist/esm/tests/captionEditor/CaptionEditor.test.d.ts +1 -0
  53. package/dist/esm/tests/channelSelector/BaseChannelSelector.test.d.ts +1 -0
  54. package/dist/esm/tests/flatCaptionBar/FlatCaptionBar.test.d.ts +1 -0
  55. package/dist/esm/tests/groupCaptionBar/GroupCaptionBar.test.d.ts +1 -0
  56. package/dist/esm/tests/htmlButtonBar/HtmlButtonBar.test.d.ts +1 -0
  57. package/dist/esm/tests/popups/TabOverflowPopup.test.d.ts +1 -0
  58. package/dist/esm/tests/tabs/Tab.test.d.ts +1 -0
  59. package/dist/esm/types/api.d.ts +12 -1
  60. package/dist/esm/types/defaultComponents.d.ts +10 -2
  61. package/dist/esm/types/internal.d.ts +48 -45
  62. package/dist/esm/webGroupsManager.d.ts +6 -1
  63. package/dist/styles/groups.css +156 -76
  64. package/dist/styles/vars.css +865 -78
  65. package/package.json +36 -28
  66. package/dist/cjs/useGDWindow.d.ts +0 -2
  67. package/dist/esm/useGDWindow.d.ts +0 -2
  68. package/dist/styles/fonts.css +0 -2
  69. package/dist/styles/styles.css +0 -679
  70. package/dist/styles/themes.css +0 -155
@@ -1,679 +0,0 @@
1
- @import "vars.css";
2
-
3
- * {
4
- box-sizing: border-box;
5
- transition-timing-function: cubic-bezier(0.45, 0, 0.15, 1);
6
- transition-duration: 250ms;
7
- transition-property: color;
8
- }
9
-
10
- body {
11
- max-width: none;
12
- max-height: none;
13
- overflow: hidden;
14
- background-color: var(--t42-background);
15
- font-weight: var(--bs-body-font-weight);
16
- font-family: var(--t42-font-family);
17
- font-size: var(--t42-font-size);
18
- }
19
-
20
- input {
21
- font-weight: var(--bs-body-font-weight);
22
- font-family: var(--t42-font-family);
23
- font-size: var(--t42-font-size);
24
- }
25
-
26
- #t42-group-container {
27
- display: flex;
28
- flex-direction: column;
29
- overflow: hidden;
30
- width: 100%;
31
- height: 100%;
32
- max-width: none;
33
- max-height: none;
34
- background-color: transparent;
35
- border-style: solid;
36
- border-color: var(--t42-group-border-color);
37
- border-width: var(--t42-group-border-size);
38
- }
39
-
40
- #t42-frames-container {
41
- display: flex;
42
- flex-grow: 1;
43
- position: relative;
44
- height: 100%;
45
- background-color: transparent;
46
- }
47
-
48
- .t42-caption-bar {
49
- display: flex;
50
- flex-direction: column;
51
- flex-grow: 0;
52
- flex-shrink: 0;
53
- overflow: hidden;
54
- position: relative;
55
- }
56
-
57
- .t42-internal-caption-bar {
58
- flex-direction: row;
59
- }
60
-
61
- .t42-react-caption-bar {
62
- display: flex;
63
- flex-grow: 1;
64
- }
65
-
66
- .t42-caption-bar:after {
67
- width: 100%;
68
- display: block;
69
- background-color: var(--t42-caption-separator-color);
70
- content: "";
71
- position: absolute;
72
- z-index: 1;
73
- }
74
-
75
- .t42-caption {
76
- overflow: hidden;
77
- align-items: center;
78
- white-space: nowrap;
79
- text-align: left;
80
- text-overflow: ellipsis;
81
- user-select: none;
82
- }
83
-
84
- .t42-caption-editor {
85
- display: inline-block;
86
- color: var(--t42-caption-editor-color);
87
- margin: var(--t42-caption-editor-margin);
88
- border: 1px solid var(--primary);
89
- outline: none;
90
- min-width: 150px;
91
- padding: 0px 2px 0px 2px;
92
- white-space: nowrap;
93
- overflow-x: hidden;
94
- }
95
-
96
- .t42-title {
97
- color: var(--t42-title-color);
98
- margin: var(--t42-title-margin);
99
- }
100
-
101
- .t42-move-area {
102
- align-items: center;
103
- display: flex;
104
- flex-grow: 1;
105
- min-width: var(--t42-move-area-min-width);
106
- }
107
-
108
- .t42-buttons-container {
109
- display: flex;
110
- flex-direction: row;
111
- }
112
-
113
- .t42-buttons {
114
- display: flex;
115
- flex-shrink: 0;
116
- align-items: center;
117
- overflow: hidden;
118
- margin: 0px;
119
- padding: 0px;
120
- list-style-type: none;
121
- }
122
-
123
- .t42-button {
124
- display: flex;
125
- align-items: center;
126
- justify-content: center;
127
- }
128
-
129
- .t42-standard-button {
130
- height: var(--t42-standard-button-size);
131
- width: var(--t42-standard-button-size);
132
- position: relative;
133
- }
134
-
135
- .t42-standard-button::before,
136
- .t42-tab-channel-selector-content::before,
137
- .t42-frame-channel-selector-content::before,
138
- .t42-tab-close-button-content::before {
139
- color: var(--t42-standard-button-color);
140
- display: block;
141
- content: "";
142
- width: var(--t42-standard-button-size);
143
- height: var(--t42-standard-button-size);
144
- transition-property: background-color, color;
145
- -webkit-mask-repeat: no-repeat;
146
- }
147
-
148
- .t42-standard-button-image {
149
- fill: var(--t42-standard-button-color);
150
- }
151
-
152
- .t42-caption-bar-button {
153
- position: relative;
154
- transition-property: background-color, color;
155
- background-color: var(--t42-caption-bar-button-background);
156
- }
157
-
158
- .t42-caption-bar-button:hover,
159
- .t42-caption-bar-button.active {
160
- background-color: var(--t42-caption-bar-button-hover-background);
161
- }
162
-
163
- .t42-caption-bar-button-close:hover {
164
- background-color: var(--t42-caption-bar-button-close-hover-background);
165
- }
166
-
167
- .t42-caption-bar-button:hover .t42-standard-button:before {
168
- color: var(--t42-standard-button-hover-color);
169
- }
170
-
171
- .t42-caption-bar-button:hover .t42-standard-button-close:before {
172
- background-color: var(--t42-caption-bar-button-close-hover-text);
173
- }
174
-
175
- .t42-caption-bar-button:hover .t42-standard-button-extract::before,
176
- .t42-caption-bar-button:hover .t42-standard-button-minimize::before,
177
- .t42-caption-bar-button:hover .t42-standard-button-lock::before,
178
- .t42-caption-bar-button:hover .t42-standard-button-unlock::before,
179
- .t42-caption-bar-button:hover .t42-standard-button-feedback::before,
180
- .t42-caption-bar-button:hover .t42-standard-button-sticky::before {
181
- background-color: var(--t42-standard-button-hover-color);
182
- }
183
-
184
- .t42-standard-button-minimize::before {
185
- height: 1px;
186
- position: relative;
187
- top: calc(var(--t42-standard-button-size) / 2);
188
- background-color: var(--t42-standard-button-color);
189
- }
190
-
191
- .t42-standard-button-maximize::before {
192
- box-shadow: inset 0 0 0 1px;
193
- }
194
-
195
- .t42-standard-button-close::before,
196
- .t42-tab-close-button-content::before {
197
- background-color: var(--t42-standard-button-color);
198
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' viewBox='0 0 16 16' xml:space='preserve'%3E%3Cpath d='M0 1 1 0 8 7 15 0 16 1 9 8 16 15 15 16 8 9 1 16 0 15 7 8 0 1z'/%3E%3C/svg%3E");
199
- }
200
-
201
- .t42-tab-close-button-content::before {
202
- height: var(--t42-tab-bar-tab-close-button-size);
203
- width: var(--t42-tab-bar-tab-close-button-size);
204
- }
205
-
206
- .t42-standard-button-restore::before {
207
- box-shadow: inset 0 0 0 1px;
208
- color: var(--t42-standard-button-color);
209
- position: absolute;
210
- width: calc(var(--t42-standard-button-size) - 2px);
211
- height: calc(var(--t42-standard-button-size) - 2px);
212
- top: 2px;
213
- }
214
-
215
- .t42-standard-button-restore::after {
216
- width: calc(var(--t42-standard-button-size) - (var(--t42-caption-bar-button-correction) / 2));
217
- height: calc(var(--t42-standard-button-size) - (var(--t42-caption-bar-button-correction) / 2));
218
- top: 0;
219
- border-top: 1px solid;
220
- border-right: 1px solid;
221
- position: absolute;
222
- content: "";
223
- border-color: var(--t42-standard-button-color);
224
- right: 0;
225
- }
226
-
227
- .t42-standard-button-extract::before {
228
- background-color: var(--t42-standard-button-color);
229
- width: calc(var(--t42-standard-button-size) + var(--t42-caption-bar-button-correction));
230
- height: calc(var(--t42-standard-button-size) + var(--t42-caption-bar-button-correction));
231
- top: calc(var(--t42-caption-bar-button-correction) / 2 * -1);
232
- position: absolute;
233
- left: calc(var(--t42-caption-bar-button-correction) / 2 * -1);
234
- -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12.8 3h-2.7l-.1.1v.2l.8.7.2.3-.2.2-5.1 5.1v.2l.5.5h.2l5.1-5.1.2-.2.3.2.7.8h.1c.1 0 .2 0 .2-.2V3.2c0-.1-.1-.2-.2-.2z'/%3E%3Cpath d='M11 12v.3H3.7V5H7v-.7H3.7c-.4 0-.7.3-.7.7v7.3c0 .4.3.7.7.7H11c.4 0 .7-.3.7-.7V9.7H11V12z'/%3E%3C/svg%3E");
235
- }
236
-
237
- .t42-standard-button-lock::before {
238
- background-color: var(--t42-standard-button-color);
239
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14.7,7H13V5c0-2.8-1.8-5-5-5C4.9,0,3,2.2,3,5v2H1.7C0.8,7,0,7.7,0,8.5v6C0,15.3,0.8,16,1.7,16h12.6c0.9,0,1.7-0.7,1.7-1.5 v-6C16,7.7,15.6,7,14.7,7z M4,5c0-2.2,1.5-4,4-4s4,1.8,4,4v2H4V5z M14.3,15H1.7C1.4,15,1,14.8,1,14.5v-6C1,8.2,1.4,8,1.7,8h12.6 C14.6,8,15,8.2,15,8.5v6C15,14.8,14.6,15,14.3,15z'/%3E%3C/svg%3E");
240
- }
241
-
242
- .t42-standard-button-unlock::before {
243
- background-color: var(--t42-standard-button-color);
244
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M14.7,7H14h-1h-1h-2H4V5c0-2.2,1.5-4,4-4c0.8,0,1.4,0.2,2,0.5V0.3C9.4,0.1,8.7,0,8,0C4.9,0,3,2.2,3,5v2H1.7 C0.8,7,0,7.7,0,8.5v6C0,15.3,0.8,16,1.7,16h12.6c0.9,0,1.7-0.7,1.7-1.5v-6C16,7.7,15.6,7,14.7,7z M15,14.5c0,0.3-0.4,0.5-0.7,0.5 H1.7C1.4,15,1,14.8,1,14.5v-6C1,8.2,1.4,8,1.7,8h12.6C14.6,8,15,8.2,15,8.5V14.5z'/%3E%3C/svg%3E");
245
- }
246
-
247
- .t42-standard-button-feedback::before {
248
- background-color: var(--t42-standard-button-color);
249
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M15 1.01v11c-.78 0-4.2 0-5.15 0-.43 0-.82.12-1.17.36-.89.6-1.77 1.19-2.66 1.78V13v-1H1V1.01H15M5.26 6.89c-.16.16-.27.38-.3.6C4.9 7.82 4.86 8.15 4.81 8.5L4.76 8.82 4.61 9.9l1.08-.16L6.04 9.7C6.33 9.65 6.6 9.61 6.91 9.57c.15-.02 4.7-4.34 4.7-4.34l-.58-.58L9.87 3.48 9.29 2.9 5.26 6.89zM16 .01c-5.36 0-10.68 0-16 0C0 4.35 0 8.66 0 13c1.66 0 3.3 0 5.01 0 0 1.01 0 1.98 0 2.99.17-.11.29-.17.41-.25 1.27-.85 2.55-1.69 3.82-2.55.19-.13.38-.19.61-.19 0 0 0 0 .01 0 .94 0 1.88.01 2.82.01.97 0 1.94 0 2.9 0 0 0 0 0 0 0 .08 0 .16.01.24.01.07 0 .13-.01.18-.05C16 8.63 16 4.31 16 .01L16 .01zM9.77 5.91c-.4-.39-.79-.78-1.18-1.16.22-.22.45-.45.7-.69.38.39.78.78 1.17 1.17C10.23 5.46 9.99 5.7 9.77 5.91L9.77 5.91zM5.57 8.94C5.64 8.47 5.7 8.04 5.76 7.61 5.77 7.56 5.8 7.5 5.84 7.46c.7-.7 1.39-1.4 2.06-2.07.42.41.81.79 1.22 1.2C8.45 7.27 7.75 7.96 7.07 8.65c-.09.09-.2.1-.31.12C6.38 8.82 6 8.87 5.57 8.94L5.57 8.94z'/%3E%3C/svg%3E");
250
- }
251
-
252
- .t42-standard-button-sticky::before {
253
- background-color: var(--t42-standard-button-color);
254
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2,4v8c0,2.7,1.3,4,4,4s4,0,4,0c2.7,0,4-1.3,4-4V4h-2v6c0,2.7-1.3,4-4,4l0,0c-2.7,0-4-1.3-4-4V4 M4,4H2 M2,0L2,0v2h2V0H2zM12,0h2v2h-2V0z'/%3E%3C/svg%3E");
255
- }
256
-
257
- .t42-tab-channel-selector-content::before,
258
- .t42-frame-channel-selector-content::before {
259
- background-color: var(--t42-standard-button-color);
260
- -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M301 395l-79 79c-51 51-133 51-184 0-51-51-51-133 0-184l79-79a133 133 0 014-3c8-7 20-2 20 8 0 5 1 10 1 14 1 4-1 7-3 10-17 17-75 75-75 75-37 37-37 96 0 133 37 37 96 37 133 0l79-79 0 0c36-37 36-96 0-133-8-8-18-15-28-19-5-2-7-7-7-12a62 62 0 013-15c2-7 10-10 16-7 15 6 29 16 41 28 51 51 51 133 0 184zm-90-94c12 12 26 22 41 28 6 3 14-1 16-7a62 62 0 003-15c0-5-3-10-7-12-10-5-19-11-28-19-37-37-37-96 0-133l0 0 79-79c37-37 96-37 133 0 37 37 37 96 0 133 0 0-59 59-75 75-3 3-4 6-3 10a163 163 0 011 14c0 10 13 15 20 8a131 131 0 004-3l79-79c51-51 51-133 0-184-51-51-133-51-184 0l-79 79c-51 51-51 133 0 184z'/%3E%3C/svg%3E");
261
- }
262
-
263
- .t42-group-caption-bar {
264
- height: auto;
265
- }
266
-
267
- .t42-group-caption-bar-element {
268
- background-color: var(--t42-group-caption-background);
269
- }
270
-
271
- .t42-group-caption-bar::after {
272
- bottom: 0;
273
- height: var(--t42-group-caption-separator-size);
274
- }
275
-
276
- .t42-group-caption-bar-button {
277
- width: var(--t42-group-caption-height);
278
- height: var(--t42-group-caption-height);
279
- }
280
-
281
- .t42-frame {
282
- display: flex;
283
- flex-direction: column;
284
- flex-grow: 0;
285
- flex-shrink: 0;
286
- position: absolute;
287
- overflow: hidden;
288
- background-color: transparent;
289
- border-style: solid;
290
- border-color: var(--t42-frame-border-color);
291
- border-width: var(--t42-frame-border-size);
292
- }
293
-
294
- .t42-frame-caption-bar {
295
- height: auto;
296
- }
297
-
298
- .t42-frame-caption-bar::after {
299
- bottom: 0;
300
- height: var(--t42-frame-caption-separator-size);
301
- }
302
-
303
- .t42-frame-caption-bar-element {
304
- background-color: var(--t42-frame-caption-background);
305
- }
306
-
307
- .t42-frame-channel-selector {
308
- align-self: center;
309
- width: var(--t42-frame-channel-selector-size);
310
- height: var(--t42-frame-channel-selector-size);
311
- margin: var(--t42-frame-channel-selector-margin);
312
- justify-content: center;
313
- }
314
-
315
- .t42-frame-channel-selector-content {
316
- width: var(--t42-standard-button-size);
317
- height: var(--t42-standard-button-size);
318
- }
319
-
320
- .t42-frame-channel-selector-content .t42-standard-button-image {
321
- fill: var(--t42-channels-fill-color);
322
- }
323
-
324
- .t42-frame-caption-bar-button {
325
- width: var(--t42-frame-caption-height);
326
- height: var(--t42-frame-caption-height);
327
- }
328
-
329
- .t42-frame-window-container {
330
- display: flex;
331
- flex-grow: 1;
332
- flex-direction: column;
333
- }
334
-
335
- .t42-frame-window {
336
- display: flex;
337
- flex-grow: 1;
338
- background-color: var(--t42-background);
339
- }
340
-
341
- .t42-frame-window-header {
342
- display: flex;
343
- flex-grow: 0;
344
- background-color: var(--t42-background);
345
- }
346
-
347
- .t42-frame-window-footer {
348
- display: flex;
349
- flex-grow: 0;
350
- flex-direction: column;
351
- background-color: var(--t42-background);
352
- }
353
-
354
- .t42-tab-bar {
355
- display: flex;
356
- flex-direction: column;
357
- position: relative;
358
- }
359
-
360
- .t42-tab-bar::after {
361
- display: block;
362
- content: "";
363
- position: absolute;
364
- z-index: 1;
365
- background-color: var(--t42-caption-separator-color);
366
- bottom: 0;
367
- height: var(--t42-tab-bar-separator-size);
368
- width: 100%;
369
- }
370
-
371
- .t42-tab-bar-header {
372
- display: flex;
373
- flex-direction: row;
374
- flex-grow: 0;
375
- flex-shrink: 0;
376
- overflow: hidden;
377
- position: relative;
378
- height: var(--t42-tab-bar-height);
379
- }
380
-
381
- .t42-tab-bar-element {
382
- background-color: var(--t42-tab-bar-background);
383
- }
384
-
385
- .t42-tab-bar-button {
386
- width: var(--t42-tab-bar-height);
387
- height: var(--t42-tab-bar-height);
388
- }
389
-
390
- .t42-tabs {
391
- display: flex;
392
- flex-direction: row;
393
- flex-grow: 0;
394
- flex-shrink: 1;
395
- overflow: hidden;
396
- list-style-type: none;
397
- position: relative;
398
- padding: 0px;
399
- margin: var(--t42-tab-bar-tabs-margin);
400
- }
401
-
402
- .t42-react-tab {
403
- display: flex;
404
- flex-grow: 1;
405
- overflow: hidden;
406
- }
407
-
408
- .t42-tab {
409
- display: flex;
410
- flex-direction: row;
411
- flex-grow: 0;
412
- flex-shrink: 1;
413
- align-items: center;
414
- position: relative;
415
- padding: 0px;
416
- width: var(--t42-tab-bar-tab-width);
417
- min-width: var(--t42-tab-bar-tab-min-width);
418
- max-width: var(--t42-tab-bar-tab-width);
419
- background-color: var(--t42-tab-bar-tab-background);
420
- }
421
-
422
- .t42-tab::after {
423
- width: var(--t42-tab-bar-tab-separator-size);
424
- height: 100%;
425
- position: absolute;
426
- right: 0px;
427
- display: block;
428
- transition: 0.3s;
429
- background-color: var(--t42-tab-bar-tab-separator-color);
430
- content: "";
431
- z-index: 10;
432
- }
433
-
434
- .t42-tab::before {
435
- width: 0;
436
- height: 0;
437
- position: absolute;
438
- left: 50%;
439
- bottom: 0px;
440
- display: block;
441
- background-color: var(--t42-tab-bar-tab-separator-color);
442
- content: "";
443
- z-index: 10;
444
- transition-timing-function: cubic-bezier(0.45, 0, 0.15, 1);
445
- transition-duration: 250ms;
446
- transition-property: width, left;
447
- }
448
-
449
- .t42-tab:hover::before {
450
- width: calc(100% - var(--t42-tab-bar-tab-separator-size));
451
- height: var(--t42-tab-bar-tab-hover-separator-size);
452
- left: 0;
453
- }
454
-
455
- .t42-tab:hover .t42-tab-caption {
456
- color: var(--t42-caption-text-hover-color);
457
- }
458
-
459
- .t42-tab-channel-selector {
460
- justify-content: center;
461
- width: var(--t42-tab-bar-tab-channels-size);
462
- height: var(--t42-tab-bar-tab-channels-size);
463
- margin: var(--t42-tab-bar-tab-channels-margin);
464
- }
465
-
466
- .t42-tab-caption {
467
- flex-grow: 1;
468
- color: var(--t42-tab-bar-tab-text);
469
- margin: var(--t42-tab-bar-tab-caption-margin);
470
- }
471
-
472
- .t42-tab-caption-editor {
473
- min-width: unset;
474
- }
475
-
476
- .t42-tab-close-button {
477
- margin: var(--t42-tab-bar-tab-close-button-margin);
478
- }
479
-
480
- .t42-tab-close-button-content {
481
- display: flex;
482
- width: calc(var(--t42-tab-bar-tab-close-button-size) + var(--t42-tab-bar-tab-close-button-padding) * 2);
483
- height: calc(var(--t42-tab-bar-tab-close-button-size) + var(--t42-tab-bar-tab-close-button-padding) * 2);
484
- border-radius: 50%;
485
- background-color: transparent;
486
- transition-property: background-color, fill;
487
- justify-content: center;
488
- align-items: center;
489
- }
490
-
491
- .t42-tab-close-button-content svg {
492
- padding: var(--t42-tab-bar-tab-close-button-padding);
493
- transition-property: fill;
494
- }
495
-
496
- .t42-tab-close-button-content .t42-standard-button-image {
497
- fill: var(--t42-tab-bar-tab-text);
498
- }
499
-
500
- .t42-tab-close-button-content:hover {
501
- background-color: var(--t42-tab-bar-tab-close-button-bg-hover);
502
- }
503
-
504
- .t42-tab-close-button-content:hover .t42-standard-button-image {
505
- fill: var(--t42-tab-bar-tab-text-hover);
506
- }
507
-
508
- .t42-selected-tab-element {
509
- background-color: var(--t42-tab-bar-selected-tab-background);
510
- }
511
-
512
- .t42-selected-tab::before {
513
- width: calc(100% - var(--t42-tab-bar-tab-separator-size));
514
- height: var(--t42-tab-bar-tab-selected-separator-size);
515
- position: absolute;
516
- left: 0px;
517
- bottom: 0px;
518
- display: block;
519
- background-color: var(--t42-tab-bar-tab-selected-separator-color);
520
- content: "";
521
- z-index: 10;
522
- transition-property: height;
523
- }
524
-
525
- .t42-selected-tab:hover::before {
526
- width: calc(100% - var(--t42-tab-bar-tab-separator-size));
527
- height: var(--t42-tab-bar-tab-selected-separator-size);
528
- position: absolute;
529
- left: 0px;
530
- bottom: 0px;
531
- display: block;
532
- background-color: var(--t42-tab-bar-tab-selected-separator-color);
533
- content: "";
534
- z-index: 10;
535
- }
536
-
537
- .t42-selected-tab-caption {
538
- color: var(--t42-tab-bar-selected-tab-text);
539
- }
540
-
541
- .t42-selected-tab-close-button-content .t42-standard-button-image {
542
- fill: var(--t42-tab-bar-selected-tab-text);
543
- }
544
-
545
- .t42-channel-selector-content-light::before {
546
- background-color: white;
547
- }
548
-
549
- .t42-channel-selector-content-dark::before {
550
- background-color: black;
551
- }
552
-
553
- @keyframes approaching-edge-animation {
554
- from {
555
- background-color: var(--t42-approaching-edge-start-color);
556
- }
557
-
558
- to {
559
- background-color: var(--t42-approaching-edge-end-color);
560
- }
561
- }
562
-
563
- .t42-approaching-edge {
564
- display: block;
565
- position: absolute;
566
- z-index: 100;
567
- background-color: var(--t42-approaching-edge-start-color);
568
- animation: approaching-edge-animation;
569
- animation-duration: var(--t42-approaching-edge-animation-duration);
570
- animation-iteration-count: infinite;
571
- animation-direction: alternate;
572
- }
573
-
574
- .t42-horizontal-approaching-edge {
575
- height: var(--t42-approaching-edge-size);
576
- }
577
-
578
- .t42-vertical-approaching-edge {
579
- width: var(--t42-approaching-edge-size);
580
- }
581
-
582
- .t42-skip-focus {
583
- /* We used non-standard rule to have non-empty style */
584
- -moz-user-focus: ignore;
585
- }
586
-
587
- .t42-loading-animation {
588
- width: 100%;
589
- height: 100%;
590
- background: var(--t42-background);
591
- }
592
-
593
- @keyframes clipMe {
594
-
595
- 0%,
596
- 100% {
597
- clip: rect(0, 25vh, 2px, 0)
598
- }
599
-
600
- 25% {
601
- clip: rect(0, 2px, 25vh, 0)
602
- }
603
-
604
- 50% {
605
- clip: rect(calc(25vh - 2px), 25vh, 25vh, 0)
606
- }
607
-
608
- 75% {
609
- clip: rect(0, 25vh, 25vh, calc(25vh - 2px))
610
- }
611
- }
612
-
613
- .t42-loading,
614
- .t42-loading.active::before,
615
- .t42-loading.active::after {
616
- position: absolute;
617
- top: 0;
618
- right: 0;
619
- bottom: 0;
620
- left: 0
621
- }
622
-
623
- .t42-loading {
624
- width: 25vh;
625
- height: 25vh;
626
- margin: auto;
627
- border-radius: .25rem;
628
- color: var(--primary);
629
- background: var(--t42-logo-icon) no-repeat 50% 35%;
630
- background-size: 50%;
631
- box-shadow: inset 0 0 0 0.0625rem rgba(var(--primary), 0.1);
632
- }
633
-
634
- .t42-loading::before,
635
- .t42-loading::after {
636
- border-radius: .375rem;
637
- box-shadow: inset 0 0 0 2px;
638
- animation: clipMe 8s linear infinite;
639
- content: ""
640
- }
641
-
642
- .t42-loading .t42-loading-text {
643
- position: relative;
644
- top: 70%;
645
- width: 100%;
646
- height: 2.5rem;
647
- margin: 0 auto;
648
- padding: 0 0.833rem;
649
- overflow: hidden;
650
- color: var(--t42-content-color-muted);
651
- text-align: center;
652
- text-overflow: ellipsis
653
- }
654
-
655
- .t42-loading.active::before {
656
- animation-delay: -4s
657
- }
658
-
659
- @keyframes flash {
660
- 0% {
661
- background-color: transparent;
662
- }
663
- 50% {
664
- background-color: var(--t42-tab-bar-tab-flashing-background);
665
- }
666
- 100% {
667
- background-color: transparent;
668
- }
669
- }
670
-
671
- .t42-tab-flashing {
672
- animation: flash 500ms linear infinite;
673
- }
674
-
675
- .t42-tab-flashing .t42-tab-bar-element,
676
- .t42-tab-flashing .t42-tab-caption {
677
- background-color: transparent;
678
- color: var(--white);
679
- }