@oomol-lab/open-flow 0.1.0-beta.85 → 0.1.0-beta.87

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 (102) hide show
  1. package/dist/browser/{FlowCanvas-CZoHhB1y.js → FlowCanvas-SqPUBqze.js} +3 -3
  2. package/dist/browser/{createResourceDialog-Bi4fUnbD.js → createResourceDialog-CB3eiK7e.js} +3 -3
  3. package/dist/browser/{dialog-BzoSxhXQ.js → dialog-Bi-MVTGj.js} +291 -143
  4. package/dist/browser/{exportPng-CXVWVlLc.js → exportPng-CLZKdNzR.js} +2 -2
  5. package/dist/browser/{flowChanges-C567g-Pc.js → flowChanges-azhepfr-.js} +375 -83
  6. package/dist/browser/{flowWorkspace-BNdBKtla.js → flowWorkspace-Cs2ZGBYK.js} +1619 -475
  7. package/dist/browser/fr-CNTSedYU.js +593 -0
  8. package/dist/browser/ja-CxQBHr2J.js +593 -0
  9. package/dist/browser/ko-D1Exiv1h.js +593 -0
  10. package/dist/browser/licenses.md +1 -1
  11. package/dist/browser/{markdownContent-DF39sd9T.js → markdownContent-D0BBrFcF.js} +1 -1
  12. package/dist/browser/preview.css +193 -191
  13. package/dist/browser/preview.js +1997 -624
  14. package/dist/browser/ru-BzLZv0B7.js +593 -0
  15. package/dist/browser/theme.css +3 -1
  16. package/dist/browser/{tooltip-DGj5pudg.js → tooltip-BZ6tpqnr.js} +58 -24
  17. package/dist/browser/ui.css +12 -10
  18. package/dist/browser/ui.d.ts +1 -0
  19. package/dist/browser/ui.js +110 -63
  20. package/dist/browser/workbench.css +193 -191
  21. package/dist/browser/workbench.js +86 -17
  22. package/dist/browser/{workbenchSelect-BIaEVTx6.js → workbenchSelect-CHOeceKA.js} +2 -2
  23. package/dist/browser/{wrapLayout-C4moMKgb.js → wrapLayout-BB_qwy3k.js} +1 -1
  24. package/dist/browser/zh-CN-Dg_xSGde.js +593 -0
  25. package/dist/browser/zh-TW-oxuLwsV0.js +593 -0
  26. package/dist/command/index.js +61 -57
  27. package/dist/command/licenses.md +28 -4
  28. package/dist/common/authoring.d.ts +5 -5
  29. package/dist/common/authoringExamples.d.ts +3 -2
  30. package/dist/common/authoringSchema.d.ts +41 -4
  31. package/dist/common/catalogCache.d.ts +46 -0
  32. package/dist/common/connector-action.js +13 -10
  33. package/dist/common/connector-proxy.d.ts +96 -0
  34. package/dist/common/connector-proxy.js +5209 -0
  35. package/dist/common/control-api-conformance.js +312 -46
  36. package/dist/common/control-api.d.ts +12 -1
  37. package/dist/common/control-api.js +303 -41
  38. package/dist/common/control-requests.d.ts +4 -3
  39. package/dist/common/control-requests.js +14111 -171
  40. package/dist/common/engine-contract.d.ts +3 -2
  41. package/dist/common/event-source.js +55 -23
  42. package/dist/common/flow-authoring-node.d.ts +2 -0
  43. package/dist/common/flow-authoring.js +6936 -6781
  44. package/dist/common/flow-change-schema.d.ts +1 -1
  45. package/dist/common/flow-change.d.ts +2 -2
  46. package/dist/common/flow-change.js +91 -36
  47. package/dist/common/flow-connectionUsage.d.ts +1 -1
  48. package/dist/common/flow-encoding.js +93 -38
  49. package/dist/common/flow-requestParameters.d.ts +34 -0
  50. package/dist/common/flow-semantics.js +9429 -9236
  51. package/dist/common/flow-state.js +55 -23
  52. package/dist/common/flow-workflowFile.d.ts +3 -1
  53. package/dist/common/http-request.d.ts +6 -11
  54. package/dist/common/http-request.js +192 -141
  55. package/dist/common/licenses.md +1 -1
  56. package/dist/common/mcp.d.ts +3 -3
  57. package/dist/common/mcp.js +303 -41
  58. package/dist/common/run-events.js +1 -0
  59. package/dist/common/runtime-contract.js +10 -4
  60. package/dist/common/runtime-nodejs-compat.js +55 -23
  61. package/dist/common/scheduler-checkpoint.d.ts +3 -3
  62. package/dist/common/scheduler-dependencies.d.ts +22 -28
  63. package/dist/common/scheduler-node-execution.d.ts +1 -0
  64. package/dist/common/scheduler.d.ts +8 -2
  65. package/dist/common/scheduler.js +274 -95
  66. package/dist/common/workflow.js +51 -19
  67. package/dist/common/workflowAuthoring.d.ts +411 -0
  68. package/dist/render/browser/licenses.md +1 -1
  69. package/dist/render/browser/runtime.css +12 -10
  70. package/dist/render/browser/runtime.js +183 -49
  71. package/dist/render/node/index.js +85 -30
  72. package/dist/render/node/licenses.md +1 -1
  73. package/package.json +1 -1
  74. package/skills/open-flow/references/flow-authoring.md +14 -13
  75. package/src/base/common/jsonSchema.ts +11 -0
  76. package/src/connector/common/actionSchema.ts +4 -11
  77. package/src/connector/common/proxy.ts +152 -0
  78. package/src/control/common/api.ts +99 -3
  79. package/src/control/common/authoring.ts +23 -9
  80. package/src/control/common/authoringExamples.ts +9 -0
  81. package/src/control/common/authoringSchema.ts +21 -12
  82. package/src/control/common/catalogCache.ts +145 -0
  83. package/src/control/common/conformance.ts +9 -3
  84. package/src/control/common/connectorQueries.ts +17 -2
  85. package/src/control/common/requests.ts +1 -0
  86. package/src/control/common/workflowAuthoring.ts +120 -0
  87. package/src/execution/common/checkpoint.ts +18 -12
  88. package/src/execution/common/dependencies.ts +132 -15
  89. package/src/execution/common/events.ts +3 -0
  90. package/src/execution/common/node-execution.ts +22 -15
  91. package/src/execution/common/scheduler.ts +20 -31
  92. package/src/flow/common/change.ts +2 -1
  93. package/src/flow/common/changeSchema.ts +11 -1
  94. package/src/flow/common/connectionUsage.ts +4 -2
  95. package/src/flow/common/errorHandling.ts +3 -1
  96. package/src/flow/common/nodeChanges.ts +35 -18
  97. package/src/flow/common/requestParameters.ts +120 -0
  98. package/src/flow/common/semantics.ts +51 -1
  99. package/src/flow/common/sourceField.ts +3 -2
  100. package/src/flow/common/workflowFile.ts +2 -2
  101. package/src/http/common/httpRequest.ts +28 -78
  102. package/src/runtime/common/engineContract.ts +6 -3
