diff --git a/docs/Makefile b/docs/Makefile index 583ca792c..77694d6f9 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -51,7 +51,8 @@ quartodoc: $(PYBIN) ## Build qmd files for API docs $(eval export IN_QUARTODOC=true) . $(PYBIN)/activate \ && quartodoc interlinks \ - && quartodoc build --config _quartodoc.yml --verbose + && quartodoc build --config _quartodoc-core.yml --verbose \ + && quartodoc build --config _quartodoc-express.yml --verbose site: ## Build website . $(PYBIN)/activate \ diff --git a/docs/_quarto.yml b/docs/_quarto.yml index 3e1093ae7..43800dad0 100644 --- a/docs/_quarto.yml +++ b/docs/_quarto.yml @@ -18,8 +18,10 @@ website: pinned: true search: true left: - - text: "API" - file: api/index.qmd + - text: "API (Express)" + file: api-express/index.qmd + - text: "API (Core)" + file: api-core/index.qmd right: - icon: github href: https://github.com/posit-dev/py-shiny diff --git a/docs/_quartodoc-core.yml b/docs/_quartodoc-core.yml new file mode 100644 index 000000000..69c829e47 --- /dev/null +++ b/docs/_quartodoc-core.yml @@ -0,0 +1,315 @@ +quartodoc: + style: pkgdown + dir: api/core + out_index: index.qmd + package: shiny + rewrite_all_pages: false + sidebar: api/core/_sidebar.yml + dynamic: true + renderer: + style: _renderer.py + show_signature_annotations: false + sections: + - title: Page containers + desc: Create a user interface page container. + contents: + - ui.page_sidebar + - ui.page_navbar + - ui.page_sidebar + - ui.page_fillable + - ui.page_fluid + - ui.page_fixed + - ui.page_bootstrap + - ui.page_auto + - ui.page_output + - title: UI Layouts + desc: Control the layout of multiple UI components. + contents: + - ui.sidebar + - ui.layout_sidebar + - ui.layout_columns + - ui.layout_column_wrap + - ui.card + - ui.card_header + - ui.card_footer + - ui.popover + - ui.tooltip + - ui.accordion + - ui.accordion_panel + - ui.column + - ui.row + - title: UI Inputs + desc: Create UI that prompts the user for input values or interaction. + contents: + - ui.input_select + - ui.input_selectize + - ui.input_slider + - ui.input_date + - ui.input_date_range + - ui.input_checkbox + - ui.input_checkbox_group + - ui.input_switch + - ui.input_radio_buttons + - ui.input_numeric + - ui.input_text + - ui.input_text_area + - ui.input_password + - ui.input_action_button + - ui.input_action_link + - title: Value boxes + desc: Prominently display a value and label in a box that can be expanded to show more information. + contents: + - ui.value_box + - ui.value_box_theme + - ui.showcase_bottom + - ui.showcase_left_center + - ui.showcase_top_right + - title: Navigation (tab) panels + desc: Create segments of UI content. + contents: + - ui.nav_panel + - ui.nav_spacer + - ui.nav_menu + - ui.nav_control + - ui.navset_bar + - ui.navset_tab + - ui.navset_pill + - ui.navset_underline + - ui.navset_card_tab + - ui.navset_card_pill + - ui.navset_card_underline + - ui.navset_pill_list + - ui.navset_hidden + - title: UI panels + desc: Visually group together a section of UI components. + contents: + - ui.panel_absolute + - ui.panel_fixed + - ui.panel_conditional + - ui.panel_title + - ui.panel_well + - title: Uploads & downloads + desc: Allow users to upload and download files. + contents: + - ui.input_file + - ui.download_button + - title: Custom UI + desc: Lower-level UI functions for creating custom HTML/CSS/JS + contents: + - ui.HTML # uses justattributes.rst template + - ui.TagList # uses class.rst template + - name: ui.tags # uses tags.rst template + children: embedded + - ui.markdown + - ui.include_css + - ui.include_js + - ui.insert_ui + - ui.remove_ui + - ui.fill.as_fillable_container + - ui.fill.as_fill_item + - ui.fill.remove_all_fill + # - ui.fill.is_fillable_container + # - ui.fill.is_fill_item + - ui.css.as_css_unit + - ui.css.as_css_padding + - title: Update inputs + desc: Programmatically update input values. + contents: + - name: ui.update_select + dynamic: true + - name: ui.update_selectize + dynamic: true + - name: ui.update_slider + dynamic: true + - ui.update_date + - name: ui.update_date_range + dynamic: true + - name: ui.update_checkbox + dynamic: true + - name: ui.update_checkbox_group + dynamic: true + - name: ui.update_switch + dynamic: true + - name: ui.update_radio_buttons + dynamic: true + - name: ui.update_numeric + dynamic: true + - ui.update_text + - name: ui.update_text_area + dynamic: "shiny.ui.update_text" + - name: ui.update_navs + dynamic: true + - title: Update UI Layouts + desc: "" + contents: + - ui.update_sidebar + - ui.update_tooltip + - ui.update_popover + - ui.update_accordion + - ui.update_accordion_panel + - ui.insert_accordion_panel + - ui.remove_accordion_panel + - title: Rendering outputs + desc: "UI (output_*()) and server (render)ing functions for generating content server-side." + contents: + - ui.output_plot + - ui.output_image + - ui.output_table + - ui.output_data_frame + - ui.output_text + - ui.output_code + - ui.output_text_verbatim + - ui.output_ui + - render.plot + - render.image + - render.table + - render.text + - render.ui + - render.data_frame + - render.DataGrid + - render.DataTable + - kind: page + path: Renderer + flatten: true + summary: + name: "Create output renderers" + desc: "Package author methods for creating new output renderers." + contents: + - render.renderer.Renderer + - name: render.renderer.Jsonifiable + dynamic: false + - name: render.renderer.ValueFn + dynamic: false + - name: render.renderer.AsyncValueFn + dynamic: false + - name: render.renderer.RendererT + dynamic: false + - title: Reactive programming + desc: "" + contents: + - reactive.calc + - reactive.effect + - reactive.value + - reactive.Calc + - reactive.Effect + - reactive.Value + - reactive.event + - reactive.isolate + - reactive.invalidate_later + - reactive.flush + - reactive.poll + - reactive.file_reader + - reactive.lock + - req + - title: Create and run applications + desc: "" + contents: + - run_app + # uses class.rst template + - App + - Inputs + - Outputs + - Session + - title: Display messages + desc: "" + contents: + - ui.help_text + - ui.notification_show + - ui.notification_remove + - ui.modal + - ui.modal_show + - ui.modal_remove + - ui.modal_button + - ui.Progress # uses class.rst + - title: Modules + desc: "" + contents: + # uses class.rst template + - module.ui + - module.server + - title: Developer facing tools + desc: "" + contents: + - session.get_current_session + - session.require_active_session + - session.session_context + - reactive.get_current_context + - name: input_handler.input_handlers + dynamic: true + - title: Types + desc: "" + contents: + - kind: page + path: MiscTypes + flatten: true + summary: + name: "Miscellaneous types" + desc: "" + contents: + - types.MISSING_TYPE + - types.MISSING + - types.FileInfo + - types.ImgData + - types.NavSetArg + - ui.Sidebar + - ui.CardItem + - ui.AccordionPanel + - name: ui.css.CssUnit + dynamic: false + - ui._input_slider.SliderValueArg + - ui._input_slider.SliderStepArg + - kind: page + path: TagTypes + summary: + name: "Tag types" + desc: "" + flatten: true + package: null + contents: + - name: htmltools.Tag + dynamic: false + - name: htmltools.TagAttrs + dynamic: false + - name: htmltools.TagAttrValue + dynamic: false + - name: htmltools.TagChild + dynamic: false + - name: htmltools.TagList + dynamic: false + - kind: page + path: ExceptionTypes + summary: + name: "Exception types" + desc: "" + flatten: true + contents: + - types.SilentException + - types.SilentCancelOutputException + - types.SafeException + - title: Deprecated + desc: "" + contents: + - ui.panel_main + - ui.panel_sidebar + - ui.nav + - render.transformer.resolve_value_fn + - title: Experimental + desc: "These methods are under consideration and are considered unstable. However, if there is a method you are excited about, please let us know!" + contents: + - kind: page + path: ExCard + summary: + name: "Card" + desc: "Cards are a common organizing unit for modern user interfaces (UI). At their core, they're just rectangular containers with borders and padding. However, when utilized properly to group related information, they help users better digest, engage, and navigate through content." + flatten: true + contents: + - name: experimental.ui.card_body + dynamic: false + - name: experimental.ui.card_title + dynamic: false + - name: experimental.ui.card_image + dynamic: false + - name: experimental.ui.ImgContainer + dynamic: false + - name: experimental.ui.WrapperCallable + dynamic: false diff --git a/docs/_quartodoc.yml b/docs/_quartodoc-express.yml similarity index 96% rename from docs/_quartodoc.yml rename to docs/_quartodoc-express.yml index f33556b4e..a625c6af4 100644 --- a/docs/_quartodoc.yml +++ b/docs/_quartodoc-express.yml @@ -1,27 +1,15 @@ quartodoc: style: pkgdown - dir: api + dir: api/express out_index: index.qmd package: shiny rewrite_all_pages: false - sidebar: api/_sidebar.yml + sidebar: api/express/_sidebar.yml dynamic: true renderer: style: _renderer.py show_signature_annotations: false sections: - - title: Page containers - desc: Create a user interface page container. - contents: - - ui.page_sidebar - - ui.page_navbar - - ui.page_sidebar - - ui.page_fillable - - ui.page_fluid - - ui.page_fixed - - ui.page_bootstrap - - ui.page_auto - - ui.page_output - title: UI Layouts desc: Control the layout of multiple UI components. contents: