@db-ux/core-components 4.3.0 → 4.3.2-consolidation-7549d9f

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 (55) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/build/assets/icons/LICENCES.json +72 -0
  3. package/build/assets/icons/chat.svg +1 -0
  4. package/build/assets/icons/circle_small.svg +1 -0
  5. package/build/assets/icons/copy.svg +1 -0
  6. package/build/assets/icons/double_chevron_down.svg +1 -0
  7. package/build/assets/icons/double_chevron_left.svg +1 -0
  8. package/build/assets/icons/double_chevron_right.svg +1 -0
  9. package/build/assets/icons/double_chevron_up.svg +1 -0
  10. package/build/assets/icons/eye.svg +1 -0
  11. package/build/assets/icons/eye_disabled.svg +1 -0
  12. package/build/assets/icons/fonts/all/db-ux.woff2 +0 -0
  13. package/build/assets/icons/fonts/default/db-ux.woff2 +0 -0
  14. package/build/assets/icons/fonts/default_12/db-ux.woff2 +0 -0
  15. package/build/assets/icons/fonts/default_14/db-ux.woff2 +0 -0
  16. package/build/assets/icons/fonts/default_16/db-ux.woff2 +0 -0
  17. package/build/assets/icons/fonts/default_20/db-ux.woff2 +0 -0
  18. package/build/assets/icons/fonts/default_24/db-ux.woff2 +0 -0
  19. package/build/assets/icons/fonts/default_28/db-ux.woff2 +0 -0
  20. package/build/assets/icons/fonts/default_32/db-ux.woff2 +0 -0
  21. package/build/assets/icons/fonts/default_48/db-ux.woff2 +0 -0
  22. package/build/assets/icons/fonts/default_64/db-ux.woff2 +0 -0
  23. package/build/assets/icons/fonts/filled/db-ux.woff2 +0 -0
  24. package/build/assets/icons/fonts/filled_12/db-ux.woff2 +0 -0
  25. package/build/assets/icons/fonts/filled_14/db-ux.woff2 +0 -0
  26. package/build/assets/icons/fonts/filled_16/db-ux.woff2 +0 -0
  27. package/build/assets/icons/fonts/filled_20/db-ux.woff2 +0 -0
  28. package/build/assets/icons/fonts/filled_24/db-ux.woff2 +0 -0
  29. package/build/assets/icons/fonts/filled_28/db-ux.woff2 +0 -0
  30. package/build/assets/icons/fonts/filled_32/db-ux.woff2 +0 -0
  31. package/build/assets/icons/fonts/filled_48/db-ux.woff2 +0 -0
  32. package/build/assets/icons/fonts/filled_64/db-ux.woff2 +0 -0
  33. package/build/assets/icons/house.svg +1 -0
  34. package/build/assets/icons/moon.svg +1 -0
  35. package/build/assets/icons/sun.svg +1 -0
  36. package/build/components/accordion-item/accordion-item.css +0 -64
  37. package/build/components/custom-select-dropdown/custom-select-dropdown.css +0 -64
  38. package/build/components/drawer/drawer.css +18 -90
  39. package/build/components/drawer/drawer.scss +24 -37
  40. package/build/components/link/link.css +0 -64
  41. package/build/components/navigation-item/navigation-item.css +12 -72
  42. package/build/components/navigation-item/navigation-item.scss +13 -6
  43. package/build/components/notification/notification.css +0 -64
  44. package/build/components/popover/popover.css +0 -64
  45. package/build/components/tab-list/tab-list.css +0 -64
  46. package/build/components/tag/tag.css +0 -64
  47. package/build/components/textarea/textarea.css +0 -64
  48. package/build/components/tooltip/tooltip.css +0 -64
  49. package/build/styles/absolute.css +3 -3
  50. package/build/styles/component-animations.css +1 -1
  51. package/build/styles/index.css +2 -2
  52. package/build/styles/relative.css +3 -3
  53. package/build/styles/rollup.css +3 -3
  54. package/build/styles/webpack.css +3 -3
  55. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @db-ux/core-components
2
2
 
