iobroker.staticsfilefolder 0.0.24 → 0.0.28

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 CHANGED
@@ -64,6 +64,18 @@ Once configured and the instance is running (green status):
64
64
  Placeholder for the next version (at the beginning of the line):
65
65
  ### **WORK IN PROGRESS**
66
66
  -->
67
+ ### 0.0.28
68
+ * Fully migrated materialized admin UI to modern admin 5 jsonConfig UI, and evaluated typescript 7 compatibility.
69
+
70
+ ### 0.0.27
71
+ * Upgraded typescript to version 7, and fully migrated materialized admin UI to modern admin 5 jsonConfig UI.
72
+
73
+ ### 0.0.26
74
+ * Regenerated lockfile cleanly to resolve npm ci errors on GitHub Actions workflow.
75
+
76
+ ### 0.0.25
77
+ * Resolved ESLint peer dependency warnings, linked CHANGELOG_OLD in README, updated check-and-lint workflow to Node 24, and added major auto-merge rules for GitHub actions.
78
+
67
79
  ### 0.0.24
68
80
  * Resolved all remaining repochecker warnings and suggestions, migrated to standard automerge-dependabot workflow, and updated to ESLint v9 with flat config.
69
81
 
@@ -97,6 +109,8 @@ Once configured and the instance is running (green status):
97
109
  ### 0.0.1
98
110
  * (gokturk413) initial release: SPA, Offline document viewers, Chokidar file observer.
99
111
 
112
+ [Older changelog entries](CHANGELOG_OLD.md)
113
+
100
114
  ## License
101
115
  MIT License
102
116
 
@@ -0,0 +1,65 @@
1
+ {
2
+ "i18n": true,
3
+ "type": "panel",
4
+ "items": {
5
+ "webInstance": {
6
+ "type": "instance",
7
+ "adapter": "web",
8
+ "allowAll": true,
9
+ "label": {
10
+ "en": "Extend WEB adapter:",
11
+ "de": "WEB-Adapter erweitern:",
12
+ "ru": "Расширить веб-адаптер:",
13
+ "pt": "Estender o adaptador WEB:",
14
+ "nl": "Breid WEB-adapter uit:",
15
+ "fr": "Étendre l'adaptateur WEB :",
16
+ "it": "Estendi l'adattatore WEB:",
17
+ "es": "Ampliar el adaptador WEB:",
18
+ "pl": "Rozszerz adapter WEB:",
19
+ "uk": "Розширити веб-адаптер:",
20
+ "zh-cn": "扩展WEB适配器:",
21
+ "az": "WEB adapteri genişləndir:"
22
+ },
23
+ "sm": 12,
24
+ "md": 6
25
+ },
26
+ "route": {
27
+ "type": "text",
28
+ "label": {
29
+ "en": "Route path:",
30
+ "de": "Routenpfad:",
31
+ "ru": "Путь маршрута:",
32
+ "pt": "Caminho da rota:",
33
+ "nl": "Routetracé:",
34
+ "fr": "Chemin d'accès:",
35
+ "it": "Percorso della rotta:",
36
+ "es": "Ruta de acceso:",
37
+ "pl": "Ścieżka trasy:",
38
+ "uk": "Шлях маршруту:",
39
+ "zh-cn": "路由路径:",
40
+ "az": "Marşrut yolu:"
41
+ },
42
+ "sm": 12,
43
+ "md": 6
44
+ },
45
+ "dirname": {
46
+ "type": "text",
47
+ "label": {
48
+ "en": "Static Files Directory:",
49
+ "de": "Verzeichnis für statische Dateien:",
50
+ "ru": "Каталог статических файлов:",
51
+ "pt": "Diretório de arquivos estáticos:",
52
+ "nl": "Bestandsmap voor statische bestanden:",
53
+ "fr": "Répertoire des fichiers statiques :",
54
+ "it": "Directory dei file statici:",
55
+ "es": "Directorio de archivos estáticos:",
56
+ "pl": "Katalog plików statycznych:",
57
+ "uk": "Каталог статичних файлів:",
58
+ "zh-cn": "静态文件目录:",
59
+ "az": "Statik Fayllar Qovluğu:"
60
+ },
61
+ "sm": 12,
62
+ "md": 12
63
+ }
64
+ }
65
+ }
package/io-package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "staticsfilefolder",
4
- "version": "0.0.24",
4
+ "version": "0.0.28",
5
5
  "news": {
6
- "0.0.24": {
7
- "en": "Resolved all remaining repochecker warnings and suggestions, migrated to standard automerge-dependabot workflow, and updated to ESLint v9 with flat config.",
8
- "de": "Alle verbleibenden Warnungen und Vorschläge des Repocheckers behoben, auf Standard-Automerge-Dependabot-Workflow umgestellt und auf ESLint v9 mit Flat-Config aktualisiert.",
9
- "ru": "Устранены все оставшиеся предупреждения и предложения repochecker, осуществлен переход на стандартный рабочий процесс автослияния dependabot и обновлен до ESLint v9 с плоской конфигурацией.",
10
- "pt": "Resolvido todos os avisos e sugestões restantes do repochecker, migrado para o fluxo de trabalho padrão de mesclagem automática do dependabot e atualizado para ESLint v9 com configuração plana.",
11
- "nl": "Alle resterende repochecker waarschuwingen en suggesties opgelost, gemigreerd naar de standaard automerge-dependabot workflow, en geüpgraded naar ESLint v9 met flat config.",
12
- "fr": "Résolution de tous les avertissements et suggestions restants de repochecker, migration vers le flux de travail d'auto-fusion standard de dependabot et mise à jour vers ESLint v9 avec configuration plate.",
13
- "it": "Risolti tutti gli avvisi e i suggerimenti rimanenti di repochecker, migrato al flusso di lavoro standard di unione automatica di dependabot e aggiornato a ESLint v9 con configurazione piatta.",
14
- "es": "Se resolvieron todas las advertencias y sugerencias restantes de repochecker, se migró al flujo de trabajo estándar de fusión automática de dependabot y se actualizó a ESLint v9 con configuración plana.",
15
- "pl": "Rozwiązano wszystkie pozostałe ostrzeżenia i sugestie repocheckera, zmigrowano do standardowego przepływu pracy automatycznego scalania dependabot oraz zaktualizowano do ESLint v9 z płaską konfiguracją.",
16
- "uk": "Усунено всі залишені попередження та пропозиції repochecker, здійснено перехід на стандартний робочий процес автозлиття dependabot та оновлено до ESLint v9 з плоскою конфігурацією.",
17
- "zh-cn": "解决了所有剩余的 repochecker 警告和建议,迁移到标准的自动合并 dependabot 工作流,并升级到具有平面配置的 ESLint v9。"
6
+ "0.0.28": {
7
+ "en": "Fully migrated materialized admin UI to modern admin 5 jsonConfig UI, and evaluated typescript 7 compatibility.",
8
+ "de": "Die materialized Admin-Benutzeroberfläche wurde vollständig auf die moderne Admin 5 jsonConfig-Benutzeroberfläche migriert, und die TypeScript 7-Kompatibilität wurde evaluiert.",
9
+ "ru": "Полностью перенесен materialized интерфейс администратора на современный интерфейс jsonConfig администратора 5, а также оценена совместимость с TypeScript 7.",
10
+ "pt": "Migrado totalmente a UI do admin materialized para a moderna UI jsonConfig do admin 5 e avaliado a compatibilidade do typescript 7.",
11
+ "nl": "Materialized admin UI volledig gemigreerd naar modern admin 5 jsonConfig UI, en typescript 7 compatibiliteit geëvalueerd.",
12
+ "fr": "Migration complète de l'interface utilisateur d'administration materialized vers l'interface utilisateur moderne admin 5 jsonConfig, et évaluation de la compatibilité avec typescript 7.",
13
+ "it": "Migrata completamente l'interfaccia utente materialized dell'amministratore alla moderna interfaccia utente jsonConfig dell'amministratore 5, e valutata la compatibilità con typescript 7.",
14
+ "es": "Se migró completamente la interfaz de usuario materialize del administrador a la interfaz de usuario moderna jsonConfig del administrador 5, y se evaluó la compatibilidad con typescript 7.",
15
+ "pl": "W pełni zmigrowano materialized interfejs administratora do nowoczesnego interfejsu jsonConfig administratora 5, oraz oceniono kompatybilność z typescript 7.",
16
+ "uk": "Повністю перенесено materialized інтерфейс адміністратора на сучасний інтерфейс jsonConfig адміністратора 5, а також оцінено сумісність з typescript 7.",
17
+ "zh-cn": " materialized 管理员 UI 完全迁移到现代管理员 5 jsonConfig UI,并评估了 typescript 7 兼容性。"
18
18
  },
19
19
  "0.0.15": {
20
20
  "en": "Reverted minimum Node.js engine requirement to 20 to support GitHub Actions runners.",
@@ -121,7 +121,7 @@
121
121
  "connectionType": "local",
122
122
  "dataSource": "poll",
123
123
  "adminUI": {
124
- "config": "materialize"
124
+ "config": "json"
125
125
  },
126
126
  "dependencies": [
127
127
  {
@@ -136,7 +136,9 @@
136
136
  ]
137
137
  },
138
138
  "native": {
139
- "webInstance": "*"
139
+ "webInstance": "*",
140
+ "route": "demo",
141
+ "dirname": ""
140
142
  },
141
143
  "objects": [],
142
144
  "instanceObjects": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.staticsfilefolder",
3
- "version": "0.0.24",
3
+ "version": "0.0.28",
4
4
  "description": "Static Files Folder",
5
5
  "author": {
6
6
  "name": "gokturk413",
@@ -31,11 +31,10 @@
31
31
  "@alcalzone/release-script-plugin-manual-review": "^5.2.0",
32
32
  "@iobroker/adapter-dev": "^1.5.0",
33
33
  "@iobroker/eslint-config": "^2.3.4",
34
- "@iobroker/testing": "^5.2.2",
35
- "@tsconfig/node22": "^22.0.0",
34
+ "@iobroker/testing": "^5.3.0",
35
+ "@tsconfig/node22": "^22.0.5",
36
36
  "@types/node": "^18.19.24",
37
37
  "@types/proxyquire": "^1.3.31",
38
- "eslint": "^9.10.0",
39
38
  "proxyquire": "^2.1.3",
40
39
  "typescript": "^5.5.4"
41
40
  },
@@ -1,130 +0,0 @@
1
- <html>
2
-
3
- <head>
4
-
5
- <!-- Load ioBroker scripts and styles-->
6
- <link rel="stylesheet" type="text/css" href="../../css/adapter.css" />
7
- <link rel="stylesheet" type="text/css" href="../../lib/css/materialize.css">
8
-
9
- <script type="text/javascript" src="../../lib/js/jquery-3.2.1.min.js"></script>
10
- <script type="text/javascript" src="../../socket.io/socket.io.js"></script>
11
-
12
- <script type="text/javascript" src="../../js/translate.js"></script>
13
- <script type="text/javascript" src="../../lib/js/materialize.js"></script>
14
- <script type="text/javascript" src="../../js/adapter-settings.js"></script>
15
-
16
- <!-- Load our own files -->
17
- <link rel="stylesheet" type="text/css" href="style.css" />
18
- <script type="text/javascript" src="words.js"></script>
19
-
20
- <script type="text/javascript">
21
- // This will be called by the admin adapter when the settings page loads
22
- function load(settings, onChange) {
23
- // example: select elements with id=key and class=value and insert value
24
- if (!settings) return;
25
- $('.value').each(function () {
26
- var $key = $(this);
27
- var id = $key.attr('id');
28
- if ($key.attr('type') === 'checkbox') {
29
- // do not call onChange direct, because onChange could expect some arguments
30
- $key.prop('checked', settings[id])
31
- .on('change', () => onChange())
32
- ;
33
- } else {
34
- // do not call onChange direct, because onChange could expect some arguments
35
- $key.val(settings[id])
36
- .on('change', () => onChange())
37
- .on('keyup', () => onChange())
38
- ;
39
- }
40
- });
41
-
42
- getExtendableInstances(function (result) {
43
- if (result) {
44
- var text = '';
45
- for (var r = 0; r < result.length; r++) {
46
- var name = result[r]._id.substring('system.adapter.'.length);
47
- text += '<option value="' + name + '" ' + (settings.webInstance === name ? 'selected' : '') + '>' + name + '</option>';
48
- }
49
- $('#webInstance').append(text).select();
50
- }
51
- });
52
- onChange(false);
53
- // reinitialize all the Materialize labels on the page if you are dynamically adding inputs:
54
- if (M) M.updateTextFields();
55
- }
56
-
57
- // This will be called by the admin adapter when the user presses the save button
58
- function save(callback) {
59
- // example: select elements with class=value and build settings object
60
- var obj = {};
61
- $('.value').each(function () {
62
- var $this = $(this);
63
- if ($this.attr('type') === 'checkbox') {
64
- obj[$this.attr('id')] = $this.prop('checked');
65
- } else if ($this.attr('type') === 'number') {
66
- obj[$this.attr('id')] = parseFloat($this.val());
67
- } else {
68
- obj[$this.attr('id')] = $this.val();
69
- }
70
- });
71
- callback(obj);
72
- }
73
- </script>
74
-
75
- </head>
76
-
77
- <body>
78
-
79
- <div class="adapter-container m">
80
- <div class="row">
81
- <div class="col s12">
82
- <ul class="tabs">
83
- <li class="tab col s4"><a href="#tab-main" class="translate active">Main settings</a></li>
84
- </ul>
85
- </div>
86
- <div id="tab-main" class="col s12 page">
87
- <div class="row">
88
- <div class="col s12 m4 l2">
89
- <img src="staticsfilefolder.png" class="logo">
90
- </div>
91
- </div>
92
- <div class="row">
93
- <div class="col s12 m4">
94
- <select class="value" id="webInstance">
95
- <option value="*" class="translate">all</option>
96
- </select>
97
- <label for="webInstance" class="translate">Extend WEB adapter:</label>
98
- </div>
99
- </div>
100
- <div class="row">
101
- <div class="col s12 m4">
102
- <input class="value" id="route"/>
103
- <label for="route" class="translate">Route path:</label>
104
- </div>
105
- </div>
106
- <div class="row">
107
- <div class="col s12 m4">
108
- <input class="value" id="dirname"/>
109
- <label for="dirname" class="translate">Static Files Directory:</label>
110
- </div>
111
- </div>
112
- <!--<div class="row">
113
- <div class="col s12 m4 input-field">
114
- <input class="value" id="simpleProxy" type="checkbox"/>
115
- <span for="route" class="translate">Use simple proxy (no sockets)</span>
116
- </div>
117
- </div>
118
- <div class="row">
119
- <div class="col s12 m4">
120
- <input class="value" id="errorTimeout" type="number" min="1000"/>
121
- <label for="errorTimeout" class="translate">Error timeout(ms):</label>
122
- </div>
123
- </div>-->
124
- </div>
125
- </div>
126
- </div>
127
-
128
- </body>
129
-
130
- </html>
package/admin/style.css DELETED
@@ -1,32 +0,0 @@
1
- /* You can delete those if you want. I just found them very helpful */
2
- * {
3
- box-sizing: border-box
4
- }
5
- .m {
6
- /* Don't cut off dropdowns! */
7
- overflow: initial;
8
- }
9
- .m.adapter-container,
10
- .m.adapter-container > div.App {
11
- /* Fix layout/scrolling issues with tabs */
12
- height: 100%;
13
- width: 100%;
14
- position: relative;
15
- }
16
- .m .select-wrapper + label {
17
- /* The positioning for dropdown labels is messed up */
18
- transform: none !important;
19
- }
20
-
21
- label > i[title] {
22
- /* Display the help cursor for the tooltip icons and fix their positioning */
23
- cursor: help;
24
- margin-left: 0.25em;
25
- }
26
-
27
- .dropdown-content {
28
- /* Don't wrap text in dropdowns */
29
- white-space: nowrap;
30
- }
31
-
32
- /* Add your styles here */
package/admin/words.js DELETED
@@ -1,46 +0,0 @@
1
- /* eslint no-unused-vars: off */
2
- /* eslint no-global-assign: off */
3
- /* global systemDictionary */
4
- "use strict";
5
-
6
- systemDictionary = {
7
- "staticsfilefolder adapter settings": {
8
- "en": "Adapter settings for staticsfilefolder",
9
- "de": "Adaptereinstellungen für staticsfilefolder",
10
- "ru": "Настройки адаптера для staticsfilefolder",
11
- "pt": "Configurações do adaptador para staticsfilefolder",
12
- "nl": "Adapterinstellingen voor staticsfilefolder",
13
- "fr": "Paramètres d'adaptateur pour staticsfilefolder",
14
- "it": "Impostazioni dell'adattatore per staticsfilefolder",
15
- "es": "Ajustes del adaptador para staticsfilefolder",
16
- "pl": "Ustawienia adaptera dla staticsfilefolder",
17
- "uk": "Налаштування адаптера для staticsfilefolder",
18
- "zh-cn": "staticsfilefolder的适配器设置"
19
- },
20
- "option1": {
21
- "en": "option1",
22
- "de": "Option 1",
23
- "ru": "Опция 1",
24
- "pt": "Opção 1",
25
- "nl": "Optie 1",
26
- "fr": "Option 1",
27
- "it": "opzione 1",
28
- "es": "Opción 1",
29
- "pl": "opcja 1",
30
- "uk": "варіант1",
31
- "zh-cn": "选项1"
32
- },
33
- "option2": {
34
- "en": "option2",
35
- "de": "Option 2",
36
- "ru": "вариант 2",
37
- "pt": "opção 2",
38
- "nl": "Optie 2",
39
- "fr": "Option 2",
40
- "it": "opzione 2",
41
- "es": "opcion 2",
42
- "pl": "Opcja 2",
43
- "uk": "варіант2",
44
- "zh-cn": "选项2"
45
- }
46
- };