vgapp 0.1.1 → 0.1.2

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 (40) hide show
  1. package/app/modules/base-module.js +6 -1
  2. package/app/modules/module-fn.js +5 -7
  3. package/app/modules/vgdropdown/js/vgdropdown.js +16 -10
  4. package/app/modules/vgdropdown/scss/vgdropdown.css +47 -0
  5. package/app/modules/vgdropdown/scss/vgdropdown.css.map +1 -0
  6. package/app/modules/vgformsender/js/vgformsender.js +1 -1
  7. package/app/modules/vgformsender/scss/vgformsender.css +13 -0
  8. package/app/modules/vgformsender/scss/vgformsender.css.map +1 -0
  9. package/app/modules/vglawcookie/js/vglawcookie.js +182 -0
  10. package/app/modules/vglawcookie/scss/_variables.scss +14 -0
  11. package/app/modules/vglawcookie/scss/vglawcookie.css +87 -0
  12. package/app/modules/vglawcookie/scss/vglawcookie.css.map +1 -0
  13. package/app/modules/vglawcookie/scss/vglawcookie.scss +91 -0
  14. package/app/modules/vgmodal/js/vgmodal.js +22 -28
  15. package/app/modules/vgmodal/scss/vgmodal.css +3824 -0
  16. package/app/modules/vgmodal/scss/vgmodal.css.map +1 -0
  17. package/app/modules/vgnav/scss/vgnav.css +309 -0
  18. package/app/modules/vgnav/scss/vgnav.css.map +1 -0
  19. package/app/modules/vgrollup/js/vgrollup.js +10 -10
  20. package/app/modules/vgrollup/scss/vgrollup.css +41 -0
  21. package/app/modules/vgrollup/scss/vgrollup.css.map +1 -0
  22. package/app/modules/vgsidebar/js/vgsidebar.js +16 -5
  23. package/app/modules/vgsidebar/scss/vgsidebar.css +86 -0
  24. package/app/modules/vgsidebar/scss/vgsidebar.css.map +1 -0
  25. package/app/utils/js/components/alert.js +8 -0
  26. package/app/utils/js/components/animation.js +53 -0
  27. package/app/utils/js/components/backdrop.js +7 -5
  28. package/app/utils/js/dom/cookie.js +127 -0
  29. package/app/utils/js/dom/data.js +1 -1
  30. package/app/utils/scss/default.css +275 -0
  31. package/app/utils/scss/default.css.map +1 -0
  32. package/app/utils/scss/variables.scss +5 -4
  33. package/build/vgapp.css +1 -0
  34. package/build/vgapp.css.map +1 -1
  35. package/build/vgapp.js +2 -1
  36. package/build/vgapp.js.LICENSE.txt +1 -0
  37. package/build/vgapp.js.map +1 -1
  38. package/index.js +5 -1
  39. package/package.json +1 -1
  40. package/app/modules/vgsidebar/js/!oldjs.txt +0 -143
@@ -4,6 +4,7 @@ import Data from "../utils/js/dom/data";
4
4
  import Params from "../utils/js/components/params";
5
5
  import EventHandler from "../utils/js/dom/event";
6
6
  import {Ajax, getSVG} from "./module-fn";
7
+ import Animation from "../utils/js/components/animation";
7
8
 