3
+ ## 4.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - fix(angular): issue with form-components not applying value changes because of [attr.value] instead of native [value] binding - [see commit 61ab4a3](https://github.com/db-ux-design-system/core-web/commit/61ab4a3e9a781459b829c74cf23624a23edd9e3f)
8
+
3
9
  ## 4.3.0
4
10
 
5
11
  ### Minor Changes
@@ -83,6 +83,78 @@
83
83
  "licence": "https://lucide.dev/license#lucide-license",
84
84
  "origin": "plus"
85
85
  },
86
+ {
87
+ "name": "eye.svg",
88
+ "type": "lucide",
89
+ "licence": "https://lucide.dev/license#lucide-license",
90
+ "origin": "eye"
91
+ },
92
+ {
93
+ "name": "eye_disabled.svg",
94
+ "type": "lucide",
95
+ "licence": "https://lucide.dev/license#lucide-license",
96
+ "origin": "eye-off"
97
+ },
98
+ {
99
+ "name": "double_chevron_down.svg",
100
+ "type": "lucide",
101
+ "licence": "https://lucide.dev/license#lucide-license",
102
+ "origin": "chevrons-down"
103
+ },
104
+ {
105
+ "name": "double_chevron_up.svg",
106
+ "type": "lucide",
107
+ "licence": "https://lucide.dev/license#lucide-license",
108
+ "origin": "chevrons-up"
109
+ },
110
+ {
111
+ "name": "double_chevron_left.svg",
112
+ "type": "lucide",
113
+ "licence": "https://lucide.dev/license#lucide-license",
114
+ "origin": "chevrons-left"
115
+ },
116
+ {
117
+ "name": "double_chevron_right.svg",
118
+ "type": "lucide",
119
+ "licence": "https://lucide.dev/license#lucide-license",
120
+ "origin": "chevrons-right"
121
+ },
122
+ {
123
+ "name": "copy.svg",
124
+ "type": "lucide",
125
+ "licence": "https://lucide.dev/license#lucide-license",
126
+ "origin": "copy"
127
+ },
128
+ {
129
+ "name": "house.svg",
130
+ "type": "lucide",
131
+ "licence": "https://lucide.dev/license#lucide-license",
132
+ "origin": "house"
133
+ },
134
+ {
135
+ "name": "circle_small.svg",
136
+ "type": "lucide",
137
+ "licence": "https://lucide.dev/license#lucide-license",
138
+ "origin": "circle-small"
139
+ },
140
+ {
141
+ "name": "chat.svg",
142
+ "type": "lucide",
143
+ "licence": "https://lucide.dev/license#lucide-license",
144
+ "origin": "message-square-text"
145
+ },
146
+ {
147
+ "name": "sun.svg",
148
+ "type": "lucide",
149
+ "licence": "https://lucide.dev/license#lucide-license",
150
+ "origin": "sun"
151
+ },
152
+ {
153
+ "name": "moon.svg",
154
+ "type": "lucide",
155
+ "licence": "https://lucide.dev/license#lucide-license",
156
+ "origin": "moon"
157
+ },
86
158
  {
87
159
  "name": "minus.svg",
88
160
  "type": "lucide",
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-message-square-text-icon lucide-message-square-text"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"/><path d="M7 11h10"/><path d="M7 15h6"/><path d="M7 7h8"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-small-icon lucide-circle-small"><circle cx="12" cy="12" r="6"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-copy-icon lucide-copy"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"/><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-down-icon lucide-chevrons-down"><path d="m7 6 5 5 5-5"/><path d="m7 13 5 5 5-5"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-left-icon lucide-chevrons-left"><path d="m11 17-5-5 5-5"/><path d="m18 17-5-5 5-5"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-right-icon lucide-chevrons-right"><path d="m6 17 5-5-5-5"/><path d="m13 17 5-5-5-5"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevrons-up-icon lucide-chevrons-up"><path d="m17 11-5-5-5 5"/><path d="m17 18-5-5-5 5"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye-icon lucide-eye"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"/><circle cx="12" cy="12" r="3"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye-off-icon lucide-eye-off"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"/><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"/><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"/><path d="m2 2 20 20"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house-icon lucide-house"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/><path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon-icon lucide-moon"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"/></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun-icon lucide-sun"><circle cx="12" cy="12" r="4"/><path d="M12 2v2"/><path d="M12 20v2"/><path d="m4.93 4.93 1.41 1.41"/><path d="m17.66 17.66 1.41 1.41"/><path d="M2 12h2"/><path d="M20 12h2"/><path d="m6.34 17.66-1.41 1.41"/><path d="m19.07 4.93-1.41 1.41"/></svg>
@@ -62,70 +62,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
62
62
 
63
63
  @layer variables {}
64
64
 
65
- @keyframes show-right-to-left {
66
- from {
67
- transform: translateX(110%);
68
- }
69
- to {
70
- transform: translateX(0%);
71
- }
72
- }
73
- @keyframes hide-right-to-left {
74
- from {
75
- transform: translateX(0%);
76
- }
77
- to {
78
- transform: translateX(110%);
79
- }
80
- }
81
- @keyframes show-left-to-right {
82
- from {
83
- transform: translateX(-110%);
84
- }
85
- to {
86
- transform: translateX(0%);
87
- }
88
- }
89
- @keyframes hide-left-to-right {
90
- from {
91
- transform: translateX(0%);
92
- }
93
- to {
94
- transform: translateX(-110%);
95
- }
96
- }
97
- @keyframes show-bottom-to-top {
98
- from {
99
- transform: translateY(110%);
100
- }
101
- to {
102
- transform: translateY(0%);
103
- }
104
- }
105
- @keyframes hide-bottom-to-top {
106
- from {
107
- transform: translateY(0%);
108
- }
109
- to {
110
- transform: translateY(110%);
111
- }
112
- }
113
- @keyframes show-top-to-bottom {
114
- from {
115
- transform: translateY(-110%);
116
- }
117
- to {
118
- transform: translateY(0%);
119
- }
120
- }
121
- @keyframes hide-top-to-bottom {
122
- from {
123
- transform: translateY(0%);
124
- }
125
- to {
126
- transform: translateY(-110%);
127
- }
128
- }
129
65
  @keyframes popover-animation {
130
66
  0% {
131
67
  opacity: 0;
@@ -219,70 +219,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
219
219
  * @mixin screen-min-max
220
220
  * @param $data an object like (min:"sm", max:"lg") or (min: "sm")
221
221
  */
222
- @keyframes show-right-to-left {
223
- from {
224
- transform: translateX(110%);
225
- }
226
- to {
227
- transform: translateX(0%);
228
- }
229
- }
230
- @keyframes hide-right-to-left {
231
- from {
232
- transform: translateX(0%);
233
- }
234
- to {
235
- transform: translateX(110%);
236
- }
237
- }
238
- @keyframes show-left-to-right {
239
- from {
240
- transform: translateX(-110%);
241
- }
242
- to {
243
- transform: translateX(0%);
244
- }
245
- }
246
- @keyframes hide-left-to-right {
247
- from {
248
- transform: translateX(0%);
249
- }
250
- to {
251
- transform: translateX(-110%);
252
- }
253
- }
254
- @keyframes show-bottom-to-top {
255
- from {
256
- transform: translateY(110%);
257
- }
258
- to {
259
- transform: translateY(0%);
260
- }
261
- }
262
- @keyframes hide-bottom-to-top {
263
- from {
264
- transform: translateY(0%);
265
- }
266
- to {
267
- transform: translateY(110%);
268
- }
269
- }
270
- @keyframes show-top-to-bottom {
271
- from {
272
- transform: translateY(-110%);
273
- }
274
- to {
275
- transform: translateY(0%);
276
- }
277
- }
278
- @keyframes hide-top-to-bottom {
279
- from {
280
- transform: translateY(0%);
281
- }
282
- to {
283
- transform: translateY(-110%);
284
- }
285
- }
286
222
  @keyframes popover-animation {
287
223
  0% {
288
224
  opacity: 0;
@@ -43,70 +43,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
43
43
 
44
44
  @layer variables {}
45
45
 
46
- @keyframes show-right-to-left {
47
- from {
48
- transform: translateX(110%);
49
- }
50
- to {
51
- transform: translateX(0%);
52
- }
53
- }
54
- @keyframes hide-right-to-left {
55
- from {
56
- transform: translateX(0%);
57
- }
58
- to {
59
- transform: translateX(110%);
60
- }
61
- }
62
- @keyframes show-left-to-right {
63
- from {
64
- transform: translateX(-110%);
65
- }
66
- to {
67
- transform: translateX(0%);
68
- }
69
- }
70
- @keyframes hide-left-to-right {
71
- from {
72
- transform: translateX(0%);
73
- }
74
- to {
75
- transform: translateX(-110%);
76
- }
77
- }
78
- @keyframes show-bottom-to-top {
79
- from {
80
- transform: translateY(110%);
81
- }
82
- to {
83
- transform: translateY(0%);
84
- }
85
- }
86
- @keyframes hide-bottom-to-top {
87
- from {
88
- transform: translateY(0%);
89
- }
90
- to {
91
- transform: translateY(110%);
92
- }
93
- }
94
- @keyframes show-top-to-bottom {
95
- from {
96
- transform: translateY(-110%);
97
- }
98
- to {
99
- transform: translateY(0%);
100
- }
101
- }
102
- @keyframes hide-top-to-bottom {
103
- from {
104
- transform: translateY(0%);
105
- }
106
- to {
107
- transform: translateY(-110%);
108
- }
109
- }
110
46
  @keyframes popover-animation {
111
47
  0% {
112
48
  opacity: 0;
@@ -153,15 +89,17 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
153
89
  background-color: color(from var(--db-adaptive-on-bg-basic-emphasis-100-default) srgb r g b/var(--db-opacity-sm));
154
90
  }
155
91
 
156
- .db-drawer .db-drawer-container {
92
+ .db-drawer .db-drawer-container:not([data-direction]), .db-drawer .db-drawer-container[data-direction=right] {
93
+ transform: translateX(110%);
157
94
  inset-inline: auto 0;
158
95
  }
159
- .db-drawer [data-rounded=true].db-drawer-container {
96
+ .db-drawer [data-rounded=true].db-drawer-container:not([data-direction]), .db-drawer [data-rounded=true].db-drawer-container[data-direction=right] {
160
97
  border-start-start-radius: var(--db-border-radius-sm);
161
98
  border-end-start-radius: var(--db-border-radius-sm);
162
99
  }
163
100
 
164
101
  .db-drawer .db-drawer-container[data-direction=left] {
102
+ transform: translateX(-110%);
165
103
  inset-inline: 0 auto;
166
104
  }
167
105
  .db-drawer [data-rounded=true].db-drawer-container[data-direction=left] {
@@ -176,6 +114,7 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
176
114
  }
177
115
 
178
116
  .db-drawer .db-drawer-container[data-direction=up] {
117
+ transform: translateY(110%);
179
118
  inset: auto 0 0;
180
119
  }
181
120
  .db-drawer [data-rounded=true].db-drawer-container[data-direction=up] {
@@ -184,6 +123,7 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
184
123
  }
185
124
 
186
125
  .db-drawer .db-drawer-container[data-direction=down] {
126
+ transform: translateY(-110%);
187
127
  inset: 0 0 auto;
188
128
  }
189
129
  .db-drawer [data-rounded=true].db-drawer-container[data-direction=down] {
@@ -305,6 +245,11 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
305
245
  .db-drawer .db-drawer-container[data-rounded=true] {
306
246
  box-shadow: var(--db-elevation-md);
307
247
  }
248
+ @media screen and (prefers-reduced-motion: no-preference) {
249
+ .db-drawer .db-drawer-container {
250
+ transition: transform var(--db-transition-duration-extra-slow) var(--db-transition-timing-emotional);
251
+ }
252
+ }
308
253
  .db-drawer .db-drawer-container .db-drawer-header {
309
254
  display: none;
310
255
  --db-divider-bg-color: var(--db-adaptive-on-bg-basic-emphasis-60-default);
@@ -364,31 +309,14 @@ dialog:not([data-backdrop=none])[data-backdrop=weak]::backdrop, dialog:not([data
364
309
  .db-drawer[data-position=absolute] .db-drawer-container {
365
310
  position: relative;
366
311
  }
367
- @media screen and (prefers-reduced-motion: no-preference) {
368
- .db-drawer[open] .db-drawer-container:not([data-direction]), .db-drawer[open] .db-drawer-container[data-direction=right] {
369
- animation: show-right-to-left var(--db-transition-straight-show);
370
- }
371
- .db-drawer[open] .db-drawer-container[data-direction=left] {
372
- animation: show-left-to-right var(--db-transition-straight-show);
373
- }
374
- .db-drawer[open] .db-drawer-container[data-direction=up] {
375
- animation: show-bottom-to-top var(--db-transition-straight-show);
376
- }
377
- .db-drawer[open] .db-drawer-container[data-direction=down] {
378
- animation: show-top-to-bottom var(--db-transition-straight-show);
379
- }
312
+ .db-drawer[open] .db-drawer-container[data-transition=open]:not([data-direction]), .db-drawer[open] .db-drawer-container[data-transition=open][data-direction=right], .db-drawer[open] .db-drawer-container[data-transition=open][data-direction=left] {
313
+ transform: translateX(0%);
314
+ }
315
+ .db-drawer[open] .db-drawer-container[data-transition=open][data-direction=up], .db-drawer[open] .db-drawer-container[data-transition=open][data-direction=down] {
316
+ transform: translateY(0%);
380
317
  }
381
318
  @media screen and (prefers-reduced-motion: no-preference) {
382
- .db-drawer[open] .db-drawer-container[hidden]:not([data-direction]), .db-drawer[open] .db-drawer-container[hidden][data-direction=right] {
383
- animation: hide-right-to-left var(--db-transition-straight-hide);
384
- }
385
- .db-drawer[open] .db-drawer-container[hidden][data-direction=left] {
386
- animation: hide-left-to-right var(--db-transition-straight-hide);
387
- }
388
- .db-drawer[open] .db-drawer-container[hidden][data-direction=up] {
389
- animation: hide-bottom-to-top var(--db-transition-straight-hide);
390
- }
391
- .db-drawer[open] .db-drawer-container[hidden][data-direction=down] {
392
- animation: hide-top-to-bottom var(--db-transition-straight-hide);
319
+ .db-drawer[open] .db-drawer-container[data-transition=close] {
320
+ transition: transform var(--db-transition-duration-slow) var(--db-transition-timing-emotional);
393
321
  }
394
322
  }
@@ -7,6 +7,7 @@
7
7
  @use "../../styles/dialog-init";
8
8
 
9
9
  %direction-right {
10
+ transform: translateX(110%);
10
11
  inset-inline: auto 0;
11
12
 
12
13
  &[data-rounded="true"] {
@@ -16,6 +17,7 @@
16
17
  }
17
18
 
18
19
  %direction-left {
20
+ transform: translateX(-110%);
19
21
  inset-inline: 0 auto;
20
22
 
21
23
  &[data-rounded="true"] {
@@ -45,6 +47,7 @@
45
47
  %direction-up {
46
48
  @extend %full-horizontal;
47
49
 
50
+ transform: translateY(110%);
48
51
  inset: auto 0 0;
49
52
 
50
53
  &[data-rounded="true"] {
@@ -56,6 +59,7 @@
56
59
  %direction-down {
57
60
  @extend %full-horizontal;
58
61
 
62
+ transform: translateY(-110%);
59
63
  inset: 0 0 auto;
60
64
 
61
65
  &[data-rounded="true"] {
@@ -135,7 +139,6 @@ $spacings: (
135
139
 
136
140
  .db-drawer {
137
141
  .db-drawer-container {
138
- @extend %direction-right;
139
142
  @extend %spacing-drawer;
140
143
 
141
144
  display: flex;
@@ -191,6 +194,17 @@ $spacings: (
191
194
  box-shadow: variables.$db-elevation-md;
192
195
  }
193
196
 
197
+ @media screen and (prefers-reduced-motion: no-preference) {
198
+ transition: transform
199
+ #{variables.$db-transition-duration-extra-slow}
200
+ #{variables.$db-transition-timing-emotional};
201
+ }
202
+
203
+ &:not([data-direction]),
204
+ &[data-direction="right"] {
205
+ @extend %direction-right;
206
+ }
207
+
194
208
  &[data-direction="left"] {
195
209
  @extend %direction-left;
196
210
  }
@@ -265,51 +279,24 @@ $spacings: (
265
279
 
266
280
  &[open] {
267
281
  .db-drawer-container {
268
- @media screen and (prefers-reduced-motion: no-preference) {
282
+ &[data-transition="open"] {
269
283
  &:not([data-direction]),
270
- &[data-direction="right"] {
271
- animation: show-right-to-left
272
- #{variables.$db-transition-straight-show};
273
- }
274
-
284
+ &[data-direction="right"],
275
285
  &[data-direction="left"] {
276
- animation: show-left-to-right
277
- #{variables.$db-transition-straight-show};
278
- }
279
-
280
- &[data-direction="up"] {
281
- animation: show-bottom-to-top
282
- #{variables.$db-transition-straight-show};
286
+ transform: translateX(0%);
283
287
  }
284
288
 
289
+ &[data-direction="up"],
285
290
  &[data-direction="down"] {
286
- animation: show-top-to-bottom
287
- #{variables.$db-transition-straight-show};
291
+ transform: translateY(0%);
288
292
  }
289
293
  }
290
294
 
291
- &[hidden] {
295
+ &[data-transition="close"] {
292
296
  @media screen and (prefers-reduced-motion: no-preference) {
293
- &:not([data-direction]),
294
- &[data-direction="right"] {
295
- animation: hide-right-to-left
296
- #{variables.$db-transition-straight-hide};
297
- }
298
-
299
- &[data-direction="left"] {
300
- animation: hide-left-to-right
301
- #{variables.$db-transition-straight-hide};
302
- }
303
-
304
- &[data-direction="up"] {
305
- animation: hide-bottom-to-top
306
- #{variables.$db-transition-straight-hide};
307
- }
308
-
309
- &[data-direction="down"] {
310
- animation: hide-top-to-bottom
311
- #{variables.$db-transition-straight-hide};
312
- }
297
+ transition: transform
298
+ #{variables.$db-transition-duration-slow}
299
+ #{variables.$db-transition-timing-emotional};
313
300
  }
314
301
  }
315
302
  }
@@ -129,70 +129,6 @@ paddings/gaps in an application e.g. the <main> should have a responsive padding
129
129
  transition: outline var(--db-transition-duration-extra-fast), color var(--db-transition-straight-emotional);
130
130
  }
131
131
 
132
- @keyframes show-right-to-left {
133
- from {
134
- transform: translateX(110%);
135
- }
136
- to {
137
- transform: translateX(0%);
138
- }
139
- }
140
- @keyframes hide-right-to-left {
141
- from {
142
- transform: translateX(0%);
143
- }
144
- to {
145
- transform: translateX(110%);
146
- }
147
- }
148
- @keyframes show-left-to-right {
149
- from {
150
- transform: translateX(-110%);
151
- }
152
- to {
153
- transform: translateX(0%);
154
- }
155
- }
156
- @keyframes hide-left-to-right {
157
- from {
158
- transform: translateX(0%);
159
- }
160
- to {
161
- transform: translateX(-110%);
162
- }
163
- }
164
- @keyframes show-bottom-to-top {
165
- from {
166
- transform: translateY(110%);
167
- }
168
- to {
169
- transform: translateY(0%);
170
- }
171
- }
172
- @keyframes hide-bottom-to-top {
173
- from {
174
- transform: translateY(0%);
175
- }
176
- to {
177
- transform: translateY(110%);
178
- }
179
- }
180
- @keyframes show-top-to-bottom {
181
- from {
182
- transform: translateY(-110%);
183
- }
184
- to {
185
- transform: translateY(0%);
186
- }
187
- }
188
- @keyframes hide-top-to-bottom {
189
- from {
190
- transform: translateY(0%);
191
- }
192
- to {
193
- transform: translateY(-110%);
194
- }
195
- }
196
132
  @keyframes popover-animation {
197
133
  0% {
198
134
  opacity: 0;