diff --git a/package.json b/package.json index cddf1f76e..2c0bb30d0 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,7 @@ "grunt-jsdoc": "2.4.1", "grunt-jsdoc-to-markdown": "5.0.0", "grunt-jsonlint": "2.1.3", - "grunt-mkdir": "~1.0.0", + "grunt-mkdir": "~1.1.0", "grunt-npm-command": "~0.1.2", "grunt-sass": "~3.1.0", "grunt-simple-mocha": "~0.4.1", diff --git a/packages/node_modules/@node-red/editor-api/lib/editor/locales.js b/packages/node_modules/@node-red/editor-api/lib/editor/locales.js index a7f300cd3..f9453f55b 100644 --- a/packages/node_modules/@node-red/editor-api/lib/editor/locales.js +++ b/packages/node_modules/@node-red/editor-api/lib/editor/locales.js @@ -39,9 +39,12 @@ module.exports = { }, get: function(req,res) { var namespace = req.params[0]; - var lngs = req.query.lng; namespace = namespace.replace(/\.json$/,""); var lang = req.query.lng || i18n.defaultLang; //apiUtil.determineLangFromHeaders(req.acceptsLanguages() || []); + if (/[^a-z\-\*]/i.test(lang)) { + res.json({}); + return; + } var prevLang = i18n.i.language; // Trigger a load from disk of the language if it is not the default i18n.i.changeLanguage(lang, function(){ diff --git a/packages/node_modules/@node-red/editor-client/locales/ru/editor.json b/packages/node_modules/@node-red/editor-client/locales/ru/editor.json index 1f91d4b0b..04ff361ba 100755 --- a/packages/node_modules/@node-red/editor-client/locales/ru/editor.json +++ b/packages/node_modules/@node-red/editor-client/locales/ru/editor.json @@ -246,8 +246,8 @@ "import": { "import": "Импортировать в", "importSelected": "Импортировать выбранные", - "importCopy": "Импортировать копию", - "viewNodes": "Посмотреть узлы...", + "importCopy": "Импортировать копии", + "viewNodes": "Показать узлы...", "newFlow": "новый поток", "replace": "заменить", "errors": { @@ -257,7 +257,7 @@ "missingType": "Недопустимый поток - у элемента __index__ отсутствует свойство 'type'" }, "conflictNotification1": "Некоторые импортируемые Вами узлы уже существуют в рабочей области.", - "conflictNotification2": "Выберите, какие узлы импортировать и следует ли заменить существующие узлы или импортировать их копию." + "conflictNotification2": "Выберите, какие узлы импортировать и следует ли заменить ими существующие узлы или импортировать их копии." }, "copyMessagePath": "Путь скопирован", "copyMessageValue": "Значение скопировано", @@ -373,12 +373,12 @@ "configAdd": "Добавить", "configUpdate": "Обновить", "configDelete": "Удалить", - "nodesUse": "__count__ узел использует эту конфигурацию", - "nodesUse_plural_2": "__count__ узла используют эту конфигурацию", - "nodesUse_plural_5": "__count__ узлов используют эту конфигурацию", - "addNewConfig": "Добавить новый конфигурационный узел __type__", + "nodesUse": "__count__ узел использует этот конфиг", + "nodesUse_plural_2": "__count__ узла используют этот конфиг", + "nodesUse_plural_5": "__count__ узлов используют этот конфиг", + "addNewConfig": "Добавить новый конфиг узел __type__", "editNode": "Изменить узел __type__", - "editConfig": "Изменить конфигурационный узел __type__", + "editConfig": "Изменить конфиг узел __type__", "addNewType": "Добавить новый __type__...", "nodeProperties": "свойства узла", "label": "Метка", @@ -615,7 +615,7 @@ "info": { "name": "Информация", "tabName": "Имя", - "label": "сведения", + "label": "инфо", "node": "Узел", "type": "Тип", "group": "Группа", @@ -648,8 +648,8 @@ "showTips":"Вы можете открыть советы из панели настроек", "outline": "Структура", "empty": "пусто", - "globalConfig": "Узлы глобальной конфигурации", - "triggerAction": "Запустить действие", + "globalConfig": "Глобальные конфиг узлы", + "triggerAction": "Вызвать действие", "find": "Найти в рабочей области", "search": { "configNodes": "Узлы конфигурации", @@ -671,8 +671,8 @@ }, "config": { "name": "Узлы конфигураций", - "label": "конфигурация", - "global": "На всех потока", + "label": "конфиг", + "global": "На всех потоках", "none": "нет", "subflows": "подпотоки", "flows": "потоки", @@ -690,8 +690,8 @@ "none": "ничего не выбрано", "refresh": "обновите, чтобы загрузить", "empty": "пусто", - "node": "Узел", - "flow": "Поток", + "node": "Узловой", + "flow": "Потоковый", "global": "Глобальный", "deleteConfirm": "Вы уверены, что хотите удалить этот элемент?", "autoRefresh": "Обновить при изменении выбора", @@ -877,7 +877,7 @@ "bool": "логический тип", "json": "JSON", "bin": "буфер", - "date": "отметка времени", + "date": "метка времени", "jsonata": "выражение", "env": "переменная среды", "cred": "учетные данные" diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/palette.js b/packages/node_modules/@node-red/editor-client/src/js/ui/palette.js index 1a82a3e89..0e7367ebf 100755 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/palette.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/palette.js @@ -401,7 +401,8 @@ RED.palette = (function() { RED.workspaces.show(nt.substring(8)); e.preventDefault(); }); - nodeInfo = RED.utils.renderMarkdown(def.info||""); + var subflow = RED.nodes.subflow(nt.substring(8)); + nodeInfo = RED.utils.renderMarkdown(subflow.info||""); } setLabel(nt,d,label,nodeInfo); diff --git a/packages/node_modules/@node-red/editor-client/src/sass/base.scss b/packages/node_modules/@node-red/editor-client/src/sass/base.scss index 391ddf83f..ca1a5807f 100644 --- a/packages/node_modules/@node-red/editor-client/src/sass/base.scss +++ b/packages/node_modules/@node-red/editor-client/src/sass/base.scss @@ -15,6 +15,9 @@ **/ +body { + overflow: hidden; +} .red-ui-editor { font-size: $primary-font-size; diff --git a/packages/node_modules/@node-red/nodes/core/sequence/17-split.js b/packages/node_modules/@node-red/nodes/core/sequence/17-split.js index dc422f3da..318319f3d 100644 --- a/packages/node_modules/@node-red/nodes/core/sequence/17-split.js +++ b/packages/node_modules/@node-red/nodes/core/sequence/17-split.js @@ -737,7 +737,10 @@ module.exports = function(RED) { group.msg = Object.assign(group.msg, msg); group.send = send; var tcnt = group.targetCount; - if (msg.hasOwnProperty("parts")) { tcnt = group.targetCount || msg.parts.count; } + if (msg.hasOwnProperty("parts")) { + tcnt = group.targetCount || msg.parts.count; + group.targetCount = tcnt; + } if ((tcnt > 0 && group.currentCount >= tcnt) || msg.hasOwnProperty('complete')) { completeSend(partId); } @@ -759,3 +762,4 @@ module.exports = function(RED) { } RED.nodes.registerType("join",JoinNode); } + diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/20-inject.html b/packages/node_modules/@node-red/nodes/locales/ru/common/20-inject.html index e265fccc6..5b762bc7d 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/20-inject.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/20-inject.html @@ -16,7 +16,7 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/21-debug.html b/packages/node_modules/@node-red/nodes/locales/ru/common/21-debug.html index 66edb72cc..7804e6af5 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/21-debug.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/21-debug.html @@ -16,24 +16,24 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/24-complete.html b/packages/node_modules/@node-red/nodes/locales/ru/common/24-complete.html index 3709f82dc..672310d6f 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/24-complete.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/24-complete.html @@ -16,7 +16,7 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/25-catch.html b/packages/node_modules/@node-red/nodes/locales/ru/common/25-catch.html index 867e9b203..af1627c22 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/25-catch.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/25-catch.html @@ -16,7 +16,7 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/60-link.html b/packages/node_modules/@node-red/nodes/locales/ru/common/60-link.html index 1ef3079af..f2894da97 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/60-link.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/60-link.html @@ -21,13 +21,13 @@
- Этот узел может быть подключен к любому узлу link out
на любой вкладке. После подключения они ведут себя так, как если бы они были соединены вместе обычным проводом.
+ Этот узел может быть подключен к любому link out
узлу на любой вкладке. После подключения они ведут себя так, как если бы они были соединены вместе обычным проводом.
- Связи между link-узлами отображаются, только когда выбран link-узел. Если есть какие-либо провода к другим вкладкам, отображается виртуальный узел, по которому можно кликнуть, чтобы перейти на соответствующую вкладку. + Связи между link-узлами отображаются, только когда выбран один из соединенных link узлов. Если есть какие-либо провода, ведущие на другие вкладки, они отображаются в виде виртуального узла, по которому можно кликнуть, чтобы перейти на соответствующую вкладку.
- Примечание: Связи не могут идти внутрь подпотока или изнутри подпотока наружу. + Примечание: Провод не может вести внутрь подпотока или изнутри подпотока наружу.
@@ -38,12 +38,12 @@
- Узел может быть подключен к любому узлу link in
на любой вкладке. После подключения они ведут себя так, как если бы они были соединены вместе обычным проводом.
+ Узел может быть подключен к любому link in
узлу на любой вкладке. После подключения они ведут себя так, как если бы они были соединены вместе обычным проводом.
- Связи между link-узлами отображаются, только когда выбран link-узел. Если есть какие-либо провода к другим вкладкам, отображается виртуальный узел, по которому можно кликнуть, чтобы перейти на соответствующую вкладку. + Связи между link-узлами отображаются, только когда выбран один из соединенных link узлов. Если есть какие-либо провода, ведущие на другие вкладки, они отображаются в виде виртуального узла, по которому можно кликнуть, чтобы перейти на соответствующую вкладку.
- Примечание: Связи не могут идти внутрь подпотока или изнутри подпотока наружу. + Примечание: Провод не может вести внутрь подпотока или изнутри подпотока наружу.
diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/90-comment.html b/packages/node_modules/@node-red/nodes/locales/ru/common/90-comment.html index f8cb254bd..69ba9ba12 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/90-comment.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/90-comment.html @@ -16,11 +16,11 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/common/98-unknown.html b/packages/node_modules/@node-red/nodes/locales/ru/common/98-unknown.html index 6ffb5a03a..f9fd62285 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/common/98-unknown.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/common/98-unknown.html @@ -16,22 +16,22 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/function/10-function.html b/packages/node_modules/@node-red/nodes/locales/ru/function/10-function.html index f99408605..9ba16d4be 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/function/10-function.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/function/10-function.html @@ -16,22 +16,22 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/function/89-delay.html b/packages/node_modules/@node-red/nodes/locales/ru/function/89-delay.html index 2a86fd64c..4489155ac 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/function/89-delay.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/function/89-delay.html @@ -21,20 +21,20 @@- Когда настроено задерживать сообщения, интервал задержки может быть фиксированным значением, случайным значением в пределах диапазона или динамически установленным для каждого сообщения. Каждое сообщение задерживается независимо от любых других сообщений, основываясь на времени его прибытия. + Когда узел настроен на задержку сообщений, интервал задержки может быть фиксированным значением, случайным значением в пределах диапазона или динамически установленным для каждого сообщения. Каждое сообщение задерживается независимо от любых других сообщений, основываясь на времени его прибытия в узел.
- Когда настроено ограничивать скорость сообщений, их доставка распределяется по настроенному периоду времени. Статус показывает количество сообщений, находящихся в данный момент в очереди. Если выбрано он может отбрасывать промежуточные сообщений по мере их поступления. + Когда узел настроен на ограничение скорости сообщений, их доставка распределяется по установленному периоду времени. Статус показывает количество сообщений, находящихся в данный момент в очереди. При необходимости узел может быть настроен на отбрасывание промежуточных сообщений по мере их поступления.
- Ограничение скорости может применяться ко всем сообщениям или группировать их в соответствии со значением msg.topic
. При группировании промежуточные сообщения автоматически отбрасываются. В каждом интервале времени узел может либо выпустить самое последнее сообщение для всех тем, либо выпустить самое последнее сообщение для следующей темы.
+ Ограничение скорости может применяться ко всем сообщениям или группам сообщений в соответствии с их значением темы (msg.topic
). При группировании промежуточные сообщения автоматически отбрасываются. В каждом интервале времени узел может либо выпустить самое последнее сообщение для всех тем, либо выпустить самое последнее сообщение для следующей темы.
- Узел может быть настроен либо на ожидание завершения команды, либо на отправку своих выходных данных, пока команда их генерирует. + Узел может быть настроен либо на ожидание завершения выполнения команды, либо на отправку выходных данных по мере их генерации в ходе выполнения.
- Выполняемая команда может быть настроена в узле или предоставлена полученным сообщением. + Выполняемая команда может быть установлена в настройках узла или полученным сообщением.
spawn
, который возвращает выходные данные из stdout и stderr по ходу выполнения команды, обычно по одной строке за раз. После завершения он возвращает объект на 3-й порт. Например, успешная команда должна вернуть {code: 0}
.
- Ошибки могут возвращать дополнительную информацию на 3-м порту в msg.payload
, такую как строка message
, строка signal
.
+ Ошибки могут возвращать на 3-й порт дополнительную информацию в msg.payload
, такую как строка message
, строка signal
.
Выполняемая команда настраивается в узле, с возможностью добавления к ней msg.payload
и дополнительного набора параметров.
@@ -82,25 +82,25 @@
Команды или параметры с пробелами должны быть заключены в кавычки - "Это один параметр"
- Возвращаемый payload
обычно представляет собой строку, пока не обнаружены символы, отличные от UTF8, в этом случае это буфер.
+ Возвращаемый payload
обычно представляет собой строку, пока не обнаружены символы, отличные от UTF8, в этом случае возвращаемое значение будет иметь тип буфер.
- Значок состояния узла и PID будут видны, пока узел активен. Изменения в статусе могут быть прочитаны узлом Status
.
+ Значок статуса узла и PID будут видны, когда узел активен. Изменения в статусе можно отслеживать узлом Status
.
- Отправка msg.kill
уничтожит один активный процесс. msg.kill
должен быть строкой, содержащей тип передаваемого сигнала, например, SIGINT
, SIGQUIT
или SIGHUP
. По умолчанию SIGTERM
, если задана пустая строка.
+ Отправка msg.kill
уничтожит один активный процесс. msg.kill
должен быть строкой, содержащей тип передаваемого сигнала, например, SIGINT
, SIGQUIT
или SIGHUP
. По умолчанию будет передан SIGTERM
, если задана пустая строка.
- Если узлом запущено более одного процесса, тогда в msg.pid
также должно быть установлено значение PID для уничтожения.
+ Если узлом запущено более одного процесса, тогда в msg.pid
также должно быть установлено значение PID процесса для уничтожения.
- Если в поле Тайм-аут
указано значение, то, если процесс не завершится по истечении указанного количества секунд, он будет автоматически уничтожен
+ Если в поле Тайм-аут
введено значение, тогда, если процесс не завершится по истечении указанного количества секунд, он будет автоматически уничтожен.
- Совет: если Вы запускаете Python приложение, Вам может потребоваться использовать параметр -u
, чтобы остановить буферизацию вывода.
+ Совет: если вы запускаете Python приложение, вам может потребоваться использование параметра -u
, чтобы остановить буферизацию вывода.
- При доступе к хосту, находящемуся в списке игнорируемых хостов, прокси не будет использоваться. + При обращении к хосту, находящемуся в списке игнорируемых хостов, прокси не будет использоваться.
diff --git a/packages/node_modules/@node-red/nodes/locales/ru/network/10-mqtt.html b/packages/node_modules/@node-red/nodes/locales/ru/network/10-mqtt.html index ce10a9515..fab155c5a 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/network/10-mqtt.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/network/10-mqtt.html @@ -13,7 +13,7 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/network/31-tcpin.html b/packages/node_modules/@node-red/nodes/locales/ru/network/31-tcpin.html index f23bd974a..7a3dcf2f3 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/network/31-tcpin.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/network/31-tcpin.html @@ -16,16 +16,16 @@ diff --git a/packages/node_modules/@node-red/nodes/locales/ru/network/32-udp.html b/packages/node_modules/@node-red/nodes/locales/ru/network/32-udp.html index 2a1026e8b..d014c4279 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/network/32-udp.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/network/32-udp.html @@ -16,13 +16,13 @@ @@ -37,6 +37,6 @@ Если Вы выберете широковещательную рассылку, то либо задайте в качестве адреса локальный широковещательный IP-адрес, либо попробуйте 255.255.255.255, который является глобальным широковещательным адресом.- Примечание. В некоторых системах Вам могут потребоваться права root или администратора для доступа к портам ниже 1024 и/или широковещательной рассылки. + Примечание. В некоторых системах вам могут потребоваться права root или администратора для доступа к портам ниже 1024 и/или широковещательной рассылки.
diff --git a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-CSV.html b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-CSV.html index de94a1fd8..66186eb7e 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-CSV.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-CSV.html @@ -30,10 +30,10 @@
- Если шаблон пуст, то узел может использовать простой список свойств, разделенных запятыми, предоставленных в msg.columns
, чтобы определить, что извлечь. Если этого нет, то все свойства объекта выводятся в том порядке, в котором они были найдены в первой строке.
+ Если шаблон пуст, то узел может использовать простой список свойств, разделенных запятыми, предоставленных в msg.columns
, чтобы определить, что извлечь. Если его нет, то все свойства объекта выводятся в том порядке, в котором они были найдены в первой строке.
Если входные данные являются массивом, то шаблон столбцов используется только для необязательного генерирования строки с заголовками столбцов. diff --git a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-JSON.html b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-JSON.html index 0b663ed05..a2dc2da78 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-JSON.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-JSON.html @@ -37,7 +37,7 @@
schemaError
, содержащее массив ошибок.schemaError
, содержащее массив ошибок.msg.payload
, но его можно настроить для преобразования любого свойства сообщения.
- Узел также может быть сконфигурирован для обеспечения конкретной кодировки вместо переключения между ними. Это можно использовать, например, с узлом HTTP In
, чтобы гарантировать, что данные payload являются объектом, даже если входящий запрос неправильно установил свой тип содержимого для узла HTTP In, чтобы выполнить преобразование.
+ Узел также может быть сконфигурирован для обеспечения конкретной кодировки вместо переключения между ними. Это можно использовать, например, при работе с узлом HTTP In
, чтобы гарантировать, что данные payload всегда будут являться объектом, даже если входящий запрос неправильно установил свой тип содержимого для узла HTTP In, чтобы выполнить преобразование.
- Если узел настроен на то, чтобы свойство кодировалось как строка, и он получает строку, дальнейшие проверки этого свойства выполняться не будут. Он не будет проверять, является ли строка допустимым JSON, и не будет переформатировать ее, если выбрана опция форматирования. + Если узел настроен так, чтобы свойство кодировалось как строка, и он получает строку, дальнейшие проверки этого свойства выполняться не будут. Он не будет проверять, является ли строка допустимым JSON, и не будет переформатировать ее, если выбрана опция форматирования.
Подробнее о JSON-схеме Вы можете узнать в спецификации здесь. diff --git a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-XML.html b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-XML.html index ed6fe6c44..d600826bd 100644 --- a/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-XML.html +++ b/packages/node_modules/@node-red/nodes/locales/ru/parsers/70-XML.html @@ -32,8 +32,8 @@
msg.payload
:
\n
), последовательности буфера или фиксированной длины.\n
), последовательности буфера или по фиксированной длине.