vgapp 0.7.2 → 0.7.3
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.
- package/app/modules/module-fn.js +4 -2
- package/app/modules/vgmodal/js/vgmodal.js +18 -9
- package/app/modules/vgselect/js/vgselect.js +2 -1
- package/app/utils/js/components/animation.js +9 -2
- package/app/utils/scss/variables.scss +1 -0
- package/build/vgapp.css +1743 -3
- package/build/vgapp.js +30 -2
- package/index.js +1 -1
- package/package.json +1 -1
- package/app/modules/vgalert/index.js +0 -3
- package/app/modules/vgalert/js/!old/!vgalert.js +0 -153
- package/app/modules/vgalert/js/vgalert.js +0 -115
- package/app/modules/vgalert/scss/_variables.scss +0 -32
- package/app/modules/vgalert/scss/vgalert.scss +0 -79
package/build/vgapp.js
CHANGED
|
@@ -1,2 +1,30 @@
|
|
|
1
|
-
var vg;
|
|
2
|
-
|
|
1
|
+
var vg;
|
|
2
|
+
/******/ (() => { // webpackBootstrap
|
|
3
|
+
/******/ "use strict";
|
|
4
|
+
/******/ // The require scope
|
|
5
|
+
/******/ var __webpack_require__ = {};
|
|
6
|
+
/******/
|
|
7
|
+
/************************************************************************/
|
|
8
|
+
/******/ /* webpack/runtime/make namespace object */
|
|
9
|
+
/******/ (() => {
|
|
10
|
+
/******/ // define __esModule on exports
|
|
11
|
+
/******/ __webpack_require__.r = (exports) => {
|
|
12
|
+
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
13
|
+
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
14
|
+
/******/ }
|
|
15
|
+
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
16
|
+
/******/ };
|
|
17
|
+
/******/ })();
|
|
18
|
+
/******/
|
|
19
|
+
/************************************************************************/
|
|
20
|
+
var __webpack_exports__ = {};
|
|
21
|
+
/*!********************!*\
|
|
22
|
+
!*** ./index.scss ***!
|
|
23
|
+
\********************/
|
|
24
|
+
__webpack_require__.r(__webpack_exports__);
|
|
25
|
+
// extracted by mini-css-extract-plugin
|
|
26
|
+
|
|
27
|
+
vg = __webpack_exports__;
|
|
28
|
+
/******/ })()
|
|
29
|
+
;
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmdhcHAuanMiLCJtYXBwaW5ncyI6Ijs7O0FBQUE7QUFDQTtBQUNBOzs7O0FDRkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7Ozs7OztBQ05BIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vdmcvd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vdmcvd2VicGFjay9ydW50aW1lL21ha2UgbmFtZXNwYWNlIG9iamVjdCIsIndlYnBhY2s6Ly92Zy8uL2luZGV4LnNjc3M/ZjRiNSJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGUgcmVxdWlyZSBzY29wZVxudmFyIF9fd2VicGFja19yZXF1aXJlX18gPSB7fTtcblxuIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiLy8gZXh0cmFjdGVkIGJ5IG1pbmktY3NzLWV4dHJhY3QtcGx1Z2luXG5leHBvcnQge307Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9
|
package/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { default as VGAlert } from './app/modules/vgalert'
|
|
1
|
+
/*export { default as VGAlert } from './app/modules/vgalert';*/
|
|
2
2
|
export { default as VGCollapse } from './app/modules/vgcollapse';
|
|
3
3
|
export { default as VGDropdown } from './app/modules/vgdropdown';
|
|
4
4
|
export { default as VGFiles } from './app/modules/vgfiles';
|
package/package.json
CHANGED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import BaseModule from "../../base-module";
|
|
2
|
-
import EventHandler from "../../../utils/js/dom/event";
|
|
3
|
-
import {isDisabled, makeRandomString, mergeDeepObject} from "../../../utils/js/functions";
|
|
4
|
-
import Selectors from "../../../utils/js/dom/selectors";
|
|
5
|
-
import VGModal from "../../vgmodal/js/vgmodal";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Constants
|
|
9
|
-
*/
|
|
10
|
-
const NAME = 'alert';
|
|
11
|
-
const NAME_KEY = 'vg.alert';
|
|
12
|
-
const SELECTOR_DATA_TOGGLE= '[data-vg-toggle="alert"]';
|
|
13
|
-
const EVENT_KEY_CLICK_DATA_API = `click.${NAME_KEY}.data.api`;
|
|
14
|
-
|
|
15
|
-
let IS_PROMISE = false;
|
|
16
|
-
|
|
17
|
-
class VGAlert extends BaseModule {
|
|
18
|
-
constructor(element, params = {}) {
|
|
19
|
-
super(element, params);
|
|
20
|
-
|
|
21
|
-
this._params = this._getParams(element, mergeDeepObject({
|
|
22
|
-
modal: {
|
|
23
|
-
centered: false,
|
|
24
|
-
backdrop: true,
|
|
25
|
-
overflow: true,
|
|
26
|
-
keyboard: true,
|
|
27
|
-
animation: {
|
|
28
|
-
enable: false,
|
|
29
|
-
in: 'animate__rollIn',
|
|
30
|
-
out: 'animate__rollOut',
|
|
31
|
-
delay: 0,
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
toast: {
|
|
35
|
-
|
|
36
|
-
},
|
|
37
|
-
elements: {
|
|
38
|
-
button: ''
|
|
39
|
-
},
|
|
40
|
-
dialog: 'modal',
|
|
41
|
-
mode: 'alert',
|
|
42
|
-
}, params));
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
static get NAME() {
|
|
46
|
-
return NAME;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
static get NAME_KEY() {
|
|
50
|
-
return NAME_KEY
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
static run(message, element = null, params = {}, event = null) {
|
|
54
|
-
if (!element) {
|
|
55
|
-
let a = document.createElement('a');
|
|
56
|
-
a.classList.add('btn-alert-fake');
|
|
57
|
-
document.body.append(a);
|
|
58
|
-
element = a;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const instance = VGAlert.getOrCreateInstance(element, mergeDeepObject({
|
|
62
|
-
message: message
|
|
63
|
-
}, params));
|
|
64
|
-
|
|
65
|
-
return instance.promise(event);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
toggle(event) {
|
|
69
|
-
const promise = this.promise(event);
|
|
70
|
-
promise.then(resolve => {
|
|
71
|
-
IS_PROMISE = true;
|
|
72
|
-
this._element.click();
|
|
73
|
-
}).catch(reject => {
|
|
74
|
-
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
promise(event) {
|
|
79
|
-
let dialog = this._build();
|
|
80
|
-
dialog.toggle();
|
|
81
|
-
|
|
82
|
-
return new Promise((resolve) => {
|
|
83
|
-
if (this._params.mode === 'alert') {
|
|
84
|
-
dialog._element.addEventListener('vg.'+ this._params.dialog +'.hidden', () => {
|
|
85
|
-
setTimeout(() => {
|
|
86
|
-
IS_PROMISE = false;
|
|
87
|
-
let fakeBtn = document.querySelector('.btn-alert-fake');
|
|
88
|
-
if (fakeBtn) fakeBtn.remove();
|
|
89
|
-
}, 100)
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
_build() {
|
|
96
|
-
if (this._params.dialog === 'modal') {
|
|
97
|
-
return this._buildModal();
|
|
98
|
-
}
|
|
99
|
-
if (this._params.dialog === 'toast') {
|
|
100
|
-
return this._buildToast();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
_buildModal() {
|
|
105
|
-
let id = 'vg-alert-' + makeRandomString(),
|
|
106
|
-
$modal = Selectors.find('.vg-alert-modal');
|
|
107
|
-
|
|
108
|
-
if ($modal) $modal.remove();
|
|
109
|
-
|
|
110
|
-
return VGModal.build(id, this._params.modal, (self) => {
|
|
111
|
-
let element = self._element;
|
|
112
|
-
element.classList.add('vg-alert-modal');
|
|
113
|
-
|
|
114
|
-
let $body = Selectors.find('.vg-modal-body', element);
|
|
115
|
-
if ($body) {
|
|
116
|
-
let html = '<div class="message">' + this._params.message + '</div>';
|
|
117
|
-
|
|
118
|
-
html += '<div class="buttons">';
|
|
119
|
-
if (this._params.elements.button) {
|
|
120
|
-
html += '<a href="#" data-vg-dismiss="modal" class="btn btn-primary">'+ this._params.elements.button +'</a>';
|
|
121
|
-
}
|
|
122
|
-
html += '</div>';
|
|
123
|
-
|
|
124
|
-
$body.innerHTML = html;
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
_buildToast() {
|
|
130
|
-
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
/**
|
|
135
|
-
* Data API implementation
|
|
136
|
-
*/
|
|
137
|
-
EventHandler.on(document, EVENT_KEY_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
|
|
138
|
-
if (!IS_PROMISE) {
|
|
139
|
-
let target = this;
|
|
140
|
-
event.preventDefault();
|
|
141
|
-
|
|
142
|
-
if (isDisabled(target)) return;
|
|
143
|
-
|
|
144
|
-
const data = VGAlert.getOrCreateInstance(target)
|
|
145
|
-
data.toggle(event);
|
|
146
|
-
}
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
window.alert = (message) => {
|
|
150
|
-
VGAlert.run(message);
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
export default VGAlert;
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import BaseModule from "../../base-module";
|
|
2
|
-
import EventHandler from "../../../utils/js/dom/event";
|
|
3
|
-
import {isDisabled, makeRandomString, mergeDeepObject} from "../../../utils/js/functions";
|
|
4
|
-
import Selectors from "../../../utils/js/dom/selectors";
|
|
5
|
-
import VGModal from "../../vgmodal/js/vgmodal";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Constants
|
|
9
|
-
*/
|
|
10
|
-
const NAME = 'alert';
|
|
11
|
-
const NAME_KEY = 'vg.alert';
|
|
12
|
-
const SELECTOR_DATA_TOGGLE= '[data-vg-toggle="alert"]';
|
|
13
|
-
const EVENT_KEY_CLICK_DATA_API = `click.${NAME_KEY}.data.api`;
|
|
14
|
-
|
|
15
|
-
let IS_PROMISE = false;
|
|
16
|
-
|
|
17
|
-
class VGAlert extends BaseModule {
|
|
18
|
-
constructor(element, params = {}) {
|
|
19
|
-
super(element, params);
|
|
20
|
-
|
|
21
|
-
this._params = this._getParams(element, mergeDeepObject({
|
|
22
|
-
modal: {
|
|
23
|
-
centered: false,
|
|
24
|
-
backdrop: true,
|
|
25
|
-
overflow: true,
|
|
26
|
-
keyboard: true,
|
|
27
|
-
animation: {
|
|
28
|
-
enable: false,
|
|
29
|
-
in: 'animate__rollIn',
|
|
30
|
-
out: 'animate__rollOut',
|
|
31
|
-
delay: 0,
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
toast: {
|
|
35
|
-
|
|
36
|
-
},
|
|
37
|
-
elements: {
|
|
38
|
-
button: ''
|
|
39
|
-
},
|
|
40
|
-
dialog: 'modal',
|
|
41
|
-
mode: 'alert',
|
|
42
|
-
}, params));
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
static get NAME() {
|
|
46
|
-
return NAME;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
static get NAME_KEY() {
|
|
50
|
-
return NAME_KEY
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
static run(... args) {
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
toggle(event) {
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
promise(event) {
|
|
62
|
-
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
_build() {
|
|
66
|
-
if (this._params.dialog === 'modal') {
|
|
67
|
-
return this._buildModal();
|
|
68
|
-
}
|
|
69
|
-
if (this._params.dialog === 'toast') {
|
|
70
|
-
return this._buildToast();
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
_buildModal() {
|
|
75
|
-
let id = 'vg-alert-' + makeRandomString(),
|
|
76
|
-
$modal = Selectors.find('.vg-alert-modal');
|
|
77
|
-
|
|
78
|
-
if ($modal) $modal.remove();
|
|
79
|
-
|
|
80
|
-
return VGModal.build(id, this._params.modal, (self) => {
|
|
81
|
-
let element = self._element;
|
|
82
|
-
element.classList.add('vg-alert-modal');
|
|
83
|
-
|
|
84
|
-
let $body = Selectors.find('.vg-modal-body', element);
|
|
85
|
-
if ($body) {
|
|
86
|
-
let html = '<div class="message">' + this._params.message + '</div>';
|
|
87
|
-
|
|
88
|
-
html += '<div class="buttons">';
|
|
89
|
-
if (this._params.elements.button) {
|
|
90
|
-
html += '<a href="#" data-vg-dismiss="modal" class="btn btn-primary">'+ this._params.elements.button +'</a>';
|
|
91
|
-
}
|
|
92
|
-
html += '</div>';
|
|
93
|
-
|
|
94
|
-
$body.innerHTML = html;
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
_buildToast() {
|
|
100
|
-
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* Data API implementation
|
|
106
|
-
*/
|
|
107
|
-
EventHandler.on(document, EVENT_KEY_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
|
|
108
|
-
|
|
109
|
-
});
|
|
110
|
-
|
|
111
|
-
/*window.alert = (message) => {
|
|
112
|
-
VGAlert.run(message);
|
|
113
|
-
}*/
|
|
114
|
-
|
|
115
|
-
export default VGAlert;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
$alert-map: (
|
|
2
|
-
padding: 2rem,
|
|
3
|
-
margin: 0 0 2rem,
|
|
4
|
-
border-width: $border-width,
|
|
5
|
-
border-style: $border-style,
|
|
6
|
-
border-color: transparent,
|
|
7
|
-
border-radius: $border-radius,
|
|
8
|
-
gap: 1.5rem,
|
|
9
|
-
icon-width: 80px,
|
|
10
|
-
icon-height: 80px,
|
|
11
|
-
content-width: 100%,
|
|
12
|
-
content-align: center,
|
|
13
|
-
content-justify: flex-start
|
|
14
|
-
);
|
|
15
|
-
$alert-success-map: (
|
|
16
|
-
color: darken(#A5DC86, 10%),
|
|
17
|
-
border-color: #A5DC86,
|
|
18
|
-
background-color: rgba(lighten(#A5DC86, 10%), .15),
|
|
19
|
-
stroke: rgba(117, 183, 152, 0.4)
|
|
20
|
-
);
|
|
21
|
-
|
|
22
|
-
$alert-error-map: (
|
|
23
|
-
color: darken(#F74444, 10%),
|
|
24
|
-
border-color: #F74444,
|
|
25
|
-
background-color: rgba(lighten(#F74444, 25%), .075)
|
|
26
|
-
);
|
|
27
|
-
|
|
28
|
-
$alert-waiting-map: (
|
|
29
|
-
color: darken(#ffda6a, 10%),
|
|
30
|
-
border-color: #ffda6a,
|
|
31
|
-
background-color: rgba(lighten(#ffda6a, 15%), .1)
|
|
32
|
-
);
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*--------------------------------------------------------------------------
|
|
3
|
-
* Модуль: VGAlert
|
|
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-alert {
|
|
15
|
-
@include mix-vars('alert', $alert-map);
|
|
16
|
-
@include mix-vars('alert-success', $alert-success-map);
|
|
17
|
-
@include mix-vars('alert-error', $alert-error-map);
|
|
18
|
-
@include mix-vars('alert-waiting', $alert-waiting-map);
|
|
19
|
-
padding: var(--vg-alert-padding);
|
|
20
|
-
margin: var(--vg-alert-margin);
|
|
21
|
-
border: var(--vg-alert-border-width) var(--vg-alert-border-style) var(--vg-alert-border-color);
|
|
22
|
-
border-radius: var(--vg-alert-border-radius);
|
|
23
|
-
display: flex;
|
|
24
|
-
align-items: center;
|
|
25
|
-
justify-content: center;
|
|
26
|
-
|
|
27
|
-
&-success {
|
|
28
|
-
color: var(--vg-alert-success-color);
|
|
29
|
-
border-color: var(--vg-alert-success-border-color);
|
|
30
|
-
background-color: var(--vg-alert-success-background-color);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&-error {
|
|
34
|
-
color: var(--vg-alert-error-color);
|
|
35
|
-
border-color: var(--vg-alert-error-border-color);
|
|
36
|
-
background-color: var(--vg-alert-error-background-color);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
&-content {
|
|
40
|
-
display: flex;
|
|
41
|
-
align-items: var(--vg-alert-content-align);
|
|
42
|
-
justify-content: var(--vg-alert-content-justify);
|
|
43
|
-
gap: var(--vg-alert-gap);
|
|
44
|
-
width: var(--vg-alert-content-width);
|
|
45
|
-
|
|
46
|
-
&--icon {
|
|
47
|
-
width: var(--vg-alert-icon-width);
|
|
48
|
-
height: var(--vg-alert-icon-height);
|
|
49
|
-
|
|
50
|
-
svg {
|
|
51
|
-
width: 100%;
|
|
52
|
-
height: 100%;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.ui-success {
|
|
56
|
-
&-circle {
|
|
57
|
-
stroke: var(--vg-alert-success-stroke);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
&-path {
|
|
61
|
-
stroke: var(--vg-alert-success-color);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
&-modal {
|
|
68
|
-
--vg-alert-icon-width: 150px;
|
|
69
|
-
--vg-alert-icon-height: 150px;
|
|
70
|
-
--vg-alert-padding: 5rem 2rem;
|
|
71
|
-
--vg-alert-border-width: 0;
|
|
72
|
-
margin: 0;
|
|
73
|
-
|
|
74
|
-
.vg-alert-content {
|
|
75
|
-
flex-direction: column;
|
|
76
|
-
text-align: center;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|