kortique commited on
Commit
5626cfb
·
1 Parent(s): 6c304f1

add locale settings

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. docs/advanced-development/pipeline-yaml.mdx +0 -112
  2. i18n/de/code.json +0 -313
  3. i18n/de/docusaurus-plugin-content-blog/2019-05-28-first-blog-post.md +0 -16
  4. i18n/de/docusaurus-plugin-content-blog/2019-05-29-long-blog-post.md +0 -46
  5. i18n/de/docusaurus-plugin-content-blog/2021-08-01-mdx-blog-post.mdx +0 -26
  6. i18n/de/docusaurus-plugin-content-blog/2021-08-26-welcome/index.md +0 -34
  7. i18n/de/docusaurus-plugin-content-blog/authors.yml +0 -22
  8. i18n/de/docusaurus-plugin-content-blog/options.json +0 -14
  9. i18n/de/docusaurus-plugin-content-blog/tags.yml +0 -16
  10. i18n/de/docusaurus-plugin-content-docs/current.json +0 -18
  11. i18n/de/docusaurus-plugin-content-docs/current/intro.md +0 -47
  12. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/_category_.json +0 -8
  13. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/congratulations.md +0 -23
  14. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-blog-post.md +0 -34
  15. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-document.md +0 -57
  16. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-page.md +0 -43
  17. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/deploy-your-site.md +0 -31
  18. i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/markdown-features.mdx +0 -152
  19. i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/_category_.json +0 -7
  20. i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/manage-docs-versions.md +0 -55
  21. i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/translate-your-site.md +0 -88
  22. i18n/de/docusaurus-plugin-content-pages/index.module.css +0 -23
  23. i18n/de/docusaurus-plugin-content-pages/index.tsx +0 -44
  24. i18n/de/docusaurus-theme-classic/footer.json +0 -42
  25. i18n/de/docusaurus-theme-classic/navbar.json +0 -22
  26. i18n/en/code.json +0 -313
  27. i18n/en/docusaurus-plugin-content-blog/options.json +0 -14
  28. i18n/en/docusaurus-plugin-content-docs/current.json +0 -38
  29. i18n/en/docusaurus-plugin-content-pages/index.module.css +0 -23
  30. i18n/en/docusaurus-plugin-content-pages/index.tsx +0 -44
  31. i18n/en/docusaurus-theme-classic/footer.json +0 -42
  32. i18n/en/docusaurus-theme-classic/navbar.json +0 -22
  33. i18n/ru/code.json +15 -15
  34. i18n/ru/docusaurus-plugin-content-blog/2019-05-28-first-blog-post.md +0 -16
  35. i18n/ru/docusaurus-plugin-content-blog/2019-05-29-long-blog-post.md +0 -46
  36. i18n/ru/docusaurus-plugin-content-blog/2021-08-01-mdx-blog-post.mdx +0 -26
  37. i18n/ru/docusaurus-plugin-content-blog/2021-08-26-welcome/index.md +0 -34
  38. i18n/ru/docusaurus-plugin-content-blog/authors.yml +0 -22
  39. i18n/ru/docusaurus-plugin-content-blog/tags.yml +0 -16
  40. i18n/ru/docusaurus-plugin-content-docs/current.json +20 -8
  41. i18n/ru/docusaurus-plugin-content-docs/current/{tutorial-extras → advanced-development}/_category_.json +2 -2
  42. i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/creating-custom-node.mdx +205 -0
  43. i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/debug-pipelines.mdx +7 -0
  44. i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/node-script.mdx +216 -0
  45. i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/node-yaml.mdx +293 -0
  46. i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/pipeline-yaml.mdx +113 -0
  47. i18n/ru/docusaurus-plugin-content-docs/current/deploy-pipelines/_category_.json +0 -8
  48. i18n/ru/docusaurus-plugin-content-docs/current/deploy-pipelines/call-via-api.md +0 -111
  49. i18n/ru/docusaurus-plugin-content-docs/current/img/add_nodes_tab.webp +3 -0
  50. i18n/{de/docusaurus-plugin-content-blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg → ru/docusaurus-plugin-content-docs/current/img/add_pipeline_button.jpg} +2 -2
docs/advanced-development/pipeline-yaml.mdx CHANGED
@@ -2,118 +2,6 @@
2
  sidebar_position: 4
3
  ---
4
 
5
- # YAML для пайплайны
6
-
7
- **YAML пайплайна** предоставляет комплексный обзор всей конфигурации вашего пайплайна в формате YAML. Это включает все ноды с их расположением, исполняемым кодом, взаимосвязями и различной технической информацией, которая определяет, как работает пайплайн.
8
-
9
- ## Доступ к YAML пайплайна
10
-
11
- Чтобы получить доступ к конфигурации YAML пайплайна:
12
-
13
- 1. Нажмите кнопку **More** в интерфейсе пайплайна
14
- 2. Выберите **YAML** из выпадающего меню
15
-
16
- ![Доступ к YAML пайплайна](../img/pipeline-yaml-1.jpg)
17
-
18
- Это откроет редактор YAML, где вы можете его просматривать и изменять.
19
-
20
- ## Структура YAML
21
-
22
- YAML пайплайна следует определенной иерархической структуре:
23
-
24
- ### 1. Метаданные пайплайна
25
- ```yaml
26
- name: Pipeline Name
27
- version: 1
28
- description: Pipeline description
29
- readme: {}
30
- category:
31
- _id: category_id
32
- title: Category
33
- ```
34
-
35
- Этот раздел содержит базовую информацию о пайплайне, включая название, описание и категоризацию.
36
-
37
- ### 2. Конфигурация запуска
38
- ```yaml
39
- start:
40
- nodes:
41
- - first_node_id
42
- ```
43
-
44
- Определяет, какая нода служит стартовой точкой для выполнения пайплайна.
45
-
46
- ### 3. Входы и выходы
47
- ```yaml
48
- inputs:
49
- string1:
50
- title: String 1
51
- type: string
52
- # Параметры входных данных
53
-
54
- outputs:
55
- json_output:
56
- title: JSON
57
- type: json
58
- # Параметры выходных данных
59
- ```
60
-
61
- Здесь определены все входы и выходы для всех нод, размещённые на рабочем пространстве пайплайны.
62
-
63
- ### 4. Потоки (соединения нод)
64
- ```yaml
65
- flows:
66
- connection_name:
67
- from: source_node
68
- output: output_parameter
69
- to: target_node
70
- input: input_parameter
71
- ```
72
-
73
- Этот раздел описывает, как данные передаются между нодами, связывая выходы одной ноды с входами другой.
74
-
75
- ### 5. Конфигурация нод
76
- ```yaml
77
- nodes:
78
- node_id:
79
- version: 1
80
- title: Node Title
81
- source: node|catalog
82
- execution: rapid|regular|deferred|protracted
83
- script: |
84
- // JavaScript код
85
- inputs:
86
- # Определения входов ноды
87
- outputs:
88
- # Определения выходов ноды
89
- arrange:
90
- # Расположение ноды
91
- ```
92
-
93
- Каждая нода в пайплайне полностью описана со всеми параметрами и кодом.
94
-
95
- ## Редактирование и сохранение
96
-
97
- При внесении изменений в YAML пайплайна:
98
-
99
- 1. **Внесите свои изменения** в редакторе YAML
100
- 2. **Нажмите Save** внизу интерфейса
101
- 3. **Проверьте индикатор состояния** - зеленый индикатор "Saved" появится справа, если нет ошибок
102
-
103
- ![Интерфейс редактора YAML](../img/pipeline-yaml-2.jpg)
104
-
105
- Любые синтаксические ошибки или проблемы конфигурации будут выделены, предотвращая операцию сохранения до их устранения.
106
-
107
- ## Возврат в рабочее пространство пайплайна
108
-
109
- Чтобы вернуться в визуальное рабочее пространство пайплайна:
110
-
111
- - Нажмите синюю кнопку **Pipeline** слева в интерфейсе
112
-
113
- Это переключит вас обратно в графический редактор пайплайна.
114
-
115
- --- eng ---
116
-
117
  # Pipeline YAML
118
 
119
  **Pipeline YAML** provides a comprehensive overview of your entire pipeline configuration in YAML format. This includes all nodes with their positioning, executable code, relationships, and various technical information that defines how the pipeline operates.
 
2
  sidebar_position: 4
3
  ---
4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  # Pipeline YAML
6
 
7
  **Pipeline YAML** provides a comprehensive overview of your entire pipeline configuration in YAML format. This includes all nodes with their positioning, executable code, relationships, and various technical information that defines how the pipeline operates.
