@dialpad/dialtone-css 1.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 (134) hide show
  1. package/CHANGELOG.json +1 -0
  2. package/LICENSE.md +21 -0
  3. package/README.md +64 -0
  4. package/lib/build/favicons/dialpad/favicon-beta-notification__512.png +0 -0
  5. package/lib/build/favicons/dialpad/favicon-beta__512.png +0 -0
  6. package/lib/build/favicons/dialpad/favicon-csr__512.png +0 -0
  7. package/lib/build/favicons/dialpad/favicon-notification__512.png +0 -0
  8. package/lib/build/favicons/dialpad/favicon-staging-notification__512.png +0 -0
  9. package/lib/build/favicons/dialpad/favicon-staging__512.png +0 -0
  10. package/lib/build/favicons/dialpad/favicon__512.png +0 -0
  11. package/lib/build/favicons/favicon-dialtone__512.png +0 -0
  12. package/lib/build/favicons/uberconference/favicon-uberconference__512.png +0 -0
  13. package/lib/build/fonts/Archivo-Bold.woff2 +0 -0
  14. package/lib/build/fonts/Archivo-Regular.woff2 +0 -0
  15. package/lib/build/fonts/Archivo-SemiBold.woff2 +0 -0
  16. package/lib/build/fonts/ArchivoExpanded-SemiBold.woff2 +0 -0
  17. package/lib/build/fonts/ArchivoSemiExpanded-Medium.woff2 +0 -0
  18. package/lib/build/fonts/ArchivoSemiExpanded-SemiBold.woff2 +0 -0
  19. package/lib/build/js/dialtone_health_check/deprecated_icons.cjs +105 -0
  20. package/lib/build/js/dialtone_health_check/index.cjs +82 -0
  21. package/lib/build/js/dialtone_health_check/non_dialtone_properties.cjs +44 -0
  22. package/lib/build/js/dialtone_migration_helper/configs/box-shadows.mjs +19 -0
  23. package/lib/build/js/dialtone_migration_helper/configs/colors.mjs +69 -0
  24. package/lib/build/js/dialtone_migration_helper/configs/fonts.mjs +49 -0
  25. package/lib/build/js/dialtone_migration_helper/configs/size-and-space.mjs +124 -0
  26. package/lib/build/js/dialtone_migration_helper/helpers.mjs +212 -0
  27. package/lib/build/js/dialtone_migration_helper/index.mjs +135 -0
  28. package/lib/build/less/components/avatar.less +169 -0
  29. package/lib/build/less/components/badge.less +139 -0
  30. package/lib/build/less/components/banner.less +77 -0
  31. package/lib/build/less/components/breadcrumbs.less +88 -0
  32. package/lib/build/less/components/button.less +554 -0
  33. package/lib/build/less/components/card.less +56 -0
  34. package/lib/build/less/components/chip.less +192 -0
  35. package/lib/build/less/components/codeblock.less +26 -0
  36. package/lib/build/less/components/collapsible.less +33 -0
  37. package/lib/build/less/components/combobox.less +28 -0
  38. package/lib/build/less/components/datepicker.less +146 -0
  39. package/lib/build/less/components/emoji-picker.less +223 -0
  40. package/lib/build/less/components/forms.less +153 -0
  41. package/lib/build/less/components/icon.less +63 -0
  42. package/lib/build/less/components/image-viewer.less +35 -0
  43. package/lib/build/less/components/input.less +321 -0
  44. package/lib/build/less/components/item-layout.less +53 -0
  45. package/lib/build/less/components/keyboard-shortcut.less +39 -0
  46. package/lib/build/less/components/link.less +130 -0
  47. package/lib/build/less/components/list-group.less +48 -0
  48. package/lib/build/less/components/list-item-group.less +17 -0
  49. package/lib/build/less/components/modal.less +340 -0
  50. package/lib/build/less/components/notice.less +171 -0
  51. package/lib/build/less/components/pagination.less +41 -0
  52. package/lib/build/less/components/popover.less +99 -0
  53. package/lib/build/less/components/presence.less +60 -0
  54. package/lib/build/less/components/radio-checkbox.less +278 -0
  55. package/lib/build/less/components/root-layout.less +125 -0
  56. package/lib/build/less/components/selects.less +152 -0
  57. package/lib/build/less/components/skeleton.less +101 -0
  58. package/lib/build/less/components/stack.less +129 -0
  59. package/lib/build/less/components/tab-panel.less +15 -0
  60. package/lib/build/less/components/table.less +118 -0
  61. package/lib/build/less/components/tabs.less +219 -0
  62. package/lib/build/less/components/toast.less +120 -0
  63. package/lib/build/less/components/toggle.less +173 -0
  64. package/lib/build/less/components/tooltip.less +267 -0
  65. package/lib/build/less/dialtone-globals.less +45 -0
  66. package/lib/build/less/dialtone-reset.less +362 -0
  67. package/lib/build/less/dialtone-variables.less +16 -0
  68. package/lib/build/less/dialtone.less +71 -0
  69. package/lib/build/less/themes/default.less +83 -0
  70. package/lib/build/less/themes/example.less +89 -0
  71. package/lib/build/less/utilities/backgrounds.less +139 -0
  72. package/lib/build/less/utilities/borders.less +196 -0
  73. package/lib/build/less/utilities/colors.less +122 -0
  74. package/lib/build/less/utilities/effects.less +210 -0
  75. package/lib/build/less/utilities/flex.less +227 -0
  76. package/lib/build/less/utilities/grid.less +244 -0
  77. package/lib/build/less/utilities/interactivity.less +69 -0
  78. package/lib/build/less/utilities/layout.less +146 -0
  79. package/lib/build/less/utilities/lint-staged.config.cjs +5 -0
  80. package/lib/build/less/utilities/sizing.less +152 -0
  81. package/lib/build/less/utilities/spacing.less +107 -0
  82. package/lib/build/less/utilities/typography.less +300 -0
  83. package/lib/build/less/variables/layout.less +19 -0
  84. package/lib/build/less/variables/sizes.less +64 -0
  85. package/lib/build/less/variables/typography.less +46 -0
  86. package/lib/build/less/variables/visual-styles.less +77 -0
  87. package/lib/build/svg/spot/blank-space.svg +35 -0
  88. package/lib/build/svg/spot/browser-list-callout.svg +27 -0
  89. package/lib/build/svg/spot/browser-table-graph.svg +37 -0
  90. package/lib/build/svg/spot/female-laptop-typing.svg +21 -0
  91. package/lib/build/svg/spot/file-upload.svg +50 -0
  92. package/lib/build/svg/spot/male-laptop-typing.svg +24 -0
  93. package/lib/build/svg/spot/mind.svg +58 -0
  94. package/lib/build/svg/spot/publish.svg +54 -0
  95. package/lib/build/svg/spot/vector-vortex.svg +53 -0
  96. package/lib/build/svg/spot/wireless-screenshare.svg +30 -0
  97. package/lib/dist/css/dialtone.css +18711 -0
  98. package/lib/dist/css/dialtone.min.css +1 -0
  99. package/lib/dist/fonts/Archivo-Bold.woff2 +0 -0
  100. package/lib/dist/fonts/Archivo-Regular.woff2 +0 -0
  101. package/lib/dist/fonts/Archivo-SemiBold.woff2 +0 -0
  102. package/lib/dist/fonts/ArchivoExpanded-SemiBold.woff2 +0 -0
  103. package/lib/dist/fonts/ArchivoSemiExpanded-Medium.woff2 +0 -0
  104. package/lib/dist/fonts/ArchivoSemiExpanded-SemiBold.woff2 +0 -0
  105. package/lib/dist/js/dialtone_health_check/deprecated_icons.cjs +105 -0
  106. package/lib/dist/js/dialtone_health_check/index.cjs +82 -0
  107. package/lib/dist/js/dialtone_health_check/non_dialtone_properties.cjs +44 -0
  108. package/lib/dist/js/dialtone_migration_helper/configs/box-shadows.mjs +19 -0
  109. package/lib/dist/js/dialtone_migration_helper/configs/colors.mjs +69 -0
  110. package/lib/dist/js/dialtone_migration_helper/configs/fonts.mjs +49 -0
  111. package/lib/dist/js/dialtone_migration_helper/configs/size-and-space.mjs +124 -0
  112. package/lib/dist/js/dialtone_migration_helper/helpers.mjs +212 -0
  113. package/lib/dist/js/dialtone_migration_helper/index.mjs +135 -0
  114. package/lib/dist/svg/spot/blank-space.svg +1 -0
  115. package/lib/dist/svg/spot/browser-list-callout.svg +1 -0
  116. package/lib/dist/svg/spot/browser-table-graph.svg +1 -0
  117. package/lib/dist/svg/spot/female-laptop-typing.svg +1 -0
  118. package/lib/dist/svg/spot/file-upload.svg +1 -0
  119. package/lib/dist/svg/spot/male-laptop-typing.svg +1 -0
  120. package/lib/dist/svg/spot/mind.svg +1 -0
  121. package/lib/dist/svg/spot/publish.svg +1 -0
  122. package/lib/dist/svg/spot/vector-vortex.svg +1 -0
  123. package/lib/dist/svg/spot/wireless-screenshare.svg +1 -0
  124. package/lib/dist/vue/spot/SpotBlankSpace.vue +3 -0
  125. package/lib/dist/vue/spot/SpotBrowserListCallout.vue +3 -0
  126. package/lib/dist/vue/spot/SpotBrowserTableGraph.vue +3 -0
  127. package/lib/dist/vue/spot/SpotFemaleLaptopTyping.vue +3 -0
  128. package/lib/dist/vue/spot/SpotFileUpload.vue +3 -0
  129. package/lib/dist/vue/spot/SpotMaleLaptopTyping.vue +3 -0
  130. package/lib/dist/vue/spot/SpotMind.vue +3 -0
  131. package/lib/dist/vue/spot/SpotPublish.vue +3 -0
  132. package/lib/dist/vue/spot/SpotVectorVortex.vue +3 -0
  133. package/lib/dist/vue/spot/SpotWirelessScreenshare.vue +3 -0
  134. package/package.json +115 -0
