From 5b8b65782661d31313a1b1f3f11f5d31e2f2b0a7 Mon Sep 17 00:00:00 2001 From: Henri Courdent <122811744+hcourdent@users.noreply.github.com> Date: Mon, 18 Sep 2023 18:21:09 +0200 Subject: [PATCH] Pages for components (#308) * Pages for components * Fixing build * Ilusstrations page components list --- .../index.md | 2 +- docs/apps/0_app_editor/index.mdx | 10 +- docs/apps/1_canvas.mdx | 8 +- docs/apps/2_outputs.md | 2 +- docs/apps/3_app-runnable-panel.mdx | 28 +- .../1_app_component_library.mdx | 1441 ----------------- .../1_app_component_library.mdx | 331 ++++ .../2_app_runnable_triggers.md | 0 .../3_app_component_configuration.mdx | 0 .../4_app_styling.mdx | 0 .../5_components_groups.md | 2 +- .../aggrid_table.mdx | 62 + .../bar_line_chart.mdx | 45 + .../4_app_configuration_settings/button.mdx | 79 + .../4_app_configuration_settings/chartjs.mdx | 51 + .../conditional_tabs.mdx | 46 + .../container.mdx | 64 + .../currency_input.mdx | 40 + .../date_input.mdx | 39 + .../divider_x.mdx | 32 + .../divider_y.mdx | 32 + .../download_button.mdx | 59 + .../4_app_configuration_settings/drawer.mdx | 46 + .../email_input.mdx | 38 + .../file_input.mdx | 43 + .../flow_status.mdx | 38 + .../form_input.mdx | 45 + .../horizontal_split_panes.mdx | 40 + .../4_app_configuration_settings/html.mdx | 38 + .../4_app_configuration_settings/icon.mdx | 34 + .../4_app_configuration_settings/image.mdx | 39 + .../index.mdx | 0 .../invisible_tabs.mdx | 26 + .../4_app_configuration_settings/list.mdx | 88 + .../log_display.mdx | 38 + .../apps/4_app_configuration_settings/map.mdx | 42 + .../4_app_configuration_settings/modal.mdx | 43 + .../modal_form.mdx | 57 + .../multiselect.mdx | 38 + .../number_input.mdx | 38 + .../password_input.mdx | 37 + .../apps/4_app_configuration_settings/pdf.mdx | 38 + .../pie_chart.mdx | 45 + .../4_app_configuration_settings/plotly.mdx | 37 + .../4_app_configuration_settings/range.mdx | 39 + .../resource_select.mdx | 40 + .../rich_result.mdx | 38 + .../rich_text_editor.mdx | 38 + .../scatter_chart.mdx | 45 + .../4_app_configuration_settings/select.mdx | 40 + .../select_step.mdx | 38 + .../select_tab.mdx | 38 + .../sidebar_tabs.mdx | 26 + .../4_app_configuration_settings/slider.mdx | 38 + .../4_app_configuration_settings/stepper.mdx | 47 + .../submit_form.mdx | 51 + .../table.mdx} | 31 +- .../4_app_configuration_settings/tabs.mdx | 45 + .../4_app_configuration_settings/text.mdx | 56 + .../text_input.mdx | 38 + .../4_app_configuration_settings/textarea.mdx | 38 + .../timeseries.mdx | 46 + .../4_app_configuration_settings/toggle.mdx | 38 + .../vega_lite.mdx | 44 + .../vertical_split_panes.mdx | 40 + docs/apps/7_app_e-commerce.md | 6 +- docs/compared_to/retool.mdx | 2 +- .../18_files_binary_data/index.mdx | 4 +- .../19_rich_display_rendering/index.md | 24 +- .../6_auto_generated_uis/index.md | 2 +- docs/core_concepts/index.mdx | 6 +- .../7_apps_quickstart/index.mdx | 10 +- docs/misc/9_guides/aggrid_table/index.md | 4 +- docs/misc/9_guides/table/index.md | 4 +- sidebars.js | 77 +- src/landing/AppSection.tsx | 4 +- src/landing/EntrepriseFeatures.tsx | 2 +- 77 files changed, 2736 insertions(+), 1524 deletions(-) delete mode 100644 docs/apps/4_app_configuration-settings/1_app_component_library.mdx create mode 100644 docs/apps/4_app_configuration_settings/1_app_component_library.mdx rename docs/apps/{4_app_configuration-settings => 4_app_configuration_settings}/2_app_runnable_triggers.md (100%) rename docs/apps/{4_app_configuration-settings => 4_app_configuration_settings}/3_app_component_configuration.mdx (100%) rename docs/apps/{4_app_configuration-settings => 4_app_configuration_settings}/4_app_styling.mdx (100%) rename docs/apps/{4_app_configuration-settings => 4_app_configuration_settings}/5_components_groups.md (87%) create mode 100644 docs/apps/4_app_configuration_settings/aggrid_table.mdx create mode 100644 docs/apps/4_app_configuration_settings/bar_line_chart.mdx create mode 100644 docs/apps/4_app_configuration_settings/button.mdx create mode 100644 docs/apps/4_app_configuration_settings/chartjs.mdx create mode 100644 docs/apps/4_app_configuration_settings/conditional_tabs.mdx create mode 100644 docs/apps/4_app_configuration_settings/container.mdx create mode 100644 docs/apps/4_app_configuration_settings/currency_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/date_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/divider_x.mdx create mode 100644 docs/apps/4_app_configuration_settings/divider_y.mdx create mode 100644 docs/apps/4_app_configuration_settings/download_button.mdx create mode 100644 docs/apps/4_app_configuration_settings/drawer.mdx create mode 100644 docs/apps/4_app_configuration_settings/email_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/file_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/flow_status.mdx create mode 100644 docs/apps/4_app_configuration_settings/form_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/horizontal_split_panes.mdx create mode 100644 docs/apps/4_app_configuration_settings/html.mdx create mode 100644 docs/apps/4_app_configuration_settings/icon.mdx create mode 100644 docs/apps/4_app_configuration_settings/image.mdx rename docs/apps/{4_app_configuration-settings => 4_app_configuration_settings}/index.mdx (100%) create mode 100644 docs/apps/4_app_configuration_settings/invisible_tabs.mdx create mode 100644 docs/apps/4_app_configuration_settings/list.mdx create mode 100644 docs/apps/4_app_configuration_settings/log_display.mdx create mode 100644 docs/apps/4_app_configuration_settings/map.mdx create mode 100644 docs/apps/4_app_configuration_settings/modal.mdx create mode 100644 docs/apps/4_app_configuration_settings/modal_form.mdx create mode 100644 docs/apps/4_app_configuration_settings/multiselect.mdx create mode 100644 docs/apps/4_app_configuration_settings/number_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/password_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/pdf.mdx create mode 100644 docs/apps/4_app_configuration_settings/pie_chart.mdx create mode 100644 docs/apps/4_app_configuration_settings/plotly.mdx create mode 100644 docs/apps/4_app_configuration_settings/range.mdx create mode 100644 docs/apps/4_app_configuration_settings/resource_select.mdx create mode 100644 docs/apps/4_app_configuration_settings/rich_result.mdx create mode 100644 docs/apps/4_app_configuration_settings/rich_text_editor.mdx create mode 100644 docs/apps/4_app_configuration_settings/scatter_chart.mdx create mode 100644 docs/apps/4_app_configuration_settings/select.mdx create mode 100644 docs/apps/4_app_configuration_settings/select_step.mdx create mode 100644 docs/apps/4_app_configuration_settings/select_tab.mdx create mode 100644 docs/apps/4_app_configuration_settings/sidebar_tabs.mdx create mode 100644 docs/apps/4_app_configuration_settings/slider.mdx create mode 100644 docs/apps/4_app_configuration_settings/stepper.mdx create mode 100644 docs/apps/4_app_configuration_settings/submit_form.mdx rename docs/apps/{4_app_configuration-settings/99_component_template.mdx => 4_app_configuration_settings/table.mdx} (77%) create mode 100644 docs/apps/4_app_configuration_settings/tabs.mdx create mode 100644 docs/apps/4_app_configuration_settings/text.mdx create mode 100644 docs/apps/4_app_configuration_settings/text_input.mdx create mode 100644 docs/apps/4_app_configuration_settings/textarea.mdx create mode 100644 docs/apps/4_app_configuration_settings/timeseries.mdx create mode 100644 docs/apps/4_app_configuration_settings/toggle.mdx create mode 100644 docs/apps/4_app_configuration_settings/vega_lite.mdx create mode 100644 docs/apps/4_app_configuration_settings/vertical_split_panes.mdx diff --git a/blog/2023-09-05-teracapital-case-study/index.md b/blog/2023-09-05-teracapital-case-study/index.md index ea932faa9..bf6a31773 100644 --- a/blog/2023-09-05-teracapital-case-study/index.md +++ b/blog/2023-09-05-teracapital-case-study/index.md @@ -45,7 +45,7 @@ Within two weeks, everything was set to go with Windmill. Although self-hosting ## How do we work with Windmill? -Today, 6 team members are directly using Windmill. Most of our Windmill's users are non-technical, but they can easily fork an app with our entire [identity in CSS](/docs/apps/app_configuration-settings/app_styling) and [use AI to write code](/docs/core_concepts/ai_generation). +Today, 6 team members are directly using Windmill. Most of our Windmill's users are non-technical, but they can easily fork an app with our entire [identity in CSS](/docs/apps/app_configuration_settings/app_styling) and [use AI to write code](/docs/core_concepts/ai_generation). While we initially came to Windmill for its [App Editor](/docs/apps/app_editor), we ended up using [scripts](/docs/script_editor) and [flows](/docs/flows/flow_editor) to make our apps deeper and more complex. diff --git a/docs/apps/0_app_editor/index.mdx b/docs/apps/0_app_editor/index.mdx index c26f9e566..7b89f6125 100644 --- a/docs/apps/0_app_editor/index.mdx +++ b/docs/apps/0_app_editor/index.mdx @@ -76,7 +76,7 @@ The canvas at the center of the editor is where you design and see the overall U color="orange" title="Component Library" description="Discover all the components available." - href="/docs/apps/app_configuration-settings/app_component_library" + href="/docs/apps/app_configuration_settings/app_component_library" /> @@ -147,13 +147,13 @@ Finally, on the right panel of the editor, you can insert a new component, confi color="orange" title="Component Library" description="Discover all the components available in the library, and their configurations." - href="/docs/apps/app_configuration-settings/app_component_library" + href="/docs/apps/app_configuration_settings/app_component_library" /> @@ -168,7 +168,7 @@ Styling on the app editor can be managed at the component and app-level, with pr color="orange" title="Styling" description="Learn how to edit the component styles." - href="/docs/apps/app_configuration-settings/app_styling" + href="/docs/apps/app_configuration_settings/app_styling" /> @@ -178,7 +178,7 @@ Styling on the app editor can be managed at the component and app-level, with pr diff --git a/docs/apps/2_outputs.md b/docs/apps/2_outputs.md index ebf103ad2..000890b4e 100644 --- a/docs/apps/2_outputs.md +++ b/docs/apps/2_outputs.md @@ -36,7 +36,7 @@ Each component has its own outputs. The outputs are displayed in a tree structur ![App outputs](../assets/apps/2_app_outputs/app-output-collapsed.png.webp) -For example, the [Table component](./4_app_configuration-settings/1_app_component_library.mdx#table-1) has the following outputs: +For example, the [Table component](./4_app_configuration_settings/table.mdx) has the following outputs: - selectedRow: the selected row as an object - loading: the loading state of the table diff --git a/docs/apps/3_app-runnable-panel.mdx b/docs/apps/3_app-runnable-panel.mdx index 9dc859366..ace82862e 100644 --- a/docs/apps/3_app-runnable-panel.mdx +++ b/docs/apps/3_app-runnable-panel.mdx @@ -268,20 +268,20 @@ Note that it's a bad idea to mix dynamic default value and setValue together. `setValue` supports the following components: -- [Display](./4_app_configuration-settings/1_app_component_library.mdx#display) -- [Date Input](./4_app_configuration-settings/1_app_component_library.mdx#date-input) -- [Number Input](./4_app_configuration-settings/1_app_component_library.mdx#number-input) -- [Currency Input](./4_app_configuration-settings/1_app_component_library.mdx#currency-input) -- [Schema Form](./4_app_configuration-settings/1_app_component_library.mdx#schema-form) -- [Checkbox](./4_app_configuration-settings/1_app_component_library.mdx#checkbox) -- [Standalone Tab](./4_app_configuration-settings/1_app_component_library.mdx#select-tab) -- [Standalone step](./4_app_configuration-settings/1_app_component_library.mdx#select-step) -- [Range](./4_app_configuration-settings/1_app_component_library.mdx#range) -- [Multi Select](./4_app_configuration-settings/1_app_component_library.mdx#multi-select) -- [Text Input](./4_app_configuration-settings/1_app_component_library.mdx#text-input) -- [Slider](./4_app_configuration-settings/1_app_component_library.mdx#slider) -- [Select](./4_app_configuration-settings/1_app_component_library.mdx#select) -- [Text](./4_app_configuration-settings/1_app_component_library.mdx#text) +- [Display](./4_app_configuration_settings/log_display.mdx) +- [Date Input](./4_app_configuration_settings/date_input.mdx) +- [Number Input](./4_app_configuration_settings/number_input.mdx) +- [Currency Input](./4_app_configuration_settings/currency_input.mdx) +- [Form Input](./4_app_configuration_settings/form_input.mdx) +- [Toggle](./4_app_configuration_settings/toggle.mdx) +- [Standalone Tab](./4_app_configuration_settings/select_tab.mdx) +- [Standalone step](./4_app_configuration_settings/select_step.mdx) +- [Range](./4_app_configuration_settings/range.mdx) +- [Multi Select](./4_app_configuration_settings/multiselect.mdx) +- [Text Input](./4_app_configuration_settings/text_input.mdx) +- [Slider](./4_app_configuration_settings/slider.mdx) +- [Select](./4_app_configuration_settings/select.mdx) +- [Text](./4_app_configuration_settings/text.mdx) #### Parameters diff --git a/docs/apps/4_app_configuration-settings/1_app_component_library.mdx b/docs/apps/4_app_configuration-settings/1_app_component_library.mdx deleted file mode 100644 index 355250d3a..000000000 --- a/docs/apps/4_app_configuration-settings/1_app_component_library.mdx +++ /dev/null @@ -1,1441 +0,0 @@ -import DocCard from '@site/src/components/DocCard'; - -# Component Library - -The app components library is located on the right-hand side of the app editor. It displays the app components and allows you to configure them. - -## Components properties - -Components can be configured in two ways: - -- **Inputs**: inputs can be [connected to an output](../2_outputs.md#connecting-inputs) or computed using a runnable. - - - e.g. `Table` component has an input that can be connected to an output or computed using a runnable, which is an array of objects. -
- -- **Configuration**: property such as the button label, the text input placeholder, etc. - - e.g. `Table` component has a configuration property that allows you to configure the search bar: Client-side search, Server-side search, or no search. - -## Component outputs - -- **Runnable**: some component can trigger a runnable when an event occurs, usually when a user interacts with the component. The result of the runnable is stored in the component output in the key `result`. It also stores the `loading` state of the component. - - - e.g. `Button` component can trigger a runnable when clicked. -
- -- **Own outputs**: some component have outputs defined by the component. - - e.g. `Table` component has a selectedRow output - -## Inserting components - -Click on a component in the component library to insert it in the app canvas. It will be automatically positioned to the first available spot starting from the top left corner - -## Components list - -Windmill provides a set of components that can be used to build apps. - -The list of components is constantly growing according to our users' expectations. If you feel like a new component would be useful, please [reach out to us](/docs/misc/getting_help/). - -Even though the list of components is never as up to date as on [Windmill Cloud](https://app.windmill.dev/user/login), here is the list of the available components: - -### Layout - -The layout components are used to organize the components in the app canvas. - -- [Container](#container) -- [List](#list) -- [Divider X](#divider-x) -- [Dvider Y](#divider-y) -- [Drawer](#drawer) -- [Vertical Split Panes](#vertical-split-panes) -- [Horizontal Split Panes](#horizontal-split-panes) -- [Modal](#modal-layout) -- [Stepper](#stepper) - -### Tabs - -- [Tabs](#tabs-2) -- [Conditional Tabs](#conditional-tabs) -- [Sidebar Tabs](#sidebar-tabs) -- [Invisible Tabs](#invisible-tabs) - -### Buttons - -- [Button](#button) -- [Submit](#submit-form) -- [Modal Form](#modal-form) -- [Download Button](#download-button) - -### Inputs - -- [Form](#form-input) -- [Text Input](#text-input) -- [Textarea](#textarea) -- [Rich Text Editor](#rich-text-editor) -- [Password](#password-input) -- [Email Input](#email-input) -- [Number](#number-input) -- [Currency](#currency-input) -- [Slider](#slider) -- [Range](#range) -- [Date](#date-input) -- [File Input](#file-input) -- [Toggle](#toggle) -- [Select](#select) -- [Resource Select](#resource-select) -- [MultiSelect](#multiselect) -- [Select Tab](#select-tab) -- [Select Step](#select-step) - -### Tables - -- [Table](#table) -- [AgGrid Table](#aggrid-table) - -### Display - -- [Text](#text) -- [Icon](#icon) -- [Image](#image) -- [Map](#map) -- [HTML](#html) -- [PDF](#pdf) -- [Rich Result](#rich-result) -- [Log](#log-display) -- [Flow Status](#flow-status) - -### Charts - -- [Bar/Line Chart](#barline-chart) -- [Pie Chart](#pie-chart) -- [Vega Lite](#vega-lite) -- [Plotly](#plotly) -- [Scatter Chart](#scatter-chart) -- [Timeseries](#timeseries) -- [ChartJs](#chartjs) - -Below you will find details about each component. - -## Layout - -### Container - -Containers allow you to host other components in a box. Moving a container means moving all the components inside. - -