vgapp 1.4.4 → 1.4.6
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/README.md +270 -270
- package/app/langs/en/buttons.json +17 -17
- package/app/langs/en/messages.json +36 -36
- package/app/langs/ru/buttons.json +17 -17
- package/app/langs/ru/messages.json +36 -36
- package/app/modules/vgalert/js/vgalert.js +266 -266
- package/app/modules/vgalert/scss/_variables.scss +16 -16
- package/app/modules/vgalert/scss/vgalert.scss +107 -107
- package/app/modules/vgcollapse/scss/_variables.scss +7 -7
- package/app/modules/vgcollapse/scss/vgcollapse.scss +5 -5
- package/app/modules/vgdropdown/scss/_variables.scss +14 -14
- package/app/modules/vgdropdown/scss/vgdropdown.scss +5 -5
- package/app/modules/vgdynamictable/index.js +4 -4
- package/app/modules/vgdynamictable/js/filters.js +21 -21
- package/app/modules/vgdynamictable/js/fixed.js +179 -179
- package/app/modules/vgdynamictable/js/options.js +3 -3
- package/app/modules/vgdynamictable/js/pagination.js +1 -1
- package/app/modules/vgdynamictable/js/search.js +12 -12
- package/app/modules/vgdynamictable/js/skeleton.js +27 -19
- package/app/modules/vgdynamictable/js/sortable.js +71 -71
- package/app/modules/vgdynamictable/js/summary-footer.js +28 -28
- package/app/modules/vgdynamictable/js/table-url-state.js +31 -31
- package/app/modules/vgdynamictable/js/utils/common.js +48 -48
- package/app/modules/vgdynamictable/js/vgdynamictable.js +79 -79
- package/app/modules/vgdynamictable/scss/_actions.scss +19 -19
- package/app/modules/vgdynamictable/scss/_pagination.scss +5 -5
- package/app/modules/vgdynamictable/scss/_skeleton.scss +11 -11
- package/app/modules/vgdynamictable/scss/_sortable.scss +28 -28
- package/app/modules/vgdynamictable/scss/_table.scss +7 -30
- package/app/modules/vgdynamictable/scss/_variables.scss +46 -46
- package/app/modules/vgdynamictable/scss/vgdynamictable.scss +28 -36
- package/app/modules/vgfilepreview/js/i18n.js +56 -56
- package/app/modules/vgfilepreview/js/renderers/image-modal.js +145 -145
- package/app/modules/vgfilepreview/js/renderers/image.js +92 -92
- package/app/modules/vgfilepreview/js/renderers/index.js +19 -19
- package/app/modules/vgfilepreview/js/renderers/office-modal.js +168 -168
- package/app/modules/vgfilepreview/js/renderers/office.js +79 -79
- package/app/modules/vgfilepreview/js/renderers/pdf-modal.js +260 -260
- package/app/modules/vgfilepreview/js/renderers/pdf.js +76 -76
- package/app/modules/vgfilepreview/js/renderers/playlist.js +71 -71
- package/app/modules/vgfilepreview/js/renderers/text-modal.js +343 -343
- package/app/modules/vgfilepreview/js/renderers/text.js +83 -83
- package/app/modules/vgfilepreview/js/renderers/video-modal.js +272 -272
- package/app/modules/vgfilepreview/js/renderers/video.js +80 -80
- package/app/modules/vgfilepreview/js/renderers/zip-modal.js +522 -522
- package/app/modules/vgfilepreview/js/renderers/zip.js +89 -89
- package/app/modules/vgfilepreview/js/vgfilepreview.js +7 -7
- package/app/modules/vgfilepreview/readme.md +68 -68
- package/app/modules/vgfilepreview/scss/_variables.scss +115 -115
- package/app/modules/vgfilepreview/scss/vgfilepreview.scss +463 -463
- package/app/modules/vgfiles/js/droppable.js +20 -9
- package/app/modules/vgfiles/js/render.js +153 -153
- package/app/modules/vgfiles/js/vgfiles.js +104 -104
- package/app/modules/vgfiles/readme.md +123 -123
- package/app/modules/vgfiles/scss/_mixins.scss +9 -9
- package/app/modules/vgfiles/scss/_variables.scss +41 -41
- package/app/modules/vgfiles/scss/vgfiles.scss +161 -161
- package/app/modules/vgformsender/js/hideshowpass.js +21 -16
- package/app/modules/vgformsender/js/vgformsender.js +4 -6
- package/app/modules/vgformsender/readme.md +1 -1
- package/app/modules/vgformsender/scss/_variables.scss +5 -5
- package/app/modules/vgformsender/scss/vgformsender.scss +42 -42
- package/app/modules/vglawcookie/js/vglawcookie.js +11 -8
- package/app/modules/vglawcookie/scss/_variables.scss +13 -13
- package/app/modules/vglawcookie/scss/vglawcookie.scss +5 -5
- package/app/modules/vgmodal/js/vgmodal.interaction.js +216 -216
- package/app/modules/vgmodal/js/vgmodal.js +355 -355
- package/app/modules/vgmodal/js/vgmodal.minimized.js +227 -227
- package/app/modules/vgmodal/scss/_variables.scss +17 -17
- package/app/modules/vgmodal/scss/vgmodal.scss +77 -77
- package/app/modules/vgnav/js/vgnav.js +180 -180
- package/app/modules/vgnav/scss/_breakpoints.scss +36 -36
- package/app/modules/vgnav/scss/_hamburger.scss +5 -5
- package/app/modules/vgnav/scss/_placement.scss +5 -5
- package/app/modules/vgnav/scss/_toggle.scss +5 -5
- package/app/modules/vgnav/scss/_variables.scss +26 -26
- package/app/modules/vgnav/scss/vgnav.scss +41 -41
- package/app/modules/vgnestable/README.md +39 -39
- package/app/modules/vgnestable/js/vgnestable.js +358 -358
- package/app/modules/vgnestable/scss/_variables.scss +35 -35
- package/app/modules/vgnestable/scss/vgnestable.scss +55 -55
- package/app/modules/vgrangeslider/js/skins.js +222 -222
- package/app/modules/vgrangeslider/js/vgrangeslider.js +704 -704
- package/app/modules/vgrangeslider/scss/_variables.scss +55 -55
- package/app/modules/vgrangeslider/scss/vgrangeslider.scss +239 -239
- package/app/modules/vgrollup/scss/_variables.scss +15 -15
- package/app/modules/vgrollup/scss/vgrollup.scss +6 -6
- package/app/modules/vgselect/js/vgselect.js +129 -129
- package/app/modules/vgselect/readme.md +11 -11
- package/app/modules/vgselect/scss/_variables.scss +50 -50
- package/app/modules/vgselect/scss/vgselect.scss +48 -48
- package/app/modules/vgsidebar/js/vgsidebar.js +79 -79
- package/app/modules/vgsidebar/scss/_variables.scss +10 -10
- package/app/modules/vgsidebar/scss/vgsidebar.scss +5 -5
- package/app/modules/vgtabs/scss/_variables.scss +23 -23
- package/app/modules/vgtabs/scss/vgtabs.scss +5 -5
- package/app/modules/vgtoast/scss/_variables.scss +13 -13
- package/app/modules/vgtoast/scss/vgtoast.scss +5 -5
- package/app/modules/vgtooltip/js/vgtooltip.js +107 -51
- package/app/modules/vgtooltip/scss/_variables.scss +10 -10
- package/app/modules/vgtooltip/scss/vgtooltip.scss +5 -5
- package/app/utils/js/components/audio-metadata.js +240 -240
- package/app/utils/js/components/backdrop.js +116 -116
- package/app/utils/js/components/file-icon.js +109 -109
- package/app/utils/js/components/file-preview.js +304 -304
- package/app/utils/js/components/sanitize.js +150 -150
- package/app/utils/js/components/video-metadata.js +140 -140
- package/app/utils/scss/_backdrop.scss +5 -5
- package/app/utils/scss/_theme-default.scss +12 -12
- package/app/utils/scss/_theme.scss +7 -7
- package/app/utils/scss/_tokens.scss +170 -170
- package/app/utils/scss/default.scss +9 -9
- package/app/utils/scss/functions.scss +21 -21
- package/app/utils/scss/index.scss +4 -4
- package/app/utils/scss/mixin.scss +16 -16
- package/app/utils/scss/variables.scss +105 -105
- package/app/vgapp.js +295 -295
- package/build/vgapp.css +1 -1
- package/build/vgapp.css.map +1 -1
- package/build/vgapp.js +1 -1
- package/build/vgapp.js.map +1 -1
- package/index.scss +20 -20
- package/package.json +4 -2
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
const getPathFromElement = (element) => {
|
|
2
|
-
const value = element?.getAttribute('data-vg-filepreview') || '';
|
|
3
|
-
return String(value).trim();
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
const parseExt = (path) => {
|
|
7
|
-
if (!path) {
|
|
8
|
-
return '';
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
const clean = String(path).split('#')[0].split('?')[0];
|
|
12
|
-
const name = clean.split('/').pop() || '';
|
|
13
|
-
if (!name.includes('.')) {
|
|
14
|
-
return '';
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
return `.${String(name.split('.').pop() || '').toLowerCase()}`;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const toAbsoluteUrl = (path) => {
|
|
21
|
-
try {
|
|
22
|
-
return new URL(path, window.location.origin).href;
|
|
23
|
-
} catch {
|
|
24
|
-
return '';
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
const resolveTitle = (element, fallbackPath = '') => {
|
|
29
|
-
const node = element?.querySelector('.name');
|
|
30
|
-
const title = String(node?.textContent || '').trim();
|
|
31
|
-
if (title) {
|
|
32
|
-
return title;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const name = String(fallbackPath).split('/').pop() || '';
|
|
36
|
-
return decodeURIComponent(name);
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const resolveSubtitle = (element) => {
|
|
40
|
-
const node = element?.querySelector('.original_name');
|
|
41
|
-
return String(node?.textContent || '').trim();
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
const buildMediaPlaylist = (currentElement, acceptExt = () => true) => {
|
|
45
|
-
const nodes = Array.from(document.querySelectorAll('[data-vg-filepreview][data-vg-filepreview-valid="true"]'));
|
|
46
|
-
const tracks = nodes
|
|
47
|
-
.map((element) => {
|
|
48
|
-
const path = getPathFromElement(element);
|
|
49
|
-
const src = toAbsoluteUrl(path);
|
|
50
|
-
const ext = parseExt(path);
|
|
51
|
-
return {
|
|
52
|
-
element,
|
|
53
|
-
path,
|
|
54
|
-
src,
|
|
55
|
-
ext,
|
|
56
|
-
title: resolveTitle(element, path),
|
|
57
|
-
subtitle: resolveSubtitle(element)
|
|
58
|
-
};
|
|
59
|
-
})
|
|
60
|
-
.filter((item) => item.src && acceptExt(item.ext));
|
|
61
|
-
|
|
62
|
-
const currentSrc = toAbsoluteUrl(getPathFromElement(currentElement));
|
|
63
|
-
const currentIndex = tracks.findIndex((item) => item.src === currentSrc);
|
|
64
|
-
|
|
65
|
-
return {
|
|
66
|
-
tracks,
|
|
67
|
-
currentIndex: currentIndex >= 0 ? currentIndex : 0
|
|
68
|
-
};
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
export { buildMediaPlaylist };
|
|
1
|
+
const getPathFromElement = (element) => {
|
|
2
|
+
const value = element?.getAttribute('data-vg-filepreview') || '';
|
|
3
|
+
return String(value).trim();
|
|
4
|
+
};
|
|
5
|
+
|
|
6
|
+
const parseExt = (path) => {
|
|
7
|
+
if (!path) {
|
|
8
|
+
return '';
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
const clean = String(path).split('#')[0].split('?')[0];
|
|
12
|
+
const name = clean.split('/').pop() || '';
|
|
13
|
+
if (!name.includes('.')) {
|
|
14
|
+
return '';
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return `.${String(name.split('.').pop() || '').toLowerCase()}`;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
const toAbsoluteUrl = (path) => {
|
|
21
|
+
try {
|
|
22
|
+
return new URL(path, window.location.origin).href;
|
|
23
|
+
} catch {
|
|
24
|
+
return '';
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const resolveTitle = (element, fallbackPath = '') => {
|
|
29
|
+
const node = element?.querySelector('.name');
|
|
30
|
+
const title = String(node?.textContent || '').trim();
|
|
31
|
+
if (title) {
|
|
32
|
+
return title;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const name = String(fallbackPath).split('/').pop() || '';
|
|
36
|
+
return decodeURIComponent(name);
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const resolveSubtitle = (element) => {
|
|
40
|
+
const node = element?.querySelector('.original_name');
|
|
41
|
+
return String(node?.textContent || '').trim();
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const buildMediaPlaylist = (currentElement, acceptExt = () => true) => {
|
|
45
|
+
const nodes = Array.from(document.querySelectorAll('[data-vg-filepreview][data-vg-filepreview-valid="true"]'));
|
|
46
|
+
const tracks = nodes
|
|
47
|
+
.map((element) => {
|
|
48
|
+
const path = getPathFromElement(element);
|
|
49
|
+
const src = toAbsoluteUrl(path);
|
|
50
|
+
const ext = parseExt(path);
|
|
51
|
+
return {
|
|
52
|
+
element,
|
|
53
|
+
path,
|
|
54
|
+
src,
|
|
55
|
+
ext,
|
|
56
|
+
title: resolveTitle(element, path),
|
|
57
|
+
subtitle: resolveSubtitle(element)
|
|
58
|
+
};
|
|
59
|
+
})
|
|
60
|
+
.filter((item) => item.src && acceptExt(item.ext));
|
|
61
|
+
|
|
62
|
+
const currentSrc = toAbsoluteUrl(getPathFromElement(currentElement));
|
|
63
|
+
const currentIndex = tracks.findIndex((item) => item.src === currentSrc);
|
|
64
|
+
|
|
65
|
+
return {
|
|
66
|
+
tracks,
|
|
67
|
+
currentIndex: currentIndex >= 0 ? currentIndex : 0
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export { buildMediaPlaylist };
|