@@ -16,7 +16,7 @@
## Getting started
-Enrol in the course by going to [this link](https://go.tecla.do/rest-apis-sale).
+Enrol in the course by going to [this link](https://go.tecla.do/rest-apis-ebook).
Then you can come back here to download the repository. This repository contains the code that we develop in each section of the course.
diff --git a/docs/algolia.config.json b/docs/algolia.config.json
new file mode 100644
index 00000000..c5ce390d
--- /dev/null
+++ b/docs/algolia.config.json
@@ -0,0 +1,49 @@
+{
+ "index_name": "docusaurus-2",
+ "start_urls": [
+ "https://rest-apis-flask.teclado.com/"
+ ],
+ "sitemap_urls": [
+ "https://rest-apis-flask.teclado.com/sitemap.xml"
+ ],
+ "sitemap_alternate_links": true,
+ "stop_urls": [
+ "/tests"
+ ],
+ "selectors": {
+ "lvl0": {
+ "selector": "(//ul[contains(@class,'menu__list')]//a[contains(@class, 'menu__link menu__link--sublist menu__link--active')]/text() | //nav[contains(@class, 'navbar')]//a[contains(@class, 'navbar__link--active')]/text())[last()]",
+ "type": "xpath",
+ "global": true,
+ "default_value": "Documentation"
+ },
+ "lvl1": "header h1",
+ "lvl2": "article h2",
+ "lvl3": "article h3",
+ "lvl4": "article h4",
+ "lvl5": "article h5, article td:first-child",
+ "lvl6": "article h6",
+ "text": "article p, article li, article td:last-child"
+ },
+ "strip_chars": " .,;:#",
+ "custom_settings": {
+ "separatorsToIndex": "_",
+ "attributesForFaceting": [
+ "language",
+ "version",
+ "type",
+ "docusaurus_tag"
+ ],
+ "attributesToRetrieve": [
+ "hierarchy",
+ "content",
+ "anchor",
+ "url",
+ "url_without_anchor",
+ "type"
+ ]
+ },
+ "conversation_id": [
+ "833762294"
+ ]
+}
\ No newline at end of file
diff --git a/docs/docs-upcoming/11_celery_background_tasks/01_project_overview/README.md b/docs/docs-upcoming/11_celery_background_tasks/01_project_overview/README.md
deleted file mode 100644
index 17d79a19..00000000
--- a/docs/docs-upcoming/11_celery_background_tasks/01_project_overview/README.md
+++ /dev/null
@@ -1 +0,0 @@
-# Project overview
\ No newline at end of file
diff --git a/docs/docs-upcoming/11_celery_background_tasks/README.md b/docs/docs-upcoming/11_celery_background_tasks/README.md
deleted file mode 100644
index 742f910c..00000000
--- a/docs/docs-upcoming/11_celery_background_tasks/README.md
+++ /dev/null
@@ -1 +0,0 @@
-# Flask-Smorest for more efficient development
\ No newline at end of file
diff --git a/docs/docs-upcoming/11_celery_background_tasks/_category_.json b/docs/docs-upcoming/11_celery_background_tasks/_category_.json
deleted file mode 100644
index 4af7a57b..00000000
--- a/docs/docs-upcoming/11_celery_background_tasks/_category_.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "label": "Use Celery for Background Tasks",
- "position": 12
-}
diff --git a/docs/docs/01_course_intro/01_curriculum_overview/README.md b/docs/docs/01_course_intro/01_curriculum_overview/README.md
index d190291a..6835210b 100644
--- a/docs/docs/01_course_intro/01_curriculum_overview/README.md
+++ b/docs/docs/01_course_intro/01_curriculum_overview/README.md
@@ -5,4 +5,7 @@ description: A brief description of the lecture goes here.
# Curriculum overview
-The curriculum overview goes here.
\ No newline at end of file
+import DocCategoryIndex from '@theme/DocCardList';
+import {useDocsSidebar} from '@docusaurus/theme-common/internal';
+
+
\ No newline at end of file
diff --git a/docs/docs/01_course_intro/04_what_is_rest_api/README.md b/docs/docs/01_course_intro/04_what_is_rest_api/README.md
index 0dd5146a..c77fa25c 100644
--- a/docs/docs/01_course_intro/04_what_is_rest_api/README.md
+++ b/docs/docs/01_course_intro/04_what_is_rest_api/README.md
@@ -84,7 +84,7 @@ An API client can be any device, such as a web app or a mobile app.
### Making an API for your own consumption
-Make software companies make APIs that only they use (so they aren't fully public).
+Many software companies make APIs that only they use (so they aren't fully public).
Here's an example. You're making a multiplayer mobile game, and you need to store information about the moves that your character is making.
@@ -109,7 +109,7 @@ REST APIs deal in resources, so every individual "thing" that can be named is a
The main characteristics (or constraints) of a REST API are:
1. **Uniform interface**. Whichever way clients should access a certain resource should also be the way the access other resources. Clients should have a single way to retrieve resources.
-2. **Client-server**. Clients should know the endpoints of the API, but they should not be coupled to the development of the API. A client or a servevr may be swapped out for a different implementation without the other noticing.
+2. **Client-server**. Clients should know the endpoints of the API, but they should not be coupled to the development of the API. A client or a server may be swapped out for a different implementation without the other noticing.
3. **Stateless**. The server (API) doesn't store anything about previous client requests. Each client request is treated as a brand new client. If the client needs the server to personalize the response, then the client must send the server whatever information the server needs in order to do so.
4. **Cacheable**. The client or server must be able to cache the resources returned by the API. This is a very general constraint, but it's an important one.
5. **Layered system**. REST APIs may be developed as multiple layers, where each layer interacts [only with the layer above and below it](https://excalidraw.com/#json=or3Umoigss4yIeuKg3cO8,qH6uDDCXc7DSjweqNvlmzw).
@@ -156,7 +156,7 @@ We'll deal with user authentication in a later section, but that's what the lock
| `GET` | `/store` | Get a list of all stores. |
| `POST` | `/store` | Create a store. |
| `GET` | `/store/{id}` | Get a single store, given its unique id. |
-| `POST` | `/store/{id}` | Delete a store, given its unique id. |
+| `DELETE` | `/store/{id}` | Delete a store, given its unique id. |
### Items
@@ -191,4 +191,4 @@ Then, over the following sections, we'll improve on this REST API. We'll add:
- Add user authentication.
- Add item tagging.
- Add an admin panel so changing data manually is a bit easier.
-- And much more!
\ No newline at end of file
+- And much more!
diff --git a/docs/docs/01_course_intro/index.md b/docs/docs/01_course_intro/index.md
index b0185d43..de393ea9 100644
--- a/docs/docs/01_course_intro/index.md
+++ b/docs/docs/01_course_intro/index.md
@@ -4,6 +4,12 @@ id: intro
# REST APIs with Flask and Python
+import VideoEmbed from "@site/src/components/VideoEmbed";
+
+
+
+
+
Hi, and welcome!
REST APIs with Flask and Python is a complete course that teaches you how to develop complete, professional REST APIs using **Flask**, **PostgreSQL**, and **Docker**.
diff --git a/docs/docs/03_first_rest_api/01_project_overview/README.md b/docs/docs/03_first_rest_api/01_project_overview/README.md
index 67beae7f..7d958e72 100644
--- a/docs/docs/03_first_rest_api/01_project_overview/README.md
+++ b/docs/docs/03_first_rest_api/01_project_overview/README.md
@@ -5,6 +5,12 @@ description: A first look at the project we'll build in this section.
# Overview of your first REST API
+import VideoEmbed from "@site/src/components/VideoEmbed";
+
+
+
+
+
In this section we'll make a simple REST API that allows us to:
- Create stores, each with a `name` and a list of stocked `items`.
@@ -15,6 +21,10 @@ In this section we'll make a simple REST API that allows us to:
This is how the interaction will go!
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
## Create stores
Request:
diff --git a/docs/docs/03_first_rest_api/02_getting_set_up/README.md b/docs/docs/03_first_rest_api/02_getting_set_up/README.md
index b6f0ff8d..140be5ba 100644
--- a/docs/docs/03_first_rest_api/02_getting_set_up/README.md
+++ b/docs/docs/03_first_rest_api/02_getting_set_up/README.md
@@ -5,6 +5,12 @@ description: Set up a Flask project and create the Flask app.
# Getting set up
+import VideoEmbed from "@site/src/components/VideoEmbed";
+
+
+
+
+
Create a virtual environment and activate it.
```
diff --git a/docs/docs/03_first_rest_api/03_first_rest_api_endpoint/README.md b/docs/docs/03_first_rest_api/03_first_rest_api_endpoint/README.md
index 53ad5a38..4bcfaf18 100644
--- a/docs/docs/03_first_rest_api/03_first_rest_api_endpoint/README.md
+++ b/docs/docs/03_first_rest_api/03_first_rest_api_endpoint/README.md
@@ -5,6 +5,10 @@ description: Learn how to define a REST API endpoint using Flask.
# Your First REST API Endpoint
+import LockedVideoEmbed from "@site/src/components/LockedVideoEmbed";
+
+
+
Let's start off by defining where we'll store our data. In most REST APIs, you'd store your data in a database. For now, and for simplicity, we'll store it in a Python list.
Later on we'll work on making this data dynamic. For now let's use some sample data.
diff --git a/docs/docs/03_first_rest_api/Insomnia_section3.json b/docs/docs/03_first_rest_api/Insomnia_section3.json
new file mode 100644
index 00000000..b8885135
--- /dev/null
+++ b/docs/docs/03_first_rest_api/Insomnia_section3.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:36:47.360Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_e15dafc098ac4a2198304d2aead2a5b9","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900815265,"created":1666123912423,"url":"http://127.0.0.1:5000/store/My Store/item","name":"/store//item Create item in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Table\",\n\t\"price\": 17.99\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423081,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8b9c03412d0e463fabe784d205f1d604","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666124528874,"created":1666124528874,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528874,"_type":"request_group"},{"_id":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","parentId":null,"modified":1666991857781,"created":1666122928011,"name":"Section 3","description":"","scope":"collection","_type":"workspace"},{"_id":"req_697ca0714a3d4e94819411e3df0a2a17","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900846590,"created":1666124316888,"url":"http://127.0.0.1:5000/store/My store3/item","name":"/store//item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423056,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9451df3aae714e93a8ed529b3a1f99c2","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666124555354,"created":1666122990495,"url":"http://127.0.0.1:5000/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423031,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6363c8d4deb74b5bbccb1e2105277dac","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900812784,"created":1666124168137,"url":"http://127.0.0.1:5000/store/My store3","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124422956,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0a9c4822679b4eae92dec7432fe144b8","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900810115,"created":1666123651275,"url":"http://127.0.0.1:5000/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store3\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124422881,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_19db457230041d88ca9420d1b3c0f1f02bbcae93","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928025,"created":1666122928025,"name":"Base Environment","data":{},"dataPropertyOrder":null,"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_19db457230041d88ca9420d1b3c0f1f02bbcae93","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928027,"created":1666122928027,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_c5b803a7c6514ff29573e26487d898d4","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928018,"created":1666122928018,"fileName":"Your First REST API","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/05_flask_smorest/02_data_model_improvements/README.md b/docs/docs/05_flask_smorest/02_data_model_improvements/README.md
index 126ef751..c6d515fe 100644
--- a/docs/docs/05_flask_smorest/02_data_model_improvements/README.md
+++ b/docs/docs/05_flask_smorest/02_data_model_improvements/README.md
@@ -89,9 +89,14 @@ CMD ["flask", "run", "--host", "0.0.0.0"]
-
## New files
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+
+There are two Insomnia files for this section: one for lectures 1-5 (before adding Docker), and one for the other lectures (after adding Docker).
+:::
+
Let's start off by creating a `requirements.txt` file with all our dependencies:
```txt title="requirements.txt"
@@ -245,6 +250,8 @@ def create_store():
```py title="app.py"
+import uuid
+
@app.post("/store")
def create_store():
store_data = request.get_json()
@@ -255,6 +262,8 @@ def create_store():
return store
```
+Here we add a new import, [the `uuid` module](https://docs.python.org/3/library/uuid.html). We will be using it to create unique IDs for our stores and items instead of relying on the uniqueness of their names.
+
diff --git a/docs/docs/05_flask_smorest/07_marshmallow_schemas/README.md b/docs/docs/05_flask_smorest/07_marshmallow_schemas/README.md
index 5a802257..02b73e64 100644
--- a/docs/docs/05_flask_smorest/07_marshmallow_schemas/README.md
+++ b/docs/docs/05_flask_smorest/07_marshmallow_schemas/README.md
@@ -37,7 +37,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
```
A couple of weird things maybe!
diff --git a/docs/docs/05_flask_smorest/07_marshmallow_schemas/end/schemas.py b/docs/docs/05_flask_smorest/07_marshmallow_schemas/end/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/05_flask_smorest/07_marshmallow_schemas/end/schemas.py
+++ b/docs/docs/05_flask_smorest/07_marshmallow_schemas/end/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/05_flask_smorest/08_validation_with_marshmallow/end/schemas.py b/docs/docs/05_flask_smorest/08_validation_with_marshmallow/end/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/05_flask_smorest/08_validation_with_marshmallow/end/schemas.py
+++ b/docs/docs/05_flask_smorest/08_validation_with_marshmallow/end/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/05_flask_smorest/08_validation_with_marshmallow/start/schemas.py b/docs/docs/05_flask_smorest/08_validation_with_marshmallow/start/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/05_flask_smorest/08_validation_with_marshmallow/start/schemas.py
+++ b/docs/docs/05_flask_smorest/08_validation_with_marshmallow/start/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/05_flask_smorest/09_decorating_responses/end/schemas.py b/docs/docs/05_flask_smorest/09_decorating_responses/end/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/05_flask_smorest/09_decorating_responses/end/schemas.py
+++ b/docs/docs/05_flask_smorest/09_decorating_responses/end/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/05_flask_smorest/09_decorating_responses/start/schemas.py b/docs/docs/05_flask_smorest/09_decorating_responses/start/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/05_flask_smorest/09_decorating_responses/start/schemas.py
+++ b/docs/docs/05_flask_smorest/09_decorating_responses/start/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/05_flask_smorest/Insomnia_section5_Docker.json b/docs/docs/05_flask_smorest/Insomnia_section5_Docker.json
new file mode 100644
index 00000000..d31b9426
--- /dev/null
+++ b/docs/docs/05_flask_smorest/Insomnia_section5_Docker.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:36:20.139Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_08302ba35f784bdc9fa2edc0cb080287","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985452213,"created":1666905719010,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_0bc4d91251f54e1d8e00966a259b35bc","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719008,"created":1666905719008,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_e6c8aab80c134d35810fd37d43cce51e","parentId":null,"modified":1666991880304,"created":1666905718998,"name":"Section 5 - Docker","description":"","scope":"collection","_type":"workspace"},{"_id":"req_6fdedbe47a9941af9b8459816f179274","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985886605,"created":1666905719013,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0c240b23280746a6a1a56d7644fb89ce","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666987464108,"created":1666905719011,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fc255f6789fe45ed80b2ef83e6bb6645","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985462540,"created":1666905719014,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b42e3c4d855a433394ac1a8a60c2b91b","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666985467338,"created":1666905719020,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_80dee5df10c347198d8f12d85703d582","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719016,"created":1666905719016,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_9a89b2ecfc61457d8cac15985597c0a0","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666986841489,"created":1666905719023,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_3d189bf5d88349e3bce363a420407f65","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666987468265,"created":1666905719018,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": \"8efca659f8674c56b5cd035ecc0d42ec\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_35d865c76bce4e1b9c378d82ece413f7","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666985474126,"created":1666905719019,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_c2bf495d5cbb49d8b933b832a717662a","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666987071504,"created":1666905719022,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_adf22718b4e044e5b54b37c869463582","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666985430514,"created":1666905719000,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_210b7ba8709f44f29c305ed544da17c3","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719004,"created":1666905719004,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_7a427f233a494727845a45ba1325ea85","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719034,"created":1666905719007,"fileName":"Flask-Smorest-Docker","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/05_flask_smorest/Insomnia_section5_before_Docker.json b/docs/docs/05_flask_smorest/Insomnia_section5_before_Docker.json
new file mode 100644
index 00000000..ed6eaddd
--- /dev/null
+++ b/docs/docs/05_flask_smorest/Insomnia_section5_before_Docker.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:35:47.649Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_3d2b5cd58a4b4a6983c133118c5f8027","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666125193227,"created":1666124761134,"url":"http://127.0.0.1:5000/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_afac4dd2683746c586c6ff61228611de","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666125229064,"created":1666124761133,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","parentId":null,"modified":1666991873213,"created":1666124761123,"name":"Section 5 before Docker","description":"","scope":"collection","_type":"workspace"},{"_id":"req_bd3ecff11e5b49baa489812528235afb","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902781180,"created":1666124761139,"url":"http://127.0.0.1:5000/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b9dafd45675e4c478fa4dd125f4827b3","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902941803,"created":1666124761136,"url":"http://127.0.0.1:5000/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_34cbd59313d44bbfa4fd70166e341b05","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902749338,"created":1666124977832,"url":"http://127.0.0.1:5000/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_637d0fb6ba9d4c25b6ad9f5bdda73036","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902961406,"created":1666125038450,"url":"http://127.0.0.1:5000/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_91ec9103821245f69f82aa78362f81e1","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666125224286,"created":1666124761144,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_e581f2420345418c84d71dbed226b6da","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666125710431,"created":1666125184534,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d48cf679c2664c9bb566b600634b966f","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902939274,"created":1666124761145,"url":"http://127.0.0.1:5000/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": \"f48f94a4760e40d39debf155396a9dec\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_8982d9bcce734f60a9f27a8eb1fc748c","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666125332019,"created":1666124928966,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_99fbb0c34cd049f1bb8ac4e944f0ae6d","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902838552,"created":1666125104208,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_6b3e8bb38d0c4154826d63642b863687","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761125,"created":1666124761125,"name":"Base Environment","data":{},"dataPropertyOrder":null,"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_9b95c15dadb44c03bf60cc7386095847","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761128,"created":1666124761128,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_cfb94f75feff4930966c80f350b1e115","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761155,"created":1666124761131,"fileName":"Flask-Smorest","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/06_sql_storage_sqlalchemy/01_project_overview_sqlalchemy/README.md b/docs/docs/06_sql_storage_sqlalchemy/01_project_overview_sqlalchemy/README.md
index 94c15cec..625bb557 100644
--- a/docs/docs/06_sql_storage_sqlalchemy/01_project_overview_sqlalchemy/README.md
+++ b/docs/docs/06_sql_storage_sqlalchemy/01_project_overview_sqlalchemy/README.md
@@ -5,6 +5,10 @@ description: Let's look at what we'll do in this section. There are no changes t
# Project Overview (and why use SQLAlchemy)
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
In this section we'll make absolutely no changes to the API! However, we will completely change the way we store data.
Up until now, we've been storing data in an "in-memory database": a couple of Python dictionaries. When we stop the app, the data is destroyed. This is obviously not great, so we want to move to a proper store that can keep data around between app restarts!
diff --git a/docs/docs/06_sql_storage_sqlalchemy/02_create_simple_sqlalchemy_model/start/schemas.py b/docs/docs/06_sql_storage_sqlalchemy/02_create_simple_sqlalchemy_model/start/schemas.py
index 0a4ff8d4..b809ed37 100644
--- a/docs/docs/06_sql_storage_sqlalchemy/02_create_simple_sqlalchemy_model/start/schemas.py
+++ b/docs/docs/06_sql_storage_sqlalchemy/02_create_simple_sqlalchemy_model/start/schemas.py
@@ -5,7 +5,7 @@ class ItemSchema(Schema):
id = fields.Str(dump_only=True)
name = fields.Str(required=True)
price = fields.Float(required=True)
- store_id = fields.Int(required=True)
+ store_id = fields.Str(required=True)
class ItemUpdateSchema(Schema):
diff --git a/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/models/__init__.py b/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/models/__init__.py
index b57f3f8a..7cab8b1b 100644
--- a/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/models/__init__.py
+++ b/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/models/__init__.py
@@ -1,5 +1,2 @@
-from models.user import UserModel
from models.item import ItemModel
-from models.tag import TagModel
from models.store import StoreModel
-from models.item_tags import ItemsTags
diff --git a/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/requirements.txt b/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/requirements.txt
index 4764bf34..77fe98e4 100644
--- a/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/requirements.txt
+++ b/docs/docs/06_sql_storage_sqlalchemy/09_delete_models_sqlalchemy/end/requirements.txt
@@ -1,4 +1,5 @@
flask
flask-smorest
+flask-sqlalchemy
python-dotenv
marshmallow
\ No newline at end of file
diff --git a/docs/docs/06_sql_storage_sqlalchemy/Insomnia_section6.json b/docs/docs/06_sql_storage_sqlalchemy/Insomnia_section6.json
new file mode 100644
index 00000000..3d75039d
--- /dev/null
+++ b/docs/docs/06_sql_storage_sqlalchemy/Insomnia_section6.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:30:25.805Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_8612530e54144a039af84006ee8c882d","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689179,"created":1666987689179,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_7ed8d16fd87545519f2f64b2613ea84a","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689178,"created":1666987689178,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_a6cd641e98494bca9a11fe77b66c7e37","parentId":null,"modified":1666987689171,"created":1666987689171,"name":"Section 6","description":"","scope":"collection","_type":"workspace"},{"_id":"req_335002433e9745068d074f1f942ddde2","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689183,"created":1666987689183,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4f7b9d616b0e44ca94ca51cc71660da0","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666990320166,"created":1666987689181,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9228903cf7a54601a51a59f6a6692363","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689184,"created":1666987689184,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d1d499ead63e469ca04571899cc4759f","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689190,"created":1666987689190,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8761c7b0aa5142cba8985868cbda3de2","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689186,"created":1666987689186,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_94738c7e8c774bd597ffe97bf7b921b6","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689194,"created":1666987689194,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0624b67ef6b841f482b7e7522fb6f405","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666990328367,"created":1666987689187,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b2651043ea5e4b33b073f260712fb114","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689189,"created":1666987689189,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_640f313dbd5a4bfcbf98081e2fab6d4a","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689192,"created":1666987689192,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_892efa21f8454221972d0c77a336872c","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689172,"created":1666987689172,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_aff586a35c4c49aa91c5defb067355bf","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689174,"created":1666987689174,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_4e7424f78749436bacdb44d3a1eba77a","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689205,"created":1666987689176,"fileName":"Section 6","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/07_sqlalchemy_many_to_many/01_section_changes/README.md b/docs/docs/07_sqlalchemy_many_to_many/01_section_changes/README.md
index 813f9e0f..a9086470 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/01_section_changes/README.md
+++ b/docs/docs/07_sqlalchemy_many_to_many/01_section_changes/README.md
@@ -5,6 +5,10 @@ description: In this section we add Tags to our Stores, and link these to Items
# Changes in this section
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
It's common for online stores to use "tags" to group items and to be able to search for them a bit more easily.
For example, an item "Chair" could be tagged with "Furniture" and "Office".
diff --git a/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/README.md b/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/README.md
index 10e05c2d..3e25e4c1 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/README.md
+++ b/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/README.md
@@ -25,7 +25,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
```
diff --git a/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/end/models/tag.py b/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/end/models/tag.py
index c84ee7cb..0bab33a9 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/end/models/tag.py
+++ b/docs/docs/07_sqlalchemy_many_to_many/02_one_to_many_review/end/models/tag.py
@@ -6,6 +6,6 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
diff --git a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/README.md b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/README.md
index df2ffa1e..4171bb03 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/README.md
+++ b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/README.md
@@ -85,7 +85,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
# highlight-start
diff --git a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/end/models/tag.py b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/end/models/tag.py
+++ b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/start/models/tag.py b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/start/models/tag.py
index c84ee7cb..0bab33a9 100644
--- a/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/start/models/tag.py
+++ b/docs/docs/07_sqlalchemy_many_to_many/03_many_to_many_relationships/start/models/tag.py
@@ -6,6 +6,6 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
diff --git a/docs/docs/07_sqlalchemy_many_to_many/Insomnia_section7.json b/docs/docs/07_sqlalchemy_many_to_many/Insomnia_section7.json
new file mode 100644
index 00000000..abf8c055
--- /dev/null
+++ b/docs/docs/07_sqlalchemy_many_to_many/Insomnia_section7.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:30:50.558Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_379d0e42420f466bbad1b7481e5e7816","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991794866,"created":1666990973919,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_86b5e8072a894c409febe46716e99809","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990939045,"created":1666990939045,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"wrk_6efa5c8b8fa142a28f436b209fba66fa","parentId":null,"modified":1666990745588,"created":1666990745588,"name":"Section 7","description":"","scope":"collection","_type":"workspace"},{"_id":"req_85adfd198935497bb7aedb266beb5bf3","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991788350,"created":1666990945502,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4765f7ca8e1e46308cdde255d09a2ffc","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991810641,"created":1666991378432,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f07aab6ead044ca7bba0de3437ab08c4","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991779049,"created":1666991031108,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_77d1a5f225c54acbb27bac15010722ad","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991824192,"created":1666991489163,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d60510ab22b2499abb20a63629e30fcd","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991828682,"created":1666991524256,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ab3c728a796e4b4ca51803248e1b0650","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745596,"created":1666990745596,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_597937a09435404ebe2200cbaeed101d","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745596,"created":1666990745596,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"req_a9d43bb23e1246da94aec50b9b9ca652","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745601,"created":1666990745601,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_8a36225a08bb4dfbbf98fd983b0d4a5f","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666991654175,"created":1666990745599,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_303507538c0f408eb6d91784b7ed8d36","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745602,"created":1666990745602,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f4776751aecc4c6eafb264dc2d2c24cb","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745609,"created":1666990745609,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_baa111a1ff5849b4838637f09844bfde","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745604,"created":1666990745604,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_e6bc2422c8cf4f119c7dc10251a9af65","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745611,"created":1666990745611,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6c72c92f81924ce7bc26ceb488fd64ff","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666991658886,"created":1666990745605,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e86e0877045640d690454a99b176f3a2","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745607,"created":1666990745607,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f0c4a3d747a543249131e19ceea79e56","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745610,"created":1666990745610,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_7609e8f1315a4d77af52a6ba50f48205","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745590,"created":1666990745590,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_ce9759718e054191a685cec521ed7afc","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745592,"created":1666990745592,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_0f62897a05a449f9845b4c71eeb892b3","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745620,"created":1666990745594,"fileName":"Section 7","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/01_section_changes/README.md b/docs/docs/08_flask_jwt_extended/01_section_changes/README.md
index e83323d4..18363c61 100644
--- a/docs/docs/08_flask_jwt_extended/01_section_changes/README.md
+++ b/docs/docs/08_flask_jwt_extended/01_section_changes/README.md
@@ -5,6 +5,10 @@ description: Overview of the API endpoints we'll use for user registration and a
# Changes in this section
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
In this section we will add the following endpoints:
| Method | Endpoint | Description |
diff --git a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/Dockerfile b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/models/tag.py b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/Dockerfile b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/models/tag.py b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/04_flask_jwt_extended_setup/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/Dockerfile b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/models/tag.py b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/Dockerfile b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/models/tag.py b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/05_user_model_and_schema/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/Dockerfile b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/models/tag.py b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/Dockerfile b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/models/tag.py b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/06_registering_users_rest_api/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/Dockerfile b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/models/tag.py b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/Dockerfile b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/models/tag.py b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/07_login_users_rest_api/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/Dockerfile b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/models/tag.py b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/Dockerfile b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/models/tag.py b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/08_protect_resources_with_jwt_required/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/Dockerfile b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/models/tag.py b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/Dockerfile b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/models/tag.py b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/09_jwt_claims_and_authorization/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/Dockerfile b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/models/tag.py b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/Dockerfile b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/models/tag.py b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/10_logout_users_rest_api/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/Dockerfile b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/models/tag.py b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/end/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/Dockerfile b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/Dockerfile
index 00c70b5b..652afba1 100644
--- a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/Dockerfile
+++ b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/Dockerfile
@@ -1,6 +1,7 @@
FROM python:3.10
+EXPOSE 5000
WORKDIR /app
COPY ./requirements.txt requirements.txt
RUN pip install --no-cache-dir --upgrade -r requirements.txt
COPY . .
-CMD ["gunicorn", "--bind", "0.0.0.0:80", "app:create_app()"]
\ No newline at end of file
+CMD ["flask", "run", "--host", "0.0.0.0"]
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/models/tag.py b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/models/tag.py
+++ b/docs/docs/08_flask_jwt_extended/12_token_refreshing_flask_jwt_extended/start/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/docs/docs/08_flask_jwt_extended/Insomnia_section8_before_chaining.json b/docs/docs/08_flask_jwt_extended/Insomnia_section8_before_chaining.json
new file mode 100644
index 00000000..c884368d
--- /dev/null
+++ b/docs/docs/08_flask_jwt_extended/Insomnia_section8_before_chaining.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:31:21.063Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_adb596c3d0ee48e2b009a555297f36ac","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667331428779,"created":1667328670383,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_3426c101e9094fa79fbf96cf1ec23fae","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1667328596182,"created":1667328596182,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"wrk_101d091b922e44c28f66528e9ef2ae37","parentId":null,"modified":1666991842388,"created":1666991842388,"name":"Section 8","description":"","scope":"collection","_type":"workspace"},{"_id":"req_fe639dc55a2d439f9aa7a6bceee6a9fa","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332404117,"created":1667328597818,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5e7ca3df73314f8c839493d53528760b","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332406439,"created":1667331560707,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_bc66397203734df4b4eb6d153d8d3ec3","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1668007854634,"created":1667332459073,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_953d7fdcaf1f433b9b3b0cdf6453b0cd","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332353929,"created":1667328704142,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_362ff303b1054bd0b0d62522803aea64","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842419,"created":1666991842419,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_815efb55c04548dea5dfec2e2f69ebcb","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842417,"created":1666991842417,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_f613fc18d27648daa00d6b78deea5b66","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842418,"created":1666991842418,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e899763b1c0a46ad9eb47f9e628aa643","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842422,"created":1666991842422,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_266cac65472a4a118929460e58893fb0","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842421,"created":1666991842421,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e63e0532c2c340aa8ed6643f0ae1b4ec","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842424,"created":1666991842424,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5c6887cfb9c94dc2aa2fe76d525fecac","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842426,"created":1666991842426,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_2ba32c3564f3456aa1c8731323508968","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1666991842400,"created":1666991842400,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_a18660fe822f44828b330ba9a4d3946a","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842399,"created":1666991842399,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"req_047bf72b98214de4a8f711fd46b73eb4","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1666991842403,"created":1666991842403,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_57daa411077044a98d3b2534ee735703","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1667332324728,"created":1666991842402,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6c1af0972dbe4faebf5973d95670c241","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1667332341585,"created":1666991842405,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0d1c09067c6a419a9096b32da16d01a3","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332272845,"created":1666991842412,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842407,"created":1666991842407,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_dbdfc5218bf54bfab39db152b3ffe982","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332288041,"created":1666991842414,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_32c5d69aec8f44fdb33852b456c99b7a","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332259971,"created":1666991842408,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_1843f2db017842b993251abbedeb2e8b","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332298429,"created":1666991842410,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d311f219368d46a6b6d92be142a32763","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332311745,"created":1666991842413,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_52ad539864c4425884f6394f62627cb7","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1667329454452,"created":1666991842391,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_bc7c508b3eed4f2485782e9d7177762e","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842395,"created":1666991842395,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_75bd139c1688445faff87b21105f8df1","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842435,"created":1666991842397,"fileName":"Section 8","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/08_flask_jwt_extended/Insomnia_section8_chaining.json b/docs/docs/08_flask_jwt_extended/Insomnia_section8_chaining.json
new file mode 100644
index 00000000..a0a0f60f
--- /dev/null
+++ b/docs/docs/08_flask_jwt_extended/Insomnia_section8_chaining.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-09T15:31:42.216Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_00cda5fbc60a4905bf5b8e67aa7dadb4","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566874,"created":1667332566874,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566872,"created":1667332566872,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","parentId":null,"modified":1667332566837,"created":1667332566837,"name":"Section 8 - Chaining","description":"","scope":"collection","_type":"workspace"},{"_id":"req_0ae766df1c25481e83bd6ade061a919b","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667676377948,"created":1667650753174,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_252ddd492b9242ffb1a6fe21e25534c5","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667650976611,"created":1667332566872,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fe8e836ebd4a44cd9f37ff8738e7ed98","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667650979775,"created":1667332566877,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6a638b0dfd3040118a0282fe5a49b5fb","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566878,"created":1667332566878,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_229bc7e2601e44cb82eb3e5eafa90202","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566875,"created":1667332566875,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ba56440f8f204525a13fbdfbd2273ae0","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566864,"created":1667332566864,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_db9477d576514920b5a9e1d2d82d2254","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566861,"created":1667332566861,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_e2bc3c7dd1c240baad60b3881359bf38","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566862,"created":1667332566862,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ae7151238fe84a65b5b1064b87cef5bd","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566867,"created":1667332566867,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9237adf4f3e74e1b9aa8dbb15680c2f3","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566866,"created":1667332566866,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_c11ab9d081754c3e95f0eed61219454a","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566868,"created":1667332566868,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_03468f66652a42dcbd34ef05ce4fd714","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566870,"created":1667332566870,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_22eb90da9d974ac2880b9207d6d11c01","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566845,"created":1667332566845,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_6315121566934d098d5f963bb2b25679","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566844,"created":1667332566844,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"req_44b8b847e3bd4b35bb7c5d2df5e0ee94","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566849,"created":1667332566849,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_3efb83da0cb34711961a59b6b3b39278","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566848,"created":1667332566848,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_24669eae6530416094eb2c746ae577ed","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566851,"created":1667332566851,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_41e02aac89e5447fb70b42a5fbb6e42d","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667650833785,"created":1667332566857,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_68ade160b31f446995815fec3dc30a93","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566853,"created":1667332566853,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_51ea1a9b34584746a8368ede6f6bfadf","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332848385,"created":1667332566859,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_69cc615e910a4ca7a91382b455c3ceb5","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332840222,"created":1667332566854,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_310092462fe44643bdbcf671dd488033","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332838232,"created":1667332566855,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_260395e8e71c47559f2c70f50618ea38","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332566858,"created":1667332566858,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_c2a4191124a544e9a440f8042644c7b9","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667651225760,"created":1667332566839,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_8a4500f913d7401fa00168eaf32dcb4c","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566841,"created":1667332566841,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_2d4dfbfd115b4f91b44d09ad3c6d0b5b","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566888,"created":1667332566842,"fileName":"Section 8 - Chaining","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/11_deploy_to_render/01_section_overview/README.md b/docs/docs/11_deploy_to_render/01_section_overview/README.md
index f27a269f..03176785 100644
--- a/docs/docs/11_deploy_to_render/01_section_overview/README.md
+++ b/docs/docs/11_deploy_to_render/01_section_overview/README.md
@@ -1,5 +1,9 @@
# Overview of this section
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
In this section, we will figure out how to get our Flask app and put it on a public server so other people can interact with it! This is called "deploying".
There are many services we can use to deploy our app. Most of them have some sort of "free tier" so that you can try the deployment without having to pay anything. Usually, if you want better performance or unlimited usage, you have to pay.
diff --git a/docs/docs/11_deploy_to_render/Insomnia_section11.json b/docs/docs/11_deploy_to_render/Insomnia_section11.json
new file mode 100644
index 00000000..f32ecb97
--- /dev/null
+++ b/docs/docs/11_deploy_to_render/Insomnia_section11.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-18T22:14:08.036Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_92cec23efa0d47a582b4cf476fbe1c7d","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660695,"created":1668007660695,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8173221215364faa9eaf4de28d0b227d","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660692,"created":1668007660692,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"wrk_f14186e0f24a4da9ab3ab8d628227a36","parentId":null,"modified":1668007660646,"created":1668007660646,"name":"Section 11","description":"","scope":"collection","_type":"workspace"},{"_id":"req_70c9c31ae27e47b684428bb88932f96d","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660702,"created":1668007660702,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_a9790bade2c14dd5a87b85088017aa92","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668809637607,"created":1668007660694,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0aa8a2f045e94cea96ba0f7061a26c41","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668678383934,"created":1668007660698,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_1a5f0c9aa22841e0a60e47c6a5f65edc","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668678384453,"created":1668007660701,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_969a6a61d9b74bd3ad27623663999dca","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660697,"created":1668007660697,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_8b7c05ec34874814bbb1ed17f23d7ea3","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660682,"created":1668007660682,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_3083883073354f11bb6c2aa2fcbe76d3","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660679,"created":1668007660679,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_c063f1996fde409f81d62a0e3d20b631","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660681,"created":1668007660681,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_007ed54990944618a9e4bbf4fed9bdc8","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660686,"created":1668007660686,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5739a9e1be2e4fcd8ecdac5142b5e76d","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668678381399,"created":1668007660684,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fbc4905447b04feca058e6f8c0428acf","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660688,"created":1668007660688,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_839409cd69e945b694d46f3101eec0d5","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660690,"created":1668007660690,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fe2a4b3d67664cd194efe09393b9fd02","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660660,"created":1668007660660,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_db95f405b201413889d2ae8918eee2d4","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660658,"created":1668007660658,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"req_b34295f6d8b24000b77f812c9cc2c2cc","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660663,"created":1668007660663,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_90015fc3fcae4301b0d8a5c0355a3d83","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668678375918,"created":1668007660661,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0e20a55b16034f06a3246c4e76f1c387","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660665,"created":1668007660665,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_671694da515a4c4e877008b02cd17f57","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660673,"created":1668007660673,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_11fd3ae720264f0b9480c6277f1a7633","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660668,"created":1668007660668,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_a55050436885439f8393e70546d75641","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660676,"created":1668007660676,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b8cc399abc8749eea66c6967522f8a36","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668678378059,"created":1668007660669,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_8e9e92854eab4e74af765725b54c7d31","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660671,"created":1668007660671,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5303d646b4c44843bc9c8322675f9c54","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668678378608,"created":1668007660675,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_e09818240d524d079150f6fc00963c54","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660648,"created":1668007660648,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_9aa71c77793345cabd413a66ad557bd7","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660652,"created":1668007660652,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_2f42797dc9c6441fb3d3e7b23780dc27","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660725,"created":1668007660654,"fileName":"Section 11","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/12_task_queues_emails/01_send_emails_python_mailgun/README.md b/docs/docs/12_task_queues_emails/01_send_emails_python_mailgun/README.md
index 66b32f46..ac94d5e1 100644
--- a/docs/docs/12_task_queues_emails/01_send_emails_python_mailgun/README.md
+++ b/docs/docs/12_task_queues_emails/01_send_emails_python_mailgun/README.md
@@ -1,5 +1,9 @@
# How to send emails with Python and Mailgun
+:::tip Insomnia files
+Remember to get the Insomnia files for this section or for all sections [here](/insomnia-files/)!
+:::
+
To send e-mails using Python, we are going to use Mailgun, a third party service which actually delivers the messages.
You could use [your own personal account and the built-in `email` and `smtp` libraries](https://blog.teclado.com/learn-python-send-emails/), but most personal e-mail providers will limit how many e-mails you can send per day. Plus, you won't get analytics and a host of other features that you can get with an email service like Mailgun.
diff --git a/docs/docs/12_task_queues_emails/Insomnia_section12.json b/docs/docs/12_task_queues_emails/Insomnia_section12.json
new file mode 100644
index 00000000..d74a68ff
--- /dev/null
+++ b/docs/docs/12_task_queues_emails/Insomnia_section12.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-18T22:12:58.901Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_349d1cc5283848fb92a4911bd38bebc6","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491718,"created":1668809491718,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_86d10d221e114aa2be9542daf31009ec","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491715,"created":1668809491715,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"wrk_3626a93c829b4cf683cbf49c61bdaaef","parentId":null,"modified":1668809491665,"created":1668809491665,"name":"Section 12","description":"","scope":"collection","_type":"workspace"},{"_id":"req_94b040afec0a43e098320c3b03d5f0d7","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491725,"created":1668809491725,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ea98179fc95645199746896edbe91c33","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809520188,"created":1668809491716,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"email\": \"example@gmail.com\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_82977ddde2e14e7c8ca337842483a5f2","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491722,"created":1668809491722,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d0cb7e79bbfd4e97a88ef48ab0ddab14","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491723,"created":1668809491723,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_88445b44c1074ac091314fa911a6e0cf","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491720,"created":1668809491720,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_23333e08fd834798b6cb5ae3fb9a4831","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491705,"created":1668809491705,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_a2feddc6ef5e44a495722d631fb86a4e","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491701,"created":1668809491701,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_fbda11a32a194f8986c6a09bf6368f71","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491703,"created":1668809491703,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4cf6d863192347d2beb9738fffc06aa6","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491708,"created":1668809491708,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_1f08a251169c46e8bbe9aa3b9ef34069","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491706,"created":1668809491706,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fed862a14dfb4fbca5c16a361e9337b2","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491710,"created":1668809491710,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_2ebdc85b06354c5c8a2ac2a12b9f74d6","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491711,"created":1668809491711,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_84fcf23f2c94480db2771b7fdd981998","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491679,"created":1668809491679,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_020cd4f64dbc4a31921e85c95a49d633","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491678,"created":1668809491678,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"req_290cb9eb4d684279aa9735f946009e32","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491683,"created":1668809491683,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e691135e8b7840a188b9b8a6ffee6082","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491681,"created":1668809491681,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4b8b6a31400046d9af34c3420bcb5f1d","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491685,"created":1668809491685,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_eea8d6e13fcb44ca99f683f25e9d7e9f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491694,"created":1668809491694,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_23d1586241d44ecda90d772f973ee792","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491689,"created":1668809491689,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_732f07562b5849b6ae03ee7a327d34d1","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491699,"created":1668809491699,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e67af8716d3e46849f0632c6f9cc845f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491690,"created":1668809491690,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0e44aa1615284e2b9469a5129ba11b9f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491692,"created":1668809491692,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ce38744e96c24a63ac7cb0b14cfb72ec","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491697,"created":1668809491697,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_05389734f73848a3922232b339a3d34d","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491667,"created":1668809491667,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_a60cc8f7a1dc4acfa31828ea71765d5e","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491673,"created":1668809491673,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_b684ea4fa67c4d13befbc1e6ee30fdb6","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491739,"created":1668809491675,"fileName":"Section 12","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docs/Insomnia_all_sections.json b/docs/docs/Insomnia_all_sections.json
new file mode 100644
index 00000000..afa5603f
--- /dev/null
+++ b/docs/docs/Insomnia_all_sections.json
@@ -0,0 +1 @@
+{"_type":"export","__export_format":4,"__export_date":"2022-11-18T22:13:36.391Z","__export_source":"insomnia.desktop.app:v2022.6.0","resources":[{"_id":"req_9451df3aae714e93a8ed529b3a1f99c2","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666124555354,"created":1666122990495,"url":"http://127.0.0.1:5000/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423031,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8b9c03412d0e463fabe784d205f1d604","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666124528874,"created":1666124528874,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528874,"_type":"request_group"},{"_id":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","parentId":null,"modified":1666991857781,"created":1666122928011,"name":"Section 3","description":"","scope":"collection","_type":"workspace"},{"_id":"req_0a9c4822679b4eae92dec7432fe144b8","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900810115,"created":1666123651275,"url":"http://127.0.0.1:5000/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store3\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124422881,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e15dafc098ac4a2198304d2aead2a5b9","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900815265,"created":1666123912423,"url":"http://127.0.0.1:5000/store/My Store/item","name":"/store//item Create item in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Table\",\n\t\"price\": 17.99\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423081,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6363c8d4deb74b5bbccb1e2105277dac","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900812784,"created":1666124168137,"url":"http://127.0.0.1:5000/store/My store3","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124422956,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_697ca0714a3d4e94819411e3df0a2a17","parentId":"fld_8b9c03412d0e463fabe784d205f1d604","modified":1666900846590,"created":1666124316888,"url":"http://127.0.0.1:5000/store/My store3/item","name":"/store//item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423056,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_3d2b5cd58a4b4a6983c133118c5f8027","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666125193227,"created":1666124761134,"url":"http://127.0.0.1:5000/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_afac4dd2683746c586c6ff61228611de","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666125229064,"created":1666124761133,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","parentId":null,"modified":1666991873213,"created":1666124761123,"name":"Section 5 before Docker","description":"","scope":"collection","_type":"workspace"},{"_id":"req_b9dafd45675e4c478fa4dd125f4827b3","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902941803,"created":1666124761136,"url":"http://127.0.0.1:5000/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_bd3ecff11e5b49baa489812528235afb","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902781180,"created":1666124761139,"url":"http://127.0.0.1:5000/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_34cbd59313d44bbfa4fd70166e341b05","parentId":"fld_afac4dd2683746c586c6ff61228611de","modified":1666902749338,"created":1666124977832,"url":"http://127.0.0.1:5000/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d48cf679c2664c9bb566b600634b966f","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902939274,"created":1666124761145,"url":"http://127.0.0.1:5000/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": \"f48f94a4760e40d39debf155396a9dec\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_91ec9103821245f69f82aa78362f81e1","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666125224286,"created":1666124761144,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_8982d9bcce734f60a9f27a8eb1fc748c","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666125332019,"created":1666124928966,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_637d0fb6ba9d4c25b6ad9f5bdda73036","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902961406,"created":1666125038450,"url":"http://127.0.0.1:5000/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_99fbb0c34cd049f1bb8ac4e944f0ae6d","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666902838552,"created":1666125104208,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e581f2420345418c84d71dbed226b6da","parentId":"fld_91ec9103821245f69f82aa78362f81e1","modified":1666125710431,"created":1666125184534,"url":"http://127.0.0.1:5000/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_08302ba35f784bdc9fa2edc0cb080287","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985452213,"created":1666905719010,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_0bc4d91251f54e1d8e00966a259b35bc","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719008,"created":1666905719008,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_e6c8aab80c134d35810fd37d43cce51e","parentId":null,"modified":1666991880304,"created":1666905718998,"name":"Section 5 - Docker","description":"","scope":"collection","_type":"workspace"},{"_id":"req_0c240b23280746a6a1a56d7644fb89ce","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666987464108,"created":1666905719011,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6fdedbe47a9941af9b8459816f179274","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985886605,"created":1666905719013,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fc255f6789fe45ed80b2ef83e6bb6645","parentId":"fld_0bc4d91251f54e1d8e00966a259b35bc","modified":1666985462540,"created":1666905719014,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_3d189bf5d88349e3bce363a420407f65","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666987468265,"created":1666905719018,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": \"8efca659f8674c56b5cd035ecc0d42ec\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_80dee5df10c347198d8f12d85703d582","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719016,"created":1666905719016,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_35d865c76bce4e1b9c378d82ece413f7","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666985474126,"created":1666905719019,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b42e3c4d855a433394ac1a8a60c2b91b","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666985467338,"created":1666905719020,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_c2bf495d5cbb49d8b933b832a717662a","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666987071504,"created":1666905719022,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9a89b2ecfc61457d8cac15985597c0a0","parentId":"fld_80dee5df10c347198d8f12d85703d582","modified":1666986841489,"created":1666905719023,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_8612530e54144a039af84006ee8c882d","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689179,"created":1666987689179,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_7ed8d16fd87545519f2f64b2613ea84a","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689178,"created":1666987689178,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_a6cd641e98494bca9a11fe77b66c7e37","parentId":null,"modified":1666987689171,"created":1666987689171,"name":"Section 6","description":"","scope":"collection","_type":"workspace"},{"_id":"req_4f7b9d616b0e44ca94ca51cc71660da0","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666990320166,"created":1666987689181,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_335002433e9745068d074f1f942ddde2","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689183,"created":1666987689183,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9228903cf7a54601a51a59f6a6692363","parentId":"fld_7ed8d16fd87545519f2f64b2613ea84a","modified":1666987689184,"created":1666987689184,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0624b67ef6b841f482b7e7522fb6f405","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666990328367,"created":1666987689187,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8761c7b0aa5142cba8985868cbda3de2","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689186,"created":1666987689186,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_b2651043ea5e4b33b073f260712fb114","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689189,"created":1666987689189,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d1d499ead63e469ca04571899cc4759f","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689190,"created":1666987689190,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_640f313dbd5a4bfcbf98081e2fab6d4a","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689192,"created":1666987689192,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_94738c7e8c774bd597ffe97bf7b921b6","parentId":"fld_8761c7b0aa5142cba8985868cbda3de2","modified":1666987689194,"created":1666987689194,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ab3c728a796e4b4ca51803248e1b0650","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745596,"created":1666990745596,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_597937a09435404ebe2200cbaeed101d","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745596,"created":1666990745596,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_6efa5c8b8fa142a28f436b209fba66fa","parentId":null,"modified":1666990745588,"created":1666990745588,"name":"Section 7","description":"","scope":"collection","_type":"workspace"},{"_id":"req_8a36225a08bb4dfbbf98fd983b0d4a5f","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666991654175,"created":1666990745599,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store2\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_a9d43bb23e1246da94aec50b9b9ca652","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745601,"created":1666990745601,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_303507538c0f408eb6d91784b7ed8d36","parentId":"fld_597937a09435404ebe2200cbaeed101d","modified":1666990745602,"created":1666990745602,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6c72c92f81924ce7bc26ceb488fd64ff","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666991658886,"created":1666990745605,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chair\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_baa111a1ff5849b4838637f09844bfde","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745604,"created":1666990745604,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_e86e0877045640d690454a99b176f3a2","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745607,"created":1666990745607,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f4776751aecc4c6eafb264dc2d2c24cb","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745609,"created":1666990745609,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f0c4a3d747a543249131e19ceea79e56","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745610,"created":1666990745610,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e6bc2422c8cf4f119c7dc10251a9af65","parentId":"fld_baa111a1ff5849b4838637f09844bfde","modified":1666990745611,"created":1666990745611,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_85adfd198935497bb7aedb266beb5bf3","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991788350,"created":1666990945502,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_86b5e8072a894c409febe46716e99809","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990939045,"created":1666990939045,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_379d0e42420f466bbad1b7481e5e7816","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991794866,"created":1666990973919,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f07aab6ead044ca7bba0de3437ab08c4","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991779049,"created":1666991031108,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4765f7ca8e1e46308cdde255d09a2ffc","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991810641,"created":1666991378432,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_77d1a5f225c54acbb27bac15010722ad","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991824192,"created":1666991489163,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d60510ab22b2499abb20a63629e30fcd","parentId":"fld_86b5e8072a894c409febe46716e99809","modified":1666991828682,"created":1666991524256,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_2ba32c3564f3456aa1c8731323508968","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1666991842400,"created":1666991842400,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_a18660fe822f44828b330ba9a4d3946a","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842399,"created":1666991842399,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_101d091b922e44c28f66528e9ef2ae37","parentId":null,"modified":1666991842388,"created":1666991842388,"name":"Section 8","description":"","scope":"collection","_type":"workspace"},{"_id":"req_57daa411077044a98d3b2534ee735703","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1667332324728,"created":1666991842402,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_047bf72b98214de4a8f711fd46b73eb4","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1666991842403,"created":1666991842403,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6c1af0972dbe4faebf5973d95670c241","parentId":"fld_a18660fe822f44828b330ba9a4d3946a","modified":1667332341585,"created":1666991842405,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_32c5d69aec8f44fdb33852b456c99b7a","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332259971,"created":1666991842408,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842407,"created":1666991842407,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_1843f2db017842b993251abbedeb2e8b","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332298429,"created":1666991842410,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0d1c09067c6a419a9096b32da16d01a3","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332272845,"created":1666991842412,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d311f219368d46a6b6d92be142a32763","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332311745,"created":1666991842413,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_dbdfc5218bf54bfab39db152b3ffe982","parentId":"fld_b2b78ef1cd504663bef29f23cb3fd9a7","modified":1667332288041,"created":1666991842414,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjA3MCwianRpIjoiODA5Njk2MmUtYmNlMy00NjgyLWJkZTUtYjYzMDgwZGU3NmJjIiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyMDcwLCJleHAiOjE2NjczMzI5NzB9.MY-MKMh8mEaX8cWjz0RJZ2JStD7hHBD1j7nB3GT2vks","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_f613fc18d27648daa00d6b78deea5b66","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842418,"created":1666991842418,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_815efb55c04548dea5dfec2e2f69ebcb","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842417,"created":1666991842417,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_362ff303b1054bd0b0d62522803aea64","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842419,"created":1666991842419,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_266cac65472a4a118929460e58893fb0","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842421,"created":1666991842421,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e899763b1c0a46ad9eb47f9e628aa643","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842422,"created":1666991842422,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e63e0532c2c340aa8ed6643f0ae1b4ec","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842424,"created":1666991842424,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5c6887cfb9c94dc2aa2fe76d525fecac","parentId":"fld_815efb55c04548dea5dfec2e2f69ebcb","modified":1666991842426,"created":1666991842426,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fe639dc55a2d439f9aa7a6bceee6a9fa","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332404117,"created":1667328597818,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_3426c101e9094fa79fbf96cf1ec23fae","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1667328596182,"created":1667328596182,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"req_adb596c3d0ee48e2b009a555297f36ac","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667331428779,"created":1667328670383,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_953d7fdcaf1f433b9b3b0cdf6453b0cd","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332353929,"created":1667328704142,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5e7ca3df73314f8c839493d53528760b","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1667332406439,"created":1667331560707,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_bc66397203734df4b4eb6d153d8d3ec3","parentId":"fld_3426c101e9094fa79fbf96cf1ec23fae","modified":1668007854634,"created":1667332459073,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_22eb90da9d974ac2880b9207d6d11c01","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566845,"created":1667332566845,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_6315121566934d098d5f963bb2b25679","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566844,"created":1667332566844,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","parentId":null,"modified":1667332566837,"created":1667332566837,"name":"Section 8 - Chaining","description":"","scope":"collection","_type":"workspace"},{"_id":"req_3efb83da0cb34711961a59b6b3b39278","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566848,"created":1667332566848,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_44b8b847e3bd4b35bb7c5d2df5e0ee94","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566849,"created":1667332566849,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_24669eae6530416094eb2c746ae577ed","parentId":"fld_6315121566934d098d5f963bb2b25679","modified":1667332566851,"created":1667332566851,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_69cc615e910a4ca7a91382b455c3ceb5","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332840222,"created":1667332566854,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_68ade160b31f446995815fec3dc30a93","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566853,"created":1667332566853,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_310092462fe44643bdbcf671dd488033","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332838232,"created":1667332566855,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_41e02aac89e5447fb70b42a5fbb6e42d","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667650833785,"created":1667332566857,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_260395e8e71c47559f2c70f50618ea38","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332566858,"created":1667332566858,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_51ea1a9b34584746a8368ede6f6bfadf","parentId":"fld_68ade160b31f446995815fec3dc30a93","modified":1667332848385,"created":1667332566859,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e2bc3c7dd1c240baad60b3881359bf38","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566862,"created":1667332566862,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_db9477d576514920b5a9e1d2d82d2254","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566861,"created":1667332566861,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_ba56440f8f204525a13fbdfbd2273ae0","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566864,"created":1667332566864,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_9237adf4f3e74e1b9aa8dbb15680c2f3","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566866,"created":1667332566866,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ae7151238fe84a65b5b1064b87cef5bd","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566867,"created":1667332566867,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_c11ab9d081754c3e95f0eed61219454a","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566868,"created":1667332566868,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_03468f66652a42dcbd34ef05ce4fd714","parentId":"fld_db9477d576514920b5a9e1d2d82d2254","modified":1667332566870,"created":1667332566870,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_252ddd492b9242ffb1a6fe21e25534c5","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667650976611,"created":1667332566872,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566872,"created":1667332566872,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"req_00cda5fbc60a4905bf5b8e67aa7dadb4","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566874,"created":1667332566874,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_229bc7e2601e44cb82eb3e5eafa90202","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566875,"created":1667332566875,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fe8e836ebd4a44cd9f37ff8738e7ed98","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667650979775,"created":1667332566877,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_6a638b0dfd3040118a0282fe5a49b5fb","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667332566878,"created":1667332566878,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0ae766df1c25481e83bd6ade061a919b","parentId":"fld_f0dbcc5050af40dbaabdd9bfe69a098f","modified":1667676377948,"created":1667650753174,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fe2a4b3d67664cd194efe09393b9fd02","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660660,"created":1668007660660,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_db95f405b201413889d2ae8918eee2d4","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660658,"created":1668007660658,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_f14186e0f24a4da9ab3ab8d628227a36","parentId":null,"modified":1668007660646,"created":1668007660646,"name":"Section 11","description":"","scope":"collection","_type":"workspace"},{"_id":"req_90015fc3fcae4301b0d8a5c0355a3d83","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668678375918,"created":1668007660661,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b34295f6d8b24000b77f812c9cc2c2cc","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660663,"created":1668007660663,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0e20a55b16034f06a3246c4e76f1c387","parentId":"fld_db95f405b201413889d2ae8918eee2d4","modified":1668007660665,"created":1668007660665,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_b8cc399abc8749eea66c6967522f8a36","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668678378059,"created":1668007660669,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_11fd3ae720264f0b9480c6277f1a7633","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660668,"created":1668007660668,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_8e9e92854eab4e74af765725b54c7d31","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660671,"created":1668007660671,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_671694da515a4c4e877008b02cd17f57","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660673,"created":1668007660673,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5303d646b4c44843bc9c8322675f9c54","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668678378608,"created":1668007660675,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_a55050436885439f8393e70546d75641","parentId":"fld_11fd3ae720264f0b9480c6277f1a7633","modified":1668007660676,"created":1668007660676,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_c063f1996fde409f81d62a0e3d20b631","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660681,"created":1668007660681,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_3083883073354f11bb6c2aa2fcbe76d3","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660679,"created":1668007660679,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_8b7c05ec34874814bbb1ed17f23d7ea3","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660682,"created":1668007660682,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_5739a9e1be2e4fcd8ecdac5142b5e76d","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668678381399,"created":1668007660684,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_007ed54990944618a9e4bbf4fed9bdc8","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660686,"created":1668007660686,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fbc4905447b04feca058e6f8c0428acf","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660688,"created":1668007660688,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_839409cd69e945b694d46f3101eec0d5","parentId":"fld_3083883073354f11bb6c2aa2fcbe76d3","modified":1668007660690,"created":1668007660690,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_a9790bade2c14dd5a87b85088017aa92","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668809417998,"created":1668007660694,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_8173221215364faa9eaf4de28d0b227d","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660692,"created":1668007660692,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"req_92cec23efa0d47a582b4cf476fbe1c7d","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660695,"created":1668007660695,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_969a6a61d9b74bd3ad27623663999dca","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660697,"created":1668007660697,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_0aa8a2f045e94cea96ba0f7061a26c41","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668678383934,"created":1668007660698,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_1a5f0c9aa22841e0a60e47c6a5f65edc","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668678384453,"created":1668007660701,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_70c9c31ae27e47b684428bb88932f96d","parentId":"fld_8173221215364faa9eaf4de28d0b227d","modified":1668007660702,"created":1668007660702,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_84fcf23f2c94480db2771b7fdd981998","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491679,"created":1668809491679,"url":"{{url}}/store","name":"/store Get all store data","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423181,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_020cd4f64dbc4a31921e85c95a49d633","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491678,"created":1668809491678,"name":"Stores","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528974,"_type":"request_group"},{"_id":"wrk_3626a93c829b4cf683cbf49c61bdaaef","parentId":null,"modified":1668809491665,"created":1668809491665,"name":"Section 12","description":"","scope":"collection","_type":"workspace"},{"_id":"req_e691135e8b7840a188b9b8a6ffee6082","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491681,"created":1668809491681,"url":"{{url}}/store","name":"/store Create new store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"My store22\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_2f351442a28746c98995c18ea907feaa"}],"authentication":{},"metaSortKey":-1666124423143.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_290cb9eb4d684279aa9735f946009e32","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491683,"created":1668809491683,"url":"{{url}}/store/STORE_ID","name":"/store/","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423156,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4b8b6a31400046d9af34c3420bcb5f1d","parentId":"fld_020cd4f64dbc4a31921e85c95a49d633","modified":1668809491685,"created":1668809491685,"url":"{{url}}/store/STORE_ID","name":"/store/ Delete store","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666124423131,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_e67af8716d3e46849f0632c6f9cc845f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491690,"created":1668809491690,"url":"{{url}}/item","name":"/item Create item","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Chairs\",\n\t\"price\": 17.99,\n\t\"store_id\": 1\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_c60e217df8494bf1af1c02b872b5430a"},{"id":"pair_e6b6dbc1883d4ee1a90ac154e8fbb3a7","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104220.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_23d1586241d44ecda90d772f973ee792","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491689,"created":1668809491689,"name":"Items","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666124528924,"_type":"request_group"},{"_id":"req_0e44aa1615284e2b9469a5129ba11b9f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491692,"created":1668809491692,"url":"{{url}}/item/ITEM_ID","name":"/item/ Delete item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[{"id":"pair_1b62f1a1d23245439dfc1a356f67cd36","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104214.25,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_eea8d6e13fcb44ca99f683f25e9d7e9f","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491694,"created":1668809491694,"url":"{{url}}/item","name":"/item Get all items","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_d42eaef671e847b2a2eadb8f3af9be22","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104308,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ce38744e96c24a63ac7cb0b14cfb72ec","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491697,"created":1668809491697,"url":"{{url}}/item/ITEM_ID","name":"/item/ Update item","description":"","method":"PUT","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Another Chair\",\n\t\"price\": 20.00\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_4c9b7b960e3b499f8e94f507537195ae"}],"authentication":{},"metaSortKey":-1666125104208,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_732f07562b5849b6ae03ee7a327d34d1","parentId":"fld_23d1586241d44ecda90d772f973ee792","modified":1668809491699,"created":1668809491699,"url":"{{url}}/item/ITEM_ID","name":"/item/ Get item","description":"","method":"GET","body":{},"parameters":[],"headers":[{"id":"pair_117512e4f7834d24ab18754279464356","name":"Authorization","value":"Bearer {{access_token}}","description":""}],"authentication":{},"metaSortKey":-1666125104258,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fbda11a32a194f8986c6a09bf6368f71","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491703,"created":1668809491703,"url":"{{url}}/tag/TAG_ID","name":"/tags/ Get tag","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945502,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_a2feddc6ef5e44a495722d631fb86a4e","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491701,"created":1668809491701,"name":"Tags","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1666990939045,"_type":"request_group"},{"_id":"req_23333e08fd834798b6cb5ae3fb9a4831","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491705,"created":1668809491705,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Get tags in store","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990973919,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_1f08a251169c46e8bbe9aa3b9ef34069","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491706,"created":1668809491706,"url":"{{url}}/store/STORE_ID/tag","name":"/stores//tags Create tag in store","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"name\": \"Tag name\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json"}],"authentication":{},"metaSortKey":-1666990945452,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_4cf6d863192347d2beb9738fffc06aa6","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491708,"created":1668809491708,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Link an item in a store with a tag from the same store","description":"","method":"POST","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945477,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_fed862a14dfb4fbca5c16a361e9337b2","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491710,"created":1668809491710,"url":"{{url}}/item/ITEM_ID/tag/TAG_ID","name":"/item//tag/ Unlink a tag from an item","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945427,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_2ebdc85b06354c5c8a2ac2a12b9f74d6","parentId":"fld_a2feddc6ef5e44a495722d631fb86a4e","modified":1668809491711,"created":1668809491711,"url":"{{url}}/tag/TAG_ID","name":"/tag/ Delete a tag, which must have no associated items.","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1666990945402,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_ea98179fc95645199746896edbe91c33","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809520188,"created":1668809491716,"url":"{{url}}/register","name":"/register Create user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"email\": \"example@gmail.com\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_975ec20d9bec44538591da08c95ccd63"}],"authentication":{},"metaSortKey":-1667328597818,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"fld_86d10d221e114aa2be9542daf31009ec","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491715,"created":1668809491715,"name":"Users","description":"","environment":{},"environmentPropertyOrder":null,"metaSortKey":-1667328596182,"_type":"request_group"},{"_id":"req_349d1cc5283848fb92a4911bd38bebc6","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491718,"created":1668809491718,"url":"{{url}}/user/USER_ID","name":"/user/ Get user","description":"","method":"GET","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328670383,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_88445b44c1074ac091314fa911a6e0cf","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491720,"created":1668809491720,"url":"{{url}}/user/1","name":"/user/ Delete user","description":"","method":"DELETE","body":{},"parameters":[],"headers":[],"authentication":{},"metaSortKey":-1667328597768,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_82977ddde2e14e7c8ca337842483a5f2","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491722,"created":1668809491722,"url":"{{url}}/login","name":"/login Authenticate user","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"}],"authentication":{},"metaSortKey":-1667328597793,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_d0cb7e79bbfd4e97a88ef48ab0ddab14","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491723,"created":1668809491723,"url":"{{url}}/logout","name":"/logout Revoke JWT","description":"","method":"POST","body":{"mimeType":"application/json","text":"{\n\t\"username\": \"jose\",\n\t\"password\": \"1234\"\n}"},"parameters":[],"headers":[{"name":"Content-Type","value":"application/json","id":"pair_716a234feee94c3b9e79966a066fc00d"},{"id":"pair_c27fa3320a6943cfbf87c40b7ca6ab73","name":"Authorization","value":"Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY2NzMzMjQwNiwianRpIjoiMTU2ZTc5MzUtMmYwYy00NDE2LThmYWItODExYzdmNjY0ZDk4IiwidHlwZSI6ImFjY2VzcyIsInN1YiI6MSwibmJmIjoxNjY3MzMyNDA2LCJleHAiOjE2NjczMzMzMDZ9.zht2vTD73oderxN4uBobsywovxHdDjohbDNGk8_Vuaw","description":""}],"authentication":{},"metaSortKey":-1667328597780.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"req_94b040afec0a43e098320c3b03d5f0d7","parentId":"fld_86d10d221e114aa2be9542daf31009ec","modified":1668809491725,"created":1668809491725,"url":"{{url}}/refresh","name":"/refresh Get non-fresh token","description":"","method":"POST","body":{},"parameters":[],"headers":[{"id":"pair_d002eea6b22e4190909fc8366b5a4704","name":"Authorization","value":"Bearer {{refresh_token}}","description":""}],"authentication":{},"metaSortKey":-1667328634100.5,"isPrivate":false,"settingStoreCookies":true,"settingSendCookies":true,"settingDisableRenderRequestBody":false,"settingEncodeUrl":true,"settingRebuildPath":true,"settingFollowRedirects":"global","_type":"request"},{"_id":"env_19db457230041d88ca9420d1b3c0f1f02bbcae93","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928025,"created":1666122928025,"name":"Base Environment","data":{},"dataPropertyOrder":null,"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_19db457230041d88ca9420d1b3c0f1f02bbcae93","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928027,"created":1666122928027,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_c5b803a7c6514ff29573e26487d898d4","parentId":"wrk_6aa19b7d9ecd4f93a3602d257e54a163","modified":1666122928018,"created":1666122928018,"fileName":"Your First REST API","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_6b3e8bb38d0c4154826d63642b863687","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761125,"created":1666124761125,"name":"Base Environment","data":{},"dataPropertyOrder":null,"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_9b95c15dadb44c03bf60cc7386095847","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761128,"created":1666124761128,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_cfb94f75feff4930966c80f350b1e115","parentId":"wrk_acbd4ac11e8a40e5be2e6dad8ec6174a","modified":1666124761155,"created":1666124761131,"fileName":"Flask-Smorest","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_adf22718b4e044e5b54b37c869463582","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666985430514,"created":1666905719000,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_210b7ba8709f44f29c305ed544da17c3","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719004,"created":1666905719004,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_7a427f233a494727845a45ba1325ea85","parentId":"wrk_e6c8aab80c134d35810fd37d43cce51e","modified":1666905719034,"created":1666905719007,"fileName":"Flask-Smorest-Docker","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_892efa21f8454221972d0c77a336872c","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689172,"created":1666987689172,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_aff586a35c4c49aa91c5defb067355bf","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689174,"created":1666987689174,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_4e7424f78749436bacdb44d3a1eba77a","parentId":"wrk_a6cd641e98494bca9a11fe77b66c7e37","modified":1666987689205,"created":1666987689176,"fileName":"Section 6","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_7609e8f1315a4d77af52a6ba50f48205","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745590,"created":1666990745590,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_ce9759718e054191a685cec521ed7afc","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745592,"created":1666990745592,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_0f62897a05a449f9845b4c71eeb892b3","parentId":"wrk_6efa5c8b8fa142a28f436b209fba66fa","modified":1666990745620,"created":1666990745594,"fileName":"Section 7","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_52ad539864c4425884f6394f62627cb7","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1667329454452,"created":1666991842391,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005"},"dataPropertyOrder":{"&":["url"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_bc7c508b3eed4f2485782e9d7177762e","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842395,"created":1666991842395,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_75bd139c1688445faff87b21105f8df1","parentId":"wrk_101d091b922e44c28f66528e9ef2ae37","modified":1666991842435,"created":1666991842397,"fileName":"Section 8","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_c2a4191124a544e9a440f8042644c7b9","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667651225760,"created":1667332566839,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_8a4500f913d7401fa00168eaf32dcb4c","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566841,"created":1667332566841,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_2d4dfbfd115b4f91b44d09ad3c6d0b5b","parentId":"wrk_5d43c6fa3d9a4ba8817aa2e2767d791a","modified":1667332566888,"created":1667332566842,"fileName":"Section 8 - Chaining","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_e09818240d524d079150f6fc00963c54","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660648,"created":1668007660648,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_9aa71c77793345cabd413a66ad557bd7","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660652,"created":1668007660652,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_2f42797dc9c6441fb3d3e7b23780dc27","parentId":"wrk_f14186e0f24a4da9ab3ab8d628227a36","modified":1668007660725,"created":1668007660654,"fileName":"Section 11","contents":"","contentType":"yaml","_type":"api_spec"},{"_id":"env_05389734f73848a3922232b339a3d34d","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491667,"created":1668809491667,"name":"Base Environment","data":{"url":"http://127.0.0.1:5005","access_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5hY2Nlc3NfdG9rZW4=::46b', 'when-expired', 300 %}","refresh_token":"{% response 'body', 'req_fe8e836ebd4a44cd9f37ff8738e7ed98', 'b64::JC5yZWZyZXNoX3Rva2Vu::46b', 'when-expired', NaN %}"},"dataPropertyOrder":{"&":["url","access_token","refresh_token"]},"color":null,"isPrivate":false,"metaSortKey":1666122928025,"_type":"environment"},{"_id":"jar_a60cc8f7a1dc4acfa31828ea71765d5e","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491673,"created":1668809491673,"name":"Default Jar","cookies":[],"_type":"cookie_jar"},{"_id":"spc_b684ea4fa67c4d13befbc1e6ee30fdb6","parentId":"wrk_3626a93c829b4cf683cbf49c61bdaaef","modified":1668809491739,"created":1668809491675,"fileName":"Section 12","contents":"","contentType":"yaml","_type":"api_spec"}]}
\ No newline at end of file
diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js
index acb4da42..ece7ec10 100644
--- a/docs/docusaurus.config.js
+++ b/docs/docusaurus.config.js
@@ -17,9 +17,10 @@ const config = {
projectName: "rest-apis-flask-python", // Usually your repo name.
scripts: [
{
- src: "https://plausible.io/js/plausible.js",
+ src: "https://plau-prox.teclado.workers.dev/get/script.outbound-links.js",
defer: true,
"data-domain": "rest-apis-flask.teclado.com",
+ "data-api": "https://plau-prox.teclado.workers.dev/send/event",
},
],
presets: [
@@ -40,10 +41,35 @@ const config = {
}),
],
],
- plugins: [require.resolve("@cmfcmf/docusaurus-search-local")],
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
+ docs: {
+ sidebar: {
+ hideable: true,
+ },
+ },
+ algolia: {
+ // The application ID provided by Algolia
+ appId: "1BEGBIP9SH",
+
+ // Public API key: it is safe to commit it
+ apiKey: "882167549d623413f9b5314788a0d900",
+
+ indexName: "docusaurus-2",
+
+ // Optional: see doc section below
+ // contextualSearch: true,
+
+ // Optional: Specify domains where the navigation should occur through window.location instead on history.push. Useful when our Algolia config crawls multiple documentation sites and we want to navigate with window.location.href to them.
+ // externalUrlRegex: "external\\.com|domain\\.com",
+
+ // Optional: Algolia search parameters
+ searchParameters: {},
+
+ // Optional: path for search page that enabled by default (`false` to disable it)
+ searchPagePath: "search",
+ },
navbar: {
title: "REST APIs with Flask and Python",
logo: {
@@ -58,12 +84,25 @@ const config = {
label: "Tutorial",
},
{
- href: "https://go.tecla.do/rest-apis-sale",
+ href: "/insomnia-files/",
+ position: "left",
+ label: "Insomnia files",
+ },
+ {
+ href: "https://go.tecla.do/rest-apis-ebook",
label: "Get the course",
position: "right",
},
],
},
+ announcementBar: {
+ id: "support_us",
+ content:
+ 'Unlock all video lessons and support us by buying the course!',
+ backgroundColor: "#1c2023",
+ textColor: "#fff",
+ isCloseable: false,
+ },
footer: {
style: "dark",
links: [
@@ -71,7 +110,7 @@ const config = {
title: "Learn",
items: [
{
- href: "https://go.tecla.do/rest-apis-sale",
+ href: "https://go.tecla.do/rest-apis-ebook",
label: "Get the course",
},
{
diff --git a/docs/package-lock.json b/docs/package-lock.json
index 29585a7e..e2b48e84 100644
--- a/docs/package-lock.json
+++ b/docs/package-lock.json
@@ -8,9 +8,9 @@
"name": "website",
"version": "0.0.0",
"dependencies": {
- "@cmfcmf/docusaurus-search-local": "^0.11.0",
- "@docusaurus/core": "2.1.0",
- "@docusaurus/preset-classic": "2.1.0",
+ "@docusaurus/core": "^2.2.0",
+ "@docusaurus/preset-classic": "^2.2.0",
+ "@docusaurus/theme-search-algolia": "^2.2.0",
"@mdx-js/react": "^1.6.22",
"clsx": "^1.1.1",
"prism-react-renderer": "^1.3.1",
@@ -26,21 +26,6 @@
"@algolia/autocomplete-shared": "1.7.1"
}
},
- "node_modules/@algolia/autocomplete-js": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/@algolia/autocomplete-js/-/autocomplete-js-1.7.1.tgz",
- "integrity": "sha512-m8xQiH1qdthovVOD9O8/ur9P5us+sljskIpB1HFQIFmsfchorJNFlpMT+zE8V55tbJOwusUrp85c9t+6lkOllg==",
- "dependencies": {
- "@algolia/autocomplete-core": "1.7.1",
- "@algolia/autocomplete-preset-algolia": "1.7.1",
- "@algolia/autocomplete-shared": "1.7.1",
- "htm": "^3.0.0",
- "preact": "^10.0.0"
- },
- "peerDependencies": {
- "@algolia/client-search": "^4.5.1"
- }
- },
"node_modules/@algolia/autocomplete-preset-algolia": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.1.tgz",
@@ -58,11 +43,6 @@
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.1.tgz",
"integrity": "sha512-eTmGVqY3GeyBTT8IWiB2K5EuURAqhnumfktAEoHxfDY2o7vg2rSnO16ZtIG0fMgt3py28Vwgq42/bVEuaQV7pg=="
},
- "node_modules/@algolia/autocomplete-theme-classic": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/@algolia/autocomplete-theme-classic/-/autocomplete-theme-classic-1.7.1.tgz",
- "integrity": "sha512-Uh2AuRMjgbwCgOQX+oZQ5RIaqIDZ2os4EDZd3WClnIYQl03VTvSD/JRPmlz/+agWpfoN/fX8XvmLUGt/d4DbYg=="
- },
"node_modules/@algolia/cache-browser-local-storage": {
"version": "4.14.2",
"resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.14.2.tgz",
@@ -1904,30 +1884,6 @@
"node": ">=6.9.0"
}
},
- "node_modules/@cmfcmf/docusaurus-search-local": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@cmfcmf/docusaurus-search-local/-/docusaurus-search-local-0.11.0.tgz",
- "integrity": "sha512-UzJ0G7JfrhuXJ9h79vforQZs05C5rWhXqrK7C5ie1ImHLTC4RPW7FHagIpZULhcA2PbDkc4ewnWVIufLKq+KzA==",
- "dependencies": {
- "@algolia/autocomplete-js": "^1.5.1",
- "@algolia/autocomplete-theme-classic": "^1.5.1",
- "@algolia/client-search": "^4.12.0",
- "algoliasearch": "^4.12.0",
- "cheerio": "^1.0.0-rc.9",
- "clsx": "^1.1.1",
- "lunr-languages": "^1.4.0",
- "mark.js": "^8.11.1"
- },
- "peerDependencies": {
- "@docusaurus/core": "^v2.0.0-beta.21",
- "nodejieba": "^2.5.0"
- },
- "peerDependenciesMeta": {
- "nodejieba": {
- "optional": true
- }
- }
- },
"node_modules/@colors/colors": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
@@ -1970,9 +1926,9 @@
}
},
"node_modules/@docusaurus/core": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.1.0.tgz",
- "integrity": "sha512-/ZJ6xmm+VB9Izbn0/s6h6289cbPy2k4iYFwWDhjiLsVqwa/Y0YBBcXvStfaHccudUC3OfP+26hMk7UCjc50J6Q==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.2.0.tgz",
+ "integrity": "sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==",
"dependencies": {
"@babel/core": "^7.18.6",
"@babel/generator": "^7.18.7",
@@ -1984,13 +1940,13 @@
"@babel/runtime": "^7.18.6",
"@babel/runtime-corejs3": "^7.18.6",
"@babel/traverse": "^7.18.8",
- "@docusaurus/cssnano-preset": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
+ "@docusaurus/cssnano-preset": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
"@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@slorber/static-site-generator-webpack-plugin": "^4.0.7",
"@svgr/webpack": "^6.2.1",
"autoprefixer": "^10.4.7",
@@ -2122,9 +2078,9 @@
}
},
"node_modules/@docusaurus/cssnano-preset": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.1.0.tgz",
- "integrity": "sha512-pRLewcgGhOies6pzsUROfmPStDRdFw+FgV5sMtLr5+4Luv2rty5+b/eSIMMetqUsmg3A9r9bcxHk9bKAKvx3zQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.2.0.tgz",
+ "integrity": "sha512-mAAwCo4n66TMWBH1kXnHVZsakW9VAXJzTO4yZukuL3ro4F+JtkMwKfh42EG75K/J/YIFQG5I/Bzy0UH/hFxaTg==",
"dependencies": {
"cssnano-preset-advanced": "^5.3.8",
"postcss": "^8.4.14",
@@ -2136,9 +2092,9 @@
}
},
"node_modules/@docusaurus/logger": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.1.0.tgz",
- "integrity": "sha512-uuJx2T6hDBg82joFeyobywPjSOIfeq05GfyKGHThVoXuXsu1KAzMDYcjoDxarb9CoHCI/Dor8R2MoL6zII8x1Q==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.2.0.tgz",
+ "integrity": "sha512-DF3j1cA5y2nNsu/vk8AG7xwpZu6f5MKkPPMaaIbgXLnWGfm6+wkOeW7kNrxnM95YOhKUkJUophX69nGUnLsm0A==",
"dependencies": {
"chalk": "^4.1.2",
"tslib": "^2.4.0"
@@ -2212,14 +2168,14 @@
}
},
"node_modules/@docusaurus/mdx-loader": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.1.0.tgz",
- "integrity": "sha512-i97hi7hbQjsD3/8OSFhLy7dbKGH8ryjEzOfyhQIn2CFBYOY3ko0vMVEf3IY9nD3Ld7amYzsZ8153RPkcnXA+Lg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.2.0.tgz",
+ "integrity": "sha512-X2bzo3T0jW0VhUU+XdQofcEeozXOTmKQMvc8tUnWRdTnCvj4XEcBVdC3g+/jftceluiwSTNRAX4VBOJdNt18jA==",
"dependencies": {
"@babel/parser": "^7.18.8",
"@babel/traverse": "^7.18.8",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"@mdx-js/mdx": "^1.6.22",
"escape-html": "^1.0.3",
"file-loader": "^6.2.0",
@@ -2243,12 +2199,12 @@
}
},
"node_modules/@docusaurus/module-type-aliases": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.1.0.tgz",
- "integrity": "sha512-Z8WZaK5cis3xEtyfOT817u9xgGUauT0PuuVo85ysnFRX8n7qLN1lTPCkC+aCmFm/UcV8h/W5T4NtIsst94UntQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.2.0.tgz",
+ "integrity": "sha512-wDGW4IHKoOr9YuJgy7uYuKWrDrSpsUSDHLZnWQYM9fN7D5EpSmYHjFruUpKWVyxLpD/Wh0rW8hYZwdjJIQUQCQ==",
"dependencies": {
"@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/types": "2.1.0",
+ "@docusaurus/types": "2.2.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",
@@ -2262,17 +2218,17 @@
}
},
"node_modules/@docusaurus/plugin-content-blog": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.1.0.tgz",
- "integrity": "sha512-xEp6jlu92HMNUmyRBEeJ4mCW1s77aAEQO4Keez94cUY/Ap7G/r0Awa6xSLff7HL0Fjg8KK1bEbDy7q9voIavdg==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.2.0.tgz",
+ "integrity": "sha512-0mWBinEh0a5J2+8ZJXJXbrCk1tSTNf7Nm4tYAl5h2/xx+PvH/Bnu0V+7mMljYm/1QlDYALNIIaT/JcoZQFUN3w==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"cheerio": "^1.0.0-rc.12",
"feed": "^4.2.2",
"fs-extra": "^10.1.0",
@@ -2292,17 +2248,17 @@
}
},
"node_modules/@docusaurus/plugin-content-docs": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.1.0.tgz",
- "integrity": "sha512-Rup5pqXrXlKGIC4VgwvioIhGWF7E/NNSlxv+JAxRYpik8VKlWsk9ysrdHIlpX+KJUCO9irnY21kQh2814mlp/Q==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.2.0.tgz",
+ "integrity": "sha512-BOazBR0XjzsHE+2K1wpNxz5QZmrJgmm3+0Re0EVPYFGW8qndCWGNtXW/0lGKhecVPML8yyFeAmnUCIs7xM2wPw==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@types/react-router-config": "^5.0.6",
"combine-promises": "^1.1.0",
"fs-extra": "^10.1.0",
@@ -2322,15 +2278,15 @@
}
},
"node_modules/@docusaurus/plugin-content-pages": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.1.0.tgz",
- "integrity": "sha512-SwZdDZRlObHNKXTnFo7W2aF6U5ZqNVI55Nw2GCBryL7oKQSLeI0lsrMlMXdzn+fS7OuBTd3MJBO1T4Zpz0i/+g==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.2.0.tgz",
+ "integrity": "sha512-+OTK3FQHk5WMvdelz8v19PbEbx+CNT6VSpx7nVOvMNs5yJCKvmqBJBQ2ZSxROxhVDYn+CZOlmyrC56NSXzHf6g==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"fs-extra": "^10.1.0",
"tslib": "^2.4.0",
"webpack": "^5.73.0"
@@ -2344,13 +2300,13 @@
}
},
"node_modules/@docusaurus/plugin-debug": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.1.0.tgz",
- "integrity": "sha512-8wsDq3OIfiy6440KLlp/qT5uk+WRHQXIXklNHEeZcar+Of0TZxCNe2FBpv+bzb/0qcdP45ia5i5WmR5OjN6DPw==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.2.0.tgz",
+ "integrity": "sha512-p9vOep8+7OVl6r/NREEYxf4HMAjV8JMYJ7Bos5fCFO0Wyi9AZEo0sCTliRd7R8+dlJXZEgcngSdxAUo/Q+CJow==",
"dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"fs-extra": "^10.1.0",
"react-json-view": "^1.21.3",
"tslib": "^2.4.0"
@@ -2364,13 +2320,13 @@
}
},
"node_modules/@docusaurus/plugin-google-analytics": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.1.0.tgz",
- "integrity": "sha512-4cgeqIly/wcFVbbWP03y1QJJBgH8W+Bv6AVbWnsXNOZa1yB3AO6hf3ZdeQH9x20v9T2pREogVgAH0rSoVnNsgg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.2.0.tgz",
+ "integrity": "sha512-+eZVVxVeEnV5nVQJdey9ZsfyEVMls6VyWTIj8SmX0k5EbqGvnIfET+J2pYEuKQnDIHxy+syRMoRM6AHXdHYGIg==",
"dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"tslib": "^2.4.0"
},
"engines": {
@@ -2382,13 +2338,13 @@
}
},
"node_modules/@docusaurus/plugin-google-gtag": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.1.0.tgz",
- "integrity": "sha512-/3aDlv2dMoCeiX2e+DTGvvrdTA+v3cKQV3DbmfsF4ENhvc5nKV23nth04Z3Vq0Ci1ui6Sn80TkhGk/tiCMW2AA==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.2.0.tgz",
+ "integrity": "sha512-6SOgczP/dYdkqUMGTRqgxAS1eTp6MnJDAQMy8VCF1QKbWZmlkx4agHDexihqmYyCujTYHqDAhm1hV26EET54NQ==",
"dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"tslib": "^2.4.0"
},
"engines": {
@@ -2400,16 +2356,16 @@
}
},
"node_modules/@docusaurus/plugin-sitemap": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.1.0.tgz",
- "integrity": "sha512-2Y6Br8drlrZ/jN9MwMBl0aoi9GAjpfyfMBYpaQZXimbK+e9VjYnujXlvQ4SxtM60ASDgtHIAzfVFBkSR/MwRUw==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.2.0.tgz",
+ "integrity": "sha512-0jAmyRDN/aI265CbWZNZuQpFqiZuo+5otk2MylU9iVrz/4J7gSc+ZJ9cy4EHrEsW7PV8s1w18hIEsmcA1YgkKg==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"fs-extra": "^10.1.0",
"sitemap": "^7.1.1",
"tslib": "^2.4.0"
@@ -2423,22 +2379,22 @@
}
},
"node_modules/@docusaurus/preset-classic": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.1.0.tgz",
- "integrity": "sha512-NQMnaq974K4BcSMXFSJBQ5itniw6RSyW+VT+6i90kGZzTwiuKZmsp0r9lC6BYAvvVMQUNJQwrETmlu7y2XKW7w==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/plugin-debug": "2.1.0",
- "@docusaurus/plugin-google-analytics": "2.1.0",
- "@docusaurus/plugin-google-gtag": "2.1.0",
- "@docusaurus/plugin-sitemap": "2.1.0",
- "@docusaurus/theme-classic": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-search-algolia": "2.1.0",
- "@docusaurus/types": "2.1.0"
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.2.0.tgz",
+ "integrity": "sha512-yKIWPGNx7BT8v2wjFIWvYrS+nvN04W+UameSFf8lEiJk6pss0kL6SG2MRvyULiI3BDxH+tj6qe02ncpSPGwumg==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/plugin-debug": "2.2.0",
+ "@docusaurus/plugin-google-analytics": "2.2.0",
+ "@docusaurus/plugin-google-gtag": "2.2.0",
+ "@docusaurus/plugin-sitemap": "2.2.0",
+ "@docusaurus/theme-classic": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-search-algolia": "2.2.0",
+ "@docusaurus/types": "2.2.0"
},
"engines": {
"node": ">=16.14"
@@ -2461,22 +2417,22 @@
}
},
"node_modules/@docusaurus/theme-classic": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.1.0.tgz",
- "integrity": "sha512-xn8ZfNMsf7gaSy9+ClFnUu71o7oKgMo5noYSS1hy3svNifRTkrBp6+MReLDsmIaj3mLf2e7+JCBYKBFbaGzQng==",
- "dependencies": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-translations": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.2.0.tgz",
+ "integrity": "sha512-kjbg/qJPwZ6H1CU/i9d4l/LcFgnuzeiGgMQlt6yPqKo0SOJIBMPuz7Rnu3r/WWbZFPi//o8acclacOzmXdUUEg==",
+ "dependencies": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-translations": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@mdx-js/react": "^1.6.22",
"clsx": "^1.2.1",
"copy-text-to-clipboard": "^3.0.1",
@@ -2500,16 +2456,16 @@
}
},
"node_modules/@docusaurus/theme-common": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.1.0.tgz",
- "integrity": "sha512-vT1otpVPbKux90YpZUnvknsn5zvpLf+AW1W0EDcpE9up4cDrPqfsh0QoxGHFJnobE2/qftsBFC19BneN4BH8Ag==",
- "dependencies": {
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.2.0.tgz",
+ "integrity": "sha512-R8BnDjYoN90DCL75gP7qYQfSjyitXuP9TdzgsKDmSFPNyrdE3twtPNa2dIN+h+p/pr+PagfxwWbd6dn722A1Dw==",
+ "dependencies": {
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",
@@ -2528,18 +2484,18 @@
}
},
"node_modules/@docusaurus/theme-search-algolia": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.1.0.tgz",
- "integrity": "sha512-rNBvi35VvENhucslEeVPOtbAzBdZY/9j55gdsweGV5bYoAXy4mHB6zTGjealcB4pJ6lJY4a5g75fXXMOlUqPfg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.2.0.tgz",
+ "integrity": "sha512-2h38B0tqlxgR2FZ9LpAkGrpDWVdXZ7vltfmTdX+4RsDs3A7khiNsmZB+x/x6sA4+G2V2CvrsPMlsYBy5X+cY1w==",
"dependencies": {
"@docsearch/react": "^3.1.1",
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-translations": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-translations": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"algoliasearch": "^4.13.1",
"algoliasearch-helper": "^3.10.0",
"clsx": "^1.2.1",
@@ -2558,9 +2514,9 @@
}
},
"node_modules/@docusaurus/theme-translations": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.1.0.tgz",
- "integrity": "sha512-07n2akf2nqWvtJeMy3A+7oSGMuu5F673AovXVwY0aGAux1afzGCiqIFlYW3EP0CujvDJAEFSQi/Tetfh+95JNg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.2.0.tgz",
+ "integrity": "sha512-3T140AG11OjJrtKlY4pMZ5BzbGRDjNs2co5hJ6uYJG1bVWlhcaFGqkaZ5lCgKflaNHD7UHBHU9Ec5f69jTdd6w==",
"dependencies": {
"fs-extra": "^10.1.0",
"tslib": "^2.4.0"
@@ -2570,9 +2526,9 @@
}
},
"node_modules/@docusaurus/types": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.1.0.tgz",
- "integrity": "sha512-BS1ebpJZnGG6esKqsjtEC9U9qSaPylPwlO7cQ1GaIE7J/kMZI3FITnNn0otXXu7c7ZTqhb6+8dOrG6fZn6fqzQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.2.0.tgz",
+ "integrity": "sha512-b6xxyoexfbRNRI8gjblzVOnLr4peCJhGbYGPpJ3LFqpi5nsFfoK4mmDLvWdeah0B7gmJeXabN7nQkFoqeSdmOw==",
"dependencies": {
"@types/history": "^4.7.11",
"@types/react": "*",
@@ -2589,11 +2545,11 @@
}
},
"node_modules/@docusaurus/utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.1.0.tgz",
- "integrity": "sha512-fPvrfmAuC54n8MjZuG4IysaMdmvN5A/qr7iFLbSGSyDrsbP4fnui6KdZZIa/YOLIPLec8vjZ8RIITJqF18mx4A==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.2.0.tgz",
+ "integrity": "sha512-oNk3cjvx7Tt1Lgh/aeZAmFpGV2pDr5nHKrBVx6hTkzGhrnMuQqLt6UPlQjdYQ3QHXwyF/ZtZMO1D5Pfi0lu7SA==",
"dependencies": {
- "@docusaurus/logger": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
"@svgr/webpack": "^6.2.1",
"file-loader": "^6.2.0",
"fs-extra": "^10.1.0",
@@ -2622,9 +2578,9 @@
}
},
"node_modules/@docusaurus/utils-common": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.1.0.tgz",
- "integrity": "sha512-F2vgmt4yRFgRQR2vyEFGTWeyAdmgKbtmu3sjHObF0tjjx/pN0Iw/c6eCopaH34E6tc9nO0nvp01pwW+/86d1fg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.2.0.tgz",
+ "integrity": "sha512-qebnerHp+cyovdUseDQyYFvMW1n1nv61zGe5JJfoNQUnjKuApch3IVsz+/lZ9a38pId8kqehC1Ao2bW/s0ntDA==",
"dependencies": {
"tslib": "^2.4.0"
},
@@ -2641,12 +2597,12 @@
}
},
"node_modules/@docusaurus/utils-validation": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.1.0.tgz",
- "integrity": "sha512-AMJzWYKL3b7FLltKtDXNLO9Y649V2BXvrnRdnW2AA+PpBnYV78zKLSCz135cuWwRj1ajNtP4onbXdlnyvCijGQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.2.0.tgz",
+ "integrity": "sha512-I1hcsG3yoCkasOL5qQAYAfnmVoLei7apugT6m4crQjmDGxq+UkiRrq55UqmDDyZlac/6ax/JC0p+usZ6W4nVyg==",
"dependencies": {
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"joi": "^17.6.0",
"js-yaml": "^4.1.0",
"tslib": "^2.4.0"
@@ -5304,12 +5260,12 @@
}
},
"node_modules/cssnano-preset-advanced": {
- "version": "5.3.8",
- "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.8.tgz",
- "integrity": "sha512-xUlLLnEB1LjpEik+zgRNlk8Y/koBPPtONZjp7JKbXigeAmCrFvq9H0pXW5jJV45bQWAlmJ0sKy+IMr0XxLYQZg==",
+ "version": "5.3.9",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.9.tgz",
+ "integrity": "sha512-njnh4pp1xCsibJcEHnWZb4EEzni0ePMqPuPNyuWT4Z+YeXmsgqNuTPIljXFEXhxGsWs9183JkXgHxc1TcsahIg==",
"dependencies": {
- "autoprefixer": "^10.3.7",
- "cssnano-preset-default": "^5.2.12",
+ "autoprefixer": "^10.4.12",
+ "cssnano-preset-default": "^5.2.13",
"postcss-discard-unused": "^5.1.0",
"postcss-merge-idents": "^5.1.1",
"postcss-reduce-idents": "^5.2.0",
@@ -5323,24 +5279,24 @@
}
},
"node_modules/cssnano-preset-default": {
- "version": "5.2.12",
- "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.12.tgz",
- "integrity": "sha512-OyCBTZi+PXgylz9HAA5kHyoYhfGcYdwFmyaJzWnzxuGRtnMw/kR6ilW9XzlzlRAtB6PLT/r+prYgkef7hngFew==",
+ "version": "5.2.13",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.13.tgz",
+ "integrity": "sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ==",
"dependencies": {
- "css-declaration-sorter": "^6.3.0",
+ "css-declaration-sorter": "^6.3.1",
"cssnano-utils": "^3.1.0",
"postcss-calc": "^8.2.3",
"postcss-colormin": "^5.3.0",
- "postcss-convert-values": "^5.1.2",
+ "postcss-convert-values": "^5.1.3",
"postcss-discard-comments": "^5.1.2",
"postcss-discard-duplicates": "^5.1.0",
"postcss-discard-empty": "^5.1.1",
"postcss-discard-overridden": "^5.1.0",
- "postcss-merge-longhand": "^5.1.6",
- "postcss-merge-rules": "^5.1.2",
+ "postcss-merge-longhand": "^5.1.7",
+ "postcss-merge-rules": "^5.1.3",
"postcss-minify-font-values": "^5.1.0",
"postcss-minify-gradients": "^5.1.1",
- "postcss-minify-params": "^5.1.3",
+ "postcss-minify-params": "^5.1.4",
"postcss-minify-selectors": "^5.2.1",
"postcss-normalize-charset": "^5.1.0",
"postcss-normalize-display-values": "^5.1.0",
@@ -5348,11 +5304,11 @@
"postcss-normalize-repeat-style": "^5.1.1",
"postcss-normalize-string": "^5.1.0",
"postcss-normalize-timing-functions": "^5.1.0",
- "postcss-normalize-unicode": "^5.1.0",
+ "postcss-normalize-unicode": "^5.1.1",
"postcss-normalize-url": "^5.1.0",
"postcss-normalize-whitespace": "^5.1.1",
"postcss-ordered-values": "^5.1.3",
- "postcss-reduce-initial": "^5.1.0",
+ "postcss-reduce-initial": "^5.1.1",
"postcss-reduce-transforms": "^5.1.0",
"postcss-svgo": "^5.1.0",
"postcss-unique-selectors": "^5.1.1"
@@ -7007,11 +6963,6 @@
"safe-buffer": "~5.1.0"
}
},
- "node_modules/htm": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/htm/-/htm-3.1.1.tgz",
- "integrity": "sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ=="
- },
"node_modules/html-entities": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz",
@@ -7931,11 +7882,6 @@
"node": ">=10"
}
},
- "node_modules/lunr-languages": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.9.0.tgz",
- "integrity": "sha512-Be5vFuc8NAheOIjviCRms3ZqFFBlzns3u9DXpPSZvALetgnydAN0poV71pVLFn0keYy/s4VblMMkqewTLe+KPg=="
- },
"node_modules/make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
@@ -7958,11 +7904,6 @@
"semver": "bin/semver.js"
}
},
- "node_modules/mark.js": {
- "version": "8.11.1",
- "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz",
- "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ=="
- },
"node_modules/markdown-escapes": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz",
@@ -8897,11 +8838,11 @@
}
},
"node_modules/postcss-convert-values": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.2.tgz",
- "integrity": "sha512-c6Hzc4GAv95B7suy4udszX9Zy4ETyMCgFPUDtWjdFTKH1SE9eFY/jEpHSwTH1QPuwxHpWslhckUQWbNRM4ho5g==",
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz",
+ "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==",
"dependencies": {
- "browserslist": "^4.20.3",
+ "browserslist": "^4.21.4",
"postcss-value-parser": "^4.2.0"
},
"engines": {
@@ -9006,12 +8947,12 @@
}
},
"node_modules/postcss-merge-longhand": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.6.tgz",
- "integrity": "sha512-6C/UGF/3T5OE2CEbOuX7iNO63dnvqhGZeUnKkDeifebY0XqkkvrctYSZurpNE902LDf2yKwwPFgotnfSoPhQiw==",
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz",
+ "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==",
"dependencies": {
"postcss-value-parser": "^4.2.0",
- "stylehacks": "^5.1.0"
+ "stylehacks": "^5.1.1"
},
"engines": {
"node": "^10 || ^12 || >=14.0"
@@ -9021,11 +8962,11 @@
}
},
"node_modules/postcss-merge-rules": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.2.tgz",
- "integrity": "sha512-zKMUlnw+zYCWoPN6yhPjtcEdlJaMUZ0WyVcxTAmw3lkkN/NDMRkOkiuctQEoWAOvH7twaxUUdvBWl0d4+hifRQ==",
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.3.tgz",
+ "integrity": "sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA==",
"dependencies": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"caniuse-api": "^3.0.0",
"cssnano-utils": "^3.1.0",
"postcss-selector-parser": "^6.0.5"
@@ -9068,11 +9009,11 @@
}
},
"node_modules/postcss-minify-params": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.3.tgz",
- "integrity": "sha512-bkzpWcjykkqIujNL+EVEPOlLYi/eZ050oImVtHU7b4lFS82jPnsCb44gvC6pxaNt38Els3jWYDHTjHKf0koTgg==",
+ "version": "5.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz",
+ "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==",
"dependencies": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"cssnano-utils": "^3.1.0",
"postcss-value-parser": "^4.2.0"
},
@@ -9234,11 +9175,11 @@
}
},
"node_modules/postcss-normalize-unicode": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz",
- "integrity": "sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz",
+ "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==",
"dependencies": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"postcss-value-parser": "^4.2.0"
},
"engines": {
@@ -9307,11 +9248,11 @@
}
},
"node_modules/postcss-reduce-initial": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz",
- "integrity": "sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.1.tgz",
+ "integrity": "sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w==",
"dependencies": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"caniuse-api": "^3.0.0"
},
"engines": {
@@ -9406,15 +9347,6 @@
"postcss": "^8.2.15"
}
},
- "node_modules/preact": {
- "version": "10.11.0",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.11.0.tgz",
- "integrity": "sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w==",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/preact"
- }
- },
"node_modules/prepend-http": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
@@ -9993,9 +9925,9 @@
}
},
"node_modules/react-textarea-autosize": {
- "version": "8.3.4",
- "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.4.tgz",
- "integrity": "sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==",
+ "version": "8.4.0",
+ "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.0.tgz",
+ "integrity": "sha512-YrTFaEHLgJsi8sJVYHBzYn+mkP3prGkmP2DKb/tm0t7CLJY5t1Rxix8070LAKb0wby7bl/lf2EeHkuMihMZMwQ==",
"dependencies": {
"@babel/runtime": "^7.10.2",
"use-composed-ref": "^1.3.0",
@@ -11195,11 +11127,11 @@
}
},
"node_modules/stylehacks": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz",
- "integrity": "sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz",
+ "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==",
"dependencies": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"postcss-selector-parser": "^6.0.4"
},
"engines": {
@@ -11504,9 +11436,9 @@
}
},
"node_modules/ua-parser-js": {
- "version": "0.7.31",
- "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz",
- "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ==",
+ "version": "0.7.32",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.32.tgz",
+ "integrity": "sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw==",
"funding": [
{
"type": "opencollective",
@@ -12898,18 +12830,6 @@
"@algolia/autocomplete-shared": "1.7.1"
}
},
- "@algolia/autocomplete-js": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/@algolia/autocomplete-js/-/autocomplete-js-1.7.1.tgz",
- "integrity": "sha512-m8xQiH1qdthovVOD9O8/ur9P5us+sljskIpB1HFQIFmsfchorJNFlpMT+zE8V55tbJOwusUrp85c9t+6lkOllg==",
- "requires": {
- "@algolia/autocomplete-core": "1.7.1",
- "@algolia/autocomplete-preset-algolia": "1.7.1",
- "@algolia/autocomplete-shared": "1.7.1",
- "htm": "^3.0.0",
- "preact": "^10.0.0"
- }
- },
"@algolia/autocomplete-preset-algolia": {
"version": "1.7.1",
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.7.1.tgz",
@@ -12923,11 +12843,6 @@
"resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.7.1.tgz",
"integrity": "sha512-eTmGVqY3GeyBTT8IWiB2K5EuURAqhnumfktAEoHxfDY2o7vg2rSnO16ZtIG0fMgt3py28Vwgq42/bVEuaQV7pg=="
},
- "@algolia/autocomplete-theme-classic": {
- "version": "1.7.1",
- "resolved": "https://registry.npmjs.org/@algolia/autocomplete-theme-classic/-/autocomplete-theme-classic-1.7.1.tgz",
- "integrity": "sha512-Uh2AuRMjgbwCgOQX+oZQ5RIaqIDZ2os4EDZd3WClnIYQl03VTvSD/JRPmlz/+agWpfoN/fX8XvmLUGt/d4DbYg=="
- },
"@algolia/cache-browser-local-storage": {
"version": "4.14.2",
"resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.14.2.tgz",
@@ -14207,21 +14122,6 @@
"to-fast-properties": "^2.0.0"
}
},
- "@cmfcmf/docusaurus-search-local": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@cmfcmf/docusaurus-search-local/-/docusaurus-search-local-0.11.0.tgz",
- "integrity": "sha512-UzJ0G7JfrhuXJ9h79vforQZs05C5rWhXqrK7C5ie1ImHLTC4RPW7FHagIpZULhcA2PbDkc4ewnWVIufLKq+KzA==",
- "requires": {
- "@algolia/autocomplete-js": "^1.5.1",
- "@algolia/autocomplete-theme-classic": "^1.5.1",
- "@algolia/client-search": "^4.12.0",
- "algoliasearch": "^4.12.0",
- "cheerio": "^1.0.0-rc.9",
- "clsx": "^1.1.1",
- "lunr-languages": "^1.4.0",
- "mark.js": "^8.11.1"
- }
- },
"@colors/colors": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
@@ -14245,9 +14145,9 @@
}
},
"@docusaurus/core": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.1.0.tgz",
- "integrity": "sha512-/ZJ6xmm+VB9Izbn0/s6h6289cbPy2k4iYFwWDhjiLsVqwa/Y0YBBcXvStfaHccudUC3OfP+26hMk7UCjc50J6Q==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.2.0.tgz",
+ "integrity": "sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==",
"requires": {
"@babel/core": "^7.18.6",
"@babel/generator": "^7.18.7",
@@ -14259,13 +14159,13 @@
"@babel/runtime": "^7.18.6",
"@babel/runtime-corejs3": "^7.18.6",
"@babel/traverse": "^7.18.8",
- "@docusaurus/cssnano-preset": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
+ "@docusaurus/cssnano-preset": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
"@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@slorber/static-site-generator-webpack-plugin": "^4.0.7",
"@svgr/webpack": "^6.2.1",
"autoprefixer": "^10.4.7",
@@ -14368,9 +14268,9 @@
}
},
"@docusaurus/cssnano-preset": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.1.0.tgz",
- "integrity": "sha512-pRLewcgGhOies6pzsUROfmPStDRdFw+FgV5sMtLr5+4Luv2rty5+b/eSIMMetqUsmg3A9r9bcxHk9bKAKvx3zQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.2.0.tgz",
+ "integrity": "sha512-mAAwCo4n66TMWBH1kXnHVZsakW9VAXJzTO4yZukuL3ro4F+JtkMwKfh42EG75K/J/YIFQG5I/Bzy0UH/hFxaTg==",
"requires": {
"cssnano-preset-advanced": "^5.3.8",
"postcss": "^8.4.14",
@@ -14379,9 +14279,9 @@
}
},
"@docusaurus/logger": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.1.0.tgz",
- "integrity": "sha512-uuJx2T6hDBg82joFeyobywPjSOIfeq05GfyKGHThVoXuXsu1KAzMDYcjoDxarb9CoHCI/Dor8R2MoL6zII8x1Q==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.2.0.tgz",
+ "integrity": "sha512-DF3j1cA5y2nNsu/vk8AG7xwpZu6f5MKkPPMaaIbgXLnWGfm6+wkOeW7kNrxnM95YOhKUkJUophX69nGUnLsm0A==",
"requires": {
"chalk": "^4.1.2",
"tslib": "^2.4.0"
@@ -14433,14 +14333,14 @@
}
},
"@docusaurus/mdx-loader": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.1.0.tgz",
- "integrity": "sha512-i97hi7hbQjsD3/8OSFhLy7dbKGH8ryjEzOfyhQIn2CFBYOY3ko0vMVEf3IY9nD3Ld7amYzsZ8153RPkcnXA+Lg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.2.0.tgz",
+ "integrity": "sha512-X2bzo3T0jW0VhUU+XdQofcEeozXOTmKQMvc8tUnWRdTnCvj4XEcBVdC3g+/jftceluiwSTNRAX4VBOJdNt18jA==",
"requires": {
"@babel/parser": "^7.18.8",
"@babel/traverse": "^7.18.8",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"@mdx-js/mdx": "^1.6.22",
"escape-html": "^1.0.3",
"file-loader": "^6.2.0",
@@ -14457,12 +14357,12 @@
}
},
"@docusaurus/module-type-aliases": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.1.0.tgz",
- "integrity": "sha512-Z8WZaK5cis3xEtyfOT817u9xgGUauT0PuuVo85ysnFRX8n7qLN1lTPCkC+aCmFm/UcV8h/W5T4NtIsst94UntQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.2.0.tgz",
+ "integrity": "sha512-wDGW4IHKoOr9YuJgy7uYuKWrDrSpsUSDHLZnWQYM9fN7D5EpSmYHjFruUpKWVyxLpD/Wh0rW8hYZwdjJIQUQCQ==",
"requires": {
"@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/types": "2.1.0",
+ "@docusaurus/types": "2.2.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",
@@ -14472,17 +14372,17 @@
}
},
"@docusaurus/plugin-content-blog": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.1.0.tgz",
- "integrity": "sha512-xEp6jlu92HMNUmyRBEeJ4mCW1s77aAEQO4Keez94cUY/Ap7G/r0Awa6xSLff7HL0Fjg8KK1bEbDy7q9voIavdg==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.2.0.tgz",
+ "integrity": "sha512-0mWBinEh0a5J2+8ZJXJXbrCk1tSTNf7Nm4tYAl5h2/xx+PvH/Bnu0V+7mMljYm/1QlDYALNIIaT/JcoZQFUN3w==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"cheerio": "^1.0.0-rc.12",
"feed": "^4.2.2",
"fs-extra": "^10.1.0",
@@ -14495,17 +14395,17 @@
}
},
"@docusaurus/plugin-content-docs": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.1.0.tgz",
- "integrity": "sha512-Rup5pqXrXlKGIC4VgwvioIhGWF7E/NNSlxv+JAxRYpik8VKlWsk9ysrdHIlpX+KJUCO9irnY21kQh2814mlp/Q==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.2.0.tgz",
+ "integrity": "sha512-BOazBR0XjzsHE+2K1wpNxz5QZmrJgmm3+0Re0EVPYFGW8qndCWGNtXW/0lGKhecVPML8yyFeAmnUCIs7xM2wPw==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@types/react-router-config": "^5.0.6",
"combine-promises": "^1.1.0",
"fs-extra": "^10.1.0",
@@ -14518,88 +14418,88 @@
}
},
"@docusaurus/plugin-content-pages": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.1.0.tgz",
- "integrity": "sha512-SwZdDZRlObHNKXTnFo7W2aF6U5ZqNVI55Nw2GCBryL7oKQSLeI0lsrMlMXdzn+fS7OuBTd3MJBO1T4Zpz0i/+g==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.2.0.tgz",
+ "integrity": "sha512-+OTK3FQHk5WMvdelz8v19PbEbx+CNT6VSpx7nVOvMNs5yJCKvmqBJBQ2ZSxROxhVDYn+CZOlmyrC56NSXzHf6g==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"fs-extra": "^10.1.0",
"tslib": "^2.4.0",
"webpack": "^5.73.0"
}
},
"@docusaurus/plugin-debug": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.1.0.tgz",
- "integrity": "sha512-8wsDq3OIfiy6440KLlp/qT5uk+WRHQXIXklNHEeZcar+Of0TZxCNe2FBpv+bzb/0qcdP45ia5i5WmR5OjN6DPw==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.2.0.tgz",
+ "integrity": "sha512-p9vOep8+7OVl6r/NREEYxf4HMAjV8JMYJ7Bos5fCFO0Wyi9AZEo0sCTliRd7R8+dlJXZEgcngSdxAUo/Q+CJow==",
"requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"fs-extra": "^10.1.0",
"react-json-view": "^1.21.3",
"tslib": "^2.4.0"
}
},
"@docusaurus/plugin-google-analytics": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.1.0.tgz",
- "integrity": "sha512-4cgeqIly/wcFVbbWP03y1QJJBgH8W+Bv6AVbWnsXNOZa1yB3AO6hf3ZdeQH9x20v9T2pREogVgAH0rSoVnNsgg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.2.0.tgz",
+ "integrity": "sha512-+eZVVxVeEnV5nVQJdey9ZsfyEVMls6VyWTIj8SmX0k5EbqGvnIfET+J2pYEuKQnDIHxy+syRMoRM6AHXdHYGIg==",
"requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"tslib": "^2.4.0"
}
},
"@docusaurus/plugin-google-gtag": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.1.0.tgz",
- "integrity": "sha512-/3aDlv2dMoCeiX2e+DTGvvrdTA+v3cKQV3DbmfsF4ENhvc5nKV23nth04Z3Vq0Ci1ui6Sn80TkhGk/tiCMW2AA==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.2.0.tgz",
+ "integrity": "sha512-6SOgczP/dYdkqUMGTRqgxAS1eTp6MnJDAQMy8VCF1QKbWZmlkx4agHDexihqmYyCujTYHqDAhm1hV26EET54NQ==",
"requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"tslib": "^2.4.0"
}
},
"@docusaurus/plugin-sitemap": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.1.0.tgz",
- "integrity": "sha512-2Y6Br8drlrZ/jN9MwMBl0aoi9GAjpfyfMBYpaQZXimbK+e9VjYnujXlvQ4SxtM60ASDgtHIAzfVFBkSR/MwRUw==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.2.0.tgz",
+ "integrity": "sha512-0jAmyRDN/aI265CbWZNZuQpFqiZuo+5otk2MylU9iVrz/4J7gSc+ZJ9cy4EHrEsW7PV8s1w18hIEsmcA1YgkKg==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"fs-extra": "^10.1.0",
"sitemap": "^7.1.1",
"tslib": "^2.4.0"
}
},
"@docusaurus/preset-classic": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.1.0.tgz",
- "integrity": "sha512-NQMnaq974K4BcSMXFSJBQ5itniw6RSyW+VT+6i90kGZzTwiuKZmsp0r9lC6BYAvvVMQUNJQwrETmlu7y2XKW7w==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/plugin-debug": "2.1.0",
- "@docusaurus/plugin-google-analytics": "2.1.0",
- "@docusaurus/plugin-google-gtag": "2.1.0",
- "@docusaurus/plugin-sitemap": "2.1.0",
- "@docusaurus/theme-classic": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-search-algolia": "2.1.0",
- "@docusaurus/types": "2.1.0"
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.2.0.tgz",
+ "integrity": "sha512-yKIWPGNx7BT8v2wjFIWvYrS+nvN04W+UameSFf8lEiJk6pss0kL6SG2MRvyULiI3BDxH+tj6qe02ncpSPGwumg==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/plugin-debug": "2.2.0",
+ "@docusaurus/plugin-google-analytics": "2.2.0",
+ "@docusaurus/plugin-google-gtag": "2.2.0",
+ "@docusaurus/plugin-sitemap": "2.2.0",
+ "@docusaurus/theme-classic": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-search-algolia": "2.2.0",
+ "@docusaurus/types": "2.2.0"
}
},
"@docusaurus/react-loadable": {
@@ -14612,22 +14512,22 @@
}
},
"@docusaurus/theme-classic": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.1.0.tgz",
- "integrity": "sha512-xn8ZfNMsf7gaSy9+ClFnUu71o7oKgMo5noYSS1hy3svNifRTkrBp6+MReLDsmIaj3mLf2e7+JCBYKBFbaGzQng==",
- "requires": {
- "@docusaurus/core": "2.1.0",
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-translations": "2.1.0",
- "@docusaurus/types": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-common": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.2.0.tgz",
+ "integrity": "sha512-kjbg/qJPwZ6H1CU/i9d4l/LcFgnuzeiGgMQlt6yPqKo0SOJIBMPuz7Rnu3r/WWbZFPi//o8acclacOzmXdUUEg==",
+ "requires": {
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-translations": "2.2.0",
+ "@docusaurus/types": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-common": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"@mdx-js/react": "^1.6.22",
"clsx": "^1.2.1",
"copy-text-to-clipboard": "^3.0.1",
@@ -14644,16 +14544,16 @@
}
},
"@docusaurus/theme-common": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.1.0.tgz",
- "integrity": "sha512-vT1otpVPbKux90YpZUnvknsn5zvpLf+AW1W0EDcpE9up4cDrPqfsh0QoxGHFJnobE2/qftsBFC19BneN4BH8Ag==",
- "requires": {
- "@docusaurus/mdx-loader": "2.1.0",
- "@docusaurus/module-type-aliases": "2.1.0",
- "@docusaurus/plugin-content-blog": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/plugin-content-pages": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.2.0.tgz",
+ "integrity": "sha512-R8BnDjYoN90DCL75gP7qYQfSjyitXuP9TdzgsKDmSFPNyrdE3twtPNa2dIN+h+p/pr+PagfxwWbd6dn722A1Dw==",
+ "requires": {
+ "@docusaurus/mdx-loader": "2.2.0",
+ "@docusaurus/module-type-aliases": "2.2.0",
+ "@docusaurus/plugin-content-blog": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/plugin-content-pages": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",
@@ -14665,18 +14565,18 @@
}
},
"@docusaurus/theme-search-algolia": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.1.0.tgz",
- "integrity": "sha512-rNBvi35VvENhucslEeVPOtbAzBdZY/9j55gdsweGV5bYoAXy4mHB6zTGjealcB4pJ6lJY4a5g75fXXMOlUqPfg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.2.0.tgz",
+ "integrity": "sha512-2h38B0tqlxgR2FZ9LpAkGrpDWVdXZ7vltfmTdX+4RsDs3A7khiNsmZB+x/x6sA4+G2V2CvrsPMlsYBy5X+cY1w==",
"requires": {
"@docsearch/react": "^3.1.1",
- "@docusaurus/core": "2.1.0",
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/plugin-content-docs": "2.1.0",
- "@docusaurus/theme-common": "2.1.0",
- "@docusaurus/theme-translations": "2.1.0",
- "@docusaurus/utils": "2.1.0",
- "@docusaurus/utils-validation": "2.1.0",
+ "@docusaurus/core": "2.2.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/plugin-content-docs": "2.2.0",
+ "@docusaurus/theme-common": "2.2.0",
+ "@docusaurus/theme-translations": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
+ "@docusaurus/utils-validation": "2.2.0",
"algoliasearch": "^4.13.1",
"algoliasearch-helper": "^3.10.0",
"clsx": "^1.2.1",
@@ -14688,18 +14588,18 @@
}
},
"@docusaurus/theme-translations": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.1.0.tgz",
- "integrity": "sha512-07n2akf2nqWvtJeMy3A+7oSGMuu5F673AovXVwY0aGAux1afzGCiqIFlYW3EP0CujvDJAEFSQi/Tetfh+95JNg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.2.0.tgz",
+ "integrity": "sha512-3T140AG11OjJrtKlY4pMZ5BzbGRDjNs2co5hJ6uYJG1bVWlhcaFGqkaZ5lCgKflaNHD7UHBHU9Ec5f69jTdd6w==",
"requires": {
"fs-extra": "^10.1.0",
"tslib": "^2.4.0"
}
},
"@docusaurus/types": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.1.0.tgz",
- "integrity": "sha512-BS1ebpJZnGG6esKqsjtEC9U9qSaPylPwlO7cQ1GaIE7J/kMZI3FITnNn0otXXu7c7ZTqhb6+8dOrG6fZn6fqzQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.2.0.tgz",
+ "integrity": "sha512-b6xxyoexfbRNRI8gjblzVOnLr4peCJhGbYGPpJ3LFqpi5nsFfoK4mmDLvWdeah0B7gmJeXabN7nQkFoqeSdmOw==",
"requires": {
"@types/history": "^4.7.11",
"@types/react": "*",
@@ -14712,11 +14612,11 @@
}
},
"@docusaurus/utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.1.0.tgz",
- "integrity": "sha512-fPvrfmAuC54n8MjZuG4IysaMdmvN5A/qr7iFLbSGSyDrsbP4fnui6KdZZIa/YOLIPLec8vjZ8RIITJqF18mx4A==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.2.0.tgz",
+ "integrity": "sha512-oNk3cjvx7Tt1Lgh/aeZAmFpGV2pDr5nHKrBVx6hTkzGhrnMuQqLt6UPlQjdYQ3QHXwyF/ZtZMO1D5Pfi0lu7SA==",
"requires": {
- "@docusaurus/logger": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
"@svgr/webpack": "^6.2.1",
"file-loader": "^6.2.0",
"fs-extra": "^10.1.0",
@@ -14734,20 +14634,20 @@
}
},
"@docusaurus/utils-common": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.1.0.tgz",
- "integrity": "sha512-F2vgmt4yRFgRQR2vyEFGTWeyAdmgKbtmu3sjHObF0tjjx/pN0Iw/c6eCopaH34E6tc9nO0nvp01pwW+/86d1fg==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.2.0.tgz",
+ "integrity": "sha512-qebnerHp+cyovdUseDQyYFvMW1n1nv61zGe5JJfoNQUnjKuApch3IVsz+/lZ9a38pId8kqehC1Ao2bW/s0ntDA==",
"requires": {
"tslib": "^2.4.0"
}
},
"@docusaurus/utils-validation": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.1.0.tgz",
- "integrity": "sha512-AMJzWYKL3b7FLltKtDXNLO9Y649V2BXvrnRdnW2AA+PpBnYV78zKLSCz135cuWwRj1ajNtP4onbXdlnyvCijGQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.2.0.tgz",
+ "integrity": "sha512-I1hcsG3yoCkasOL5qQAYAfnmVoLei7apugT6m4crQjmDGxq+UkiRrq55UqmDDyZlac/6ax/JC0p+usZ6W4nVyg==",
"requires": {
- "@docusaurus/logger": "2.1.0",
- "@docusaurus/utils": "2.1.0",
+ "@docusaurus/logger": "2.2.0",
+ "@docusaurus/utils": "2.2.0",
"joi": "^17.6.0",
"js-yaml": "^4.1.0",
"tslib": "^2.4.0"
@@ -16718,12 +16618,12 @@
}
},
"cssnano-preset-advanced": {
- "version": "5.3.8",
- "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.8.tgz",
- "integrity": "sha512-xUlLLnEB1LjpEik+zgRNlk8Y/koBPPtONZjp7JKbXigeAmCrFvq9H0pXW5jJV45bQWAlmJ0sKy+IMr0XxLYQZg==",
+ "version": "5.3.9",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.9.tgz",
+ "integrity": "sha512-njnh4pp1xCsibJcEHnWZb4EEzni0ePMqPuPNyuWT4Z+YeXmsgqNuTPIljXFEXhxGsWs9183JkXgHxc1TcsahIg==",
"requires": {
- "autoprefixer": "^10.3.7",
- "cssnano-preset-default": "^5.2.12",
+ "autoprefixer": "^10.4.12",
+ "cssnano-preset-default": "^5.2.13",
"postcss-discard-unused": "^5.1.0",
"postcss-merge-idents": "^5.1.1",
"postcss-reduce-idents": "^5.2.0",
@@ -16731,24 +16631,24 @@
}
},
"cssnano-preset-default": {
- "version": "5.2.12",
- "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.12.tgz",
- "integrity": "sha512-OyCBTZi+PXgylz9HAA5kHyoYhfGcYdwFmyaJzWnzxuGRtnMw/kR6ilW9XzlzlRAtB6PLT/r+prYgkef7hngFew==",
+ "version": "5.2.13",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.13.tgz",
+ "integrity": "sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ==",
"requires": {
- "css-declaration-sorter": "^6.3.0",
+ "css-declaration-sorter": "^6.3.1",
"cssnano-utils": "^3.1.0",
"postcss-calc": "^8.2.3",
"postcss-colormin": "^5.3.0",
- "postcss-convert-values": "^5.1.2",
+ "postcss-convert-values": "^5.1.3",
"postcss-discard-comments": "^5.1.2",
"postcss-discard-duplicates": "^5.1.0",
"postcss-discard-empty": "^5.1.1",
"postcss-discard-overridden": "^5.1.0",
- "postcss-merge-longhand": "^5.1.6",
- "postcss-merge-rules": "^5.1.2",
+ "postcss-merge-longhand": "^5.1.7",
+ "postcss-merge-rules": "^5.1.3",
"postcss-minify-font-values": "^5.1.0",
"postcss-minify-gradients": "^5.1.1",
- "postcss-minify-params": "^5.1.3",
+ "postcss-minify-params": "^5.1.4",
"postcss-minify-selectors": "^5.2.1",
"postcss-normalize-charset": "^5.1.0",
"postcss-normalize-display-values": "^5.1.0",
@@ -16756,11 +16656,11 @@
"postcss-normalize-repeat-style": "^5.1.1",
"postcss-normalize-string": "^5.1.0",
"postcss-normalize-timing-functions": "^5.1.0",
- "postcss-normalize-unicode": "^5.1.0",
+ "postcss-normalize-unicode": "^5.1.1",
"postcss-normalize-url": "^5.1.0",
"postcss-normalize-whitespace": "^5.1.1",
"postcss-ordered-values": "^5.1.3",
- "postcss-reduce-initial": "^5.1.0",
+ "postcss-reduce-initial": "^5.1.1",
"postcss-reduce-transforms": "^5.1.0",
"postcss-svgo": "^5.1.0",
"postcss-unique-selectors": "^5.1.1"
@@ -17991,11 +17891,6 @@
}
}
},
- "htm": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/htm/-/htm-3.1.1.tgz",
- "integrity": "sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ=="
- },
"html-entities": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz",
@@ -18629,11 +18524,6 @@
"yallist": "^4.0.0"
}
},
- "lunr-languages": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.9.0.tgz",
- "integrity": "sha512-Be5vFuc8NAheOIjviCRms3ZqFFBlzns3u9DXpPSZvALetgnydAN0poV71pVLFn0keYy/s4VblMMkqewTLe+KPg=="
- },
"make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
@@ -18649,11 +18539,6 @@
}
}
},
- "mark.js": {
- "version": "8.11.1",
- "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz",
- "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ=="
- },
"markdown-escapes": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz",
@@ -19309,11 +19194,11 @@
}
},
"postcss-convert-values": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.2.tgz",
- "integrity": "sha512-c6Hzc4GAv95B7suy4udszX9Zy4ETyMCgFPUDtWjdFTKH1SE9eFY/jEpHSwTH1QPuwxHpWslhckUQWbNRM4ho5g==",
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz",
+ "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==",
"requires": {
- "browserslist": "^4.20.3",
+ "browserslist": "^4.21.4",
"postcss-value-parser": "^4.2.0"
}
},
@@ -19369,20 +19254,20 @@
}
},
"postcss-merge-longhand": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.6.tgz",
- "integrity": "sha512-6C/UGF/3T5OE2CEbOuX7iNO63dnvqhGZeUnKkDeifebY0XqkkvrctYSZurpNE902LDf2yKwwPFgotnfSoPhQiw==",
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz",
+ "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==",
"requires": {
"postcss-value-parser": "^4.2.0",
- "stylehacks": "^5.1.0"
+ "stylehacks": "^5.1.1"
}
},
"postcss-merge-rules": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.2.tgz",
- "integrity": "sha512-zKMUlnw+zYCWoPN6yhPjtcEdlJaMUZ0WyVcxTAmw3lkkN/NDMRkOkiuctQEoWAOvH7twaxUUdvBWl0d4+hifRQ==",
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.3.tgz",
+ "integrity": "sha512-LbLd7uFC00vpOuMvyZop8+vvhnfRGpp2S+IMQKeuOZZapPRY4SMq5ErjQeHbHsjCUgJkRNrlU+LmxsKIqPKQlA==",
"requires": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"caniuse-api": "^3.0.0",
"cssnano-utils": "^3.1.0",
"postcss-selector-parser": "^6.0.5"
@@ -19407,11 +19292,11 @@
}
},
"postcss-minify-params": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.3.tgz",
- "integrity": "sha512-bkzpWcjykkqIujNL+EVEPOlLYi/eZ050oImVtHU7b4lFS82jPnsCb44gvC6pxaNt38Els3jWYDHTjHKf0koTgg==",
+ "version": "5.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz",
+ "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==",
"requires": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"cssnano-utils": "^3.1.0",
"postcss-value-parser": "^4.2.0"
}
@@ -19503,11 +19388,11 @@
}
},
"postcss-normalize-unicode": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz",
- "integrity": "sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz",
+ "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==",
"requires": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"postcss-value-parser": "^4.2.0"
}
},
@@ -19546,11 +19431,11 @@
}
},
"postcss-reduce-initial": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz",
- "integrity": "sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.1.tgz",
+ "integrity": "sha512-//jeDqWcHPuXGZLoolFrUXBDyuEGbr9S2rMo19bkTIjBQ4PqkaO+oI8wua5BOUxpfi97i3PCoInsiFIEBfkm9w==",
"requires": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"caniuse-api": "^3.0.0"
}
},
@@ -19607,11 +19492,6 @@
"integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==",
"requires": {}
},
- "preact": {
- "version": "10.11.0",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.11.0.tgz",
- "integrity": "sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w=="
- },
"prepend-http": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
@@ -20044,9 +19924,9 @@
}
},
"react-textarea-autosize": {
- "version": "8.3.4",
- "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.4.tgz",
- "integrity": "sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==",
+ "version": "8.4.0",
+ "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.4.0.tgz",
+ "integrity": "sha512-YrTFaEHLgJsi8sJVYHBzYn+mkP3prGkmP2DKb/tm0t7CLJY5t1Rxix8070LAKb0wby7bl/lf2EeHkuMihMZMwQ==",
"requires": {
"@babel/runtime": "^7.10.2",
"use-composed-ref": "^1.3.0",
@@ -20962,11 +20842,11 @@
}
},
"stylehacks": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz",
- "integrity": "sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz",
+ "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==",
"requires": {
- "browserslist": "^4.16.6",
+ "browserslist": "^4.21.4",
"postcss-selector-parser": "^6.0.4"
}
},
@@ -21173,9 +21053,9 @@
"peer": true
},
"ua-parser-js": {
- "version": "0.7.31",
- "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.31.tgz",
- "integrity": "sha512-qLK/Xe9E2uzmYI3qLeOmI0tEOt+TBBQyUIAh4aAgU05FVYzeZrKUdkAZfBNVGRaHVgV0TDkdEngJSw/SyQchkQ=="
+ "version": "0.7.32",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.32.tgz",
+ "integrity": "sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw=="
},
"unherit": {
"version": "1.1.3",
diff --git a/docs/package.json b/docs/package.json
index fdfbbc50..b58d57ec 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -14,9 +14,9 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
- "@cmfcmf/docusaurus-search-local": "^0.11.0",
- "@docusaurus/core": "2.1.0",
- "@docusaurus/preset-classic": "2.1.0",
+ "@docusaurus/core": "^2.2.0",
+ "@docusaurus/preset-classic": "^2.2.0",
+ "@docusaurus/theme-search-algolia": "^2.2.0",
"@mdx-js/react": "^1.6.22",
"clsx": "^1.1.1",
"prism-react-renderer": "^1.3.1",
diff --git a/docs/sidebars.js b/docs/sidebars.js
index fd342f2c..96621506 100644
--- a/docs/sidebars.js
+++ b/docs/sidebars.js
@@ -14,7 +14,7 @@
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
- tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
+ tutorialSidebar: [{ type: "autogenerated", dirName: "." }],
// But you can create a sidebar manually
/*
diff --git a/docs/src/components/LockedVideoEmbed/background.png b/docs/src/components/LockedVideoEmbed/background.png
new file mode 100644
index 00000000..6ec0a2c8
Binary files /dev/null and b/docs/src/components/LockedVideoEmbed/background.png differ
diff --git a/docs/src/components/LockedVideoEmbed/index.js b/docs/src/components/LockedVideoEmbed/index.js
new file mode 100644
index 00000000..878bf857
--- /dev/null
+++ b/docs/src/components/LockedVideoEmbed/index.js
@@ -0,0 +1,128 @@
+import React from "react";
+import Background from "./background.png";
+
+export default function LockedVideoEmbed() {
+ return (
+
diff --git a/docs/src/pages/insomnia-files.md b/docs/src/pages/insomnia-files.md
new file mode 100644
index 00000000..67bc98b0
--- /dev/null
+++ b/docs/src/pages/insomnia-files.md
@@ -0,0 +1,45 @@
+# Insomnia Files for this course
+
+In this course, we use [Insomnia](https://insomnia.rest/) to test our REST API as we develop it. It's a great tool, and relatively straightforward to use!
+
+To make it easier for you, we've prepared a few files that you can import directly into your Insomnia app. Each section has its own file, and there's also a file which contains [all sections](#all-section-file-project).
+
+:::tip Get the files
+You can download the entire GitHub repository as a .zip file ([see how here](https://github.com/tecladocode/rest-apis-flask-python#getting-started)). Then, extract it and you'll be able to find the JSON files for Insomnia.
+:::
+
+## Per-section files (collections)
+
+Every section where we change the API endpoints, we've prepared an Insomnia file you can import. To import the file, just go to your Insomnia project, click on the "Create" button, and select "Import from file".
+
+![Screenshot showing dropdown appears when clicking 'create' button, select import from file there](./assets/in-import-file.png)
+
+Then, find the appropriate file and you should see the request collection being created. Files are in each section folder where API changes were introduced, and they are named `Insomnia_sectionX.json`.
+
+![Screenshot showing instructor finding the JSON file to import](./assets/in-import-file-select.png)
+
+The Insomnia project should now show your new collection:
+
+![Screenshot showing the import succeeded and the collection appears](./assets/in-import-success.png)
+
+Clicking on it should let you access the requests, which may be inside folders.
+
+![Screenshot showing the collection open, with the Stores folder expanded and the 'Create store' endpoint selected](./assets/in-section-import-s03.png)
+
+## All-section file (project)
+
+To import all sections at the same time, you can use the all-section file. It's in the `docs/docs/` folder of the repository, and it's called [`Insomnia_all_sections.json`](https://github.com/tecladocode/rest-apis-flask-python/blob/develop/docs/docs/Insomnia_all_sections.json).
+
+To import it, follow the same process as before but using this file. It will create multiple request collections.
+
+First, find the `Insomnia_all_sections.json` file when importing:
+
+![Screenshot showing the instructor finding the all-sections file when importing using Insomnia](./assets/in-import-all-sections-file-select.png)
+
+This should import the request collections for all sections:
+
+![Screenshot showing the import succeeding, and request collections appear in Insomnia for every section where API changes were introduced](./assets/in-import-all-sections-success.png)
+
+That's it! With this, you can either import sections individually, or all sections together to follow the entire course.
+
+Now let's start with the [course content](/docs/course_intro/)!
\ No newline at end of file
diff --git a/docs/src/pages/markdown-page.md b/docs/src/pages/markdown-page.md
deleted file mode 100644
index 9756c5b6..00000000
--- a/docs/src/pages/markdown-page.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-title: Markdown page example
----
-
-# Markdown page example
-
-You don't need React to write simple standalone pages.
diff --git a/docs/static/img/folder-closed.svg b/docs/static/img/folder-closed.svg
new file mode 100644
index 00000000..e6f3d22f
--- /dev/null
+++ b/docs/static/img/folder-closed.svg
@@ -0,0 +1,3 @@
+
\ No newline at end of file
diff --git a/docs/static/img/folder-open.svg b/docs/static/img/folder-open.svg
new file mode 100644
index 00000000..45698086
--- /dev/null
+++ b/docs/static/img/folder-open.svg
@@ -0,0 +1,3 @@
+
diff --git a/project/01-first-rest-api/app.py b/project/01-first-rest-api/app.py
index b1e6c39d..f89963cc 100644
--- a/project/01-first-rest-api/app.py
+++ b/project/01-first-rest-api/app.py
@@ -1,57 +1,54 @@
-import uuid
from flask import Flask, request
app = Flask(__name__)
-stores = {}
-items = {}
-
-
-@app.get("/item/")
-def get_item(id):
- try:
- return items[id]
- except KeyError:
- return {"message": "Item not found"}, 404
-
-
-@app.post("/item")
-def create_item():
- request_data = request.get_json()
- new_item_id = uuid.uuid4().hex
- new_item = {
- "name": request_data["name"],
- "price": request_data["price"],
- "store_id": request_data["store_id"],
+stores = [
+ {
+ "name": "My Store",
+ "items": [
+ {
+ "name": "Chair",
+ "price": 15.99
+ }
+ ]
}
- items[new_item_id] = new_item
- return new_item
-
-
-@app.get("/item")
-def get_all_items():
- return {"items": list(items.values())}
+]
-
-@app.get("/store/")
-def get_store(id):
- try:
- # Here you might also want to add the items in this store
- # We'll do that later on in the course
- return stores[id]
- except KeyError:
- return {"message": "Store not found"}, 404
+@app.get("/store")
+def get_stores():
+ return {"stores": stores}
@app.post("/store")
def create_store():
request_data = request.get_json()
- new_store_id = uuid.uuid4().hex
- new_store = {"id": new_store_id, "name": request_data["name"]}
- stores[new_store_id] = new_store
+ new_store = {"name": request_data["name"], "items": []}
+ stores.append(new_store)
return new_store, 201
-@app.get("/store")
-def get_stores():
- return {"stores": list(stores.values())}
+@app.post("/store//item")
+def create_item(name):
+ request_data = request.get_json()
+ for store in stores:
+ if store["name"] == name:
+ new_item = {"name": request_data["name"], "price": request_data["price"]}
+ store["items"].append(new_item)
+ return new_item, 201
+ return {"message": "Store not found"}, 404
+
+
+@app.get("/store/")
+def get_store(name):
+ for store in stores:
+ if store["name"] == name:
+ return store
+ return {"message": "Store not found"}, 404
+
+
+@app.get("/store//item")
+def get_item_in_store(name):
+ for store in stores:
+ if store["name"] == name:
+ return {"items": store["items"]}
+ return {"message": "Store not found"}, 404
diff --git a/project/02-first-rest-api-docker/app.py b/project/02-first-rest-api-docker/app.py
index b1e6c39d..f89963cc 100644
--- a/project/02-first-rest-api-docker/app.py
+++ b/project/02-first-rest-api-docker/app.py
@@ -1,57 +1,54 @@
-import uuid
from flask import Flask, request
app = Flask(__name__)
-stores = {}
-items = {}
-
-
-@app.get("/item/")
-def get_item(id):
- try:
- return items[id]
- except KeyError:
- return {"message": "Item not found"}, 404
-
-
-@app.post("/item")
-def create_item():
- request_data = request.get_json()
- new_item_id = uuid.uuid4().hex
- new_item = {
- "name": request_data["name"],
- "price": request_data["price"],
- "store_id": request_data["store_id"],
+stores = [
+ {
+ "name": "My Store",
+ "items": [
+ {
+ "name": "Chair",
+ "price": 15.99
+ }
+ ]
}
- items[new_item_id] = new_item
- return new_item
-
-
-@app.get("/item")
-def get_all_items():
- return {"items": list(items.values())}
+]
-
-@app.get("/store/")
-def get_store(id):
- try:
- # Here you might also want to add the items in this store
- # We'll do that later on in the course
- return stores[id]
- except KeyError:
- return {"message": "Store not found"}, 404
+@app.get("/store")
+def get_stores():
+ return {"stores": stores}
@app.post("/store")
def create_store():
request_data = request.get_json()
- new_store_id = uuid.uuid4().hex
- new_store = {"id": new_store_id, "name": request_data["name"]}
- stores[new_store_id] = new_store
+ new_store = {"name": request_data["name"], "items": []}
+ stores.append(new_store)
return new_store, 201
-@app.get("/store")
-def get_stores():
- return {"stores": list(stores.values())}
+@app.post("/store//item")
+def create_item(name):
+ request_data = request.get_json()
+ for store in stores:
+ if store["name"] == name:
+ new_item = {"name": request_data["name"], "price": request_data["price"]}
+ store["items"].append(new_item)
+ return new_item, 201
+ return {"message": "Store not found"}, 404
+
+
+@app.get("/store/")
+def get_store(name):
+ for store in stores:
+ if store["name"] == name:
+ return store
+ return {"message": "Store not found"}, 404
+
+
+@app.get("/store//item")
+def get_item_in_store(name):
+ for store in stores:
+ if store["name"] == name:
+ return {"items": store["items"]}
+ return {"message": "Store not found"}, 404
diff --git a/project/05-add-many-to-many/models/tag.py b/project/05-add-many-to-many/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/project/05-add-many-to-many/models/tag.py
+++ b/project/05-add-many-to-many/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")
diff --git a/project/06-add-db-migrations/models/tag.py b/project/06-add-db-migrations/models/tag.py
index ec3e3530..5e92c9fa 100644
--- a/project/06-add-db-migrations/models/tag.py
+++ b/project/06-add-db-migrations/models/tag.py
@@ -6,7 +6,7 @@ class TagModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), unique=True, nullable=False)
- store_id = db.Column(db.String(), db.ForeignKey("stores.id"), nullable=False)
+ store_id = db.Column(db.Integer(), db.ForeignKey("stores.id"), nullable=False)
store = db.relationship("StoreModel", back_populates="tags")
items = db.relationship("ItemModel", back_populates="tags", secondary="items_tags")