i18n/de/code.json DELETED
@@ -1,313 +0,0 @@
1
- {
2
- "theme.ErrorPageContent.title": {
3
- "message": "This page crashed.",
4
- "description": "The title of the fallback page when the page crashed"
5
- },
6
- "theme.BackToTopButton.buttonAriaLabel": {
7
- "message": "Scroll back to top",
8
- "description": "The ARIA label for the back to top button"
9
- },
10
- "theme.blog.archive.title": {
11
- "message": "Archive",
12
- "description": "The page & hero title of the blog archive page"
13
- },
14
- "theme.blog.archive.description": {
15
- "message": "Archive",
16
- "description": "The page & hero description of the blog archive page"
17
- },
18
- "theme.blog.paginator.navAriaLabel": {
19
- "message": "Blog list page navigation",
20
- "description": "The ARIA label for the blog pagination"
21
- },
22
- "theme.blog.paginator.newerEntries": {
23
- "message": "Newer entries",
24
- "description": "The label used to navigate to the newer blog posts page (previous page)"
25
- },
26
- "theme.blog.paginator.olderEntries": {
27
- "message": "Older entries",
28
- "description": "The label used to navigate to the older blog posts page (next page)"
29
- },
30
- "theme.blog.post.paginator.navAriaLabel": {
31
- "message": "Blog post page navigation",
32
- "description": "The ARIA label for the blog posts pagination"
33
- },
34
- "theme.blog.post.paginator.newerPost": {
35
- "message": "Newer post",
36
- "description": "The blog post button label to navigate to the newer/previous post"
37
- },
38
- "theme.blog.post.paginator.olderPost": {
39
- "message": "Older post",
40
- "description": "The blog post button label to navigate to the older/next post"
41
- },
42
- "theme.tags.tagsPageLink": {
43
- "message": "View all tags",
44
- "description": "The label of the link targeting the tag list page"
45
- },
46
- "theme.colorToggle.ariaLabel": {
47
- "message": "Switch between dark and light mode (currently {mode})",
48
- "description": "The ARIA label for the navbar color mode toggle"
49
- },
50
- "theme.colorToggle.ariaLabel.mode.dark": {
51
- "message": "dark mode",
52
- "description": "The name for the dark color mode"
53
- },
54
- "theme.colorToggle.ariaLabel.mode.light": {
55
- "message": "light mode",
56
- "description": "The name for the light color mode"
57
- },
58
- "theme.docs.breadcrumbs.navAriaLabel": {
59
- "message": "Breadcrumbs",
60
- "description": "The ARIA label for the breadcrumbs"
61
- },
62
- "theme.docs.DocCard.categoryDescription.plurals": {
63
- "message": "1 item|{count} items",
64
- "description": "The default description for a category card in the generated index about how many items this category includes"
65
- },
66
- "theme.docs.paginator.navAriaLabel": {
67
- "message": "Docs pages",
68
- "description": "The ARIA label for the docs pagination"
69
- },
70
- "theme.docs.paginator.previous": {
71
- "message": "Previous",
72
- "description": "The label used to navigate to the previous doc"
73
- },
74
- "theme.docs.paginator.next": {
75
- "message": "Next",
76
- "description": "The label used to navigate to the next doc"
77
- },
78
- "theme.docs.tagDocListPageTitle.nDocsTagged": {
79
- "message": "One doc tagged|{count} docs tagged",
80
- "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
81
- },
82
- "theme.docs.tagDocListPageTitle": {
83
- "message": "{nDocsTagged} with \"{tagName}\"",
84
- "description": "The title of the page for a docs tag"
85
- },
86
- "theme.docs.versionBadge.label": {
87
- "message": "Version: {versionLabel}"
88
- },
89
- "theme.docs.versions.unreleasedVersionLabel": {
90
- "message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
91
- "description": "The label used to tell the user that he's browsing an unreleased doc version"
92
- },
93
- "theme.docs.versions.unmaintainedVersionLabel": {
94
- "message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
95
- "description": "The label used to tell the user that he's browsing an unmaintained doc version"
96
- },
97
- "theme.docs.versions.latestVersionSuggestionLabel": {
98
- "message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
99
- "description": "The label used to tell the user to check the latest version"
100
- },
101
- "theme.docs.versions.latestVersionLinkLabel": {
102
- "message": "latest version",
103
- "description": "The label used for the latest version suggestion link label"
104
- },
105
- "theme.common.editThisPage": {
106
- "message": "Edit this page",
107
- "description": "The link label to edit the current page"
108
- },
109
- "theme.common.headingLinkTitle": {
110
- "message": "Direct link to {heading}",
111
- "description": "Title for link to heading"
112
- },
113
- "theme.lastUpdated.atDate": {
114
- "message": " on {date}",
115
- "description": "The words used to describe on which date a page has been last updated"
116
- },
117
- "theme.lastUpdated.byUser": {
118
- "message": " by {user}",
119
- "description": "The words used to describe by who the page has been last updated"
120
- },
121
- "theme.lastUpdated.lastUpdatedAtBy": {
122
- "message": "Last updated{atDate}{byUser}",
123
- "description": "The sentence used to display when a page has been last updated, and by who"
124
- },
125
- "theme.navbar.mobileVersionsDropdown.label": {
126
- "message": "Versions",
127
- "description": "The label for the navbar versions dropdown on mobile view"
128
- },
129
- "theme.NotFound.title": {
130
- "message": "Page Not Found",
131
- "description": "The title of the 404 page"
132
- },
133
- "theme.tags.tagsListLabel": {
134
- "message": "Tags:",
135
- "description": "The label alongside a tag list"
136
- },
137
- "theme.AnnouncementBar.closeButtonAriaLabel": {
138
- "message": "Close",
139
- "description": "The ARIA label for close button of announcement bar"
140
- },
141
- "theme.admonition.caution": {
142
- "message": "caution",
143
- "description": "The default label used for the Caution admonition (:::caution)"
144
- },
145
- "theme.admonition.danger": {
146
- "message": "danger",
147
- "description": "The default label used for the Danger admonition (:::danger)"
148
- },
149
- "theme.admonition.info": {
150
- "message": "info",
151
- "description": "The default label used for the Info admonition (:::info)"
152
- },
153
- "theme.admonition.note": {
154
- "message": "note",
155
- "description": "The default label used for the Note admonition (:::note)"
156
- },
157
- "theme.admonition.tip": {
158
- "message": "tip",
159
- "description": "The default label used for the Tip admonition (:::tip)"
160
- },
161
- "theme.admonition.warning": {
162
- "message": "warning",
163
- "description": "The default label used for the Warning admonition (:::warning)"
164
- },
165
- "theme.blog.sidebar.navAriaLabel": {
166
- "message": "Blog recent posts navigation",
167
- "description": "The ARIA label for recent posts in the blog sidebar"
168
- },
169
- "theme.CodeBlock.wordWrapToggle": {
170
- "message": "Toggle word wrap",
171
- "description": "The title attribute for toggle word wrapping button of code block lines"
172
- },
173
- "theme.CodeBlock.copied": {
174
- "message": "Copied",
175
- "description": "The copied button label on code blocks"
176
- },
177
- "theme.CodeBlock.copyButtonAriaLabel": {
178
- "message": "Copy code to clipboard",
179
- "description": "The ARIA label for copy code blocks button"
180
- },
181
- "theme.CodeBlock.copy": {
182
- "message": "Copy",
183
- "description": "The copy button label on code blocks"
184
- },
185
- "theme.DocSidebarItem.expandCategoryAriaLabel": {
186
- "message": "Expand sidebar category '{label}'",
187
- "description": "The ARIA label to expand the sidebar category"
188
- },
189
- "theme.DocSidebarItem.collapseCategoryAriaLabel": {
190
- "message": "Collapse sidebar category '{label}'",
191
- "description": "The ARIA label to collapse the sidebar category"
192
- },
193
- "theme.NavBar.navAriaLabel": {
194
- "message": "Main",
195
- "description": "The ARIA label for the main navigation"
196
- },
197
- "theme.navbar.mobileLanguageDropdown.label": {
198
- "message": "Languages",
199
- "description": "The label for the mobile language switcher dropdown"
200
- },
201
- "theme.NotFound.p1": {
202
- "message": "We could not find what you were looking for.",
203
- "description": "The first paragraph of the 404 page"
204
- },
205
- "theme.NotFound.p2": {
206
- "message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
207
- "description": "The 2nd paragraph of the 404 page"
208
- },
209
- "theme.TOCCollapsible.toggleButtonLabel": {
210
- "message": "On this page",
211
- "description": "The label used by the button on the collapsible TOC component"
212
- },
213
- "theme.blog.post.readMore": {
214
- "message": "Read more",
215
- "description": "The label used in blog post item excerpts to link to full blog posts"
216
- },
217
- "theme.blog.post.readMoreLabel": {
218
- "message": "Read more about {title}",
219
- "description": "The ARIA label for the link to full blog posts from excerpts"
220
- },
221
- "theme.blog.post.readingTime.plurals": {
222
- "message": "One min read|{readingTime} min read",
223
- "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
224
- },
225
- "theme.docs.breadcrumbs.home": {
226
- "message": "Home page",
227
- "description": "The ARIA label for the home page in the breadcrumbs"
228
- },
229
- "theme.docs.sidebar.collapseButtonTitle": {
230
- "message": "Collapse sidebar",
231
- "description": "The title attribute for collapse button of doc sidebar"
232
- },
233
- "theme.docs.sidebar.collapseButtonAriaLabel": {
234
- "message": "Collapse sidebar",
235
- "description": "The title attribute for collapse button of doc sidebar"
236
- },
237
- "theme.docs.sidebar.navAriaLabel": {
238
- "message": "Docs sidebar",
239
- "description": "The ARIA label for the sidebar navigation"
240
- },
241
- "theme.docs.sidebar.closeSidebarButtonAriaLabel": {
242
- "message": "Close navigation bar",
243
- "description": "The ARIA label for close button of mobile sidebar"
244
- },
245
- "theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
246
- "message": "← Back to main menu",
247
- "description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
248
- },
249
- "theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
250
- "message": "Toggle navigation bar",
251
- "description": "The ARIA label for hamburger menu button of mobile navigation"
252
- },
253
- "theme.docs.sidebar.expandButtonTitle": {
254
- "message": "Expand sidebar",
255
- "description": "The ARIA label and title attribute for expand button of doc sidebar"
256
- },
257
- "theme.docs.sidebar.expandButtonAriaLabel": {
258
- "message": "Expand sidebar",
259
- "description": "The ARIA label and title attribute for expand button of doc sidebar"
260
- },
261
- "theme.blog.post.plurals": {
262
- "message": "One post|{count} posts",
263
- "description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
264
- },
265
- "theme.blog.tagTitle": {
266
- "message": "{nPosts} tagged with \"{tagName}\"",
267
- "description": "The title of the page for a blog tag"
268
- },
269
- "theme.blog.author.pageTitle": {
270
- "message": "{authorName} - {nPosts}",
271
- "description": "The title of the page for a blog author"
272
- },
273
- "theme.blog.authorsList.pageTitle": {
274
- "message": "Authors",
275
- "description": "The title of the authors page"
276
- },
277
- "theme.blog.authorsList.viewAll": {
278
- "message": "View all authors",
279
- "description": "The label of the link targeting the blog authors page"
280
- },
281
- "theme.blog.author.noPosts": {
282
- "message": "This author has not written any posts yet.",
283
- "description": "The text for authors with 0 blog post"
284
- },
285
- "theme.contentVisibility.unlistedBanner.title": {
286
- "message": "Unlisted page",
287
- "description": "The unlisted content banner title"
288
- },
289
- "theme.contentVisibility.unlistedBanner.message": {
290
- "message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
291
- "description": "The unlisted content banner message"
292
- },
293
- "theme.contentVisibility.draftBanner.title": {
294
- "message": "Draft page",
295
- "description": "The draft content banner title"
296
- },
297
- "theme.contentVisibility.draftBanner.message": {
298
- "message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
299
- "description": "The draft content banner message"
300
- },
301
- "theme.ErrorPageContent.tryAgain": {
302
- "message": "Try again",
303
- "description": "The label of the button to try again rendering when the React error boundary captures an error"
304
- },
305
- "theme.common.skipToMainContent": {
306
- "message": "Skip to main content",
307
- "description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
308
- },
309
- "theme.tags.tagsPageTitle": {
310
- "message": "Tags",
311
- "description": "The title of the tag list page"
312
- }
313
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/2019-05-28-first-blog-post.md DELETED
@@ -1,16 +0,0 @@
1
- ---
2
- slug: first-blog-post
3
- title: First Blog Post
4
- authors:
5
- - slorber
6
- - yangshun
7
- tags:
8
- - hola
9
- - docusaurus
10
- ---
11
-
12
- Lorem ipsum dolor sit amet...
13
-
14
- <!-- truncate -->
15
-
16
- ...consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/2019-05-29-long-blog-post.md DELETED
@@ -1,46 +0,0 @@
1
- ---
2
- slug: long-blog-post
3
- title: Long Blog Post
4
- authors: yangshun
5
- tags:
6
- - hello
7
- - docusaurus
8
- ---
9
-
10
- This is the summary of a very long blog post,
11
-
12
- Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
13
-
14
- <!-- truncate -->
15
-
16
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
17
-
18
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
19
-
20
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
21
-
22
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
23
-
24
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
25
-
26
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
27
-
28
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
29
-
30
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
31
-
32
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
33
-
34
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
35
-
36
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
37
-
38
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
39
-
40
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
41
-
42
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
43
-
44
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
45
-
46
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/2021-08-01-mdx-blog-post.mdx DELETED
@@ -1,26 +0,0 @@
1
- ---
2
- slug: mdx-blog-post
3
- title: MDX Blog Post
4
- authors:
5
- - slorber
6
- tags:
7
- - docusaurus
8
- ---
9
-
10
- Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
11
-
12
- :::tip
13
-
14
- Use the power of React to create interactive blog posts.
15
-
16
- :::
17
-
18
- {/* truncate */}
19
-
20
- For example, use JSX to create an interactive button:
21
-
22
- ```js
23
- <button onClick={() => alert('button clicked!')}>Click me!</button>
24
- ```
25
-
26
- <button onClick={() => alert('button clicked!')}>Click me!</button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/2021-08-26-welcome/index.md DELETED
@@ -1,34 +0,0 @@
1
- ---
2
- slug: welcome
3
- title: Welcome
4
- authors:
5
- - slorber
6
- - yangshun
7
- tags:
8
- - facebook
9
- - hello
10
- - docusaurus
11
- ---
12
-
13
- [Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
14
-
15
- Here are a few tips you might find useful.
16
-
17
- <!-- truncate -->
18
-
19
- Simply add Markdown files (or folders) to the `blog` directory.
20
-
21
- Regular blog authors can be added to `authors.yml`.
22
-
23
- The blog post date can be extracted from filenames, such as:
24
-
25
- - `2019-05-30-welcome.md`
26
- - `2019-05-30-welcome/index.md`
27
-
28
- A blog post folder can be convenient to co-locate blog post images:
29
-
30
- ![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
31
-
32
- The blog supports tags as well!
33
-
34
- **And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/authors.yml DELETED
@@ -1,22 +0,0 @@
1
- yangshun:
2
- name: Yangshun Tay
3
- title: Front End Engineer @ Facebook
4
- url: https://github.com/yangshun
5
- image_url: https://github.com/yangshun.png
6
- page: true
7
- socials:
8
- x: yangshunz
9
- github: yangshun
10
- slorber:
11
- name: Sébastien Lorber
12
- title: Docusaurus maintainer
13
- url: https://sebastienlorber.com
14
- image_url: https://github.com/slorber.png
15
- page:
16
- # customize the url of the author page at /blog/authors/<permalink>
17
- permalink: '/all-sebastien-lorber-articles'
18
- socials:
19
- x: sebastienlorber
20
- linkedin: sebastienlorber
21
- github: slorber
22
- newsletter: https://thisweekinreact.com
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/options.json DELETED
@@ -1,14 +0,0 @@
1
- {
2
- "title": {
3
- "message": "Blog",
4
- "description": "The title for the blog used in SEO"
5
- },
6
- "description": {
7
- "message": "Blog",
8
- "description": "The description for the blog used in SEO"
9
- },
10
- "sidebar.title": {
11
- "message": "Recent posts",
12
- "description": "The label for the left sidebar"
13
- }
14
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-blog/tags.yml DELETED
@@ -1,16 +0,0 @@
1
- facebook:
2
- label: Facebook
3
- permalink: /facebook
4
- description: Facebook tag description
5
- hello:
6
- label: Hello
7
- permalink: /hello
8
- description: Hello tag description
9
- docusaurus:
10
- label: Docusaurus
11
- permalink: /docusaurus
12
- description: Docusaurus tag description
13
- hola:
14
- label: Hola
15
- permalink: /hola
16
- description: Hola tag description
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current.json DELETED
@@ -1,18 +0,0 @@
1
- {
2
- "version.label": {
3
- "message": "Next",
4
- "description": "The label for version current"
5
- },
6
- "sidebar.tutorialSidebar.category.Tutorial - Basics": {
7
- "message": "Tutorial - Basics",
8
- "description": "The label for category Tutorial - Basics in sidebar tutorialSidebar"
9
- },
10
- "sidebar.tutorialSidebar.category.Tutorial - Basics.link.generated-index.description": {
11
- "message": "5 minutes to learn the most important Docusaurus concepts.",
12
- "description": "The generated-index page description for category Tutorial - Basics in sidebar tutorialSidebar"
13
- },
14
- "sidebar.tutorialSidebar.category.Tutorial - Extras": {
15
- "message": "Tutorial - Extras",
16
- "description": "The label for category Tutorial - Extras in sidebar tutorialSidebar"
17
- }
18
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/intro.md DELETED
@@ -1,47 +0,0 @@
1
- ---
2
- sidebar_position: 1
3
- ---
4
-
5
- # Tutorial Intro
6
-
7
- Let's discover **Piper in less than 5 minutes**.
8
-
9
- ## Getting Started
10
-
11
- Get started by **creating a new site**.
12
-
13
- Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**.
14
-
15
- ### What you'll need
16
-
17
- - [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
18
- - When installing Node.js, you are recommended to check all checkboxes related to dependencies.
19
-
20
- ## Generate a new site
21
-
22
- Generate a new Docusaurus site using the **classic template**.
23
-
24
- The classic template will automatically be added to your project after you run the command:
25
-
26
- ```bash
27
- npm init docusaurus@latest my-website classic
28
- ```
29
-
30
- You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.
31
-
32
- The command also installs all necessary dependencies you need to run Docusaurus.
33
-
34
- ## Start your site
35
-
36
- Run the development server:
37
-
38
- ```bash
39
- cd my-website
40
- npm run start
41
- ```
42
-
43
- The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.
44
-
45
- The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.
46
-
47
- Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/_category_.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "label": "Tutorial - Basics",
3
- "position": 2,
4
- "link": {
5
- "type": "generated-index",
6
- "description": "5 minutes to learn the most important Docusaurus concepts."
7
- }
8
- }
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/congratulations.md DELETED
@@ -1,23 +0,0 @@
1
- ---
2
- sidebar_position: 6
3
- ---
4
-
5
- # Congratulations!
6
-
7
- You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
8
-
9
- Docusaurus has **much more to offer**!
10
-
11
- Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
12
-
13
- Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
14
-
15
- ## What's next?
16
-
17
- - Read the [official documentation](https://docusaurus.io/)
18
- - Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
19
- - Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
20
- - Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
21
- - Add a [search bar](https://docusaurus.io/docs/search)
22
- - Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
23
- - Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-blog-post.md DELETED
@@ -1,34 +0,0 @@
1
- ---
2
- sidebar_position: 3
3
- ---
4
-
5
- # Create a Blog Post
6
-
7
- Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
8
-
9
- ## Create your first Post
10
-
11
- Create a file at `blog/2021-02-28-greetings.md`:
12
-
13
- ```md title="blog/2021-02-28-greetings.md"
14
- ---
15
- slug: greetings
16
- title: Greetings!
17
- authors:
18
- - name: Joel Marcey
19
- title: Co-creator of Docusaurus 1
20
- url: https://github.com/JoelMarcey
21
- image_url: https://github.com/JoelMarcey.png
22
- - name: Sébastien Lorber
23
- title: Docusaurus maintainer
24
- url: https://sebastienlorber.com
25
- image_url: https://github.com/slorber.png
26
- tags: [greetings]
27
- ---
28
-
29
- Congratulations, you have made your first post!
30
-
31
- Feel free to play around and edit this post as much as you like.
32
- ```
33
-
34
- A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-document.md DELETED
@@ -1,57 +0,0 @@
1
- ---
2
- sidebar_position: 2
3
- ---
4
-
5
- # Create a Document
6
-
7
- Documents are **groups of pages** connected through:
8
-
9
- - a **sidebar**
10
- - **previous/next navigation**
11
- - **versioning**
12
-
13
- ## Create your first Doc
14
-
15
- Create a Markdown file at `docs/hello.md`:
16
-
17
- ```md title="docs/hello.md"
18
- # Hello
19
-
20
- This is my **first Docusaurus document**!
21
- ```
22
-
23
- A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello).
24
-
25
- ## Configure the Sidebar
26
-
27
- Docusaurus automatically **creates a sidebar** from the `docs` folder.
28
-
29
- Add metadata to customize the sidebar label and position:
30
-
31
- ```md title="docs/hello.md" {1-4}
32
- ---
33
- sidebar_label: 'Hi!'
34
- sidebar_position: 3
35
- ---
36
-
37
- # Hello
38
-
39
- This is my **first Docusaurus document**!
40
- ```
41
-
42
- It is also possible to create your sidebar explicitly in `sidebars.js`:
43
-
44
- ```js title="sidebars.js"
45
- export default {
46
- tutorialSidebar: [
47
- 'intro',
48
- // highlight-next-line
49
- 'hello',
50
- {
51
- type: 'category',
52
- label: 'Tutorial',
53
- items: ['tutorial-basics/create-a-document'],
54
- },
55
- ],
56
- };
57
- ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/create-a-page.md DELETED
@@ -1,43 +0,0 @@
1
- ---
2
- sidebar_position: 1
3
- ---
4
-
5
- # Create a Page
6
-
7
- Add **Markdown or React** files to `src/pages` to create a **standalone page**:
8
-
9
- - `src/pages/index.js` → `localhost:3000/`
10
- - `src/pages/foo.md` → `localhost:3000/foo`
11
- - `src/pages/foo/bar.js` → `localhost:3000/foo/bar`
12
-
13
- ## Create your first React Page
14
-
15
- Create a file at `src/pages/my-react-page.js`:
16
-
17
- ```jsx title="src/pages/my-react-page.js"
18
- import React from 'react';
19
- import Layout from '@theme/Layout';
20
-
21
- export default function MyReactPage() {
22
- return (
23
- <Layout>
24
- <h1>My React page</h1>
25
- <p>This is a React page</p>
26
- </Layout>
27
- );
28
- }
29
- ```
30
-
31
- A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page).
32
-
33
- ## Create your first Markdown Page
34
-
35
- Create a file at `src/pages/my-markdown-page.md`:
36
-
37
- ```mdx title="src/pages/my-markdown-page.md"
38
- # My Markdown page
39
-
40
- This is a Markdown page
41
- ```
42
-
43
- A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/deploy-your-site.md DELETED
@@ -1,31 +0,0 @@
1
- ---
2
- sidebar_position: 5
3
- ---
4
-
5
- # Deploy your site
6
-
7
- Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**).
8
-
9
- It builds your site as simple **static HTML, JavaScript and CSS files**.
10
-
11
- ## Build your site
12
-
13
- Build your site **for production**:
14
-
15
- ```bash
16
- npm run build
17
- ```
18
-
19
- The static files are generated in the `build` folder.
20
-
21
- ## Deploy your site
22
-
23
- Test your production build locally:
24
-
25
- ```bash
26
- npm run serve
27
- ```
28
-
29
- The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/).
30
-
31
- You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-basics/markdown-features.mdx DELETED
@@ -1,152 +0,0 @@
1
- ---
2
- sidebar_position: 4
3
- ---
4
-
5
- # Markdown Features
6
-
7
- Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
8
-
9
- ## Front Matter
10
-
11
- Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
12
-
13
- ```text title="my-doc.md"
14
- // highlight-start
15
- ---
16
- id: my-doc-id
17
- title: My document title
18
- description: My document description
19
- slug: /my-custom-url
20
- ---
21
- // highlight-end
22
-
23
- ## Markdown heading
24
-
25
- Markdown text with [links](./hello.md)
26
- ```
27
-
28
- ## Links
29
-
30
- Regular Markdown links are supported, using url paths or relative file paths.
31
-
32
- ```md
33
- Let's see how to [Create a page](/create-a-page).
34
- ```
35
-
36
- ```md
37
- Let's see how to [Create a page](./create-a-page.md).
38
- ```
39
-
40
- **Result:** Let's see how to [Create a page](./create-a-page.md).
41
-
42
- ## Images
43
-
44
- Regular Markdown images are supported.
45
-
46
- You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
47
-
48
- ```md
49
- ![Docusaurus logo](/img/docusaurus.png)
50
- ```
51
-
52
- ![Docusaurus logo](/img/docusaurus.png)
53
-
54
- You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
55
-
56
- ```md
57
- ![Docusaurus logo](./img/docusaurus.png)
58
- ```
59
-
60
- ## Code Blocks
61
-
62
- Markdown code blocks are supported with Syntax highlighting.
63
-
64
- ````md
65
- ```jsx title="src/components/HelloDocusaurus.js"
66
- function HelloDocusaurus() {
67
- return <h1>Hello, Docusaurus!</h1>;
68
- }
69
- ```
70
- ````
71
-
72
- ```jsx title="src/components/HelloDocusaurus.js"
73
- function HelloDocusaurus() {
74
- return <h1>Hello, Docusaurus!</h1>;
75
- }
76
- ```
77
-
78
- ## Admonitions
79
-
80
- Docusaurus has a special syntax to create admonitions and callouts:
81
-
82
- ```md
83
- :::tip My tip
84
-
85
- Use this awesome feature option
86
-
87
- :::
88
-
89
- :::danger Take care
90
-
91
- This action is dangerous
92
-
93
- :::
94
- ```
95
-
96
- :::tip My tip
97
-
98
- Use this awesome feature option
99
-
100
- :::
101
-
102
- :::danger Take care
103
-
104
- This action is dangerous
105
-
106
- :::
107
-
108
- ## MDX and React Components
109
-
110
- [MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
111
-
112
- ```jsx
113
- export const Highlight = ({children, color}) => (
114
- <span
115
- style={{
116
- backgroundColor: color,
117
- borderRadius: '20px',
118
- color: '#fff',
119
- padding: '10px',
120
- cursor: 'pointer',
121
- }}
122
- onClick={() => {
123
- alert(`You clicked the color ${color} with label ${children}`)
124
- }}>
125
- {children}
126
- </span>
127
- );
128
-
129
- This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
130
-
131
- This is <Highlight color="#1877F2">Facebook blue</Highlight> !
132
- ```
133
-
134
- export const Highlight = ({children, color}) => (
135
- <span
136
- style={{
137
- backgroundColor: color,
138
- borderRadius: '20px',
139
- color: '#fff',
140
- padding: '10px',
141
- cursor: 'pointer',
142
- }}
143
- onClick={() => {
144
- alert(`You clicked the color ${color} with label ${children}`);
145
- }}>
146
- {children}
147
- </span>
148
- );
149
-
150
- This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
151
-
152
- This is <Highlight color="#1877F2">Facebook blue</Highlight> !
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/_category_.json DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "label": "Tutorial - Extras",
3
- "position": 3,
4
- "link": {
5
- "type": "generated-index"
6
- }
7
- }
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/manage-docs-versions.md DELETED
@@ -1,55 +0,0 @@
1
- ---
2
- sidebar_position: 1
3
- ---
4
-
5
- # Manage Docs Versions
6
-
7
- Docusaurus can manage multiple versions of your docs.
8
-
9
- ## Create a docs version
10
-
11
- Release a version 1.0 of your project:
12
-
13
- ```bash
14
- npm run docusaurus docs:version 1.0
15
- ```
16
-
17
- The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created.
18
-
19
- Your docs now have 2 versions:
20
-
21
- - `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs
22
- - `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs**
23
-
24
- ## Add a Version Dropdown
25
-
26
- To navigate seamlessly across versions, add a version dropdown.
27
-
28
- Modify the `docusaurus.config.js` file:
29
-
30
- ```js title="docusaurus.config.js"
31
- export default {
32
- themeConfig: {
33
- navbar: {
34
- items: [
35
- // highlight-start
36
- {
37
- type: 'docsVersionDropdown',
38
- },
39
- // highlight-end
40
- ],
41
- },
42
- },
43
- };
44
- ```
45
-
46
- The docs version dropdown appears in your navbar:
47
-
48
- ![Docs Version Dropdown](./img/docsVersionDropdown.png)
49
-
50
- ## Update an existing version
51
-
52
- It is possible to edit versioned docs in their respective folder:
53
-
54
- - `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello`
55
- - `docs/hello.md` updates `http://localhost:3000/docs/next/hello`
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-docs/current/tutorial-extras/translate-your-site.md DELETED
@@ -1,88 +0,0 @@
1
- ---
2
- sidebar_position: 2
3
- ---
4
-
5
- # Translate your site
6
-
7
- Let's translate `docs/intro.md` to French.
8
-
9
- ## Configure i18n
10
-
11
- Modify `docusaurus.config.js` to add support for the `fr` locale:
12
-
13
- ```js title="docusaurus.config.js"
14
- export default {
15
- i18n: {
16
- defaultLocale: 'en',
17
- locales: ['en', 'fr'],
18
- },
19
- };
20
- ```
21
-
22
- ## Translate a doc
23
-
24
- Copy the `docs/intro.md` file to the `i18n/fr` folder:
25
-
26
- ```bash
27
- mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/
28
-
29
- cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md
30
- ```
31
-
32
- Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French.
33
-
34
- ## Start your localized site
35
-
36
- Start your site on the French locale:
37
-
38
- ```bash
39
- npm run start -- --locale fr
40
- ```
41
-
42
- Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated.
43
-
44
- :::caution
45
-
46
- In development, you can only use one locale at a time.
47
-
48
- :::
49
-
50
- ## Add a Locale Dropdown
51
-
52
- To navigate seamlessly across languages, add a locale dropdown.
53
-
54
- Modify the `docusaurus.config.js` file:
55
-
56
- ```js title="docusaurus.config.js"
57
- export default {
58
- themeConfig: {
59
- navbar: {
60
- items: [
61
- // highlight-start
62
- {
63
- type: 'localeDropdown',
64
- },
65
- // highlight-end
66
- ],
67
- },
68
- },
69
- };
70
- ```
71
-
72
- The locale dropdown now appears in your navbar:
73
-
74
- ![Locale Dropdown](./img/localeDropdown.png)
75
-
76
- ## Build your localized site
77
-
78
- Build your site for a specific locale:
79
-
80
- ```bash
81
- npm run build -- --locale fr
82
- ```
83
-
84
- Or build your site to include all the locales at once:
85
-
86
- ```bash
87
- npm run build
88
- ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-pages/index.module.css DELETED
@@ -1,23 +0,0 @@
1
- /**
2
- * CSS files with the .module.css suffix will be treated as CSS modules
3
- * and scoped locally.
4
- */
5
-
6
- .heroBanner {
7
- padding: 4rem 0;
8
- text-align: center;
9
- position: relative;
10
- overflow: hidden;
11
- }
12
-
13
- @media screen and (max-width: 996px) {
14
- .heroBanner {
15
- padding: 2rem;
16
- }
17
- }
18
-
19
- .buttons {
20
- display: flex;
21
- align-items: center;
22
- justify-content: center;
23
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-plugin-content-pages/index.tsx DELETED
@@ -1,44 +0,0 @@
1
- import type {ReactNode} from 'react';
2
- import clsx from 'clsx';
3
- import Link from '@docusaurus/Link';
4
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
5
- import Layout from '@theme/Layout';
6
- import HomepageFeatures from '@site/src/components/HomepageFeatures';
7
- import Heading from '@theme/Heading';
8
-
9
- import styles from './index.module.css';
10
-
11
- function HomepageHeader() {
12
- const {siteConfig} = useDocusaurusContext();
13
- return (
14
- <header className={clsx('hero hero--primary', styles.heroBanner)}>
15
- <div className="container">
16
- <Heading as="h1" className="hero__title">
17
- {siteConfig.title}
18
- </Heading>
19
- <p className="hero__subtitle">{siteConfig.tagline}</p>
20
- <div className={styles.buttons}>
21
- <Link
22
- className="button button--secondary button--lg"
23
- to="/docs/intro">
24
- Piper Tutorial - 5min
25
- </Link>
26
- </div>
27
- </div>
28
- </header>
29
- );
30
- }
31
-
32
- export default function Home(): ReactNode {
33
- const {siteConfig} = useDocusaurusContext();
34
- return (
35
- <Layout
36
- title={`Hello from ${siteConfig.title}`}
37
- description="Description will go into a meta tag in <head />">
38
- <HomepageHeader />
39
- <main>
40
- <HomepageFeatures />
41
- </main>
42
- </Layout>
43
- );
44
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-theme-classic/footer.json DELETED
@@ -1,42 +0,0 @@
1
- {
2
- "link.title.Docs": {
3
- "message": "Docs",
4
- "description": "The title of the footer links column with title=Docs in the footer"
5
- },
6
- "link.title.Community": {
7
- "message": "Community",
8
- "description": "The title of the footer links column with title=Community in the footer"
9
- },
10
- "link.title.More": {
11
- "message": "More",
12
- "description": "The title of the footer links column with title=More in the footer"
13
- },
14
- "link.item.label.Tutorial": {
15
- "message": "Tutorial",
16
- "description": "The label of footer link with label=Tutorial linking to /docs/intro"
17
- },
18
- "link.item.label.Stack Overflow": {
19
- "message": "Stack Overflow",
20
- "description": "The label of footer link with label=Stack Overflow linking to https://stackoverflow.com/questions/tagged/docusaurus"
21
- },
22
- "link.item.label.Discord": {
23
- "message": "Discord",
24
- "description": "The label of footer link with label=Discord linking to https://discordapp.com/invite/docusaurus"
25
- },
26
- "link.item.label.X": {
27
- "message": "X",
28
- "description": "The label of footer link with label=X linking to https://x.com/docusaurus"
29
- },
30
- "link.item.label.Blog": {
31
- "message": "Blog",
32
- "description": "The label of footer link with label=Blog linking to /blog"
33
- },
34
- "link.item.label.GitHub": {
35
- "message": "GitHub",
36
- "description": "The label of footer link with label=GitHub linking to https://github.com/facebook/docusaurus"
37
- },
38
- "copyright": {
39
- "message": "Copyright © 2025 My Piper, Inc. Built with Docusaurus.",
40
- "description": "The footer copyright"
41
- }
42
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/de/docusaurus-theme-classic/navbar.json DELETED
@@ -1,22 +0,0 @@
1
- {
2
- "title": {
3
- "message": "Piper.My",
4
- "description": "The title in the navbar"
5
- },
6
- "logo.alt": {
7
- "message": "Piper Logo",
8
- "description": "The alt text of navbar logo"
9
- },
10
- "item.label.Tutorials": {
11
- "message": "Tutorials",
12
- "description": "Navbar item with label Tutorials"
13
- },
14
- "item.label.Blog": {
15
- "message": "Blog",
16
- "description": "Navbar item with label Blog"
17
- },
18
- "item.label.GitHub": {
19
- "message": "GitHub",
20
- "description": "Navbar item with label GitHub"
21
- }
22
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/code.json DELETED
@@ -1,313 +0,0 @@
1
- {
2
- "theme.ErrorPageContent.title": {
3
- "message": "This page crashed.",
4
- "description": "The title of the fallback page when the page crashed"
5
- },
6
- "theme.BackToTopButton.buttonAriaLabel": {
7
- "message": "Scroll back to top",
8
- "description": "The ARIA label for the back to top button"
9
- },
10
- "theme.blog.archive.title": {
11
- "message": "Archive",
12
- "description": "The page & hero title of the blog archive page"
13
- },
14
- "theme.blog.archive.description": {
15
- "message": "Archive",
16
- "description": "The page & hero description of the blog archive page"
17
- },
18
- "theme.blog.paginator.navAriaLabel": {
19
- "message": "Blog list page navigation",
20
- "description": "The ARIA label for the blog pagination"
21
- },
22
- "theme.blog.paginator.newerEntries": {
23
- "message": "Newer entries",
24
- "description": "The label used to navigate to the newer blog posts page (previous page)"
25
- },
26
- "theme.blog.paginator.olderEntries": {
27
- "message": "Older entries",
28
- "description": "The label used to navigate to the older blog posts page (next page)"
29
- },
30
- "theme.blog.post.paginator.navAriaLabel": {
31
- "message": "Blog post page navigation",
32
- "description": "The ARIA label for the blog posts pagination"
33
- },
34
- "theme.blog.post.paginator.newerPost": {
35
- "message": "Newer post",
36
- "description": "The blog post button label to navigate to the newer/previous post"
37
- },
38
- "theme.blog.post.paginator.olderPost": {
39
- "message": "Older post",
40
- "description": "The blog post button label to navigate to the older/next post"
41
- },
42
- "theme.tags.tagsPageLink": {
43
- "message": "View all tags",
44
- "description": "The label of the link targeting the tag list page"
45
- },
46
- "theme.colorToggle.ariaLabel": {
47
- "message": "Switch between dark and light mode (currently {mode})",
48
- "description": "The ARIA label for the navbar color mode toggle"
49
- },
50
- "theme.colorToggle.ariaLabel.mode.dark": {
51
- "message": "dark mode",
52
- "description": "The name for the dark color mode"
53
- },
54
- "theme.colorToggle.ariaLabel.mode.light": {
55
- "message": "light mode",
56
- "description": "The name for the light color mode"
57
- },
58
- "theme.docs.breadcrumbs.navAriaLabel": {
59
- "message": "Breadcrumbs",
60
- "description": "The ARIA label for the breadcrumbs"
61
- },
62
- "theme.docs.DocCard.categoryDescription.plurals": {
63
- "message": "1 item|{count} items",
64
- "description": "The default description for a category card in the generated index about how many items this category includes"
65
- },
66
- "theme.docs.paginator.navAriaLabel": {
67
- "message": "Docs pages",
68
- "description": "The ARIA label for the docs pagination"
69
- },
70
- "theme.docs.paginator.previous": {
71
- "message": "Previous",
72
- "description": "The label used to navigate to the previous doc"
73
- },
74
- "theme.docs.paginator.next": {
75
- "message": "Next",
76
- "description": "The label used to navigate to the next doc"
77
- },
78
- "theme.docs.tagDocListPageTitle.nDocsTagged": {
79
- "message": "One doc tagged|{count} docs tagged",
80
- "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
81
- },
82
- "theme.docs.tagDocListPageTitle": {
83
- "message": "{nDocsTagged} with \"{tagName}\"",
84
- "description": "The title of the page for a docs tag"
85
- },
86
- "theme.docs.versionBadge.label": {
87
- "message": "Version: {versionLabel}"
88
- },
89
- "theme.docs.versions.unreleasedVersionLabel": {
90
- "message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
91
- "description": "The label used to tell the user that he's browsing an unreleased doc version"
92
- },
93
- "theme.docs.versions.unmaintainedVersionLabel": {
94
- "message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
95
- "description": "The label used to tell the user that he's browsing an unmaintained doc version"
96
- },
97
- "theme.docs.versions.latestVersionSuggestionLabel": {
98
- "message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
99
- "description": "The label used to tell the user to check the latest version"
100
- },
101
- "theme.docs.versions.latestVersionLinkLabel": {
102
- "message": "latest version",
103
- "description": "The label used for the latest version suggestion link label"
104
- },
105
- "theme.common.editThisPage": {
106
- "message": "Edit this page",
107
- "description": "The link label to edit the current page"
108
- },
109
- "theme.common.headingLinkTitle": {
110
- "message": "Direct link to {heading}",
111
- "description": "Title for link to heading"
112
- },
113
- "theme.lastUpdated.atDate": {
114
- "message": " on {date}",
115
- "description": "The words used to describe on which date a page has been last updated"
116
- },
117
- "theme.lastUpdated.byUser": {
118
- "message": " by {user}",
119
- "description": "The words used to describe by who the page has been last updated"
120
- },
121
- "theme.lastUpdated.lastUpdatedAtBy": {
122
- "message": "Last updated{atDate}{byUser}",
123
- "description": "The sentence used to display when a page has been last updated, and by who"
124
- },
125
- "theme.navbar.mobileVersionsDropdown.label": {
126
- "message": "Versions",
127
- "description": "The label for the navbar versions dropdown on mobile view"
128
- },
129
- "theme.NotFound.title": {
130
- "message": "Page Not Found",
131
- "description": "The title of the 404 page"
132
- },
133
- "theme.tags.tagsListLabel": {
134
- "message": "Tags:",
135
- "description": "The label alongside a tag list"
136
- },
137
- "theme.AnnouncementBar.closeButtonAriaLabel": {
138
- "message": "Close",
139
- "description": "The ARIA label for close button of announcement bar"
140
- },
141
- "theme.admonition.caution": {
142
- "message": "caution",
143
- "description": "The default label used for the Caution admonition (:::caution)"
144
- },
145
- "theme.admonition.danger": {
146
- "message": "danger",
147
- "description": "The default label used for the Danger admonition (:::danger)"
148
- },
149
- "theme.admonition.info": {
150
- "message": "info",
151
- "description": "The default label used for the Info admonition (:::info)"
152
- },
153
- "theme.admonition.note": {
154
- "message": "note",
155
- "description": "The default label used for the Note admonition (:::note)"
156
- },
157
- "theme.admonition.tip": {
158
- "message": "tip",
159
- "description": "The default label used for the Tip admonition (:::tip)"
160
- },
161
- "theme.admonition.warning": {
162
- "message": "warning",
163
- "description": "The default label used for the Warning admonition (:::warning)"
164
- },
165
- "theme.blog.sidebar.navAriaLabel": {
166
- "message": "Blog recent posts navigation",
167
- "description": "The ARIA label for recent posts in the blog sidebar"
168
- },
169
- "theme.CodeBlock.wordWrapToggle": {
170
- "message": "Toggle word wrap",
171
- "description": "The title attribute for toggle word wrapping button of code block lines"
172
- },
173
- "theme.CodeBlock.copied": {
174
- "message": "Copied",
175
- "description": "The copied button label on code blocks"
176
- },
177
- "theme.CodeBlock.copyButtonAriaLabel": {
178
- "message": "Copy code to clipboard",
179
- "description": "The ARIA label for copy code blocks button"
180
- },
181
- "theme.CodeBlock.copy": {
182
- "message": "Copy",
183
- "description": "The copy button label on code blocks"
184
- },
185
- "theme.DocSidebarItem.expandCategoryAriaLabel": {
186
- "message": "Expand sidebar category '{label}'",
187
- "description": "The ARIA label to expand the sidebar category"
188
- },
189
- "theme.DocSidebarItem.collapseCategoryAriaLabel": {
190
- "message": "Collapse sidebar category '{label}'",
191
- "description": "The ARIA label to collapse the sidebar category"
192
- },
193
- "theme.NavBar.navAriaLabel": {
194
- "message": "Main",
195
- "description": "The ARIA label for the main navigation"
196
- },
197
- "theme.navbar.mobileLanguageDropdown.label": {
198
- "message": "Languages",
199
- "description": "The label for the mobile language switcher dropdown"
200
- },
201
- "theme.NotFound.p1": {
202
- "message": "We could not find what you were looking for.",
203
- "description": "The first paragraph of the 404 page"
204
- },
205
- "theme.NotFound.p2": {
206
- "message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
207
- "description": "The 2nd paragraph of the 404 page"
208
- },
209
- "theme.TOCCollapsible.toggleButtonLabel": {
210
- "message": "On this page",
211
- "description": "The label used by the button on the collapsible TOC component"
212
- },
213
- "theme.blog.post.readMore": {
214
- "message": "Read more",
215
- "description": "The label used in blog post item excerpts to link to full blog posts"
216
- },
217
- "theme.blog.post.readMoreLabel": {
218
- "message": "Read more about {title}",
219
- "description": "The ARIA label for the link to full blog posts from excerpts"
220
- },
221
- "theme.blog.post.readingTime.plurals": {
222
- "message": "One min read|{readingTime} min read",
223
- "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
224
- },
225
- "theme.docs.breadcrumbs.home": {
226
- "message": "Home page",
227
- "description": "The ARIA label for the home page in the breadcrumbs"
228
- },
229
- "theme.docs.sidebar.collapseButtonTitle": {
230
- "message": "Collapse sidebar",
231
- "description": "The title attribute for collapse button of doc sidebar"
232
- },
233
- "theme.docs.sidebar.collapseButtonAriaLabel": {
234
- "message": "Collapse sidebar",
235
- "description": "The title attribute for collapse button of doc sidebar"
236
- },
237
- "theme.docs.sidebar.navAriaLabel": {
238
- "message": "Docs sidebar",
239
- "description": "The ARIA label for the sidebar navigation"
240
- },
241
- "theme.docs.sidebar.closeSidebarButtonAriaLabel": {
242
- "message": "Close navigation bar",
243
- "description": "The ARIA label for close button of mobile sidebar"
244
- },
245
- "theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
246
- "message": "← Back to main menu",
247
- "description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
248
- },
249
- "theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
250
- "message": "Toggle navigation bar",
251
- "description": "The ARIA label for hamburger menu button of mobile navigation"
252
- },
253
- "theme.docs.sidebar.expandButtonTitle": {
254
- "message": "Expand sidebar",
255
- "description": "The ARIA label and title attribute for expand button of doc sidebar"
256
- },
257
- "theme.docs.sidebar.expandButtonAriaLabel": {
258
- "message": "Expand sidebar",
259
- "description": "The ARIA label and title attribute for expand button of doc sidebar"
260
- },
261
- "theme.blog.post.plurals": {
262
- "message": "One post|{count} posts",
263
- "description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
264
- },
265
- "theme.blog.tagTitle": {
266
- "message": "{nPosts} tagged with \"{tagName}\"",
267
- "description": "The title of the page for a blog tag"
268
- },
269
- "theme.blog.author.pageTitle": {
270
- "message": "{authorName} - {nPosts}",
271
- "description": "The title of the page for a blog author"
272
- },
273
- "theme.blog.authorsList.pageTitle": {
274
- "message": "Authors",
275
- "description": "The title of the authors page"
276
- },
277
- "theme.blog.authorsList.viewAll": {
278
- "message": "View all authors",
279
- "description": "The label of the link targeting the blog authors page"
280
- },
281
- "theme.blog.author.noPosts": {
282
- "message": "This author has not written any posts yet.",
283
- "description": "The text for authors with 0 blog post"
284
- },
285
- "theme.contentVisibility.unlistedBanner.title": {
286
- "message": "Unlisted page",
287
- "description": "The unlisted content banner title"
288
- },
289
- "theme.contentVisibility.unlistedBanner.message": {
290
- "message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
291
- "description": "The unlisted content banner message"
292
- },
293
- "theme.contentVisibility.draftBanner.title": {
294
- "message": "Draft page",
295
- "description": "The draft content banner title"
296
- },
297
- "theme.contentVisibility.draftBanner.message": {
298
- "message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
299
- "description": "The draft content banner message"
300
- },
301
- "theme.ErrorPageContent.tryAgain": {
302
- "message": "Try again",
303
- "description": "The label of the button to try again rendering when the React error boundary captures an error"
304
- },
305
- "theme.common.skipToMainContent": {
306
- "message": "Skip to main content",
307
- "description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
308
- },
309
- "theme.tags.tagsPageTitle": {
310
- "message": "Tags",
311
- "description": "The title of the tag list page"
312
- }
313
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-plugin-content-blog/options.json DELETED
@@ -1,14 +0,0 @@
1
- {
2
- "title": {
3
- "message": "Blog",
4
- "description": "The title for the blog used in SEO"
5
- },
6
- "description": {
7
- "message": "Blog",
8
- "description": "The description for the blog used in SEO"
9
- },
10
- "sidebar.title": {
11
- "message": "Recent posts",
12
- "description": "The label for the left sidebar"
13
- }
14
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-plugin-content-docs/current.json DELETED
@@ -1,38 +0,0 @@
1
- {
2
- "version.label": {
3
- "message": "Next",
4
- "description": "The label for version current"
5
- },
6
- "sidebar.tutorialSidebar.category.Tutorial - Basics": {
7
- "message": "Tutorial - Basics",
8
- "description": "The label for category Tutorial - Basics in sidebar tutorialSidebar"
9
- },
10
- "sidebar.tutorialSidebar.category.Tutorial - Basics.link.generated-index.description": {
11
- "message": "5 minutes to learn the most important Docusaurus concepts.",
12
- "description": "The generated-index page description for category Tutorial - Basics in sidebar tutorialSidebar"
13
- },
14
- "sidebar.tutorialSidebar.category.Tutorial - Extras": {
15
- "message": "Tutorial - Extras",
16
- "description": "The label for category Tutorial - Extras in sidebar tutorialSidebar"
17
- },
18
- "sidebar.tutorialSidebar.category.Pipeline Basics": {
19
- "message": "Pipeline Basics",
20
- "description": "The label for category Pipeline Basics in sidebar tutorialSidebar"
21
- },
22
- "sidebar.tutorialSidebar.category.Pipeline Basics.link.generated-index.description": {
23
- "message": "5 minutes to learn the most important Docusaurus concepts.",
24
- "description": "The generated-index page description for category Pipeline Basics in sidebar tutorialSidebar"
25
- },
26
- "sidebar.tutorialSidebar.category.Advanced development": {
27
- "message": "Advanced development",
28
- "description": "The label for category Advanced development in sidebar tutorialSidebar"
29
- },
30
- "sidebar.tutorialSidebar.category.Deploy pipelines & API": {
31
- "message": "Deploy pipelines & API",
32
- "description": "The label for category Deploy pipelines & API in sidebar tutorialSidebar"
33
- },
34
- "sidebar.tutorialSidebar.category.Deploy pipelines & API.link.generated-index.description": {
35
- "message": "Simply deploy your pipelines & call via API.",
36
- "description": "The generated-index page description for category Deploy pipelines & API in sidebar tutorialSidebar"
37
- }
38
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-plugin-content-pages/index.module.css DELETED
@@ -1,23 +0,0 @@
1
- /**
2
- * CSS files with the .module.css suffix will be treated as CSS modules
3
- * and scoped locally.
4
- */
5
-
6
- .heroBanner {
7
- padding: 4rem 0;
8
- text-align: center;
9
- position: relative;
10
- overflow: hidden;
11
- }
12
-
13
- @media screen and (max-width: 996px) {
14
- .heroBanner {
15
- padding: 2rem;
16
- }
17
- }
18
-
19
- .buttons {
20
- display: flex;
21
- align-items: center;
22
- justify-content: center;
23
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-plugin-content-pages/index.tsx DELETED
@@ -1,44 +0,0 @@
1
- import type {ReactNode} from 'react';
2
- import clsx from 'clsx';
3
- import Link from '@docusaurus/Link';
4
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
5
- import Layout from '@theme/Layout';
6
- import HomepageFeatures from '@site/src/components/HomepageFeatures';
7
- import Heading from '@theme/Heading';
8
-
9
- import styles from './index.module.css';
10
-
11
- function HomepageHeader() {
12
- const {siteConfig} = useDocusaurusContext();
13
- return (
14
- <header className={clsx('hero hero--primary', styles.heroBanner)}>
15
- <div className="container">
16
- <Heading as="h1" className="hero__title">
17
- {siteConfig.title}
18
- </Heading>
19
- <p className="hero__subtitle">{siteConfig.tagline}</p>
20
- <div className={styles.buttons}>
21
- <Link
22
- className="button button--secondary button--lg"
23
- to="/docs/intro">
24
- Create First Pipeline
25
- </Link>
26
- </div>
27
- </div>
28
- </header>
29
- );
30
- }
31
-
32
- export default function Home(): ReactNode {
33
- const {siteConfig} = useDocusaurusContext();
34
- return (
35
- <Layout
36
- title={`Hello from ${siteConfig.title}`}
37
- description="Description will go into a meta tag in <head />">
38
- <HomepageHeader />
39
- <main>
40
- <HomepageFeatures />
41
- </main>
42
- </Layout>
43
- );
44
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-theme-classic/footer.json DELETED
@@ -1,42 +0,0 @@
1
- {
2
- "link.title.Docs": {
3
- "message": "Docs",
4
- "description": "The title of the footer links column with title=Docs in the footer"
5
- },
6
- "link.title.Community": {
7
- "message": "Community",
8
- "description": "The title of the footer links column with title=Community in the footer"
9
- },
10
- "link.title.More": {
11
- "message": "More",
12
- "description": "The title of the footer links column with title=More in the footer"
13
- },
14
- "link.item.label.Tutorial": {
15
- "message": "Tutorial",
16
- "description": "The label of footer link with label=Tutorial linking to /docs/intro"
17
- },
18
- "link.item.label.Stack Overflow": {
19
- "message": "Stack Overflow",
20
- "description": "The label of footer link with label=Stack Overflow linking to https://stackoverflow.com/questions/tagged/docusaurus"
21
- },
22
- "link.item.label.Discord": {
23
- "message": "Discord",
24
- "description": "The label of footer link with label=Discord linking to https://discordapp.com/invite/docusaurus"
25
- },
26
- "link.item.label.X": {
27
- "message": "X",
28
- "description": "The label of footer link with label=X linking to https://x.com/docusaurus"
29
- },
30
- "link.item.label.Blog": {
31
- "message": "Blog",
32
- "description": "The label of footer link with label=Blog linking to /blog"
33
- },
34
- "link.item.label.GitHub": {
35
- "message": "GitHub",
36
- "description": "The label of footer link with label=GitHub linking to https://github.com/facebook/docusaurus"
37
- },
38
- "copyright": {
39
- "message": "Copyright © 2025 My Piper, Inc. Built with Docusaurus.",
40
- "description": "The footer copyright"
41
- }
42
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/en/docusaurus-theme-classic/navbar.json DELETED
@@ -1,22 +0,0 @@
1
- {
2
- "title": {
3
- "message": "Piper.My",
4
- "description": "The title in the navbar"
5
- },
6
- "logo.alt": {
7
- "message": "Piper Logo",
8
- "description": "The alt text of navbar logo"
9
- },
10
- "item.label.Tutorials": {
11
- "message": "Tutorials",
12
- "description": "Navbar item with label Tutorials"
13
- },
14
- "item.label.Blog": {
15
- "message": "Blog",
16
- "description": "Navbar item with label Blog"
17
- },
18
- "item.label.GitHub": {
19
- "message": "GitHub",
20
- "description": "Navbar item with label GitHub"
21
- }
22
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/code.json CHANGED
@@ -75,6 +75,9 @@
75
  "message": "Next",
76
  "description": "The label used to navigate to the next doc"
77
  },
 
 
 
78
  "theme.docs.tagDocListPageTitle.nDocsTagged": {
79
  "message": "One doc tagged|{count} docs tagged",
80
  "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
@@ -83,9 +86,6 @@
83
  "message": "{nDocsTagged} with \"{tagName}\"",
84
  "description": "The title of the page for a docs tag"
85
  },
86
- "theme.docs.versionBadge.label": {
87
- "message": "Version: {versionLabel}"
88
- },
89
  "theme.docs.versions.unreleasedVersionLabel": {
90
  "message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
91
  "description": "The label used to tell the user that he's browsing an unreleased doc version"
@@ -102,14 +102,14 @@
102
  "message": "latest version",
103
  "description": "The label used for the latest version suggestion link label"
104
  },
105
- "theme.common.editThisPage": {
106
- "message": "Edit this page",
107
- "description": "The link label to edit the current page"
108
- },
109
  "theme.common.headingLinkTitle": {
110
  "message": "Direct link to {heading}",
111
  "description": "Title for link to heading"
112
  },
 
 
 
 
113
  "theme.lastUpdated.atDate": {
114
  "message": " on {date}",
115
  "description": "The words used to describe on which date a page has been last updated"
@@ -134,10 +134,6 @@
134
  "message": "Tags:",
135
  "description": "The label alongside a tag list"
136
  },
137
- "theme.AnnouncementBar.closeButtonAriaLabel": {
138
- "message": "Close",
139
- "description": "The ARIA label for close button of announcement bar"
140
- },
141
  "theme.admonition.caution": {
142
  "message": "caution",
143
  "description": "The default label used for the Caution admonition (:::caution)"
@@ -162,6 +158,10 @@
162
  "message": "warning",
163
  "description": "The default label used for the Warning admonition (:::warning)"
164
  },
 
 
 
 
165
  "theme.blog.sidebar.navAriaLabel": {
166
  "message": "Blog recent posts navigation",
167
  "description": "The ARIA label for recent posts in the blog sidebar"
@@ -222,10 +222,6 @@
222
  "message": "One min read|{readingTime} min read",
223
  "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
224
  },
225
- "theme.docs.breadcrumbs.home": {
226
- "message": "Home page",
227
- "description": "The ARIA label for the home page in the breadcrumbs"
228
- },
229
  "theme.docs.sidebar.collapseButtonTitle": {
230
  "message": "Collapse sidebar",
231
  "description": "The title attribute for collapse button of doc sidebar"
@@ -238,6 +234,10 @@
238
  "message": "Docs sidebar",
239
  "description": "The ARIA label for the sidebar navigation"
240
  },
 
 
 
 
241
  "theme.docs.sidebar.closeSidebarButtonAriaLabel": {
242
  "message": "Close navigation bar",
243
  "description": "The ARIA label for close button of mobile sidebar"
 
75
  "message": "Next",
76
  "description": "The label used to navigate to the next doc"
77
  },
78
+ "theme.docs.versionBadge.label": {
79
+ "message": "Version: {versionLabel}"
80
+ },
81
  "theme.docs.tagDocListPageTitle.nDocsTagged": {
82
  "message": "One doc tagged|{count} docs tagged",
83
  "description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
 
86
  "message": "{nDocsTagged} with \"{tagName}\"",
87
  "description": "The title of the page for a docs tag"
88
  },
 
 
 
89
  "theme.docs.versions.unreleasedVersionLabel": {
90
  "message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
91
  "description": "The label used to tell the user that he's browsing an unreleased doc version"
 
102
  "message": "latest version",
103
  "description": "The label used for the latest version suggestion link label"
104
  },
 
 
 
 
105
  "theme.common.headingLinkTitle": {
106
  "message": "Direct link to {heading}",
107
  "description": "Title for link to heading"
108
  },
109
+ "theme.common.editThisPage": {
110
+ "message": "Edit this page",
111
+ "description": "The link label to edit the current page"
112
+ },
113
  "theme.lastUpdated.atDate": {
114
  "message": " on {date}",
115
  "description": "The words used to describe on which date a page has been last updated"
 
134
  "message": "Tags:",
135
  "description": "The label alongside a tag list"
136
  },
 
 
 
 
137
  "theme.admonition.caution": {
138
  "message": "caution",
139
  "description": "The default label used for the Caution admonition (:::caution)"
 
158
  "message": "warning",
159
  "description": "The default label used for the Warning admonition (:::warning)"
160
  },
161
+ "theme.AnnouncementBar.closeButtonAriaLabel": {
162
+ "message": "Close",
163
+ "description": "The ARIA label for close button of announcement bar"
164
+ },
165
  "theme.blog.sidebar.navAriaLabel": {
166
  "message": "Blog recent posts navigation",
167
  "description": "The ARIA label for recent posts in the blog sidebar"
 
222
  "message": "One min read|{readingTime} min read",
223
  "description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
224
  },
 
 
 
 
225
  "theme.docs.sidebar.collapseButtonTitle": {
226
  "message": "Collapse sidebar",
227
  "description": "The title attribute for collapse button of doc sidebar"
 
234
  "message": "Docs sidebar",
235
  "description": "The ARIA label for the sidebar navigation"
236
  },
237
+ "theme.docs.breadcrumbs.home": {
238
+ "message": "Home page",
239
+ "description": "The ARIA label for the home page in the breadcrumbs"
240
+ },
241
  "theme.docs.sidebar.closeSidebarButtonAriaLabel": {
242
  "message": "Close navigation bar",
243
  "description": "The ARIA label for close button of mobile sidebar"
i18n/ru/docusaurus-plugin-content-blog/2019-05-28-first-blog-post.md DELETED
@@ -1,16 +0,0 @@
1
- ---
2
- slug: first-blog-post
3
- title: First Blog Post
4
- authors:
5
- - slorber
6
- - yangshun
7
- tags:
8
- - hola
9
- - docusaurus
10
- ---
11
-
12
- Lorem ipsum dolor sit amet...
13
-
14
- <!-- truncate -->
15
-
16
- ...consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-blog/2019-05-29-long-blog-post.md DELETED
@@ -1,46 +0,0 @@
1
- ---
2
- slug: long-blog-post
3
- title: Long Blog Post
4
- authors: yangshun
5
- tags:
6
- - hello
7
- - docusaurus
8
- ---
9
-
10
- This is the summary of a very long blog post,
11
-
12
- Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
13
-
14
- <!-- truncate -->
15
-
16
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
17
-
18
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
19
-
20
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
21
-
22
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
23
-
24
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
25
-
26
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
27
-
28
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
29
-
30
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
31
-
32
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
33
-
34
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
35
-
36
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
37
-
38
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
39
-
40
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
41
-
42
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
43
-
44
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
45
-
46
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-blog/2021-08-01-mdx-blog-post.mdx DELETED
@@ -1,26 +0,0 @@
1
- ---
2
- slug: mdx-blog-post
3
- title: MDX Blog Post
4
- authors:
5
- - slorber
6
- tags:
7
- - docusaurus
8
- ---
9
-
10
- Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
11
-
12
- :::tip
13
-
14
- Use the power of React to create interactive blog posts.
15
-
16
- :::
17
-
18
- {/* truncate */}
19
-
20
- For example, use JSX to create an interactive button:
21
-
22
- ```js
23
- <button onClick={() => alert('button clicked!')}>Click me!</button>
24
- ```
25
-
26
- <button onClick={() => alert('button clicked!')}>Click me!</button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-blog/2021-08-26-welcome/index.md DELETED
@@ -1,34 +0,0 @@
1
- ---
2
- slug: welcome
3
- title: Welcome
4
- authors:
5
- - slorber
6
- - yangshun
7
- tags:
8
- - facebook
9
- - hello
10
- - docusaurus
11
- ---
12
-
13
- [Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
14
-
15
- Here are a few tips you might find useful.
16
-
17
- <!-- truncate -->
18
-
19
- Simply add Markdown files (or folders) to the `blog` directory.
20
-
21
- Regular blog authors can be added to `authors.yml`.
22
-
23
- The blog post date can be extracted from filenames, such as:
24
-
25
- - `2019-05-30-welcome.md`
26
- - `2019-05-30-welcome/index.md`
27
-
28
- A blog post folder can be convenient to co-locate blog post images:
29
-
30
- ![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
31
-
32
- The blog supports tags as well!
33
-
34
- **And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-blog/authors.yml DELETED
@@ -1,22 +0,0 @@
1
- yangshun:
2
- name: Yangshun Tay
3
- title: Front End Engineer @ Facebook
4
- url: https://github.com/yangshun
5
- image_url: https://github.com/yangshun.png
6
- page: true
7
- socials:
8
- x: yangshunz
9
- github: yangshun
10
- slorber:
11
- name: Sébastien Lorber
12
- title: Docusaurus maintainer
13
- url: https://sebastienlorber.com
14
- image_url: https://github.com/slorber.png
15
- page:
16
- # customize the url of the author page at /blog/authors/<permalink>
17
- permalink: '/all-sebastien-lorber-articles'
18
- socials:
19
- x: sebastienlorber
20
- linkedin: sebastienlorber
21
- github: slorber
22
- newsletter: https://thisweekinreact.com
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-blog/tags.yml DELETED
@@ -1,16 +0,0 @@
1
- facebook:
2
- label: Facebook
3
- permalink: /facebook
4
- description: Facebook tag description
5
- hello:
6
- label: Hello
7
- permalink: /hello
8
- description: Hello tag description
9
- docusaurus:
10
- label: Docusaurus
11
- permalink: /docusaurus
12
- description: Docusaurus tag description
13
- hola:
14
- label: Hola
15
- permalink: /hola
16
- description: Hola tag description
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-docs/current.json CHANGED
@@ -3,16 +3,28 @@
3
  "message": "Next",
4
  "description": "The label for version current"
5
  },
6
- "sidebar.tutorialSidebar.category.Tutorial - Basics": {
7
- "message": "Tutorial - Basics",
8
- "description": "The label for category Tutorial - Basics in sidebar tutorialSidebar"
9
  },
10
- "sidebar.tutorialSidebar.category.Tutorial - Basics.link.generated-index.description": {
11
  "message": "5 minutes to learn the most important Docusaurus concepts.",
12
- "description": "The generated-index page description for category Tutorial - Basics in sidebar tutorialSidebar"
13
  },
14
- "sidebar.tutorialSidebar.category.Tutorial - Extras": {
15
- "message": "Tutorial - Extras",
16
- "description": "The label for category Tutorial - Extras in sidebar tutorialSidebar"
 
 
 
 
 
 
 
 
 
 
 
 
17
  }
18
  }
 
3
  "message": "Next",
4
  "description": "The label for version current"
5
  },
6
+ "sidebar.tutorialSidebar.category.Pipeline Basics": {
7
+ "message": "Pipeline Basics",
8
+ "description": "The label for category Pipeline Basics in sidebar tutorialSidebar"
9
  },
10
+ "sidebar.tutorialSidebar.category.Pipeline Basics.link.generated-index.description": {
11
  "message": "5 minutes to learn the most important Docusaurus concepts.",
12
+ "description": "The generated-index page description for category Pipeline Basics in sidebar tutorialSidebar"
13
  },
14
+ "sidebar.tutorialSidebar.category.Creating Pipelines": {
15
+ "message": "Creating Pipelines",
16
+ "description": "The label for category Creating Pipelines in sidebar tutorialSidebar"
17
+ },
18
+ "sidebar.tutorialSidebar.category.Advanced development": {
19
+ "message": "Advanced development",
20
+ "description": "The label for category Advanced development in sidebar tutorialSidebar"
21
+ },
22
+ "sidebar.tutorialSidebar.category.Deploy pipelines & API": {
23
+ "message": "Deploy pipelines & API",
24
+ "description": "The label for category Deploy pipelines & API in sidebar tutorialSidebar"
25
+ },
26
+ "sidebar.tutorialSidebar.category.Deploy pipelines & API.link.generated-index.description": {
27
+ "message": "Simply deploy your pipelines & call via API.",
28
+ "description": "The generated-index page description for category Deploy pipelines & API in sidebar tutorialSidebar"
29
  }
30
  }
i18n/ru/docusaurus-plugin-content-docs/current/{tutorial-extras → advanced-development}/_category_.json RENAMED
@@ -1,6 +1,6 @@
1
  {
2
- "label": "Tutorial - Extras",
3
- "position": 3,
4
  "link": {
5
  "type": "generated-index"
6
  }
 
1
  {
2
+ "label": "Advanced development",
3
+ "position": 4,
4
  "link": {
5
  "type": "generated-index"
6
  }
i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/creating-custom-node.mdx ADDED
@@ -0,0 +1,205 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ sidebar_position: 1
3
+ ---
4
+
5
+ # Создание кастомной ноды
6
+
7
+ Создание кастомных нод позволяет обойти ограничения, которые связаны со стандартной библиотекой нод Piper, или же даже просто улучшить функционал текущих нод.
8
+
9
+ Давайте создадим кастомную ноду **Merge text to JSON**, которая принимает несколько текстовых строк и объединяет их в один JSON массив.
10
+
11
+ ## **1. Загрузка ноды из библиотеки нод**
12
+
13
+ Для создания кастомной ноды начните с загрузки существующей ноды, которая наиболее близка к вашим требованиям. Перейдите в библиотеку нод, используя значок **плюс (+)** в верхнем левом углу рабочего пространства пайплайны и выберите ноду **Input Text** для модификации, поскольку в ней минимум кода и она работает со строками.
14
+
15
+ После добавления ноды откройте её настройки.
16
+
17
+ ![Панель настроек ноды](../img/create-node-1.png)
18
+
19
+ Панель настроек включает несколько вкладок:
20
+
21
+ - **Inputs** - Текущие параметры ноды, их настройка, загрузка изображений
22
+ - **Design** - Создание входных и выходных параметров, определение их свойств
23
+ - **Script** - Редактирование кода JavaScript, логика ноды
24
+ - **Environment** - Настройка переменных окружения
25
+ - **Catalog** - Просмотр метаданных ноды и её публикация
26
+ - **YAML** - Доступ к YAML ноды
27
+
28
+ ## **2. Настройка ноды**
29
+
30
+ Кастомизация начинается со вкладки **Design**, где определяется структура ноды.
31
+
32
+ ![Вкладка Design](../img/create-node-2.png)
33
+
34
+ ### Основные свойства
35
+ - **ID** - Внутреннее имя, используемое в коде (строчные латинские буквы, без пробелов)
36
+ - **Title** - Отображаемое имя, видимое пользователю
37
+
38
+ Для нашей ноды прежние значения необходимо заменить на:
39
+ - ID: `merge_text_to_json`
40
+ - Title: `Merge text to JSON`
41
+
42
+ ### Добавление входных параметров
43
+
44
+ Нашей ноде нужно 4 строковых входа. Чтобы добавить новый вход:
45
+
46
+ 1. Раскройте меню-гамбургер **Inputs**
47
+ 2. Введите имя нового входа: `string1`
48
+ 3. Нажмите **Add**
49
+
50
+ ![Добавление нового входного параметра](../img/create-node-3.png)
51
+
52
+ Настройте параметры входа:
53
+ - **Type**: string (то есть текст)
54
+ - **Title**: String 1 (название, отображаемое на ноде)
55
+
56
+ ![Настройка свойств входа](../img/create-node-4.png)
57
+
58
+ Повторите этот процесс для создания входов `string2`, `string3` и `string4`.
59
+
60
+ Чтобы удалить прежний входной параметр `input_text`, снимите галочку с него в меню Inputs.
61
+
62
+ ![Удаление оригинального входа](../img/create-node-5.png)
63
+
64
+ Если визуально изменения не произошли, нужно временно открыть другую вкладку и потом вернуться в Design.
65
+
66
+ ### Расширенные настройки входных параметров
67
+
68
+ Доступ к детальным настройкам входных параметров открывается через меню-гамбургер.
69
+
70
+ ![Выпадающее меню настроек входных параметров](../img/create-node-6.png)
71
+
72
+ Доступные опции включают:
73
+
74
+ - **Order** (число) - Задаёт порядок расположения входов в ноде
75
+ - **Description** (текст) - Текст всплывающей подсказки для параметра
76
+ - **Required** (boolean) - True делает параметр обязательным
77
+ - **Group** (текст) - Группирует связанные настройки
78
+ - **Enum** (текст) - Создает выпадающие списки с предопределенными значениями
79
+ - **Multiline** (boolean) - Расширяет поля String для длинного текста
80
+ - **Min, Max** (число) - Устанавливает ограничения для полей Integer
81
+ - **Step** (число) - Преобразует поле Integer в ползунок с шагом, равным значению Step
82
+ - **Default** - Устанавливает значения по умолчанию
83
+ - **Placeholder** (текст) - Показывает подсказку в пустых полях String
84
+ - **Schema** - Техническое поле для скриптов
85
+ - **Extensions** (текст) - Добавляет специальную функциональность (например, draw-mask для задания маски на загруженном изображении)
86
+
87
+ ![Пример конфигурации расширений](../img/create-node-7.png)
88
+
89
+ ### Настройка выходных параметров
90
+
91
+ Создайте выходной параметр. Для этого удалите прежний выход `output_text` и добавьте новый `json_output` со следующими параметрами:
92
+ - **Type**: JSON
93
+ - **Title**: JSON
94
+
95
+ Итогое окно Design должно выглядеть примерно так:
96
+
97
+ ![Отредлактированная вкладка Design](../img/create-node-8.png)
98
+
99
+ :::tip Совет
100
+ Отслеживайте ваши изменения во вкладке **Inputs**, чтобы видеть, как модификации влияют на структуру ноды.
101
+ :::
102
+
103
+ Про следующий шаг - написание логики скрипта ноды, в разделе **Вкладка Node Script**.
104
+
105
+ --- eng ---
106
+
107
+ # Creating Custom Nodes
108
+
109
+ Creating custom nodes allows you to bypass limitations associated with Piper's standard node library, or even simply improve the functionality of current nodes.
110
+
111
+ Let's create a custom **Merge text to JSON** node that takes multiple text strings and combines them into a single JSON array.
112
+
113
+ ## **1. Loading a Node from the Node Library**
114
+
115
+ To create a custom node, start by loading an existing node that's closest to your requirements. Navigate to the node library using the **plus (+)** icon in the top left corner of the pipeline workspace and select the **Input Text** node for modification, since it has minimal code and works with strings.
116
+
117
+ After adding the node, open its settings.
118
+
119
+ ![Node Settings Panel](../img/create-node-1.png)
120
+
121
+ The settings panel includes several tabs:
122
+
123
+ - **Inputs** - Current node parameters, their configuration, image loading
124
+ - **Design** - Creating input and output parameters, defining their properties
125
+ - **Script** - Editing JavaScript code, node logic
126
+ - **Environment** - Configure environment variables
127
+ - **Catalog** - View node metadata and publish it
128
+ - **YAML** - Access the node's YAML
129
+
130
+ ## **2. Node Configuration**
131
+
132
+ Customization begins in the **Design** tab, where the node structure is defined.
133
+
134
+ ![Design Tab](../img/create-node-2.png)
135
+
136
+ ### Basic Properties
137
+ - **ID** - Internal name used in code (lowercase Latin letters, no spaces)
138
+ - **Title** - Display name visible to the user
139
+
140
+ For our node, the previous values need to be replaced with:
141
+ - ID: `merge_text_to_json`
142
+ - Title: `Merge text to JSON`
143
+
144
+ ### Adding Input Parameters
145
+
146
+ Our node needs 4 string inputs. To add a new input:
147
+
148
+ 1. Expand the **Inputs** hamburger menu
149
+ 2. Enter the new input name: `string1`
150
+ 3. Click **Add**
151
+
152
+ ![Adding New Input Parameter](../img/create-node-3.png)
153
+
154
+ Configure the input parameters:
155
+ - **Type**: string (i.e., text)
156
+ - **Title**: String 1 (name displayed on the node)
157
+
158
+ ![Configuring Input Properties](../img/create-node-4.png)
159
+
160
+ Repeat this process to create inputs `string2`, `string3`, and `string4`.
161
+
162
+ To remove the previous input parameter `input_text`, uncheck it in the Inputs menu.
163
+
164
+ ![Removing Original Input](../img/create-node-5.png)
165
+
166
+ If no visual changes occur, you need to temporarily open another tab and then return to Design.
167
+
168
+ ### Advanced Input Parameter Settings
169
+
170
+ Access to detailed settings is opened through the hamburger menu.
171
+
172
+ ![Input Parameter Settings Dropdown Menu](../img/create-node-6.png)
173
+
174
+ Available options include:
175
+
176
+ - **Order** (number) - Sets the order of inputs in the node
177
+ - **Description** (text) - Tooltip text for the parameter
178
+ - **Required** (boolean) - True makes the parameter mandatory
179
+ - **Group** (text) - Groups related settings
180
+ - **Enum** (text) - Creates dropdown lists with predefined values
181
+ - **Multiline** (boolean) - Expands String fields for long text
182
+ - **Min, Max** (number) - Sets constraints for Integer fields
183
+ - **Step** (number) - Converts Integer field to slider with step equal to Step value
184
+ - **Default** - Sets default values
185
+ - **Placeholder** (text) - Shows hints in empty String fields
186
+ - **Schema** - Technical field for scripts
187
+ - **Extensions** (text) - Adds special functionality (e.g., draw-mask for setting masks on uploaded images)
188
+
189
+ ![Example Extension Configuration](../img/create-node-7.png)
190
+
191
+ ### Configuring Output Parameters
192
+
193
+ Create an output parameter. To do this, delete the previous output `output_text` and add a new `json_output` with the following parameters:
194
+ - **Type**: JSON
195
+ - **Title**: JSON
196
+
197
+ The final Design window should look something like this:
198
+
199
+ ![Edited Design Tab](../img/create-node-8.png)
200
+
201
+ :::tip Tip
202
+ Monitor your changes in the **Inputs** tab to see how modifications affect the node structure.
203
+ :::
204
+
205
+ The next step - writing the node's script logic, is covered in the **Node Script Tab** section.
i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/debug-pipelines.mdx ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ ---
2
+ sidebar_position: 5
3
+ ---
4
+
5
+ # Debug pipelines
6
+
7
+ Will be soon here...
i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/node-script.mdx ADDED
@@ -0,0 +1,216 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ sidebar_position: 2
3
+ ---
4
+
5
+ # Вкладка Script в настройках ноды
6
+
7
+ Вкладка **Script** предназначена для размещения кода JavaScript, отвечающего за программную логику ноды. Здесь вы определяете, что именно делает ваша нода - обрабатывает ли она текст, вызывает API, трансформирует данные или выполняет вычисления.
8
+
9
+ ![Интерфейс вкладки Script](../img/script_tab.jpg)
10
+
11
+ ## Структура кода
12
+
13
+ Все ноды Piper, включая кастомные, следуют определенной структуре JavaScript:
14
+
15
+ ```javascript
16
+ export async function run({ inputs }) {
17
+ const { FatalError, NextNode } = DEFINITIONS;
18
+
19
+ // Ваш код здесь
20
+
21
+ return NextNode.from({
22
+ outputs: {
23
+ // Ваши результаты
24
+ }
25
+ });
26
+ }
27
+ ```
28
+
29
+ Эта структура гарантирует, что ваша нода может правильно получать данные от предыдущих нод и передавать результаты следующим в вашем пайплайне.
30
+
31
+ ### Оригинальный код Input Text
32
+ Базовая нода **Input Text** имеет эту простую структуру:
33
+
34
+ ```javascript
35
+ export async function run({ inputs }) {
36
+ const { FatalError, NextNode } = DEFINITIONS;
37
+
38
+ const text = inputs.input_text;
39
+
40
+ return NextNode.from({
41
+ outputs: {
42
+ output_text: text
43
+ }
44
+ });
45
+ }
46
+ ```
47
+
48
+ ### Кастомный код Merge Text to JSON
49
+ Нам нужно заменить это логикой, которая обрабатывает несколько строковых входов и создает JSON массив:
50
+
51
+ ```javascript
52
+ export async function run({ inputs }) {
53
+ const { FatalError, NextNode } = DEFINITIONS;
54
+
55
+ const jsonArray = [];
56
+
57
+ if (inputs.string1) {
58
+ jsonArray.push(inputs.string1);
59
+ }
60
+ if (inputs.string2) {
61
+ jsonArray.push(inputs.string2);
62
+ }
63
+ if (inputs.string3) {
64
+ jsonArray.push(inputs.string3);
65
+ }
66
+ if (inputs.string4) {
67
+ jsonArray.push(inputs.string4);
68
+ }
69
+
70
+ return NextNode.from({
71
+ outputs: {
72
+ json_output: jsonArray
73
+ }
74
+ });
75
+ }
76
+ ```
77
+ ## Понимание кастомной логики
78
+
79
+ Кастомный скрипт реализует следующую логику:
80
+
81
+ 1. **Инициализация пустого массива** - `const jsonArray = []` создает пустой массив для хранения наших текстовых строк
82
+ 2. **Проверка каждого входа** - Условия `if` проверяют, что каждый вход имеет значение перед добавлением
83
+ 3. **Построение массива** - Только непустые входы добавляются в `jsonArray` с помощью `push()`
84
+ 4. **Возврат JSON выхода** - Финальный массив возвращается как `json_output`, соответствуя нашей конфигурации во вкладке Design
85
+
86
+ Этот подход гарантирует, что:
87
+ - Пустые или неопределенные входы игнорируются
88
+ - Только валидные текстовые строки включаются в финальный JSON массив
89
+ - Формат выхода соответствует JSON типу, который мы определили во вкладке Design
90
+
91
+ ## Типы выполнения
92
+
93
+ Выберите подходящий тип выполнения в зависимости от того, сколько времени требуется вашей ноде для работы:
94
+
95
+ | Тип | Время | Описание |
96
+ |------------|-------------|-----------------------|
97
+ | Rapid | 0-20 sec | Быстрые операции |
98
+ | Regular | 21-60 sec | Стандартная обработка |
99
+ | Deferred | 60-120 sec | Сложные операции |
100
+ | Protracted | 120-300 sec | Тяжелые задачи обработки |
101
+
102
+ Для нашей ноды **Merge text to JSON** подходит выполнение **Rapid**, поскольку мы только манипулируем текстовыми строками и нет обращений к стороннему сервису по API.
103
+
104
+ ## Сохранение изменений
105
+
106
+ Всегда сохраняйте изменения в скрипте, нажимая кнопку **Save** внизу интерфейса. Любые изменения в коде следует сохранять по нажатию клавиши Save внизу интерфейса.
107
+
108
+ Вкладка Script - эт�� ядро функциональности вашей ноды, где вы преобразуете входные данные в выходные с помощью кода JavaScript.
109
+
110
+ --- eng ---
111
+
112
+ # Script Tab in Node Settings
113
+
114
+ The **Script** tab is designed for placing JavaScript code that handles the node's programmatic logic. Here you define what exactly your node does - whether it processes text, calls APIs, transforms data, or performs calculations.
115
+
116
+ ![Script tab interface](../img/script_tab.jpg)
117
+
118
+ ## Code Structure
119
+
120
+ All Piper nodes, including custom ones, follow a specific JavaScript structure:
121
+
122
+ ```javascript
123
+ export async function run({ inputs }) {
124
+ const { FatalError, NextNode } = DEFINITIONS;
125
+
126
+ // Your code here
127
+
128
+ return NextNode.from({
129
+ outputs: {
130
+ // Your results
131
+ }
132
+ });
133
+ }
134
+ ```
135
+
136
+ This structure ensures that your node can properly receive data from previous nodes and pass results to the next ones in your pipeline.
137
+
138
+ ### Original Input Text Code
139
+ The basic **Input Text** node has this simple structure:
140
+
141
+ ```javascript
142
+ export async function run({ inputs }) {
143
+ const { FatalError, NextNode } = DEFINITIONS;
144
+
145
+ const text = inputs.input_text;
146
+
147
+ return NextNode.from({
148
+ outputs: {
149
+ output_text: text
150
+ }
151
+ });
152
+ }
153
+ ```
154
+
155
+ ### Custom Merge Text to JSON Code
156
+ We need to replace this with logic that processes multiple string inputs and creates a JSON array:
157
+
158
+ ```javascript
159
+ export async function run({ inputs }) {
160
+ const { FatalError, NextNode } = DEFINITIONS;
161
+
162
+ const jsonArray = [];
163
+
164
+ if (inputs.string1) {
165
+ jsonArray.push(inputs.string1);
166
+ }
167
+ if (inputs.string2) {
168
+ jsonArray.push(inputs.string2);
169
+ }
170
+ if (inputs.string3) {
171
+ jsonArray.push(inputs.string3);
172
+ }
173
+ if (inputs.string4) {
174
+ jsonArray.push(inputs.string4);
175
+ }
176
+
177
+ return NextNode.from({
178
+ outputs: {
179
+ json_output: jsonArray
180
+ }
181
+ });
182
+ }
183
+ ```
184
+
185
+ ## Understanding Custom Logic
186
+
187
+ The custom script implements the following logic:
188
+
189
+ 1. **Initialize empty array** - `const jsonArray = []` creates an empty array to store our text strings
190
+ 2. **Check each input** - `if` conditions check that each input has a value before adding
191
+ 3. **Build array** - Only non-empty inputs are added to `jsonArray` using `push()`
192
+ 4. **Return JSON output** - The final array is returned as `json_output`, matching our configuration in the Design tab
193
+
194
+ This approach ensures that:
195
+ - Empty or undefined inputs are ignored
196
+ - Only valid text strings are included in the final JSON array
197
+ - The output format matches the JSON type we defined in the Design tab
198
+
199
+ ## Execution Types
200
+
201
+ Choose the appropriate execution type based on how much time your node requires to work:
202
+
203
+ | Type | Time | Description |
204
+ |------------|-------------|-----------------------|
205
+ | Rapid | 0-20 sec | Fast operations |
206
+ | Regular | 21-60 sec | Standard processing |
207
+ | Deferred | 60-120 sec | Complex operations |
208
+ | Protracted | 120-300 sec | Heavy processing tasks |
209
+
210
+ For our **Merge text to JSON** node, **Rapid** execution is suitable since we're only manipulating text strings and there are no API calls to external services.
211
+
212
+ ## Saving Changes
213
+
214
+ Always save changes to the script by clicking the **Save** button at the bottom of the interface. Any changes to the code should be saved by pressing the Save button at the bottom of the interface.
215
+
216
+ The Script tab is the core of your node's functionality, where you transform input data into output using JavaScript code.
i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/node-yaml.mdx ADDED
@@ -0,0 +1,293 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ sidebar_position: 3
3
+ ---
4
+
5
+ # Вкладка YAML в настройках ноды
6
+
7
+ Вкладка **YAML** объединяет все данные из других вкладок (Design, Script, Environment, Catalog) в единое представление, которое определяет всё о вашей ноде - от технических метаданных до её позиции в рабочем пространстве пайплайна.
8
+
9
+ ![Интерфейс вкладки YAML](../img/node-yaml.png)
10
+
11
+ ## Что такое YAML представление?
12
+
13
+ Вкладка YAML служит "исходным кодом" вашей ноды. Она объединяет:
14
+
15
+ - Определения входных и выходных данных из вкладки Design
16
+ - JavaScript код из вкладки Script
17
+ - Технические метаданные из вкладки Catalog
18
+ - Переменные окружения из вкладки Environment
19
+ - Позиционирование ноды и связи внутри пайплайна
20
+
21
+ Это полное представление позволяет точно дублировать ноды, копируя их YAML конфигурацию в другие пайплайны.
22
+
23
+ ## Структура YAML
24
+
25
+ YAML конфигурация организована в логические секции:
26
+
27
+ ### Техническая информация
28
+ ```yaml
29
+ _id: merge_text_to_json
30
+ version: 1
31
+ category:
32
+ _id: processing
33
+ title: en=Processing;ru=Обработка
34
+ package: custom
35
+ title: en=Merge text to JSON;ru=Объединение текста в JSON
36
+ source: node
37
+ execution: regular
38
+ ```
39
+
40
+ Эти поля определяют идентификатор ноды, версию, классификацию по категориям и привязку к пакету.
41
+
42
+ ### Скрипт выполнения
43
+ ```yaml
44
+ script: |-
45
+ export async function run({ inputs }) {
46
+ const { NextNode } = DEFINITIONS;
47
+
48
+ const jsonArray = [];
49
+
50
+ if (inputs.string1) {
51
+ jsonArray.push(inputs.string1);
52
+ }
53
+ if (inputs.string2) {
54
+ jsonArray.push(inputs.string2);
55
+ }
56
+ if (inputs.string3) {
57
+ jsonArray.push(inputs.string3);
58
+ }
59
+ if (inputs.string4) {
60
+ jsonArray.push(inputs.string4);
61
+ }
62
+
63
+ return NextNode.from({
64
+ outputs: {
65
+ json_output: jsonArray
66
+ }
67
+ });
68
+ }
69
+ ```
70
+
71
+ Содержит полный кастомный JavaScript код, который мы написали во вкладке Script.
72
+
73
+ ### Позиционирование ноды
74
+ ```yaml
75
+ arrange:
76
+ x: 170
77
+ y: 290
78
+ ```
79
+
80
+ Определяет точное положение ноды в рабочем пространстве пайплайна.
81
+
82
+ ### Определения входных/выходных данных
83
+ ```yaml
84
+ inputs:
85
+ string1:
86
+ title: en=String 1;ru=Строка 1
87
+ type: string
88
+ required: false
89
+ string2:
90
+ title: en=String 2;ru=Строка 2
91
+ type: string
92
+ required: false
93
+ string3:
94
+ title: en=String 3;ru=Строка 3
95
+ type: string
96
+ required: false
97
+ string4:
98
+ title: en=String 4;ru=Строка 4
99
+ type: string
100
+ required: false
101
+
102
+ outputs:
103
+ json_output:
104
+ title: en=JSON;ru=JSON
105
+ type: json
106
+ ```
107
+
108
+ Полные спецификации для всех 4 входных параметров и 1 выходного параметра, которые мы настроили во вкладке Design.
109
+
110
+ ### Информация каталога (опционально)
111
+ ```yaml
112
+ catalog:
113
+ _id: merge_text_to_json
114
+ version: 1
115
+ category:
116
+ _id: service_nodes
117
+ title: Service Nodes
118
+ package: service_nodes
119
+ ```
120
+
121
+ Метаданные для публикации и организации вашей кастомной ноды в каталоге.
122
+
123
+ ### Переменные окружения (опционально)
124
+ ```yaml
125
+ environment:
126
+ OPEN_PAAS_USER:
127
+ title: PaaS user
128
+ type: string
129
+ scope: global
130
+ ```
131
+
132
+ Все переменные окружения и API ключи, необходимые для подключения ноды к внешним провайдерам.
133
+
134
+ ## Копирование и повторное использование нод
135
+
136
+ Самая мощная функция вкладки YAML - возможность создания точных дубликатов ноды:
137
+
138
+ 1. **Скопируйте YAML** - Выделите весь код во вкладке YAML и скопируйте его
139
+ 2. **Создайте новую ноду** - Добавьте новую ноду в любой пайплайн
140
+ 3. **Вставьте конфигурацию** - Замените YAML новой ноды на скопированный код
141
+ 4. **Сохраните изменения** - Нода будет воссоздана с идентичной функциональностью
142
+
143
+ Этот процесс сохраняет все настройки, код и конфигурацию, делая простым повторное использование любых нод в разных пайплайнах.
144
+
145
+ ## Только для чтения
146
+
147
+ Вкладка YAML в основном предназначена для просмотра и копирования. Хотя вы можете видеть полную конфигурацию ноды здесь, изменения следует вносить через соответствующие вкладки (Script для изменений кода, Design для модификации входных/выходных данных и т.д.), чтобы обеспечить правильную валидацию и форматирование.
148
+
149
+ --- eng ---
150
+
151
+ # YAML Tab in Node Settings
152
+
153
+ The **YAML** tab combines all data from other tabs (Design, Script, Environment, Catalog) into a unified view that defines everything about your node - from technical metadata to its position in the pipeline workspace.
154
+
155
+ ![YAML Tab Interface](../img/node-yaml.png)
156
+
157
+ ## What is the YAML View?
158
+
159
+ The YAML tab serves as the "source code" of your node. It combines:
160
+
161
+ - Input and output definitions from the Design tab
162
+ - JavaScript code from the Script tab
163
+ - Technical metadata from the Catalog tab
164
+ - Environment variables from the Environment tab
165
+ - Node positioning and connections within the pipeline
166
+
167
+ This complete representation allows you to precisely duplicate nodes by copying their YAML configuration to other pipelines.
168
+
169
+ ## YAML Structure
170
+
171
+ The YAML configuration is organized into logical sections:
172
+
173
+ ### Technical Information
174
+ ```yaml
175
+ _id: merge_text_to_json
176
+ version: 1
177
+ category:
178
+ _id: processing
179
+ title: en=Processing;ru=Обработка
180
+ package: custom
181
+ title: en=Merge text to JSON;ru=Объединение текста в JSON
182
+ source: node
183
+ execution: regular
184
+ ```
185
+
186
+ These fields define the node's identifier, version, category classification, and package binding.
187
+
188
+ ### Execution Script
189
+ ```yaml
190
+ script: |-
191
+ export async function run({ inputs }) {
192
+ const { NextNode } = DEFINITIONS;
193
+
194
+ const jsonArray = [];
195
+
196
+ if (inputs.string1) {
197
+ jsonArray.push(inputs.string1);
198
+ }
199
+ if (inputs.string2) {
200
+ jsonArray.push(inputs.string2);
201
+ }
202
+ if (inputs.string3) {
203
+ jsonArray.push(inputs.string3);
204
+ }
205
+ if (inputs.string4) {
206
+ jsonArray.push(inputs.string4);
207
+ }
208
+
209
+ return NextNode.from({
210
+ outputs: {
211
+ json_output: jsonArray
212
+ }
213
+ });
214
+ }
215
+ ```
216
+
217
+ Contains the complete custom JavaScript code that we wrote in the Script tab.
218
+
219
+ ### Node Positioning
220
+ ```yaml
221
+ arrange:
222
+ x: 170
223
+ y: 290
224
+ ```
225
+
226
+ Defines the exact position of the node in the pipeline workspace.
227
+
228
+ ### Input/Output Definitions
229
+ ```yaml
230
+ inputs:
231
+ string1:
232
+ title: en=String 1;ru=Строка 1
233
+ type: string
234
+ required: false
235
+ string2:
236
+ title: en=String 2;ru=Строка 2
237
+ type: string
238
+ required: false
239
+ string3:
240
+ title: en=String 3;ru=Строка 3
241
+ type: string
242
+ required: false
243
+ string4:
244
+ title: en=String 4;ru=Строка 4
245
+ type: string
246
+ required: false
247
+
248
+ outputs:
249
+ json_output:
250
+ title: en=JSON;ru=JSON
251
+ type: json
252
+ ```
253
+
254
+ Complete specifications for all 4 input parameters and 1 output parameter that we configured in the Design tab.
255
+
256
+ ### Catalog Information (Optional)
257
+ ```yaml
258
+ catalog:
259
+ _id: merge_text_to_json
260
+ version: 1
261
+ category:
262
+ _id: service_nodes
263
+ title: Service Nodes
264
+ package: service_nodes
265
+ ```
266
+
267
+ Metadata for publishing and organizing your custom node in the catalog.
268
+
269
+ ### Environment Variables (Optional)
270
+ ```yaml
271
+ environment:
272
+ OPEN_PAAS_USER:
273
+ title: PaaS user
274
+ type: string
275
+ scope: global
276
+ ```
277
+
278
+ All environment variables and API keys required to connect the node to external providers.
279
+
280
+ ## Copying and Reusing Nodes
281
+
282
+ The most powerful feature of the YAML tab is the ability to create exact duplicates of nodes:
283
+
284
+ 1. **Copy YAML** - Select all code in the YAML tab and copy it
285
+ 2. **Create New Node** - Add a new node to any pipeline
286
+ 3. **Paste Configuration** - Replace the new node's YAML with the copied code
287
+ 4. **Save Changes** - The node will be recreated with identical functionality
288
+
289
+ This process preserves all settings, code, and configuration, making it simple to reuse any nodes across different pipelines.
290
+
291
+ ## Read-Only
292
+
293
+ The YAML tab is primarily intended for viewing and copying. While you can see the complete node configuration here, changes should be made through the appropriate tabs (Script for code changes, Design for input/output modifications, etc.) to ensure proper validation and formatting.
i18n/ru/docusaurus-plugin-content-docs/current/advanced-development/pipeline-yaml.mdx ADDED
@@ -0,0 +1,113 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ sidebar_position: 4
3
+ ---
4
+
5
+ # YAML для пайплайны
6
+
7
+ **YAML пайплайна** предоставляет комплексный обзор всей конфигурации вашего пайплайна в формате YAML. Это включает все ноды с их расположением, исполняемым кодом, взаимосвязями и различной технической информацией, которая определяет, как работает пайплайн.
8
+
9
+ ## Доступ к YAML пайплайна
10
+
11
+ Чтобы получить доступ к конфигурации YAML пайплайна:
12
+
13
+ 1. Нажмите кнопку **More** в интерфейсе пайплайна
14
+ 2. Выберите **YAML** из выпадающего меню
15
+
16
+ ![Доступ к YAML пайплайна](../img/pipeline-yaml-1.jpg)
17
+
18
+ Это откроет редактор YAML, где вы можете его просматривать и изменять.
19
+
20
+ ## Структура YAML
21
+
22
+ YAML пайплайна следует определенной иерархической структуре:
23
+
24
+ ### 1. Метаданные пайплайна
25
+ ```yaml
26
+ name: Pipeline Name
27
+ version: 1
28
+ description: Pipeline description
29
+ readme: {}
30
+ category:
31
+ _id: category_id
32
+ title: Category
33
+ ```
34
+
35
+ Этот раздел содержит базовую информацию о пайплайне, включая название, описание и категоризацию.
36
+
37
+ ### 2. Конфигурация запуска
38
+ ```yaml
39
+ start:
40
+ nodes:
41
+ - first_node_id
42
+ ```
43
+
44
+ Определяет, какая нода служит стартовой точкой для выполнения пайплайна.
45
+
46
+ ### 3. Входы и выходы
47
+ ```yaml
48
+ inputs:
49
+ string1:
50
+ title: String 1
51
+ type: string
52
+ # Параметры входных данных
53
+
54
+ outputs:
55
+ json_output:
56
+ title: JSON
57
+ type: json
58
+ # Параметры выходных данных
59
+ ```
60
+
61
+ Здесь определены все входы и выходы для всех нод, размещённые на рабочем пространстве пайплайны.
62
+
63
+ ### 4. Потоки (соединения нод)
64
+ ```yaml
65
+ flows:
66
+ connection_name:
67
+ from: source_node
68
+ output: output_parameter
69
+ to: target_node
70
+ input: input_parameter
71
+ ```
72
+
73
+ Этот раздел описывает, как данные передаются между нодами, связывая выходы одной ноды с входами другой.
74
+
75
+ ### 5. Конфигурация нод
76
+ ```yaml
77
+ nodes:
78
+ node_id:
79
+ version: 1
80
+ title: Node Title
81
+ source: node|catalog
82
+ execution: rapid|regular|deferred|protracted
83
+ script: |
84
+ // JavaScript код
85
+ inputs:
86
+ # Определения входов ноды
87
+ outputs:
88
+ # Определения выходов ноды
89
+ arrange:
90
+ # Расположение ноды
91
+ ```
92
+
93
+ Каждая нода в пайплайне полностью описана со всеми параметрами и кодом.
94
+
95
+ ## Редактирование и сохранение
96
+
97
+ При внесении изменений в YAML пайплайна:
98
+
99
+ 1. **Внесите свои изменения** в редакторе YAML
100
+ 2. **Нажмите Save** внизу интерфейса
101
+ 3. **Проверьте индикатор состояния** - зеленый индикатор "Saved" появится справа, если нет ошибок
102
+
103
+ ![Интерфейс редактора YAML](../img/pipeline-yaml-2.jpg)
104
+
105
+ Любые синтаксические ошибки или проблемы конфигурации будут выделены, предотвращая операцию сохранения до их устранения.
106
+
107
+ ## Возврат в рабочее пространство пайплайна
108
+
109
+ Чтобы вернуться в визуальное рабочее пространство пайплайна:
110
+
111
+ - Нажмите синюю кнопку **Pipeline** слева в интерфейсе
112
+
113
+ Это переключит вас обратно в графический редактор пайплайна.
i18n/ru/docusaurus-plugin-content-docs/current/deploy-pipelines/_category_.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "label": "Публикация конвейеров и API",
3
- "position": 4,
4
- "link": {
5
- "type": "generated-index",
6
- "description": "Публикуйте свои конвейеры и вызывайте их через API за секунды."
7
- }
8
- }
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-docs/current/deploy-pipelines/call-via-api.md DELETED
@@ -1,111 +0,0 @@
1
- ---
2
- sidebar_position: 1
3
- ---
4
-
5
- # Запуск конвейеров и API
6
-
7
- После публикации ваши конвейеры можно вызывать с помощью запросов POST/GET.
8
-
9
- :::tip Подсказка
10
-
11
- Если вы развернули Piper на своем собственном сервере, замените **piper.my** на свое доменное имя.
12
-
13
- :::
14
-
15
- ## Запустить конвейер
16
-
17
- ```bash
18
- curl --location --request POST 'https://app.piper.my/api/pipeline-slug/launch' \
19
- --header 'content-type: application/json' \
20
- --header 'api-token: [YOUR_API_KEY_HERE]' \
21
- --data '{
22
- "inputs": {
23
- name: "Bob Marley",
24
- age: 36,
25
- died: true
26
- }
27
- }'
28
- ```
29
-
30
- :::tip Важно
31
-
32
- Тип входных данных может быть только: `boolean` | `number` | `string`
33
-
34
- :::
35
-
36
- Некоторые конвейеры принимают JSON в качестве входных данных.
37
-
38
- В этом случае JSON все равно необходимо сериализовать в строку.
39
-
40
- ```json
41
- {
42
- "inputs": {
43
- "props": "{ \"name\": \"Bob Marley\", \"age\": 36 }"
44
- }
45
- }
46
- ```
47
-
48
- ### Изображения и медиафайлы
49
-
50
- Существует два способа отправки изображений и других медиафайлов, таких как видео или аудио:
51
- 1. JSON Base64: `data:image/jpeg;base64,...`
52
- 2. Загрузка как артефакта.
53
-
54
- #### JSON Base64
55
-
56
- ```bash
57
- curl --location --request POST 'https://app.piper.my/api/pipeline-slug/launch' \
58
- --header 'content-type: application/json' \
59
- --header 'api-token: [YOUR_API_KEY_HERE]' \
60
- --data '{
61
- "inputs": {
62
- image: "data:image/jpeg;base64,..."
63
- }
64
- }'
65
- ```
66
-
67
- :::danger Ограничения
68
-
69
- Для обеспечения стабильности и производительности JSON ограничен 2048 КБ.
70
- Большие медиафайлы загружайте как артефакты.
71
-
72
- :::
73
-
74
- #### Загрузка артефакта
75
-
76
- Piper имеет собственное временное хранилище для обработки больших медиафайлов.
77
-
78
- ```bash
79
- curl --location --request POST 'https://app.piper.my/api/artefacts' \
80
- --header 'api-token: [YOUR_API_KEY_HERE]' \
81
- -F "file=@/path/to/your/file.jpg"
82
- ```
83
-
84
- После загрузки вы получите URL-адрес для доступа к файлу.
85
-
86
- :::danger Ограничения
87
-
88
- Ваш файл будет автоматически удален примерно через 48 часов.
89
-
90
- :::
91
-
92
- ## Статус конвейера
93
-
94
- ```bash
95
- curl --location --request GET 'https://app.piper.my/api/launches/[LAUNCH_ID]/state' \
96
- --header 'api-token: [YOUR_API_KEY_HERE]'
97
- ```
98
-
99
- В зависимости от типа конвейера мы рекомендуем проводить опрос каждые 2–5 секунд.
100
-
101
- Поскольку выходные данные в конвейере устанавливаются асинхронно, вам необходимо дождаться всех ожидаемых выходных данных.
102
-
103
- :::tip Вопрос
104
-
105
- > Поддерживаете ли вы вебхуки или потоковые события?
106
-
107
- **Это произойдет совсем скоро!**
108
-
109
- Пожалуйста, [проголосуйте](https://github.com/my-piper/piper/issues/17), чтобы выразить свою поддержку.
110
-
111
- :::
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
i18n/ru/docusaurus-plugin-content-docs/current/img/add_nodes_tab.webp ADDED

Git LFS Details

  • SHA256: 699e9a95e83d11351f9dc456edd0a8207b90ff436c492acf3bbc151232a30af6
  • Pointer size: 132 Bytes
  • Size of remote file: 1.23 MB
i18n/{de/docusaurus-plugin-content-blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg → ru/docusaurus-plugin-content-docs/current/img/add_pipeline_button.jpg} RENAMED
File without changes