@@ -0,0 +1,130 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: LINKS
4
+ //
5
+ // These are link classes for Dialpad's design system Dialtone.
6
+ // For further documentation of these and other classes,
7
+ // visit https://dialpad.design/components/links
8
+ //
9
+ // TABLE OF CONTENTS
10
+ // • BASE STYLE
11
+ // • ALTERNATE STYLES
12
+ //
13
+ // ============================================================================
14
+ // $ BASE STYLE
15
+ // ----------------------------------------------------------------------------
16
+ .d-link {
17
+ --link-color-default: var(--dt-color-link-primary);
18
+ --link-color-default-hover: var(--dt-color-link-primary-hover);
19
+ --link-text-decoration: underline;
20
+
21
+ position: relative;
22
+ display: inline-flex;
23
+ gap: var(--dt-space-300);
24
+ align-items: center;
25
+ justify-content: center;
26
+ box-sizing: border-box;
27
+ margin: 0;
28
+ padding: 0;
29
+ color: var(--link-color-default);
30
+ font: inherit;
31
+ text-decoration: var(--link-text-decoration);
32
+ text-underline-offset: calc(var(--dt-size-border-300) - var(--dt-size-border-100));
33
+ text-decoration-thickness: var(--dt-size-border-100);
34
+ background-color: transparent;
35
+ border: 0;
36
+ transition-timing-function: var(--ttf-out-quint);
37
+ transition-duration: var(--td200);
38
+ transition-property: background-color, border, box-shadow;
39
+
40
+ // Reset button appearance
41
+ -webkit-appearance: none;
42
+ -moz-appearance: none;
43
+ appearance: none;
44
+ fill: currentColor;
45
+
46
+ &:hover {
47
+ --link-text-decoration: none;
48
+
49
+ color: var(--link-color-default-hover);
50
+ cursor: pointer;
51
+ }
52
+
53
+ &:active {
54
+ --link-text-decoration: underline;
55
+ }
56
+
57
+ &:focus-visible {
58
+ --link-text-decoration: none;
59
+
60
+ outline: none;
61
+ box-shadow: var(--dt-shadow-focus);
62
+ }
63
+
64
+ // ============================================================================
65
+ // $ ALTERNATE STYLES
66
+ // ============================================================================
67
+ // $$ WARNING
68
+ // ----------------------------------------------------------------------------
69
+ &--warning {
70
+ --link-color-default: var(--dt-color-link-warning);
71
+ --link-color-default-hover: var(--dt-color-link-warning-hover);
72
+ }
73
+
74
+ // $$ DANGER
75
+ // ----------------------------------------------------------------------------
76
+ &--danger {
77
+ --link-color-default: var(--dt-color-link-critical);
78
+ --link-color-default-hover: var(--dt-color-link-critical-hover);
79
+ }
80
+
81
+ // $$ SUCCESS
82
+ // ----------------------------------------------------------------------------
83
+ &--success {
84
+ --link-color-default: var(--dt-color-link-success);
85
+ --link-color-default-hover: var(--dt-color-link-success-hover);
86
+ }
87
+
88
+ // $$ MUTED
89
+ // ----------------------------------------------------------------------------
90
+ &--muted {
91
+ --link-color-default: var(--dt-color-link-muted);
92
+ --link-color-default-hover: var(--dt-color-link-muted-hover);
93
+ }
94
+
95
+ // $$ DISABLED
96
+ // ----------------------------------------------------------------------------
97
+ // We don't expose these in the documentation because they're meant to be consumed
98
+ // by buttons using .d-link. Links with a disabled attribute are not valid mark-up.
99
+ &[disabled],
100
+ &--disabled {
101
+ --link-color-default: var(--dt-color-link-disabled);
102
+ --link-color-default-hover: var(--dt-color-link-disabled-hover);
103
+ --link-text-decoration: none;
104
+
105
+ &:hover {
106
+ cursor: not-allowed;
107
+ }
108
+ }
109
+
110
+ // $$ INVERTED
111
+ // ----------------------------------------------------------------------------
112
+ &--inverted {
113
+ --link-color-default: var(--dt-color-link-primary-inverted);
114
+ --link-color-default-hover: var(--dt-color-link-primary-inverted-hover);
115
+ }
116
+
117
+ // $$ INVERTED DISABLED
118
+ // ----------------------------------------------------------------------------
119
+ // We don't expose these in the documentation because they're meant to be consumed
120
+ // by buttons using .d-link. Links with a disabled attribute are not valid mark-up.
121
+ &--inverted-disabled {
122
+ --link-color-default: var(--dt-color-link-disabled-inverted);
123
+ --link-color-default-hover: var(--dt-color-link-disabled-inverted-hover);
124
+ --link-text-decoration: none !important;
125
+
126
+ &:hover {
127
+ cursor: not-allowed;
128
+ }
129
+ }
130
+ }
@@ -0,0 +1,48 @@
1
+ //
2
+ // DIALTONE 5 SHIM
3
+ // COMPONENTS: LIST GROUPS
4
+ //
5
+ // These are the list group definitions, which are used by classes or can be
6
+ // used within Vue components. For further documentation of these values,
7
+ // please visit https://dialpad.design/components/list-groups
8
+ //
9
+ // ============================================================================
10
+ .d-list-group,
11
+ .d-list-group__item {
12
+ margin: 0;
13
+ padding: 0;
14
+ list-style: none;
15
+ }
16
+
17
+ .d-list-group--header,
18
+ .d-list-group--link {
19
+ display: block;
20
+ padding: var(--dt-space-300) var(--dt-space-550); // 4 24
21
+ }
22
+
23
+ .d-list-group--header {
24
+ font-weight: var(--dt-font-weight-bold);
25
+ font-size: var(--dt-font-size-100);
26
+ text-transform: uppercase;
27
+ }
28
+
29
+ .d-list-group--link {
30
+ color: var(--dt-color-black-800);
31
+ font-size: var(--dt-font-size-200);
32
+ text-decoration: none;
33
+
34
+ &:hover {
35
+ color: var(--dt-color-black-900);
36
+ background-color: hsla(var(--dt-color-purple-400-hsl) ~' / ' 85%);
37
+ }
38
+
39
+ &-selected {
40
+ color: var(--dt-color-neutral-white);
41
+ background-color: var(--dt-color-purple-400);
42
+
43
+ &:hover {
44
+ color: var(--dt-color-neutral-white);
45
+ background-color: hsl(var(--dt-color-purple-400-h) var(--dt-color-purple-400-s) calc(var(--dt-color-purple-400-l) + 10%));
46
+ }
47
+ }
48
+ }
@@ -0,0 +1,17 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: List Item Group
4
+ //
5
+ // These are the styles for List Item Group component.
6
+ //
7
+ // TABLE OF CONTENTS
8
+ // • BASE STYLE
9
+ //
10
+ // ============================================================================
11
+ // $ BASE STYLE
12
+ // ----------------------------------------------------------------------------
13
+ .d-list-item-group {
14
+ position: relative;
15
+ padding-right: var(--dt-space-0);
16
+ padding-left: var(--dt-space-0);
17
+ }
@@ -0,0 +1,340 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: MODALS
4
+ //
5
+ // These are modal classes for Dialpad's design system Dialtone.
6
+ // For further documentation of these and other classes,
7
+ // visit https://dialpad.design/components/modals
8
+ //
9
+ // TABLE OF CONTENTS
10
+ // • BASE STYLES
11
+ // - Wrapper
12
+ // - Dialog
13
+ // - Make them appear
14
+ // • MODAL BACKGROUND
15
+ // • HEADER
16
+ // • CONTENT
17
+ // • FOOTER
18
+ // • TRANSITIONS
19
+ //
20
+ // ============================================================================
21
+ // $ BASE STYLES
22
+ // ============================================================================
23
+ // $$ WRAPPER
24
+ // ----------------------------------------------------------------------------
25
+ .d-modal {
26
+ // Component CSS Vars
27
+ // ------------------------------------------------------------------------
28
+ --modal-backdrop-color-background: var(--dt-color-surface-backdrop);
29
+ --modal-dialog-padding: var(--dt-space-600);
30
+ --modal-dialog-color-background: var(--dt-color-surface-primary);
31
+ --modal-dialog-color-border: var(--dt-color-border-subtle);
32
+ --modal-dialog-color-text: var(--dt-color-foreground-primary);
33
+ --modal-header-color-text: var(--dt-color-foreground-primary);
34
+ --modal-dialog-shadow: var(--dt-shadow-large);
35
+
36
+ position: fixed;
37
+ inset: 0;
38
+ z-index: var(--zi-hide);
39
+ display: flex;
40
+ flex-direction: column;
41
+ align-items: center;
42
+ justify-content: center;
43
+ padding: var(--dt-space-600); // 32
44
+ background-color: var(--modal-backdrop-color-background);
45
+ backface-visibility: hidden;
46
+ visibility: hidden;
47
+ opacity: 0;
48
+ will-change: visibility, z-index, opacity;
49
+ }
50
+
51
+ .d-modal--transparent {
52
+ --modal-backdrop-color-background: var(--d-bgc-transparent);
53
+
54
+ &[aria-hidden='false'] {
55
+ position: fixed;
56
+ top: 0;
57
+ left: 0;
58
+ width: 100%;
59
+ min-height: 100%;
60
+ }
61
+ }
62
+
63
+ // $$ MODAL DIALOG
64
+ // ----------------------------------------------------------------------------
65
+ .d-modal__dialog {
66
+ position: relative;
67
+ z-index: var(--zi-hide);
68
+ display: flex;
69
+ flex-direction: column;
70
+ gap: var(--dt-space-500); //
71
+ box-sizing: border-box;
72
+ width: 100%;
73
+ max-width: var(--dt-size-1020); // 628
74
+ max-height: 100%;
75
+ padding: var(--modal-dialog-padding); // 32
76
+ overflow-y: auto;
77
+ color: var(--modal-dialog-color-text);
78
+ font-size: var(--dt-font-size-200);
79
+ line-height: var(--dt-font-line-height-400);
80
+ background-color: var(--modal-dialog-color-background);
81
+ background-clip: padding-box;
82
+ border: var(--dt-size-100) solid var(--modal-dialog-color-border);
83
+ border-radius: var(--dt-size-500);
84
+ box-shadow: var(--modal-dialog-shadow);
85
+ transform: translate3d(0, 30%, 0) scale3d(0.75, 0.75, 0.75);
86
+ backface-visibility: hidden;
87
+ visibility: hidden;
88
+ opacity: 0;
89
+ will-change: visibility, z-index, opacity, transform;
90
+ }
91
+
92
+ // $$ MAKE THEM APPEAR
93
+ // ----------------------------------------------------------------------------
94
+ .d-modal[aria-hidden='false'],
95
+ .d-modal[aria-hidden='false'] .d-modal__dialog,
96
+ .d-modal--transparent[aria-hidden='false'],
97
+ .d-modal--transparent[aria-hidden='false'] .d-modal__dialog {
98
+ z-index: var(--zi-modal);
99
+ transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
100
+ visibility: visible;
101
+ opacity: 1;
102
+ }
103
+
104
+
105
+ // ============================================================================
106
+ // $ MODAL AREAS
107
+ // ----------------------------------------------------------------------------
108
+ .d-modal__footer {
109
+ --modal-footer-padding: var(--dt-space-550); // 24
110
+
111
+ display: flex;
112
+ flex-direction: row-reverse;
113
+ gap: var(--dt-space-400);
114
+ align-items: center;
115
+ }
116
+
117
+
118
+ // ============================================================================
119
+ // $ TYPE STYLES
120
+ // ============================================================================
121
+ // $$ HEADER
122
+ // ----------------------------------------------------------------------------
123
+ .d-modal__header {
124
+ --modal-header-padding: var(--dt-space-550); // 24
125
+
126
+ margin: 0 !important;
127
+ color: var(--modal-header-color-text);
128
+ font-weight: var(--dt-font-weight-medium);
129
+ font-size: var(--dt-font-size-400);
130
+ line-height: var(--dt-font-line-height-100);
131
+ }
132
+
133
+ // $$ CONTENT
134
+ // ----------------------------------------------------------------------------
135
+ .d-modal__content {
136
+ max-width: 75ch;
137
+ }
138
+
139
+
140
+ // ============================================================================
141
+ // $ BUTTONS
142
+ // ----------------------------------------------------------------------------
143
+ .d-modal__close {
144
+ position: absolute;
145
+ top: var(--dt-space-500); // 16
146
+ right: var(--dt-space-500); // 16
147
+ margin: 0 !important;
148
+ }
149
+
150
+
151
+ // ============================================================================
152
+ // $ BANNERS
153
+ // ----------------------------------------------------------------------------
154
+ .d-modal__banner {
155
+ --modal-banner-padding-y: var(--dt-space-500);
156
+ --modal-banner-padding-x: var(--dt-space-600);
157
+ --modal-banner-color-background: var(--dt-color-surface-warning);
158
+
159
+ position: relative;
160
+ box-sizing: border-box;
161
+ width: 100%;
162
+ max-width: var(--dt-size-1020); // 628
163
+ padding: var(--modal-banner-padding-y) var(--modal-banner-padding-x); // 16 32
164
+ color: var(--dt-color-foreground-primary);
165
+ font-size: var(--dt-font-size-200);
166
+ line-height: var(--dt-font-line-height-300);
167
+ background-color: var(--modal-banner-color-background);
168
+ background-clip: padding-box;
169
+ border: var(--dt-size-100) solid var(--modal-dialog-color-border);
170
+ border-bottom-width: 0;
171
+ border-radius: var(--dt-size-500) var(--dt-size-500) 0 0;
172
+ box-shadow: var(--modal-dialog-shadow);
173
+
174
+ &--warning {
175
+ --modal-banner-color-background: var(--dt-color-surface-warning);
176
+ }
177
+
178
+ &--info {
179
+ --modal-banner-color-background: var(--dt-color-surface-info);
180
+ }
181
+
182
+ &--critical {
183
+ --modal-banner-color-background: var(--dt-color-surface-critical);
184
+ }
185
+
186
+ &--success {
187
+ --modal-banner-color-background: var(--dt-color-surface-success);
188
+ }
189
+
190
+ &--general {
191
+ --modal-banner-color-background: var(--dt-color-surface-secondary);
192
+ }
193
+
194
+ &::before {
195
+ // 🤦 don't ask. or do, i'm not even sorry.
196
+ position: absolute;
197
+ right: 0;
198
+ bottom: 0;
199
+ left: 0;
200
+ z-index: var(--zi-modal-element);
201
+ height: var(--modal-banner-padding-y);
202
+ background-color: var(--modal-banner-color-background);
203
+ content: '';
204
+ }
205
+
206
+ &:not(.d-d-none) + .d-modal__dialog {
207
+ border-top-width: 0;
208
+ border-top-left-radius: 0;
209
+ border-top-right-radius: 0;
210
+ }
211
+ }
212
+
213
+
214
+ // ============================================================================
215
+ // $ MODIFYING STYLES
216
+ // ============================================================================
217
+ // $$ FULL WIDTH
218
+ // ----------------------------------------------------------------------------
219
+ .d-modal--full {
220
+ --modal-dialog-padding: 0;
221
+
222
+ padding: 0;
223
+ overflow: hidden scroll;
224
+ transform: unset !important;
225
+
226
+ .d-modal__dialog {
227
+ display: flex;
228
+ flex-direction: column;
229
+ max-width: unset;
230
+ height: 100%;
231
+ border-radius: 0;
232
+ transform: unset !important;
233
+ }
234
+
235
+ .d-modal__header {
236
+ padding: var(--dt-space-600) var(--dt-space-600) 0; // 32
237
+ }
238
+
239
+ .d-modal__content {
240
+ padding-right: 0;
241
+ padding-left: var(--dt-space-600); // 32
242
+ }
243
+
244
+ .d-modal__footer {
245
+ margin-top: auto !important;
246
+ padding: 0 var(--dt-space-550) var(--dt-space-600) var(--dt-space-600); // 0 24 32 32
247
+ }
248
+
249
+ .d-modal__banner {
250
+ max-width: unset;
251
+ padding: var(--dt-space-450) var(--dt-space-600); // 12 32
252
+ border-radius: 0;
253
+ }
254
+ }
255
+
256
+ // $$ SCROLLABLE
257
+ // ----------------------------------------------------------------------------
258
+ .d-modal__dialog--scrollable {
259
+ display: flex;
260
+ flex-direction: column;
261
+ overflow: hidden;
262
+
263
+ .d-modal__content {
264
+ overflow-y: auto;
265
+ }
266
+ }
267
+
268
+ // $$ DANGER
269
+ // ----------------------------------------------------------------------------
270
+ .d-modal--danger {
271
+ --modal-header-color-text: var(--dt-color-foreground-primary);
272
+ }
273
+
274
+
275
+ // ============================================================================
276
+ // $ TRANSITIONS
277
+ // ----------------------------------------------------------------------------
278
+ .d-modal--animate {
279
+ z-index: var(--zi-hide) !important;
280
+ backface-visibility: hidden !important;
281
+ visibility: hidden !important;
282
+ opacity: 0 !important;
283
+ }
284
+
285
+ .d-modal__dialog--animate {
286
+ .d-modal--animate();
287
+
288
+ transform: translate3d(0, 30%, 0) scale3d(0.75, 0.75, 0.75) !important;
289
+ }
290
+
291
+ .d-modal--animate-in,
292
+ .d-modal__dialog--animate-in {
293
+ transition:
294
+ opacity 100ms var(--ttf-in-out) 10ms,
295
+ z-index 0s 0s,
296
+ visibility 0s 0s,
297
+ transform 100ms var(--ttf-in-out) 10ms;
298
+
299
+ @media (prefers-reduced-motion) {
300
+ transition: none !important;
301
+ }
302
+ }
303
+
304
+ .d-modal--animate-out {
305
+ transition:
306
+ opacity 100ms var(--ttf-in-out) 10ms,
307
+ z-index 0s 200ms,
308
+ visibility 0s 200ms,
309
+ transform 100ms var(--ttf-in-out) 10ms;
310
+
311
+ &.d-modal--full {
312
+ transition:
313
+ opacity 200ms var(--ttf-in-out) 0s,
314
+ z-index 0s 200ms,
315
+ visibility 0s 200ms;
316
+ }
317
+
318
+ @media (prefers-reduced-motion) {
319
+ transition: none !important;
320
+ }
321
+ }
322
+
323
+ .d-modal__dialog--animate-out {
324
+ transition:
325
+ opacity 200ms var(--ttf-in-out) 0s,
326
+ z-index 0s 200ms,
327
+ visibility 0s 200ms,
328
+ transform 100ms var(--ttf-in-out) 0s;
329
+
330
+ &.d-modal--full {
331
+ transition:
332
+ opacity 200ms var(--ttf-in-out) 0s,
333
+ z-index 0s 200ms,
334
+ visibility 0s 200ms;
335
+ }
336
+
337
+ @media (prefers-reduced-motion) {
338
+ transition: none !important;
339
+ }
340
+ }
@@ -0,0 +1,171 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: NOTICES
4
+ //
5
+ // These are the styles for notices, which are used by alert users to
6
+ // information they might need. For further documentation of these styles,
7
+ // please visit https://dialpad.design/components/notices
8
+ //
9
+ // ============================================================================
10
+ // $ BASE WRAPPER
11
+ // ----------------------------------------------------------------------------
12
+
13
+ .d-notice,
14
+ .d-banner,
15
+ .d-toast {
16
+ // Component CSS Vars
17
+ // ------------------------------------------------------------------------
18
+ --notice-color-background: var(--dt-color-surface-secondary);
19
+ --notice-color-text: var(--dt-color-foreground-primary);
20
+ --notice-color-icon: var(--notice-color-text);
21
+ --notice-color-shadow: hsla(var(--dt-color-black-900-hsl) / 0.06);
22
+ --notice-padding: var(--dt-space-500);
23
+ --notice-font-size: var(--dt-font-size-200);
24
+ --notice-line-height: var(--dt-font-line-height-300);
25
+ --notice-border-radius: var(--dt-size-400);
26
+ --notice-box-shadow: 0 0 0 var(--dt-size-100) var(--notice-color-shadow) inset;
27
+
28
+ // Base Styles
29
+ // ------------------------------------------------------------------------
30
+ display: flex;
31
+ align-items: center;
32
+ box-sizing: border-box;
33
+ width: 100%;
34
+ max-width: var(--dt-size-1020);
35
+ padding: var(--notice-padding);
36
+ color: var(--notice-color-text);
37
+ font-size: var(--notice-font-size);
38
+ line-height: var(--notice-line-height);
39
+ background-color: var(--notice-color-background);
40
+ border-radius: var(--notice-border-radius);
41
+ box-shadow: var(--notice-box-shadow);
42
+ }
43
+
44
+ // ============================================================================
45
+ // $ NOTICE AREAS
46
+ // ============================================================================
47
+ // $$ CONTENT
48
+ // ----------------------------------------------------------------------------
49
+ .d-notice__content {
50
+ display: flex;
51
+ flex: 1 auto;
52
+ flex-direction: column;
53
+ margin-right: var(--dt-space-500);
54
+ }
55
+
56
+ // $$ ACTIONS
57
+ // ----------------------------------------------------------------------------
58
+ .d-notice__actions {
59
+ display: flex;
60
+ flex: 0 auto;
61
+ gap: var(--dt-space-400);
62
+ align-items: center;
63
+
64
+ button {
65
+ color: var(--notice-color-text);
66
+ }
67
+ }
68
+
69
+ // $$ ICON
70
+ // ----------------------------------------------------------------------------
71
+ .d-notice__icon {
72
+ display: flex;
73
+ flex: 0 auto;
74
+ margin-right: var(--dt-space-450);
75
+ color: var(--notice-color-icon);
76
+
77
+ .d-banner & {
78
+ margin-right: var(--dt-space-400);
79
+ }
80
+ }
81
+
82
+ // ============================================================================
83
+ // $ COPY STYLES
84
+ // ============================================================================
85
+ .d-notice__title {
86
+ font-weight: var(--dt-font-weight-bold);
87
+ font-size: inherit;
88
+ }
89
+
90
+ .d-notice__message {
91
+ .d-notice__title:not([hidden]) + & {
92
+ font-size: var(--dt-font-size-100);
93
+ }
94
+ }
95
+
96
+ // ============================================================================
97
+ // $ STYLES
98
+ // ============================================================================
99
+ // $$ DEFAULT IMPORTANT
100
+ // ----------------------------------------------------------------------------
101
+ .d-notice.d-notice--important,
102
+ .d-banner.d-banner--important,
103
+ .d-toast.d-toast--important {
104
+ --notice-color-background: var(--dt-color-surface-strong);
105
+ --notice-color-text: var(--dt-color-foreground-primary-inverted);
106
+ --notice-color-icon: var(--notice-color-text);
107
+ --notice-color-shadow: transparent;
108
+ }
109
+
110
+ // $$ ERROR
111
+ // ----------------------------------------------------------------------------
112
+ .d-notice--error,
113
+ .d-banner--error,
114
+ .d-toast--error {
115
+ --notice-color-background: var(--dt-color-surface-critical);
116
+ --notice-color-icon: var(--dt-color-red-400);
117
+
118
+ &.d-notice--important,
119
+ &.d-banner--important,
120
+ &.d-toast--important {
121
+ --notice-color-background: var(--dt-color-surface-critical-strong);
122
+ }
123
+ }
124
+
125
+ // $$ INFO
126
+ // ----------------------------------------------------------------------------
127
+ .d-notice--info,
128
+ .d-banner--info,
129
+ .d-toast--info {
130
+ --notice-color-background: var(--dt-color-surface-info);
131
+ --notice-color-icon: var(--dt-color-blue-500);
132
+
133
+ &.d-notice--important,
134
+ &.d-banner--important,
135
+ &.d-toast--important {
136
+ --notice-color-background: var(--dt-color-surface-info-strong);
137
+ --notice-color-text: var(--dt-color-foreground-primary-inverted);
138
+ }
139
+ }
140
+
141
+ // $$ SUCCESS
142
+ // ----------------------------------------------------------------------------
143
+ .d-notice--success,
144
+ .d-banner--success,
145
+ .d-toast--success {
146
+ --notice-color-background: var(--dt-color-surface-success);
147
+ --notice-color-icon: var(--dt-color-green-400);
148
+
149
+ &.d-notice--important,
150
+ &.d-banner--important,
151
+ &.d-toast--important {
152
+ --notice-color-background: var(--dt-color-surface-success-strong);
153
+ --notice-color-text: var(--dt-color-foreground-primary-inverted);
154
+ }
155
+ }
156
+
157
+ // $$ WARNING
158
+ // ----------------------------------------------------------------------------
159
+ .d-notice--warning,
160
+ .d-banner--warning,
161
+ .d-toast--warning {
162
+ --notice-color-background: var(--dt-color-surface-warning);
163
+ --notice-color-icon: var(--dt-color-gold-400);
164
+
165
+ &.d-notice--important,
166
+ &.d-banner--important,
167
+ &.d-toast--important {
168
+ --notice-color-background: var(--dt-color-surface-warning-strong);
169
+ --notice-color-text: var(--dt-color-neutral-black);
170
+ }
171
+ }