vgapp 1.2.6 → 1.3.1

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 (93) hide show
  1. package/README.md +113 -2
  2. package/app/langs/en/buttons.json +17 -17
  3. package/app/langs/en/messages.json +36 -36
  4. package/app/langs/ru/buttons.json +17 -17
  5. package/app/langs/ru/messages.json +36 -36
  6. package/app/modules/base-module.js +104 -87
  7. package/app/modules/vgalert/readme.md +105 -105
  8. package/app/modules/vgdynamictable/index.js +5 -5
  9. package/app/modules/vgdynamictable/js/editable.js +19 -19
  10. package/app/modules/vgdynamictable/js/filters.js +21 -21
  11. package/app/modules/vgdynamictable/js/fixed.js +179 -179
  12. package/app/modules/vgdynamictable/js/pagination.js +1 -1
  13. package/app/modules/vgdynamictable/js/search.js +12 -12
  14. package/app/modules/vgdynamictable/js/sortable.js +71 -71
  15. package/app/modules/vgdynamictable/js/summary-footer.js +28 -28
  16. package/app/modules/vgdynamictable/js/table-remote.js +79 -79
  17. package/app/modules/vgdynamictable/js/table-url-state.js +31 -31
  18. package/app/modules/vgdynamictable/js/utils/common.js +48 -48
  19. package/app/modules/vgdynamictable/js/vgdynamictable.js +268 -268
  20. package/app/modules/vgdynamictable/readme.md +250 -250
  21. package/app/modules/vgdynamictable/scss/_skeleton.scss +6 -6
  22. package/app/modules/vgdynamictable/scss/_sortable.scss +24 -24
  23. package/app/modules/vgdynamictable/scss/_table.scss +4 -4
  24. package/app/modules/vgdynamictable/scss/_variables.scss +79 -79
  25. package/app/modules/vgdynamictable/scss/vgdynamictable.scss +27 -27
  26. package/app/modules/vgfilepreview/js/i18n.js +56 -56
  27. package/app/modules/vgfilepreview/js/renderers/image-modal.js +145 -145
  28. package/app/modules/vgfilepreview/js/renderers/image.js +92 -92
  29. package/app/modules/vgfilepreview/js/renderers/index.js +19 -19
  30. package/app/modules/vgfilepreview/js/renderers/office-modal.js +168 -168
  31. package/app/modules/vgfilepreview/js/renderers/office.js +79 -79
  32. package/app/modules/vgfilepreview/js/renderers/pdf-modal.js +260 -260
  33. package/app/modules/vgfilepreview/js/renderers/pdf.js +76 -76
  34. package/app/modules/vgfilepreview/js/renderers/playlist.js +71 -71
  35. package/app/modules/vgfilepreview/js/renderers/text-modal.js +343 -343
  36. package/app/modules/vgfilepreview/js/renderers/text.js +83 -83
  37. package/app/modules/vgfilepreview/js/renderers/video-modal.js +272 -272
  38. package/app/modules/vgfilepreview/js/renderers/video.js +80 -80
  39. package/app/modules/vgfilepreview/js/renderers/zip-modal.js +522 -522
  40. package/app/modules/vgfilepreview/js/renderers/zip.js +89 -89
  41. package/app/modules/vgfilepreview/js/vgfilepreview.js +7 -7
  42. package/app/modules/vgfilepreview/readme.md +68 -68
  43. package/app/modules/vgfilepreview/scss/_variables.scss +113 -113
  44. package/app/modules/vgfilepreview/scss/vgfilepreview.scss +464 -464
  45. package/app/modules/vgfiles/js/base.js +26 -26
  46. package/app/modules/vgfiles/js/droppable.js +260 -260
  47. package/app/modules/vgfiles/js/render.js +153 -153
  48. package/app/modules/vgfiles/js/vgfiles.js +104 -104
  49. package/app/modules/vgfiles/readme.md +123 -123
  50. package/app/modules/vgfiles/scss/_variables.scss +18 -18
  51. package/app/modules/vgfiles/scss/vgfiles.scss +148 -148
  52. package/app/modules/vgformsender/js/hideshowpass.js +16 -16
  53. package/app/modules/vgformsender/scss/vgformsender.scss +34 -34
  54. package/app/modules/vgmodal/js/vgmodal.drag.js +332 -332
  55. package/app/modules/vgmodal/js/vgmodal.js +188 -188
  56. package/app/modules/vgmodal/js/vgmodal.resize.js +27 -27
  57. package/app/modules/vgmodal/scss/vgmodal.scss +14 -14
  58. package/app/modules/vgnav/js/vgnav.js +135 -135
  59. package/app/modules/vgnav/readme.md +67 -67
  60. package/app/modules/vgnestable/README.md +307 -307
  61. package/app/modules/vgnestable/scss/_variables.scss +60 -60
  62. package/app/modules/vgnestable/scss/vgnestable.scss +163 -163
  63. package/app/modules/vgrangeslider/js/skins.js +222 -222
  64. package/app/modules/vgrangeslider/js/vgrangeslider.js +704 -704
  65. package/app/modules/vgrangeslider/readme.md +523 -523
  66. package/app/modules/vgrangeslider/scss/_variables.scss +53 -53
  67. package/app/modules/vgrangeslider/scss/vgrangeslider.scss +240 -240
  68. package/app/modules/vgselect/js/vgselect.js +39 -39
  69. package/app/modules/vgselect/scss/vgselect.scss +22 -22
  70. package/app/modules/vgspy/readme.md +28 -28
  71. package/app/modules/vgtoast/readme.md +18 -18
  72. package/app/modules/vgtoast/scss/vgtoast.scss +48 -48
  73. package/app/modules/vgtooltip/js/vgtooltip.js +89 -89
  74. package/app/modules/vgtooltip/readme.md +181 -181
  75. package/app/utils/js/components/ajax.js +117 -117
  76. package/app/utils/js/components/audio-metadata.js +240 -240
  77. package/app/utils/js/components/backdrop.js +17 -17
  78. package/app/utils/js/components/file-icon.js +109 -109
  79. package/app/utils/js/components/file-preview.js +304 -304
  80. package/app/utils/js/components/sanitize.js +150 -150
  81. package/app/utils/js/components/video-metadata.js +140 -140
  82. package/app/vgapp.js +130 -0
  83. package/build/vgapp.css +2 -2
  84. package/build/vgapp.css.map +1 -1
  85. package/build/vgapp.js +2 -1
  86. package/build/vgapp.js.LICENSE.txt +1 -0
  87. package/build/vgapp.js.map +1 -1
  88. package/index.js +5 -0
  89. package/package.json +21 -1
  90. package/.gitattributes +0 -1
  91. package/CHANGELOG.md +0 -392
  92. package/agents.md +0 -14
  93. package/webpack.config.js +0 -63
package/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ import vgapp, { VGApp } from './app/vgapp';
2
+
1
3
  export { default as VGAlert } from './app/modules/vgalert';
2
4
  export { default as VGCollapse } from './app/modules/vgcollapse';
3
5
  export { default as VGDropdown } from './app/modules/vgdropdown';
@@ -18,3 +20,6 @@ export { default as VGSpy } from './app/modules/vgspy';
18
20
  export { default as VGTabs } from './app/modules/vgtabs';
19
21
  export { default as VGToast } from './app/modules/vgtoast';
20
22
  export { default as VGTooltip } from './app/modules/vgtooltip';
23
+
24
+ export { VGApp, vgapp };
25
+ export default vgapp;
package/package.json CHANGED
@@ -1,6 +1,26 @@
1
1
  {
2
2
  "name": "vgapp",
3
- "version": "1.2.6",
3
+ "version": "1.3.1",
4
+ "main": "./build/vgapp.js",
5
+ "module": "./index.js",
6
+ "style": "./build/vgapp.css",
7
+ "exports": {
8
+ ".": {
9
+ "import": "./index.js",
10
+ "require": "./build/vgapp.js",
11
+ "default": "./index.js"
12
+ },
13
+ "./build/vgapp.css": "./build/vgapp.css",
14
+ "./package.json": "./package.json"
15
+ },
16
+ "files": [
17
+ "app",
18
+ "build",
19
+ "index.js",
20
+ "index.scss",
21
+ "README.md",
22
+ "LICENSE"
23
+ ],
4
24
  "description": "",
5
25
  "author": {
6
26
  "name": "Vegas Studio",
package/.gitattributes DELETED
@@ -1 +0,0 @@
1
- * text=auto
package/CHANGELOG.md DELETED
@@ -1,392 +0,0 @@
1
- # VEGAS-APP 1.2.6 (Июнь, 29, 2026)
2
- ## Новые фичи
3
- * В `BaseModule` добавлены универсальные route/fetch helpers: `requestRoute()` и `buildRouteUrl()` с нормализацией `headers`, `credentials`, query-параметров, JSON/FormData body и единым форматом ошибок ответа.
4
- * В `VGDynamicTable` remote-режим переведён на декларативную request-конфигурацию: добавлена поддержка `data-request-method`, `data-request-credentials`, `data-request-params` и построения export URL через общую route-конфигурацию.
5
-
6
- ## Изменения
7
- * В `VGDynamicTable` удалён отдельный request helper `app/modules/vgdynamictable/js/request.js`, а remote-загрузка и export унифицированы через новый transport в `BaseModule`.
8
- * В `VGDynamicTable` доработана виртуализация: добавлены верхний и нижний spacer-rows, динамическое измерение высоты строк, корректный teardown scroll-binding и исключение spacer-строк из обычного row-цикла.
9
- * В `VGDynamicTable` упрощена тема таблицы: базовые light-токены перенесены в основной набор переменных, удалены отдельные `theme-light/theme-dark/theme-auto` ветки, для virtual spacer-строк добавлены нейтральные стили.
10
- * Добавлена документация для `VGDynamicTable`, а документация `VGRangeSlider` оформлена как полноценный README с API, Data API, событиями, skin-режимами и примерами интеграции.
11
- * Обновлена версия пакета в `package.json`: `1.2.5` -> `1.2.6`.
12
-
13
- ---
14
-
15
- # VEGAS-APP 1.2.5 (Июнь, 25, 2026)
16
- ## Новые фичи
17
- * Добавлен новый модуль `VGTooltip` с режимами `tooltip` и `popover`, Data API, автопозиционированием, fallback placement, закрытием по `Esc` и клику вне элемента.
18
- * В `VGAlert` добавлен режим рендера `render.type = 'overlay'` для встраивания alert поверх текущей `.vg-modal` или `.vg-sidebar`.
19
- * Добавлен новый модуль `VGRangeSlider` с single/range режимами, Data API, tooltip, label, hidden-input синхронизацией, внешними output-target, методами `getValue()/setValue()/enable()/disable()` и событиями `vg.rangeslider.*`.
20
- * В `VGRangeSlider` добавана система скинов: `ruler` со шкалой и делениями, а также `status` с цветовыми состояниями на базе utility-переменных `$success`, `$warning`, `$danger`.
21
- * Добавлен и экспортирован `VGDynamicTable`: основной модуль таблицы с local/remote режимами, callback/event API, сортировкой, фильтрами, поиском, пагинацией, sticky header, clone-sticky header, summary/footer, row actions и persistent state.
22
-
23
- ## Изменения
24
- * В `VGAlert` рендер modal/overlay унифицирован: контейнер и экземпляр рендера создаются один раз, удалены отладочные `console.log`, закрытие вынесено в общий helper.
25
- * В `VGAlert` отмена confirm теперь корректно отклоняет `Promise`, а обработчик `vg.modal.hide` подписывается только для modal-режима и срабатывает один раз.
26
- * В `VGTooltip` глобальные обработчики `Esc` и клика вне элемента переведены на работу со всеми открытыми экземплярами, а сброс placement-классов вынесен в общий список.
27
- * В `VGRangeSlider` исправлены ошибки инициализации и синхронизации: вставка DOM для `input[type="range"]`, работа с вложенными data-параметрами (`output.*`, `name.*`, `input.*`, `label.words`, `status.*`), форматирование пустого prefix/suffix и merged tooltip в range-режиме.
28
- * В `VGRangeSlider` доработаны стили и геометрия: размеры вынесены в переменные, позиционирование fill/tooltip/шкалы переведено на pixel-based расчёт с учётом ширины thumb, настроены z-index слои, связана геометрия `ruler`, скрыты обычные labels для `ruler`-скина и добавлено dim-active поведение для делений.
29
- * В `VGRangeSlider` `status`-skin расширен поддержкой `status.by = from|to|avg`, `labelWords` и пробросом статуса (`tone`, `label`, `percent`, `sourceValue`) в события и callback detail.
30
- * В `VGDynamicTable` подключён публичный export через `index.js`, `Editable` переведён на получение инстанса таблицы через `Data.get(...)`, а инициализация переведена на `EventHandler.on(...)`.
31
- * В `VGDynamicTable` доработаны sticky-сценарии и таблица-обёртка: стили sticky header вынесены на уровень модуля, добавлен clone sticky header с синхронизацией scroll/select-all/drag-sort interactions, скорректированы fixed-column, striped и hover состояния.
32
- * В `VGDynamicTable` обновлены pagination и интеграции: локальный импорт `VGDropdown`, scroll-to-top при пагинации, summary node, persistent/view state, remote/local action callbacks и события `vgdt:*`.
33
- * Обновлена документация `VGAlert` и `VGTooltip`, из директории `app/modules/vgalert/js/old/` удалены устаревшие файлы.
34
- * Обновлена версия пакета в `package.json`: `1.2.4` -> `1.2.5`.
35
-
36
- ---
37
-
38
- # VEGAS-APP 1.2.4 (Июнь, 19, 2026)
39
- ## Новые фичи
40
- * В `VGModal` добавлены параметры `persistent` и `state` для opt-in persistent-модалок и сохранения состояния drag/resize через `localStorage`.
41
-
42
- ## Изменения
43
- * В `VGModal` persistent-модалки исключены из селектора обычных открытых окон и больше не закрываются автоматически при открытии следующей модалки.
44
- * В `VGModal` сохранение и восстановление inline-состояния диалога и контента встроено в цикл `show/hide`, включая поддержку пользовательского `state.key`.
45
- * В `VGModal` при `backdrop: true` клик по backdrop закрывает активную модалку через экземпляр текущего окна, а логика закрытия вынесена из общего `Backdrop`.
46
- * В `VGModal` при `backdrop: false` модалка больше не блокирует страницу: добавлен `pointer-events: none` на контейнер и отдельная ветка корректного cleanup без backdrop.
47
- * Обновлена версия пакета в `package.json`: `1.2.3` -> `1.2.4`.
48
-
49
- ---
50
-
51
- # VEGAS-APP 1.2.3 (Июнь, 16, 2026)
52
- ## Изменения
53
- * В `VGToast` исправлен lifecycle `show/hide/dispose`: добавлены защита от повторного hide, очистка отложенного скрытия и проверки актуального элемента в async callback.
54
- * В `VGToast` `shown/hidden` больше не срабатывают по уже удалённому экземпляру, а `_isShown()` стал null-safe.
55
- * В `VGFormSender` параметр `alert.toast.closeModalsBeforeToast` по умолчанию переключён в `true`, чтобы перед показом toast закрывались открытые модалки.
56
- * В событие `vg.modal.loaded` добавлен `relatedTarget`, чтобы обработчики загрузки получали элемент-источник открытия модалки.
57
- * Обновлена версия пакета в `package.json`: `1.2.2` -> `1.2.3`.
58
-
59
- ---
60
- # VEGAS-APP 1.2.2 (Июнь, 16, 2026)
61
- ## Новые фичи
62
- * В VGFiles добавлена настройка кнопок подтверждения удаления через `removes.buttons`, `removes.single.buttons` и `removes.all.buttons`.
63
- * В VGFormSender добавлены опции `alert.modal.closeModalsBeforeModal` и `alert.toast.closeModalsBeforeToast` для управления закрытием открытых модалок перед показом alert-modal или toast.
64
-
65
- ## Изменения
66
- * В VGFormSender при `alert.modal.closeModalsBeforeModal = false` новая alert-modal открывается поверх существующей модалки, получает класс `vg-modal-stacked` и повышенный `z-index`.
67
- * В VGFormSender закрытие открытых Bootstrap/VGModal модалок вынесено в общий helper.
68
- * В VGFormSender служебный параметр `closeModalsBeforeToast` не передается в настройки VGToast.
69
- * В VGModal persistent-модалка помечается отдельным признаком и не влияет на расчёт открытых модалок, а клик по backdrop закрывает именно активную модалку.
70
- * Обновлена версия пакета в `package.json`: `1.2.1` -> `1.2.2`.
71
-
72
- ---
73
-
74
- # VEGAS-APP 1.2.0 (Июнь, 16, 2026)
75
- ## Новые фичи
76
- * В VGToast добавлен параметр `type` со встроенными SVG-иконками для типов `success`, `error`, `warning`, `info`.
77
- * В VGFormSender добавлен новый режим алертов `alert.type = 'toast'` с интеграцией через `VGToast`.
78
-
79
- ## Изменения
80
- * В VGToast добавлена мапа типов уведомлений на набор иконок `getSVG`, включая `error -> danger`.
81
- * Вставка SVG-иконок в VGToast переведена на безопасную схему через `Sanitize.toSafeHtmlString()` и DOM fragment вместо прямого `innerHTML`.
82
- * В VGFormSender выделена общая подготовка содержимого алертов в `_prepareAlertResponse()`, чтобы единообразно собирать `title/message` для modal, collapse и toast.
83
- * В VGFormSender добавлена сборка toast-параметров из `alert.*` и `alert.toast`, включая проброс `theme`, `type`, `placement`, `autohide`, `delay`, `drag`, `resize`, `stack`, `animation`, `ajax`.
84
- * В VGRollup исправлена инициализация локализованных текстов: язык и подписи кнопок теперь подставляются до слияния параметров, с учётом `data-lang` и `params.lang`.
85
- * Обновлена версия пакета в `package.json`: `1.1.7` -> `1.2.0`.
86
-
87
- ---
88
-
89
- # VEGAS-APP 1.1.7 (Апрель, 13, 2026)
90
- ## Новые фичи
91
- * В VGFilePreview добавлена поддержка атрибута `data-name` для явной установки отображаемого имени файла (в приоритете над `data-vg-filepreview-display-name`).
92
-
93
- ## Изменения
94
- * Обновлена версия пакета в `package.json`: `1.1.6` -> `1.1.7`.
95
-
96
- ---
97
-
98
- # VEGAS-APP 1.1.6 (Апрель, 10, 2026)
99
- ## Новые фичи
100
- * **VGToast**: добавлены встроенные модули VGToastDrag и VGToastResize с поддержкой параметров drag/resize (enable, threshold, edgeSize, minWidth/minHeight, debug).
101
-
102
- ## Изменения
103
- * В VGToast добавлено автоматическое управление drag/resize при show/hide/dispose и синхронизация позиции/размера внутри viewport.
104
- * Исправлен скачок тоста при начале drag/resize: при подготовке позиции сбрасывается translate.
105
- * Исправлено поведение автоскрытия при интеракции: таймер останавливается на pointerdown и корректно возобновляется на pointerup/pointercancel.
106
- * В VGToast.build() при static: true и отсутствии явного autohide автоскрытие по умолчанию отключается.
107
- * Исправлены некорректно отображавшиеся комментарии в vgtoast.js.
108
-
109
- ---
110
- # VEGAS-APP 1.1.5 (Апрель, 9, 2026)
111
- ## Новые фичи
112
- * В VGModal добавлены встроенные модули `VGModalDrag` и `VGModalResize` с поддержкой параметров `drag`/`resize` (включение, порог, зона edge, минимальные размеры, debug).
113
-
114
- ## Изменения
115
- * В VGFilePreview при `ui.nameOnly=true` блок `.preview` отключается (очистка + скрытие), отображается только имя файла.
116
- * В VGFilePreview добавлена интеграция метаданных для audio/video. Audio: `title` и `cover` из ID3; Video: генерация poster-кадра в `icon`.
117
- * В VGFilePreview унифицировано поведение имени для audio/video: `name` показывает title из метаданных (если есть), иначе имя файла; `original_name` при наличии title показывает имя файла.
118
- * В VGFilePreview клик по `.vg-filepreview-audio-inline__name` теперь запускает/ставит на паузу аудио.
119
- * В VGFilePreview клик по картинке в `icon` (image/audio cover/video poster) открывает ImageModal.
120
- * В стилях VGFilePreview добавлен `.is-preview-action { cursor: pointer; }`.
121
- * В VGFilePreview добавлена конфигурация предпросмотра по группам через `this._params.preview.<group>.enable` (`audio`, `video`, `image`, `archive`, `text`, `office`, `pdf`), в текущем состоянии по умолчанию группы включены.
122
- * В VGModal добавлено автоматическое управление drag/resize при `show/hide/resize` модального окна, с синхронизацией позиции и границ внутри viewport.
123
- * В VGFilePreview изменены дефолты групп предпросмотра: `image` и `office` включены по умолчанию (теперь включены все группы предпросмотра).
124
- * В VGFilePreview для image-файлов в `_shouldRenderPreviewForCurrentFile()` добавлено принудительное отключение inline-preview.
125
-
126
- ---
127
- # VEGAS-APP 1.1.4 (Апрель, 9, 2026)
128
- ## Новые фичи
129
- * В модуле VGFilePreview для изображений реализован показ самой картинки в слоте иконки (с fallback на стандартную иконку при ошибке загрузки).
130
-
131
- ## Изменения
132
- * В модуле VGFilePreview параметр `ui.preview` сделан опциональным и выключен по умолчанию.
133
- * В модуле VGFilePreview длинные названия файлов и original name ограничены: `min-width: 60px` и `text-overflow: ellipsis`, чтобы название не схлопывалось.
134
-
135
- ---
136
-
137
- # VEGAS-APP 1.0.0 - 1.1.3 (Апрель, 9, 2026)
138
- * Новый модуль VGFilePreview, см. файл readme.md
139
- * У модуля VGModal новый параметр `size: width и height`, кастомная высота и ширина, хорошо для `width: fit-content`
140
- * модуль VGFilePreview интегрирован с VGFiles
141
- * Исправлены ошибки в разных модулях
142
-
143
- ---
144
-
145
- # VEGAS-APP 0.9.1 - 1.0.0 (Март, 2, 2026)
146
- * Новый модуль VGNestable, см. файл readme.md
147
- * Добавлены новые функции в модуле VGSelect, см. файл readme.md
148
- * Исправлены ошибки в разных модулях
149
-
150
- ---
151
-
152
- # VEGAS-APP 0.8.7 - 0.9.0 (Февраль, 10, 2026)
153
- * Исправлены ошибки в разных модулях
154
-
155
- ---
156
-
157
- # VEGAS-APP 0.8.3 - 0.8.6 (Январь, 4, 2026)
158
- * Исправлены ошибки в разных модулях
159
-
160
- ---
161
-
162
- # VEGAS-APP 0.8.2 (Январь, 4, 2026)
163
- * Оптимизирован модуль VGRollup, см. файл readme.md
164
- * Оптимизирован модуль VGSidebar, см. файл readme.md
165
- * Оптимизирован модуль VGTabs, см. файл readme.md
166
- * Оптимизирован модуль VGSpy, см. файл readme.md
167
- * Оптимизирован модуль VGToast, см. файл readme.md
168
- * Оптимизирован и дополнен модуль VGSelect, см. файл readme.md
169
-
170
- ---
171
-
172
- # VEGAS-APP 0.8.1 (Январь, 2, 2026)
173
- * Оптимизирован и дополнен модуль VGLoadMore, см. файл readme.md
174
-
175
- ---
176
-
177
- # VEGAS-APP 0.8.0 (Декабрь, 31, 2025)
178
- * Полностью переписан модуль VGFiles, см. файл readme.md
179
- * Рефакторинг модуля VGLawCookie, см. файл readme.md
180
-
181
- # VEGAS-APP 0.7.9 (Декабрь, 19, 2025)
182
- * Добавлена возможность управления клавиатурой в модуле VGAlert. ESC - отменяет действие. ENTER - подтверждает действие
183
- * В VGAlert добавлен JSDoc и документация
184
- * В VGCollapse добавлен JSDoc и документация
185
-
186
- # VEGAS-APP 0.7.7 - 0.7.8 (Декабрь, 18, 2025)
187
- * Дополнен модуль VGFormSender. В директории модуля появился файл readme.md. Добавлен JSDoc
188
- * Удалена набор функций Ajax в module-fn и добавлен самостоятельный класс Ajax с более продвинутой логикой работы с XHR
189
- * Добавлен в компоненты класс LaravelHtmlBuilder, на лету создающий шаблоны и элементы
190
- ```js
191
- const tmpl = Html('dom'); // или 'string'
192
- let elm = tmpl.div({...attrbuttes}, 'text');
193
- ```
194
- * Начата работа над компонентом Lang доступные функции `lang_titles(lang, module)` и `lang_messages(lang, module)` (в разработке)
195
- * Исправлены ошибки в разных модулях
196
-
197
- ---
198
- # VEGAS-APP 0.7.6 (Декабрь, 13, 2025)
199
- * Исправлена анимация в модуле VGToast
200
- * Добавлены темы `theme:` `['success', 'info', 'warning', 'danger', 'dark']` для модуля VGToast
201
- * Исправлены ошибки в разных модулях
202
-
203
- ---
204
-
205
- # VEGAS-APP 0.7.5 (Декабрь, 08, 2025)
206
- * В модуль VGFORMSENDER добавлен параметр `fields` для программного добавление новых полей в FormData,
207
- если в значении объекта окажется массив или объект, то сформируется json строка
208
- ```js
209
- {
210
- fields: [
211
- {
212
- name: Andranik,
213
- surname: Gasparyan
214
- },
215
- ...
216
- {
217
- json: [{key: value}]
218
- }
219
- ]
220
- }
221
- ```
222
- * Хак на кнопку отправки `onclick` можно повесить колбек на событие
223
- ```html
224
- <button type="submit" class="btn btn-primary"
225
- onclick='vg.VGFormSender.buttonClick("#form-simple", function (form, self) {
226
- self._button.innerHTML = `<span class="spinner-border spinner-border-sm"></span>`;
227
- }, "before")'
228
- >
229
- <span>Сохранить</span>
230
- </button>
231
- ```
232
- у модуля три события `before`, `error` и `success`
233
-
234
- * Исправлены ошибки в разных модулях
235
-
236
- ---
237
-
238
- # VEGAS-APP 0.7.2 - 0.7.4 (Декабрь, 04, 2025)
239
- * Новые стили и иконки для success, info, danger, warning
240
- * Исправлены ошибки в разных модулях
241
-
242
- ## Новый модуль VGAlert
243
-
244
- ---
245
-
246
- # VEGAS-APP 0.7.1 (Ноябрь, 26, 2025)
247
- * в vgformsender добавлен interceptor beforeSend, позволяющий проделать необходимые пользовательские действия перед тем, как отправить форму
248
-
249
- ---
250
-
251
- # VEGAS-APP 0.6.9 - 0.7.0 (Ноябрь, 21, 2025)
252
- * Изменения коснулись модуля vgformsender в частности кнопку submit, дата атрибуты можно вешать на нее или на саму форму
253
- 1. Опциональное состояние кнопки(submit) data-button-enabled="false" - никаких действий с текстом кнопки не будет
254
- 2. data-button-disabled - по умолчанию `true`, блокирует кнопку при отправке
255
- 3. data-button-spinner-enabled - по умолчанию `false`, добавляет спиннер загрузки в кнопку
256
- 4. data-button-spinner-element - добавит код по умолчанию `<span class="spinner-border spinner-border-sm me-2"></span>`, можно придумать свой
257
- 5. data-button-initial - можно вписать текст, или он сам возьмет содержимое кнопки.
258
- 6. data-button-send - текст во время отправки, по умолчанию `Отправляем...`
259
-
260
- * Исправлены ошибки в разных модулях
261
-
262
- ---
263
-
264
- # VEGAS-APP 0.6.6 - 0.6.8 (Ноябрь, 17, 2025)
265
- * isLeaveBackDrop (boolean) - для методов .hide() модулей VGModal и VGSidebar. Если программно нужно сменить модалки или сайдбары и/или одно на другое при этом не будет затронут задний фон Backdrop
266
- * Исправлены ошибки в разных модулях
267
-
268
- ---
269
-
270
- # VEGAS-APP 0.6.2 - 0.6.5 (Ноябрь, 10, 2025)
271
- * Исправлены ошибки в разных модулях
272
-
273
- ---
274
-
275
- # VEGAS-APP 0.5.6 - 0.6.1 (Август, 21, 2025)
276
- * Разделение JS и CSS
277
- * Исправлены ошибки в разных модулях
278
-
279
- ---
280
-
281
- # VEGAS-APP 0.4.6 - 0.5.5 (Июнь, 21, 2025)
282
- * Исправлены ошибки в разных модулях
283
-
284
- ---
285
-
286
- # VEGAS-APP 0.4.3 - 0.4.6 (Июнь, 3, 2025)
287
- * Исправлены ошибки в разных модулях
288
- * Во все модули, где есть группа параметров ajax, добавлен параметр output (boolean),
289
- разрешает или запрещает добавление контента с сервера в целевой блок
290
- * Во все модули, где есть группа параметров ajax, добавлен параметр once (boolean),
291
- разовый запрос на сервер
292
-
293
- ---
294
- ## Модуль VGRollup
295
- * Исправлено, последовательное открытие свернутого контента
296
-
297
- ## Новый модуль VGLoadMore
298
-
299
- ---
300
-
301
- # VEGAS-APP 0.4.3 (Май, 31, 2025)
302
- * Исправлены ошибки в разных модулях
303
- ## Новый модуль VGTabs
304
-
305
- ---
306
-
307
- # VEGAS-APP 0.4.0 (Май, 287, 2025)
308
- * Исправлены ошибки в разных модулях
309
- ## Модуль VGFORMSENDER
310
- * Добавлен параметр interceptors (перехватчики) для состояний error и/или success, после чего вызывается соответствующий колбек afterError и/или afterSuccess
311
- * Добавлен параметр delay в группу alert автоматическое закрытие, отсчет в миллисекундах
312
-
313
- ---
314
-
315
- # VEGAS-APP 0.3.4 (Май, 20, 2025)
316
- ## Новый модуль VGSpy
317
-
318
- ---
319
-
320
- # VEGAS-APP 0.3.0 (Май, 09, 2025)
321
- * Исправлены ошибки
322
- ## Модуль VGFORMSENDER
323
- * Добавлен параметр pass, будет добавлен глаз к полю с паролем
324
-
325
- ---
326
-
327
- # VEGAS-APP 0.2.5 (Апрель, 12, 2025)
328
- * Исправлены ошибки в разных модулях
329
- ## Новый модуль VGRollup
330
-
331
- ---
332
-
333
- # VEGAS-APP 0.2.4 (Апрель, 8, 2025)
334
- ## Модуль VGSidebar & VGModal
335
- * Добавлен параметр hash
336
- ## Новый модуль VGToast
337
-
338
- ---
339
-
340
- # VEGAS-APP 0.2.3 (Апрель, 4, 2025)
341
- ## Модуль VGDROPDOWN
342
- * Добавлен параметр overflow и backdrop
343
-
344
- ---
345
-
346
- # VEGAS-APP 0.2.1 (Март, 31, 2025)
347
- ## Модуль VGDROPDOWN
348
- * Теперь можно открыть выпадающих список через параметр data-vg-target
349
- ---
350
-
351
- # VEGAS-APP 0.1.9 (Март, 13, 2025)
352
- ## Модуль VGFORMSENDER
353
- * Новый параметр timeout. Задержка показа модального окна после закрытия других открытых окон.
354
- ---
355
-
356
- # VEGAS-APP 0.1.8 (Март, 13, 2025)
357
- ## Модуль VGSelect
358
- * Релиз
359
- ---
360
-
361
- # VEGAS-APP 0.1.7 (Март, 12, 2025)
362
- ## Модуль VGSelect
363
- * Исправлены ошибки
364
- ---
365
-
366
- # VEGAS-APP 0.1.5 (Март, 11, 2025)
367
- ## Модуль VGSelect
368
- ### Добавлено:
369
- * data-placeholder
370
- ---
371
-
372
- ### Исправлено:
373
- * Открытие и закрытие списка
374
- ---
375
-
376
- ## Для модулей VGSidebar и VGModal
377
- ### Добавлено:
378
- * Событие после аякс запроса NAME_KEY.loaded
379
- ---
380
-
381
- # VEGAS-APP 0.1.4 (Март, 10, 2025)
382
- * Перенесен плагин (<a href="https://github.com/vegas-dev/vegas-select">VGSelect</a>) в модуль VGSelect
383
- * для модулей VGSidebar и VGModal добавлена возможность собирать параметры с кнопки вызова элемента
384
- * в модуль VGSidebar добавлен класс vg-sidebar-open в тело документа
385
- * исправлены некоторые ошибки
386
- ---
387
-
388
-
389
-
390
-
391
-
392
-
package/agents.md DELETED
@@ -1,14 +0,0 @@
1
- ### Окружение
2
- - Проект, репозиторий, vegas-app является основным, фундаментальным. Тут идет разработка, редактирование проекта vgapp.
3
- - Проект, репозиторий, vegas-app-backend является демонстрационным, для тестирования и проверки работоспособности.
4
- - Оба проекта связаны между собой симлинками, но при этом имеют разные цели и функциональность.
5
-
6
-
7
- ### Свод правил:
8
- 1. Правила по changelog для проекта vegas-app:
9
- - Правило: при команде "записать в changelog" или "дополни changelog" записываем вкратце изменения в файл `D:\OSPanel\home\projects\vegas-app\CHANGELOG.md`, которые были сделаны с прошлой версии. Записываем так: Версия (смотри `package.json`), дата и построчно что было внесено, нужно как-то выделить новые фичи.
10
- - Смотрим только проект и репозиторий vegas-app, а не связанные.
11
- - Если версия в `package.json` не изменилась, нужно проверить, есть ли эта версия в `CHANGELOG.md`.
12
- - Если запись версии уже есть, дописывать изменения в существующую запись (как дополнение), а не создавать новый блок той же версии.
13
- - Если записи версии нет, создавать новый блок с версией из `package.json`, датой и списком изменений, запись добавляется сверху.
14
- 2. Все файлы должны иметь кодировку UTF-8.
package/webpack.config.js DELETED
@@ -1,63 +0,0 @@
1
- const nameModule = 'VGApp';
2
- const outputPaths = ['./build'];
3
-
4
- const path = require('path');
5
- const webpack = require('webpack');
6
- const MiniCssExtractPlugin = require('mini-css-extract-plugin');
7
-
8
- module.exports = outputPaths.map(outputPath => {
9
- return (env, argv) => {
10
- let mode = argv.mode || 'development',
11
- name = nameModule.trim().toLowerCase();
12
-
13
- let args = {
14
- entry: './index.scss',
15
- output: {
16
- path: path.resolve(__dirname, outputPath),
17
- filename: name + '.js',
18
- library: 'vg',
19
- },
20
- stats: {
21
- warnings: false
22
- },
23
-
24
- module: {
25
- rules: [
26
- {
27
- test: /\.js$/,
28
- use: 'babel-loader',
29
- },
30
- {
31
- test: /\.(scss|css)$/,
32
- use: [MiniCssExtractPlugin.loader, 'css-loader', 'postcss-loader', 'sass-loader'],
33
- }
34
- ],
35
- },
36
-
37
- plugins: [
38
- new webpack.DefinePlugin({
39
- NODE_ENV: JSON.stringify(mode),
40
- LANG: JSON.stringify('ru'),
41
- }),
42
- new MiniCssExtractPlugin({
43
- filename: name + '.css',
44
- }),
45
- ],
46
- };
47
-
48
- if (mode === 'development') {
49
- args.cache = false;
50
- args.devtool = 'inline-cheap-module-source-map';
51
- args.watch = true;
52
- args.watchOptions = {
53
- aggregateTimeout: 100
54
- }
55
- }
56
-
57
- if (mode === 'production') {
58
- args.devtool = 'source-map'
59
- }
60
-
61
- return args;
62
- }
63
- });