From cd8b3daf95c91f5e3f564ef1ac566e9a307b8c12 Mon Sep 17 00:00:00 2001 From: Manon Bourgognon <manon.bourgognon@epitech.eu> Date: Fri, 24 Sep 2021 17:35:19 +0200 Subject: [PATCH] update: titles and content correction --- .../solid-form-addable.png | Bin 17924 -> 20060 bytes .../first_step/get-started.rst | 138 ++++++++++-------- .../framework_guide/how-to-use-SIB.rst | 33 ++--- 3 files changed, 89 insertions(+), 82 deletions(-) diff --git a/source/_static/images/import_documentation/framework-basic-use/solid-form-addable.png b/source/_static/images/import_documentation/framework-basic-use/solid-form-addable.png index 90c7ce578cb94b336573eca51a8fd3f12a534dc5..c81f978566e7544ba7ea9b57a3a2e2a4c7f97d59 100644 GIT binary patch literal 20060 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 azzTKJH`Kfn5Us$^Z$kFK$wZ}<PvT!D$yllY literal 17924 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 diff --git a/source/import_documentation/first_step/get-started.rst b/source/import_documentation/first_step/get-started.rst index a7c992f..810578d 100644 --- a/source/import_documentation/first_step/get-started.rst +++ b/source/import_documentation/first_step/get-started.rst @@ -125,7 +125,8 @@ It starts to look better ! Any HTML element can be used as widget, but Startin'blox also provide **built-in widgets** to easily manage specific cases. To display images from their url, use the ``solid-display-img`` widget : -.. code:: html + +.. code-block:: html <solid-display data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" @@ -138,16 +139,17 @@ cases. To display images from their url, use the ``solid-display-img`` widget : Fields can also be grouped in **sets** using brackets : each bracket opens or closes a group, and groups can be nested. The word before the opening bracket is the group name and can be used to have a specific widget to display this group. -.. code:: html +.. code-block:: html + + <solid-display + data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" + fields="title, image.url, meta(itunes:author, itunes:category.text), description" + widget-title="h1" + widget-image.url="solid-display-img" + widget-meta="p" + no-render + /> - <solid-display - data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" - fields="title, image.url, meta(itunes:author, itunes:category.text), description" - widget-title="h1" - widget-image.url="solid-display-img" - widget-meta="p" - no-render - /> .. figure:: ../../_static/images/import_documentation/podcast_tutorial/Render3-Podcast-Tutorial.png :alt: Data displayed with image @@ -180,7 +182,7 @@ Apply CSS to have your own look-and-feel You can also target specific field with an attribute selector because ``<solid-display>`` component adds a ``name="[field]"`` attribute to the displayed data. -.. code:: html +.. code:: css [name="itunes:category.text"]{ display: inline-block; @@ -196,7 +198,8 @@ You can also target specific field with an attribute selector because ``<solid-d But sometimes it's easier and cleaner to use classes. ``class-[field]`` tags let's you specify a class name. -.. code:: html + +.. code-block:: html <style> .bordered { @@ -218,15 +221,17 @@ But sometimes it's easier and cleaner to use classes. ``class-[field]`` tags let no-render /> + You can also use arbitrary text (enclosed by single quotes) in the fields list to display a text node : .. code:: html - <solid-display - data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" - fields="title, image.url, meta('By: ', itunes:author, itunes:category.text), description" - [...] - /> + <solid-display + data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" + fields="title, image.url, meta('By: ', itunes:author, itunes:category.text), description" + [...] + /> + .. figure:: ../../_static/images/import_documentation/podcast_tutorial/Render6-Podcast-Tutorial.png :alt: Data displayed, CSS and text enclosed by sigle quotes @@ -241,20 +246,22 @@ a list we have to tell the framework that it should be treated as multiple value This is achieved with the ``multiple-[field]`` attributes. This tag creates a nested ``<solid-display>`` for each entry in ``item``. ``multiple-[field]-fields`` attribute is used to control which nested fields are displayed for each item. -.. code:: html - <solid-display - data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" - fields="title, header(image.url, info( meta('By: ', itunes:author, itunes:category.text), description)), item" - widget-title="h1" - widget-image.url="solid-display-img" - widget-meta="p" - class-itunes:category.text="bordered" - widget-header="header" - multiple-item - multiple-item-fields="title" - no-render - /> +.. code-block:: html + + <solid-display + data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" + fields="title, header(image.url, info( meta('By: ', itunes:author, itunes:category.text), description)), item" + widget-title="h1" + widget-image.url="solid-display-img" + widget-meta="p" + class-itunes:category.text="bordered" + widget-header="header" + multiple-item + multiple-item-fields="title" + no-render + /> + .. figure:: ../../_static/images/import_documentation/podcast_tutorial/Render7-Podcast-Tutorial.png :alt: Add item in data displayed @@ -265,25 +272,26 @@ Custom template To go further, we need to create our own widget template using the ``solid-widget`` tag. Let's show other episode data: -.. code:: html +.. code-block:: html - <solid-widget name="podcast-episode"> - <template> - <solid-display - data-src="${value}" - fields="title, meta(pubDate, itunes:duration), description" - widget-title="h2" - widget-description="p" - /> - </template> - </solid-widget> + <solid-widget name="podcast-episode"> + <template> + <solid-display + data-src="${value}" + fields="title, meta(pubDate, itunes:duration), description" + widget-title="h2" + widget-description="p" + /> + </template> + </solid-widget> + + <solid-display + data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" + [...] + multiple-item="podcast-episode" + no render + /> - <solid-display - data-src="http://radiofrance-podcast.net/podcast09/rss_20856.xml" - [...] - multiple-item="podcast-episode" - no render - /> ``solid-widget`` tag must be used with ``template`` to avoid its content to be rendered during the first page display. The code included in the template is then used by Startin'blox to render each item. And you can use here again all the @@ -315,26 +323,28 @@ Now if I use ``widget-pubDate="format-date"`` in ``<solid-widget name="podcast-e And this template mechanism plays also nicely with other HTML5 standard tags, such as ``audio`` : + .. code:: html - <solid-widget name="audio-player"> - <template> - <audio src="${value}" controls/> - </template> - </solid-widget> + <solid-widget name="audio-player"> + <template> + <audio src="${value}" controls/> + </template> + </solid-widget> + + <solid-widget name="podcast-episode"> + <template> + <solid-display + data-src="${value}" + fields="title, meta('Épisode du ', pubDate, ' - ', itunes:duration), description, enclosure.url" + widget-title="h2" + widget-description="p" + widget-pubDate="format-date" + widget-enclosure.url="audio-player" + /> + </template> + </solid-widget> - <solid-widget name="podcast-episode"> - <template> - <solid-display - data-src="${value}" - fields="title, meta('Épisode du ', pubDate, ' - ', itunes:duration), description, enclosure.url" - widget-title="h2" - widget-description="p" - widget-pubDate="format-date" - widget-enclosure.url="audio-player" - /> - </template> - </solid-widget> .. figure:: ../../_static/images/import_documentation/podcast_tutorial/Render10-Podcast-Tutorial.png :alt: Add audio player solid-widget diff --git a/source/import_documentation/framework_guide/how-to-use-SIB.rst b/source/import_documentation/framework_guide/how-to-use-SIB.rst index 43cf6cb..9382919 100644 --- a/source/import_documentation/framework_guide/how-to-use-SIB.rst +++ b/source/import_documentation/framework_guide/how-to-use-SIB.rst @@ -19,6 +19,7 @@ To present it really simply, a ``solid-display`` component with a ``data-src`` a data-src="data/documentation/users.jsonld" fields="first_name, last_name" ></solid-display> + <solid-display data-src="data/documentation/user-1.jsonld" fields="first_name, last_name" @@ -48,6 +49,7 @@ Startin'blox proposes 2 ways to display it: * **period** syntax * ``nested-field`` attribute + .. code-block:: html <solid-display @@ -71,8 +73,8 @@ The widgets are used to specify how data is displayed. Their use is detailed in :alt: nested-data -How to create a form --------------------- +How to add and edit data +------------------------ To create a form, indicate in ``data-src`` attribute the data model to which it corresponds. If the data model is a **resource**, the form will be used to edit data. If it's a **container**, the form will create a new resource. @@ -111,21 +113,21 @@ Then, add attributes and widgets to change label values, precise inputs type, et .. figure:: ../../_static/images/import_documentation/framework-basic-use/solid-form.png :alt: Example of solid-form use -Example with addable feature -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +How to add new values in a form +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The feature ``addable`` adds a solid-form to add a value to a field. Here, hobbies is concerned: .. code-block:: html <solid-form - class="form" data-src="data/documentation/users.jsonld" fields="first_name, last_name, hobbies" label-first_name="First name:" label-last_name="Last name:" label-hobbies="Hobbies:" + submit-button="Send form" widget-hobbies="solid-form-dropdown-addable-label" range-hobbies="data/documentation/hobbies.jsonld" @@ -133,7 +135,7 @@ The feature ``addable`` adds a solid-form to add a value to a field. Here, hobbi addable-hobbies-fields="name" addable-hobbies-widget-name="solid-form-text-label" addable-hobbies-label-name="Add a new hobby:" - addable-hobbies-naked + addable-hobbies-submit-button="Add hobby" ></solid-form> The red frame represents the widget tag ``solid-form-dropdown-addable-label``, @@ -143,9 +145,9 @@ the blue frame represents the ``<solid-form>`` created by ``addable`` attribute: :alt: Example of solid-form with addable feature -Specific case - data-holder attribute -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -To modify or add data including data linked, adding a second solid-form is necessary. It can be done thanks to a custom solid-widget. The second-form can also contain attributes: +Specific case - how to add and edit nested data +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +To modify or add data including data linked, adding a second solid-form is necessary, with ``data-holder`` and ``data-src=${value}`` attributes. It can be done thanks to a custom solid-widget. The second-form can also contain attributes: .. code-block:: html @@ -225,7 +227,7 @@ Jsonld data structure used for the example: :alt: Example of jsonld data container -How to use solid-form-search +How to filter displayed data ---------------------------- From the example above, by adding ``filtered-by`` attribute reffering to a ``solid-form-search`` component, data displayed can be filtered: @@ -404,7 +406,7 @@ How to use special attributes, values store://... ~~~~~~~~~~~ -It allows to fetch and display values from the :ref:`store <store-mixin>`. +It allows to fetch from the :ref:`store <store-mixin>` and display any value from any data resource, for any concerned attribute. *Here, without it, the field's name is displayed by default.* @@ -433,6 +435,7 @@ It allows to keep and pass the resource data-src between views when a :ref:`soli *Here, it ensures the personal informations of user clicked are displayed.* + .. code-block:: html <solid-router use-hash> @@ -464,12 +467,6 @@ It allows to keep and pass the resource data-src between views when a :ref:`soli ></solid-display> </div> + .. figure:: ../../_static/images/import_documentation/framework-basic-use/bind-resources.png :alt: Example of bind-resources use - -data-holder - ${value} -~~~~~~~~~~~~~~~~~~~~~~ - -These elements have already been introduced on examples above, for more information, please visit :ref:`solid-widget<solid-widget>`, :ref:`list-mixin<list-mixin>`, :ref:`widget-mixin<widget-mixin>` pages. - - -- GitLab