iobroker.javascript 7.10.2 → 7.11.0

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.
@@ -4,6 +4,9 @@ if (typeof Blockly === 'undefined') {
4
4
  // translations
5
5
  Blockly.Words = {};
6
6
 
7
+ // --- GLOBAL --------------------------------------------------
8
+ Blockly.Words['select_id'] = {'en': 'select ID', 'de': 'ID auswählen', 'ru': 'Выбрать ID', 'pt': 'selecione ID', 'nl': 'selecteer ID', 'fr': 'sélectionnez ID', 'it': 'seleziona ID', 'es': 'seleccionar ID', 'pl': 'select ID', 'zh-cn': '对象ID', 'uk': 'виберіть ID'};
9
+
7
10
  // --- OBJECT --------------------------------------------------
8
11
  Blockly.Words['Object'] = {'en': 'Object', 'de': 'Objekt', 'ru': 'Объект', 'pt': 'Objeto', 'nl': 'Doel', 'fr': 'Objet', 'it': 'Oggetto', 'es': 'Objeto', 'pl': 'Obiekt', 'zh-cn': '对象', 'uk': 'Об\'єкт'};
9
12
 
@@ -43,12 +46,18 @@ Blockly.Words['exec_log_debug'] = {'en': 'debug',
43
46
  Blockly.Words['exec_log_warn'] = {'en': 'warning', 'de': 'warning', 'ru': 'warning', 'pt': 'atenção', 'nl': 'waarschuwing', 'fr': 'Attention', 'it': 'avvertimento', 'es': 'advertencia', 'pl': 'warning', 'zh-cn': '警告信息', 'uk': 'УВАГА'};
44
47
  Blockly.Words['exec_log_error'] = {'en': 'error', 'de': 'error', 'ru': 'ошибка', 'pt': 'erro', 'nl': 'fout', 'fr': 'Erreur', 'it': 'errore', 'es': 'error', 'pl': 'error', 'zh-cn': '错误信息', 'uk': 'помилка'};
45
48
 
49
+ // --- action http --------------------------------------------------
50
+
51
+ Blockly.Words['http_timeout'] = {'en': 'timeout', 'de': 'Timeout', 'ru': 'timeout', 'pt': 'timeout', 'nl': 'timeout', 'fr': 'timeout', 'it': 'timeout', 'es': 'timeout', 'pl': 'timeout', 'zh-cn': 'timeout', 'uk': 'timeout'};
52
+ Blockly.Words['http_timeout_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
53
+ Blockly.Words['http_timeout_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
54
+ Blockly.Words['http_type'] = {'en': 'response data type', 'de': 'Antwort-Datentyp', 'ru': 'Тип данных', 'pt': 'Tipo de dados de resposta', 'nl': 'Type responsgegevens', 'fr': 'Type de données de réponse', 'it': 'Tipo di dati di risposta', 'es': 'Tipo de datos de respuesta', 'pl': 'Typ danych odpowiedzi', 'zh-cn': '响应数据类型', 'uk': 'Тип даних відповіді'};
55
+ Blockly.Words['http_type_text'] = {'en': 'text', 'de': 'Text', 'ru': 'Текст', 'pt': 'Texto', 'nl': 'Tekst', 'fr': 'Texte', 'it': 'Testo', 'es': 'Texto', 'pl': 'Tekst', 'zh-cn': '文本', 'uk': 'Головна'};
56
+ Blockly.Words['http_type_arraybuffer'] = {'en': 'arraybuffer', 'de': 'Arraybuffer', 'ru': 'arraybuffer', 'pt': 'arraybuffer', 'nl': 'arraybuffer', 'fr': 'arraybuffer', 'it': 'arraybuffer', 'es': 'arraybuffer', 'pl': 'arraybuffer', 'zh-cn': 'arraybuffer', 'uk': 'arraybuffer'};
57
+
46
58
  // --- action http_get --------------------------------------------------
47
59
 
48
60
  Blockly.Words['http_get'] = {'en': 'http (GET)', 'de': 'http (GET)', 'ru': 'http (GET)', 'pt': 'http (GET)', 'nl': 'http (GET)', 'fr': 'http (GET)', 'it': 'http (GET)', 'es': 'http (GET)', 'pl': 'http (GET)', 'zh-cn': 'http (GET)', 'uk': 'http (GET)'};
49
- Blockly.Words['http_get_timeout'] = {'en': 'timeout', 'de': 'Timeout', 'ru': 'timeout', 'pt': 'timeout', 'nl': 'timeout', 'fr': 'timeout', 'it': 'timeout', 'es': 'timeout', 'pl': 'timeout', 'zh-cn': 'timeout', 'uk': 'timeout'};
50
- Blockly.Words['http_get_settimeout_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
51
- Blockly.Words['http_get_settimeout_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
52
61
  Blockly.Words['http_get_tooltip'] = {'en': 'Request ressources via http', 'de': 'Ressourcen anfordern via http', 'ru': 'Запрос ресурсов через http', 'pt': 'Solicitar recursos via http', 'nl': 'Resources aanvragen via http', 'fr': 'Demander des ressources via http', 'it': 'Richiesta di risorse via http', 'es': 'Solicitar ressources via http', 'pl': 'Wniosek o ponowne źródła informacji za pośrednictwem http', 'zh-cn': '通过 http 请求资源源', 'uk': 'Запит ресурсів через HTTP'};
53
62
  Blockly.Words['http_get_help'] = {'en': 'httpGet', 'de': 'httpGet', 'ru': 'httpGet', 'pt': 'httpGet', 'nl': 'httpGet', 'fr': 'httpGet', 'it': 'httpGet', 'es': 'httpGet', 'pl': 'httpGet', 'zh-cn': 'httpGet', 'uk': 'httpGet'};
54
63
 
@@ -56,19 +65,38 @@ Blockly.Words['http_get_help'] = {'en': 'httpGet',
56
65
 
57
66
  Blockly.Words['http_post'] = {'en': 'http (POST)', 'de': 'http (POST)', 'ru': 'http (POST)', 'pt': 'http (POST)', 'nl': 'http (POST)', 'fr': 'http (POST)', 'it': 'http (POST)', 'es': 'http (POST)', 'pl': 'http (POST)', 'zh-cn': 'http (POST)', 'uk': 'http (POST)'};
58
67
  Blockly.Words['http_post_data'] = {'en': 'data', 'de': 'Daten', 'ru': 'данные', 'pt': 'dados', 'nl': 'data', 'fr': 'données', 'it': 'dati', 'es': 'datos', 'pl': 'dane', 'zh-cn': '数据', 'uk': 'даних'};
59
- Blockly.Words['http_post_timeout'] = {'en': 'timeout', 'de': 'Timeout', 'ru': 'timeout', 'pt': 'timeout', 'nl': 'timeout', 'fr': 'timeout', 'it': 'timeout', 'es': 'timeout', 'pl': 'timeout', 'zh-cn': 'timeout', 'uk': 'timeout'};
60
- Blockly.Words['http_post_settimeout_ms'] = {'en': 'ms', 'de': 'ms', 'ru': 'мс', 'pt': 'ms', 'nl': 'Mevrouw', 'fr': 'Mme', 'it': 'Signorina', 'es': 'Sra', 'pl': 'ms', 'zh-cn': '毫秒', 'uk': 'РС'};
61
- Blockly.Words['http_post_settimeout_sec'] = {'en': 'sec', 'de': 'Sek', 'ru': 'сек.', 'pt': 'seg', 'nl': 'sec', 'fr': 'seconde', 'it': 'secondo', 'es': 'segundo', 'pl': 'sec', 'zh-cn': '秒', 'uk': 'сек'};
62
68
  Blockly.Words['http_post_tooltip'] = {'en': 'Request ressources via http', 'de': 'Ressourcen anfordern via http', 'ru': 'Запрос ресурсов через http', 'pt': 'Solicitar recursos via http', 'nl': 'Resources aanvragen via http', 'fr': 'Demander des ressources via http', 'it': 'Richiesta di risorse via http', 'es': 'Solicitar ressources via http', 'pl': 'Wniosek o ponowne źródła informacji za pośrednictwem http', 'zh-cn': '通过 http 请求资源源', 'uk': 'Запит ресурсів через HTTP'};
63
69
  Blockly.Words['http_post_help'] = {'en': 'httpPost', 'de': 'httpPost', 'ru': 'httpPost', 'pt': 'httpPost', 'nl': 'httpPost', 'fr': 'httpPost', 'it': 'httpPost', 'es': 'httpPost', 'pl': 'httpPost', 'zh-cn': 'httpPost', 'uk': 'httpPost'};
64
70
 
65
71
  // --- action http_response --------------------------------------------------
66
72
 
67
- Blockly.Words['http_response_data'] = {'en': 'data', 'de': 'data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
68
- Blockly.Words['http_response_statuscode'] = {'en': 'status code', 'de': 'status code', 'ru': 'status code', 'pt': 'status code', 'nl': 'status code', 'fr': 'status code', 'it': 'status code', 'es': 'status code', 'pl': 'status code', 'zh-cn': 'status code', 'uk': 'status code'};
73
+ Blockly.Words['http_response_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
74
+ Blockly.Words['http_response_statuscode'] = {'en': 'status code', 'de': 'Status code', 'ru': 'status code', 'pt': 'status code', 'nl': 'status code', 'fr': 'status code', 'it': 'status code', 'es': 'status code', 'pl': 'status code', 'zh-cn': 'status code', 'uk': 'status code'};
69
75
  Blockly.Words['http_response_warning'] = {'en': 'This block must be used inside of http blocks', 'de': 'Dieser Block muss innerhalb von http-Blöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри блоков http', 'pt': 'Este bloco deve ser usado dentro de blocos http', 'nl': 'Dit blok moet worden gebruikt binnen http-blokken', 'fr': 'Ce bloc doit être utilisé à l\'intérieur des blocs http', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi http', 'es': 'Este bloque debe ser utilizado dentro de bloques http', 'pl': 'Ten blok musi być używany wewnątrz bloków http', 'zh-cn': '此块必须在 http 块内使用', 'uk': 'Цей блок повинен використовуватися всередині блоків'};
70
76
  Blockly.Words['http_response_tooltip'] = {'en': 'Response information', 'de': 'Information aus der Antwort', 'ru': 'Информация о мерах реагирования', 'pt': 'InformaçÃμes de resposta', 'nl': 'Responsinformatie', 'fr': 'Réponse', 'it': 'Informazioni sulla risposta', 'es': 'Información sobre la respuesta', 'pl': 'Informacje o odpowiedzi', 'zh-cn': '答复信息', 'uk': 'Інформація про відповідь'};
71
77
 
78
+ // --- action file_write --------------------------------------------------
79
+
80
+ Blockly.Words['file_write'] = {'en': 'file write', 'de': 'Datei schreiben', 'ru': 'Запись файла', 'pt': 'Escrever arquivo', 'nl': 'Bestand schrijven', 'fr': 'Écrire un fichier', 'it': 'Scrivere file', 'es': 'Libro', 'pl': 'Plik zapisu', 'zh-cn': '文件写入', 'uk': 'Ім\'я файла'};
81
+ Blockly.Words['file_write_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
82
+ Blockly.Words['file_write_data'] = {'en': 'data', 'de': 'Daten', 'ru': 'данные', 'pt': 'dados', 'nl': 'data', 'fr': 'données', 'it': 'dati', 'es': 'datos', 'pl': 'dane', 'zh-cn': '数据', 'uk': 'даних'};
83
+ Blockly.Words['file_write_tooltip'] = {'en': 'Write data into file system', 'de': 'Daten in Dateisystem schreiben', 'ru': 'Записать данные в файловую систему', 'pt': 'Escreva dados no sistema de arquivos', 'nl': 'Gegevens naar bestandssysteem schrijven', 'fr': 'Ecrire les données dans le système de fichiers', 'it': 'Scrivere i dati nel file system', 'es': 'Escriba datos en el sistema de archivos', 'pl': 'Zapisz dane do systemu plików', 'zh-cn': '将数据写入文件系统', 'uk': 'Напишіть дані у файлову систему'};
84
+ Blockly.Words['file_write_help'] = {'en': 'writefile', 'de': 'writefile', 'ru': 'writefile', 'pt': 'writefile', 'nl': 'writefile', 'fr': 'writefile', 'it': 'writefile', 'es': 'writefile', 'pl': 'writefile', 'zh-cn': 'writefile', 'uk': 'writefile'};
85
+
86
+ // --- action file_read --------------------------------------------------
87
+
88
+ Blockly.Words['file_read'] = {'en': 'file read', 'de': 'Datei lesen', 'ru': 'Файл:', 'pt': 'Leitura do arquivo', 'nl': 'Bestand gelezen', 'fr': 'Fichier lu', 'it': 'Informazioni sul file', 'es': 'Archivo leído', 'pl': 'Odczyt pliku', 'zh-cn': '文件已读取', 'uk': 'Файл читати'};
89
+ Blockly.Words['file_read_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
90
+ Blockly.Words['file_read_tooltip'] = {'en': 'Read file from file system', 'de': 'Datei aus Dateisystem lesen', 'ru': 'Читать файл из файловой системы', 'pt': 'Leia o arquivo do sistema de arquivos', 'nl': 'Bestand uit bestandssysteem lezen', 'fr': 'Lire le fichier depuis le système de fichiers', 'it': 'Leggi file dal file system', 'es': 'Lea el archivo del sistema de archivos', 'pl': 'Odczyt pliku z systemu plików', 'zh-cn': '从文件系统读取文件', 'uk': 'Читати файл з файлової системи'};
91
+ Blockly.Words['file_read_help'] = {'en': 'readfile', 'de': 'readfile', 'ru': 'readfile', 'pt': 'readfile', 'nl': 'readfile', 'fr': 'readfile', 'it': 'readfile', 'es': 'readfile', 'pl': 'readfile', 'zh-cn': 'readfile', 'uk': 'readfile'};
92
+
93
+ // --- action file_data --------------------------------------------------
94
+
95
+ Blockly.Words['file_data_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
96
+ Blockly.Words['file_data_mimeType'] = {'en': 'mimeType', 'de': 'mimeType', 'ru': 'mimeType', 'pt': 'mimeType', 'nl': 'mimeType', 'fr': 'mimeType', 'it': 'mimeType', 'es': 'mimeType', 'pl': 'mimeType', 'zh-cn': 'mimeType', 'uk': 'mimeType'};
97
+ Blockly.Words['file_data_warning'] = {'en': 'This block must be used inside of file blocks', 'de': 'Dieser Block muss innerhalb von Dateiblöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри файловых блоков', 'pt': 'Este bloco deve ser usado dentro de blocos de arquivos', 'nl': 'Dit blok moet gebruikt worden binnen bestandsblokken', 'fr': 'Ce bloc doit être utilisé dans les blocs de fichiers', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi di file', 'es': 'Este bloque debe ser utilizado dentro de bloques de archivos', 'pl': 'Ten blok musi być użyty wewnątrz bloków plików', 'zh-cn': '此块必须在文件块内使用', 'uk': 'Цей блок необхідно використовувати всередині файлових блоків'};
98
+ Blockly.Words['file_data_tooltip'] = {'en': 'File information', 'de': 'Informationen zur Datei', 'ru': 'Информация о файлах', 'pt': 'Informações do arquivo', 'nl': 'Bestandsinformatie', 'fr': 'Informations sur le fichier', 'it': 'Informazioni sul file', 'es': 'Información de archivos', 'pl': 'Informacje o pliku', 'zh-cn': '文件信息', 'uk': 'Інформація про файли'};
99
+
72
100
  // --- action request --------------------------------------------------
73
101
  Blockly.Words['request'] = {'en': 'request (deprecated)', 'de': 'request (deprecated)', 'ru': 'request (deprecated)', 'pt': 'request (deprecated)', 'nl': 'verzoek (deprecated)', 'fr': 'demande (deprecated)', 'it': 'richiesta (deprecated)', 'es': 'solicitud (deprecated)', 'pl': 'request (deprecated)', 'zh-cn': '请求网址 (deprecated)', 'uk': 'запит (deprecated)'};
74
102
  Blockly.Words['request_url'] = {'en': 'URL', 'de': 'URL', 'ru': 'URL', 'pt': 'URL', 'nl': 'URL', 'fr': 'URL', 'it': 'URL', 'es': 'URL', 'pl': 'URL', 'zh-cn': '网址', 'uk': 'URL'};
@@ -241,7 +269,6 @@ Blockly.Words['get_value'] = {'en': 'Get state value'
241
269
  Blockly.Words['get_value_OID'] = {'en': 'of Object ID', 'de': 'vom Objekt ID', 'ru': 'у объекта', 'pt': 'pela ID do objeto', 'nl': 'van Object ID', 'fr': 'd\'identifiant d\'objet', 'it': 'di ID oggetto', 'es': 'de Object ID', 'pl': 'of Object ID', 'zh-cn': '来自于', 'uk': 'ідентифікатора об’єкта'};
242
270
  Blockly.Words['get_value_tooltip'] = {'en': 'Select object ID with dialog', 'de': 'Objekt ID mit Dialog selektieren', 'ru': 'Выбрать ID объекта', 'pt': 'Selecione ID do objeto com diálogo', 'nl': 'Selecteer object-ID met dialoogvenster', 'fr': 'Sélectionnez l\'ID d\'objet avec la boîte de dialogue', 'it': 'Seleziona ID oggetto con finestra di dialogo', 'es': 'Seleccionar ID de objeto con diálogo', 'pl': 'Select object ID with dialog', 'zh-cn': '使用对话框选择对象ID', 'uk': 'Виберіть ідентифікатор об’єкта за допомогою діалогового вікна'};
243
271
  Blockly.Words['get_value_help'] = {'en': 'getstate', 'de': 'getstate', 'ru': 'getstate', 'pt': 'getstate', 'nl': 'getstate', 'fr': 'getstate', 'it': 'GetState', 'es': 'Gettate', 'pl': 'getstate', 'zh-cn': '获取对象的指定属性值', 'uk': 'getstate'};
244
- Blockly.Words['get_value_default'] = {'en': 'select ID', 'de': 'ID auswählen', 'ru': 'Выбрать ID', 'pt': 'selecione ID', 'nl': 'selecteer ID', 'fr': 'sélectionnez ID', 'it': 'seleziona ID', 'es': 'seleccionar ID', 'pl': 'select ID', 'zh-cn': '对象ID', 'uk': 'виберіть ID'};
245
272
  Blockly.Words['get_value_val'] = {'en': 'Value', 'de': 'Wert', 'ru': 'Значение', 'pt': 'Valor', 'nl': 'Waarde', 'fr': 'Valeur', 'it': 'Valore', 'es': 'Valor', 'pl': 'Value', 'zh-cn': '值', 'uk': 'Значення'};
246
273
  Blockly.Words['get_value_ack'] = {'en': 'Acknowledge', 'de': 'bestätigt', 'ru': 'Подтверждение', 'pt': 'confirmado', 'nl': 'Erkennen', 'fr': 'Reconnaître', 'it': 'Riconoscere', 'es': 'Reconocer', 'pl': 'Acknowledge', 'zh-cn': '是否应答', 'uk': 'Визнати'};
247
274
  Blockly.Words['get_value_ts'] = {'en': 'Timestamp', 'de': 'Zeitstempel', 'ru': 'Время', 'pt': 'Timestamp', 'nl': 'tijdstempel', 'fr': 'Horodatage', 'it': 'timestamp', 'es': 'Marca de tiempo', 'pl': 'Timestamp', 'zh-cn': '当前时间戳', 'uk': 'Мітка часу'};
@@ -254,13 +281,11 @@ Blockly.Words['get_common_desc'] = {'en': 'Object descripti
254
281
  Blockly.Words['get_common_unit'] = {'en': 'State unit', 'de': 'Maßeinheit', 'ru': 'Единица измерения', 'pt': 'unidade estadual', 'nl': 'Staatseenheid', 'fr': 'Unité d\'état', 'it': 'Unità statale', 'es': 'unidad estatal', 'pl': 'Jednostka państwowa', 'zh-cn': '国家单位', 'uk': 'Державна одиниця'};
255
282
  Blockly.Words['get_common_role'] = {'en': 'Object role', 'de': 'Objektrolle', 'ru': 'Роль объекта', 'pt': 'função do objeto', 'nl': 'Object rol', 'fr': 'Rôle d\'objet', 'it': 'Ruolo dell\'oggetto', 'es': 'Rol de objeto', 'pl': 'Rola obiektu', 'zh-cn': '对象角色', 'uk': 'Об\'єктна роль'};
256
283
  Blockly.Words['get_common_state_type'] = {'en': 'State type', 'de': 'Zustandstyp', 'ru': 'Тип состояния', 'pt': 'tipo de estado', 'nl': 'Type staat', 'fr': 'Type d\'état', 'it': 'Tipo di stato', 'es': 'tipo de estado', 'pl': 'Typ stanu', 'zh-cn': '状态类型', 'uk': 'Державний тип'};
257
- Blockly.Words['get_common_object_type'] = {'en': 'Object type', 'de': 'Objekttyp', 'ru': 'Тип объекта', 'pt': 'Tipo de objeto', 'nl': 'Object type', 'fr': 'Type d\'objet', 'it': 'Tipo di oggetto', 'es': 'Tipo de objeto', 'pl': 'Rodzaj obiektu', 'zh-cn': '对象类型', 'uk': 'Тип об\'єкта'};
258
284
  Blockly.Words['get_common_read'] = {'en': 'Is state readable', 'de': 'Zustand ist lesbar', 'ru': 'Является читаемым', 'pt': 'O estado é legível', 'nl': 'Staat leesbaar', 'fr': 'L\'état est-il lisible', 'it': 'È leggibile dallo stato', 'es': 'Es estado legible', 'pl': 'Czy stan jest czytelny', 'zh-cn': '状态是否可读', 'uk': 'Чи читається стан'};
259
285
  Blockly.Words['get_common_write'] = {'en': 'Is state writable', 'de': 'Zustand ist beschreibbar', 'ru': 'Доступно для записи', 'pt': 'É estado gravável', 'nl': 'Staat beschrijfbaar', 'fr': 'L\'état est-il accessible en écriture', 'it': 'È stato scrivibile', 'es': 'Es el estado escribible', 'pl': 'Czy stan jest zapisywalny', 'zh-cn': '状态是否可写', 'uk': 'Доступний для запису в стані'};
260
286
  Blockly.Words['get_value_async'] = {'en': 'Get state value', 'de': 'Zustandswert nehmen', 'ru': 'Взять значение состояния', 'pt': 'Tome o valor do estado', 'nl': 'Krijg statuswaarde', 'fr': 'Obtenir la valeur de l\'état', 'it': 'Ottieni valore statale', 'es': 'Obtener valor de estado', 'pl': 'Get state value', 'zh-cn': '获取状态的值', 'uk': 'Отримати державне значення'};
261
287
 
262
- Blockly.Words['get_object'] = {'en': 'Object', 'de': 'Object', 'ru': 'объекта', 'pt': 'objeto', 'nl': 'Object', 'fr': 'd\'objet', 'it': 'oggetto', 'es': 'Object', 'pl': 'Object', 'zh-cn': 'Object', 'uk': 'Об\'єкт'};
263
- Blockly.Words['get_object_default'] = {'en': 'select ID', 'de': 'ID auswählen', 'ru': 'Выбрать ID', 'pt': 'selecione ID', 'nl': 'selecteer ID', 'fr': 'sélectionnez ID', 'it': 'seleziona ID', 'es': 'seleccionar ID', 'pl': 'select ID', 'zh-cn': '对象ID', 'uk': 'виберіть ID'};
288
+ Blockly.Words['get_object'] = {'en': 'Object', 'de': 'Objekt', 'ru': 'Объект', 'pt': 'Objeto', 'nl': 'Doel', 'fr': 'Objet', 'it': 'Oggetto', 'es': 'Objeto', 'pl': 'Obiekt', 'zh-cn': '对象', 'uk': 'Об\'єкт'};
264
289
  Blockly.Words['get_object_tooltip'] = {'en': 'Get object defition', 'de': 'Objektdefition laden', 'ru': 'Получить недоверие объекта', 'pt': 'Obter desafio de objetos', 'nl': 'Haal object defectie', 'fr': 'Défition d\'objets', 'it': 'Ottenere defition oggetto', 'es': 'Obtener desafío de objetos', 'pl': 'Definicja obiektu', 'zh-cn': '目的和宗旨', 'uk': 'Отримати дефекцію об\'єкта'};
265
290
  Blockly.Words['get_object_help'] = {'en': 'getobject', 'de': 'getobject', 'ru': 'getobject', 'pt': 'getobject', 'nl': 'getobject', 'fr': 'getobject', 'it': 'getobject', 'es': 'getobject', 'pl': 'getobject', 'zh-cn': 'getobject', 'uk': 'getobject'};
266
291
 
@@ -544,6 +569,15 @@ Blockly.Words['onFile_withFile'] = {'en': 'With file data',
544
569
  Blockly.Words['onFile_tooltip'] = {'en': 'If some file changed or updated', 'de': 'Wenn sich eine Datei geändert oder aktualisiert hat', 'ru': 'Если какой-то файл изменился или обновился', 'pt': 'Se algum arquivo mudou ou atualizou', 'nl': 'Als een bestand is gewijzigd of bijgewerkt', 'fr': 'Si un fichier a été modifié ou mis à jour', 'it': 'Se qualche file è cambiato o aggiornato', 'es': 'Si algún archivo cambió o actualizó', 'pl': 'Jeśli jakiś plik został zmieniony lub zaktualizowany', 'zh-cn': '如果某些文件更改或更新', 'uk': 'Якщо якийсь файл змінено або оновлено'};
545
570
  Blockly.Words['onFile_help'] = {'en': 'onFile', 'de': 'onFile', 'ru': 'onFile', 'pt': 'onFile', 'nl': 'onFile', 'fr': 'onFile', 'it': 'onFile', 'es': 'onFile', 'pl': 'onFile', 'zh-cn': 'onFile', 'uk': 'onFile'};
546
571
 
572
+ // --- trigger onFile_data --------------------------------------------------
573
+ Blockly.Words['onFile_data_data'] = {'en': 'data', 'de': 'Data', 'ru': 'data', 'pt': 'data', 'nl': 'data', 'fr': 'data', 'it': 'data', 'es': 'data', 'pl': 'data', 'zh-cn': 'data', 'uk': 'data'};
574
+ Blockly.Words['onFile_data_filename'] = {'en': 'file name', 'de': 'Dateiname', 'ru': 'Имя файла', 'pt': 'Nome do arquivo', 'nl': 'Bestandnaam', 'fr': 'Nom du fichier', 'it': 'Nome del file', 'es': 'Nombre del archivo', 'pl': 'Nazwa pliku', 'zh-cn': '文件名', 'uk': 'Ім\'я файла'};
575
+ Blockly.Words['onFile_data_size'] = {'en': 'file size', 'de': 'Dateigröße', 'ru': 'Размер файла', 'pt': 'Tamanho do arquivo', 'nl': 'Bestandsgrootte', 'fr': 'Taille du fichier', 'it': 'Dimensione del file', 'es': 'Tamaño del archivo', 'pl': 'Rozmiar pliku', 'zh-cn': '文件大小', 'uk': 'Розмір файлу'};
576
+ Blockly.Words['onFile_data_mimeType'] = {'en': 'mimeType', 'de': 'mimeType', 'ru': 'mimeType', 'pt': 'mimeType', 'nl': 'mimeType', 'fr': 'mimeType', 'it': 'mimeType', 'es': 'mimeType', 'pl': 'mimeType', 'zh-cn': 'mimeType', 'uk': 'mimeType'};
577
+ Blockly.Words['onFile_data_id'] = {'en': 'id', 'de': 'id', 'ru': 'id', 'pt': 'id', 'nl': 'id', 'fr': 'id', 'it': 'id', 'es': 'id', 'pl': 'id', 'zh-cn': 'id', 'uk': 'id'};
578
+ Blockly.Words['onFile_data_warning'] = {'en': 'This block must be used inside of file trigger blocks', 'de': 'Dieser Block muss innerhalb von Datei-Trigger-Blöcken verwendet werden', 'ru': 'Этот блок должен быть использован внутри файловых триггерных блоков', 'pt': 'Este bloco deve ser usado dentro de blocos de gatilho de arquivo', 'nl': 'Dit blok moet worden gebruikt binnen bestand trigger blokken', 'fr': 'Ce bloc doit être utilisé à l\'intérieur des blocs de déclenchement de fichier', 'it': 'Questo blocco deve essere utilizzato all\'interno dei blocchi di file trigger', 'es': 'Este bloque debe ser utilizado dentro de bloques de activación de archivos', 'pl': 'Ten blok musi być użyty wewnątrz bloków wyzwalających plik', 'zh-cn': '此块必须在文件触发块内使用', 'uk': 'Цей блок повинен бути використаний всередині блоків запуску файлів'};
579
+ Blockly.Words['onFile_datatooltip'] = {'en': 'Information about updated file', 'de': 'Informationen über die aktualisierte Datei', 'ru': 'Информация об обновленном файле', 'pt': 'InformaçÃμes sobre o arquivo atualizado', 'nl': 'Informatie over bijgewerkt bestand', 'fr': 'Informations sur le fichier mis à jour', 'it': 'Informazioni sul file aggiornato', 'es': 'Información sobre el archivo actualizado', 'pl': 'Informacje o zaktualizowanym pliku', 'zh-cn': '关于更新文件的信息', 'uk': 'Інформація про оновлений файл'};
580
+
547
581
  // --- trigger offFile --------------------------------------------------
548
582
  Blockly.Words['offFile'] = {'en': 'Cancel file event', 'de': 'Dateiereignis entfernen', 'ru': 'Отменить событие файла', 'pt': 'Cancelar evento de arquivo', 'nl': 'Bestandsgebeurtenis annuleren', 'fr': 'Annuler l\'événement de fichier', 'it': 'Annulla evento file', 'es': 'Cancelar evento de archivo', 'pl': 'Anuluj zdarzenie pliku', 'zh-cn': '取消文件事件', 'uk': 'Скасувати подію файлу'};
549
583
  Blockly.Words['offFile_tooltip'] = {'en': 'Cancel subscription on file change', 'de': 'Abonnement bei Dateiänderung kündigen', 'ru': 'Отменить подписку на изменение файла', 'pt': 'Cancelar assinatura na alteração do arquivo', 'nl': 'Abonnement opzeggen bij bestandswijziging', 'fr': 'Annuler l\'abonnement en cas de changement de fichier', 'it': 'Annulla l\'abbonamento in caso di modifica del file', 'es': 'Cancelar suscripción en cambio de archivo', 'pl': 'Anuluj subskrypcję po zmianie pliku', 'zh-cn': '取消订阅文件更改', 'uk': 'Скасувати підписку на зміну файлу'};
@@ -48,7 +48,9 @@ class FieldOID extends Blockly.Field {
48
48
  // Truncate displayed string and add an ellipsis ('...').
49
49
  text = text.substring(0, this.maxDisplayLength - 2) + '\u2026';
50
50
  }
51
- text.trim();
51
+ if (objects && objects[id] && objects[id]?.type && !['state', 'meta', 'script'].includes(objects[id].type)) {
52
+ text += ` (${objects[id].type})`;
53
+ }
52
54
  // Replace whitespace with non-breaking spaces so the text doesn't collapse.
53
55
  text = text.replace(/\s/g, Blockly.Field.NBSP);
54
56
 
@@ -68,6 +70,9 @@ class FieldOID extends Blockly.Field {
68
70
  // Truncate the displayed string and add an ellipsis ('...').
69
71
  text = text.substring(0, this.maxDisplayLength - 2) + '\u2026';
70
72
  }
73
+ if (objects && objects[id] && objects[id]?.type && !['state', 'meta', 'script'].includes(objects[id].type)) {
74
+ text += ` (${objects[id].type})`;
75
+ }
71
76
  // Replace whitespace with non-breaking spaces so the text doesn't collapse.
72
77
  text = text.replace(/\s/g, Blockly.Field.NBSP);
73
78
 
@@ -94,6 +99,7 @@ class FieldOID extends Blockly.Field {
94
99
  }
95
100
  // Replace whitespace with non-breaking spaces so the text doesn't collapse.
96
101
  text = text.replace(/\s/g, Blockly.Field.NBSP);
102
+
97
103
  if (this.sourceBlock_.RTL) {
98
104
  // The SVG is LTR, force text to be RTL.
99
105
  text += '\u200F';