8
9
  class BaseModule {
9
10
  constructor(element) {
@@ -15,7 +16,7 @@ class BaseModule {
15
16
  }
16
17
 
17
18
  this._params = {};
18
- Data.set(this._element, this.constructor.NAME_KEY, this)
19
+ Data.set(this._element, this.constructor.NAME_KEY, this);
19
20
  }
20
21
 
21
22
  _getParams(element, params) {
@@ -79,6 +80,10 @@ class BaseModule {
79
80
  executeAfterTransition(callback, element, isAnimated, timeOutMs);
80
81
  }
81
82
 
83
+ _animation(element, key, params = {}) {
84
+ new Animation(element, key, params);
85
+ }
86
+
82
87
  static getInstance(element) {
83
88
  return Data.get(Selectors.find(element), this.NAME_KEY)
84
89
  }
@@ -34,17 +34,15 @@ const dismissTrigger = (module, method = 'hide') => {
34
34
 
35
35
  EventHandler.on(document, clickEvent, `[data-vg-dismiss="${name}"]`, function (event) {
36
36
  if (['A', 'AREA'].includes(this.tagName)) {
37
- event.preventDefault()
37
+ event.preventDefault();
38
38
  }
39
39
 
40
- if (isDisabled(this)) {
41
- return
42
- }
40
+ if (isDisabled(this)) return;
43
41
 
44
- const target = Selectors.getSelectorFromElement(this) || this.closest(`.vg-${name}`)
45
- const instance = module.getOrCreateInstance(target)
42
+ const target = Selectors.getSelectorFromElement(this) || this.closest(`.vg-${name}`);
43
+ const instance = module.getOrCreateInstance(target);
46
44
 
47
- instance[method]()
45
+ instance[method]();
48
46
  })
49
47
  }
50
48
 
@@ -34,14 +34,19 @@ class VGDropdown extends BaseModule {
34
34
  overflow: true,
35
35
  keyboard: true,
36
36
  placement: 'bottom',
37
- animation: true,
38
37
  timeoutAnimation: 350,
39
38
  hover: false,
40
39
  ajax: {
41
40
  route: '',
42
41
  target: '',
43
42
  method: 'get'
44
- }
43
+ },
44
+ animation: {
45
+ enable: false,
46
+ in: 'animate__flipInY',
47
+ out: 'animate__flipOutY',
48
+ delay: 800,
49
+ },
45
50
  }
46
51
 
47
52
  if ('offset' in params && Array.isArray(params.offset)) {
@@ -54,9 +59,8 @@ class VGDropdown extends BaseModule {
54
59
  this._drop = Selectors.find('.' + TARGET_CONTAINER, this._parent);
55
60
  this._isPlacement = false;
56
61
 
57
- if (this._params.animation === false) {
58
- this._params.timeoutAnimation = 10
59
- }
62
+ this._params.animation.delay = !this._params.animation.enable ? 0 : this._params.animation.delay;
63
+ this._animation(this._drop, VGDropdown.NAME_KEY, this._params.animation);
60
64
  }
61
65
 
62
66
  static get NAME() {
@@ -137,11 +141,13 @@ class VGDropdown extends BaseModule {
137
141
  this._element.classList.remove(CLASS_NAME_SHOW);
138
142
  this._element.setAttribute('aria-expanded', 'false');
139
143
 
140
- const completeCallback = () => {
141
- this._drop.classList.remove(CLASS_NAME_SHOW);
142
- EventHandler.trigger(this._element, EVENT_KEY_HIDDEN, relatedTarget);
143
- }
144
- this._queueCallback(completeCallback, this._parent, true, this._params.timeoutAnimation);
144
+ setTimeout(() => {
145
+ const completeCallback = () => {
146
+ this._drop.classList.remove(CLASS_NAME_SHOW);
147
+ EventHandler.trigger(this._element, EVENT_KEY_HIDDEN, relatedTarget);
148
+ }
149
+ this._queueCallback(completeCallback, this._parent, true, 10);
150
+ }, this._params.animation.delay);
145
151
  }
146
152
 
147
153
  // TODO class Placement isn't done
@@ -0,0 +1,47 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ *--------------------------------------------------------------------------
4
+ * Модуль: VGDropdown
5
+ * Автор: Vegas DEV
6
+ * Лицензия: смотри LICENSE
7
+ *--------------------------------------------------------------------------
8
+ **/
9
+ .vg-dropdown {
10
+ position: relative;
11
+ --vg-dropdown-bg-color: #fff ;
12
+ --vg-dropdown-color: #000000 ;
13
+ --vg-dropdown-box-shadow: 0 8px 14px 5px rgba(0, 0, 0, 0.2) ;
14
+ --vg-dropdown-border-width: 1px ;
15
+ --vg-dropdown-border-style: solid ;
16
+ --vg-dropdown-border-color: rgba(0, 0, 0, 0.2) ;
17
+ --vg-dropdown-border-radius: 0.375rem ;
18
+ --vg-dropdown-z-index: 1010 ;
19
+ --vg-dropdown-transition: all 0.5s ease-in-out ;
20
+ --vg-dropdown-min-width: 225px ;
21
+ }
22
+ .vg-dropdown-content {
23
+ z-index: var(--vg-dropdown-z-index);
24
+ position: absolute;
25
+ opacity: 0;
26
+ transform: translateY(20%);
27
+ transition: var(--vg-dropdown-transition);
28
+ min-width: var(--vg-dropdown-min-width);
29
+ }
30
+ .vg-dropdown-content:not(.show) {
31
+ display: none;
32
+ }
33
+ .vg-dropdown-content.fade {
34
+ opacity: 1;
35
+ transform: translateY(0);
36
+ }
37
+ .vg-dropdown-container {
38
+ background-color: var(--vg-dropdown-bg-color);
39
+ color: var(--vg-dropdown-color);
40
+ border-width: var(--vg-dropdown-border-width);
41
+ border-style: var(--vg-dropdown-border-style);
42
+ border-color: var(--vg-dropdown-border-color);
43
+ border-radius: var(--vg-dropdown-border-radius);
44
+ box-shadow: var(--vg-dropdown-box-shadow);
45
+ }
46
+
47
+ /*# sourceMappingURL=vgdropdown.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["vgdropdown.scss","../../../utils/scss/mixin.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;EACC;ECPE;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;;ADUF;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;;AAGD;EACC;EACA;;AAIF;EACC;EACA;EACA;EACA;EACA;EACA;EACA","file":"vgdropdown.css"}
@@ -282,7 +282,7 @@ class VGFormSender extends BaseModule {
282
282
 
283
283
  self.toggle();
284
284
  });
285
- }, 300)
285
+ }, 800);
286
286
  }
287
287
 
288
288
  _alertCollapse(data, status) {
@@ -0,0 +1,13 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ *--------------------------------------------------------------------------
4
+ * Модуль: VGFormSender
5
+ * Автор: Vegas DEV
6
+ * Лицензия: смотри LICENSE
7
+ *--------------------------------------------------------------------------
8
+ **/
9
+ .vg-form-sender-modal .vg-modal-content {
10
+ padding: 0;
11
+ }
12
+
13
+ /*# sourceMappingURL=vgformsender.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["vgformsender.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAcE;EACC","file":"vgformsender.css"}
@@ -0,0 +1,182 @@
1
+ import BaseModule from "../../base-module";
2
+ import {isDisabled, mergeDeepObject} from "../../../utils/js/functions";
3
+ import EventHandler from "../../../utils/js/dom/event";
4
+ import Selectors from "../../../utils/js/dom/selectors";
5
+ import Cookies from "../../../utils/js/dom/cookie";
6
+ import {dismissTrigger} from "../../module-fn";
7
+
8
+ /**
9
+ * Constants
10
+ */
11
+ const NAME = 'lawcookie';
12
+ const NAME_KEY = 'vg.lawcookie';
13
+
14
+ const CLASS_NAME_SHOW = 'show';
15
+
16
+ const EVENT_KEY_HIDE = `${NAME_KEY}.hide`;
17
+ const EVENT_KEY_HIDDEN = `${NAME_KEY}.hidden`;
18
+ const EVENT_KEY_SHOW = `${NAME_KEY}.show`;
19
+ const EVENT_KEY_SHOWN = `${NAME_KEY}.shown`;
20
+
21
+ const SELECTOR_DATA_TOGGLE = '[data-vg-toggle="lawcookie"]';
22
+ const SELECTOR_DATA_TOGGLE_CLEAR = '[data-vg-toggle="lawcookie-clear"]';
23
+ const EVENT_KEY_CLICK_DATA_API = `click.${NAME_KEY}.data.api`;
24
+
25
+ class VGLawCookie extends BaseModule {
26
+ static sParams = {};
27
+
28
+ constructor(element, params = {}) {
29
+ super(element, params);
30
+
31
+ this._params = this._getParams(element, mergeDeepObject({
32
+ storage: 'local', // cookie or local
33
+ delay: 500,
34
+ cookie: {
35
+ name: 'lawCookie',
36
+ value: 'yes',
37
+ attributes: {}
38
+ },
39
+ animation: {
40
+ enable: true,
41
+ in: 'animate__fadeInUp',
42
+ out: 'animate__fadeOutDown',
43
+ delay: 800,
44
+ },
45
+ ajax: {
46
+ route: '',
47
+ target: '',
48
+ method: 'get'
49
+ }
50
+ }, params));
51
+
52
+ VGLawCookie.sParams = this._params;
53
+
54
+ this._params.animation.delay = !this._params.animation.enable ? 0 : this._params.animation.delay;
55
+ this._animation(this._element, VGLawCookie.NAME_KEY, this._params.animation);
56
+ }
57
+
58
+ static get NAME() {
59
+ return NAME;
60
+ }
61
+
62
+ static get NAME_KEY() {
63
+ return NAME_KEY;
64
+ }
65
+
66
+ toggle() {
67
+ return !this._isShown() ? this.show() : this.hide();
68
+ }
69
+
70
+ _isShown() {
71
+ return this.storage().get();
72
+ }
73
+
74
+ show() {
75
+ if (isDisabled(this._element)) return;
76
+
77
+ const showEvent = EventHandler.trigger(this._element, EVENT_KEY_SHOW, {})
78
+ if (showEvent.defaultPrevented) return;
79
+
80
+ this._element.classList.add(CLASS_NAME_SHOW);
81
+
82
+ const completeCallBack = () => {
83
+ EventHandler.trigger(this._element, EVENT_KEY_SHOWN, {});
84
+ }
85
+ this._queueCallback(completeCallBack, this._element, true, this._params.delay)
86
+ }
87
+
88
+ hide() {
89
+ const hideEvent = EventHandler.trigger(this._element, EVENT_KEY_HIDE);
90
+ if (hideEvent.defaultPrevented) return;
91
+
92
+ setTimeout(() => {
93
+ this._element.classList.remove(CLASS_NAME_SHOW);
94
+
95
+ const completeCallback = () => EventHandler.trigger(this._element, EVENT_KEY_HIDDEN);
96
+ this._queueCallback(completeCallback, this._element, true);
97
+ }, this._params.animation.delay);
98
+ }
99
+
100
+ storage() {
101
+ this._storage = {
102
+ isCookie: this._params.storage === 'cookie',
103
+ storage: this._params.storage === 'cookie' ? Cookies : localStorage,
104
+ name: this._params.cookie.name,
105
+ value: this._params.cookie.value,
106
+ attributes: this._params.cookie.attributes,
107
+ }
108
+
109
+ return this;
110
+ }
111
+
112
+ get() {
113
+ if (this._storage.isCookie) {
114
+ return this._storage.storage.get(this._storage.name);
115
+ } else {
116
+ return this._storage.storage.getItem(this._storage.name);
117
+ }
118
+ }
119
+
120
+ set() {
121
+ if (this._storage.isCookie) {
122
+ this._storage.storage.set(this._storage.name, this._storage.value, this._storage.attributes);
123
+ } else {
124
+ this._storage.storage.setItem(this._storage.name, this._storage.value);
125
+ }
126
+ }
127
+
128
+ dispose() {
129
+ super.dispose();
130
+ }
131
+
132
+ static reset() {
133
+ Cookies.remove(VGLawCookie.sParams.cookie.name);
134
+ localStorage.clear();
135
+ location.reload();
136
+ }
137
+
138
+ /**
139
+ * Инициализация
140
+ * @param element
141
+ * @param params
142
+ */
143
+ static init(element, params = {}) {
144
+ const instance = VGLawCookie.getOrCreateInstance(element, params);
145
+ instance.toggle();
146
+ }
147
+ }
148
+
149
+ dismissTrigger(VGLawCookie);
150
+
151
+ EventHandler.on(document, EVENT_KEY_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
152
+ if (['A', 'AREA'].includes(this.tagName)) {
153
+ event.preventDefault()
154
+ }
155
+
156
+ if (isDisabled(this)) return;
157
+
158
+ const element = Selectors.find('#vg-lawcookie');
159
+ if (!element) return;
160
+
161
+ const instance = VGLawCookie.getOrCreateInstance(element);
162
+ instance.storage().set();
163
+ instance.hide();
164
+ });
165
+
166
+ EventHandler.on(document, EVENT_KEY_CLICK_DATA_API, SELECTOR_DATA_TOGGLE_CLEAR, function (event) {
167
+ if (['A', 'AREA'].includes(this.tagName)) {
168
+ event.preventDefault()
169
+ }
170
+
171
+ if (isDisabled(this)) return;
172
+
173
+ const element = Selectors.find('#vg-lawcookie');
174
+ if (!element) return;
175
+
176
+ const instance = VGLawCookie.getOrCreateInstance(element);
177
+ instance.dispose();
178
+
179
+ location.reload();
180
+ });
181
+
182
+ export default VGLawCookie;
@@ -0,0 +1,14 @@
1
+ $lawcookie-map: (
2
+ background-color: $bg-color,
3
+ color: $color,
4
+ box-shadow: $box-shadow,
5
+ padding: 1rem,
6
+ border: 1px solid #{$border-color},
7
+ border-radius: $border-radius,
8
+ z-index: $lawcookie-index,
9
+ transition: $transition-base,
10
+ max-width: 50%,
11
+ padding-outer: 1rem,
12
+ font-size: 14px,
13
+ title-font-size: 16px
14
+ );
@@ -0,0 +1,87 @@
1
+ @charset "UTF-8";
2
+ /**
3
+ *--------------------------------------------------------------------------
4
+ * Модуль: VGLawCookie
5
+ * Автор: Vegas DEV
6
+ * Лицензия: смотри LICENSE
7
+ *--------------------------------------------------------------------------
8
+ **/
9
+ .vg-lawcookie {
10
+ --vg-lawcookie-background-color: #fff ;
11
+ --vg-lawcookie-color: #000000 ;
12
+ --vg-lawcookie-box-shadow: 0 8px 14px 5px rgba(0, 0, 0, 0.2) ;
13
+ --vg-lawcookie-padding: 1rem ;
14
+ --vg-lawcookie-border: 1px solid rgba(0, 0, 0, 0.2) ;
15
+ --vg-lawcookie-border-radius: 0.375rem ;
16
+ --vg-lawcookie-z-index: 2000 ;
17
+ --vg-lawcookie-transition: all 0.5s ease-in-out ;
18
+ --vg-lawcookie-max-width: 50% ;
19
+ --vg-lawcookie-padding-outer: 1rem ;
20
+ --vg-lawcookie-font-size: 14px ;
21
+ --vg-lawcookie-title-font-size: 16px ;
22
+ position: fixed;
23
+ display: none;
24
+ padding: var(--vg-lawcookie-padding-outer);
25
+ z-index: var(--vg-lawcookie-z-index);
26
+ max-width: var(--vg-lawcookie-max-width);
27
+ }
28
+ @media screen and (max-width: 600px) {
29
+ .vg-lawcookie {
30
+ width: 100%;
31
+ --vg-lawcookie-max-width: 100%;
32
+ }
33
+ }
34
+ .vg-lawcookie.show {
35
+ display: block;
36
+ }
37
+ .vg-lawcookie.left {
38
+ left: 0;
39
+ }
40
+ .vg-lawcookie.right {
41
+ right: 0;
42
+ }
43
+ .vg-lawcookie.top {
44
+ top: 0;
45
+ }
46
+ .vg-lawcookie.bottom {
47
+ bottom: 0;
48
+ }
49
+ .vg-lawcookie.center {
50
+ top: 50%;
51
+ left: 50%;
52
+ }
53
+ .vg-lawcookie.center.left {
54
+ left: 0;
55
+ }
56
+ .vg-lawcookie.center.top {
57
+ top: 0;
58
+ left: 50%;
59
+ }
60
+ .vg-lawcookie.center.bottom {
61
+ top: auto;
62
+ bottom: 0;
63
+ }
64
+ .vg-lawcookie.center.right {
65
+ right: 0;
66
+ left: auto;
67
+ }
68
+ .vg-lawcookie.fullwidth {
69
+ max-width: 100%;
70
+ width: 100%;
71
+ --vg-lawcookie-padding-outer: 0;
72
+ --vg-lawcookie-border-radius: 0;
73
+ --vg-lawcookie-box-shadow: none;
74
+ }
75
+ .vg-lawcookie--content {
76
+ background-color: var(--vg-lawcookie-background-color);
77
+ border-radius: var(--vg-lawcookie-border-radius);
78
+ padding: var(--vg-lawcookie-padding);
79
+ color: var(--vg-lawcookie-color);
80
+ box-shadow: var(--vg-lawcookie-box-shadow);
81
+ font-size: var(--vg-lawcookie-font-size);
82
+ }
83
+ .vg-lawcookie--content .title {
84
+ font-size: var(--vg-lawcookie-title-font-size);
85
+ }
86
+
87
+ /*# sourceMappingURL=vglawcookie.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["vglawcookie.scss","../../../utils/scss/mixin.scss"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAaA;ECNG;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EDQF;EACA;EACA;EACA;EACA;;AAEA;EARD;IASE;IACA;;;AAGD;EACC;;AAGD;EACC;;AAGD;EACC;;AAGD;EACC;;AAGD;EACC;;AAGD;EACC;EACA;;AAEA;EACC;;AAGD;EACC;EACA;;AAGD;EACC;EACA;;AAGD;EACC;EACA;;AAIF;EACC;EACA;EACA;EACA;EACA;;AAGD;EACC;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC","file":"vglawcookie.css"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ *--------------------------------------------------------------------------
3
+ * Модуль: VGLawCookie
4
+ * Автор: Vegas DEV
5
+ * Лицензия: смотри LICENSE
6
+ *--------------------------------------------------------------------------
7
+ **/
8
+
9
+ @import "../../../utils/scss/functions";
10
+ @import "../../../utils/scss/mixin";
11
+ @import "../../../utils/scss/variables";
12
+ @import "variables";
13
+
14
+ .vg-lawcookie {
15
+ @include mix-vars('lawcookie', $lawcookie-map);
16
+ position: fixed;
17
+ display: none;
18
+ padding: var(--vg-lawcookie-padding-outer);
19
+ z-index: var(--vg-lawcookie-z-index);
20
+ max-width: var(--vg-lawcookie-max-width);
21
+
22
+ @media screen and (max-width: 600px){
23
+ width: 100%;
24
+ --vg-lawcookie-max-width: 100%;
25
+ }
26
+
27
+ &.show {
28
+ display: block;
29
+ }
30
+
31
+ &.left {
32
+ left: 0;
33
+ }
34
+
35
+ &.right {
36
+ right: 0;
37
+ }
38
+
39
+ &.top {
40
+ top: 0;
41
+ }
42
+
43
+ &.bottom {
44
+ bottom: 0;
45
+ }
46
+
47
+ &.center {
48
+ top: 50%;
49
+ left: 50%;
50
+
51
+ &.left {
52
+ left: 0;
53
+ }
54
+
55
+ &.top {
56
+ top: 0;
57
+ left: 50%;
58
+ }
59
+
60
+ &.bottom {
61
+ top: auto;
62
+ bottom: 0;
63
+ }
64
+
65
+ &.right {
66
+ right: 0;
67
+ left: auto;
68
+ }
69
+ }
70
+
71
+ &.fullwidth {
72
+ max-width: 100%;
73
+ width: 100%;
74
+ --vg-lawcookie-padding-outer: 0;
75
+ --vg-lawcookie-border-radius: 0;
76
+ --vg-lawcookie-box-shadow: none;
77
+ }
78
+
79
+ &--content {
80
+ background-color: var(--vg-lawcookie-background-color);
81
+ border-radius: var(--vg-lawcookie-border-radius);
82
+ padding: var(--vg-lawcookie-padding);
83
+ color: var(--vg-lawcookie-color);
84
+ box-shadow: var(--vg-lawcookie-box-shadow);
85
+ font-size: var(--vg-lawcookie-font-size);
86
+
87
+ .title {
88
+ font-size: var(--vg-lawcookie-title-font-size);
89
+ }
90
+ }
91
+ }