@@ -0,0 +1,593 @@
1
+ //#region src/trigger/providers/airtable/locales/ru.json
2
+ var ru_default$33 = { "airtable.on_record_changed": {
3
+ "displayName": "Создание или изменение записи",
4
+ "description": "Периодически проверяет таблицу Airtable и срабатывает при создании или изменении записи, упорядочивая записи по полю времени.",
5
+ "configInputs": {
6
+ "baseId": "ID базы Airtable, которую нужно отслеживать.",
7
+ "fields": "Поля, которые должны быть включены в каждую возвращаемую запись. Оставьте пустым, чтобы включить все поля.",
8
+ "formula": "Формула Airtable, используемая для фильтрации записей. Оставьте пустым, чтобы включить все записи.",
9
+ "maxRecordsPerPoll": "Максимальное количество записей, обрабатываемых за одно опрос.",
10
+ "tableIdOrName": "ID или название таблицы Airtable, которую нужно отслеживать.",
11
+ "triggerField": "Поле даты или времени, используемое для определения созданных или обновленных записей.",
12
+ "view": "Вид Airtable, используемый для фильтрации и сортировки записей. Оставьте пустым, чтобы использовать настройку по умолчанию для таблицы."
13
+ },
14
+ "outputs": { "events": "Записи, созданные или обновленные с момента предыдущего опроса." }
15
+ } };
16
+ //#endregion
17
+ //#region src/trigger/providers/asana/locales/ru.json
18
+ var ru_default$32 = { "asana.on_task_event": {
19
+ "displayName": "Событие задачи проекта",
20
+ "description": "Получает изменения задач проекта с текущими данными задач.",
21
+ "configInputs": {
22
+ "projectId": "ID проекта",
23
+ "eventTypes": "События",
24
+ "customFieldId": "ID пользовательского поля"
25
+ },
26
+ "outputs": {
27
+ "projectId": "ID проекта",
28
+ "events": "Подходящие события в этой доставке."
29
+ }
30
+ } };
31
+ //#endregion
32
+ //#region src/trigger/providers/calendly/locales/ru.json
33
+ var ru_default$31 = { "calendly.on_booking_event": {
34
+ "displayName": "Создание или отмена бронирования",
35
+ "description": "Получает бронирования и отмены со связями переноса. Требуется личный токен доступа.",
36
+ "configInputs": {
37
+ "scope": "Область",
38
+ "eventTypes": "События"
39
+ },
40
+ "outputs": {
41
+ "event": "Тип бизнес-события.",
42
+ "inviteeUri": "URI приглашённого",
43
+ "createdAt": "Время события.",
44
+ "body": "Исходные данные события."
45
+ }
46
+ } };
47
+ //#endregion
48
+ //#region src/trigger/providers/clickup/locales/ru.json
49
+ var ru_default$30 = { "clickup.on_task_event": {
50
+ "displayName": "Событие задачи",
51
+ "description": "Событие задачи.",
52
+ "configInputs": {
53
+ "workspaceId": "ID рабочего пространства",
54
+ "listId": "ID списка",
55
+ "eventTypes": "События"
56
+ },
57
+ "outputs": {
58
+ "event": "Тип бизнес-события.",
59
+ "taskId": "ID задачи",
60
+ "body": "Исходные данные события."
61
+ }
62
+ } };
63
+ //#endregion
64
+ //#region src/trigger/providers/feishu/locales/ru.json
65
+ var ru_default$29 = { "feishu_app_bot.on_event": {
66
+ "displayName": "Событие приложения",
67
+ "description": "Получает выбранные события Feishu через общий источник.",
68
+ "configInputs": {
69
+ "sourceId": "Источник событий, который получает события для этого триггера.",
70
+ "eventTypes": "Типы событий Feishu, запускающие выполнение.",
71
+ "chatIds": "ID чатов, из которых будут получаться события. Оставьте пустым, чтобы получать события из всех доступных чатов источника.",
72
+ "resource": "Необязательный документ, календарь или ресурс одобрения, на который можно подписаться."
73
+ },
74
+ "outputs": {
75
+ "event": "Тип события Feishu.",
76
+ "deliveryId": "Уникальный идентификатор доставки этого события.",
77
+ "appId": "ID приложения Feishu, получившего событие.",
78
+ "tenantKey": "Ключ тенанта Feishu, который сгенерировал событие.",
79
+ "occurredAt": "Время возникновения события, если оно передано Feishu.",
80
+ "body": "Оригинальное тело события Feishu."
81
+ }
82
+ } };
83
+ //#endregion
84
+ //#region src/trigger/providers/fireflies/locales/ru.json
85
+ var ru_default$28 = { "fireflies.on_meeting_ready": {
86
+ "displayName": "Расшифровка или резюме готовы",
87
+ "description": "Проверяет доступ к встрече и получает события готовности расшифровки и резюме Fireflies V2.",
88
+ "configInputs": {
89
+ "sourceId": "Источник событий",
90
+ "eventTypes": "События"
91
+ },
92
+ "outputs": {
93
+ "event": "Тип события",
94
+ "deliveryId": "ID уведомления",
95
+ "accountId": "ID аккаунта",
96
+ "meetingId": "ID встречи / расшифровки",
97
+ "body": "Исходный объект"
98
+ }
99
+ } };
100
+ //#endregion
101
+ //#region src/trigger/providers/github/locales/ru.json
102
+ var ru_default$27 = {
103
+ "github.on_repo_event": {
104
+ "displayName": "Событие репозитория",
105
+ "description": "Срабатывает при выбранных событиях webhook GitHub в репозитории.",
106
+ "configInputs": {
107
+ "events": "События вебхука GitHub, запускающие выполнение.",
108
+ "insecureSsl": "Разрешить GitHub отправлять вебхуки без проверки SSL-сертификата.",
109
+ "owner": "Владелец репозитория GitHub.",
110
+ "repo": "Название репозитория GitHub."
111
+ },
112
+ "outputs": {
113
+ "body": "Оригинальное тело вебхука GitHub.",
114
+ "deliveryId": "Уникальный идентификатор доставки вебхука GitHub.",
115
+ "event": "Название события вебхука GitHub."
116
+ }
117
+ },
118
+ "github.watch_pull_request": {
119
+ "displayName": "Наблюдение за пул-реквестом",
120
+ "description": "Следит за одним пул-реквестом через уведомления и периодические проверки. Начинает с текущего состояния и сообщает о наблюдаемых изменениях, а не обо всех промежуточных переходах или событиях ревью.",
121
+ "configInputs": {
122
+ "owner": "Владелец репозитория GitHub.",
123
+ "repo": "Название репозитория GitHub.",
124
+ "number": "Номер pull‑request, который нужно отслеживать."
125
+ },
126
+ "outputs": {
127
+ "pullRequest": "Текущие данные pull‑request после обнаруженного изменения.",
128
+ "version": "Стабильный идентификатор версии отслеживаемого pull‑request."
129
+ }
130
+ }
131
+ };
132
+ //#endregion
133
+ //#region src/trigger/providers/gitlab/locales/ru.json
134
+ var ru_default$26 = { "gitlab.on_project_event": {
135
+ "displayName": "Событие проекта",
136
+ "description": "Срабатывает при выбранных событиях webhook GitLab в проекте.",
137
+ "configInputs": {
138
+ "events": "События проекта GitLab, запускающие выполнение.",
139
+ "insecureSsl": "Разрешить GitLab отправлять вебхуки без проверки SSL-сертификата.",
140
+ "project": "Числовой ID проекта или URL‑кодированный путь проекта.",
141
+ "pushBranchFilter": "Ветка или шаблон для фильтрации событий push. Оставьте пустым, чтобы включить все ветки."
142
+ },
143
+ "outputs": {
144
+ "body": "Оригинальное тело вебхука GitLab.",
145
+ "deliveryId": "Уникальный идентификатор, сгенерированный для этой доставки вебхука.",
146
+ "event": "Нормализованное название события GitLab.",
147
+ "gitlabEvent": "Оригинальное значение заголовка события GitLab."
148
+ }
149
+ } };
150
+ //#endregion
151
+ //#region src/trigger/providers/gmail/locales/ru.json
152
+ var ru_default$25 = { "gmail.on_message_received": {
153
+ "displayName": "Новое письмо",
154
+ "description": "Периодически проверяет почтовый ящик Gmail и срабатывает при получении нового письма.",
155
+ "configInputs": {
156
+ "includeDrafts": "Также запускать при получении черновиков.",
157
+ "includeSpamAndTrash": "Также запускать при получении сообщений из папок «Спам» и «Корзина».",
158
+ "labelNamesOrIds": "Запускать только для сообщений, имеющих все указанные метки, по названию или ID.",
159
+ "maxMessagesPerPoll": "Максимальное количество сообщений, обрабатываемых за одно опрос.",
160
+ "readStatus": "Запускать только для прочитанных, непрочитанных или обоих типов сообщений.",
161
+ "search": "Поисковый запрос Gmail, которому должно соответствовать каждое сообщение.",
162
+ "sender": "Запускать только для сообщений, отправленных с указанного адреса или имени."
163
+ },
164
+ "outputs": { "events": "Сообщения, полученные с момента предыдущего опроса." }
165
+ } };
166
+ //#endregion
167
+ //#region src/trigger/providers/google-calendar/locales/ru.json
168
+ var ru_default$24 = { "googlecalendar.on_event_changed": {
169
+ "displayName": "Изменение события календаря",
170
+ "description": "Периодически проверяет Google Calendar и срабатывает при создании, изменении или отмене события.",
171
+ "configInputs": {
172
+ "calendarId": "ID календаря Google, который нужно отслеживать.",
173
+ "changes": "Изменения событий календаря, запускающие выполнение.",
174
+ "matchTerm": "Текст, который должен присутствовать в суммарном описании, описании, месте проведения или участниках события. Оставьте пустым, чтобы отслеживать все события.",
175
+ "maxEventsPerPoll": "Максимальное количество событий календаря, обрабатываемых за одно опрос."
176
+ },
177
+ "outputs": { "events": "События календаря, созданные, обновленные или отменённые с момента предыдущего опроса." }
178
+ } };
179
+ //#endregion
180
+ //#region src/trigger/providers/google-drive/locales/ru.json
181
+ var ru_default$23 = {
182
+ "googledrive.changes_detected": {
183
+ "displayName": "Обнаружение изменений",
184
+ "description": "Использует канал Google Drive changes.watch и срабатывает, когда доступны изменения Диска.",
185
+ "configInputs": {
186
+ "driveId": "ID общего диска. Оставьте пустым, чтобы отслеживать подключённую учётную запись.",
187
+ "includeCorpusRemovals": "Включать доступный файловый ресурс, когда элемент покидает область изменений.",
188
+ "includeItemsFromAllDrives": "Включать элементы из «Моего диска» и общих дисков.",
189
+ "includeRemoved": "Включать изменения, вызванные удалением или потерей доступа.",
190
+ "pageSize": "Максимальное количество изменений, включаемых в один запуск Flow.",
191
+ "restrictToMyDrive": "Ограничить изменения структурой «Моего диска»."
192
+ },
193
+ "outputs": { "events": "Изменения Google Drive, доступные на момент получения уведомления." }
194
+ },
195
+ "googledrive.watch_changes": {
196
+ "displayName": "Наблюдение за изменениями",
197
+ "description": "Отслеживает изменения Диска через уведомления и периодическое сканирование одного и того же потока изменений.",
198
+ "configInputs": {
199
+ "driveId": "ID общего диска. Оставьте пустым, чтобы отслеживать подключённую учётную запись.",
200
+ "includeCorpusRemovals": "Включать доступный файловый ресурс, когда элемент покидает область изменений.",
201
+ "includeItemsFromAllDrives": "Включать элементы из «Моего диска» и общих дисков.",
202
+ "includeRemoved": "Включать изменения, вызванные удалением или потерей доступа.",
203
+ "pageSize": "Максимальное количество изменений, включаемых в один запуск Flow.",
204
+ "restrictToMyDrive": "Ограничить изменения структурой «Моего диска»."
205
+ },
206
+ "outputs": { "events": "Изменения Google Drive, обнаруженные через уведомления или периодические сканирования." }
207
+ },
208
+ "googledrive.on_file_change": {
209
+ "displayName": "Изменение файла или папки внутри папки",
210
+ "description": "Периодически проверяет одну папку Google Drive и срабатывает при создании или изменении файлов и папок непосредственно в ней.",
211
+ "configInputs": {
212
+ "changeType": "Запускать ли выполнение при создании или обновлении элементов.",
213
+ "driveId": "ID общего диска. Оставьте пустым, чтобы использовать «Мой диск».",
214
+ "folderId": "ID папки Google Drive, которую нужно отслеживать.",
215
+ "itemTypes": "Отслеживать файлы, папки или оба типа.",
216
+ "maxFilesPerPoll": "Максимальное количество изменённых элементов, обрабатываемых за одно опрос.",
217
+ "mimeTypes": "Запускать только для этих MIME‑типов. Оставьте пустым, чтобы включить все MIME‑типы.",
218
+ "namePrefix": "Запускать только для элементов, чьи названия начинаются с этого текста. Оставьте пустым, чтобы включать все названия."
219
+ },
220
+ "outputs": { "events": "Файлы или папки, созданные или обновленные с момента предыдущего опроса." }
221
+ }
222
+ };
223
+ //#endregion
224
+ //#region src/trigger/providers/google-sheets/locales/ru.json
225
+ var ru_default$22 = { "googlesheets.on_row_added": {
226
+ "displayName": "Добавление строки",
227
+ "description": "Периодически проверяет лист и срабатывает один раз для каждой новой строки, добавленной ниже последней ранее обнаруженной строки.",
228
+ "configInputs": {
229
+ "columnRange": "Диапазон столбцов A1 для чтения, например A:Z.",
230
+ "dateTimeRender": "Как возвращаются значения даты и времени.",
231
+ "firstDataRow": "Первая строка с данными, следующая за заголовком.",
232
+ "headerRow": "Строка, ячейки которой становятся названиями полей вывода.",
233
+ "maxRowsPerPoll": "Максимальное количество новых строк, обрабатываемых за одно опрос.",
234
+ "sheet": "Название рабочего листа, который нужно отслеживать.",
235
+ "spreadsheetId": "ID книги Google Sheets.",
236
+ "valueRender": "Как возвращаются значения ячеек."
237
+ },
238
+ "outputs": { "events": "Строки, добавленные с момента предыдущего опроса." }
239
+ } };
240
+ //#endregion
241
+ //#region src/trigger/providers/intercom/locales/ru.json
242
+ var ru_default$21 = { "intercom.on_conversation_event": {
243
+ "displayName": "Диалог клиента или заявка",
244
+ "description": "Получает диалоги, ответы клиентов и новые заявки. Ответы администраторов исключены.",
245
+ "configInputs": {
246
+ "sourceId": "Источник событий",
247
+ "eventTypes": "События"
248
+ },
249
+ "outputs": {
250
+ "event": "Тип события",
251
+ "deliveryId": "ID уведомления",
252
+ "workspaceId": "ID рабочего пространства",
253
+ "objectId": "ID диалога или заявки",
254
+ "body": "Исходный объект"
255
+ }
256
+ } };
257
+ //#endregion
258
+ //#region src/trigger/providers/jira/locales/ru.json
259
+ var ru_default$20 = { "jira.on_issue_event": {
260
+ "displayName": "Событие проекта Jira",
261
+ "description": "Получает события создания, изменения и комментариев задач общего проекта Jira Cloud.",
262
+ "configInputs": {
263
+ "sourceId": "Источник событий",
264
+ "eventTypes": "События"
265
+ },
266
+ "outputs": {
267
+ "event": "Тип события",
268
+ "deliveryId": "ID уведомления",
269
+ "cloudId": "ID облачного сайта",
270
+ "issueId": "ID задачи",
271
+ "body": "Исходное событие"
272
+ }
273
+ } };
274
+ //#endregion
275
+ //#region src/trigger/providers/linear/locales/ru.json
276
+ var ru_default$19 = { "linear.on_issue_changed": {
277
+ "displayName": "Создание или изменение задачи",
278
+ "description": "Периодически проверяет новые и изменённые задачи команды Linear. Начинает с текущего момента, не запуская существующие задачи. Сообщает о наблюдаемых текущих состояниях, но не об удалениях или каждом промежуточном изменении статуса.",
279
+ "configInputs": {
280
+ "teamId": "UUID команды Linear. Используйте UUID модели «Копировать» в Linear, чтобы найти его.",
281
+ "stateIds": "Статусы выбранной команды. Оставьте пустым, чтобы отслеживать все статусы. Соответствует текущему статусу, а не всем переходам в него."
282
+ },
283
+ "outputs": { "events": "Проблемы Linear, созданные или обновленные с момента предыдущего опроса." }
284
+ } };
285
+ //#endregion
286
+ //#region src/trigger/providers/notion/locales/ru.json
287
+ var ru_default$18 = { "notion.on_database_page_event": {
288
+ "displayName": "Добавление или изменение страницы базы данных",
289
+ "description": "Периодически проверяет базу данных Notion и срабатывает при добавлении страницы или редактировании существующей.",
290
+ "configInputs": {
291
+ "dataSourceId": "ID источника данных внутри базы данных. Оставьте пустым, чтобы использовать основной источник.",
292
+ "databaseId": "ID базы данных Notion, которую нужно отслеживать.",
293
+ "events": "Изменения страниц, запускающие выполнение.",
294
+ "includeProperties": "Включать свойства страницы в каждый выходной событие.",
295
+ "maxItemsPerPoll": "Максимальное количество изменённых страниц, обрабатываемых за одно опрос."
296
+ },
297
+ "outputs": { "events": "Страницы базы данных, добавленные или обновленные с момента предыдущего опроса." }
298
+ } };
299
+ //#endregion
300
+ //#region src/trigger/providers/one-drive/locales/ru.json
301
+ var ru_default$17 = { "one_drive.on_item_changed": {
302
+ "displayName": "Изменение файла или папки",
303
+ "description": "Периодически проверяет поток изменений OneDrive и срабатывает при создании, изменении или удалении файла или папки.",
304
+ "configInputs": {
305
+ "events": "Изменения элементов OneDrive, запускающие выполнение.",
306
+ "itemId": "Отслеживать только этот файл или папку по ID. Оставьте пустым, чтобы отслеживать несколько элементов.",
307
+ "itemTypes": "Отслеживать файлы, папки или оба типа.",
308
+ "maxItemsPerPoll": "Максимальное количество изменённых элементов, обрабатываемых за одно опрос.",
309
+ "parentFolderId": "Отслеживать только элементы в этой родительской папке. Оставьте пустым, чтобы отслеживать весь диск."
310
+ },
311
+ "outputs": { "events": "Элементы OneDrive, созданные, обновленные или удалённые с момента предыдущего опроса." }
312
+ } };
313
+ //#endregion
314
+ //#region src/trigger/providers/outlook/locales/ru.json
315
+ var ru_default$16 = { "outlook.on_message_received": {
316
+ "displayName": "Новое письмо",
317
+ "description": "Периодически проверяет почтовую папку Microsoft Outlook и срабатывает при поступлении нового письма.",
318
+ "configInputs": {
319
+ "folder": "Известное имя папки, ID папки или пустое значение для всей почтовой ящики.",
320
+ "includeDrafts": "Также запускать при получении черновиков.",
321
+ "maxMessagesPerPoll": "Максимальное количество сообщений, обрабатываемых за одно опрос.",
322
+ "readStatus": "Запускать только для прочитанных, непрочитанных или обоих типов сообщений.",
323
+ "senderAddress": "Точный адрес отправителя. Оставьте пустым, чтобы допустить любого отправителя.",
324
+ "subjectContains": "Безразличный к регистру текст, который должен присутствовать в теме сообщения.",
325
+ "withAttachmentsOnly": "Запускать только для сообщений с вложениями."
326
+ },
327
+ "outputs": { "events": "Сообщения Outlook, полученные с момента предыдущего опроса." }
328
+ } };
329
+ //#endregion
330
+ //#region src/trigger/providers/pandadoc/locales/ru.json
331
+ var ru_default$15 = { "pandadoc.on_document_event": {
332
+ "displayName": "Изменение статуса документа",
333
+ "description": "Изменение статуса документа.",
334
+ "configInputs": { "completedOnly": "Только завершённые документы" },
335
+ "outputs": { "events": "Подходящие события в этой доставке." }
336
+ } };
337
+ //#endregion
338
+ //#region src/trigger/providers/pipedrive/locales/ru.json
339
+ var ru_default$14 = { "pipedrive.on_crm_event": {
340
+ "displayName": "Событие сделки или контакта",
341
+ "description": "Событие сделки или контакта.",
342
+ "configInputs": { "eventType": "Событие" },
343
+ "outputs": {
344
+ "event": "Тип бизнес-события.",
345
+ "deliveryId": "ID доставки",
346
+ "objectId": "ID объекта",
347
+ "body": "Исходные данные события."
348
+ }
349
+ } };
350
+ //#endregion
351
+ //#region src/trigger/providers/resend/locales/ru.json
352
+ var ru_default$13 = { "resend.on_email_event": {
353
+ "displayName": "Получение, возврат письма или жалоба",
354
+ "description": "Получение, возврат письма или жалоба.",
355
+ "configInputs": { "eventTypes": "События" },
356
+ "outputs": {
357
+ "event": "Тип бизнес-события.",
358
+ "deliveryId": "ID доставки",
359
+ "emailId": "ID письма",
360
+ "createdAt": "Время события.",
361
+ "body": "Исходные данные события."
362
+ }
363
+ } };
364
+ //#endregion
365
+ //#region src/trigger/providers/sentry/locales/ru.json
366
+ var ru_default$12 = { "sentry.on_issue_alert": {
367
+ "displayName": "Оповещение об ошибке",
368
+ "description": "Получает уведомления правил об ошибках из установленной интеграции Sentry.",
369
+ "configInputs": {
370
+ "sourceId": "Источник событий",
371
+ "eventTypes": "События",
372
+ "projectIds": "ID проектов",
373
+ "ruleNames": "Названия правил оповещений"
374
+ },
375
+ "outputs": {
376
+ "event": "Тип события",
377
+ "deliveryId": "ID уведомления",
378
+ "organizationId": "ID организации",
379
+ "issueId": "ID ошибки",
380
+ "body": "Исходный объект"
381
+ }
382
+ } };
383
+ //#endregion
384
+ //#region src/trigger/providers/shopify/locales/ru.json
385
+ var ru_default$11 = { "shopify.on_shop_event": {
386
+ "displayName": "Событие магазина",
387
+ "description": "Срабатывает при событиях выбранных тем webhook Shopify в подключённом магазине.",
388
+ "configInputs": { "topics": "Темы вебхуков Shopify, запускающие выполнение." },
389
+ "outputs": {
390
+ "apiVersion": "Версия API Shopify, использованная для вебхука.",
391
+ "body": "Оригинальное тело вебхука Shopify.",
392
+ "eventId": "Уникальный ID события Shopify.",
393
+ "shopDomain": "Домен магазина Shopify, который сгенерировал событие.",
394
+ "topic": "Тема вебхука Shopify.",
395
+ "triggeredAt": "Время, когда Shopify инициировал вебхук.",
396
+ "webhookId": "ID подписки на вебхук Shopify."
397
+ }
398
+ } };
399
+ //#endregion
400
+ //#region src/trigger/providers/slack/locales/ru.json
401
+ var ru_default$10 = { "slack.on_message_posted": {
402
+ "displayName": "Новое сообщение канала",
403
+ "description": "Периодически проверяет один разговор Slack и срабатывает при появлении нового сообщения.",
404
+ "configInputs": {
405
+ "channelId": "ID беседы Slack, которую нужно отслеживать, например C0122KQ70S7E.",
406
+ "fromUserIds": "Запускать только для сообщений от этих пользователей Slack по ID. Оставьте пустым, чтобы допустить любого автора.",
407
+ "ignoreUserIds": "Никогда не запускать для сообщений от этих пользователей Slack по ID.",
408
+ "includeBotMessages": "Также запускать для сообщений, отправленных ботами и приложениями.",
409
+ "includeSystemMessages": "Также запускать для системных уведомлений Slack.",
410
+ "maxMessagesPerPoll": "Максимальное количество сообщений, обрабатываемых за одно опрос.",
411
+ "textContains": "Запускать только при наличии этой строки в тексте сообщения, без учёта регистра."
412
+ },
413
+ "outputs": { "events": "Сообщения Slack, опубликованные с момента предыдущего опроса." }
414
+ } };
415
+ //#endregion
416
+ //#region src/trigger/providers/slackbot/locales/ru.json
417
+ var ru_default$9 = { "slackbot.on_event": {
418
+ "displayName": "Упоминание или личное сообщение",
419
+ "description": "Получает упоминания и новые личные сообщения из общего источника Slack. Slack Connect исключён.",
420
+ "configInputs": {
421
+ "sourceId": "Источник событий",
422
+ "eventTypes": "События",
423
+ "channelIds": "ID каналов; пусто — все каналы источника."
424
+ },
425
+ "outputs": {
426
+ "event": "Тип события",
427
+ "deliveryId": "ID события",
428
+ "appId": "ID приложения Slack",
429
+ "teamId": "ID рабочего пространства",
430
+ "channel": "ID диалога",
431
+ "user": "ID пользователя",
432
+ "text": "Текст сообщения",
433
+ "ts": "Метка времени сообщения",
434
+ "threadTs": "Метка времени родительской ветки, если есть.",
435
+ "body": "Исходное событие Slack"
436
+ }
437
+ } };
438
+ //#endregion
439
+ //#region src/trigger/providers/stripe/locales/ru.json
440
+ var ru_default$8 = { "stripe.on_event": {
441
+ "displayName": "Событие аккаунта",
442
+ "description": "Срабатывает при выбранных событиях Stripe в подключённом аккаунте.",
443
+ "configInputs": {
444
+ "apiVersion": "Версия API Stripe, используемая для событий вебхука. Оставьте пустым, чтобы использовать настройку по умолчанию для аккаунта.",
445
+ "events": "Типы событий Stripe, запускающие выполнение.",
446
+ "includeConnectedAccounts": "Также получать события от подключённых аккаунтов Stripe."
447
+ },
448
+ "outputs": {
449
+ "body": "Оригинальное тело события Stripe.",
450
+ "event": "Тип события Stripe.",
451
+ "eventId": "Уникальный ID события Stripe.",
452
+ "livemode": "Было ли событие создано в режиме реальной работы (live mode)."
453
+ }
454
+ } };
455
+ //#endregion
456
+ //#region src/trigger/providers/tally/locales/ru.json
457
+ var ru_default$7 = { "tally.on_form_response": {
458
+ "displayName": "Отправка формы",
459
+ "description": "Получает новые ответы Tally через автоматически управляемый подписанный вебхук.",
460
+ "configInputs": { "formId": "Выберите форму, доступную этому подключению." },
461
+ "outputs": { "response": "Идентификаторы, время и поля с ключами, типами, значениями, вариантами и метаданными файлов." }
462
+ } };
463
+ //#endregion
464
+ //#region src/trigger/providers/telegram/locales/ru.json
465
+ var ru_default$6 = { "telegram.on_update": {
466
+ "displayName": "Обновление бота",
467
+ "description": "Срабатывает, когда подключённый бот Telegram получает выбранное обновление.",
468
+ "configInputs": {
469
+ "chatIds": "Принимать обновления только от этих числовых ID чатов Telegram. Оставьте пустым, чтобы допустить все чаты.",
470
+ "dropPendingUpdates": "Отбросить обновления, находящиеся в очереди до создания или возобновления вебхука.",
471
+ "updates": "Типы обновлений Telegram, запускающие выполнение. Используйте * для стандартного набора Telegram.",
472
+ "userIds": "Принимать обновления только от этих числовых ID пользователей Telegram. Оставьте пустым, чтобы допустить всех пользователей."
473
+ },
474
+ "outputs": {
475
+ "body": "Оригинальное тело обновления Telegram.",
476
+ "deliveryId": "Уникальный ID, сгенерированный для этого обновления Telegram.",
477
+ "event": "Тип обновления Telegram."
478
+ }
479
+ } };
480
+ //#endregion
481
+ //#region src/trigger/providers/typeform/locales/ru.json
482
+ var ru_default$5 = { "typeform.on_form_response": {
483
+ "displayName": "Полный ответ на форму",
484
+ "description": "Полный ответ на форму.",
485
+ "configInputs": { "formId": "ID формы" },
486
+ "outputs": { "response": "Идентификатор, время и исходные ответы со стабильными ID полей." }
487
+ } };
488
+ //#endregion
489
+ //#region src/trigger/providers/vercel/locales/ru.json
490
+ var ru_default$4 = { "vercel.on_deployment_event": {
491
+ "displayName": "Готовность или ошибка развёртывания",
492
+ "description": "Готовность или ошибка развёртывания.",
493
+ "configInputs": {
494
+ "teamId": "ID команды",
495
+ "projectId": "ID проекта",
496
+ "environment": "Окружение"
497
+ },
498
+ "outputs": {
499
+ "event": "Тип бизнес-события.",
500
+ "deliveryId": "ID доставки",
501
+ "deploymentId": "ID развёртывания",
502
+ "projectId": "ID проекта",
503
+ "body": "Исходные данные события."
504
+ }
505
+ } };
506
+ //#endregion
507
+ //#region src/trigger/providers/woocommerce/locales/ru.json
508
+ var ru_default$3 = { "woocommerce.on_store_event": {
509
+ "displayName": "Событие магазина",
510
+ "description": "Срабатывает при выбранных событиях магазина WooCommerce.",
511
+ "configInputs": {
512
+ "events": "События магазина WooCommerce, запускающие выполнение.",
513
+ "webhookName": "Название, отображаемое для вебхука в WooCommerce."
514
+ },
515
+ "outputs": {
516
+ "body": "Оригинальное тело вебхука WooCommerce.",
517
+ "deliveryId": "Уникальный ID доставки вебхука WooCommerce.",
518
+ "event": "Действие события WooCommerce.",
519
+ "resource": "Тип ресурса WooCommerce.",
520
+ "source": "URL магазина WooCommerce, который сгенерировал событие.",
521
+ "topic": "Полная тема вебхука WooCommerce.",
522
+ "webhookId": "ID подписки на вебхук WooCommerce."
523
+ }
524
+ } };
525
+ //#endregion
526
+ //#region src/trigger/providers/zendesk/locales/ru.json
527
+ var ru_default$2 = { "zendesk.on_event": {
528
+ "displayName": "Подписка на события",
529
+ "description": "Срабатывает при любом из выбранных событий аккаунта Zendesk.",
530
+ "configInputs": { "events": "Типы событий Zendesk, запускающие выполнение." },
531
+ "outputs": {
532
+ "body": "Оригинальное тело события Zendesk.",
533
+ "deliveryId": "Уникальный ID, сгенерированный для этой доставки события Zendesk.",
534
+ "event": "Тип события Zendesk.",
535
+ "subject": "Тема Zendesk, связанная со случаем."
536
+ }
537
+ } };
538
+ //#endregion
539
+ //#region src/trigger/providers/zoom/locales/ru.json
540
+ var ru_default$1 = { "zoom.on_recording_ready": {
541
+ "displayName": "Облачная запись готова",
542
+ "description": "Получает готовые облачные записи встреч подключённого пользователя Zoom.",
543
+ "configInputs": {
544
+ "sourceId": "Источник событий",
545
+ "eventTypes": "События"
546
+ },
547
+ "outputs": {
548
+ "event": "Тип события",
549
+ "deliveryId": "ID уведомления",
550
+ "accountId": "ID аккаунта Zoom",
551
+ "meetingUuid": "UUID экземпляра встречи",
552
+ "body": "Исходный объект"
553
+ }
554
+ } };
555
+ //#endregion
556
+ //#region src/trigger/providers/locales/ru.ts
557
+ var ru_default = {
558
+ ...ru_default$33,
559
+ ...ru_default$32,
560
+ ...ru_default$31,
561
+ ...ru_default$30,
562
+ ...ru_default$29,
563
+ ...ru_default$28,
564
+ ...ru_default$27,
565
+ ...ru_default$26,
566
+ ...ru_default$25,
567
+ ...ru_default$24,
568
+ ...ru_default$23,
569
+ ...ru_default$22,
570
+ ...ru_default$21,
571
+ ...ru_default$20,
572
+ ...ru_default$19,
573
+ ...ru_default$18,
574
+ ...ru_default$17,
575
+ ...ru_default$16,
576
+ ...ru_default$15,
577
+ ...ru_default$14,
578
+ ...ru_default$13,
579
+ ...ru_default$12,
580
+ ...ru_default$11,
581
+ ...ru_default$10,
582
+ ...ru_default$9,
583
+ ...ru_default$8,
584
+ ...ru_default$7,
585
+ ...ru_default$6,
586
+ ...ru_default$5,
587
+ ...ru_default$4,
588
+ ...ru_default$3,
589
+ ...ru_default$2,
590
+ ...ru_default$1
591
+ };
592
+ //#endregion
593
+ export { ru_default as default };
@@ -6,7 +6,8 @@
6
6
  /* Public --open-flow-* inputs inherit from the host; defaults resolve at each theme root. */
7
7
  .open-flow-theme {
8
8
  --_open-flow-theme: light;
9
- color-scheme: var(--_open-flow-theme);
9
+ /* Literal schemes let the production CSS compiler preserve light-dark() fallbacks. */
10
+ color-scheme: light;
10
11
  --_open-flow-background: var(--open-flow-background, light-dark(#fdfdfd, #1c1c1c));
11
12
  --_open-flow-foreground: var(--open-flow-foreground, light-dark(#242424, #eeeeee));
12
13
  --_open-flow-card: var(--open-flow-card, light-dark(#fefefe, #242424));
@@ -39,6 +40,7 @@
39
40
 
40
41
  .open-flow-theme[data-theme='dark'] {
41
42
  --_open-flow-theme: dark;
43
+ color-scheme: dark;
42
44
  }
43
45
 
44
46
  /* Product roles are shared by theme roots and explicit canvas control scopes. */