@vgip/meta-ui 2.0.0 → 2.1.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 (206) hide show
  1. package/fesm2022/vgip-meta-ui.mjs +5614 -78
  2. package/fesm2022/vgip-meta-ui.mjs.map +1 -1
  3. package/index.d.ts +709 -5
  4. package/package.json +5 -8
  5. package/vendor/volta3/README.md +1 -0
  6. package/vendor/volta3/fonts/Spezia-Regular.eot +0 -0
  7. package/vendor/volta3/fonts/Spezia-Regular.ttf +0 -0
  8. package/vendor/volta3/fonts/Spezia-Regular.woff +0 -0
  9. package/vendor/volta3/fonts/Spezia-Regular.woff2 +0 -0
  10. package/vendor/volta3/fonts/Spezia-SemiBold.eot +0 -0
  11. package/vendor/volta3/fonts/Spezia-SemiBold.ttf +0 -0
  12. package/vendor/volta3/fonts/Spezia-SemiBold.woff +0 -0
  13. package/vendor/volta3/fonts/Spezia-SemiBold.woff2 +0 -0
  14. package/vendor/volta3/fonts/Spezia-SemiMonoSemiBold.eot +0 -0
  15. package/vendor/volta3/fonts/Spezia-SemiMonoSemiBold.ttf +0 -0
  16. package/vendor/volta3/fonts/Spezia-SemiMonoSemiBold.woff +0 -0
  17. package/vendor/volta3/fonts/Spezia-SemiMonoSemiBold.woff2 +0 -0
  18. package/vendor/volta3/fonts/Spezia-WideMedium.eot +0 -0
  19. package/vendor/volta3/fonts/Spezia-WideMedium.ttf +0 -0
  20. package/vendor/volta3/fonts/Spezia-WideMedium.woff +0 -0
  21. package/vendor/volta3/fonts/Spezia-WideMedium.woff2 +0 -0
  22. package/vendor/volta3/scss/components/_accordions.scss +165 -0
  23. package/vendor/volta3/scss/components/_badge.scss +325 -0
  24. package/vendor/volta3/scss/components/_blockquote.scss +35 -0
  25. package/vendor/volta3/scss/components/_boxes.scss +113 -0
  26. package/vendor/volta3/scss/components/_buttons.scss +794 -0
  27. package/vendor/volta3/scss/components/_callouts.scss +427 -0
  28. package/vendor/volta3/scss/components/_card.scss +421 -0
  29. package/vendor/volta3/scss/components/_color-classes.scss +186 -0
  30. package/vendor/volta3/scss/components/_dialpad.scss +224 -0
  31. package/vendor/volta3/scss/components/_dropdowns.scss +495 -0
  32. package/vendor/volta3/scss/components/_empties.scss +77 -0
  33. package/vendor/volta3/scss/components/_flash-messages.scss +39 -0
  34. package/vendor/volta3/scss/components/_form-elements.scss +879 -0
  35. package/vendor/volta3/scss/components/_lists.scss +427 -0
  36. package/vendor/volta3/scss/components/_modals.scss +227 -0
  37. package/vendor/volta3/scss/components/_popups.scss +173 -0
  38. package/vendor/volta3/scss/components/_progress.scss +28 -0
  39. package/vendor/volta3/scss/components/_spinner.scss +105 -0
  40. package/vendor/volta3/scss/components/_steps.scss +242 -0
  41. package/vendor/volta3/scss/components/_switch.scss +353 -0
  42. package/vendor/volta3/scss/components/_tables.scss +739 -0
  43. package/vendor/volta3/scss/components/_tabs.scss +296 -0
  44. package/vendor/volta3/scss/components/_text-separator.scss +61 -0
  45. package/vendor/volta3/scss/components/_tooltips.scss +152 -0
  46. package/vendor/volta3/scss/components/side-navigation/_side-nav--aqua.scss +179 -0
  47. package/vendor/volta3/scss/components/side-navigation/_side-nav--collapsible.scss +381 -0
  48. package/vendor/volta3/scss/components/side-navigation/_side-nav--dark.scss +196 -0
  49. package/vendor/volta3/scss/components/side-navigation/_side-nav--light.scss +174 -0
  50. package/vendor/volta3/scss/components/side-navigation/_side-nav--structure.scss +631 -0
  51. package/vendor/volta3/scss/components/side-navigation/_side-nav--tabs.scss +88 -0
  52. package/vendor/volta3/scss/flatpickr/_flatpickr-volta.scss +407 -0
  53. package/vendor/volta3/scss/flatpickr/_flatpickr.css +785 -0
  54. package/vendor/volta3/scss/layout/_article.scss +119 -0
  55. package/vendor/volta3/scss/layout/_utils.scss +174 -0
  56. package/vendor/volta3/scss/lib/_grid.scss +374 -0
  57. package/vendor/volta3/scss/lib/_mediaqueries.scss +52 -0
  58. package/vendor/volta3/scss/lib/_reset.scss +110 -0
  59. package/vendor/volta3/scss/lib/_type.scss +345 -0
  60. package/vendor/volta3/scss/lib/_utils.scss +26 -0
  61. package/vendor/volta3/scss/lib/_variables.scss +115 -0
  62. package/vendor/volta3/scss/prism/_prism-volta.scss +390 -0
  63. package/vendor/volta3/scss/prism/_prism.css +326 -0
  64. package/vendor/volta3/scss/templates/volta-error-page.scss +57 -0
  65. package/vendor/volta3/scss/templates/volta-templates.scss +114 -0
  66. package/vendor/volta3/scss/volta-flatpickr.scss +10 -0
  67. package/vendor/volta3/scss/volta-prism.scss +7 -0
  68. package/vendor/volta3/scss/volta.scss +39 -0
  69. package/vendor/volta3/symbol/volta-brand-icons.svg +1 -0
  70. package/vendor/volta3/symbol/volta-flag-icons.svg +1 -0
  71. package/vendor/volta3/symbol/volta-icons.svg +1 -0
  72. package/esm2022/lib/common/fieldNormalizer/boolean.mjs +0 -12
  73. package/esm2022/lib/common/fieldNormalizer/datetime.mjs +0 -9
  74. package/esm2022/lib/common/fieldNormalizer/index.mjs +0 -183
  75. package/esm2022/lib/common/fieldNormalizer/number.mjs +0 -14
  76. package/esm2022/lib/common/fieldNormalizer/options.mjs +0 -50
  77. package/esm2022/lib/common/fieldNormalizer/radio.mjs +0 -30
  78. package/esm2022/lib/common/fieldNormalizer/reference.mjs +0 -36
  79. package/esm2022/lib/common/fieldNormalizer/richtext.mjs +0 -15
  80. package/esm2022/lib/common/fieldNormalizer/string.mjs +0 -24
  81. package/esm2022/lib/common/fieldNormalizer/text.mjs +0 -18
  82. package/esm2022/lib/common/fieldNormalizer/uniqueNameFilter.mjs +0 -23
  83. package/esm2022/lib/common/metaAutofocus.directive.mjs +0 -35
  84. package/esm2022/lib/common/metaIcons.pipe.mjs +0 -29
  85. package/esm2022/lib/common/metaModel.pipe.mjs +0 -23
  86. package/esm2022/lib/common/metaNormalizer.mjs +0 -375
  87. package/esm2022/lib/common/metaStripHtml.pipe.mjs +0 -22
  88. package/esm2022/lib/common/utils/colorThemes.mjs +0 -77
  89. package/esm2022/lib/common/utils/indexedDbStore/index.mjs +0 -228
  90. package/esm2022/lib/common/utils/relativeTimeBuilder.mjs +0 -49
  91. package/esm2022/lib/common/utils/resourceCardLabel.mjs +0 -24
  92. package/esm2022/lib/common/utils/smartProp.mjs +0 -31
  93. package/esm2022/lib/common/utils/templateBuilder.mjs +0 -103
  94. package/esm2022/lib/fieldAbstract.mjs +0 -291
  95. package/esm2022/lib/fieldBoolean/index.mjs +0 -53
  96. package/esm2022/lib/fieldComposite/index.mjs +0 -82
  97. package/esm2022/lib/fieldDatetime/index.mjs +0 -365
  98. package/esm2022/lib/fieldHidden/index.mjs +0 -18
  99. package/esm2022/lib/fieldInput/index.mjs +0 -475
  100. package/esm2022/lib/fieldList/index.mjs +0 -74
  101. package/esm2022/lib/fieldRadio/index.mjs +0 -88
  102. package/esm2022/lib/fieldReference/index.mjs +0 -836
  103. package/esm2022/lib/fieldRichtext/index.mjs +0 -93
  104. package/esm2022/lib/fieldSelect/index.mjs +0 -569
  105. package/esm2022/lib/fieldText/index.mjs +0 -83
  106. package/esm2022/lib/fieldUnknown/index.mjs +0 -19
  107. package/esm2022/lib/index.mjs +0 -163
  108. package/esm2022/lib/layout/index.mjs +0 -214
  109. package/esm2022/lib/metaField/index.mjs +0 -151
  110. package/esm2022/lib/refDialog/index.mjs +0 -135
  111. package/esm2022/lib/resource/index.mjs +0 -525
  112. package/esm2022/lib/resourceCard/index.mjs +0 -40
  113. package/esm2022/lib/services/metaContext/index.mjs +0 -52
  114. package/esm2022/lib/services/metaMsg/index.mjs +0 -84
  115. package/esm2022/lib/services/metaReference/index.mjs +0 -94
  116. package/esm2022/lib/services/metaResource/index.mjs +0 -141
  117. package/esm2022/lib/services/metaResource/metaHttpClient.mjs +0 -64
  118. package/esm2022/lib/services/metaTracker/index.mjs +0 -31
  119. package/esm2022/lib/services/resourceDrafts/index.mjs +0 -69
  120. package/esm2022/public-api.mjs +0 -5
  121. package/esm2022/vgip-meta-ui.mjs +0 -5
  122. package/fesm2022/vgip-meta-ui-fieldAbstract-baeaf24d.mjs +0 -399
  123. package/fesm2022/vgip-meta-ui-fieldAbstract-baeaf24d.mjs.map +0 -1
  124. package/fesm2022/vgip-meta-ui-index-0184d5ec.mjs +0 -478
  125. package/fesm2022/vgip-meta-ui-index-0184d5ec.mjs.map +0 -1
  126. package/fesm2022/vgip-meta-ui-index-1ddfcce0.mjs +0 -86
  127. package/fesm2022/vgip-meta-ui-index-1ddfcce0.mjs.map +0 -1
  128. package/fesm2022/vgip-meta-ui-index-37358620.mjs +0 -158
  129. package/fesm2022/vgip-meta-ui-index-37358620.mjs.map +0 -1
  130. package/fesm2022/vgip-meta-ui-index-4e9c383f.mjs +0 -95
  131. package/fesm2022/vgip-meta-ui-index-4e9c383f.mjs.map +0 -1
  132. package/fesm2022/vgip-meta-ui-index-4fa919c0.mjs +0 -79
  133. package/fesm2022/vgip-meta-ui-index-4fa919c0.mjs.map +0 -1
  134. package/fesm2022/vgip-meta-ui-index-5f68724c.mjs +0 -576
  135. package/fesm2022/vgip-meta-ui-index-5f68724c.mjs.map +0 -1
  136. package/fesm2022/vgip-meta-ui-index-6d502a71.mjs +0 -869
  137. package/fesm2022/vgip-meta-ui-index-6d502a71.mjs.map +0 -1
  138. package/fesm2022/vgip-meta-ui-index-7741951a.mjs +0 -23
  139. package/fesm2022/vgip-meta-ui-index-7741951a.mjs.map +0 -1
  140. package/fesm2022/vgip-meta-ui-index-80ab405f.mjs +0 -93
  141. package/fesm2022/vgip-meta-ui-index-80ab405f.mjs.map +0 -1
  142. package/fesm2022/vgip-meta-ui-index-926ae006.mjs +0 -58
  143. package/fesm2022/vgip-meta-ui-index-926ae006.mjs.map +0 -1
  144. package/fesm2022/vgip-meta-ui-index-b979685f.mjs +0 -87
  145. package/fesm2022/vgip-meta-ui-index-b979685f.mjs.map +0 -1
  146. package/fesm2022/vgip-meta-ui-index-c943b7c0.mjs +0 -24
  147. package/fesm2022/vgip-meta-ui-index-c943b7c0.mjs.map +0 -1
  148. package/fesm2022/vgip-meta-ui-index-ce185ca2.mjs +0 -2062
  149. package/fesm2022/vgip-meta-ui-index-ce185ca2.mjs.map +0 -1
  150. package/fesm2022/vgip-meta-ui-index-f8b00f06.mjs +0 -370
  151. package/fesm2022/vgip-meta-ui-index-f8b00f06.mjs.map +0 -1
  152. package/fesm2022/vgip-meta-ui-index-fb7f54f5.mjs +0 -154
  153. package/fesm2022/vgip-meta-ui-index-fb7f54f5.mjs.map +0 -1
  154. package/fesm2022/vgip-meta-ui-metaModel.pipe-6b803e66.mjs +0 -26
  155. package/fesm2022/vgip-meta-ui-metaModel.pipe-6b803e66.mjs.map +0 -1
  156. package/fesm2022/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs +0 -51
  157. package/fesm2022/vgip-meta-ui-relativeTimeBuilder-31791ce4.mjs.map +0 -1
  158. package/lib/common/fieldNormalizer/boolean.d.ts +0 -1
  159. package/lib/common/fieldNormalizer/datetime.d.ts +0 -1
  160. package/lib/common/fieldNormalizer/index.d.ts +0 -1
  161. package/lib/common/fieldNormalizer/number.d.ts +0 -1
  162. package/lib/common/fieldNormalizer/options.d.ts +0 -1
  163. package/lib/common/fieldNormalizer/radio.d.ts +0 -1
  164. package/lib/common/fieldNormalizer/reference.d.ts +0 -1
  165. package/lib/common/fieldNormalizer/richtext.d.ts +0 -1
  166. package/lib/common/fieldNormalizer/string.d.ts +0 -1
  167. package/lib/common/fieldNormalizer/text.d.ts +0 -1
  168. package/lib/common/fieldNormalizer/uniqueNameFilter.d.ts +0 -1
  169. package/lib/common/metaAutofocus.directive.d.ts +0 -10
  170. package/lib/common/metaIcons.pipe.d.ts +0 -10
  171. package/lib/common/metaModel.pipe.d.ts +0 -7
  172. package/lib/common/metaNormalizer.d.ts +0 -1
  173. package/lib/common/metaStripHtml.pipe.d.ts +0 -7
  174. package/lib/common/utils/colorThemes.d.ts +0 -8
  175. package/lib/common/utils/indexedDbStore/index.d.ts +0 -25
  176. package/lib/common/utils/relativeTimeBuilder.d.ts +0 -1
  177. package/lib/common/utils/resourceCardLabel.d.ts +0 -1
  178. package/lib/common/utils/smartProp.d.ts +0 -2
  179. package/lib/common/utils/templateBuilder.d.ts +0 -1
  180. package/lib/fieldAbstract.d.ts +0 -61
  181. package/lib/fieldBoolean/index.d.ts +0 -10
  182. package/lib/fieldComposite/index.d.ts +0 -14
  183. package/lib/fieldDatetime/index.d.ts +0 -26
  184. package/lib/fieldHidden/index.d.ts +0 -6
  185. package/lib/fieldInput/index.d.ts +0 -35
  186. package/lib/fieldList/index.d.ts +0 -15
  187. package/lib/fieldRadio/index.d.ts +0 -14
  188. package/lib/fieldReference/index.d.ts +0 -73
  189. package/lib/fieldRichtext/index.d.ts +0 -27
  190. package/lib/fieldSelect/index.d.ts +0 -49
  191. package/lib/fieldText/index.d.ts +0 -15
  192. package/lib/fieldUnknown/index.d.ts +0 -6
  193. package/lib/index.d.ts +0 -65
  194. package/lib/layout/index.d.ts +0 -47
  195. package/lib/metaField/index.d.ts +0 -29
  196. package/lib/refDialog/index.d.ts +0 -33
  197. package/lib/resource/index.d.ts +0 -68
  198. package/lib/resourceCard/index.d.ts +0 -17
  199. package/lib/services/metaContext/index.d.ts +0 -32
  200. package/lib/services/metaMsg/index.d.ts +0 -14
  201. package/lib/services/metaReference/index.d.ts +0 -11
  202. package/lib/services/metaResource/index.d.ts +0 -31
  203. package/lib/services/metaResource/metaHttpClient.d.ts +0 -15
  204. package/lib/services/metaTracker/index.d.ts +0 -19
  205. package/lib/services/resourceDrafts/index.d.ts +0 -26
  206. package/public-api.d.ts +0 -1
@@ -0,0 +1,631 @@
1
+ @use "../../lib/mediaqueries";
2
+ @use "../../lib/utils";
3
+ @use "../../lib/variables";
4
+
5
+ //
6
+ // Copyright (c) 2018-present, Vonage. All rights reserved.
7
+ //
8
+
9
+ $hover-blue: #649abc;
10
+ $hover-pink: #a4237a;
11
+
12
+ .Vlt-sidenav {
13
+ background: variables.$grey-lighter;
14
+ display: flex;
15
+ flex: 0 0 270px;
16
+ flex-flow: column;
17
+ font-weight: 600;
18
+ height: 100vh;
19
+ padding-bottom: 10px;
20
+ width: 270px;
21
+
22
+ @media #{mediaqueries.$S-only} {
23
+ height: 100vh;
24
+ left: 0;
25
+ padding-top: 5px;
26
+ position: fixed;
27
+ top: 0;
28
+ transform: translate(-100vw, 0);
29
+ transition: transform 0.2s;
30
+ width: 80vw;
31
+ z-index: variables.$z-index-sidenav-mobile;
32
+
33
+ &_visible {
34
+ box-shadow: 4px 0 12px rgba(variables.$black, 0.15), 20vw 0 0 rgba(variables.$black, 0.15);
35
+ transform: translate(0, 0);
36
+ }
37
+ }
38
+
39
+ &--animate {
40
+ transition: width 0.2s, flex-basis 0.2s;
41
+ }
42
+
43
+ &__mobile-trigger {
44
+ display: none;
45
+
46
+ @media #{mediaqueries.$S-only} {
47
+ display: block;
48
+ }
49
+ }
50
+
51
+ &__block {
52
+ flex-shrink: 0;
53
+ padding: 10px 12px;
54
+ position: relative;
55
+
56
+ &:before,
57
+ &:after {
58
+ content: '';
59
+ display: none;
60
+ flex: 0 0 100%;
61
+ height: 1px;
62
+ left: 20px;
63
+ margin: 0 auto;
64
+ position: absolute;
65
+ top: 0;
66
+ width: calc(100% - 40px);
67
+ }
68
+
69
+ &:after {
70
+ bottom: 0;
71
+ top: auto;
72
+ }
73
+
74
+ img,
75
+ svg {
76
+ max-width: 100%;
77
+ }
78
+
79
+ &--logo {
80
+ align-items: center;
81
+ display: flex;
82
+ flex-flow: row wrap;
83
+ padding-bottom: 15px;
84
+ padding-top: 15px;
85
+
86
+ .Vlt-sidenav__logo {
87
+ flex: 1;
88
+ margin-left: variables.$unit0;
89
+
90
+ svg {
91
+ width: 100%; // For IE
92
+ }
93
+ }
94
+ }
95
+
96
+ &--link {
97
+ padding: 0;
98
+ }
99
+
100
+ &--border-top {
101
+ &:before {
102
+ display: block;
103
+ }
104
+ }
105
+
106
+ &--border-bottom {
107
+ &:after {
108
+ display: block;
109
+ }
110
+ }
111
+ }
112
+
113
+ &__scroll {
114
+ background-image: linear-gradient(to bottom, rgba(variables.$black, 0.05) 0%, transparent 4px), //top
115
+ linear-gradient(to bottom, transparent calc(100% - 4px), rgba(variables.$black, 0.05) 100%); //bottom
116
+ background-position: 20px 0;
117
+ background-repeat: no-repeat;
118
+ background-size: calc(100% - 40px) 100%, calc(100% - 40px) 100%, 14px 100%, 14px 100%;
119
+ flex: auto; // not flex: 1 because IE11 needs flex-basis: auto
120
+ height: 100%; // needed for shadowing, won't be 100% it will adjust to flex
121
+ overflow-y: auto;
122
+ position: static; // never give this position relative for any reason, it will prevent tooltips and dropdowns
123
+
124
+ @media #{mediaqueries.$S-only} {
125
+ -webkit-overflow-scrolling: touch;
126
+ overflow-y: scroll;
127
+ }
128
+
129
+ .Vlt-sidemenu {
130
+ background: linear-gradient(0deg, variables.$grey-lighter 10px, transparent 10px), // top
131
+ linear-gradient(0deg, transparent calc(100% - 10px), variables.$grey-lighter calc(100% - 10px)) 100% 0; // bottom
132
+ }
133
+ }
134
+
135
+ .Vlt-sidemenu {
136
+ list-style: none;
137
+ margin: 0;
138
+ min-height: 100%; // not height, for shadowing
139
+ padding: 0 12px 10px; // space to allow for the browser url notice
140
+
141
+ ul {
142
+ list-style: none;
143
+ margin: 0;
144
+ padding: 0;
145
+ }
146
+
147
+ // Setting main margins with nesting
148
+
149
+ .Vlt-sidemenu__title {
150
+ margin-bottom: 0;
151
+ margin-left: 0px;
152
+ }
153
+
154
+ li {
155
+ margin: 0;
156
+ padding: 0;
157
+ padding-top: 3px;
158
+
159
+ .Vlt-sidemenu__link,
160
+ .Vlt-sidemenu__trigger {
161
+ font-size: 1.4rem;
162
+ padding-left: 10px;
163
+ padding-right: 35px;
164
+
165
+ & + .Vlt-sidemenu__tooltip {
166
+ display: none;
167
+ }
168
+ }
169
+
170
+ li {
171
+ &:first-child {
172
+ padding-top: 0px;
173
+ }
174
+
175
+ .Vlt-sidemenu__link,
176
+ .Vlt-sidemenu__trigger {
177
+ margin-left: 9px;
178
+ padding-left: 12px;
179
+
180
+ svg {
181
+ display: none;
182
+ }
183
+ }
184
+
185
+ .Vlt-sidemenu__title {
186
+ padding-left: 21px;
187
+ }
188
+ }
189
+ }
190
+
191
+ // Dropdown arrow
192
+ &__trigger {
193
+ + ul {
194
+ border-left: 1px solid variables.$grey-light;
195
+ }
196
+
197
+ span:last-of-type:not(.Vlt-badge) {
198
+ &:after {
199
+ $fill-color: utils.encode-hex-code(variables.$grey-dark);
200
+ background-image: url('data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.38326%207.96544C3.58628%207.68629%203.97717%207.62457%204.25632%207.82759L9.99983%2012.0047L15.7433%207.82759C16.0225%207.62457%2016.4134%207.68629%2016.6164%207.96544C16.8194%208.2446%2016.7577%208.63549%2016.4785%208.83851L10.3674%2013.283C10.1483%2013.4423%209.85138%2013.4423%209.63222%2013.283L3.52111%208.83851C3.24195%208.63549%203.18023%208.2446%203.38326%207.96544Z%22%20fill%3D%22#{$fill-color}%22%2F%3E%0A%3C%2Fsvg%3E');
201
+ background-position: center center;
202
+ background-repeat: no-repeat;
203
+ background-size: contain;
204
+ content: '';
205
+ display: inline-block;
206
+ height: 20px;
207
+ position: absolute;
208
+ right: 10px;
209
+ top: 8px;
210
+ transition: transform 0.2s;
211
+ width: 16px;
212
+ }
213
+ }
214
+
215
+ &_active {
216
+ span:last-of-type:not(.Vlt-badge) {
217
+ &:after {
218
+ transform: rotate(180deg);
219
+ }
220
+ }
221
+ }
222
+
223
+ &_current {
224
+ &:not(.Vlt-sidemenu__trigger_active) {
225
+ background: variables.$grey-light;
226
+ }
227
+ }
228
+ }
229
+
230
+ &__link,
231
+ &__trigger {
232
+ align-items: flex-start;
233
+ border-radius: 5px;
234
+ color: variables.$black;
235
+ cursor: pointer;
236
+ display: flex;
237
+ justify-content: left;
238
+ line-height: 1.5;
239
+ margin: 0;
240
+ padding: variables.$unit1 10px;
241
+ text-decoration: none;
242
+ transition: background 0.2s;
243
+
244
+ &:hover {
245
+ background: variables.$grey-light;
246
+ text-decoration: none;
247
+ }
248
+
249
+ &_active:not(.Vlt-sidemenu__trigger_active) {
250
+ background: variables.$white;
251
+ color: variables.$black;
252
+ font-weight: 600;
253
+
254
+ svg {
255
+ fill: variables.$black;
256
+ }
257
+ }
258
+
259
+ &--disabled {
260
+ cursor: default;
261
+ pointer-events: none;
262
+ }
263
+
264
+ svg {
265
+ fill: variables.$black;
266
+ flex: 0 0 17px;
267
+ height: 21px;
268
+ margin-right: 12px;
269
+ vertical-align: middle;
270
+ width: 17px;
271
+ }
272
+
273
+ &--disabled {
274
+ color: variables.$grey;
275
+
276
+ svg {
277
+ fill: variables.$grey;
278
+ }
279
+ }
280
+
281
+ .Vlt-badge {
282
+ margin-left: 8px;
283
+ margin-top: 1px;
284
+ position: relative;
285
+ z-index: 2;
286
+ }
287
+
288
+ .Vlt-sidemenu__label {
289
+ .Vlt-badge {
290
+ margin-bottom: 2px;
291
+ margin-top: 0;
292
+ }
293
+ }
294
+ }
295
+
296
+ // Titles
297
+ &__title {
298
+ color: variables.$grey-darker;
299
+ font-size: 1.2rem;
300
+ font-weight: 600;
301
+ margin: 0;
302
+ padding: 8px 10px;
303
+ text-transform: uppercase;
304
+
305
+ &--border {
306
+ border-top: 1px solid variables.$grey-light;
307
+ margin-top: 8px;
308
+ padding-top: 19px;
309
+ }
310
+ }
311
+
312
+ // Behavior of triggers (expanding and collapsing branches)
313
+
314
+ &__trigger {
315
+ position: relative;
316
+
317
+ &:not(.Vlt-sidemenu__trigger_active) + ul {
318
+ margin: 0;
319
+ opacity: 0;
320
+ padding: 0;
321
+ transition: opacity 0.1s,
322
+ padding 0.2s,
323
+ margin 0.2s;
324
+
325
+ & * {
326
+ border: 0;
327
+ font-size: 0 !important;
328
+ line-height: 0;
329
+ margin-bottom: 0 !important;
330
+ margin-top: 0 !important;
331
+ opacity: 0;
332
+ padding-bottom: 0 !important;
333
+ padding-top: 0 !important;
334
+ transition: all 0.1s;
335
+
336
+ svg,
337
+ .Vlt-badge {
338
+ height: 0;
339
+ transition: height 0.1s;
340
+ }
341
+ }
342
+ }
343
+
344
+ &_active {
345
+
346
+ & + ul {
347
+ margin: 2px 0 2px 18px;
348
+ margin-bottom: 0px;
349
+ margin-left: 18px;
350
+ margin-top: 2px;
351
+ transition: font-size 0.2s,
352
+ margin 0.2s,
353
+ opacity 0.2s,
354
+ padding 0.2s;
355
+
356
+ & > * {
357
+ opacity: 1;
358
+ transition: all 0.2s;
359
+ }
360
+ }
361
+ }
362
+
363
+ .Vlt-sidemenu__label {
364
+ max-width: 100%;
365
+ }
366
+ }
367
+
368
+ // Compressed version
369
+ // For longer menus, it compresses the padding of menu items without icons while leaving the ones with icons the same
370
+
371
+ &__list--compressed {
372
+ .Vlt-sidemenu__link,
373
+ .Vlt-sidemenu__trigger {
374
+ padding: variables.$unit0 10px;
375
+ }
376
+
377
+ .Vlt-sidemenu__trigger {
378
+ margin-bottom: 4px;
379
+ }
380
+ }
381
+ }
382
+
383
+ &__mobile {
384
+ align-items: center;
385
+ display: flex;
386
+ justify-content: space-between;
387
+ left: 0;
388
+ padding: 10px;
389
+ position: fixed;
390
+ top: 0;
391
+ width: 100%;
392
+
393
+ @media #{mediaqueries.$M-plus} {
394
+ display: none;
395
+ }
396
+
397
+ &__logo {
398
+ height: 34px;
399
+ }
400
+
401
+ button {
402
+ @extend .reset-button !optional;
403
+ flex: 0 0 40px;
404
+ height: 40px;
405
+
406
+ svg {
407
+ height: 24px;
408
+ width: 24px;
409
+ }
410
+ }
411
+
412
+ .Vlt-template--header & {
413
+ padding-bottom: 5px;
414
+ padding-top: 5px;
415
+ }
416
+ }
417
+
418
+ hr {
419
+ border-top: 1px solid variables.$grey-light;
420
+ }
421
+
422
+ .Vlt-sidenav {
423
+ &__link {
424
+ &:hover {
425
+ background: variables.$grey-light;
426
+ }
427
+ }
428
+ }
429
+
430
+ .Vlt-sidetabs {
431
+
432
+ &--bottom {
433
+ border-top: 1px solid variables.$grey-light;
434
+ }
435
+
436
+ &--top {
437
+ border-bottom: 1px solid variables.$grey-light;
438
+ }
439
+
440
+ .Vlt-js-tabs__link {
441
+
442
+ svg {
443
+ fill: variables.$grey-dark !important;
444
+ }
445
+
446
+ &:hover {
447
+ &:after {
448
+ background: variables.$grey-lighter;
449
+ }
450
+
451
+ svg {
452
+ fill: variables.$grey-darker !important;
453
+ }
454
+ }
455
+
456
+ &_active,
457
+ &:active {
458
+ &:after {
459
+ background: variables.$black;
460
+ }
461
+
462
+ svg {
463
+ fill: variables.$grey-darker !important;
464
+ }
465
+ }
466
+ }
467
+ }
468
+
469
+ .Vlt-sidenav__block {
470
+ &:before,
471
+ &:after {
472
+ background: variables.$grey-light;
473
+ }
474
+
475
+ &--logo {
476
+ .Vlt-sidenav__collapse {
477
+ svg {
478
+ fill: variables.$grey-dark;
479
+ }
480
+ }
481
+ }
482
+ }
483
+
484
+ &.Vlt-sidenav--collapsed {
485
+ @media #{mediaqueries.$M-plus} {
486
+ .Vlt-sidemenu__title {
487
+ border-bottom: 1px solid variables.$grey-light;
488
+ }
489
+ }
490
+ }
491
+
492
+ &.Vlt-sidenav--rounded {
493
+ &,
494
+ .Vlt-sidenav__scroll {
495
+ border-radius: 0 16px 16px 0;
496
+ }
497
+ }
498
+
499
+ &.Vlt-sidenav--active-blue,
500
+ &.Vlt-sidenav--active-green,
501
+ &.Vlt-sidenav--active-indigo,
502
+ &.Vlt-sidenav--active-orange,
503
+ &.Vlt-sidenav--active-purple,
504
+ &.Vlt-sidenav--active-purple-dark,
505
+ &.Vlt-sidenav--active-red,
506
+ &.Vlt-sidenav--active-yellow {
507
+ .Vlt-sidemenu {
508
+ &__link {
509
+ &_active:not(.Vlt-sidemenu__trigger_active) {
510
+ color: variables.$white;
511
+
512
+ svg {
513
+ fill: variables.$white;
514
+ }
515
+ }
516
+ }
517
+ }
518
+ }
519
+
520
+ &.Vlt-sidenav--active-white {
521
+ .Vlt-sidemenu {
522
+ &__link {
523
+ &_active:not(.Vlt-sidemenu__trigger_active) {
524
+ background: variables.$white;
525
+ }
526
+ }
527
+ }
528
+ }
529
+
530
+ &.Vlt-sidenav--active-grey {
531
+ .Vlt-sidemenu {
532
+ &__link {
533
+ &_active:not(.Vlt-sidemenu__trigger_active) {
534
+ background: variables.$grey-light;
535
+ }
536
+ }
537
+ }
538
+ }
539
+
540
+ &.Vlt-sidenav--active-blue {
541
+ .Vlt-sidemenu {
542
+ &__link {
543
+ &_active:not(.Vlt-sidemenu__trigger_active) {
544
+ background: variables.$blue;
545
+ }
546
+ }
547
+ }
548
+ }
549
+
550
+ &.Vlt-sidenav--active-green {
551
+ .Vlt-sidemenu {
552
+ &__link {
553
+ &_active:not(.Vlt-sidemenu__trigger_active) {
554
+ background: variables.$green;
555
+ }
556
+ }
557
+ }
558
+ }
559
+
560
+ &.Vlt-sidenav--active-indigo {
561
+ .Vlt-sidemenu {
562
+ &__link {
563
+ &_active:not(.Vlt-sidemenu__trigger_active) {
564
+ background: variables.$indigo;
565
+ }
566
+ }
567
+ }
568
+ }
569
+
570
+ &.Vlt-sidenav--active-orange {
571
+ .Vlt-sidemenu {
572
+ &__link {
573
+ &_active:not(.Vlt-sidemenu__trigger_active) {
574
+ background: variables.$orange;
575
+ }
576
+ }
577
+ }
578
+ }
579
+
580
+ &.Vlt-sidenav--active-purple {
581
+ .Vlt-sidemenu {
582
+ &__link {
583
+ &_active:not(.Vlt-sidemenu__trigger_active) {
584
+ background: variables.$purple;
585
+ }
586
+ }
587
+ }
588
+ }
589
+
590
+ &.Vlt-sidenav--active-purple-dark {
591
+ .Vlt-sidemenu {
592
+ &__link {
593
+ &_active:not(.Vlt-sidemenu__trigger_active) {
594
+ background: variables.$purple-dark;
595
+ }
596
+ }
597
+ }
598
+ }
599
+
600
+ &.Vlt-sidenav--active-red {
601
+ .Vlt-sidemenu {
602
+ &__link {
603
+ &_active:not(.Vlt-sidemenu__trigger_active) {
604
+ background: variables.$red;
605
+ }
606
+ }
607
+ }
608
+ }
609
+
610
+ &.Vlt-sidenav--active-yellow {
611
+ .Vlt-sidemenu {
612
+ &__link {
613
+ &_active:not(.Vlt-sidemenu__trigger_active) {
614
+ background: variables.$yellow;
615
+ }
616
+ }
617
+ }
618
+ }
619
+ }
620
+
621
+ body {
622
+ @media #{mediaqueries.$S-only} {
623
+ &.Vlt-body--has-sidenav {
624
+ padding-top: 60px;
625
+ }
626
+
627
+ &.Vlt-body--mobile-menu-open {
628
+ overflow: hidden;
629
+ }
630
+ }
631
+ }
@@ -0,0 +1,88 @@
1
+ @use "../../lib/mediaqueries";
2
+
3
+ //
4
+ // Copyright (c) 2018-present, Vonage. All rights reserved.
5
+ //
6
+
7
+ .Vlt-sidenav:not(.Vlt-sidenav--collapsed) .Vlt-sidetabs {
8
+ margin-left: 20px;
9
+ margin-right: 20px;
10
+
11
+ ul {
12
+ display: flex;
13
+ flex-shrink: 0;
14
+
15
+ li {
16
+ flex: 1;
17
+ }
18
+ }
19
+
20
+ &__label {
21
+ display: none;
22
+ }
23
+
24
+ &__trigger {
25
+ display: none;
26
+ }
27
+
28
+ .Vlt-js-tabs__link {
29
+ @extend .reset-button !optional;
30
+ align-items: center;
31
+ font-size: 1.3rem;
32
+ font-weight: 400;
33
+ height: 45px;
34
+ justify-content: center;
35
+ position: relative;
36
+ width: 100%;
37
+
38
+ &:after {
39
+ content: '';
40
+ height: 3px;
41
+ left: 50%;
42
+ position: absolute;
43
+ transition: none;
44
+ width: 0px;
45
+ }
46
+
47
+ @media #{mediaqueries.$L-plus} {
48
+ // To prevent problems in iOS this is only on large screens
49
+ &:hover {
50
+ &:after {
51
+ left: 0;
52
+ transition: all 0.2s;
53
+ width: 100%;
54
+ }
55
+ }
56
+ }
57
+
58
+ &_active,
59
+ &:active {
60
+ &:after {
61
+ left: 0;
62
+ width: 100%;
63
+ }
64
+ }
65
+ }
66
+
67
+ &--bottom {
68
+ padding-bottom: 5px;
69
+
70
+ .Vlt-sidetabs__link:after {
71
+ top: 0;
72
+ }
73
+ }
74
+
75
+ &--top {
76
+ padding-top: 5px;
77
+
78
+ .Vlt-sidetabs__link:after {
79
+ bottom: 0;
80
+ }
81
+ }
82
+
83
+ svg {
84
+ height: 24px;
85
+ transition: fill 0.2s;
86
+ width: 24px;
87
+ }
88
+ }