diff --git a/README.md b/README.md index 844253d45e..e3936ebeb8 100644 --- a/README.md +++ b/README.md @@ -1,308 +1,9 @@ -

-
- - -
- NocoDB -
-
- The Open Source Airtable Alternative
-

- -

-Turns any MySQL, PostgreSQL, SQL Server, SQLite & MariaDB into a smart spreadsheet. -

- -
- -[![Node version](https://img.shields.io/badge/node-%3E%3D%2018.14.0-brightgreen)](http://nodejs.org/download/) -[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-green.svg)](https://conventionalcommits.org) - -
- -

- Website • - Discord • - Community • - Twitter • - Reddit • - Documentation -

- -![All Views](https://user-images.githubusercontent.com/35857179/194825053-3aa3373d-3e0f-4b42-b3f1-42928332054a.gif) - -
- -[](markdown/readme/languages/chinese.md) -[](markdown/readme/languages/french.md) -[](markdown/readme/languages/german.md) -[](markdown/readme/languages/spanish.md) -[](markdown/readme/languages/portuguese.md) -[](markdown/readme/languages/italian.md) -[](markdown/readme/languages/japanese.md) -[](markdown/readme/languages/korean.md) -[](markdown/readme/languages/russian.md) - -
- -

See other languages »

- - - -# Join Our Team - -

- -# Join Our Community - - - - - - - -[![Stargazers repo roster for @nocodb/nocodb](https://reporoster.com/stars/nocodb/nocodb)](https://github.com/nocodb/nocodb/stargazers) - -# Quick try - -## Docker - -```bash -# for SQLite -docker run -d --name nocodb \ --v "$(pwd)"/nocodb:/usr/app/data/ \ --p 8080:8080 \ -nocodb/nocodb:latest - -# for MySQL -docker run -d --name nocodb-mysql \ --v "$(pwd)"/nocodb:/usr/app/data/ \ --p 8080:8080 \ --e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \ --e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \ -nocodb/nocodb:latest - -# for PostgreSQL -docker run -d --name nocodb-postgres \ --v "$(pwd)"/nocodb:/usr/app/data/ \ --p 8080:8080 \ --e NC_DB="pg://host.docker.internal:5432?u=root&p=password&d=d1" \ --e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \ -nocodb/nocodb:latest - -# for MSSQL -docker run -d --name nocodb-mssql \ --v "$(pwd)"/nocodb:/usr/app/data/ \ --p 8080:8080 \ --e NC_DB="mssql://host.docker.internal:1433?u=root&p=password&d=d1" \ --e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \ -nocodb/nocodb:latest -``` - -> To persist data in docker you can mount volume at `/usr/app/data/` since 0.10.6. Otherwise your data will be lost after recreating the container. - -> If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for [MySQL Docker](https://github.com/nocodb/nocodb/issues/1340#issuecomment-1049481043). - -## Binaries - -##### MacOS (x64) - -```bash -curl http://get.nocodb.com/macos-x64 -o nocodb -L && chmod +x nocodb && ./nocodb -``` - -##### MacOS (arm64) - -```bash -curl http://get.nocodb.com/macos-arm64 -o nocodb -L && chmod +x nocodb && ./nocodb -``` - -##### Linux (x64) - -```bash -curl http://get.nocodb.com/linux-x64 -o nocodb -L && chmod +x nocodb && ./nocodb -``` - -##### Linux (arm64) - -```bash -curl http://get.nocodb.com/linux-arm64 -o nocodb -L && chmod +x nocodb && ./nocodb -``` - -##### Windows (x64) - -```bash -iwr http://get.nocodb.com/win-x64.exe -o Noco-win-x64.exe -.\Noco-win-x64.exe -``` - -##### Windows (arm64) - -```bash -iwr http://get.nocodb.com/win-arm64.exe -o Noco-win-arm64.exe -.\Noco-win-arm64.exe -``` - -## Docker Compose - -We provide different docker-compose.yml files under [this directory](https://github.com/nocodb/nocodb/tree/master/docker-compose). Here are some examples. - -```bash -git clone https://github.com/nocodb/nocodb -# for MySQL -cd nocodb/docker-compose/mysql -# for PostgreSQL -cd nocodb/docker-compose/pg -# for MSSQL -cd nocodb/docker-compose/mssql -docker-compose up -d -``` - -> To persist data in docker, you can mount volume at `/usr/app/data/` since 0.10.6. Otherwise your data will be lost after recreating the container. - -> If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for [MySQL Docker Compose](https://github.com/nocodb/nocodb/issues/1313#issuecomment-1046625974). - -## NPX - -You can run the below command if you need an interactive configuration. - -``` -npx create-nocodb-app -``` - - - -## Node Application - -We provide a simple NodeJS Application for getting started. - -```bash -git clone https://github.com/nocodb/nocodb-seed -cd nocodb-seed -npm install -npm start -``` - - -# GUI - -Access Dashboard using: [http://localhost:8080/dashboard](http://localhost:8080/dashboard) - -# Screenshots -![2](https://github.com/nocodb/nocodb/assets/86527202/a127c05e-2121-4af2-a342-128e0e2d0291) -![3](https://github.com/nocodb/nocodb/assets/86527202/674da952-8a06-4848-a0e8-a7b02d5f5c88) -![4](https://github.com/nocodb/nocodb/assets/86527202/cbc5152a-9caf-4f77-a8f7-92a9d06d025b) -![5](https://github.com/nocodb/nocodb/assets/86527202/dc75dfdc-c486-4f5a-a853-2a8f9e6b569a) - -![5](https://user-images.githubusercontent.com/35857179/194844886-a17006e0-979d-493f-83c4-0e72f5a9b716.png) -![7](https://github.com/nocodb/nocodb/assets/86527202/be64e619-7295-43e2-aa95-cace4462b17f) -![8](https://github.com/nocodb/nocodb/assets/86527202/4538bf5a-371f-4ec1-a867-8197e5824286) - -![8](https://user-images.githubusercontent.com/35857179/194844893-82d5e21b-ae61-41bd-9990-31ad659bf490.png) -![9](https://user-images.githubusercontent.com/35857179/194844897-cfd79946-e413-4c97-b16d-eb4d7678bb79.png) -![10](https://user-images.githubusercontent.com/35857179/194844902-c0122570-0dd5-41cf-a26f-6f8d71fefc99.png) -![11](https://user-images.githubusercontent.com/35857179/194844903-c1e47f40-e782-4f5d-8dce-6449cc70b181.png) -![12](https://user-images.githubusercontent.com/35857179/194844907-09277d3e-cbbf-465c-9165-6afc4161e279.png) - -# Table of Contents - -- [Quick try](#quick-try) - - [NPX](#npx) - - [Node Application](#node-application) - - [Docker](#docker) - - [Docker Compose](#docker-compose) -- [GUI](#gui) -- [Join Our Community](#join-our-community) -- [Screenshots](#screenshots) -- [Table of Contents](#table-of-contents) -- [Features](#features) - - [Rich Spreadsheet Interface](#rich-spreadsheet-interface) - - [App Store for Workflow Automations](#app-store-for-workflow-automations) - - [Programmatic Access](#programmatic-access) - - [Sync Schema](#sync-schema) - - [Audit](#audit) -- [Production Setup](#production-setup) - - [Environment variables](#environment-variables) -- [Development Setup](#development-setup) -- [Contributing](#contributing) -- [Why are we building this?](#why-are-we-building-this) -- [Our Mission](#our-mission) -- [License](#license) -- [Contributors](#contributors) - -# Features - -### Rich Spreadsheet Interface - -- ⚡  Basic Operations: Create, Read, Update and Delete Tables, Columns, and Rows -- ⚡  Fields Operations: Sort, Filter, Hide / Unhide Columns -- ⚡  Multiple Views Types: Grid (By default), Gallery, Form View and Kanban View -- ⚡  View Permissions Types: Collaborative Views, & Locked Views -- ⚡  Share Bases / Views: either Public or Private (with Password Protected) -- ⚡  Variant Cell Types: ID, LinkToAnotherRecord, Lookup, Rollup, SingleLineText, Attachment, Currency, Formula, etc -- ⚡  Access Control with Roles: Fine-grained Access Control at different levels -- ⚡  and more ... - -### App Store for Workflow Automations - -We provide different integrations in three main categories. See App Store for details. - -- ⚡  Chat: Slack, Discord, Mattermost, and etc -- ⚡  Email: AWS SES, SMTP, MailerSend, and etc -- ⚡  Storage: AWS S3, Google Cloud Storage, Minio, and etc - -### Programmatic Access - -We provide the following ways to let users programmatically invoke actions. You can use a token (either JWT or Social Auth) to sign your requests for authorization to NocoDB. - -- ⚡  REST APIs -- ⚡  NocoDB SDK - -### Sync Schema - -We allow you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from one environment to another. See Sync Schema for details. - -### Audit - -We are keeping all the user operation logs in one place. See Audit for details. - -# Production Setup - -By default, SQLite is used for storing metadata. However, you can specify your database. The connection parameters for this database can be specified in `NC_DB` environment variable. Moreover, we also provide the below environment variables for configuration. - -## Environment variables - -Please refer to the [Environment variables](https://docs.nocodb.com/getting-started/environment-variables) - -# Development Setup - -Please refer to [Development Setup](https://docs.nocodb.com/engineering/development-setup) - -# Contributing - -Please refer to [Contribution Guide](https://github.com/nocodb/nocodb/blob/master/.github/CONTRIBUTING.md). - -# Why are we building this? - -Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by Billion+ humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings have meant horrible access controls, vendor lock-in, data lock-in, abrupt price changes & most importantly a glass ceiling on what's possible in the future. - -# Our Mission - -Our mission is to provide the most powerful no-code interface for databases that is open source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on the internet. - -# License - -

-This project is licensed under AGPLv3. -

- -# Contributors - -Thank you for your contributions! We appreciate all the contributions from the community. - - - - +load all pages into memory from DB + load all pages into memory from DB + +When record changes +When sort changes +When filter changes +When group by changes +When page size changes +When page number changes diff --git a/packages/noco-docs/.docusaurus/DONT-EDIT-THIS-FOLDER b/packages/noco-docs/.docusaurus/DONT-EDIT-THIS-FOLDER deleted file mode 100644 index 6c06ae8735..0000000000 --- a/packages/noco-docs/.docusaurus/DONT-EDIT-THIS-FOLDER +++ /dev/null @@ -1,5 +0,0 @@ -This folder stores temp files that Docusaurus' client bundler accesses. - -DO NOT hand-modify files in this folder because they will be overwritten in the -next build. You can clear all build artifacts (including this folder) with the -`docusaurus clear` command. diff --git a/packages/noco-docs/.docusaurus/client-manifest.json b/packages/noco-docs/.docusaurus/client-manifest.json deleted file mode 100644 index c2fcb9b2d2..0000000000 --- a/packages/noco-docs/.docusaurus/client-manifest.json +++ /dev/null @@ -1,3093 +0,0 @@ -{ - "entrypoints": [ - "main" - ], - "origins": { - "4248": [ - 4248 - ], - "8292": [ - 532, - 7918, - 8292 - ], - "17896441": [ - 532, - 8292, - 7918 - ], - "22580739": [ - 1796 - ], - "23371042": [ - 5375 - ], - "44655909": [ - 2406 - ], - "55156658": [ - 1802 - ], - "70424118": [ - 332 - ], - "71540999": [ - 8954 - ], - "83533542": [ - 3878 - ], - "95677701": [ - 1174 - ], - "main": [ - 532, - 1303, - 179 - ], - "runtime~main": [ - 179, - 532, - 1303 - ], - "006c1c22": [ - 1015 - ], - "00aa88f5": [ - 1185 - ], - "013b8728": [ - 1371 - ], - "016441e2": [ - 8673 - ], - "01865ba3": [ - 43 - ], - "023320c3": [ - 1484 - ], - "037e2c34": [ - 7820 - ], - "03af2c79": [ - 6570 - ], - "052736b6": [ - 7657 - ], - "052c7f5b": [ - 3595 - ], - "0834b429": [ - 1305 - ], - "0908b333": [ - 6187 - ], - "0938fe36": [ - 7075 - ], - "09ceb1a0": [ - 4936 - ], - "0a7c5cbc": [ - 809 - ], - "0ac1e38e": [ - 5305 - ], - "0bd8cdc6": [ - 5707 - ], - "0c130525": [ - 604 - ], - "0cab3fcc": [ - 3479 - ], - "0d8de604": [ - 2092 - ], - "0ecc5e11": [ - 117 - ], - "0f4f52c0": [ - 5822 - ], - "0f6b8098": [ - 6157 - ], - "105fb6bf": [ - 5408 - ], - "10779e77": [ - 1990 - ], - "10b0edf0": [ - 8946 - ], - "11d84c26": [ - 5336 - ], - "14095bfc": [ - 5922 - ], - "147f12f7": [ - 4918 - ], - "14d6025d": [ - 7539 - ], - "16d5baaf": [ - 65 - ], - "177ad845": [ - 8252 - ], - "17a7e1f3": [ - 4493 - ], - "181f370e": [ - 6786 - ], - "18c96d41": [ - 9449 - ], - "1970c274": [ - 1140 - ], - "1b14dca8": [ - 5404 - ], - "1b3738fb": [ - 8149 - ], - "1be78505": [ - 532, - 4248 - ], - "1c2ab191": [ - 5518 - ], - "1e403fb7": [ - 4796 - ], - "1e898359": [ - 8704 - ], - "20e10381": [ - 405 - ], - "2226a1e9": [ - 9552 - ], - "224f2b0f": [ - 2562 - ], - "22aab9a3": [ - 6907 - ], - "25ad7bcb": [ - 8789 - ], - "276e2b0f": [ - 2439 - ], - "278121a5": [ - 2556 - ], - "27b20541": [ - 3238 - ], - "2888903d": [ - 3259 - ], - "2a1ace55": [ - 4829 - ], - "2a42d1d2": [ - 2636 - ], - "2b263996": [ - 403 - ], - "2bb712de": [ - 1771 - ], - "2c8a1eac": [ - 5631 - ], - "2cbe0325": [ - 1245 - ], - "2d5bd7a1": [ - 7666 - ], - "2d8eea4e": [ - 5837 - ], - "2eb4ec02": [ - 1876 - ], - "2fa98934": [ - 5084 - ], - "300d0b41": [ - 2534 - ], - "310a23cf": [ - 1878 - ], - "319e5695": [ - 9542 - ], - "31befc1e": [ - 6799 - ], - "31f9cd1a": [ - 7130 - ], - "32e0f401": [ - 9789 - ], - "34b71ab6": [ - 4364 - ], - "35af5afe": [ - 1179 - ], - "3615d78a": [ - 3590 - ], - "3720c009": [ - 532, - 3751 - ], - "3721b01f": [ - 1471 - ], - "3a7c0cf6": [ - 2533 - ], - "3aad05b1": [ - 3512 - ], - "3ac80ba6": [ - 3515 - ], - "3da8114c": [ - 3338 - ], - "408139c4": [ - 8248 - ], - "4145e2b1": [ - 7530 - ], - "458ed5bd": [ - 2237 - ], - "45c1aab2": [ - 4304 - ], - "4bab5100": [ - 5207 - ], - "4c6b0ee7": [ - 6325 - ], - "4cd0de40": [ - 1730 - ], - "4ed1386c": [ - 1753 - ], - "4efb7b3c": [ - 3755 - ], - "4f577b60": [ - 2922 - ], - "523749b8": [ - 9508 - ], - "524f61e0": [ - 5150 - ], - "525fa7b4": [ - 3469 - ], - "529c2981": [ - 7152 - ], - "52df1fbb": [ - 8395 - ], - "5436f7e6": [ - 3939 - ], - "55403ccd": [ - 2650 - ], - "55960ee5": [ - 4121 - ], - "576905f1": [ - 5772 - ], - "58354ae8": [ - 3164 - ], - "5af3a857": [ - 8838 - ], - "5b61f490": [ - 518 - ], - "5c9cf4c7": [ - 5187 - ], - "5ccd3149": [ - 4033 - ], - "5dcc9f57": [ - 7395 - ], - "5eaf3a75": [ - 1944 - ], - "603e048e": [ - 7700 - ], - "60b8b995": [ - 3463 - ], - "615746d5": [ - 678 - ], - "61a3d417": [ - 6591 - ], - "61af7884": [ - 7621 - ], - "6233b6dc": [ - 7647 - ], - "6485a1bf": [ - 6640 - ], - "6502d10a": [ - 6078 - ], - "654123f4": [ - 9933 - ], - "68fa8000": [ - 7549 - ], - "69895f00": [ - 4289 - ], - "69bed9e5": [ - 3869 - ], - "69bee932": [ - 3454 - ], - "6a0eac6b": [ - 4158 - ], - "6a105426": [ - 7592 - ], - "6a2ab9d1": [ - 8537 - ], - "6aee45b4": [ - 8535 - ], - "6d2f78d9": [ - 254 - ], - "6f7695df": [ - 3011 - ], - "6fe2a298": [ - 7219 - ], - "70efa42e": [ - 4815 - ], - "71f80183": [ - 924 - ], - "78ec2f26": [ - 2673 - ], - "7a733070": [ - 4223 - ], - "7c4b6d90": [ - 5580 - ], - "7ce1d842": [ - 3998 - ], - "7d5d7de6": [ - 5017 - ], - "7dce83b4": [ - 1193 - ], - "7e18769a": [ - 4177 - ], - "81862c4f": [ - 1499 - ], - "824dfda1": [ - 4570 - ], - "832fc58a": [ - 9874 - ], - "8498c216": [ - 3381 - ], - "855d76bb": [ - 6141 - ], - "86fc9284": [ - 305 - ], - "87e9af65": [ - 4507 - ], - "88cc213e": [ - 4193 - ], - "8a8a6f17": [ - 9060 - ], - "9040003c": [ - 8511 - ], - "90e43058": [ - 7023 - ], - "9329f711": [ - 753 - ], - "935f2afb": [ - 53 - ], - "95a14fd1": [ - 9518 - ], - "985d43d9": [ - 1196 - ], - "98de4c79": [ - 9893 - ], - "9906c9d3": [ - 7661 - ], - "9995b2be": [ - 9850 - ], - "99f674e5": [ - 4307 - ], - "9a52cc21": [ - 3062 - ], - "9a7e4ef7": [ - 1961 - ], - "9aad2067": [ - 4769 - ], - "9c78149d": [ - 8381 - ], - "9d4ed5ff": [ - 4333 - ], - "9db0d30f": [ - 6090 - ], - "9db7fbd6": [ - 481 - ], - "9dfd9b1b": [ - 9279 - ], - "9e1a113d": [ - 6999 - ], - "9e7567e1": [ - 7823 - ], - "a15cb612": [ - 9042 - ], - "a18f2535": [ - 6928 - ], - "a43060c8": [ - 3185 - ], - "a47b7f3a": [ - 2550 - ], - "a54c3ef6": [ - 5283 - ], - "a71ccd0b": [ - 9383 - ], - "a7294da8": [ - 3312 - ], - "a9993c14": [ - 8750 - ], - "ab9ce1e1": [ - 5919 - ], - "abbfc25c": [ - 6713 - ], - "ae730630": [ - 9707 - ], - "ae9857c7": [ - 6714 - ], - "b2206ab4": [ - 2384 - ], - "b22d161b": [ - 2773 - ], - "b3347e58": [ - 345 - ], - "b444d910": [ - 8958 - ], - "b6006dd7": [ - 1676 - ], - "b65801cb": [ - 274 - ], - "b7abf355": [ - 3857 - ], - "ba1d2c5b": [ - 6779 - ], - "bb516362": [ - 9721 - ], - "bb53f532": [ - 1641 - ], - "bd02e23f": [ - 2606 - ], - "c1501dcb": [ - 7096 - ], - "c1a34d6e": [ - 636 - ], - "c1dfffdd": [ - 4166 - ], - "c2accac3": [ - 2874 - ], - "c3d0dca5": [ - 8221 - ], - "c42aaec2": [ - 92 - ], - "c76e097b": [ - 1461 - ], - "c7dc53b4": [ - 4513 - ], - "c93390fb": [ - 4660 - ], - "cc44517e": [ - 1949 - ], - "cc9fede1": [ - 5228 - ], - "cd3c4207": [ - 485 - ], - "cd725ea4": [ - 800 - ], - "d01bd8c5": [ - 8820 - ], - "d12c5626": [ - 1609 - ], - "d3abb5b7": [ - 3447 - ], - "d427e024": [ - 5413 - ], - "d5451361": [ - 1205 - ], - "d69d4db4": [ - 333 - ], - "d767d123": [ - 4743 - ], - "d96af704": [ - 2582 - ], - "d9e65f56": [ - 8379 - ], - "da4f93ee": [ - 4882 - ], - "dc1c5b3c": [ - 1576 - ], - "ded49de4": [ - 9868 - ], - "df203c0f": [ - 9924 - ], - "df59b4b5": [ - 3914 - ], - "e12d67b0": [ - 9554 - ], - "e28b0c4f": [ - 8880 - ], - "e302cfc9": [ - 1313 - ], - "e3120721": [ - 1120 - ], - "e4367861": [ - 6263 - ], - "e4e12989": [ - 8000 - ], - "e55064b4": [ - 4341 - ], - "e56fdc78": [ - 9069 - ], - "e5a54c1b": [ - 7283 - ], - "e631982f": [ - 5055 - ], - "e68614dc": [ - 771 - ], - "e68e0fff": [ - 6859 - ], - "e8cbe097": [ - 1635 - ], - "eb689018": [ - 4851 - ], - "ebb99180": [ - 346 - ], - "ec134df3": [ - 5921 - ], - "ec135315": [ - 6125 - ], - "ed0a57e3": [ - 8690 - ], - "f0eb83f3": [ - 2862 - ], - "f4472a32": [ - 9123 - ], - "f472468a": [ - 9214 - ], - "f58fbde1": [ - 9415 - ], - "f6aad64f": [ - 853 - ], - "f7d905ba": [ - 7746 - ], - "f9241299": [ - 3521 - ], - "f9538193": [ - 7235 - ], - "fb12fd2d": [ - 1416 - ], - "fb5c685c": [ - 1067 - ], - "fb60c522": [ - 5407 - ], - "fc37d7fe": [ - 9485 - ], - "fe112e79": [ - 2776 - ], - "ffd85642": [ - 1705 - ], - "styles": [ - 179, - 1303, - 3751, - 7918, - 8292, - 9514, - 532 - ] - }, - "assets": { - "43": { - "js": [ - { - "file": "assets/js/01865ba3.034d1107.js", - "hash": "e55a4b374eeb30ce", - "publicPath": "/assets/js/01865ba3.034d1107.js" - } - ] - }, - "53": { - "js": [ - { - "file": "assets/js/935f2afb.caa4773a.js", - "hash": "e19981b87f8e1088", - "publicPath": "/assets/js/935f2afb.caa4773a.js" - } - ] - }, - "65": { - "js": [ - { - "file": "assets/js/16d5baaf.33e3616a.js", - "hash": "5d7407b2c4d8db2f", - "publicPath": "/assets/js/16d5baaf.33e3616a.js" - } - ] - }, - "92": { - "js": [ - { - "file": "assets/js/c42aaec2.c3eaeb58.js", - "hash": "41f180111e8c3726", - "publicPath": "/assets/js/c42aaec2.c3eaeb58.js" - } - ] - }, - "117": { - "js": [ - { - "file": "assets/js/0ecc5e11.0b4aadc4.js", - "hash": "63f9fe6ab1ad2cd2", - "publicPath": "/assets/js/0ecc5e11.0b4aadc4.js" - } - ] - }, - "179": { - "js": [ - { - "file": "assets/js/main.1b5649f0.js", - "hash": "4da3497d09fbdf9b", - "publicPath": "/assets/js/main.1b5649f0.js" - } - ] - }, - "254": { - "js": [ - { - "file": "assets/js/6d2f78d9.3af71101.js", - "hash": "a4743a249df951a8", - "publicPath": "/assets/js/6d2f78d9.3af71101.js" - } - ] - }, - "274": { - "js": [ - { - "file": "assets/js/b65801cb.8ae108a9.js", - "hash": "56b1eb43d31c26e6", - "publicPath": "/assets/js/b65801cb.8ae108a9.js" - } - ] - }, - "305": { - "js": [ - { - "file": "assets/js/86fc9284.a1a65b52.js", - "hash": "6830131d49a228b1", - "publicPath": "/assets/js/86fc9284.a1a65b52.js" - } - ] - }, - "332": { - "js": [ - { - "file": "assets/js/70424118.3dfed9c1.js", - "hash": "d28795bee96b2ff7", - "publicPath": "/assets/js/70424118.3dfed9c1.js" - } - ] - }, - "333": { - "js": [ - { - "file": "assets/js/d69d4db4.b43b4016.js", - "hash": "bf47d72da115c142", - "publicPath": "/assets/js/d69d4db4.b43b4016.js" - } - ] - }, - "345": { - "js": [ - { - "file": "assets/js/b3347e58.e4432810.js", - "hash": "b652b6f58afe833c", - "publicPath": "/assets/js/b3347e58.e4432810.js" - } - ] - }, - "346": { - "js": [ - { - "file": "assets/js/ebb99180.dd3975ce.js", - "hash": "db5c4e52d1b6a8d0", - "publicPath": "/assets/js/ebb99180.dd3975ce.js" - } - ] - }, - "403": { - "js": [ - { - "file": "assets/js/2b263996.f4427b71.js", - "hash": "bec1ac8969cb0550", - "publicPath": "/assets/js/2b263996.f4427b71.js" - } - ] - }, - "405": { - "js": [ - { - "file": "assets/js/20e10381.6a9fbbf1.js", - "hash": "a65a265019db86af", - "publicPath": "/assets/js/20e10381.6a9fbbf1.js" - } - ] - }, - "481": { - "js": [ - { - "file": "assets/js/9db7fbd6.2ee11895.js", - "hash": "79cf639798c5afa7", - "publicPath": "/assets/js/9db7fbd6.2ee11895.js" - } - ] - }, - "485": { - "js": [ - { - "file": "assets/js/cd3c4207.34129dfd.js", - "hash": "e4d721ddcefe0df9", - "publicPath": "/assets/js/cd3c4207.34129dfd.js" - } - ] - }, - "518": { - "js": [ - { - "file": "assets/js/5b61f490.deafe22f.js", - "hash": "1c7e926952deb1e0", - "publicPath": "/assets/js/5b61f490.deafe22f.js" - } - ] - }, - "532": { - "css": [ - { - "file": "assets/css/styles.e26f1b75.css", - "hash": "f001f4a347a765a3", - "publicPath": "/assets/css/styles.e26f1b75.css" - } - ] - }, - "604": { - "js": [ - { - "file": "assets/js/0c130525.033f7aac.js", - "hash": "432ef01bfaa1e4ac", - "publicPath": "/assets/js/0c130525.033f7aac.js" - } - ] - }, - "636": { - "js": [ - { - "file": "assets/js/c1a34d6e.d506b0ed.js", - "hash": "f61cb2069fd1f215", - "publicPath": "/assets/js/c1a34d6e.d506b0ed.js" - } - ] - }, - "678": { - "js": [ - { - "file": "assets/js/615746d5.b0727925.js", - "hash": "ce909d8345259619", - "publicPath": "/assets/js/615746d5.b0727925.js" - } - ] - }, - "753": { - "js": [ - { - "file": "assets/js/9329f711.c91c72a0.js", - "hash": "b35c14c37b978db2", - "publicPath": "/assets/js/9329f711.c91c72a0.js" - } - ] - }, - "771": { - "js": [ - { - "file": "assets/js/e68614dc.7506ca73.js", - "hash": "23e756dbd28cab26", - "publicPath": "/assets/js/e68614dc.7506ca73.js" - } - ] - }, - "800": { - "js": [ - { - "file": "assets/js/cd725ea4.d30f312a.js", - "hash": "92934b1b10a27fb7", - "publicPath": "/assets/js/cd725ea4.d30f312a.js" - } - ] - }, - "809": { - "js": [ - { - "file": "assets/js/0a7c5cbc.99144030.js", - "hash": "e8b2af88d46856e7", - "publicPath": "/assets/js/0a7c5cbc.99144030.js" - } - ] - }, - "853": { - "js": [ - { - "file": "assets/js/f6aad64f.d7381bfa.js", - "hash": "d2e8c57ab5d55293", - "publicPath": "/assets/js/f6aad64f.d7381bfa.js" - } - ] - }, - "924": { - "js": [ - { - "file": "assets/js/71f80183.0b302a2b.js", - "hash": "1aac4e3d517b84eb", - "publicPath": "/assets/js/71f80183.0b302a2b.js" - } - ] - }, - "1015": { - "js": [ - { - "file": "assets/js/006c1c22.db8ce074.js", - "hash": "e8a30bfe1ef3b993", - "publicPath": "/assets/js/006c1c22.db8ce074.js" - } - ] - }, - "1067": { - "js": [ - { - "file": "assets/js/fb5c685c.3e14ad22.js", - "hash": "065674290cf918b4", - "publicPath": "/assets/js/fb5c685c.3e14ad22.js" - } - ] - }, - "1120": { - "js": [ - { - "file": "assets/js/e3120721.c79fbff1.js", - "hash": "03b1a75a648341cc", - "publicPath": "/assets/js/e3120721.c79fbff1.js" - } - ] - }, - "1140": { - "js": [ - { - "file": "assets/js/1970c274.fce46e6e.js", - "hash": "7a1d0d2eb932cd72", - "publicPath": "/assets/js/1970c274.fce46e6e.js" - } - ] - }, - "1174": { - "js": [ - { - "file": "assets/js/95677701.7861c777.js", - "hash": "f497b7cc62f1b9e0", - "publicPath": "/assets/js/95677701.7861c777.js" - } - ] - }, - "1179": { - "js": [ - { - "file": "assets/js/35af5afe.969ad228.js", - "hash": "091842bd647545d8", - "publicPath": "/assets/js/35af5afe.969ad228.js" - } - ] - }, - "1185": { - "js": [ - { - "file": "assets/js/00aa88f5.ece547d6.js", - "hash": "4dfc996dc553c423", - "publicPath": "/assets/js/00aa88f5.ece547d6.js" - } - ] - }, - "1193": { - "js": [ - { - "file": "assets/js/7dce83b4.a3666bb4.js", - "hash": "c5e7cd119d88e4ad", - "publicPath": "/assets/js/7dce83b4.a3666bb4.js" - } - ] - }, - "1196": { - "js": [ - { - "file": "assets/js/985d43d9.74530544.js", - "hash": "604ce50f4518f89b", - "publicPath": "/assets/js/985d43d9.74530544.js" - } - ] - }, - "1205": { - "js": [ - { - "file": "assets/js/d5451361.2c2752cf.js", - "hash": "53e40fb23983cf31", - "publicPath": "/assets/js/d5451361.2c2752cf.js" - } - ] - }, - "1245": { - "js": [ - { - "file": "assets/js/2cbe0325.2396710a.js", - "hash": "921d0494ea456f30", - "publicPath": "/assets/js/2cbe0325.2396710a.js" - } - ] - }, - "1303": { - "js": [ - { - "file": "assets/js/runtime~main.a7b89368.js", - "hash": "8dfc17e1fb564596", - "publicPath": "/assets/js/runtime~main.a7b89368.js" - } - ] - }, - "1305": { - "js": [ - { - "file": "assets/js/0834b429.d504b7b1.js", - "hash": "94eb7eea02bf349d", - "publicPath": "/assets/js/0834b429.d504b7b1.js" - } - ] - }, - "1313": { - "js": [ - { - "file": "assets/js/e302cfc9.d9580788.js", - "hash": "1ddb59ebe85bd57e", - "publicPath": "/assets/js/e302cfc9.d9580788.js" - } - ] - }, - "1371": { - "js": [ - { - "file": "assets/js/013b8728.00dc75b7.js", - "hash": "92d9b85718e07de0", - "publicPath": "/assets/js/013b8728.00dc75b7.js" - } - ] - }, - "1416": { - "js": [ - { - "file": "assets/js/fb12fd2d.359aef93.js", - "hash": "f45a5659785e66b5", - "publicPath": "/assets/js/fb12fd2d.359aef93.js" - } - ] - }, - "1461": { - "js": [ - { - "file": "assets/js/c76e097b.23e4c250.js", - "hash": "f0eaffb89b3a2a19", - "publicPath": "/assets/js/c76e097b.23e4c250.js" - } - ] - }, - "1471": { - "js": [ - { - "file": "assets/js/3721b01f.84024fe5.js", - "hash": "4686780b36016dac", - "publicPath": "/assets/js/3721b01f.84024fe5.js" - } - ] - }, - "1484": { - "js": [ - { - "file": "assets/js/023320c3.0b0aee48.js", - "hash": "ffc1982cf05c20ae", - "publicPath": "/assets/js/023320c3.0b0aee48.js" - } - ] - }, - "1499": { - "js": [ - { - "file": "assets/js/81862c4f.a3dbfbec.js", - "hash": "fe911c86a291d42b", - "publicPath": "/assets/js/81862c4f.a3dbfbec.js" - } - ] - }, - "1576": { - "js": [ - { - "file": "assets/js/dc1c5b3c.37aae50a.js", - "hash": "e252addab1c417a5", - "publicPath": "/assets/js/dc1c5b3c.37aae50a.js" - } - ] - }, - "1609": { - "js": [ - { - "file": "assets/js/d12c5626.5d2428c6.js", - "hash": "b29c9e8c1a4b85ef", - "publicPath": "/assets/js/d12c5626.5d2428c6.js" - } - ] - }, - "1635": { - "js": [ - { - "file": "assets/js/e8cbe097.b5426eca.js", - "hash": "7cf4ca66f00e62bb", - "publicPath": "/assets/js/e8cbe097.b5426eca.js" - } - ] - }, - "1641": { - "js": [ - { - "file": "assets/js/bb53f532.3ca3dc76.js", - "hash": "a3bd44f446f92ff6", - "publicPath": "/assets/js/bb53f532.3ca3dc76.js" - } - ] - }, - "1676": { - "js": [ - { - "file": "assets/js/b6006dd7.ba122014.js", - "hash": "5a6c6e955bc45edf", - "publicPath": "/assets/js/b6006dd7.ba122014.js" - } - ] - }, - "1705": { - "js": [ - { - "file": "assets/js/ffd85642.22af644c.js", - "hash": "28c73d637732aa33", - "publicPath": "/assets/js/ffd85642.22af644c.js" - } - ] - }, - "1730": { - "js": [ - { - "file": "assets/js/4cd0de40.b8ac9f08.js", - "hash": "594dbb7c3c3f3102", - "publicPath": "/assets/js/4cd0de40.b8ac9f08.js" - } - ] - }, - "1753": { - "js": [ - { - "file": "assets/js/4ed1386c.bd3a0126.js", - "hash": "40ed48b75e341aa4", - "publicPath": "/assets/js/4ed1386c.bd3a0126.js" - } - ] - }, - "1771": { - "js": [ - { - "file": "assets/js/2bb712de.69cc05b7.js", - "hash": "581df78f06d4babe", - "publicPath": "/assets/js/2bb712de.69cc05b7.js" - } - ] - }, - "1796": { - "js": [ - { - "file": "assets/js/22580739.c295ad26.js", - "hash": "5b119b0f9bd1f1b7", - "publicPath": "/assets/js/22580739.c295ad26.js" - } - ] - }, - "1802": { - "js": [ - { - "file": "assets/js/55156658.470750cd.js", - "hash": "7e198384a476057c", - "publicPath": "/assets/js/55156658.470750cd.js" - } - ] - }, - "1876": { - "js": [ - { - "file": "assets/js/2eb4ec02.c25f882c.js", - "hash": "796160ff2dffd68c", - "publicPath": "/assets/js/2eb4ec02.c25f882c.js" - } - ] - }, - "1878": { - "js": [ - { - "file": "assets/js/310a23cf.354702fe.js", - "hash": "9eb4dca98b508dfb", - "publicPath": "/assets/js/310a23cf.354702fe.js" - } - ] - }, - "1944": { - "js": [ - { - "file": "assets/js/5eaf3a75.b6476275.js", - "hash": "72db721913a78e93", - "publicPath": "/assets/js/5eaf3a75.b6476275.js" - } - ] - }, - "1949": { - "js": [ - { - "file": "assets/js/cc44517e.04005ed9.js", - "hash": "3b95db42679a9fb1", - "publicPath": "/assets/js/cc44517e.04005ed9.js" - } - ] - }, - "1961": { - "js": [ - { - "file": "assets/js/9a7e4ef7.aab35289.js", - "hash": "61db5d521a4e10e7", - "publicPath": "/assets/js/9a7e4ef7.aab35289.js" - } - ] - }, - "1990": { - "js": [ - { - "file": "assets/js/10779e77.f565d9f8.js", - "hash": "6cf54299bc1fe78a", - "publicPath": "/assets/js/10779e77.f565d9f8.js" - } - ] - }, - "2092": { - "js": [ - { - "file": "assets/js/0d8de604.4e8ef227.js", - "hash": "5464cfd7253c0c9c", - "publicPath": "/assets/js/0d8de604.4e8ef227.js" - } - ] - }, - "2237": { - "js": [ - { - "file": "assets/js/458ed5bd.2b599050.js", - "hash": "1918a5f6f8fe2bad", - "publicPath": "/assets/js/458ed5bd.2b599050.js" - } - ] - }, - "2384": { - "js": [ - { - "file": "assets/js/b2206ab4.41782673.js", - "hash": "b2cb3f51dd4cf5a6", - "publicPath": "/assets/js/b2206ab4.41782673.js" - } - ] - }, - "2406": { - "js": [ - { - "file": "assets/js/44655909.b8726063.js", - "hash": "dc8689e392e03924", - "publicPath": "/assets/js/44655909.b8726063.js" - } - ] - }, - "2439": { - "js": [ - { - "file": "assets/js/276e2b0f.038d5041.js", - "hash": "7f80aa5b8d23849d", - "publicPath": "/assets/js/276e2b0f.038d5041.js" - } - ] - }, - "2533": { - "js": [ - { - "file": "assets/js/3a7c0cf6.562915c6.js", - "hash": "4a5211a55eba227e", - "publicPath": "/assets/js/3a7c0cf6.562915c6.js" - } - ] - }, - "2534": { - "js": [ - { - "file": "assets/js/300d0b41.5cef7702.js", - "hash": "42697f2223826c2a", - "publicPath": "/assets/js/300d0b41.5cef7702.js" - } - ] - }, - "2550": { - "js": [ - { - "file": "assets/js/a47b7f3a.8d81acfc.js", - "hash": "16b3cd79cdbecf73", - "publicPath": "/assets/js/a47b7f3a.8d81acfc.js" - } - ] - }, - "2556": { - "js": [ - { - "file": "assets/js/278121a5.7e56d748.js", - "hash": "e844be1419c9787d", - "publicPath": "/assets/js/278121a5.7e56d748.js" - } - ] - }, - "2562": { - "js": [ - { - "file": "assets/js/224f2b0f.8af2269b.js", - "hash": "56c7bc3991945f18", - "publicPath": "/assets/js/224f2b0f.8af2269b.js" - } - ] - }, - "2582": { - "js": [ - { - "file": "assets/js/d96af704.04e6c2f5.js", - "hash": "49e5e79ff98d229c", - "publicPath": "/assets/js/d96af704.04e6c2f5.js" - } - ] - }, - "2606": { - "js": [ - { - "file": "assets/js/bd02e23f.8a98568b.js", - "hash": "8abf2c6c58a12684", - "publicPath": "/assets/js/bd02e23f.8a98568b.js" - } - ] - }, - "2636": { - "js": [ - { - "file": "assets/js/2a42d1d2.2b1dab84.js", - "hash": "0028094bf3f3a6ff", - "publicPath": "/assets/js/2a42d1d2.2b1dab84.js" - } - ] - }, - "2650": { - "js": [ - { - "file": "assets/js/55403ccd.7e8b474f.js", - "hash": "e243c75af5a17927", - "publicPath": "/assets/js/55403ccd.7e8b474f.js" - } - ] - }, - "2673": { - "js": [ - { - "file": "assets/js/78ec2f26.d26b0d60.js", - "hash": "3ee65eb7023b399a", - "publicPath": "/assets/js/78ec2f26.d26b0d60.js" - } - ] - }, - "2773": { - "js": [ - { - "file": "assets/js/b22d161b.e40b35f9.js", - "hash": "735566ea6c1e4cd3", - "publicPath": "/assets/js/b22d161b.e40b35f9.js" - } - ] - }, - "2776": { - "js": [ - { - "file": "assets/js/fe112e79.d15323e0.js", - "hash": "f1e66318ae21c627", - "publicPath": "/assets/js/fe112e79.d15323e0.js" - } - ] - }, - "2862": { - "js": [ - { - "file": "assets/js/f0eb83f3.c613762a.js", - "hash": "c5f1805b8cda625c", - "publicPath": "/assets/js/f0eb83f3.c613762a.js" - } - ] - }, - "2874": { - "js": [ - { - "file": "assets/js/c2accac3.e9fa7af1.js", - "hash": "5f903632ce48a10c", - "publicPath": "/assets/js/c2accac3.e9fa7af1.js" - } - ] - }, - "2922": { - "js": [ - { - "file": "assets/js/4f577b60.1e133094.js", - "hash": "8bcb9aadad00e640", - "publicPath": "/assets/js/4f577b60.1e133094.js" - } - ] - }, - "3011": { - "js": [ - { - "file": "assets/js/6f7695df.bc01066d.js", - "hash": "2c8fced78473ada0", - "publicPath": "/assets/js/6f7695df.bc01066d.js" - } - ] - }, - "3062": { - "js": [ - { - "file": "assets/js/9a52cc21.55fdaf51.js", - "hash": "ad1ed13d3e498cd9", - "publicPath": "/assets/js/9a52cc21.55fdaf51.js" - } - ] - }, - "3164": { - "js": [ - { - "file": "assets/js/58354ae8.85a279e2.js", - "hash": "46e14054604d30f1", - "publicPath": "/assets/js/58354ae8.85a279e2.js" - } - ] - }, - "3185": { - "js": [ - { - "file": "assets/js/a43060c8.ee2e4b77.js", - "hash": "6877fff3fe2fad72", - "publicPath": "/assets/js/a43060c8.ee2e4b77.js" - } - ] - }, - "3238": { - "js": [ - { - "file": "assets/js/27b20541.9df80c26.js", - "hash": "cace9532de406fa9", - "publicPath": "/assets/js/27b20541.9df80c26.js" - } - ] - }, - "3259": { - "js": [ - { - "file": "assets/js/2888903d.51d83478.js", - "hash": "2f8a7a4bba4777f7", - "publicPath": "/assets/js/2888903d.51d83478.js" - } - ] - }, - "3312": { - "js": [ - { - "file": "assets/js/a7294da8.f960e7b6.js", - "hash": "e7112bda2e60dd2b", - "publicPath": "/assets/js/a7294da8.f960e7b6.js" - } - ] - }, - "3338": { - "js": [ - { - "file": "assets/js/3da8114c.ab71d86c.js", - "hash": "7bd0880f440e3de2", - "publicPath": "/assets/js/3da8114c.ab71d86c.js" - } - ] - }, - "3381": { - "js": [ - { - "file": "assets/js/8498c216.483f8889.js", - "hash": "d06d648af0e2b7cd", - "publicPath": "/assets/js/8498c216.483f8889.js" - } - ] - }, - "3447": { - "js": [ - { - "file": "assets/js/d3abb5b7.640f0573.js", - "hash": "a17d03670484ff95", - "publicPath": "/assets/js/d3abb5b7.640f0573.js" - } - ] - }, - "3454": { - "js": [ - { - "file": "assets/js/69bee932.6293f4c3.js", - "hash": "829f0b986d5b9952", - "publicPath": "/assets/js/69bee932.6293f4c3.js" - } - ] - }, - "3463": { - "js": [ - { - "file": "assets/js/60b8b995.930e9ed4.js", - "hash": "ce1c678b4626ff8c", - "publicPath": "/assets/js/60b8b995.930e9ed4.js" - } - ] - }, - "3469": { - "js": [ - { - "file": "assets/js/525fa7b4.d831b2a1.js", - "hash": "76e1fd97fd2e1271", - "publicPath": "/assets/js/525fa7b4.d831b2a1.js" - } - ] - }, - "3479": { - "js": [ - { - "file": "assets/js/0cab3fcc.3e130c9f.js", - "hash": "345c2d17d4967e40", - "publicPath": "/assets/js/0cab3fcc.3e130c9f.js" - } - ] - }, - "3512": { - "js": [ - { - "file": "assets/js/3aad05b1.104008e1.js", - "hash": "058cf592e0c40afc", - "publicPath": "/assets/js/3aad05b1.104008e1.js" - } - ] - }, - "3515": { - "js": [ - { - "file": "assets/js/3ac80ba6.422c9557.js", - "hash": "8c05d14b2b435216", - "publicPath": "/assets/js/3ac80ba6.422c9557.js" - } - ] - }, - "3521": { - "js": [ - { - "file": "assets/js/f9241299.ae0ff57f.js", - "hash": "0b4f95df3fa955cc", - "publicPath": "/assets/js/f9241299.ae0ff57f.js" - } - ] - }, - "3590": { - "js": [ - { - "file": "assets/js/3615d78a.3807e0ad.js", - "hash": "62b217bb3e2233d3", - "publicPath": "/assets/js/3615d78a.3807e0ad.js" - } - ] - }, - "3595": { - "js": [ - { - "file": "assets/js/052c7f5b.14bc812c.js", - "hash": "b673e5a3896cf3c5", - "publicPath": "/assets/js/052c7f5b.14bc812c.js" - } - ] - }, - "3751": { - "js": [ - { - "file": "assets/js/3720c009.338a7bf9.js", - "hash": "d3ff827c0c6af5df", - "publicPath": "/assets/js/3720c009.338a7bf9.js" - } - ] - }, - "3755": { - "js": [ - { - "file": "assets/js/4efb7b3c.be24ab7e.js", - "hash": "934a2e0704cf227a", - "publicPath": "/assets/js/4efb7b3c.be24ab7e.js" - } - ] - }, - "3857": { - "js": [ - { - "file": "assets/js/b7abf355.3efee814.js", - "hash": "c990b0f5cc22bb58", - "publicPath": "/assets/js/b7abf355.3efee814.js" - } - ] - }, - "3869": { - "js": [ - { - "file": "assets/js/69bed9e5.beaa4e66.js", - "hash": "a94198772ee1922c", - "publicPath": "/assets/js/69bed9e5.beaa4e66.js" - } - ] - }, - "3878": { - "js": [ - { - "file": "assets/js/83533542.3cdad65c.js", - "hash": "3873ac871be657d4", - "publicPath": "/assets/js/83533542.3cdad65c.js" - } - ] - }, - "3914": { - "js": [ - { - "file": "assets/js/df59b4b5.ff304573.js", - "hash": "95f4fd2f7884aa1a", - "publicPath": "/assets/js/df59b4b5.ff304573.js" - } - ] - }, - "3939": { - "js": [ - { - "file": "assets/js/5436f7e6.ae12cb28.js", - "hash": "edd86fe8d31d32be", - "publicPath": "/assets/js/5436f7e6.ae12cb28.js" - } - ] - }, - "3998": { - "js": [ - { - "file": "assets/js/7ce1d842.a668998d.js", - "hash": "baeef178ea9336cf", - "publicPath": "/assets/js/7ce1d842.a668998d.js" - } - ] - }, - "4033": { - "js": [ - { - "file": "assets/js/5ccd3149.73f6caf1.js", - "hash": "8c3eebc47eff5217", - "publicPath": "/assets/js/5ccd3149.73f6caf1.js" - } - ] - }, - "4121": { - "js": [ - { - "file": "assets/js/55960ee5.cbec5c8f.js", - "hash": "c053ad7d7262955f", - "publicPath": "/assets/js/55960ee5.cbec5c8f.js" - } - ] - }, - "4158": { - "js": [ - { - "file": "assets/js/6a0eac6b.c7b46c9e.js", - "hash": "9311c901b72f204f", - "publicPath": "/assets/js/6a0eac6b.c7b46c9e.js" - } - ] - }, - "4166": { - "js": [ - { - "file": "assets/js/c1dfffdd.814c622b.js", - "hash": "db8e353983100d26", - "publicPath": "/assets/js/c1dfffdd.814c622b.js" - } - ] - }, - "4177": { - "js": [ - { - "file": "assets/js/7e18769a.6bcd0fe7.js", - "hash": "af3617ebd872136b", - "publicPath": "/assets/js/7e18769a.6bcd0fe7.js" - } - ] - }, - "4193": { - "js": [ - { - "file": "assets/js/88cc213e.37ccf1de.js", - "hash": "edd6281c81f86306", - "publicPath": "/assets/js/88cc213e.37ccf1de.js" - } - ] - }, - "4223": { - "js": [ - { - "file": "assets/js/7a733070.7ccc054e.js", - "hash": "a99d856a56c08f41", - "publicPath": "/assets/js/7a733070.7ccc054e.js" - } - ] - }, - "4248": { - "js": [ - { - "file": "assets/js/4248.e34bdfc3.js", - "hash": "034a44c1ed517195", - "publicPath": "/assets/js/4248.e34bdfc3.js" - }, - { - "file": "assets/js/1be78505.ad6e3293.js", - "hash": "06c87c2a94dbc281", - "publicPath": "/assets/js/1be78505.ad6e3293.js" - } - ] - }, - "4289": { - "js": [ - { - "file": "assets/js/69895f00.9ec35ff3.js", - "hash": "85bb0e79d2478e95", - "publicPath": "/assets/js/69895f00.9ec35ff3.js" - } - ] - }, - "4304": { - "js": [ - { - "file": "assets/js/45c1aab2.804e189d.js", - "hash": "8377152cb269e1e0", - "publicPath": "/assets/js/45c1aab2.804e189d.js" - } - ] - }, - "4307": { - "js": [ - { - "file": "assets/js/99f674e5.234e2bc0.js", - "hash": "2df8b25dd2d45ee4", - "publicPath": "/assets/js/99f674e5.234e2bc0.js" - } - ] - }, - "4333": { - "js": [ - { - "file": "assets/js/9d4ed5ff.35c99d38.js", - "hash": "febde7348adb4828", - "publicPath": "/assets/js/9d4ed5ff.35c99d38.js" - } - ] - }, - "4341": { - "js": [ - { - "file": "assets/js/e55064b4.a4ae7d26.js", - "hash": "51d903481f536dc1", - "publicPath": "/assets/js/e55064b4.a4ae7d26.js" - } - ] - }, - "4364": { - "js": [ - { - "file": "assets/js/34b71ab6.001a0e94.js", - "hash": "0a7514b193c86ef8", - "publicPath": "/assets/js/34b71ab6.001a0e94.js" - } - ] - }, - "4493": { - "js": [ - { - "file": "assets/js/17a7e1f3.399e6aa4.js", - "hash": "bb44fd388a689806", - "publicPath": "/assets/js/17a7e1f3.399e6aa4.js" - } - ] - }, - "4507": { - "js": [ - { - "file": "assets/js/87e9af65.48fa1223.js", - "hash": "90f09bb138125a22", - "publicPath": "/assets/js/87e9af65.48fa1223.js" - } - ] - }, - "4513": { - "js": [ - { - "file": "assets/js/c7dc53b4.01f863c3.js", - "hash": "ee1acd1a1be4d7fe", - "publicPath": "/assets/js/c7dc53b4.01f863c3.js" - } - ] - }, - "4570": { - "js": [ - { - "file": "assets/js/824dfda1.9af56b1b.js", - "hash": "52fc67fc994c7c15", - "publicPath": "/assets/js/824dfda1.9af56b1b.js" - } - ] - }, - "4660": { - "js": [ - { - "file": "assets/js/c93390fb.5b109333.js", - "hash": "44f19a9d1bad4d06", - "publicPath": "/assets/js/c93390fb.5b109333.js" - } - ] - }, - "4743": { - "js": [ - { - "file": "assets/js/d767d123.d7439638.js", - "hash": "a0c9c9127c9fbe0b", - "publicPath": "/assets/js/d767d123.d7439638.js" - } - ] - }, - "4769": { - "js": [ - { - "file": "assets/js/9aad2067.61e14272.js", - "hash": "eb0a059bd6974b4c", - "publicPath": "/assets/js/9aad2067.61e14272.js" - } - ] - }, - "4796": { - "js": [ - { - "file": "assets/js/1e403fb7.960437d1.js", - "hash": "e1ff4ae0ff8a0fb9", - "publicPath": "/assets/js/1e403fb7.960437d1.js" - } - ] - }, - "4815": { - "js": [ - { - "file": "assets/js/70efa42e.be7c4684.js", - "hash": "cbbcc74fc4e1fa27", - "publicPath": "/assets/js/70efa42e.be7c4684.js" - } - ] - }, - "4829": { - "js": [ - { - "file": "assets/js/2a1ace55.e7541d41.js", - "hash": "b7fb39793e0f7fcd", - "publicPath": "/assets/js/2a1ace55.e7541d41.js" - } - ] - }, - "4851": { - "js": [ - { - "file": "assets/js/eb689018.91bb7d8c.js", - "hash": "f1bc7a649c2b785f", - "publicPath": "/assets/js/eb689018.91bb7d8c.js" - } - ] - }, - "4882": { - "js": [ - { - "file": "assets/js/da4f93ee.726abd64.js", - "hash": "939a2d6ce3eee2f6", - "publicPath": "/assets/js/da4f93ee.726abd64.js" - } - ] - }, - "4918": { - "js": [ - { - "file": "assets/js/147f12f7.c9c849d0.js", - "hash": "5648c574910f7284", - "publicPath": "/assets/js/147f12f7.c9c849d0.js" - } - ] - }, - "4936": { - "js": [ - { - "file": "assets/js/09ceb1a0.051f7a95.js", - "hash": "3d2511eef0caf741", - "publicPath": "/assets/js/09ceb1a0.051f7a95.js" - } - ] - }, - "5017": { - "js": [ - { - "file": "assets/js/7d5d7de6.f1090b5b.js", - "hash": "43fe499021669220", - "publicPath": "/assets/js/7d5d7de6.f1090b5b.js" - } - ] - }, - "5055": { - "js": [ - { - "file": "assets/js/e631982f.bf2deaa3.js", - "hash": "b6702cfaca6c4840", - "publicPath": "/assets/js/e631982f.bf2deaa3.js" - } - ] - }, - "5084": { - "js": [ - { - "file": "assets/js/2fa98934.581c1f3f.js", - "hash": "1ec63a353e2de2c0", - "publicPath": "/assets/js/2fa98934.581c1f3f.js" - } - ] - }, - "5150": { - "js": [ - { - "file": "assets/js/524f61e0.c5e4a4df.js", - "hash": "d87c830cca7f423c", - "publicPath": "/assets/js/524f61e0.c5e4a4df.js" - } - ] - }, - "5187": { - "js": [ - { - "file": "assets/js/5c9cf4c7.125f1c65.js", - "hash": "efeb6b83ec692cb8", - "publicPath": "/assets/js/5c9cf4c7.125f1c65.js" - } - ] - }, - "5207": { - "js": [ - { - "file": "assets/js/4bab5100.545955ea.js", - "hash": "5b19a0897ef4602b", - "publicPath": "/assets/js/4bab5100.545955ea.js" - } - ] - }, - "5228": { - "js": [ - { - "file": "assets/js/cc9fede1.611038ee.js", - "hash": "75a91e616de9fee3", - "publicPath": "/assets/js/cc9fede1.611038ee.js" - } - ] - }, - "5283": { - "js": [ - { - "file": "assets/js/a54c3ef6.d8cc893c.js", - "hash": "f2483dd54d1cb1a6", - "publicPath": "/assets/js/a54c3ef6.d8cc893c.js" - } - ] - }, - "5305": { - "js": [ - { - "file": "assets/js/0ac1e38e.109d5fe8.js", - "hash": "63754c4683e51fb2", - "publicPath": "/assets/js/0ac1e38e.109d5fe8.js" - } - ] - }, - "5336": { - "js": [ - { - "file": "assets/js/11d84c26.2e1c8b09.js", - "hash": "4b47010e586cbffb", - "publicPath": "/assets/js/11d84c26.2e1c8b09.js" - } - ] - }, - "5375": { - "js": [ - { - "file": "assets/js/23371042.057e65b7.js", - "hash": "d65f535e8d4c2016", - "publicPath": "/assets/js/23371042.057e65b7.js" - } - ] - }, - "5404": { - "js": [ - { - "file": "assets/js/1b14dca8.333819cc.js", - "hash": "16c825233cb6237e", - "publicPath": "/assets/js/1b14dca8.333819cc.js" - } - ] - }, - "5407": { - "js": [ - { - "file": "assets/js/fb60c522.193b638a.js", - "hash": "a56060daf142915f", - "publicPath": "/assets/js/fb60c522.193b638a.js" - } - ] - }, - "5408": { - "js": [ - { - "file": "assets/js/105fb6bf.280db2b3.js", - "hash": "fbbfa16c824a24ea", - "publicPath": "/assets/js/105fb6bf.280db2b3.js" - } - ] - }, - "5413": { - "js": [ - { - "file": "assets/js/d427e024.48b2c64a.js", - "hash": "2518c202760f4c5b", - "publicPath": "/assets/js/d427e024.48b2c64a.js" - } - ] - }, - "5518": { - "js": [ - { - "file": "assets/js/1c2ab191.851a48ce.js", - "hash": "2b6aa0b1570ba16d", - "publicPath": "/assets/js/1c2ab191.851a48ce.js" - } - ] - }, - "5580": { - "js": [ - { - "file": "assets/js/7c4b6d90.1548a3a9.js", - "hash": "60993248ee6a1011", - "publicPath": "/assets/js/7c4b6d90.1548a3a9.js" - } - ] - }, - "5631": { - "js": [ - { - "file": "assets/js/2c8a1eac.ac4ffa9d.js", - "hash": "eae15312c27df832", - "publicPath": "/assets/js/2c8a1eac.ac4ffa9d.js" - } - ] - }, - "5707": { - "js": [ - { - "file": "assets/js/0bd8cdc6.f4a94a31.js", - "hash": "a0c5e38853ecd515", - "publicPath": "/assets/js/0bd8cdc6.f4a94a31.js" - } - ] - }, - "5772": { - "js": [ - { - "file": "assets/js/576905f1.a8188808.js", - "hash": "afe39f93984b3583", - "publicPath": "/assets/js/576905f1.a8188808.js" - } - ] - }, - "5822": { - "js": [ - { - "file": "assets/js/0f4f52c0.85366991.js", - "hash": "a6c84744ccbd67f5", - "publicPath": "/assets/js/0f4f52c0.85366991.js" - } - ] - }, - "5837": { - "js": [ - { - "file": "assets/js/2d8eea4e.8c1789a5.js", - "hash": "0993e6c70c23f403", - "publicPath": "/assets/js/2d8eea4e.8c1789a5.js" - } - ] - }, - "5919": { - "js": [ - { - "file": "assets/js/ab9ce1e1.c031a608.js", - "hash": "aed752e3e12b91c8", - "publicPath": "/assets/js/ab9ce1e1.c031a608.js" - } - ] - }, - "5921": { - "js": [ - { - "file": "assets/js/ec134df3.cd78c814.js", - "hash": "233921ac2a6e0f5f", - "publicPath": "/assets/js/ec134df3.cd78c814.js" - } - ] - }, - "5922": { - "js": [ - { - "file": "assets/js/14095bfc.5bd9a5ce.js", - "hash": "f5f7f2d48ef23e07", - "publicPath": "/assets/js/14095bfc.5bd9a5ce.js" - } - ] - }, - "6078": { - "js": [ - { - "file": "assets/js/6502d10a.1b9ec360.js", - "hash": "56d9afa620f0e62f", - "publicPath": "/assets/js/6502d10a.1b9ec360.js" - } - ] - }, - "6090": { - "js": [ - { - "file": "assets/js/9db0d30f.674a8590.js", - "hash": "fdd901f63da9dc09", - "publicPath": "/assets/js/9db0d30f.674a8590.js" - } - ] - }, - "6125": { - "js": [ - { - "file": "assets/js/ec135315.aecf4cd4.js", - "hash": "315e9c152ea633de", - "publicPath": "/assets/js/ec135315.aecf4cd4.js" - } - ] - }, - "6141": { - "js": [ - { - "file": "assets/js/855d76bb.e625ba60.js", - "hash": "523de2d795634227", - "publicPath": "/assets/js/855d76bb.e625ba60.js" - } - ] - }, - "6157": { - "js": [ - { - "file": "assets/js/0f6b8098.784442da.js", - "hash": "d5b3c1ebf4a95e89", - "publicPath": "/assets/js/0f6b8098.784442da.js" - } - ] - }, - "6187": { - "js": [ - { - "file": "assets/js/0908b333.1184b641.js", - "hash": "b83589f935548738", - "publicPath": "/assets/js/0908b333.1184b641.js" - } - ] - }, - "6263": { - "js": [ - { - "file": "assets/js/e4367861.1ba5124c.js", - "hash": "bc3de6da9fc589f1", - "publicPath": "/assets/js/e4367861.1ba5124c.js" - } - ] - }, - "6325": { - "js": [ - { - "file": "assets/js/4c6b0ee7.d5e33ead.js", - "hash": "7c54d0d74420c46c", - "publicPath": "/assets/js/4c6b0ee7.d5e33ead.js" - } - ] - }, - "6570": { - "js": [ - { - "file": "assets/js/03af2c79.500a3d05.js", - "hash": "a73c3ef184fcfb40", - "publicPath": "/assets/js/03af2c79.500a3d05.js" - } - ] - }, - "6591": { - "js": [ - { - "file": "assets/js/61a3d417.ce3d8609.js", - "hash": "641f7c061b98d347", - "publicPath": "/assets/js/61a3d417.ce3d8609.js" - } - ] - }, - "6640": { - "js": [ - { - "file": "assets/js/6485a1bf.e10c8ea8.js", - "hash": "501a8e97b06ff78b", - "publicPath": "/assets/js/6485a1bf.e10c8ea8.js" - } - ] - }, - "6713": { - "js": [ - { - "file": "assets/js/abbfc25c.abf3c634.js", - "hash": "509597c8a9398880", - "publicPath": "/assets/js/abbfc25c.abf3c634.js" - } - ] - }, - "6714": { - "js": [ - { - "file": "assets/js/ae9857c7.492b458b.js", - "hash": "cc9a6c62ca9118e5", - "publicPath": "/assets/js/ae9857c7.492b458b.js" - } - ] - }, - "6779": { - "js": [ - { - "file": "assets/js/ba1d2c5b.665f4352.js", - "hash": "73be0008071e6eb2", - "publicPath": "/assets/js/ba1d2c5b.665f4352.js" - } - ] - }, - "6786": { - "js": [ - { - "file": "assets/js/181f370e.1ae3037d.js", - "hash": "a50449717c6b4574", - "publicPath": "/assets/js/181f370e.1ae3037d.js" - } - ] - }, - "6799": { - "js": [ - { - "file": "assets/js/31befc1e.16ef0a7f.js", - "hash": "cc232e071b2e8e9c", - "publicPath": "/assets/js/31befc1e.16ef0a7f.js" - } - ] - }, - "6859": { - "js": [ - { - "file": "assets/js/e68e0fff.ebde1054.js", - "hash": "8ff775b0fd23aab9", - "publicPath": "/assets/js/e68e0fff.ebde1054.js" - } - ] - }, - "6907": { - "js": [ - { - "file": "assets/js/22aab9a3.2b8d519f.js", - "hash": "73624d0f93033e71", - "publicPath": "/assets/js/22aab9a3.2b8d519f.js" - } - ] - }, - "6928": { - "js": [ - { - "file": "assets/js/a18f2535.8d3c4ad3.js", - "hash": "986d696ce1dfb269", - "publicPath": "/assets/js/a18f2535.8d3c4ad3.js" - } - ] - }, - "6999": { - "js": [ - { - "file": "assets/js/9e1a113d.f5eca232.js", - "hash": "2ad2b8b19a1c4fef", - "publicPath": "/assets/js/9e1a113d.f5eca232.js" - } - ] - }, - "7023": { - "js": [ - { - "file": "assets/js/90e43058.f9839c0b.js", - "hash": "5d4730e4807a23b6", - "publicPath": "/assets/js/90e43058.f9839c0b.js" - } - ] - }, - "7075": { - "js": [ - { - "file": "assets/js/0938fe36.179be5b4.js", - "hash": "7439bc118c6c0f82", - "publicPath": "/assets/js/0938fe36.179be5b4.js" - } - ] - }, - "7096": { - "js": [ - { - "file": "assets/js/c1501dcb.9f4cc897.js", - "hash": "da9663ad8a92b237", - "publicPath": "/assets/js/c1501dcb.9f4cc897.js" - } - ] - }, - "7130": { - "js": [ - { - "file": "assets/js/31f9cd1a.6c6a0927.js", - "hash": "32e0a103db1e5fab", - "publicPath": "/assets/js/31f9cd1a.6c6a0927.js" - } - ] - }, - "7152": { - "js": [ - { - "file": "assets/js/529c2981.677765b3.js", - "hash": "4710ad1e9c0731a9", - "publicPath": "/assets/js/529c2981.677765b3.js" - } - ] - }, - "7219": { - "js": [ - { - "file": "assets/js/6fe2a298.b467aef4.js", - "hash": "8e8932a97926e3de", - "publicPath": "/assets/js/6fe2a298.b467aef4.js" - } - ] - }, - "7235": { - "js": [ - { - "file": "assets/js/f9538193.fde8c993.js", - "hash": "722288f805744b68", - "publicPath": "/assets/js/f9538193.fde8c993.js" - } - ] - }, - "7283": { - "js": [ - { - "file": "assets/js/e5a54c1b.0a3807ee.js", - "hash": "34a1f386caa08550", - "publicPath": "/assets/js/e5a54c1b.0a3807ee.js" - } - ] - }, - "7395": { - "js": [ - { - "file": "assets/js/5dcc9f57.9467da66.js", - "hash": "5fb5866bc4d3109b", - "publicPath": "/assets/js/5dcc9f57.9467da66.js" - } - ] - }, - "7530": { - "js": [ - { - "file": "assets/js/4145e2b1.0176e1e6.js", - "hash": "9fe9e76d2a4170f2", - "publicPath": "/assets/js/4145e2b1.0176e1e6.js" - } - ] - }, - "7539": { - "js": [ - { - "file": "assets/js/14d6025d.6240037c.js", - "hash": "ed1943a980dcbf1f", - "publicPath": "/assets/js/14d6025d.6240037c.js" - } - ] - }, - "7549": { - "js": [ - { - "file": "assets/js/68fa8000.62a54fd8.js", - "hash": "a4de7792db1c8ac1", - "publicPath": "/assets/js/68fa8000.62a54fd8.js" - } - ] - }, - "7592": { - "js": [ - { - "file": "assets/js/6a105426.d17cfd2e.js", - "hash": "1eb2740554c591a1", - "publicPath": "/assets/js/6a105426.d17cfd2e.js" - } - ] - }, - "7621": { - "js": [ - { - "file": "assets/js/61af7884.c006a056.js", - "hash": "1e6fcc4187f0b9ca", - "publicPath": "/assets/js/61af7884.c006a056.js" - } - ] - }, - "7647": { - "js": [ - { - "file": "assets/js/6233b6dc.8bf0398f.js", - "hash": "af0dccdc5b51d734", - "publicPath": "/assets/js/6233b6dc.8bf0398f.js" - } - ] - }, - "7657": { - "js": [ - { - "file": "assets/js/052736b6.bd8a9dbe.js", - "hash": "d62cad98888daafa", - "publicPath": "/assets/js/052736b6.bd8a9dbe.js" - } - ] - }, - "7661": { - "js": [ - { - "file": "assets/js/9906c9d3.a8346d13.js", - "hash": "38972071763fb6cd", - "publicPath": "/assets/js/9906c9d3.a8346d13.js" - } - ] - }, - "7666": { - "js": [ - { - "file": "assets/js/2d5bd7a1.324d6e70.js", - "hash": "7f0b7cbc00681630", - "publicPath": "/assets/js/2d5bd7a1.324d6e70.js" - } - ] - }, - "7700": { - "js": [ - { - "file": "assets/js/603e048e.2e2a8c89.js", - "hash": "217345456b140687", - "publicPath": "/assets/js/603e048e.2e2a8c89.js" - } - ] - }, - "7746": { - "js": [ - { - "file": "assets/js/f7d905ba.dd0c3349.js", - "hash": "ed3d66ba534eae4e", - "publicPath": "/assets/js/f7d905ba.dd0c3349.js" - } - ] - }, - "7820": { - "js": [ - { - "file": "assets/js/037e2c34.352552b1.js", - "hash": "3aec952dcc47193a", - "publicPath": "/assets/js/037e2c34.352552b1.js" - } - ] - }, - "7823": { - "js": [ - { - "file": "assets/js/9e7567e1.5a89169d.js", - "hash": "02856694e7284ba1", - "publicPath": "/assets/js/9e7567e1.5a89169d.js" - } - ] - }, - "7918": { - "js": [ - { - "file": "assets/js/17896441.476191cb.js", - "hash": "a8877a385a043031", - "publicPath": "/assets/js/17896441.476191cb.js" - } - ] - }, - "8000": { - "js": [ - { - "file": "assets/js/e4e12989.d9cb26c6.js", - "hash": "dc97189acbe877fa", - "publicPath": "/assets/js/e4e12989.d9cb26c6.js" - } - ] - }, - "8149": { - "js": [ - { - "file": "assets/js/1b3738fb.ad6025e7.js", - "hash": "8de7f4e196ab38aa", - "publicPath": "/assets/js/1b3738fb.ad6025e7.js" - } - ] - }, - "8221": { - "js": [ - { - "file": "assets/js/c3d0dca5.55fecbbe.js", - "hash": "854c0214264a17be", - "publicPath": "/assets/js/c3d0dca5.55fecbbe.js" - } - ] - }, - "8248": { - "js": [ - { - "file": "assets/js/408139c4.6b2f2ba2.js", - "hash": "8d5c51f236798739", - "publicPath": "/assets/js/408139c4.6b2f2ba2.js" - } - ] - }, - "8252": { - "js": [ - { - "file": "assets/js/177ad845.ca633ee4.js", - "hash": "a9467d8b37c37acc", - "publicPath": "/assets/js/177ad845.ca633ee4.js" - } - ] - }, - "8292": { - "js": [ - { - "file": "assets/js/8292.a12213f5.js", - "hash": "ccc35265474f2825", - "publicPath": "/assets/js/8292.a12213f5.js" - } - ] - }, - "8379": { - "js": [ - { - "file": "assets/js/d9e65f56.2ea8d2e6.js", - "hash": "e77968686c0f8401", - "publicPath": "/assets/js/d9e65f56.2ea8d2e6.js" - } - ] - }, - "8381": { - "js": [ - { - "file": "assets/js/9c78149d.29a2e4eb.js", - "hash": "b856b65ac19269e1", - "publicPath": "/assets/js/9c78149d.29a2e4eb.js" - } - ] - }, - "8395": { - "js": [ - { - "file": "assets/js/52df1fbb.ee608d54.js", - "hash": "2a24496073e4532c", - "publicPath": "/assets/js/52df1fbb.ee608d54.js" - } - ] - }, - "8511": { - "js": [ - { - "file": "assets/js/9040003c.c9e2d907.js", - "hash": "9d9d1a8c0aa64398", - "publicPath": "/assets/js/9040003c.c9e2d907.js" - } - ] - }, - "8535": { - "js": [ - { - "file": "assets/js/6aee45b4.2c53393f.js", - "hash": "02e79dc59987d2fc", - "publicPath": "/assets/js/6aee45b4.2c53393f.js" - } - ] - }, - "8537": { - "js": [ - { - "file": "assets/js/6a2ab9d1.97b9d597.js", - "hash": "c6ec4cab8ff9b1e4", - "publicPath": "/assets/js/6a2ab9d1.97b9d597.js" - } - ] - }, - "8673": { - "js": [ - { - "file": "assets/js/016441e2.64dc3cdb.js", - "hash": "424584bfd1aece08", - "publicPath": "/assets/js/016441e2.64dc3cdb.js" - } - ] - }, - "8690": { - "js": [ - { - "file": "assets/js/ed0a57e3.7eeb3e7c.js", - "hash": "ad4f34c10418e74e", - "publicPath": "/assets/js/ed0a57e3.7eeb3e7c.js" - } - ] - }, - "8704": { - "js": [ - { - "file": "assets/js/1e898359.49fc3451.js", - "hash": "4ad6fc321dfd66e4", - "publicPath": "/assets/js/1e898359.49fc3451.js" - } - ] - }, - "8750": { - "js": [ - { - "file": "assets/js/a9993c14.d9ac97ff.js", - "hash": "1f4b57fd47f154a7", - "publicPath": "/assets/js/a9993c14.d9ac97ff.js" - } - ] - }, - "8789": { - "js": [ - { - "file": "assets/js/25ad7bcb.2f98976a.js", - "hash": "a0e4d2e20477a479", - "publicPath": "/assets/js/25ad7bcb.2f98976a.js" - } - ] - }, - "8820": { - "js": [ - { - "file": "assets/js/d01bd8c5.e0aecdfc.js", - "hash": "db5e870fba289cb3", - "publicPath": "/assets/js/d01bd8c5.e0aecdfc.js" - } - ] - }, - "8838": { - "js": [ - { - "file": "assets/js/5af3a857.cf26c2a2.js", - "hash": "b5602e85d5913246", - "publicPath": "/assets/js/5af3a857.cf26c2a2.js" - } - ] - }, - "8880": { - "js": [ - { - "file": "assets/js/e28b0c4f.752cc726.js", - "hash": "932c3c77f0f3f098", - "publicPath": "/assets/js/e28b0c4f.752cc726.js" - } - ] - }, - "8946": { - "js": [ - { - "file": "assets/js/10b0edf0.d146c46b.js", - "hash": "46cb36ca37400a33", - "publicPath": "/assets/js/10b0edf0.d146c46b.js" - } - ] - }, - "8954": { - "js": [ - { - "file": "assets/js/71540999.772ad50f.js", - "hash": "f0d30c32858a82d8", - "publicPath": "/assets/js/71540999.772ad50f.js" - } - ] - }, - "8958": { - "js": [ - { - "file": "assets/js/b444d910.aba4d313.js", - "hash": "d5c40e9eaf552227", - "publicPath": "/assets/js/b444d910.aba4d313.js" - } - ] - }, - "9042": { - "js": [ - { - "file": "assets/js/a15cb612.c9dd5109.js", - "hash": "476d83c6e95b753a", - "publicPath": "/assets/js/a15cb612.c9dd5109.js" - } - ] - }, - "9060": { - "js": [ - { - "file": "assets/js/8a8a6f17.653b355b.js", - "hash": "40482e93dec0dcc4", - "publicPath": "/assets/js/8a8a6f17.653b355b.js" - } - ] - }, - "9069": { - "js": [ - { - "file": "assets/js/e56fdc78.daaabb90.js", - "hash": "5958aaf4383a9c96", - "publicPath": "/assets/js/e56fdc78.daaabb90.js" - } - ] - }, - "9123": { - "js": [ - { - "file": "assets/js/f4472a32.eac69fa1.js", - "hash": "4fb43fb02ef6583e", - "publicPath": "/assets/js/f4472a32.eac69fa1.js" - } - ] - }, - "9214": { - "js": [ - { - "file": "assets/js/f472468a.4d5c753c.js", - "hash": "c743613412b0e55e", - "publicPath": "/assets/js/f472468a.4d5c753c.js" - } - ] - }, - "9279": { - "js": [ - { - "file": "assets/js/9dfd9b1b.ab5611b0.js", - "hash": "d2184742aeb2e9dd", - "publicPath": "/assets/js/9dfd9b1b.ab5611b0.js" - } - ] - }, - "9383": { - "js": [ - { - "file": "assets/js/a71ccd0b.d973238c.js", - "hash": "cbae947ded8dcc8c", - "publicPath": "/assets/js/a71ccd0b.d973238c.js" - } - ] - }, - "9415": { - "js": [ - { - "file": "assets/js/f58fbde1.3093f817.js", - "hash": "a41863acdf827efe", - "publicPath": "/assets/js/f58fbde1.3093f817.js" - } - ] - }, - "9449": { - "js": [ - { - "file": "assets/js/18c96d41.bcfa9c73.js", - "hash": "1659b2af5f5e71f4", - "publicPath": "/assets/js/18c96d41.bcfa9c73.js" - } - ] - }, - "9485": { - "js": [ - { - "file": "assets/js/fc37d7fe.d2d08899.js", - "hash": "93d58705df7ac55b", - "publicPath": "/assets/js/fc37d7fe.d2d08899.js" - } - ] - }, - "9508": { - "js": [ - { - "file": "assets/js/523749b8.01d4c732.js", - "hash": "2e1d134777094fde", - "publicPath": "/assets/js/523749b8.01d4c732.js" - } - ] - }, - "9518": { - "js": [ - { - "file": "assets/js/95a14fd1.67033a09.js", - "hash": "177015324e654c0d", - "publicPath": "/assets/js/95a14fd1.67033a09.js" - } - ] - }, - "9542": { - "js": [ - { - "file": "assets/js/319e5695.735e7dd2.js", - "hash": "063c75fca86097d7", - "publicPath": "/assets/js/319e5695.735e7dd2.js" - } - ] - }, - "9552": { - "js": [ - { - "file": "assets/js/2226a1e9.03795cf8.js", - "hash": "9e425ee6f4e0f19b", - "publicPath": "/assets/js/2226a1e9.03795cf8.js" - } - ] - }, - "9554": { - "js": [ - { - "file": "assets/js/e12d67b0.8b3e506d.js", - "hash": "ef8989331f455852", - "publicPath": "/assets/js/e12d67b0.8b3e506d.js" - } - ] - }, - "9707": { - "js": [ - { - "file": "assets/js/ae730630.2af2cede.js", - "hash": "adbf91a078bee988", - "publicPath": "/assets/js/ae730630.2af2cede.js" - } - ] - }, - "9721": { - "js": [ - { - "file": "assets/js/bb516362.cc258886.js", - "hash": "6810a6719700ca6d", - "publicPath": "/assets/js/bb516362.cc258886.js" - } - ] - }, - "9789": { - "js": [ - { - "file": "assets/js/32e0f401.ac786e84.js", - "hash": "adf557e431bb0e0b", - "publicPath": "/assets/js/32e0f401.ac786e84.js" - } - ] - }, - "9850": { - "js": [ - { - "file": "assets/js/9995b2be.987e5cba.js", - "hash": "867bb09b485ce516", - "publicPath": "/assets/js/9995b2be.987e5cba.js" - } - ] - }, - "9868": { - "js": [ - { - "file": "assets/js/ded49de4.e9b043b2.js", - "hash": "acb71a1915aa2625", - "publicPath": "/assets/js/ded49de4.e9b043b2.js" - } - ] - }, - "9874": { - "js": [ - { - "file": "assets/js/832fc58a.7ec34339.js", - "hash": "f525a99233c3a2ae", - "publicPath": "/assets/js/832fc58a.7ec34339.js" - } - ] - }, - "9893": { - "js": [ - { - "file": "assets/js/98de4c79.996b1d1f.js", - "hash": "95903d0620382c00", - "publicPath": "/assets/js/98de4c79.996b1d1f.js" - } - ] - }, - "9924": { - "js": [ - { - "file": "assets/js/df203c0f.fb9780e2.js", - "hash": "0dea7e4e9dc6f7b7", - "publicPath": "/assets/js/df203c0f.fb9780e2.js" - } - ] - }, - "9933": { - "js": [ - { - "file": "assets/js/654123f4.09f2f089.js", - "hash": "724509b5446ff58b", - "publicPath": "/assets/js/654123f4.09f2f089.js" - } - ] - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/client-modules.js b/packages/noco-docs/.docusaurus/client-modules.js deleted file mode 100644 index 770e14fd57..0000000000 --- a/packages/noco-docs/.docusaurus/client-modules.js +++ /dev/null @@ -1,8 +0,0 @@ -export default [ - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/node_modules/infima/dist/css/default/default.css'), - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/node_modules/@docusaurus/theme-classic/lib/prism-include-languages'), - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/node_modules/@docusaurus/theme-classic/lib/nprogress'), - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/src/css/custom.scss'), - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/node_modules/plugin-image-zoom/src/zoom'), - require('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/src/modules/tele.js'), -]; diff --git a/packages/noco-docs/.docusaurus/codeTranslations.json b/packages/noco-docs/.docusaurus/codeTranslations.json deleted file mode 100644 index 9e26dfeeb6..0000000000 --- a/packages/noco-docs/.docusaurus/codeTranslations.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json deleted file mode 100644 index 3818ad0261..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "docusaurus-plugin-content-docs", - "id": "default" -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-010-index-md-b22.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-010-index-md-b22.json deleted file mode 100644 index be025ec9f7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-010-index-md-b22.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "index", - "id": "index", - "title": "Welcome", - "description": "NocoDB Documentation", - "source": "@site/docs/010.index.md", - "sourceDirName": ".", - "slug": "/", - "permalink": "/", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/010.index.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Welcome", - "description": "NocoDB Documentation", - "slug": "/" - }, - "sidebar": "tutorialSidebar", - "next": { - "title": "Quick start", - "permalink": "/getting-started/quick-start" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-installation-md-988.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-installation-md-988.json deleted file mode 100644 index e7eef253e5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-installation-md-988.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "getting-started/installation", - "id": "getting-started/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/docs/020.getting-started/010.installation.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/installation", - "permalink": "/getting-started/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/010.installation.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "Environment Variables", - "permalink": "/getting-started/environment-variables" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-introduction-to-nocodb-md-3ff.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-introduction-to-nocodb-md-3ff.json deleted file mode 100644 index 04d464ef27..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-introduction-to-nocodb-md-3ff.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "getting-started/introduction-to-nocodb", - "id": "getting-started/introduction-to-nocodb", - "title": "Introduction to NocoDB", - "description": "image", - "source": "@site/docs/020.getting-started/010.introduction-to-nocodb.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/introduction-to-nocodb", - "permalink": "/getting-started/introduction-to-nocodb", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/010.introduction-to-nocodb.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Introduction to NocoDB" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "Quick start", - "permalink": "/getting-started/quick-start" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-overview-md-005.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-overview-md-005.json deleted file mode 100644 index 0c3fa1e49a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-010-overview-md-005.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "getting-started/overview", - "id": "getting-started/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/020.getting-started/010.overview.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/overview", - "permalink": "/getting-started/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "Overview", - "permalink": "/workspaces/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-environment-variables-md-caf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-environment-variables-md-caf.json deleted file mode 100644 index a583b1e023..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-environment-variables-md-caf.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "getting-started/environment-variables", - "id": "getting-started/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/docs/020.getting-started/020.environment-variables.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/environment-variables", - "permalink": "/getting-started/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/020.environment-variables.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/getting-started/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/getting-started/upgrading" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-quick-start-md-018.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-quick-start-md-018.json deleted file mode 100644 index 022df6db96..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-020-quick-start-md-018.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "unversionedId": "getting-started/quick-start", - "id": "getting-started/quick-start", - "title": "Quick start", - "description": "NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs.", - "source": "@site/docs/020.getting-started/020.quick-start.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/quick-start", - "permalink": "/getting-started/quick-start", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/020.quick-start.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Quick start", - "keywords": [ - "NocoDB", - "quick start", - "getting started" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "NocoDB terminologies", - "permalink": "/getting-started/terminologies" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-terminologies-md-69b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-terminologies-md-69b.json deleted file mode 100644 index 1cffd53963..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-terminologies-md-69b.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "unversionedId": "getting-started/terminologies", - "id": "getting-started/terminologies", - "title": "NocoDB terminologies", - "description": "To maximize your use of NocoDB, it's beneficial to become familiar with some common terms.", - "source": "@site/docs/020.getting-started/030.terminologies.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/terminologies", - "permalink": "/getting-started/terminologies", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/030.terminologies.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "NocoDB terminologies", - "keywords": [ - "NocoDB terminologies", - "NocoDB terms", - "NocoDB keywords" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Quick start", - "permalink": "/getting-started/quick-start" - }, - "next": { - "title": "Keyboard shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-upgrading-md-515.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-upgrading-md-515.json deleted file mode 100644 index abc14d8af8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-030-upgrading-md-515.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "getting-started/upgrading", - "id": "getting-started/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/docs/020.getting-started/030.upgrading.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/upgrading", - "permalink": "/getting-started/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/030.upgrading.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment Variables", - "permalink": "/getting-started/environment-variables" - }, - "next": { - "title": "Dashboard", - "permalink": "/setup-and-usages/dashboard" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-040-keyboard-shortcuts-md-0ec.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-040-keyboard-shortcuts-md-0ec.json deleted file mode 100644 index 4b59b43631..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-040-keyboard-shortcuts-md-0ec.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "getting-started/keyboard-shortcuts", - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "source": "@site/docs/020.getting-started/040.keyboard-shortcuts.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/keyboard-shortcuts", - "permalink": "/getting-started/keyboard-shortcuts", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/040.keyboard-shortcuts.md", - "tags": [ - { - "label": "Getting Started", - "permalink": "/tags/getting-started" - }, - { - "label": "Shortcuts", - "permalink": "/tags/shortcuts" - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Keyboard shortcuts", - "tags": [ - "Getting Started", - "Shortcuts", - "Productivity hacks" - ], - "keywords": [ - "keyboard shortcuts", - "shortcuts", - "keyboard" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "NocoDB terminologies", - "permalink": "/getting-started/terminologies" - }, - "next": { - "title": "Installation", - "permalink": "/getting-started/self-hosted/installation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-010-installation-md-471.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-010-installation-md-471.json deleted file mode 100644 index 1afb33aa5d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-010-installation-md-471.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "unversionedId": "getting-started/on-self-hosted-plan/installation", - "id": "getting-started/on-self-hosted-plan/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/docs/020.getting-started/050.on-self-hosted-plan/010.installation.md", - "sourceDirName": "020.getting-started/050.on-self-hosted-plan", - "slug": "/getting-started/on-self-hosted-plan/installation", - "permalink": "/getting-started/on-self-hosted-plan/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.on-self-hosted-plan/010.installation.md", - "tags": [ - { - "label": "Self-Hosted plan", - "permalink": "/tags/self-hosted-plan" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "tags": [ - "Self-Hosted plan" - ], - "keywords": [ - "NocoDB installation", - "NocoDB docker installation", - "NocoDB nodejs installation", - "NocoDB quick try", - "NocoDB prerequisites" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - }, - "next": { - "title": "Environment Variables", - "permalink": "/getting-started/on-self-hosted-plan/environment-variables" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-020-environment-variables-md-9e0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-020-environment-variables-md-9e0.json deleted file mode 100644 index b8d9298474..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-020-environment-variables-md-9e0.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "unversionedId": "getting-started/on-self-hosted-plan/environment-variables", - "id": "getting-started/on-self-hosted-plan/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/docs/020.getting-started/050.on-self-hosted-plan/020.environment-variables.md", - "sourceDirName": "020.getting-started/050.on-self-hosted-plan", - "slug": "/getting-started/on-self-hosted-plan/environment-variables", - "permalink": "/getting-started/on-self-hosted-plan/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.on-self-hosted-plan/020.environment-variables.md", - "tags": [ - { - "label": "Self-Hosted plan", - "permalink": "/tags/self-hosted-plan" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true, - "tags": [ - "Self-Hosted plan" - ], - "keywords": [ - "NocoDB environment variables", - "NocoDB env variables", - "NocoDB envs", - "NocoDB env" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/getting-started/on-self-hosted-plan/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/getting-started/on-self-hosted-plan/upgrading" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-030-upgrading-md-ffa.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-030-upgrading-md-ffa.json deleted file mode 100644 index 261c19d4cb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-on-self-hosted-plan-030-upgrading-md-ffa.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "unversionedId": "getting-started/on-self-hosted-plan/upgrading", - "id": "getting-started/on-self-hosted-plan/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/docs/020.getting-started/050.on-self-hosted-plan/030.upgrading.md", - "sourceDirName": "020.getting-started/050.on-self-hosted-plan", - "slug": "/getting-started/on-self-hosted-plan/upgrading", - "permalink": "/getting-started/on-self-hosted-plan/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.on-self-hosted-plan/030.upgrading.md", - "tags": [ - { - "label": "Self-Hosted plan", - "permalink": "/tags/self-hosted-plan" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "tags": [ - "Self-Hosted plan" - ], - "keywords": [ - "NocoDB upgrade", - "upgrade NocoDB", - "upgrade nocodb" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment Variables", - "permalink": "/getting-started/on-self-hosted-plan/environment-variables" - }, - "next": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-010-installation-md-2a1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-010-installation-md-2a1.json deleted file mode 100644 index 39818fd0bb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-010-installation-md-2a1.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "unversionedId": "getting-started/self-hosted/installation", - "id": "getting-started/self-hosted/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/docs/020.getting-started/050.self-hosted/010.installation.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/installation", - "permalink": "/getting-started/self-hosted/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/010.installation.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB installation", - "NocoDB docker installation", - "NocoDB nodejs installation", - "NocoDB quick try", - "NocoDB prerequisites" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - }, - "next": { - "title": "Environment variables", - "permalink": "/getting-started/self-hosted/environment-variables" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-020-environment-variables-md-4c6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-020-environment-variables-md-4c6.json deleted file mode 100644 index a9e226c80d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-020-environment-variables-md-4c6.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "unversionedId": "getting-started/self-hosted/environment-variables", - "id": "getting-started/self-hosted/environment-variables", - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/environment-variables", - "permalink": "/getting-started/self-hosted/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/020.environment-variables.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true, - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB environment variables", - "NocoDB env variables", - "NocoDB envs", - "NocoDB env" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/getting-started/self-hosted/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/getting-started/self-hosted/upgrading" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-030-upgrading-md-e56.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-030-upgrading-md-e56.json deleted file mode 100644 index 79e5e8fe4e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-030-upgrading-md-e56.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "unversionedId": "getting-started/self-hosted/upgrading", - "id": "getting-started/self-hosted/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/docs/020.getting-started/050.self-hosted/030.upgrading.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/upgrading", - "permalink": "/getting-started/self-hosted/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/030.upgrading.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB upgrade", - "upgrade NocoDB", - "upgrade nocodb" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment variables", - "permalink": "/getting-started/self-hosted/environment-variables" - }, - "next": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-040-architecture-md-c19.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-040-architecture-md-c19.json deleted file mode 100644 index e8cfa408b1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-020-getting-started-050-self-hosted-040-architecture-md-c19.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "getting-started/self-hosted/architecture", - "id": "getting-started/self-hosted/architecture", - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/docs/020.getting-started/050.self-hosted/040.architecture.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/architecture", - "permalink": "/getting-started/self-hosted/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/040.architecture.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/getting-started/self-hosted/upgrading" - }, - "next": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-010-dashboard-md-946.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-010-dashboard-md-946.json deleted file mode 100644 index c4b402ab7e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-010-dashboard-md-946.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/dashboard", - "id": "setup-and-usages/dashboard", - "title": "Dashboard", - "description": "Accessing the Dashboard!", - "source": "@site/docs/030.setup-and-usages/010.dashboard.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/dashboard", - "permalink": "/setup-and-usages/dashboard", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/010.dashboard.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Dashboard", - "description": "Accessing the Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/getting-started/upgrading" - }, - "next": { - "title": "Table Operations", - "permalink": "/setup-and-usages/table-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-020-table-operations-md-d38.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-020-table-operations-md-d38.json deleted file mode 100644 index 5fe989a911..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-020-table-operations-md-d38.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/table-operations", - "id": "setup-and-usages/table-operations", - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import", - "source": "@site/docs/030.setup-and-usages/020.table-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/table-operations", - "permalink": "/setup-and-usages/table-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/020.table-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Dashboard", - "permalink": "/setup-and-usages/dashboard" - }, - "next": { - "title": "Column Operations", - "permalink": "/setup-and-usages/column-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-030-column-operations-md-ac1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-030-column-operations-md-ac1.json deleted file mode 100644 index 27d287c395..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-030-column-operations-md-ac1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/column-operations", - "id": "setup-and-usages/column-operations", - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter", - "source": "@site/docs/030.setup-and-usages/030.column-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-operations", - "permalink": "/setup-and-usages/column-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/030.column-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table Operations", - "permalink": "/setup-and-usages/table-operations" - }, - "next": { - "title": "Column Types", - "permalink": "/setup-and-usages/column-types" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-040-column-types-md-24e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-040-column-types-md-24e.json deleted file mode 100644 index 8f2f7030e3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-040-column-types-md-24e.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/column-types", - "id": "setup-and-usages/column-types", - "title": "Column Types", - "description": "NocoDB Column Types Overview", - "source": "@site/docs/030.setup-and-usages/040.column-types.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-types", - "permalink": "/setup-and-usages/column-types", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/040.column-types.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Column Types", - "description": "NocoDB Column Types Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Operations", - "permalink": "/setup-and-usages/column-operations" - }, - "next": { - "title": "Code Snippets", - "permalink": "/setup-and-usages/code-snippets" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-050-code-snippets-md-a52.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-050-code-snippets-md-a52.json deleted file mode 100644 index 65389b1ac3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-050-code-snippets-md-a52.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/code-snippets", - "id": "setup-and-usages/code-snippets", - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways", - "source": "@site/docs/030.setup-and-usages/050.code-snippets.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/code-snippets", - "permalink": "/setup-and-usages/code-snippets", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/050.code-snippets.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Types", - "permalink": "/setup-and-usages/column-types" - }, - "next": { - "title": "Link To Another Record", - "permalink": "/setup-and-usages/link-to-another-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-060-link-to-another-record-md-5f9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-060-link-to-another-record-md-5f9.json deleted file mode 100644 index 2e88854fd9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-060-link-to-another-record-md-5f9.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/link-to-another-record", - "id": "setup-and-usages/link-to-another-record", - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!", - "source": "@site/docs/030.setup-and-usages/060.link-to-another-record.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/link-to-another-record", - "permalink": "/setup-and-usages/link-to-another-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/060.link-to-another-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Code Snippets", - "permalink": "/setup-and-usages/code-snippets" - }, - "next": { - "title": "Links", - "permalink": "/setup-and-usages/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-061-links-md-541.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-061-links-md-541.json deleted file mode 100644 index c99d71d9a4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-061-links-md-541.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/links", - "id": "setup-and-usages/links", - "title": "Links", - "description": "Understanding Link Columns!", - "source": "@site/docs/030.setup-and-usages/061.links.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/links", - "permalink": "/setup-and-usages/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/061.links.md", - "tags": [], - "version": "current", - "sidebarPosition": 61, - "frontMatter": { - "title": "Links", - "description": "Understanding Link Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Link To Another Record", - "permalink": "/setup-and-usages/link-to-another-record" - }, - "next": { - "title": "Lookup", - "permalink": "/setup-and-usages/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-070-lookup-md-259.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-070-lookup-md-259.json deleted file mode 100644 index 44ad73107f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-070-lookup-md-259.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/lookup", - "id": "setup-and-usages/lookup", - "title": "Lookup", - "description": "Understanding Lookup Column!", - "source": "@site/docs/030.setup-and-usages/070.lookup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/lookup", - "permalink": "/setup-and-usages/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/070.lookup.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Lookup", - "description": "Understanding Lookup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/setup-and-usages/links" - }, - "next": { - "title": "Rollup", - "permalink": "/setup-and-usages/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-080-rollup-md-057.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-080-rollup-md-057.json deleted file mode 100644 index 8ffbc521b4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-080-rollup-md-057.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/rollup", - "id": "setup-and-usages/rollup", - "title": "Rollup", - "description": "Understanding Rollup Column!", - "source": "@site/docs/030.setup-and-usages/080.rollup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/rollup", - "permalink": "/setup-and-usages/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/080.rollup.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Rollup", - "description": "Understanding Rollup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Lookup", - "permalink": "/setup-and-usages/lookup" - }, - "next": { - "title": "Formulas", - "permalink": "/setup-and-usages/formulas" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-090-formulas-md-0a3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-090-formulas-md-0a3.json deleted file mode 100644 index 442e202b8d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-090-formulas-md-0a3.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/formulas", - "id": "setup-and-usages/formulas", - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions", - "source": "@site/docs/030.setup-and-usages/090.formulas.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/formulas", - "permalink": "/setup-and-usages/formulas", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/090.formulas.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/setup-and-usages/rollup" - }, - "next": { - "title": "Primary Key", - "permalink": "/setup-and-usages/primary-key" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-100-primary-key-md-a90.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-100-primary-key-md-a90.json deleted file mode 100644 index ebddf2c0ae..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-100-primary-key-md-a90.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/primary-key", - "id": "setup-and-usages/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/docs/030.setup-and-usages/100.primary-key.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/primary-key", - "permalink": "/setup-and-usages/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/100.primary-key.md", - "tags": [], - "version": "current", - "sidebarPosition": 100, - "frontMatter": { - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formulas", - "permalink": "/setup-and-usages/formulas" - }, - "next": { - "title": "Display Value", - "permalink": "/setup-and-usages/display-value" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-110-display-value-md-079.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-110-display-value-md-079.json deleted file mode 100644 index bf347af7a3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-110-display-value-md-079.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/display-value", - "id": "setup-and-usages/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/docs/030.setup-and-usages/110.display-value.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/display-value", - "permalink": "/setup-and-usages/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/110.display-value.md", - "tags": [], - "version": "current", - "sidebarPosition": 110, - "frontMatter": { - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary Key", - "permalink": "/setup-and-usages/primary-key" - }, - "next": { - "title": "Sync Schema", - "permalink": "/setup-and-usages/sync-schema" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-120-sync-schema-md-a63.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-120-sync-schema-md-a63.json deleted file mode 100644 index fbbc52476b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-120-sync-schema-md-a63.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/sync-schema", - "id": "setup-and-usages/sync-schema", - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced", - "source": "@site/docs/030.setup-and-usages/120.sync-schema.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/sync-schema", - "permalink": "/setup-and-usages/sync-schema", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/120.sync-schema.md", - "tags": [], - "version": "current", - "sidebarPosition": 120, - "frontMatter": { - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display Value", - "permalink": "/setup-and-usages/display-value" - }, - "next": { - "title": "Share Base", - "permalink": "/setup-and-usages/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-130-share-base-md-9c7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-130-share-base-md-9c7.json deleted file mode 100644 index bfbb6dc39b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-130-share-base-md-9c7.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/share-base", - "id": "setup-and-usages/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/030.setup-and-usages/130.share-base.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-base", - "permalink": "/setup-and-usages/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/130.share-base.md", - "tags": [], - "version": "current", - "sidebarPosition": 130, - "frontMatter": { - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sync Schema", - "permalink": "/setup-and-usages/sync-schema" - }, - "next": { - "title": "Share View", - "permalink": "/setup-and-usages/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-140-share-view-md-6d5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-140-share-view-md-6d5.json deleted file mode 100644 index 5aaa0eefe1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-140-share-view-md-6d5.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/share-view", - "id": "setup-and-usages/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "source": "@site/docs/030.setup-and-usages/140.share-view.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-view", - "permalink": "/setup-and-usages/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/140.share-view.md", - "tags": [], - "version": "current", - "sidebarPosition": 140, - "frontMatter": { - "title": "Share View", - "description": "Procedures to share a view" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/setup-and-usages/share-base" - }, - "next": { - "title": "Keyboard Maneuver", - "permalink": "/setup-and-usages/keyboard-maneuver" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-150-keyboard-maneuver-md-74c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-150-keyboard-maneuver-md-74c.json deleted file mode 100644 index 1277e17c4f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-150-keyboard-maneuver-md-74c.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/keyboard-maneuver", - "id": "setup-and-usages/keyboard-maneuver", - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts", - "source": "@site/docs/030.setup-and-usages/150.keyboard-maneuver.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/keyboard-maneuver", - "permalink": "/setup-and-usages/keyboard-maneuver", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/150.keyboard-maneuver.md", - "tags": [], - "version": "current", - "sidebarPosition": 150, - "frontMatter": { - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/setup-and-usages/share-view" - }, - "next": { - "title": "Views", - "permalink": "/setup-and-usages/views" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-160-views-md-372.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-160-views-md-372.json deleted file mode 100644 index 2bd71628b5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-160-views-md-372.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/views", - "id": "setup-and-usages/views", - "title": "Views", - "description": "Understanding Views in NocoDB!", - "source": "@site/docs/030.setup-and-usages/160.views.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/views", - "permalink": "/setup-and-usages/views", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/160.views.md", - "tags": [], - "version": "current", - "sidebarPosition": 160, - "frontMatter": { - "title": "Views", - "description": "Understanding Views in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard Maneuver", - "permalink": "/setup-and-usages/keyboard-maneuver" - }, - "next": { - "title": "Account Settings", - "permalink": "/setup-and-usages/account-settings" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-170-account-settings-md-89d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-170-account-settings-md-89d.json deleted file mode 100644 index 3c147f77d4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-170-account-settings-md-89d.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/account-settings", - "id": "setup-and-usages/account-settings", - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin", - "source": "@site/docs/030.setup-and-usages/170.account-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/account-settings", - "permalink": "/setup-and-usages/account-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/170.account-settings.md", - "tags": [], - "version": "current", - "sidebarPosition": 170, - "frontMatter": { - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Views", - "permalink": "/setup-and-usages/views" - }, - "next": { - "title": "Languages", - "permalink": "/setup-and-usages/languages" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-180-languages-md-50e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-180-languages-md-50e.json deleted file mode 100644 index 77cdf84f2a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-180-languages-md-50e.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/languages", - "id": "setup-and-usages/languages", - "title": "Languages", - "description": "Multiple languages on Dashboard!", - "source": "@site/docs/030.setup-and-usages/180.languages.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/languages", - "permalink": "/setup-and-usages/languages", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/180.languages.md", - "tags": [], - "version": "current", - "sidebarPosition": 180, - "frontMatter": { - "title": "Languages", - "description": "Multiple languages on Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Account Settings", - "permalink": "/setup-and-usages/account-settings" - }, - "next": { - "title": "Expanded Form", - "permalink": "/setup-and-usages/expanded-form" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-190-expanded-form-md-644.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-190-expanded-form-md-644.json deleted file mode 100644 index 0caecfd770..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-190-expanded-form-md-644.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/expanded-form", - "id": "setup-and-usages/expanded-form", - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/docs/030.setup-and-usages/190.expanded-form.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/expanded-form", - "permalink": "/setup-and-usages/expanded-form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/190.expanded-form.md", - "tags": [], - "version": "current", - "sidebarPosition": 190, - "frontMatter": { - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Languages", - "permalink": "/setup-and-usages/languages" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-f12.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-f12.json deleted file mode 100644 index 6baed97319..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-f12.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "id": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/docs/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "permalink": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "tags": [], - "version": "current", - "sidebarPosition": 200, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded Form", - "permalink": "/setup-and-usages/expanded-form" - }, - "next": { - "title": "Usage Information", - "permalink": "/setup-and-usages/usage-information" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-210-usage-information-md-d74.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-210-usage-information-md-d74.json deleted file mode 100644 index 03956525a7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-210-usage-information-md-d74.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/usage-information", - "id": "setup-and-usages/usage-information", - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information", - "source": "@site/docs/030.setup-and-usages/210.usage-information.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/usage-information", - "permalink": "/setup-and-usages/usage-information", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/210.usage-information.md", - "tags": [], - "version": "current", - "sidebarPosition": 210, - "frontMatter": { - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - }, - "next": { - "title": "Team & Auth", - "permalink": "/setup-and-usages/team-and-auth" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-230-team-and-auth-md-bb9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-230-team-and-auth-md-bb9.json deleted file mode 100644 index 45280993b0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-230-team-and-auth-md-bb9.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/team-and-auth", - "id": "setup-and-usages/team-and-auth", - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management", - "source": "@site/docs/030.setup-and-usages/230.team-and-auth.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/team-and-auth", - "permalink": "/setup-and-usages/team-and-auth", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/230.team-and-auth.md", - "tags": [], - "version": "current", - "sidebarPosition": 230, - "frontMatter": { - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Usage Information", - "permalink": "/setup-and-usages/usage-information" - }, - "next": { - "title": "Data Sources", - "permalink": "/setup-and-usages/meta-management" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-240-meta-management-md-7c5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-240-meta-management-md-7c5.json deleted file mode 100644 index 3e60f9e33f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-240-meta-management-md-7c5.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/meta-management", - "id": "setup-and-usages/meta-management", - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/docs/030.setup-and-usages/240.meta-management.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/meta-management", - "permalink": "/setup-and-usages/meta-management", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/240.meta-management.md", - "tags": [], - "version": "current", - "sidebarPosition": 240, - "frontMatter": { - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Team & Auth", - "permalink": "/setup-and-usages/team-and-auth" - }, - "next": { - "title": "Audit", - "permalink": "/setup-and-usages/audit" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-250-audit-md-04d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-250-audit-md-04d.json deleted file mode 100644 index e3b38de30d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-250-audit-md-04d.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/audit", - "id": "setup-and-usages/audit", - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log", - "source": "@site/docs/030.setup-and-usages/250.audit.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/audit", - "permalink": "/setup-and-usages/audit", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/250.audit.md", - "tags": [], - "version": "current", - "sidebarPosition": 250, - "frontMatter": { - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources", - "permalink": "/setup-and-usages/meta-management" - }, - "next": { - "title": "Team & Settings > Project settings", - "permalink": "/setup-and-usages/project-settings" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-260-project-settings-md-70f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-260-project-settings-md-70f.json deleted file mode 100644 index 10d08d41a4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-setup-and-usages-260-project-settings-md-70f.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/project-settings", - "id": "setup-and-usages/project-settings", - "title": "Team & Settings > Project settings", - "description": "General project configuration options", - "source": "@site/docs/030.setup-and-usages/260.project-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/project-settings", - "permalink": "/setup-and-usages/project-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.setup-and-usages/260.project-settings.md", - "tags": [], - "version": "current", - "sidebarPosition": 260, - "frontMatter": { - "title": "Team & Settings > Project settings", - "description": "General project configuration options" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Audit", - "permalink": "/setup-and-usages/audit" - }, - "next": { - "title": "Accessing APIs", - "permalink": "/developer-resources/accessing-apis" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-overview-md-821.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-overview-md-821.json deleted file mode 100644 index b8fd2353a1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-overview-md-821.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "workspaces/overview", - "id": "workspaces/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/030.workspaces/010.overview.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/overview", - "permalink": "/workspaces/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "keyboard-shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - }, - "next": { - "title": "Create", - "permalink": "/workspaces/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspace-overview-md-b7a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspace-overview-md-b7a.json deleted file mode 100644 index 1c25f851f9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspace-overview-md-b7a.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "unversionedId": "workspaces/workspace-overview", - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "source": "@site/docs/030.workspaces/010.workspace-overview.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspace-overview", - "permalink": "/workspaces/workspace-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/010.workspace-overview.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "tags": [ - "Workspaces", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/getting-started/self-hosted/upgrading" - }, - "next": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspaces-overview-md-834.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspaces-overview-md-834.json deleted file mode 100644 index c75753960b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-010-workspaces-overview-md-834.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "workspaces/workspaces-overview", - "id": "workspaces/workspaces-overview", - "title": "workspaces-overview", - "description": "", - "source": "@site/docs/030.workspaces/010.workspaces-overview.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspaces-overview", - "permalink": "/workspaces/workspaces-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/010.workspaces-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "create-workspace", - "permalink": "/workspaces/create-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-md-134.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-md-134.json deleted file mode 100644 index 618f700ed5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-md-134.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "workspaces/create", - "id": "workspaces/create", - "title": "Create", - "description": "", - "source": "@site/docs/030.workspaces/020.create.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/create", - "permalink": "/workspaces/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Overview", - "permalink": "/workspaces/workspace-overview" - }, - "next": { - "title": "Delete", - "permalink": "/workspaces/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-workspace-md-5ea.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-workspace-md-5ea.json deleted file mode 100644 index 86636559c5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-020-create-workspace-md-5ea.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "workspaces/create-workspace", - "id": "workspaces/create-workspace", - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "source": "@site/docs/030.workspaces/020.create-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/create-workspace", - "permalink": "/workspaces/create-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/020.create-workspace.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "tags": [ - "Workspaces", - "Create" - ], - "keywords": [ - "NocoDB workspace", - "create workspace", - "workspace context menu", - "workspace owner", - "workspace collaboration", - "workspace actions", - "default workspace" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-modify-workspace-md-ee8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-modify-workspace-md-ee8.json deleted file mode 100644 index 31c0327bd6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-modify-workspace-md-ee8.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "workspaces/modify-workspace", - "id": "workspaces/modify-workspace", - "title": "modify-workspace", - "description": "", - "source": "@site/docs/030.workspaces/030.modify-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/modify-workspace", - "permalink": "/workspaces/modify-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.modify-workspace.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create", - "permalink": "/workspaces/create" - }, - "next": { - "title": "delete-workspace", - "permalink": "/workspaces/delete-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-update-md-ee7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-update-md-ee7.json deleted file mode 100644 index 50e8a27e3e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-update-md-ee7.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "workspaces/update", - "id": "workspaces/update", - "title": "update", - "description": "", - "source": "@site/docs/030.workspaces/030.update.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/update", - "permalink": "/workspaces/update", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.update.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create", - "permalink": "/workspaces/create" - }, - "next": { - "title": "delete", - "permalink": "/workspaces/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-166.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-166.json deleted file mode 100644 index 1523e8dab5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-166.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "workspaces/Workspace collaboration", - "id": "workspaces/Workspace collaboration", - "title": "Workspace collaboration", - "description": "", - "source": "@site/docs/030.workspaces/030.Workspace collaboration.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/Workspace collaboration", - "permalink": "/workspaces/Workspace collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.Workspace collaboration.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - }, - "next": { - "title": "Delete workspace", - "permalink": "/workspaces/delete-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-6ac.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-6ac.json deleted file mode 100644 index f46d3cb4b3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-6ac.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "workspaces/Workspace-collaboration", - "id": "workspaces/Workspace-collaboration", - "title": "Workspace-collaboration", - "description": "", - "source": "@site/docs/030.workspaces/030.Workspace-collaboration.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/Workspace-collaboration", - "permalink": "/workspaces/Workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.Workspace-collaboration.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - }, - "next": { - "title": "Delete workspace", - "permalink": "/workspaces/delete-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-fe1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-fe1.json deleted file mode 100644 index 1aba8d2b12..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-030-workspace-collaboration-md-fe1.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "unversionedId": "workspaces/workspace-collaboration", - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "source": "@site/docs/030.workspaces/030.workspace-collaboration.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspace-collaboration", - "permalink": "/workspaces/workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.workspace-collaboration.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Members", - "permalink": "/tags/members" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "tags": [ - "Workspaces", - "Collaboration", - "Members", - "Invite", - "Roles", - "Permissions" - ], - "keywords": [ - "Workspace configuration", - "Invite members", - "Member roles", - "Access permissions", - "Displaying workspace members", - "Modifying member roles", - "Removing workspace members", - "Workspace collaboration", - "Team collaboration", - "Access control", - "Role-based permissions", - "Workspace management", - "User roles", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - }, - "next": { - "title": "Actions on workspace", - "permalink": "/workspaces/actions-on-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-actions-on-workspace-md-319.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-actions-on-workspace-md-319.json deleted file mode 100644 index 57f4b2b164..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-actions-on-workspace-md-319.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "unversionedId": "workspaces/actions-on-workspace", - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "source": "@site/docs/030.workspaces/040.actions-on-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/actions-on-workspace", - "permalink": "/workspaces/actions-on-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/040.actions-on-workspace.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "tags": [ - "Workspaces", - "Rename", - "Delete" - ], - "keywords": [ - "Workspace configuration", - "Rename workspace", - "Delete workspace", - "Workspace actions", - "Workspace management", - "Workspace administration", - "Workspace settings", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - }, - "next": { - "title": "Base overview", - "permalink": "/bases/base-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-md-98a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-md-98a.json deleted file mode 100644 index 1f80b4dddf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-md-98a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "workspaces/delete", - "id": "workspaces/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/030.workspaces/040.delete.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/delete", - "permalink": "/workspaces/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/040.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/workspaces/create-workspace" - }, - "next": { - "title": "Configurations", - "permalink": "/workspaces/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-workspace-md-a83.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-workspace-md-a83.json deleted file mode 100644 index daa3968ec7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-040-delete-workspace-md-a83.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "workspaces/delete-workspace", - "id": "workspaces/delete-workspace", - "title": "Delete workspace", - "description": "Related articles", - "source": "@site/docs/030.workspaces/040.delete-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/delete-workspace", - "permalink": "/workspaces/delete-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/040.delete-workspace.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Delete workspace" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - }, - "next": { - "title": "Actions on workspace", - "permalink": "/workspaces/actions-on-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-actions-on-workspace-md-910.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-actions-on-workspace-md-910.json deleted file mode 100644 index 0871b78ecb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-actions-on-workspace-md-910.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "unversionedId": "workspaces/actions-on-workspace", - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "source": "@site/docs/030.workspaces/050.actions-on-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/actions-on-workspace", - "permalink": "/workspaces/actions-on-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/050.actions-on-workspace.md", - "tags": [ - { - "label": "workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "rename workspace", - "permalink": "/tags/rename-workspace" - }, - { - "label": "delete workspace", - "permalink": "/tags/delete-workspace" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "tags": [ - "workspaces", - "rename workspace", - "delete workspace" - ], - "keywords": [ - "Workspace configuration", - "Rename workspace", - "Delete workspace", - "Workspace actions", - "Workspace management", - "Workspace administration", - "Workspace settings", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - }, - "next": { - "title": "Base overview", - "permalink": "/bases/base-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-configurations-md-b6e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-configurations-md-b6e.json deleted file mode 100644 index 68d6f1456e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-050-configurations-md-b6e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "workspaces/configurations", - "id": "workspaces/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/030.workspaces/050.configurations.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/configurations", - "permalink": "/workspaces/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/050.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete workspace", - "permalink": "/workspaces/delete-workspace" - }, - "next": { - "title": "Base overview", - "permalink": "/bases/base-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-workspaces-overview-md-0e6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-workspaces-overview-md-0e6.json deleted file mode 100644 index d4ca76179b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-030-workspaces-workspaces-overview-md-0e6.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "unversionedId": "workspaces/workspaces-overview", - "id": "workspaces/workspaces-overview", - "title": "workspaces-overview", - "description": "", - "source": "@site/docs/030.workspaces/workspaces-overview.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspaces-overview", - "permalink": "/workspaces/workspaces-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/workspaces-overview.md", - "tags": [], - "version": "current", - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-base-overview-md-eb6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-base-overview-md-eb6.json deleted file mode 100644 index fb7e23b8f9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-base-overview-md-eb6.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "unversionedId": "bases/base-overview", - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "source": "@site/docs/040.bases/010.base-overview.md", - "sourceDirName": "040.bases", - "slug": "/bases/base-overview", - "permalink": "/bases/base-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/010.base-overview.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - }, - { - "label": "Dashboard", - "permalink": "/tags/dashboard" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "tags": [ - "Bases", - "Overview", - "Dashboard" - ], - "keywords": [ - "NocoDB base", - "base overview", - "base dashboard", - "base collaboration", - "base actions", - "delete base", - "base management", - "base administration", - "base settings", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on workspace", - "permalink": "/workspaces/actions-on-workspace" - }, - "next": { - "title": "Create base", - "permalink": "/bases/create-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-overview-md-c44.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-overview-md-c44.json deleted file mode 100644 index b61a7be9db..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-010-overview-md-c44.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/overview", - "id": "bases/overview", - "title": "Base overview", - "description": "", - "source": "@site/docs/040.bases/010.overview.md", - "sourceDirName": "040.bases", - "slug": "/bases/overview", - "permalink": "/bases/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Base overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/workspaces/configurations" - }, - "next": { - "title": "Create base", - "permalink": "/bases/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-base-md-2eb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-base-md-2eb.json deleted file mode 100644 index 90853ab4f3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-base-md-2eb.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "unversionedId": "bases/create-base", - "id": "bases/create-base", - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "source": "@site/docs/040.bases/020.create-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/create-base", - "permalink": "/bases/create-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/020.create-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "tags": [ - "Bases", - "Create" - ], - "keywords": [ - "NocoDB base", - "create base", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base overview", - "permalink": "/bases/base-overview" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-md-89d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-md-89d.json deleted file mode 100644 index f3718110d7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-020-create-md-89d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/create", - "id": "bases/create", - "title": "Create base", - "description": "", - "source": "@site/docs/040.bases/020.create.md", - "sourceDirName": "040.bases", - "slug": "/bases/create", - "permalink": "/bases/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base overview", - "permalink": "/bases/base-overview" - }, - "next": { - "title": "Create base using template", - "permalink": "/bases/templates" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-030-create-base-using-template-md-8f5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-030-create-base-using-template-md-8f5.json deleted file mode 100644 index ae234e5386..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-030-create-base-using-template-md-8f5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/create-base-using-template", - "id": "bases/create-base-using-template", - "title": "Create base using template", - "description": "Related articles", - "source": "@site/docs/040.bases/030.create-base-using-template.md", - "sourceDirName": "040.bases", - "slug": "/bases/create-base-using-template", - "permalink": "/bases/create-base-using-template", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/030.create-base-using-template.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Create base using template" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base", - "permalink": "/bases/create-base" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-duplicate-md-b4b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-duplicate-md-b4b.json deleted file mode 100644 index 953efdd42a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-duplicate-md-b4b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/duplicate", - "id": "bases/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/040.bases/040.duplicate.md", - "sourceDirName": "040.bases", - "slug": "/bases/duplicate", - "permalink": "/bases/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/bases/create" - }, - "next": { - "title": "Delete", - "permalink": "/bases/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-import-base-from-airtable-md-ba1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-import-base-from-airtable-md-ba1.json deleted file mode 100644 index d379fcf56d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-040-import-base-from-airtable-md-ba1.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "unversionedId": "bases/import-base-from-airtable", - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/docs/040.bases/040.import-base-from-airtable.md", - "sourceDirName": "040.bases", - "slug": "/bases/import-base-from-airtable", - "permalink": "/bases/import-base-from-airtable", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/040.import-base-from-airtable.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Import", - "permalink": "/tags/import" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "tags": [ - "Bases", - "Import" - ], - "keywords": [ - "NocoDB", - "Airtable", - "import Airtable", - "Airtable to NocoDB", - "Airtable to MySQL", - "Airtable to Postgres", - "Airtable to SQLite", - "Airtable to SQL server" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base", - "permalink": "/bases/create-base" - }, - "next": { - "title": "Base collaboration", - "permalink": "/bases/base-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-base-collaboration-md-4ba.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-base-collaboration-md-4ba.json deleted file mode 100644 index e88b93ae39..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-base-collaboration-md-4ba.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "unversionedId": "bases/base-collaboration", - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "source": "@site/docs/040.bases/050.base-collaboration.md", - "sourceDirName": "040.bases", - "slug": "/bases/base-collaboration", - "permalink": "/bases/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/050.base-collaboration.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Members", - "permalink": "/tags/members" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "tags": [ - "Bases", - "Collaboration", - "Members", - "Invite", - "Roles", - "Permissions" - ], - "keywords": [ - "NocoDB base", - "base collaboration", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - }, - "next": { - "title": "Share base", - "permalink": "/bases/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-delete-md-41b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-delete-md-41b.json deleted file mode 100644 index 19846d3c60..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-050-delete-md-41b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/delete", - "id": "bases/delete", - "title": "Delete Base", - "description": "", - "source": "@site/docs/040.bases/050.delete.md", - "sourceDirName": "040.bases", - "slug": "/bases/delete", - "permalink": "/bases/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete Base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create Base", - "permalink": "/bases/create" - }, - "next": { - "title": "Create Base Using Templates", - "permalink": "/bases/templates" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-create-base-using-template-md-3b5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-create-base-using-template-md-3b5.json deleted file mode 100644 index 4c0fe82e25..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-create-base-using-template-md-3b5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/create-base-using-template", - "id": "bases/create-base-using-template", - "title": "Create base using template", - "description": "Related articles", - "source": "@site/docs/040.bases/060.create-base-using-template.md", - "sourceDirName": "040.bases", - "slug": "/bases/create-base-using-template", - "permalink": "/bases/create-base-using-template", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/060.create-base-using-template.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Create base using template" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base", - "permalink": "/bases/create-base" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-share-base-md-6f7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-share-base-md-6f7.json deleted file mode 100644 index 5d3c5a65ca..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-share-base-md-6f7.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "unversionedId": "bases/share-base", - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/040.bases/060.share-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/share-base", - "permalink": "/bases/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/060.share-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "tags": [ - "Bases", - "Share", - "Collaboration" - ], - "keywords": [ - "NocoDB base", - "share base", - "base collaboration", - "base actions", - "base settings" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base collaboration", - "permalink": "/bases/base-collaboration" - }, - "next": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-templates-md-a3a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-templates-md-a3a.json deleted file mode 100644 index 53d4cd9c57..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-060-templates-md-a3a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/templates", - "id": "bases/templates", - "title": "Create base using template", - "description": "", - "source": "@site/docs/040.bases/060.templates.md", - "sourceDirName": "040.bases", - "slug": "/bases/templates", - "permalink": "/bases/templates", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/060.templates.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Create base using template" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base", - "permalink": "/bases/create-base" - }, - "next": { - "title": "Import base from Airtable", - "permalink": "/bases/import-airtable" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-actions-on-base-md-d76.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-actions-on-base-md-d76.json deleted file mode 100644 index 1b50350eb3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-actions-on-base-md-d76.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "unversionedId": "bases/actions-on-base", - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "source": "@site/docs/040.bases/070.actions-on-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/actions-on-base", - "permalink": "/bases/actions-on-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/070.actions-on-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Star", - "permalink": "/tags/star" - }, - { - "label": "Relations", - "permalink": "/tags/relations" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "tags": [ - "Bases", - "Rename", - "Duplicate", - "Delete", - "Star", - "Relations" - ], - "keywords": [ - "NocoDB base", - "base rename", - "base duplicate", - "base delete", - "base star", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share base", - "permalink": "/bases/share-base" - }, - "next": { - "title": "Table overview", - "permalink": "/tables/table-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-airtable-md-5eb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-airtable-md-5eb.json deleted file mode 100644 index 0f455930ff..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-airtable-md-5eb.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/import-airtable", - "id": "bases/import-airtable", - "title": "Import base from Airtable", - "description": "", - "source": "@site/docs/040.bases/070.import-airtable.md", - "sourceDirName": "040.bases", - "slug": "/bases/import-airtable", - "permalink": "/bases/import-airtable", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/070.import-airtable.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Import base from Airtable" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base using template", - "permalink": "/bases/create-base-using-template" - }, - "next": { - "title": "Delete base", - "permalink": "/bases/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-base-from-airtable-md-983.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-base-from-airtable-md-983.json deleted file mode 100644 index 83851dae44..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-070-import-base-from-airtable-md-983.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "bases/import-base-from-airtable", - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/docs/040.bases/070.import-base-from-airtable.md", - "sourceDirName": "040.bases", - "slug": "/bases/import-base-from-airtable", - "permalink": "/bases/import-base-from-airtable", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/070.import-base-from-airtable.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base using template", - "permalink": "/bases/create-base-using-template" - }, - "next": { - "title": "Base Collaboration", - "permalink": "/bases/base-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-075-base-collaboration-md-6e8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-075-base-collaboration-md-6e8.json deleted file mode 100644 index 32875c8031..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-075-base-collaboration-md-6e8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/base-collaboration", - "id": "bases/base-collaboration", - "title": "Base Collaboration", - "description": "Invite collaborators to your base by following simple steps below:", - "source": "@site/docs/040.bases/075.base-collaboration.md", - "sourceDirName": "040.bases", - "slug": "/bases/base-collaboration", - "permalink": "/bases/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/075.base-collaboration.md", - "tags": [], - "version": "current", - "sidebarPosition": 75, - "frontMatter": { - "title": "Base Collaboration" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - }, - "next": { - "title": "Share Base", - "permalink": "/bases/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-076-share-base-md-1d3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-076-share-base-md-1d3.json deleted file mode 100644 index 8bc8d508f7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-076-share-base-md-1d3.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "bases/share-base", - "id": "bases/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/040.bases/076.share-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/share-base", - "permalink": "/bases/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/076.share-base.md", - "tags": [], - "version": "current", - "sidebarPosition": 76, - "frontMatter": { - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base Collaboration", - "permalink": "/bases/base-collaboration" - }, - "next": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-actions-md-1cf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-actions-md-1cf.json deleted file mode 100644 index 976b9410af..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-actions-md-1cf.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/actions", - "id": "bases/actions", - "title": "Base Actions", - "description": "", - "source": "@site/docs/040.bases/080.actions.md", - "sourceDirName": "040.bases", - "slug": "/bases/actions", - "permalink": "/bases/actions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/080.actions.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Base Actions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Base From Airtable", - "permalink": "/bases/import-airtable" - }, - "next": { - "title": "Overview", - "permalink": "/tables/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-configurations-md-fc9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-configurations-md-fc9.json deleted file mode 100644 index 68d4bfc59f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-configurations-md-fc9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/configurations", - "id": "bases/configurations", - "title": "Base Actions", - "description": "", - "source": "@site/docs/040.bases/080.configurations.md", - "sourceDirName": "040.bases", - "slug": "/bases/configurations", - "permalink": "/bases/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/080.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Base Actions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Base From Airtable", - "permalink": "/bases/import-airtable" - }, - "next": { - "title": "Overview", - "permalink": "/tables/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-base-md-bdc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-base-md-bdc.json deleted file mode 100644 index 7c22a6209d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-base-md-bdc.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/delete-base", - "id": "bases/delete-base", - "title": "Delete base", - "description": "Related articles", - "source": "@site/docs/040.bases/080.delete-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/delete-base", - "permalink": "/bases/delete-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/080.delete-base.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Delete base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/bases/share-base" - }, - "next": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-md-5d2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-md-5d2.json deleted file mode 100644 index a5255347ee..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-080-delete-md-5d2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/delete", - "id": "bases/delete", - "title": "Delete base", - "description": "", - "source": "@site/docs/040.bases/080.delete.md", - "sourceDirName": "040.bases", - "slug": "/bases/delete", - "permalink": "/bases/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/080.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Delete base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import base from Airtable", - "permalink": "/bases/import-base-from-airtable" - }, - "next": { - "title": "Actions on base", - "permalink": "/bases/actions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-md-3ea.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-md-3ea.json deleted file mode 100644 index f181ed4c52..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-md-3ea.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/actions", - "id": "bases/actions", - "title": "Actions on base", - "description": "", - "source": "@site/docs/040.bases/090.actions.md", - "sourceDirName": "040.bases", - "slug": "/bases/actions", - "permalink": "/bases/actions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/090.actions.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Actions on base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete base", - "permalink": "/bases/delete-base" - }, - "next": { - "title": "Overview", - "permalink": "/tables/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-on-base-md-755.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-on-base-md-755.json deleted file mode 100644 index 4bb570a06f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-bases-090-actions-on-base-md-755.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "bases/actions-on-base", - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Base context menu", - "source": "@site/docs/040.bases/090.actions-on-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/actions-on-base", - "permalink": "/bases/actions-on-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/090.actions-on-base.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Actions on base" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/bases/share-base" - }, - "next": { - "title": "Table overview", - "permalink": "/tables/table-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-010-accessing-apis-md-d5d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-010-accessing-apis-md-d5d.json deleted file mode 100644 index 34ebd6f9f3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-010-accessing-apis-md-d5d.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/accessing-apis", - "id": "developer-resources/accessing-apis", - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?", - "source": "@site/docs/040.developer-resources/010.accessing-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/accessing-apis", - "permalink": "/developer-resources/accessing-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.developer-resources/010.accessing-apis.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Team & Settings > Project settings", - "permalink": "/setup-and-usages/project-settings" - }, - "next": { - "title": "REST APIs", - "permalink": "/developer-resources/rest-apis" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-020-rest-apis-md-867.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-020-rest-apis-md-867.json deleted file mode 100644 index 40b7dc977d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-020-rest-apis-md-867.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/rest-apis", - "id": "developer-resources/rest-apis", - "title": "REST APIs", - "description": "NocoDB REST API Overview", - "source": "@site/docs/040.developer-resources/020.rest-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/rest-apis", - "permalink": "/developer-resources/rest-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.developer-resources/020.rest-apis.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "REST APIs", - "description": "NocoDB REST API Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Accessing APIs", - "permalink": "/developer-resources/accessing-apis" - }, - "next": { - "title": "NocoDB SDK", - "permalink": "/developer-resources/sdk" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-030-sdk-md-bc5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-030-sdk-md-bc5.json deleted file mode 100644 index 5ad3df699c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-030-sdk-md-bc5.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/sdk", - "id": "developer-resources/sdk", - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview", - "source": "@site/docs/040.developer-resources/030.sdk.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/sdk", - "permalink": "/developer-resources/sdk", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.developer-resources/030.sdk.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "REST APIs", - "permalink": "/developer-resources/rest-apis" - }, - "next": { - "title": "Webhooks", - "permalink": "/developer-resources/webhooks" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-040-webhooks-md-b75.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-040-webhooks-md-b75.json deleted file mode 100644 index 71f75d6d54..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-040-webhooks-md-b75.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/webhooks", - "id": "developer-resources/webhooks", - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations", - "source": "@site/docs/040.developer-resources/040.webhooks.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/webhooks", - "permalink": "/developer-resources/webhooks", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.developer-resources/040.webhooks.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "NocoDB SDK", - "permalink": "/developer-resources/sdk" - }, - "next": { - "title": "Upload via API", - "permalink": "/developer-resources/upload-via-api" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-050-upload-via-api-md-444.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-050-upload-via-api-md-444.json deleted file mode 100644 index 938976e553..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-developer-resources-050-upload-via-api-md-444.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "developer-resources/upload-via-api", - "id": "developer-resources/upload-via-api", - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "source": "@site/docs/040.developer-resources/050.upload-via-api.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/upload-via-api", - "permalink": "/developer-resources/upload-via-api", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.developer-resources/050.upload-via-api.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhooks", - "permalink": "/developer-resources/webhooks" - }, - "next": { - "title": "Architecture Overview", - "permalink": "/engineering/architecture" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-overview-md-c05.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-overview-md-c05.json deleted file mode 100644 index c5eca60b33..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-overview-md-c05.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/overview", - "id": "projects/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/040.projects/010.overview.md", - "sourceDirName": "040.projects", - "slug": "/projects/overview", - "permalink": "/projects/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/workspaces/configurations" - }, - "next": { - "title": "Create", - "permalink": "/projects/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-projects-overview-md-939.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-projects-overview-md-939.json deleted file mode 100644 index a757c9ea6b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-projects-overview-md-939.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/projects-overview", - "id": "projects/projects-overview", - "title": "projects-overview", - "description": "", - "source": "@site/docs/040.projects/010.projects-overview.md", - "sourceDirName": "040.projects", - "slug": "/projects/projects-overview", - "permalink": "/projects/projects-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/010.projects-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "delete", - "permalink": "/workspaces/delete" - }, - "next": { - "title": "create-workspace", - "permalink": "/projects/create-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-workspaces-overview-md-47d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-workspaces-overview-md-47d.json deleted file mode 100644 index 976535b5cd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-010-workspaces-overview-md-47d.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/workspaces-overview", - "id": "projects/workspaces-overview", - "title": "workspaces-overview", - "description": "", - "source": "@site/docs/040.projects/010.workspaces-overview.md", - "sourceDirName": "040.projects", - "slug": "/projects/workspaces-overview", - "permalink": "/projects/workspaces-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/010.workspaces-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "delete-workspace", - "permalink": "/workspaces/delete-workspace" - }, - "next": { - "title": "create-workspace", - "permalink": "/projects/create-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-md-3ae.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-md-3ae.json deleted file mode 100644 index 80fe58aada..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-md-3ae.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/create", - "id": "projects/create", - "title": "Create", - "description": "", - "source": "@site/docs/040.projects/020.create.md", - "sourceDirName": "040.projects", - "slug": "/projects/create", - "permalink": "/projects/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Overview", - "permalink": "/projects/overview" - }, - "next": { - "title": "Duplicate", - "permalink": "/projects/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-workspace-md-635.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-workspace-md-635.json deleted file mode 100644 index fa58a9e521..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-020-create-workspace-md-635.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/create-workspace", - "id": "projects/create-workspace", - "title": "create-workspace", - "description": "", - "source": "@site/docs/040.projects/020.create-workspace.md", - "sourceDirName": "040.projects", - "slug": "/projects/create-workspace", - "permalink": "/projects/create-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/020.create-workspace.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "projects-overview", - "permalink": "/projects/projects-overview" - }, - "next": { - "title": "modify-workspace", - "permalink": "/projects/modify-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-modify-workspace-md-31e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-modify-workspace-md-31e.json deleted file mode 100644 index 2174543b78..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-modify-workspace-md-31e.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/modify-workspace", - "id": "projects/modify-workspace", - "title": "modify-workspace", - "description": "", - "source": "@site/docs/040.projects/030.modify-workspace.md", - "sourceDirName": "040.projects", - "slug": "/projects/modify-workspace", - "permalink": "/projects/modify-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/030.modify-workspace.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create-workspace", - "permalink": "/projects/create-workspace" - }, - "next": { - "title": "delete-workspace", - "permalink": "/projects/delete-workspace" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-update-md-fa9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-update-md-fa9.json deleted file mode 100644 index 5bc3e7dbae..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-030-update-md-fa9.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/update", - "id": "projects/update", - "title": "update", - "description": "", - "source": "@site/docs/040.projects/030.update.md", - "sourceDirName": "040.projects", - "slug": "/projects/update", - "permalink": "/projects/update", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/030.update.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create", - "permalink": "/projects/create" - }, - "next": { - "title": "duplicate", - "permalink": "/projects/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-md-bde.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-md-bde.json deleted file mode 100644 index b9512f72ac..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-md-bde.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/delete", - "id": "projects/delete", - "title": "delete", - "description": "", - "source": "@site/docs/040.projects/040.delete.md", - "sourceDirName": "040.projects", - "slug": "/projects/delete", - "permalink": "/projects/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/040.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "update", - "permalink": "/projects/update" - }, - "next": { - "title": "duplicate", - "permalink": "/projects/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-workspace-md-788.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-workspace-md-788.json deleted file mode 100644 index 6be03079a2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-delete-workspace-md-788.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "projects/delete-workspace", - "id": "projects/delete-workspace", - "title": "delete-workspace", - "description": "", - "source": "@site/docs/040.projects/040.delete-workspace.md", - "sourceDirName": "040.projects", - "slug": "/projects/delete-workspace", - "permalink": "/projects/delete-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/040.delete-workspace.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "modify-workspace", - "permalink": "/projects/modify-workspace" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-duplicate-md-390.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-duplicate-md-390.json deleted file mode 100644 index 0adb4bf869..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-040-duplicate-md-390.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/duplicate", - "id": "projects/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/040.projects/040.duplicate.md", - "sourceDirName": "040.projects", - "slug": "/projects/duplicate", - "permalink": "/projects/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/projects/create" - }, - "next": { - "title": "Delete", - "permalink": "/projects/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-050-delete-md-f2e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-050-delete-md-f2e.json deleted file mode 100644 index fb92915c9e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-050-delete-md-f2e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/delete", - "id": "projects/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/040.projects/050.delete.md", - "sourceDirName": "040.projects", - "slug": "/projects/delete", - "permalink": "/projects/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duplicate", - "permalink": "/projects/duplicate" - }, - "next": { - "title": "Templates", - "permalink": "/projects/templates" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-060-templates-md-bb0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-060-templates-md-bb0.json deleted file mode 100644 index ddc4b827ad..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-060-templates-md-bb0.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/templates", - "id": "projects/templates", - "title": "Templates", - "description": "", - "source": "@site/docs/040.projects/060.templates.md", - "sourceDirName": "040.projects", - "slug": "/projects/templates", - "permalink": "/projects/templates", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/060.templates.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Templates" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/projects/delete" - }, - "next": { - "title": "Import from Airtable", - "permalink": "/projects/import-airtable" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-070-import-airtable-md-d43.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-070-import-airtable-md-d43.json deleted file mode 100644 index 9a812c7326..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-070-import-airtable-md-d43.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/import-airtable", - "id": "projects/import-airtable", - "title": "Import from Airtable", - "description": "", - "source": "@site/docs/040.projects/070.import-airtable.md", - "sourceDirName": "040.projects", - "slug": "/projects/import-airtable", - "permalink": "/projects/import-airtable", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/070.import-airtable.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Import from Airtable" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Templates", - "permalink": "/projects/templates" - }, - "next": { - "title": "Configurations", - "permalink": "/projects/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-080-configurations-md-5df.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-080-configurations-md-5df.json deleted file mode 100644 index a3887af460..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-040-projects-080-configurations-md-5df.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "projects/configurations", - "id": "projects/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/040.projects/080.configurations.md", - "sourceDirName": "040.projects", - "slug": "/projects/configurations", - "permalink": "/projects/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.projects/080.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import from Airtable", - "permalink": "/projects/import-airtable" - }, - "next": { - "title": "Overview", - "permalink": "/tables/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-010-architecture-md-751.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-010-architecture-md-751.json deleted file mode 100644 index 5bc0cd2f90..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-010-architecture-md-751.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "engineering/architecture", - "id": "engineering/architecture", - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/docs/050.engineering/010.architecture.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/architecture", - "permalink": "/engineering/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/010.architecture.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upload via API", - "permalink": "/developer-resources/upload-via-api" - }, - "next": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-020-repository-structure-md-d40.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-020-repository-structure-md-d40.json deleted file mode 100644 index 0651a736f0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-020-repository-structure-md-d40.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "engineering/repository-structure", - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "source": "@site/docs/050.engineering/020.repository-structure.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/repository-structure", - "permalink": "/engineering/repository-structure", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/020.repository-structure.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Repository structure", - "description": "Repository Structure", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Architecture Overview", - "permalink": "/engineering/architecture" - }, - "next": { - "title": "Development Setup", - "permalink": "/engineering/development-setup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-030-development-setup-md-206.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-030-development-setup-md-206.json deleted file mode 100644 index e731c46bb9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-030-development-setup-md-206.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/development-setup", - "id": "engineering/development-setup", - "title": "Development Setup", - "description": "How to set-up your development environment", - "source": "@site/docs/050.engineering/030.development-setup.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/development-setup", - "permalink": "/engineering/development-setup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/030.development-setup.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Development Setup", - "description": "How to set-up your development environment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - }, - "next": { - "title": "Writing Unit Tests", - "permalink": "/engineering/unit-testing" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-040-unit-testing-md-a62.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-040-unit-testing-md-a62.json deleted file mode 100644 index 1cc2977173..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-040-unit-testing-md-a62.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/unit-testing", - "id": "engineering/unit-testing", - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing", - "source": "@site/docs/050.engineering/040.unit-testing.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/unit-testing", - "permalink": "/engineering/unit-testing", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/040.unit-testing.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Development Setup", - "permalink": "/engineering/development-setup" - }, - "next": { - "title": "Playwright E2E Testing", - "permalink": "/engineering/playwright" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-050-playwright-md-a22.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-050-playwright-md-a22.json deleted file mode 100644 index a6020b01d4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-050-playwright-md-a22.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/playwright", - "id": "engineering/playwright", - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests", - "source": "@site/docs/050.engineering/050.playwright.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/playwright", - "permalink": "/engineering/playwright", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/050.playwright.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing Unit Tests", - "permalink": "/engineering/unit-testing" - }, - "next": { - "title": "Releases & Builds", - "permalink": "/engineering/builds-and-releases" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-060-builds-and-releases-md-e1d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-060-builds-and-releases-md-e1d.json deleted file mode 100644 index 9007482fa9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-060-builds-and-releases-md-e1d.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/builds-and-releases", - "id": "engineering/builds-and-releases", - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "source": "@site/docs/050.engineering/060.builds-and-releases.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/builds-and-releases", - "permalink": "/engineering/builds-and-releases", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/060.builds-and-releases.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Playwright E2E Testing", - "permalink": "/engineering/playwright" - }, - "next": { - "title": "i18n translation", - "permalink": "/engineering/translation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-070-translation-md-7db.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-070-translation-md-7db.json deleted file mode 100644 index 939bf5b86a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-engineering-070-translation-md-7db.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/translation", - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "source": "@site/docs/050.engineering/070.translation.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/translation", - "permalink": "/engineering/translation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.engineering/070.translation.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Releases & Builds", - "permalink": "/engineering/builds-and-releases" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-overview-md-a26.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-overview-md-a26.json deleted file mode 100644 index 0b0b283cf5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-overview-md-a26.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/overview", - "id": "tables/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/050.tables/010.overview.md", - "sourceDirName": "050.tables", - "slug": "/tables/overview", - "permalink": "/tables/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - }, - "next": { - "title": "Create", - "permalink": "/tables/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-table-overview-md-7ce.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-table-overview-md-7ce.json deleted file mode 100644 index ca4e9ed4b8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-010-table-overview-md-7ce.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "tables/table-overview", - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "source": "@site/docs/050.tables/010.table-overview.md", - "sourceDirName": "050.tables", - "slug": "/tables/table-overview", - "permalink": "/tables/table-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/010.table-overview.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "tags": [ - "Tables", - "Overview" - ], - "keywords": [ - "NocoDB table", - "table overview", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - }, - "next": { - "title": "Create empty table", - "permalink": "/tables/create-table" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-md-cf2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-md-cf2.json deleted file mode 100644 index 67342602da..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-md-cf2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/create", - "id": "tables/create", - "title": "Create", - "description": "", - "source": "@site/docs/050.tables/020.create.md", - "sourceDirName": "050.tables", - "slug": "/tables/create", - "permalink": "/tables/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table overview", - "permalink": "/tables/table-overview" - }, - "next": { - "title": "Duplicate", - "permalink": "/tables/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-table-md-32e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-table-md-32e.json deleted file mode 100644 index e7c4eba57e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-020-create-table-md-32e.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "tables/create-table", - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "source": "@site/docs/050.tables/020.create-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/create-table", - "permalink": "/tables/create-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/020.create-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "tags": [ - "Tables", - "Create" - ], - "keywords": [ - "NocoDB table", - "create table", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table overview", - "permalink": "/tables/table-overview" - }, - "next": { - "title": "Create table via import", - "permalink": "/tables/create-table-via-import" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-create-table-via-import-md-70e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-create-table-via-import-md-70e.json deleted file mode 100644 index 3fdd3423c1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-create-table-via-import-md-70e.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "unversionedId": "tables/create-table-via-import", - "id": "tables/create-table-via-import", - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "source": "@site/docs/050.tables/030.create-table-via-import.md", - "sourceDirName": "050.tables", - "slug": "/tables/create-table-via-import", - "permalink": "/tables/create-table-via-import", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/030.create-table-via-import.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Import", - "permalink": "/tags/import" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "tags": [ - "Tables", - "Import" - ], - "keywords": [ - "NocoDB table", - "create table", - "table administration", - "table organization", - "import table", - "import csv", - "import excel", - "import json" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create empty table", - "permalink": "/tables/create-table" - }, - "next": { - "title": "Import data into an existing table", - "permalink": "/tables/import-data-into-existing-table" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-update-md-087.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-update-md-087.json deleted file mode 100644 index 9f2a6c082d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-030-update-md-087.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "tables/update", - "id": "tables/update", - "title": "update", - "description": "", - "source": "@site/docs/050.tables/030.update.md", - "sourceDirName": "050.tables", - "slug": "/tables/update", - "permalink": "/tables/update", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/030.update.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create", - "permalink": "/tables/create" - }, - "next": { - "title": "duplicate", - "permalink": "/tables/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-duplicate-md-1cb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-duplicate-md-1cb.json deleted file mode 100644 index f9c2483f32..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-duplicate-md-1cb.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/duplicate", - "id": "tables/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/050.tables/040.duplicate.md", - "sourceDirName": "050.tables", - "slug": "/tables/duplicate", - "permalink": "/tables/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/tables/create-table" - }, - "next": { - "title": "Delete", - "permalink": "/tables/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-import-data-into-existing-table-md-e43.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-import-data-into-existing-table-md-e43.json deleted file mode 100644 index 5572df149c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-040-import-data-into-existing-table-md-e43.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "unversionedId": "tables/import-data-into-existing-table", - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "source": "@site/docs/050.tables/040.import-data-into-existing-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-data-into-existing-table", - "permalink": "/tables/import-data-into-existing-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/040.import-data-into-existing-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Import", - "permalink": "/tags/import" - }, - { - "label": "CSV", - "permalink": "/tags/csv" - }, - { - "label": "Excel", - "permalink": "/tags/excel" - }, - { - "label": "XLSX", - "permalink": "/tags/xlsx" - }, - { - "label": "JSON", - "permalink": "/tags/json" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "tags": [ - "Tables", - "Import", - "CSV", - "Excel", - "XLSX", - "JSON" - ], - "keywords": [ - "NocoDB table", - "import data into table", - "import data from csv", - "import data from excel", - "import data from xlsx" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create table via import", - "permalink": "/tables/create-table-via-import" - }, - "next": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-md-0e2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-md-0e2.json deleted file mode 100644 index 208164f342..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-md-0e2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/delete", - "id": "tables/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/050.tables/050.delete.md", - "sourceDirName": "050.tables", - "slug": "/tables/delete", - "permalink": "/tables/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import from CSV", - "permalink": "/tables/create-table-via-import" - }, - "next": { - "title": "Import from Excel", - "permalink": "/tables/import-excel" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-table-md-2f5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-table-md-2f5.json deleted file mode 100644 index c27e38e06f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-050-delete-table-md-2f5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/delete-table", - "id": "tables/delete-table", - "title": "Delete table", - "description": "This action cannot be undone.", - "source": "@site/docs/050.tables/050.delete-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/delete-table", - "permalink": "/tables/delete-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/050.delete-table.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete table" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import data into an existing table", - "permalink": "/tables/import-data-into-existing-table" - }, - "next": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-actions-on-table-md-0f4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-actions-on-table-md-0f4.json deleted file mode 100644 index 8e7aad18c0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-actions-on-table-md-0f4.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "unversionedId": "tables/actions-on-table", - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "source": "@site/docs/050.tables/060.actions-on-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/actions-on-table", - "permalink": "/tables/actions-on-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/060.actions-on-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "tags": [ - "Tables", - "Rename", - "Duplicate", - "Delete" - ], - "keywords": [ - "NocoDB table", - "rename table", - "duplicate table", - "delete table", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import data into an existing table", - "permalink": "/tables/import-data-into-existing-table" - }, - "next": { - "title": "Table operations overview", - "permalink": "/table-operations/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-create-table-via-import-md-d5f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-create-table-via-import-md-d5f.json deleted file mode 100644 index 0a8bb3aea3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-create-table-via-import-md-d5f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/create-table-via-import", - "id": "tables/create-table-via-import", - "title": "Import from CSV", - "description": "", - "source": "@site/docs/050.tables/060.create-table-via-import.md", - "sourceDirName": "050.tables", - "slug": "/tables/create-table-via-import", - "permalink": "/tables/create-table-via-import", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/060.create-table-via-import.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Import from CSV" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/tables/delete" - }, - "next": { - "title": "Import from Excel", - "permalink": "/tables/import-excel" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-import-csv-md-d5d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-import-csv-md-d5d.json deleted file mode 100644 index 1f38713df5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-060-import-csv-md-d5d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/import-csv", - "id": "tables/import-csv", - "title": "Import from CSV", - "description": "", - "source": "@site/docs/050.tables/060.import-csv.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-csv", - "permalink": "/tables/import-csv", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/060.import-csv.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Import from CSV" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/tables/delete" - }, - "next": { - "title": "Import from Excel", - "permalink": "/tables/import-excel" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-070-import-excel-md-95f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-070-import-excel-md-95f.json deleted file mode 100644 index 71753aa11f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-070-import-excel-md-95f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/import-excel", - "id": "tables/import-excel", - "title": "Import from Excel", - "description": "", - "source": "@site/docs/050.tables/070.import-excel.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-excel", - "permalink": "/tables/import-excel", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/070.import-excel.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Import from Excel" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/tables/delete-table" - }, - "next": { - "title": "Import from JSON", - "permalink": "/tables/import-json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-080-import-json-md-99c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-080-import-json-md-99c.json deleted file mode 100644 index ba293f8f87..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-080-import-json-md-99c.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/import-json", - "id": "tables/import-json", - "title": "Import from JSON", - "description": "", - "source": "@site/docs/050.tables/080.import-json.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-json", - "permalink": "/tables/import-json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/080.import-json.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Import from JSON" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import from Excel", - "permalink": "/tables/import-excel" - }, - "next": { - "title": "Import Data into an existing Table", - "permalink": "/tables/import-data" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-090-import-data-md-b22.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-090-import-data-md-b22.json deleted file mode 100644 index 477707422a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-090-import-data-md-b22.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/import-data", - "id": "tables/import-data", - "title": "Import Data into an existing Table", - "description": "", - "source": "@site/docs/050.tables/090.import-data.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-data", - "permalink": "/tables/import-data", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/090.import-data.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Import Data into an existing Table" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import from JSON", - "permalink": "/tables/import-json" - }, - "next": { - "title": "Configurations", - "permalink": "/tables/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-100-configurations-md-415.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-100-configurations-md-415.json deleted file mode 100644 index 2d2bcd7f11..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-050-tables-100-configurations-md-415.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "tables/configurations", - "id": "tables/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/050.tables/100.configurations.md", - "sourceDirName": "050.tables", - "slug": "/tables/configurations", - "permalink": "/tables/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/100.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 100, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/tables/delete-table" - }, - "next": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-010-overview-md-270.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-010-overview-md-270.json deleted file mode 100644 index 280ed4ea79..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-010-overview-md-270.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "unversionedId": "table-operations/overview", - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "source": "@site/docs/052.table-operations/010.overview.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/overview", - "permalink": "/table-operations/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/010.overview.md", - "tags": [ - { - "label": "table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "table operations overview", - "permalink": "/tags/table-operations-overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "tags": [ - "table operations", - "table operations overview" - ], - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "row height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - }, - "next": { - "title": "Hide & Reorder Fields", - "permalink": "/table-operations/field-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-020-field-operations-md-65e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-020-field-operations-md-65e.json deleted file mode 100644 index acbca2b0cc..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-020-field-operations-md-65e.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "unversionedId": "table-operations/field-operations", - "id": "table-operations/field-operations", - "title": "Hide & Reorder Fields", - "description": "Utilize the Fields button in the toolbar to manage the visibility of fields within the system. By default, all system-related fields are concealed, but you have the option to enable them by selecting Show system fields.", - "source": "@site/docs/052.table-operations/020.field-operations.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/field-operations", - "permalink": "/table-operations/field-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/020.field-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Hide & Reorder Fields", - "keywords": [ - "fields, hide fields, reorder fields, change cover field, gallery view, kanban view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table operations overview", - "permalink": "/table-operations/overview" - }, - "next": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-filter-md-5c9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-filter-md-5c9.json deleted file mode 100644 index c8538af9ea..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-filter-md-5c9.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "table-operations/filter", - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "source": "@site/docs/052.table-operations/030.filter.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/filter", - "permalink": "/table-operations/filter", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/030.filter.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Filtering records", - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "row height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Hide & Reorder Fields", - "permalink": "/table-operations/field-operations" - }, - "next": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-sort-md-acf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-sort-md-acf.json deleted file mode 100644 index b34b60406e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-030-sort-md-acf.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "table-operations/sort", - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "source": "@site/docs/052.table-operations/030.sort.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/sort", - "permalink": "/table-operations/sort", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/030.sort.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Sorting records", - "keywords": [ - "NocoDB table", - "sorting", - "sort", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - }, - "next": { - "title": "Grouping Records", - "permalink": "/table-operations/group-by" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-050-group-by-md-553.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-050-group-by-md-553.json deleted file mode 100644 index b47b99e563..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-050-group-by-md-553.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "table-operations/group-by", - "id": "table-operations/group-by", - "title": "Grouping Records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "source": "@site/docs/052.table-operations/050.group-by.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/group-by", - "permalink": "/table-operations/group-by", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/050.group-by.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Grouping Records", - "keywords": [ - "NocoDB table group by", - "group By column", - "group By", - "table group by", - "grouping records", - "grouping", - "group by in table" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - }, - "next": { - "title": "Row Height", - "permalink": "/table-operations/row-height" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-060-row-height-md-db3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-060-row-height-md-db3.json deleted file mode 100644 index 8d4da08a14..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-060-row-height-md-db3.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "table-operations/row-height", - "id": "table-operations/row-height", - "title": "Row Height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "source": "@site/docs/052.table-operations/060.row-height.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/row-height", - "permalink": "/table-operations/row-height", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/060.row-height.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Row Height", - "keywords": [ - "NocoDB table", - "row height", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grouping Records", - "permalink": "/table-operations/group-by" - }, - "next": { - "title": "Search", - "permalink": "/table-operations/search" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-070-search-md-c12.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-070-search-md-c12.json deleted file mode 100644 index 11ebd71f10..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-070-search-md-c12.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "table-operations/search", - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "source": "@site/docs/052.table-operations/070.search.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/search", - "permalink": "/table-operations/search", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/070.search.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Search", - "keywords": [ - "NocoDB table search", - "search table", - "search records", - "search" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Row Height", - "permalink": "/table-operations/row-height" - }, - "next": { - "title": "Download", - "permalink": "/table-operations/download" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-080-download-md-501.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-080-download-md-501.json deleted file mode 100644 index 6b6d923bbb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-052-table-operations-080-download-md-501.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "table-operations/download", - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "source": "@site/docs/052.table-operations/080.download.md", - "sourceDirName": "052.table-operations", - "slug": "/table-operations/download", - "permalink": "/table-operations/download", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/052.table-operations/080.download.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Download", - "keywords": [ - "NocoDB table", - "download", - "export", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Search", - "permalink": "/table-operations/search" - }, - "next": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-010-overview-md-087.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-010-overview-md-087.json deleted file mode 100644 index 58e5e1e135..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-010-overview-md-087.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "columns/overview", - "id": "columns/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/060.columns/010.overview.md", - "sourceDirName": "060.columns", - "slug": "/columns/overview", - "permalink": "/columns/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.columns/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/tables/configurations" - }, - "next": { - "title": "Create", - "permalink": "/columns/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-020-create-md-157.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-020-create-md-157.json deleted file mode 100644 index fec09d8919..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-020-create-md-157.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "columns/create", - "id": "columns/create", - "title": "Create", - "description": "", - "source": "@site/docs/060.columns/020.create.md", - "sourceDirName": "060.columns", - "slug": "/columns/create", - "permalink": "/columns/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.columns/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Overview", - "permalink": "/columns/overview" - }, - "next": { - "title": "Duplicate", - "permalink": "/columns/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-040-duplicate-md-471.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-040-duplicate-md-471.json deleted file mode 100644 index 4e09afa18a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-040-duplicate-md-471.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "columns/duplicate", - "id": "columns/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/060.columns/040.duplicate.md", - "sourceDirName": "060.columns", - "slug": "/columns/duplicate", - "permalink": "/columns/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.columns/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/columns/create" - }, - "next": { - "title": "Delete", - "permalink": "/columns/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-050-delete-md-254.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-050-delete-md-254.json deleted file mode 100644 index 861ca1e84f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-050-delete-md-254.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "columns/delete", - "id": "columns/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/060.columns/050.delete.md", - "sourceDirName": "060.columns", - "slug": "/columns/delete", - "permalink": "/columns/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.columns/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duplicate", - "permalink": "/columns/duplicate" - }, - "next": { - "title": "Configurations", - "permalink": "/columns/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-060-configurations-md-c9a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-060-configurations-md-c9a.json deleted file mode 100644 index f010053c6d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-columns-060-configurations-md-c9a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "columns/configurations", - "id": "columns/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/060.columns/060.configurations.md", - "sourceDirName": "060.columns", - "slug": "/columns/configurations", - "permalink": "/columns/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.columns/060.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/columns/delete" - }, - "next": { - "title": "Overview", - "permalink": "/rows/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fa-qs-md-9b9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fa-qs-md-9b9.json deleted file mode 100644 index 2c13a41877..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fa-qs-md-9b9.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "unversionedId": "FAQs", - "id": "FAQs", - "title": "FAQs", - "description": "General FAQs", - "source": "@site/docs/060.FAQs.md", - "sourceDirName": ".", - "slug": "/FAQs", - "permalink": "/FAQs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.FAQs.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "FAQs", - "description": "General FAQs" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "i18n translation", - "permalink": "/engineering/translation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-fields-overview-md-018.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-fields-overview-md-018.json deleted file mode 100644 index eb32163739..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-fields-overview-md-018.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "fields/fields-overview", - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "source": "@site/docs/060.fields/010.fields-overview.md", - "sourceDirName": "060.fields", - "slug": "/fields/fields-overview", - "permalink": "/fields/fields-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/010.fields-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Fields overview", - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Download", - "permalink": "/table-operations/download" - }, - "next": { - "title": "Primary Key", - "permalink": "/fields/primary-key" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-overview-md-b60.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-overview-md-b60.json deleted file mode 100644 index a38f310c44..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-010-overview-md-b60.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/overview", - "id": "fields/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/060.fields/010.overview.md", - "sourceDirName": "060.fields", - "slug": "/fields/overview", - "permalink": "/fields/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/tables/configurations" - }, - "next": { - "title": "Create", - "permalink": "/fields/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-015-primary-key-md-b77.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-015-primary-key-md-b77.json deleted file mode 100644 index 2f764d5fb4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-015-primary-key-md-b77.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "fields/primary-key", - "id": "fields/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/docs/060.fields/015.primary-key.md", - "sourceDirName": "060.fields", - "slug": "/fields/primary-key", - "permalink": "/fields/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/015.primary-key.md", - "tags": [], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "keywords": [ - "NocoDB primary key", - "primary key", - "primary key in NocoDB", - "primary key in database" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Display Value", - "permalink": "/fields/display-value" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-field-md-137.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-field-md-137.json deleted file mode 100644 index 56dc57c2ab..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-field-md-137.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/create-field", - "id": "fields/create-field", - "title": "Create field", - "description": "Create field", - "source": "@site/docs/060.fields/020.create-field.md", - "sourceDirName": "060.fields", - "slug": "/fields/create-field", - "permalink": "/fields/create-field", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/020.create-field.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create field" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-md-da9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-md-da9.json deleted file mode 100644 index 760f0e217d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-create-md-da9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/create", - "id": "fields/create", - "title": "Create", - "description": "", - "source": "@site/docs/060.fields/020.create.md", - "sourceDirName": "060.fields", - "slug": "/fields/create", - "permalink": "/fields/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Delete", - "permalink": "/fields/delete-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-display-value-md-6aa.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-display-value-md-6aa.json deleted file mode 100644 index 7b90a4d65a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-020-display-value-md-6aa.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "fields/display-value", - "id": "fields/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/docs/060.fields/020.display-value.md", - "sourceDirName": "060.fields", - "slug": "/fields/display-value", - "permalink": "/fields/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/020.display-value.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "keywords": [ - "NocoDB display value", - "display value", - "display value in nocoDB", - "display value in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary Key", - "permalink": "/fields/primary-key" - }, - "next": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-single-line-text-md-2dc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-single-line-text-md-2dc.json deleted file mode 100644 index 5a8749e2ca..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-single-line-text-md-2dc.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/single-line-text", - "id": "fields/field-types/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "source": "@site/docs/060.fields/030.field-types/010.single-line-text.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/single-line-text", - "permalink": "/fields/field-types/single-line-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.single-line-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single line text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create field", - "permalink": "/fields/create-field" - }, - "next": { - "title": "Long text", - "permalink": "/fields/field-types/long-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-010-single-line-text-md-26e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-010-single-line-text-md-26e.json deleted file mode 100644 index 447091ae1a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-010-single-line-text-md-26e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/single-line-text", - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "source": "@site/docs/060.fields/030.field-types/010.text-based/010.single-line-text.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/single-line-text", - "permalink": "/fields/field-types/text-based/single-line-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/010.single-line-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single line text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display Value", - "permalink": "/fields/display-value" - }, - "next": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-020-long-text-md-b3e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-020-long-text-md-b3e.json deleted file mode 100644 index a2fa5ca745..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-020-long-text-md-b3e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/long-text", - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "source": "@site/docs/060.fields/030.field-types/010.text-based/020.long-text.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/long-text", - "permalink": "/fields/field-types/text-based/long-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/020.long-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Long text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - "next": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-030-email-md-3af.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-030-email-md-3af.json deleted file mode 100644 index 92e6aad832..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-030-email-md-3af.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "source": "@site/docs/060.fields/030.field-types/010.text-based/030.email.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/030.email.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Email" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-040-phonenumber-md-762.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-040-phonenumber-md-762.json deleted file mode 100644 index b9e20adceb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-040-phonenumber-md-762.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/phonenumber", - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "source": "@site/docs/060.fields/030.field-types/010.text-based/040.phonenumber.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/phonenumber", - "permalink": "/fields/field-types/text-based/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/040.phonenumber.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Phone Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-050-url-md-32c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-050-url-md-32c.json deleted file mode 100644 index f925b1579a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-050-url-md-32c.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/url", - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/060.fields/030.field-types/010.text-based/050.url.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/url", - "permalink": "/fields/field-types/text-based/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/050.url.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "URL" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-130-email-md-707.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-130-email-md-707.json deleted file mode 100644 index f8005fc86c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-130-email-md-707.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "---", - "source": "@site/docs/060.fields/030.field-types/010.text-based/130.email.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/130.email.md", - "tags": [], - "version": "current", - "sidebarPosition": 130, - "frontMatter": { - "title": "Email" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-150-email-md-034.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-150-email-md-034.json deleted file mode 100644 index 94e4dd5d39..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-150-email-md-034.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "---", - "source": "@site/docs/060.fields/030.field-types/010.text-based/150.email.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/150.email.md", - "tags": [], - "version": "current", - "sidebarPosition": 150, - "frontMatter": { - "title": "Email" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-151-phonenumber-md-917.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-151-phonenumber-md-917.json deleted file mode 100644 index 29bd0eaeff..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-151-phonenumber-md-917.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/phonenumber", - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "---", - "source": "@site/docs/060.fields/030.field-types/010.text-based/151.phonenumber.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/phonenumber", - "permalink": "/fields/field-types/text-based/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/151.phonenumber.md", - "tags": [], - "version": "current", - "sidebarPosition": 151, - "frontMatter": { - "title": "Phone Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-160-url-md-3d3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-160-url-md-3d3.json deleted file mode 100644 index 4881c5c547..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-010-text-based-160-url-md-3d3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/url", - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/060.fields/030.field-types/010.text-based/160.url.md", - "sourceDirName": "060.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/url", - "permalink": "/fields/field-types/text-based/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/010.text-based/160.url.md", - "tags": [], - "version": "current", - "sidebarPosition": 160, - "frontMatter": { - "title": "URL" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-015-primary-key-md-a84.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-015-primary-key-md-a84.json deleted file mode 100644 index 0de3615813..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-015-primary-key-md-a84.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/primary-key", - "id": "fields/field-types/primary-key", - "title": "primary-key", - "description": "", - "source": "@site/docs/060.fields/030.field-types/015.primary-key.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/primary-key", - "permalink": "/fields/field-types/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/015.primary-key.md", - "tags": [], - "version": "current", - "sidebarPosition": 15, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-long-text-md-a55.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-long-text-md-a55.json deleted file mode 100644 index 37bb59dbdf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-long-text-md-a55.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/long-text", - "id": "fields/field-types/long-text", - "title": "Long text", - "description": "Create field", - "source": "@site/docs/060.fields/030.field-types/020.long-text.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/long-text", - "permalink": "/fields/field-types/long-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.long-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Long text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single line text", - "permalink": "/fields/field-types/single-line-text" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-010-number-md-5a5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-010-number-md-5a5.json deleted file mode 100644 index d356355c6b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-010-number-md-5a5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/number", - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "source": "@site/docs/060.fields/030.field-types/020.numerical/010.number.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/number", - "permalink": "/fields/field-types/numerical/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/010.number.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-020-decimal-md-1c1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-020-decimal-md-1c1.json deleted file mode 100644 index 274a7ffc4d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-020-decimal-md-1c1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/decimal", - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "source": "@site/docs/060.fields/030.field-types/020.numerical/020.decimal.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/decimal", - "permalink": "/fields/field-types/numerical/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/020.decimal.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Decimal" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-number-md-560.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-number-md-560.json deleted file mode 100644 index fc67888b31..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-number-md-560.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/number", - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "source": "@site/docs/060.fields/030.field-types/020.numerical/030.number.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/number", - "permalink": "/fields/field-types/numerical/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/030.number.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-percent-md-76e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-percent-md-76e.json deleted file mode 100644 index 95c76f5c09..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-030-percent-md-76e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/percent", - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "source": "@site/docs/060.fields/030.field-types/020.numerical/030.percent.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/percent", - "permalink": "/fields/field-types/numerical/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/030.percent.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Percent" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - }, - "next": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-currency-md-d33.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-currency-md-d33.json deleted file mode 100644 index 3daf4296e4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-currency-md-d33.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/currency", - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "source": "@site/docs/060.fields/030.field-types/020.numerical/040.currency.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/currency", - "permalink": "/fields/field-types/numerical/currency", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/040.currency.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Currency" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-decimal-md-e25.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-decimal-md-e25.json deleted file mode 100644 index 705ef13582..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-040-decimal-md-e25.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/decimal", - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Create field", - "source": "@site/docs/060.fields/030.field-types/020.numerical/040.decimal.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/decimal", - "permalink": "/fields/field-types/numerical/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/040.decimal.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Decimal" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-050-percent-md-cff.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-050-percent-md-cff.json deleted file mode 100644 index 383f3a24c9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-020-numerical-050-percent-md-cff.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/percent", - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Create field", - "source": "@site/docs/060.fields/030.field-types/020.numerical/050.percent.md", - "sourceDirName": "060.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/percent", - "permalink": "/fields/field-types/numerical/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/020.numerical/050.percent.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Percent" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-number-md-e71.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-number-md-e71.json deleted file mode 100644 index 6e5fe57f9d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-number-md-e71.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/number", - "id": "fields/field-types/number", - "title": "Number", - "description": "Create field", - "source": "@site/docs/060.fields/030.field-types/030.number.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/number", - "permalink": "/fields/field-types/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/030.number.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/decimal" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-010-single-select-md-ae6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-010-single-select-md-ae6.json deleted file mode 100644 index 785f67a791..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-010-single-select-md-ae6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/single-select", - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/060.fields/030.field-types/030.select-based/010.single-select.md", - "sourceDirName": "060.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/single-select", - "permalink": "/fields/field-types/select-based/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/030.select-based/010.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-020-multi-select-md-551.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-020-multi-select-md-551.json deleted file mode 100644 index 3f3f6929de..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-020-multi-select-md-551.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/multi-select", - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/060.fields/030.field-types/030.select-based/020.multi-select.md", - "sourceDirName": "060.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/multi-select", - "permalink": "/fields/field-types/select-based/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/030.select-based/020.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Multi Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-090-single-select-md-b8e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-090-single-select-md-b8e.json deleted file mode 100644 index 6c1c63405a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-090-single-select-md-b8e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/single-select", - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/030.select-based/090.single-select.md", - "sourceDirName": "060.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/single-select", - "permalink": "/fields/field-types/select-based/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/030.select-based/090.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Single Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-100-multi-select-md-9ea.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-100-multi-select-md-9ea.json deleted file mode 100644 index 02cecc30a7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-030-select-based-100-multi-select-md-9ea.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/multi-select", - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/030.select-based/100.multi-select.md", - "sourceDirName": "060.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/multi-select", - "permalink": "/fields/field-types/select-based/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/030.select-based/100.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 100, - "frontMatter": { - "title": "Multi Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-decimal-md-b46.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-decimal-md-b46.json deleted file mode 100644 index fd597e1e76..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-decimal-md-b46.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/decimal", - "id": "fields/field-types/decimal", - "title": "Decimal", - "description": "", - "source": "@site/docs/060.fields/030.field-types/040.decimal.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/decimal", - "permalink": "/fields/field-types/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.decimal.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Decimal" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/percent" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-010-links-md-667.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-010-links-md-667.json deleted file mode 100644 index 3b9737d6bd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-010-links-md-667.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/links", - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "source": "@site/docs/060.fields/030.field-types/040.links-based/010.links.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/links", - "permalink": "/fields/field-types/links-based/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/010.links.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Links" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-020-lookup-md-21c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-020-lookup-md-21c.json deleted file mode 100644 index a2deb75dea..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-020-lookup-md-21c.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/lookup", - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional column information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "source": "@site/docs/060.fields/030.field-types/040.links-based/020.lookup.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/lookup", - "permalink": "/fields/field-types/links-based/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/020.lookup.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "LookUp" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-030-rollup-md-f04.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-030-rollup-md-f04.json deleted file mode 100644 index 97b594cb18..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-030-rollup-md-f04.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/rollup", - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "source": "@site/docs/060.fields/030.field-types/040.links-based/030.rollup.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/rollup", - "permalink": "/fields/field-types/links-based/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/030.rollup.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rollup" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-200-links-md-dfa.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-200-links-md-dfa.json deleted file mode 100644 index 20a75f3d20..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-200-links-md-dfa.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/links", - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "", - "source": "@site/docs/060.fields/030.field-types/040.links-based/200.links.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/links", - "permalink": "/fields/field-types/links-based/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/200.links.md", - "tags": [], - "version": "current", - "sidebarPosition": 200, - "frontMatter": { - "title": "Links" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-210-lookup-md-5f8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-210-lookup-md-5f8.json deleted file mode 100644 index 95fa0583db..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-210-lookup-md-5f8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/lookup", - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "", - "source": "@site/docs/060.fields/030.field-types/040.links-based/210.lookup.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/lookup", - "permalink": "/fields/field-types/links-based/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/210.lookup.md", - "tags": [], - "version": "current", - "sidebarPosition": 210, - "frontMatter": { - "title": "LookUp" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-220-rollup-md-501.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-220-rollup-md-501.json deleted file mode 100644 index aa81177460..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-040-links-based-220-rollup-md-501.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/rollup", - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "", - "source": "@site/docs/060.fields/030.field-types/040.links-based/220.rollup.md", - "sourceDirName": "060.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/rollup", - "permalink": "/fields/field-types/links-based/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/040.links-based/220.rollup.md", - "tags": [], - "version": "current", - "sidebarPosition": 220, - "frontMatter": { - "title": "Rollup" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-041-percent-md-5e2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-041-percent-md-5e2.json deleted file mode 100644 index fea15fc2c1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-041-percent-md-5e2.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/percent", - "id": "fields/field-types/percent", - "title": "percent", - "description": "", - "source": "@site/docs/060.fields/030.field-types/041.percent.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/percent", - "permalink": "/fields/field-types/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/041.percent.md", - "tags": [], - "version": "current", - "sidebarPosition": 41, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "decimal", - "permalink": "/fields/field-types/decimal" - }, - "next": { - "title": "attachment", - "permalink": "/fields/field-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-attachment-md-afd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-attachment-md-afd.json deleted file mode 100644 index b69344a16c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-attachment-md-afd.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/attachment", - "id": "fields/field-types/attachment", - "title": "attachment", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.attachment.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/attachment", - "permalink": "/fields/field-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.attachment.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "percent", - "permalink": "/fields/field-types/percent" - }, - "next": { - "title": "checkbox", - "permalink": "/fields/field-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-010-attachment-md-6d8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-010-attachment-md-6d8.json deleted file mode 100644 index 1c4ddda541..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-010-attachment-md-6d8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/attachment", - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/010.attachment.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/attachment", - "permalink": "/fields/field-types/custom-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/010.attachment.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Attachment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-020-checkbox-md-a7a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-020-checkbox-md-a7a.json deleted file mode 100644 index 5a7f924edf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-020-checkbox-md-a7a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/checkbox", - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/020.checkbox.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/checkbox", - "permalink": "/fields/field-types/custom-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/020.checkbox.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Checkbox" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-030-rating-md-2b8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-030-rating-md-2b8.json deleted file mode 100644 index 0efdeb47fa..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-030-rating-md-2b8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/rating", - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/030.rating.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/rating", - "permalink": "/fields/field-types/custom-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/030.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rating" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-040-qr-code-md-8e1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-040-qr-code-md-8e1.json deleted file mode 100644 index a7f4efce67..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-040-qr-code-md-8e1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/QR-code", - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/040.QR-code.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/QR-code", - "permalink": "/fields/field-types/custom-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/040.QR-code.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "QR code" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-050-barcode-md-31e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-050-barcode-md-31e.json deleted file mode 100644 index bbc578735a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-050-barcode-md-31e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/barcode", - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/050.barcode.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/barcode", - "permalink": "/fields/field-types/custom-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/050.barcode.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Barcode" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-attachment-md-3ba.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-attachment-md-3ba.json deleted file mode 100644 index 567662cc47..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-attachment-md-3ba.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/attachment", - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/060.attachment.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/attachment", - "permalink": "/fields/field-types/custom-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/060.attachment.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Attachment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-geometry-md-8c4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-geometry-md-8c4.json deleted file mode 100644 index b5248601f9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-060-geometry-md-8c4.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/geometry", - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/060.geometry.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/geometry", - "permalink": "/fields/field-types/custom-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/060.geometry.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Geometry" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-checkbox-md-893.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-checkbox-md-893.json deleted file mode 100644 index 4d29417fcf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-checkbox-md-893.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/checkbox", - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/070.checkbox.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/checkbox", - "permalink": "/fields/field-types/custom-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/070.checkbox.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Checkbox" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-specific-db-type-md-369.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-specific-db-type-md-369.json deleted file mode 100644 index 0ef306b38b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-070-specific-db-type-md-369.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/specific-db-type", - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/070.specific-db-type.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/specific-db-type", - "permalink": "/fields/field-types/custom-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/070.specific-db-type.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Specific DB type" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-json-md-036.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-json-md-036.json deleted file mode 100644 index 9f3f2bc9cd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-json-md-036.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/json", - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a column. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/080.json.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/json", - "permalink": "/fields/field-types/custom-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/080.json.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "JSON" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-rating-md-af1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-rating-md-af1.json deleted file mode 100644 index 1b88b820c2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-080-rating-md-af1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/rating", - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/080.rating.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/rating", - "permalink": "/fields/field-types/custom-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/080.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Rating" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-300-qr-code-md-08d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-300-qr-code-md-08d.json deleted file mode 100644 index b14effaeff..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-300-qr-code-md-08d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/QR-code", - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/300.QR-code.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/QR-code", - "permalink": "/fields/field-types/custom-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/300.QR-code.md", - "tags": [], - "version": "current", - "sidebarPosition": 300, - "frontMatter": { - "title": "QR code" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-310-barcode-md-3ce.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-310-barcode-md-3ce.json deleted file mode 100644 index bf396a9870..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-310-barcode-md-3ce.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/barcode", - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/310.barcode.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/barcode", - "permalink": "/fields/field-types/custom-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/310.barcode.md", - "tags": [], - "version": "current", - "sidebarPosition": 310, - "frontMatter": { - "title": "Barcode" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-320-geometry-md-073.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-320-geometry-md-073.json deleted file mode 100644 index b429f32d13..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-320-geometry-md-073.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/geometry", - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/320.geometry.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/geometry", - "permalink": "/fields/field-types/custom-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/320.geometry.md", - "tags": [], - "version": "current", - "sidebarPosition": 320, - "frontMatter": { - "title": "Geometry" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-330-specific-db-type-md-77f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-330-specific-db-type-md-77f.json deleted file mode 100644 index 813d20cc87..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-330-specific-db-type-md-77f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/specific-db-type", - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/330.specific-db-type.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/specific-db-type", - "permalink": "/fields/field-types/custom-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/330.specific-db-type.md", - "tags": [], - "version": "current", - "sidebarPosition": 330, - "frontMatter": { - "title": "Specific DB type" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-340-json-md-c4e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-340-json-md-c4e.json deleted file mode 100644 index 98c69926b3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-custom-types-340-json-md-c4e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/json", - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.custom-types/340.json.md", - "sourceDirName": "060.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/json", - "permalink": "/fields/field-types/custom-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.custom-types/340.json.md", - "tags": [], - "version": "current", - "sidebarPosition": 340, - "frontMatter": { - "title": "JSON" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-percent-md-426.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-percent-md-426.json deleted file mode 100644 index afbe613529..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-050-percent-md-426.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/percent", - "id": "fields/field-types/percent", - "title": "Percent", - "description": "", - "source": "@site/docs/060.fields/030.field-types/050.percent.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/percent", - "permalink": "/fields/field-types/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/050.percent.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Percent" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/decimal" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-attachment-md-fc3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-attachment-md-fc3.json deleted file mode 100644 index 3882a679d7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-attachment-md-fc3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/attachment", - "id": "fields/field-types/attachment", - "title": "Attachment", - "description": "", - "source": "@site/docs/060.fields/030.field-types/060.attachment.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/attachment", - "permalink": "/fields/field-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.attachment.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Attachment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-checkbox-md-88d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-checkbox-md-88d.json deleted file mode 100644 index 1f0a8e9dc9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-checkbox-md-88d.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/checkbox", - "id": "fields/field-types/checkbox", - "title": "checkbox", - "description": "", - "source": "@site/docs/060.fields/030.field-types/060.checkbox.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/checkbox", - "permalink": "/fields/field-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.checkbox.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "attachment", - "permalink": "/fields/field-types/attachment" - }, - "next": { - "title": "rating", - "permalink": "/fields/field-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-010-formula-md-8de.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-010-formula-md-8de.json deleted file mode 100644 index 662972f598..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-010-formula-md-8de.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/formula", - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "source": "@site/docs/060.fields/030.field-types/060.formula/010.formula.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/formula", - "permalink": "/fields/field-types/formula/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/010.formula.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Formula" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - }, - "next": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-015-operators-md-1a7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-015-operators-md-1a7.json deleted file mode 100644 index a5674900e4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-015-operators-md-1a7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/operators", - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "source": "@site/docs/060.fields/030.field-types/060.formula/015.operators.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/operators", - "permalink": "/fields/field-types/formula/operators", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/015.operators.md", - "tags": [], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Numeric and Logical Operators" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - }, - "next": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-numeric-functions-md-5dc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-numeric-functions-md-5dc.json deleted file mode 100644 index e2d3783061..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-numeric-functions-md-5dc.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/numeric-functions", - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "source": "@site/docs/060.fields/030.field-types/060.formula/020.numeric-functions.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/numeric-functions", - "permalink": "/fields/field-types/formula/numeric-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/020.numeric-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Numeric functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - }, - "next": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-string-functions-md-d2b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-string-functions-md-d2b.json deleted file mode 100644 index d6b2256b32..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-020-string-functions-md-d2b.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/string-functions", - "id": "fields/field-types/formula/string-functions", - "title": "string-functions", - "description": "", - "source": "@site/docs/060.fields/030.field-types/060.formula/020.string-functions.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/string-functions", - "permalink": "/fields/field-types/formula/string-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/020.string-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "numeric-functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-030-string-functions-md-b92.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-030-string-functions-md-b92.json deleted file mode 100644 index 3302845ab3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-030-string-functions-md-b92.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/string-functions", - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "source": "@site/docs/060.fields/030.field-types/060.formula/030.string-functions.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/string-functions", - "permalink": "/fields/field-types/formula/string-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/030.string-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "String functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - "next": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-040-date-functions-md-24a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-040-date-functions-md-24a.json deleted file mode 100644 index cbef6d0fc1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-040-date-functions-md-24a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/date-functions", - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "source": "@site/docs/060.fields/030.field-types/060.formula/040.date-functions.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/date-functions", - "permalink": "/fields/field-types/formula/date-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/040.date-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Date functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - "next": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-050-conditional-expressions-md-a77.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-050-conditional-expressions-md-a77.json deleted file mode 100644 index bec1488da8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-050-conditional-expressions-md-a77.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/conditional-expressions", - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "source": "@site/docs/060.fields/030.field-types/060.formula/050.conditional-expressions.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/conditional-expressions", - "permalink": "/fields/field-types/formula/conditional-expressions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/050.conditional-expressions.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Conditional expressions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-170-formula-md-fbe.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-170-formula-md-fbe.json deleted file mode 100644 index 92e49284b1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-060-formula-170-formula-md-fbe.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/formula", - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "", - "source": "@site/docs/060.fields/030.field-types/060.formula/170.formula.md", - "sourceDirName": "060.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/formula", - "permalink": "/fields/field-types/formula/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/060.formula/170.formula.md", - "tags": [], - "version": "current", - "sidebarPosition": 170, - "frontMatter": { - "title": "Formula" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-checkbox-md-b5f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-checkbox-md-b5f.json deleted file mode 100644 index 08da04c5f0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-checkbox-md-b5f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/checkbox", - "id": "fields/field-types/checkbox", - "title": "Checkbox", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.checkbox.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/checkbox", - "permalink": "/fields/field-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.checkbox.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Checkbox" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-010-date-time-md-0b6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-010-date-time-md-0b6.json deleted file mode 100644 index 594c9de739..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-010-date-time-md-0b6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date-time", - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single column.", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/010.date-time.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date-time", - "permalink": "/fields/field-types/date-time-based/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/010.date-time.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Date Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-020-date-md-c3f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-020-date-md-c3f.json deleted file mode 100644 index 26cf104115..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-020-date-md-c3f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date", - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values in a single column. NocoDB supports a wide range of date formats, as detailed in the table below.", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/020.date.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date", - "permalink": "/fields/field-types/date-time-based/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/020.date.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Date" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-030-time-md-28b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-030-time-md-28b.json deleted file mode 100644 index 60798a647c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-030-time-md-28b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/time", - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/030.time.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/time", - "permalink": "/fields/field-types/date-time-based/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/030.time.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-040-duration-md-cfd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-040-duration-md-cfd.json deleted file mode 100644 index 5a81acd3c1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-040-duration-md-cfd.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/duration", - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/040.duration.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/duration", - "permalink": "/fields/field-types/date-time-based/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/040.duration.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duration" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - }, - "next": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-110-date-time-md-53d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-110-date-time-md-53d.json deleted file mode 100644 index 7e88f74770..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-110-date-time-md-53d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date-time", - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/110.date-time.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date-time", - "permalink": "/fields/field-types/date-time-based/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/110.date-time.md", - "tags": [], - "version": "current", - "sidebarPosition": 110, - "frontMatter": { - "title": "Date Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-120-date-md-3b0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-120-date-md-3b0.json deleted file mode 100644 index c749047285..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-120-date-md-3b0.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date", - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/120.date.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date", - "permalink": "/fields/field-types/date-time-based/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/120.date.md", - "tags": [], - "version": "current", - "sidebarPosition": 120, - "frontMatter": { - "title": "Date" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-130-time-md-6ba.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-130-time-md-6ba.json deleted file mode 100644 index b01d0ad34b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-130-time-md-6ba.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/time", - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/130.time.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/time", - "permalink": "/fields/field-types/date-time-based/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/130.time.md", - "tags": [], - "version": "current", - "sidebarPosition": 130, - "frontMatter": { - "title": "Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-140-duration-md-e89.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-140-duration-md-e89.json deleted file mode 100644 index d32d14ce1a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-date-time-based-140-duration-md-e89.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/duration", - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.date-time-based/140.duration.md", - "sourceDirName": "060.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/duration", - "permalink": "/fields/field-types/date-time-based/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.date-time-based/140.duration.md", - "tags": [], - "version": "current", - "sidebarPosition": 140, - "frontMatter": { - "title": "Duration" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - }, - "next": { - "title": "Delete field", - "permalink": "/fields/delete-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-rating-md-51a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-rating-md-51a.json deleted file mode 100644 index c958943e8a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-rating-md-51a.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/rating", - "id": "fields/field-types/rating", - "title": "rating", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.rating.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/rating", - "permalink": "/fields/field-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "checkbox", - "permalink": "/fields/field-types/checkbox" - }, - "next": { - "title": "single-select", - "permalink": "/fields/field-types/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-single-select-md-e13.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-single-select-md-e13.json deleted file mode 100644 index 93d8f00828..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-070-single-select-md-e13.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/single-select", - "id": "fields/field-types/single-select", - "title": "single-select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/070.single-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/single-select", - "permalink": "/fields/field-types/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/070.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "rating", - "permalink": "/fields/field-types/rating" - }, - "next": { - "title": "multi-select", - "permalink": "/fields/field-types/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-multi-select-md-051.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-multi-select-md-051.json deleted file mode 100644 index 395403bd4e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-multi-select-md-051.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/multi-select", - "id": "fields/field-types/multi-select", - "title": "multi-select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/080.multi-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/multi-select", - "permalink": "/fields/field-types/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/080.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "rating", - "permalink": "/fields/field-types/rating" - }, - "next": { - "title": "single-select", - "permalink": "/fields/field-types/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-rating-md-2df.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-rating-md-2df.json deleted file mode 100644 index 03fc1bed55..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-rating-md-2df.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/rating", - "id": "fields/field-types/rating", - "title": "Rating", - "description": "", - "source": "@site/docs/060.fields/030.field-types/080.rating.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/rating", - "permalink": "/fields/field-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/080.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Rating" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/checkbox" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-single-select-md-ca8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-single-select-md-ca8.json deleted file mode 100644 index c0ba5110f4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-080-single-select-md-ca8.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/single-select", - "id": "fields/field-types/single-select", - "title": "single-select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/080.single-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/single-select", - "permalink": "/fields/field-types/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/080.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "rating", - "permalink": "/fields/field-types/rating" - }, - "next": { - "title": "multi-select", - "permalink": "/fields/field-types/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-multi-select-md-e73.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-multi-select-md-e73.json deleted file mode 100644 index e5eb2e8049..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-multi-select-md-e73.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/multi-select", - "id": "fields/field-types/multi-select", - "title": "multi-select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/090.multi-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/multi-select", - "permalink": "/fields/field-types/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/090.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "single-select", - "permalink": "/fields/field-types/single-select" - }, - "next": { - "title": "date-time", - "permalink": "/fields/field-types/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-rating-md-8b3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-rating-md-8b3.json deleted file mode 100644 index b24b202414..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-rating-md-8b3.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/rating", - "id": "fields/field-types/rating", - "title": "rating", - "description": "", - "source": "@site/docs/060.fields/030.field-types/090.rating.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/rating", - "permalink": "/fields/field-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/090.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "multi-select", - "permalink": "/fields/field-types/multi-select" - }, - "next": { - "title": "date-time", - "permalink": "/fields/field-types/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-single-select-md-5d3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-single-select-md-5d3.json deleted file mode 100644 index e9006af3e7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-090-single-select-md-5d3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/single-select", - "id": "fields/field-types/single-select", - "title": "Single Select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/090.single-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/single-select", - "permalink": "/fields/field-types/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/090.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Single Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-date-time-md-a92.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-date-time-md-a92.json deleted file mode 100644 index 735d57f6bf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-date-time-md-a92.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time", - "id": "fields/field-types/date-time", - "title": "date-time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/100.date-time.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/date-time", - "permalink": "/fields/field-types/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/100.date-time.md", - "tags": [], - "version": "current", - "sidebarPosition": 100, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "multi-select", - "permalink": "/fields/field-types/multi-select" - }, - "next": { - "title": "date", - "permalink": "/fields/field-types/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-multi-select-md-835.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-multi-select-md-835.json deleted file mode 100644 index 2b76cfb4b9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-100-multi-select-md-835.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/multi-select", - "id": "fields/field-types/multi-select", - "title": "Multi Select", - "description": "", - "source": "@site/docs/060.fields/030.field-types/100.multi-select.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/multi-select", - "permalink": "/fields/field-types/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/100.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 100, - "frontMatter": { - "title": "Multi Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/single-select" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-md-e9f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-md-e9f.json deleted file mode 100644 index 168df2a3e3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-md-e9f.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/date", - "id": "fields/field-types/date", - "title": "date", - "description": "", - "source": "@site/docs/060.fields/030.field-types/110.date.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/date", - "permalink": "/fields/field-types/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/110.date.md", - "tags": [], - "version": "current", - "sidebarPosition": 110, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "date-time", - "permalink": "/fields/field-types/date-time" - }, - "next": { - "title": "time", - "permalink": "/fields/field-types/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-time-md-f0b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-time-md-f0b.json deleted file mode 100644 index 5cf9940d25..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-110-date-time-md-f0b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time", - "id": "fields/field-types/date-time", - "title": "Date Time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/110.date-time.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/date-time", - "permalink": "/fields/field-types/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/110.date-time.md", - "tags": [], - "version": "current", - "sidebarPosition": 110, - "frontMatter": { - "title": "Date Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-date-md-19f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-date-md-19f.json deleted file mode 100644 index 83e21767e1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-date-md-19f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date", - "id": "fields/field-types/date", - "title": "Date", - "description": "", - "source": "@site/docs/060.fields/030.field-types/120.date.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/date", - "permalink": "/fields/field-types/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/120.date.md", - "tags": [], - "version": "current", - "sidebarPosition": 120, - "frontMatter": { - "title": "Date" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-time-md-ba8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-time-md-ba8.json deleted file mode 100644 index beae774feb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-120-time-md-ba8.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/time", - "id": "fields/field-types/time", - "title": "time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/120.time.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/time", - "permalink": "/fields/field-types/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/120.time.md", - "tags": [], - "version": "current", - "sidebarPosition": 120, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "date", - "permalink": "/fields/field-types/date" - }, - "next": { - "title": "duration", - "permalink": "/fields/field-types/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-duration-md-e7b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-duration-md-e7b.json deleted file mode 100644 index 73b170e039..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-duration-md-e7b.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/field-types/duration", - "id": "fields/field-types/duration", - "title": "duration", - "description": "", - "source": "@site/docs/060.fields/030.field-types/130.duration.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/duration", - "permalink": "/fields/field-types/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/130.duration.md", - "tags": [], - "version": "current", - "sidebarPosition": 130, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "time", - "permalink": "/fields/field-types/time" - }, - "next": { - "title": "email", - "permalink": "/fields/field-types/email" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-time-md-234.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-time-md-234.json deleted file mode 100644 index 15883fab38..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-130-time-md-234.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/time", - "id": "fields/field-types/time", - "title": "Time", - "description": "", - "source": "@site/docs/060.fields/030.field-types/130.time.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/time", - "permalink": "/fields/field-types/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/130.time.md", - "tags": [], - "version": "current", - "sidebarPosition": 130, - "frontMatter": { - "title": "Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-140-duration-md-334.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-140-duration-md-334.json deleted file mode 100644 index 5ec3cf6398..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-140-duration-md-334.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/duration", - "id": "fields/field-types/duration", - "title": "Duration", - "description": "", - "source": "@site/docs/060.fields/030.field-types/140.duration.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/duration", - "permalink": "/fields/field-types/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/140.duration.md", - "tags": [], - "version": "current", - "sidebarPosition": 140, - "frontMatter": { - "title": "Duration" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/time" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-150-email-md-5e7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-150-email-md-5e7.json deleted file mode 100644 index 34ed57c2a7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-150-email-md-5e7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/email", - "id": "fields/field-types/email", - "title": "Email", - "description": "---", - "source": "@site/docs/060.fields/030.field-types/150.email.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/email", - "permalink": "/fields/field-types/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/150.email.md", - "tags": [], - "version": "current", - "sidebarPosition": 150, - "frontMatter": { - "title": "Email" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/duration" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-151-phonenumber-md-466.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-151-phonenumber-md-466.json deleted file mode 100644 index 4d02a70bb9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-151-phonenumber-md-466.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/phonenumber", - "id": "fields/field-types/phonenumber", - "title": "Phone Number", - "description": "---", - "source": "@site/docs/060.fields/030.field-types/151.phonenumber.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/phonenumber", - "permalink": "/fields/field-types/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/151.phonenumber.md", - "tags": [], - "version": "current", - "sidebarPosition": 151, - "frontMatter": { - "title": "Phone Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/url" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-160-url-md-5a3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-160-url-md-5a3.json deleted file mode 100644 index fed72ea90d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-160-url-md-5a3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/url", - "id": "fields/field-types/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/060.fields/030.field-types/160.url.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/url", - "permalink": "/fields/field-types/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/160.url.md", - "tags": [], - "version": "current", - "sidebarPosition": 160, - "frontMatter": { - "title": "URL" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/phonenumber" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-170-formula-md-0fc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-170-formula-md-0fc.json deleted file mode 100644 index e7d6dafbad..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-170-formula-md-0fc.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula", - "id": "fields/field-types/formula", - "title": "Formula", - "description": "", - "source": "@site/docs/060.fields/030.field-types/170.formula.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/formula", - "permalink": "/fields/field-types/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/170.formula.md", - "tags": [], - "version": "current", - "sidebarPosition": 170, - "frontMatter": { - "title": "Formula" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-200-links-md-8d0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-200-links-md-8d0.json deleted file mode 100644 index eaff4d15da..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-200-links-md-8d0.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links", - "id": "fields/field-types/links", - "title": "Links", - "description": "", - "source": "@site/docs/060.fields/030.field-types/200.links.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/links", - "permalink": "/fields/field-types/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/200.links.md", - "tags": [], - "version": "current", - "sidebarPosition": 200, - "frontMatter": { - "title": "Links" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-210-lookup-md-ee9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-210-lookup-md-ee9.json deleted file mode 100644 index 18f5dfeea9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-210-lookup-md-ee9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/lookup", - "id": "fields/field-types/lookup", - "title": "LookUp", - "description": "", - "source": "@site/docs/060.fields/030.field-types/210.lookup.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/lookup", - "permalink": "/fields/field-types/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/210.lookup.md", - "tags": [], - "version": "current", - "sidebarPosition": 210, - "frontMatter": { - "title": "LookUp" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-220-rollup-md-523.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-220-rollup-md-523.json deleted file mode 100644 index c7c9cf89e1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-220-rollup-md-523.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/rollup", - "id": "fields/field-types/rollup", - "title": "Rollup", - "description": "", - "source": "@site/docs/060.fields/030.field-types/220.rollup.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/rollup", - "permalink": "/fields/field-types/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/220.rollup.md", - "tags": [], - "version": "current", - "sidebarPosition": 220, - "frontMatter": { - "title": "Rollup" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/lookup" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/QR-code" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-300-qr-code-md-ca8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-300-qr-code-md-ca8.json deleted file mode 100644 index aceee0b1af..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-300-qr-code-md-ca8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/QR-code", - "id": "fields/field-types/QR-code", - "title": "QR code", - "description": "", - "source": "@site/docs/060.fields/030.field-types/300.QR-code.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/QR-code", - "permalink": "/fields/field-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/300.QR-code.md", - "tags": [], - "version": "current", - "sidebarPosition": 300, - "frontMatter": { - "title": "QR code" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/barcode" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-310-barcode-md-af9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-310-barcode-md-af9.json deleted file mode 100644 index d39308e256..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-310-barcode-md-af9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/barcode", - "id": "fields/field-types/barcode", - "title": "Barcode", - "description": "", - "source": "@site/docs/060.fields/030.field-types/310.barcode.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/barcode", - "permalink": "/fields/field-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/310.barcode.md", - "tags": [], - "version": "current", - "sidebarPosition": 310, - "frontMatter": { - "title": "Barcode" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/geometry" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-320-geometry-md-920.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-320-geometry-md-920.json deleted file mode 100644 index b997f145ca..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-320-geometry-md-920.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/geometry", - "id": "fields/field-types/geometry", - "title": "Geometry", - "description": "", - "source": "@site/docs/060.fields/030.field-types/320.geometry.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/geometry", - "permalink": "/fields/field-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/320.geometry.md", - "tags": [], - "version": "current", - "sidebarPosition": 320, - "frontMatter": { - "title": "Geometry" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/specific-db-type" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-330-specific-db-type-md-238.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-330-specific-db-type-md-238.json deleted file mode 100644 index 425d4e5288..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-330-specific-db-type-md-238.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/specific-db-type", - "id": "fields/field-types/specific-db-type", - "title": "Specific DB type", - "description": "", - "source": "@site/docs/060.fields/030.field-types/330.specific-db-type.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/specific-db-type", - "permalink": "/fields/field-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/330.specific-db-type.md", - "tags": [], - "version": "current", - "sidebarPosition": 330, - "frontMatter": { - "title": "Specific DB type" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-340-json-md-a53.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-340-json-md-a53.json deleted file mode 100644 index 08fdf98a45..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-field-types-340-json-md-a53.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/json", - "id": "fields/field-types/json", - "title": "JSON", - "description": "", - "source": "@site/docs/060.fields/030.field-types/340.json.md", - "sourceDirName": "060.fields/030.field-types", - "slug": "/fields/field-types/json", - "permalink": "/fields/field-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.field-types/340.json.md", - "tags": [], - "version": "current", - "sidebarPosition": 340, - "frontMatter": { - "title": "JSON" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/specific-db-type" - }, - "next": { - "title": "Delete field", - "permalink": "/fields/delete-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-update-md-be8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-update-md-be8.json deleted file mode 100644 index 92102a0781..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-030-update-md-be8.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "fields/update", - "id": "fields/update", - "title": "update", - "description": "", - "source": "@site/docs/060.fields/030.update.md", - "sourceDirName": "060.fields", - "slug": "/fields/update", - "permalink": "/fields/update", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/030.update.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "create", - "permalink": "/fields/create" - }, - "next": { - "title": "duplicate", - "permalink": "/fields/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-040-duplicate-md-a72.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-040-duplicate-md-a72.json deleted file mode 100644 index c4a7d4f93a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-040-duplicate-md-a72.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/duplicate", - "id": "fields/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/060.fields/040.duplicate.md", - "sourceDirName": "060.fields", - "slug": "/fields/duplicate", - "permalink": "/fields/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/fields/create" - }, - "next": { - "title": "Delete", - "permalink": "/fields/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-field-md-c80.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-field-md-c80.json deleted file mode 100644 index 42878f9f6d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-field-md-c80.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/delete-field", - "id": "fields/delete-field", - "title": "Delete field", - "description": "This action cannot be undone.", - "source": "@site/docs/060.fields/050.delete-field.md", - "sourceDirName": "060.fields", - "slug": "/fields/delete-field", - "permalink": "/fields/delete-field", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/050.delete-field.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete field" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-md-9d6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-md-9d6.json deleted file mode 100644 index 37cfa02526..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-050-delete-md-9d6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/delete", - "id": "fields/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/060.fields/050.delete.md", - "sourceDirName": "060.fields", - "slug": "/fields/delete", - "permalink": "/fields/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/fields/create" - }, - "next": { - "title": "Configurations", - "permalink": "/fields/actions-on-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-actions-on-field-md-e50.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-actions-on-field-md-e50.json deleted file mode 100644 index c2157ecf5e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-actions-on-field-md-e50.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "fields/actions-on-field", - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "source": "@site/docs/060.fields/060.actions-on-field.md", - "sourceDirName": "060.fields", - "slug": "/fields/actions-on-field", - "permalink": "/fields/actions-on-field", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/060.actions-on-field.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on field", - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Records overview", - "permalink": "/records/records-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-configurations-md-5f8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-configurations-md-5f8.json deleted file mode 100644 index c7293422fa..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-fields-060-configurations-md-5f8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/configurations", - "id": "fields/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/060.fields/060.configurations.md", - "sourceDirName": "060.fields", - "slug": "/fields/configurations", - "permalink": "/fields/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.fields/060.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/fields/delete" - }, - "next": { - "title": "Overview", - "permalink": "/records/rows-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-010-overview-md-ae7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-010-overview-md-ae7.json deleted file mode 100644 index 41ac8b2e23..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-010-overview-md-ae7.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "unversionedId": "table-operations/overview", - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "source": "@site/docs/060.table-operations/010.overview.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/overview", - "permalink": "/table-operations/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/010.overview.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "tags": [ - "Table operations", - "Overview" - ], - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "record height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - }, - "next": { - "title": "Hide & reorder fields", - "permalink": "/table-operations/field-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-020-field-operations-md-225.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-020-field-operations-md-225.json deleted file mode 100644 index 54bf316a12..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-020-field-operations-md-225.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "unversionedId": "table-operations/field-operations", - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "source": "@site/docs/060.table-operations/020.field-operations.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/field-operations", - "permalink": "/table-operations/field-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/020.field-operations.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Reorder", - "permalink": "/tags/reorder" - }, - { - "label": "Show/Hide", - "permalink": "/tags/show-hide" - }, - { - "label": "Cover image", - "permalink": "/tags/cover-image" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "tags": [ - "Table operations", - "Reorder", - "Show/Hide", - "Cover image", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "fields, hide fields, reorder fields, change cover field, gallery view, kanban view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table operations overview", - "permalink": "/table-operations/overview" - }, - "next": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-030-filter-md-f7d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-030-filter-md-f7d.json deleted file mode 100644 index 2e435c8e88..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-030-filter-md-f7d.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "unversionedId": "table-operations/filter", - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "source": "@site/docs/060.table-operations/030.filter.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/filter", - "permalink": "/table-operations/filter", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/030.filter.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Filter", - "permalink": "/tags/filter" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Filtering records", - "tags": [ - "Table operations", - "Filter", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "row height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Hide & reorder fields", - "permalink": "/table-operations/field-operations" - }, - "next": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-040-sort-md-8a8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-040-sort-md-8a8.json deleted file mode 100644 index d042919485..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-040-sort-md-8a8.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "unversionedId": "table-operations/sort", - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "source": "@site/docs/060.table-operations/040.sort.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/sort", - "permalink": "/table-operations/sort", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/040.sort.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Sort", - "permalink": "/tags/sort" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Sorting records", - "tags": [ - "Table operations", - "Sort", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table", - "sorting", - "sort", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - }, - "next": { - "title": "Grouping records", - "permalink": "/table-operations/group-by" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-050-group-by-md-95a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-050-group-by-md-95a.json deleted file mode 100644 index b13153a337..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-050-group-by-md-95a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "unversionedId": "table-operations/group-by", - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "source": "@site/docs/060.table-operations/050.group-by.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/group-by", - "permalink": "/table-operations/group-by", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/050.group-by.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Group by", - "permalink": "/tags/group-by" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Grouping records", - "tags": [ - "Table operations", - "Group by", - "Grid View" - ], - "keywords": [ - "NocoDB table group by", - "group By column", - "group By", - "table group by", - "grouping records", - "grouping", - "group by in table" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - }, - "next": { - "title": "Row height", - "permalink": "/table-operations/row-height" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-060-row-height-md-69b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-060-row-height-md-69b.json deleted file mode 100644 index 9991f1799e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-060-row-height-md-69b.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "unversionedId": "table-operations/row-height", - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "source": "@site/docs/060.table-operations/060.row-height.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/row-height", - "permalink": "/table-operations/row-height", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/060.row-height.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Row height", - "permalink": "/tags/row-height" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Row height", - "tags": [ - "Table operations", - "Row height", - "Grid View" - ], - "keywords": [ - "table operations", - "row height" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grouping records", - "permalink": "/table-operations/group-by" - }, - "next": { - "title": "Search", - "permalink": "/table-operations/search" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-070-search-md-7dc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-070-search-md-7dc.json deleted file mode 100644 index 5994559591..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-070-search-md-7dc.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "unversionedId": "table-operations/search", - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "source": "@site/docs/060.table-operations/070.search.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/search", - "permalink": "/table-operations/search", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/070.search.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Search", - "permalink": "/tags/search" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Search", - "tags": [ - "Table operations", - "Search", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table search", - "search table", - "search records", - "search" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Row height", - "permalink": "/table-operations/row-height" - }, - "next": { - "title": "Download", - "permalink": "/table-operations/download" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-080-download-md-6a0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-080-download-md-6a0.json deleted file mode 100644 index db8779533b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-060-table-operations-080-download-md-6a0.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "unversionedId": "table-operations/download", - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "source": "@site/docs/060.table-operations/080.download.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/download", - "permalink": "/table-operations/download", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/080.download.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Download", - "permalink": "/tags/download" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "CSV", - "permalink": "/tags/csv" - }, - { - "label": "JSON", - "permalink": "/tags/json" - }, - { - "label": "XLSX", - "permalink": "/tags/xlsx" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Download", - "tags": [ - "Table operations", - "Download", - "Gallery View", - "Kanban View", - "Grid View", - "CSV", - "JSON", - "XLSX" - ], - "keywords": [ - "NocoDB table", - "download", - "export", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Search", - "permalink": "/table-operations/search" - }, - "next": { - "title": "Table details overview", - "permalink": "/table-details/table-details-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-065-table-details-table-details-overview-md-e30.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-065-table-details-table-details-overview-md-e30.json deleted file mode 100644 index d5c6369995..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-065-table-details-table-details-overview-md-e30.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "table-details/table-details-overview", - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "source": "@site/docs/065.table-details/table-details-overview.md", - "sourceDirName": "065.table-details", - "slug": "/table-details/table-details-overview", - "permalink": "/table-details/table-details-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/065.table-details/table-details-overview.md", - "tags": [ - { - "label": "Table details", - "permalink": "/tags/table-details" - }, - { - "label": "Table", - "permalink": "/tags/table" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "frontMatter": { - "title": "Table details overview", - "description": "Table details overview", - "tags": [ - "Table details", - "Table", - "Overview" - ], - "keywords": [ - "table details", - "table overview", - "table" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Download", - "permalink": "/table-operations/download" - }, - "next": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-010-fields-overview-md-310.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-010-fields-overview-md-310.json deleted file mode 100644 index 8efaf4281c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-010-fields-overview-md-310.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "unversionedId": "fields/fields-overview", - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "source": "@site/docs/070.fields/010.fields-overview.md", - "sourceDirName": "070.fields", - "slug": "/fields/fields-overview", - "permalink": "/fields/fields-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/010.fields-overview.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Fields overview", - "tags": [ - "Fields", - "Overview" - ], - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table details overview", - "permalink": "/table-details/table-details-overview" - }, - "next": { - "title": "Primary key", - "permalink": "/fields/primary-key" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-015-primary-key-md-138.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-015-primary-key-md-138.json deleted file mode 100644 index b6df5a6b27..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-015-primary-key-md-138.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "fields/primary-key", - "id": "fields/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/docs/070.fields/015.primary-key.md", - "sourceDirName": "070.fields", - "slug": "/fields/primary-key", - "permalink": "/fields/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/015.primary-key.md", - "tags": [], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "keywords": [ - "NocoDB primary key", - "primary key", - "primary key in NocoDB", - "primary key in database" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Display Value", - "permalink": "/fields/display-value" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-display-value-md-c9d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-display-value-md-c9d.json deleted file mode 100644 index 390697e072..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-display-value-md-c9d.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "fields/display-value", - "id": "fields/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/docs/070.fields/020.display-value.md", - "sourceDirName": "070.fields", - "slug": "/fields/display-value", - "permalink": "/fields/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/020.display-value.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "keywords": [ - "NocoDB display value", - "display value", - "display value in nocoDB", - "display value in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary Key", - "permalink": "/fields/primary-key" - }, - "next": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-primary-key-md-ec1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-primary-key-md-ec1.json deleted file mode 100644 index e03aab5fdf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-020-primary-key-md-ec1.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "fields/primary-key", - "id": "fields/primary-key", - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/docs/070.fields/020.primary-key.md", - "sourceDirName": "070.fields", - "slug": "/fields/primary-key", - "permalink": "/fields/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/020.primary-key.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Primary Key", - "permalink": "/tags/primary-key" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "tags": [ - "Fields", - "Primary Key" - ], - "keywords": [ - "NocoDB primary key", - "primary key", - "primary key in NocoDB", - "primary key in database" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Display value", - "permalink": "/fields/display-value" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-display-value-md-603.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-display-value-md-603.json deleted file mode 100644 index 8e33688be5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-display-value-md-603.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "fields/display-value", - "id": "fields/display-value", - "title": "Display value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/docs/070.fields/030.display-value.md", - "sourceDirName": "070.fields", - "slug": "/fields/display-value", - "permalink": "/fields/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.display-value.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Display Value", - "permalink": "/tags/display-value" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Display value", - "tags": [ - "Fields", - "Display Value" - ], - "description": "Understanding Display Value in NocoDB!", - "keywords": [ - "NocoDB display value", - "display value", - "display value in nocoDB", - "display value in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary key", - "permalink": "/fields/primary-key" - }, - "next": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-010-single-line-text-md-bcd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-010-single-line-text-md-bcd.json deleted file mode 100644 index 3fecc020e8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-010-single-line-text-md-bcd.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/single-line-text", - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "source": "@site/docs/070.fields/030.field-types/010.text-based/010.single-line-text.md", - "sourceDirName": "070.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/single-line-text", - "permalink": "/fields/field-types/text-based/single-line-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/010.text-based/010.single-line-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single line text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display Value", - "permalink": "/fields/display-value" - }, - "next": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-020-long-text-md-3d1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-020-long-text-md-3d1.json deleted file mode 100644 index 8e1c1ba923..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-020-long-text-md-3d1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/long-text", - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "source": "@site/docs/070.fields/030.field-types/010.text-based/020.long-text.md", - "sourceDirName": "070.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/long-text", - "permalink": "/fields/field-types/text-based/long-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/010.text-based/020.long-text.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Long text" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - "next": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-030-email-md-330.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-030-email-md-330.json deleted file mode 100644 index 24cc0d4aee..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-030-email-md-330.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/030.field-types/010.text-based/030.email.md", - "sourceDirName": "070.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/010.text-based/030.email.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Email" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-040-phonenumber-md-27f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-040-phonenumber-md-27f.json deleted file mode 100644 index 1f85804de5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-040-phonenumber-md-27f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/phonenumber", - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "source": "@site/docs/070.fields/030.field-types/010.text-based/040.phonenumber.md", - "sourceDirName": "070.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/phonenumber", - "permalink": "/fields/field-types/text-based/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/010.text-based/040.phonenumber.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Phone Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-050-url-md-aac.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-050-url-md-aac.json deleted file mode 100644 index f88ebf8539..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-010-text-based-050-url-md-aac.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/url", - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/030.field-types/010.text-based/050.url.md", - "sourceDirName": "070.fields/030.field-types/010.text-based", - "slug": "/fields/field-types/text-based/url", - "permalink": "/fields/field-types/text-based/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/010.text-based/050.url.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "URL" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-010-number-md-fd9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-010-number-md-fd9.json deleted file mode 100644 index d72878f219..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-010-number-md-fd9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/number", - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "source": "@site/docs/070.fields/030.field-types/020.numerical/010.number.md", - "sourceDirName": "070.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/number", - "permalink": "/fields/field-types/numerical/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/020.numerical/010.number.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Number" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-020-decimal-md-12f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-020-decimal-md-12f.json deleted file mode 100644 index 8073f69727..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-020-decimal-md-12f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/decimal", - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "source": "@site/docs/070.fields/030.field-types/020.numerical/020.decimal.md", - "sourceDirName": "070.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/decimal", - "permalink": "/fields/field-types/numerical/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/020.numerical/020.decimal.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Decimal" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-030-percent-md-32e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-030-percent-md-32e.json deleted file mode 100644 index ce8d71237c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-030-percent-md-32e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/percent", - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "source": "@site/docs/070.fields/030.field-types/020.numerical/030.percent.md", - "sourceDirName": "070.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/percent", - "permalink": "/fields/field-types/numerical/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/020.numerical/030.percent.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Percent" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - }, - "next": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-040-currency-md-07b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-040-currency-md-07b.json deleted file mode 100644 index bab00b3500..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-020-numerical-040-currency-md-07b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/currency", - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "source": "@site/docs/070.fields/030.field-types/020.numerical/040.currency.md", - "sourceDirName": "070.fields/030.field-types/020.numerical", - "slug": "/fields/field-types/numerical/currency", - "permalink": "/fields/field-types/numerical/currency", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/020.numerical/040.currency.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Currency" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-010-single-select-md-568.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-010-single-select-md-568.json deleted file mode 100644 index 93e04c7a76..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-010-single-select-md-568.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/single-select", - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/030.field-types/030.select-based/010.single-select.md", - "sourceDirName": "070.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/single-select", - "permalink": "/fields/field-types/select-based/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/030.select-based/010.single-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-020-multi-select-md-b47.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-020-multi-select-md-b47.json deleted file mode 100644 index e7f29ad44a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-030-select-based-020-multi-select-md-b47.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/multi-select", - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/030.field-types/030.select-based/020.multi-select.md", - "sourceDirName": "070.fields/030.field-types/030.select-based", - "slug": "/fields/field-types/select-based/multi-select", - "permalink": "/fields/field-types/select-based/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/030.select-based/020.multi-select.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Multi Select" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-010-links-md-1f9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-010-links-md-1f9.json deleted file mode 100644 index bc64319d12..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-010-links-md-1f9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/links", - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "source": "@site/docs/070.fields/030.field-types/040.links-based/010.links.md", - "sourceDirName": "070.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/links", - "permalink": "/fields/field-types/links-based/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/040.links-based/010.links.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Links" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-020-lookup-md-437.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-020-lookup-md-437.json deleted file mode 100644 index e621befae1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-020-lookup-md-437.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/lookup", - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional column information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "source": "@site/docs/070.fields/030.field-types/040.links-based/020.lookup.md", - "sourceDirName": "070.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/lookup", - "permalink": "/fields/field-types/links-based/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/040.links-based/020.lookup.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "LookUp" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-030-rollup-md-ac5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-030-rollup-md-ac5.json deleted file mode 100644 index 2022189718..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-040-links-based-030-rollup-md-ac5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/rollup", - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "source": "@site/docs/070.fields/030.field-types/040.links-based/030.rollup.md", - "sourceDirName": "070.fields/030.field-types/040.links-based", - "slug": "/fields/field-types/links-based/rollup", - "permalink": "/fields/field-types/links-based/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/040.links-based/030.rollup.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rollup" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-010-attachment-md-80a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-010-attachment-md-80a.json deleted file mode 100644 index 95fe3263f2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-010-attachment-md-80a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/attachment", - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/010.attachment.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/attachment", - "permalink": "/fields/field-types/custom-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/010.attachment.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Attachment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-020-checkbox-md-98e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-020-checkbox-md-98e.json deleted file mode 100644 index 1273c2e23c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-020-checkbox-md-98e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/checkbox", - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/020.checkbox.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/checkbox", - "permalink": "/fields/field-types/custom-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/020.checkbox.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Checkbox" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-030-rating-md-c6f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-030-rating-md-c6f.json deleted file mode 100644 index 496e8c4c21..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-030-rating-md-c6f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/rating", - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/030.rating.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/rating", - "permalink": "/fields/field-types/custom-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/030.rating.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rating" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-040-qr-code-md-f34.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-040-qr-code-md-f34.json deleted file mode 100644 index ed47d893f3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-040-qr-code-md-f34.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/QR-code", - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/040.QR-code.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/QR-code", - "permalink": "/fields/field-types/custom-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/040.QR-code.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "QR code" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-050-barcode-md-dfd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-050-barcode-md-dfd.json deleted file mode 100644 index 524c8f062e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-050-barcode-md-dfd.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/barcode", - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/050.barcode.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/barcode", - "permalink": "/fields/field-types/custom-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/050.barcode.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Barcode" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-060-geometry-md-53f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-060-geometry-md-53f.json deleted file mode 100644 index d60c41d4dc..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-060-geometry-md-53f.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/geometry", - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/060.geometry.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/geometry", - "permalink": "/fields/field-types/custom-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/060.geometry.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Geometry" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-070-specific-db-type-md-5e7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-070-specific-db-type-md-5e7.json deleted file mode 100644 index 302a7aaf0d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-070-specific-db-type-md-5e7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/specific-db-type", - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/070.specific-db-type.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/specific-db-type", - "permalink": "/fields/field-types/custom-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/070.specific-db-type.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Specific DB type" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-080-json-md-0e6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-080-json-md-0e6.json deleted file mode 100644 index 275edecc68..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-050-custom-types-080-json-md-0e6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/json", - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a column. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "source": "@site/docs/070.fields/030.field-types/050.custom-types/080.json.md", - "sourceDirName": "070.fields/030.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/json", - "permalink": "/fields/field-types/custom-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/050.custom-types/080.json.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "JSON" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-010-formula-md-3a9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-010-formula-md-3a9.json deleted file mode 100644 index 25eac5ea36..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-010-formula-md-3a9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/formula", - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "source": "@site/docs/070.fields/030.field-types/060.formula/010.formula.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/formula", - "permalink": "/fields/field-types/formula/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/010.formula.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Formula" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - }, - "next": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-015-operators-md-2de.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-015-operators-md-2de.json deleted file mode 100644 index 3c6d7bb230..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-015-operators-md-2de.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/operators", - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "source": "@site/docs/070.fields/030.field-types/060.formula/015.operators.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/operators", - "permalink": "/fields/field-types/formula/operators", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/015.operators.md", - "tags": [], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Numeric and Logical Operators" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - }, - "next": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-020-numeric-functions-md-9d9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-020-numeric-functions-md-9d9.json deleted file mode 100644 index 6c8c0b1930..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-020-numeric-functions-md-9d9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/numeric-functions", - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "source": "@site/docs/070.fields/030.field-types/060.formula/020.numeric-functions.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/numeric-functions", - "permalink": "/fields/field-types/formula/numeric-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/020.numeric-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Numeric functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - }, - "next": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-030-string-functions-md-018.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-030-string-functions-md-018.json deleted file mode 100644 index 64d6ff2ef1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-030-string-functions-md-018.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/string-functions", - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "source": "@site/docs/070.fields/030.field-types/060.formula/030.string-functions.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/string-functions", - "permalink": "/fields/field-types/formula/string-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/030.string-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "String functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - "next": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-040-date-functions-md-adc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-040-date-functions-md-adc.json deleted file mode 100644 index fd34e32d74..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-040-date-functions-md-adc.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/date-functions", - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "source": "@site/docs/070.fields/030.field-types/060.formula/040.date-functions.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/date-functions", - "permalink": "/fields/field-types/formula/date-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/040.date-functions.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Date functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - "next": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-050-conditional-expressions-md-f60.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-050-conditional-expressions-md-f60.json deleted file mode 100644 index 434fd02fb8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-060-formula-050-conditional-expressions-md-f60.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/conditional-expressions", - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "source": "@site/docs/070.fields/030.field-types/060.formula/050.conditional-expressions.md", - "sourceDirName": "070.fields/030.field-types/060.formula", - "slug": "/fields/field-types/formula/conditional-expressions", - "permalink": "/fields/field-types/formula/conditional-expressions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/060.formula/050.conditional-expressions.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Conditional expressions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-010-date-time-md-f9a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-010-date-time-md-f9a.json deleted file mode 100644 index 872177a9bd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-010-date-time-md-f9a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date-time", - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single column.", - "source": "@site/docs/070.fields/030.field-types/070.date-time-based/010.date-time.md", - "sourceDirName": "070.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date-time", - "permalink": "/fields/field-types/date-time-based/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/070.date-time-based/010.date-time.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Date Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-020-date-md-1e9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-020-date-md-1e9.json deleted file mode 100644 index 41f399d96d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-020-date-md-1e9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date", - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values in a single column. NocoDB supports a wide range of date formats, as detailed in the table below.", - "source": "@site/docs/070.fields/030.field-types/070.date-time-based/020.date.md", - "sourceDirName": "070.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date", - "permalink": "/fields/field-types/date-time-based/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/070.date-time-based/020.date.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Date" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-030-time-md-286.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-030-time-md-286.json deleted file mode 100644 index c22319bc8b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-030-time-md-286.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/time", - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "source": "@site/docs/070.fields/030.field-types/070.date-time-based/030.time.md", - "sourceDirName": "070.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/time", - "permalink": "/fields/field-types/date-time-based/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/070.date-time-based/030.time.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Time" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-040-duration-md-dd9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-040-duration-md-dd9.json deleted file mode 100644 index 45fe5dc95e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-030-field-types-070-date-time-based-040-duration-md-dd9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/duration", - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "source": "@site/docs/070.fields/030.field-types/070.date-time-based/040.duration.md", - "sourceDirName": "070.fields/030.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/duration", - "permalink": "/fields/field-types/date-time-based/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.field-types/070.date-time-based/040.duration.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duration" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - }, - "next": { - "title": "fields-editor", - "permalink": "/fields/fields-editor" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-010-single-line-text-md-22a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-010-single-line-text-md-22a.json deleted file mode 100644 index 74d38cc302..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-010-single-line-text-md-22a.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/single-line-text", - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/single-line-text", - "permalink": "/fields/field-types/text-based/single-line-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Single line text", - "permalink": "/tags/single-line-text" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single line text", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Single line text" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display value", - "permalink": "/fields/display-value" - }, - "next": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-020-long-text-md-c1d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-020-long-text-md-c1d.json deleted file mode 100644 index 37f72bfc55..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-020-long-text-md-c1d.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/long-text", - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/long-text", - "permalink": "/fields/field-types/text-based/long-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/020.long-text.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Long text", - "permalink": "/tags/long-text" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Long text", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Long text" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - "next": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-030-email-md-11d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-030-email-md-11d.json deleted file mode 100644 index 4279d1d41e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-030-email-md-11d.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/040.field-types/010.text-based/030.email.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/030.email.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Email", - "permalink": "/tags/email" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Email", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Email" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-040-phonenumber-md-bd0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-040-phonenumber-md-bd0.json deleted file mode 100644 index d0c44d6c64..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-040-phonenumber-md-bd0.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/phonenumber", - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/phonenumber", - "permalink": "/fields/field-types/text-based/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Phone number", - "permalink": "/tags/phone-number" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Phone Number", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Phone number" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-050-url-md-bb5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-050-url-md-bb5.json deleted file mode 100644 index 704c6a0866..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-010-text-based-050-url-md-bb5.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/text-based/url", - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/040.field-types/010.text-based/050.url.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/url", - "permalink": "/fields/field-types/text-based/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/050.url.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "URL", - "permalink": "/tags/url" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "URL", - "tags": [ - "Fields", - "Field types", - "Text based types", - "URL" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-010-number-md-e5a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-010-number-md-e5a.json deleted file mode 100644 index d0adcb52b5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-010-number-md-e5a.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/number", - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/010.number.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/number", - "permalink": "/fields/field-types/numerical/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/010.number.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Number", - "permalink": "/tags/number" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Number", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Number" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-020-decimal-md-698.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-020-decimal-md-698.json deleted file mode 100644 index 3b9dd79e79..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-020-decimal-md-698.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/decimal", - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/decimal", - "permalink": "/fields/field-types/numerical/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/020.decimal.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Decimal", - "permalink": "/tags/decimal" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Decimal", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Decimal" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-030-percent-md-31f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-030-percent-md-31f.json deleted file mode 100644 index 657985c5c8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-030-percent-md-31f.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/percent", - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/030.percent.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/percent", - "permalink": "/fields/field-types/numerical/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/030.percent.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Percent", - "permalink": "/tags/percent" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Percent", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Percent" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - }, - "next": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-040-currency-md-e55.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-040-currency-md-e55.json deleted file mode 100644 index 9b2202e1da..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-020-numerical-040-currency-md-e55.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/numerical/currency", - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/040.currency.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/currency", - "permalink": "/fields/field-types/numerical/currency", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/040.currency.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Currency", - "permalink": "/tags/currency" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Currency", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Currency" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-010-single-select-md-140.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-010-single-select-md-140.json deleted file mode 100644 index 28e5de6c69..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-010-single-select-md-140.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/single-select", - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md", - "sourceDirName": "070.fields/040.field-types/030.select-based", - "slug": "/fields/field-types/select-based/single-select", - "permalink": "/fields/field-types/select-based/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/010.single-select.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Select based types", - "permalink": "/tags/select-based-types" - }, - { - "label": "Single select", - "permalink": "/tags/single-select" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single Select", - "tags": [ - "Fields", - "Field types", - "Select based types", - "Single select" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-020-multi-select-md-35a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-020-multi-select-md-35a.json deleted file mode 100644 index 26f3a3993c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-030-select-based-020-multi-select-md-35a.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/select-based/multi-select", - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md", - "sourceDirName": "070.fields/040.field-types/030.select-based", - "slug": "/fields/field-types/select-based/multi-select", - "permalink": "/fields/field-types/select-based/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/020.multi-select.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Select based types", - "permalink": "/tags/select-based-types" - }, - { - "label": "Multi select", - "permalink": "/tags/multi-select" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Multi Select", - "tags": [ - "Fields", - "Field types", - "Select based types", - "Multi select" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-010-links-md-16d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-010-links-md-16d.json deleted file mode 100644 index 3246c633a1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-010-links-md-16d.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/links", - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/010.links.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/links", - "permalink": "/fields/field-types/links-based/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/010.links.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Links", - "permalink": "/tags/links" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Links", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Links" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-020-lookup-md-abb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-020-lookup-md-abb.json deleted file mode 100644 index 402e07ddef..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-020-lookup-md-abb.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/lookup", - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/lookup", - "permalink": "/fields/field-types/links-based/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/020.lookup.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Lookup", - "permalink": "/tags/lookup" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "LookUp", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Lookup" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-030-rollup-md-cd3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-030-rollup-md-cd3.json deleted file mode 100644 index 140a38302f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-040-links-based-030-rollup-md-cd3.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/links-based/rollup", - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/rollup", - "permalink": "/fields/field-types/links-based/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/030.rollup.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Rollup", - "permalink": "/tags/rollup" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rollup", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Rollup" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-010-attachment-md-e68.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-010-attachment-md-e68.json deleted file mode 100644 index ef709874c3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-010-attachment-md-e68.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/attachment", - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/attachment", - "permalink": "/fields/field-types/custom-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/010.attachment.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Attachment", - "permalink": "/tags/attachment" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Attachment", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Attachment" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-020-checkbox-md-ed0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-020-checkbox-md-ed0.json deleted file mode 100644 index 9de1ecee87..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-020-checkbox-md-ed0.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/checkbox", - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/checkbox", - "permalink": "/fields/field-types/custom-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Checkbox", - "permalink": "/tags/checkbox" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Checkbox", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Checkbox" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-030-rating-md-ec1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-030-rating-md-ec1.json deleted file mode 100644 index 624a0f46a3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-030-rating-md-ec1.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/rating", - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/rating", - "permalink": "/fields/field-types/custom-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/030.rating.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Rating", - "permalink": "/tags/rating" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rating", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Rating" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-040-qr-code-md-525.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-040-qr-code-md-525.json deleted file mode 100644 index e363756be2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-040-qr-code-md-525.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/QR-code", - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/QR-code", - "permalink": "/fields/field-types/custom-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "QR code", - "permalink": "/tags/qr-code" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "QR code", - "tags": [ - "Fields", - "Field types", - "Custom types", - "QR code" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-050-barcode-md-4cd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-050-barcode-md-4cd.json deleted file mode 100644 index 4b3ba6377b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-050-barcode-md-4cd.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/barcode", - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/barcode", - "permalink": "/fields/field-types/custom-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/050.barcode.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Barcode", - "permalink": "/tags/barcode" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Barcode", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Barcode" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-060-geometry-md-c1a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-060-geometry-md-c1a.json deleted file mode 100644 index de2640c69c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-060-geometry-md-c1a.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/geometry", - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/geometry", - "permalink": "/fields/field-types/custom-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/060.geometry.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Geometry", - "permalink": "/tags/geometry" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Geometry", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Geometry" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-070-specific-db-type-md-68f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-070-specific-db-type-md-68f.json deleted file mode 100644 index 593313a7f7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-070-specific-db-type-md-68f.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/specific-db-type", - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/specific-db-type", - "permalink": "/fields/field-types/custom-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Specific DB type", - "permalink": "/tags/specific-db-type" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Specific DB type", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Specific DB type" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-080-json-md-6d2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-080-json-md-6d2.json deleted file mode 100644 index f4d6ba51a5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-050-custom-types-080-json-md-6d2.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/custom-types/json", - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/080.json.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/json", - "permalink": "/fields/field-types/custom-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/080.json.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "JSON", - "permalink": "/tags/json" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "JSON", - "tags": [ - "Fields", - "Field types", - "Custom types", - "JSON" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-010-formula-md-0a7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-010-formula-md-0a7.json deleted file mode 100644 index 5399aa78a6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-010-formula-md-0a7.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/formula", - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "source": "@site/docs/070.fields/040.field-types/060.formula/010.formula.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/formula", - "permalink": "/fields/field-types/formula/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/010.formula.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Formula", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - }, - "next": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-015-operators-md-98d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-015-operators-md-98d.json deleted file mode 100644 index ba905b6520..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-015-operators-md-98d.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/operators", - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "source": "@site/docs/070.fields/040.field-types/060.formula/015.operators.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/operators", - "permalink": "/fields/field-types/formula/operators", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/015.operators.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Numeric and Logical Operators", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - }, - "next": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-020-numeric-functions-md-224.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-020-numeric-functions-md-224.json deleted file mode 100644 index 8e334dbdf8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-020-numeric-functions-md-224.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/numeric-functions", - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "source": "@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/numeric-functions", - "permalink": "/fields/field-types/formula/numeric-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Numeric functions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - }, - "next": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-030-string-functions-md-0ac.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-030-string-functions-md-0ac.json deleted file mode 100644 index b2da59ad8e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-030-string-functions-md-0ac.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/string-functions", - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "source": "@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/string-functions", - "permalink": "/fields/field-types/formula/string-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/030.string-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "String functions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - "next": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-040-date-functions-md-31b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-040-date-functions-md-31b.json deleted file mode 100644 index 8fa2a6368f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-040-date-functions-md-31b.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/date-functions", - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "source": "@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/date-functions", - "permalink": "/fields/field-types/formula/date-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/040.date-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Date functions", - "tags": [ - "Fields", - "Field types", - "Formula", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - "next": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-050-conditional-expressions-md-18c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-050-conditional-expressions-md-18c.json deleted file mode 100644 index 44e54d7659..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-060-formula-050-conditional-expressions-md-18c.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/formula/conditional-expressions", - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "source": "@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/conditional-expressions", - "permalink": "/fields/field-types/formula/conditional-expressions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Conditional expressions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-010-date-time-md-ded.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-010-date-time-md-ded.json deleted file mode 100644 index 4abb6c225f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-010-date-time-md-ded.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date-time", - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date-time", - "permalink": "/fields/field-types/date-time-based/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Date Time", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-020-date-md-14d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-020-date-md-14d.json deleted file mode 100644 index 65c3e09a5d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-020-date-md-14d.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/date", - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date", - "permalink": "/fields/field-types/date-time-based/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/020.date.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Date", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-030-time-md-2cb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-030-time-md-2cb.json deleted file mode 100644 index 7234896cfb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-030-time-md-2cb.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/time", - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/time", - "permalink": "/fields/field-types/date-time-based/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/030.time.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Time", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-040-duration-md-60b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-040-duration-md-60b.json deleted file mode 100644 index 64a039d9a3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-040-field-types-070-date-time-based-040-duration-md-60b.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "fields/field-types/date-time-based/duration", - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/duration", - "permalink": "/fields/field-types/date-time-based/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/040.duration.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duration", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - }, - "next": { - "title": "Multi-field editor", - "permalink": "/fields/multi-fields-editor" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-fields-editor-md-7e5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-fields-editor-md-7e5.json deleted file mode 100644 index 250b3179db..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-fields-editor-md-7e5.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "unversionedId": "fields/fields-editor", - "id": "fields/fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "source": "@site/docs/070.fields/050.fields-editor.md", - "sourceDirName": "070.fields", - "slug": "/fields/fields-editor", - "permalink": "/fields/fields-editor", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/050.fields-editor.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Multi-fields editor", - "permalink": "/tags/multi-fields-editor" - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "tags": [ - "Fields", - "Multi-fields editor", - "Productivity hacks" - ], - "keywords": [ - "NocoDB fields editor", - "fields editor", - "fields editor in nocoDB", - "fields editor in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-multi-fields-editor-md-da4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-multi-fields-editor-md-da4.json deleted file mode 100644 index 718d8420eb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-050-multi-fields-editor-md-da4.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "unversionedId": "fields/multi-fields-editor", - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "source": "@site/docs/070.fields/050.multi-fields-editor.md", - "sourceDirName": "070.fields", - "slug": "/fields/multi-fields-editor", - "permalink": "/fields/multi-fields-editor", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/050.multi-fields-editor.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Multi-fields editor", - "permalink": "/tags/multi-fields-editor" - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "tags": [ - "Fields", - "Multi-fields editor", - "Productivity hacks" - ], - "keywords": [ - "NocoDB fields editor", - "fields editor", - "fields editor in nocoDB", - "fields editor in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-060-actions-on-field-md-fb6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-060-actions-on-field-md-fb6.json deleted file mode 100644 index dfdee463f7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-fields-060-actions-on-field-md-fb6.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "unversionedId": "fields/actions-on-field", - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "source": "@site/docs/070.fields/060.actions-on-field.md", - "sourceDirName": "070.fields", - "slug": "/fields/actions-on-field", - "permalink": "/fields/actions-on-field", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/060.actions-on-field.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Hide", - "permalink": "/tags/hide" - }, - { - "label": "Display value", - "permalink": "/tags/display-value" - }, - { - "label": "Sort", - "permalink": "/tags/sort" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on field", - "tags": [ - "Fields", - "Rename", - "Delete", - "Duplicate", - "Hide", - "Display value", - "Sort" - ], - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi-field editor", - "permalink": "/fields/multi-fields-editor" - }, - "next": { - "title": "Records overview", - "permalink": "/records/records-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-records-overview-md-d77.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-records-overview-md-d77.json deleted file mode 100644 index d2db511f92..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-records-overview-md-d77.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "records/records-overview", - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "source": "@site/docs/070.records/010.records-overview.md", - "sourceDirName": "070.records", - "slug": "/records/records-overview", - "permalink": "/records/records-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/010.records-overview.md", - "tags": [ - { - "label": "records", - "permalink": "/tags/records" - }, - { - "label": "record overview", - "permalink": "/tags/record-overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "tags": [ - "records", - "record overview" - ], - "keywords": [ - "NocoDB record", - "record overview", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - }, - "next": { - "title": "Create record", - "permalink": "/records/create-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-rows-overview-md-a54.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-rows-overview-md-a54.json deleted file mode 100644 index 3c7da98de4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-010-rows-overview-md-a54.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/rows-overview", - "id": "records/rows-overview", - "title": "Rows overview", - "description": "", - "source": "@site/docs/070.records/010.rows-overview.md", - "sourceDirName": "070.records", - "slug": "/records/rows-overview", - "permalink": "/records/rows-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/010.rows-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Rows overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on fields", - "permalink": "/fields/actions-on-field" - }, - "next": { - "title": "Create row", - "permalink": "/records/create-row" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-md-9f6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-md-9f6.json deleted file mode 100644 index 9886e1beac..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-md-9f6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/create", - "id": "records/create", - "title": "Create", - "description": "", - "source": "@site/docs/070.records/020.create.md", - "sourceDirName": "070.records", - "slug": "/records/create", - "permalink": "/records/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Overview", - "permalink": "/records/rows-overview" - }, - "next": { - "title": "Comments", - "permalink": "/records/comments" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-record-md-bc2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-record-md-bc2.json deleted file mode 100644 index 85fdec38c5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-record-md-bc2.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "records/create-record", - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "source": "@site/docs/070.records/020.create-record.md", - "sourceDirName": "070.records", - "slug": "/records/create-record", - "permalink": "/records/create-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/020.create-record.md", - "tags": [ - { - "label": "records", - "permalink": "/tags/records" - }, - { - "label": "create record", - "permalink": "/tags/create-record" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "tags": [ - "records", - "create record" - ], - "keywords": [ - "NocoDB record", - "create record", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Records overview", - "permalink": "/records/records-overview" - }, - "next": { - "title": "Expanded form", - "permalink": "/records/expanded-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-row-md-331.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-row-md-331.json deleted file mode 100644 index cc1db01a85..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-020-create-row-md-331.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/create-row", - "id": "records/create-row", - "title": "Create row", - "description": "", - "source": "@site/docs/070.records/020.create-row.md", - "sourceDirName": "070.records", - "slug": "/records/create-row", - "permalink": "/records/create-row", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/020.create-row.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create row" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rows overview", - "permalink": "/records/records-overview" - }, - "next": { - "title": "Comments", - "permalink": "/records/comments" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-030-expanded-record-md-fc7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-030-expanded-record-md-fc7.json deleted file mode 100644 index 128e33358d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-030-expanded-record-md-fc7.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "unversionedId": "records/expanded-record", - "id": "records/expanded-record", - "title": "Expanded form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/docs/070.records/030.expanded-record.md", - "sourceDirName": "070.records", - "slug": "/records/expanded-record", - "permalink": "/records/expanded-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/030.expanded-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Expanded form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "keywords": [ - "NocoDB expanded form", - "expanded form", - "expanded record", - "expanded record view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create record", - "permalink": "/records/create-record" - }, - "next": { - "title": "Delete record", - "permalink": "/records/delete-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-delete-record-md-508.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-delete-record-md-508.json deleted file mode 100644 index b2e5b4935c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-delete-record-md-508.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "records/delete-record", - "id": "records/delete-record", - "title": "Delete record", - "description": "Delete Record (Single)", - "source": "@site/docs/070.records/040.delete-record.md", - "sourceDirName": "070.records", - "slug": "/records/delete-record", - "permalink": "/records/delete-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/040.delete-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Delete record", - "keywords": [ - "NocoDB delete record", - "delete record", - "delete row", - "delete rows" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded form", - "permalink": "/records/expanded-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-duplicate-md-392.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-duplicate-md-392.json deleted file mode 100644 index 08404f352e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-040-duplicate-md-392.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/duplicate", - "id": "records/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/070.records/040.duplicate.md", - "sourceDirName": "070.records", - "slug": "/records/duplicate", - "permalink": "/records/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/records/create" - }, - "next": { - "title": "Delete", - "permalink": "/records/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-050-delete-md-52d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-050-delete-md-52d.json deleted file mode 100644 index 9438e29714..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-050-delete-md-52d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/delete", - "id": "records/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/070.records/050.delete.md", - "sourceDirName": "070.records", - "slug": "/records/delete", - "permalink": "/records/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/records/create" - }, - "next": { - "title": "Comments", - "permalink": "/records/comments" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-a-record-md-478.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-a-record-md-478.json deleted file mode 100644 index fc611617da..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-a-record-md-478.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/comment-on-a-record", - "id": "records/comment-on-a-record", - "title": "Comments", - "description": "", - "source": "@site/docs/070.records/060.comment-on-a-record.md", - "sourceDirName": "070.records", - "slug": "/records/comment-on-a-record", - "permalink": "/records/comment-on-a-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/060.comment-on-a-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Comments" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create row", - "permalink": "/records/create-record" - }, - "next": { - "title": "Configurations", - "permalink": "/records/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-record-md-f1e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-record-md-f1e.json deleted file mode 100644 index 8d621fae38..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comment-on-record-md-f1e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/comment-on-record", - "id": "records/comment-on-record", - "title": "Comments on record", - "description": "", - "source": "@site/docs/070.records/060.comment-on-record.md", - "sourceDirName": "070.records", - "slug": "/records/comment-on-record", - "permalink": "/records/comment-on-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/060.comment-on-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Comments on record" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete record", - "permalink": "/records/delete-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comments-md-ddb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comments-md-ddb.json deleted file mode 100644 index 07829381c7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-060-comments-md-ddb.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/comments", - "id": "records/comments", - "title": "Comments", - "description": "", - "source": "@site/docs/070.records/060.comments.md", - "sourceDirName": "070.records", - "slug": "/records/comments", - "permalink": "/records/comments", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/060.comments.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Comments" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create row", - "permalink": "/records/create-record" - }, - "next": { - "title": "Configurations", - "permalink": "/records/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-actions-on-record-md-766.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-actions-on-record-md-766.json deleted file mode 100644 index 8e87fd3759..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-actions-on-record-md-766.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "records/actions-on-record", - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "source": "@site/docs/070.records/070.actions-on-record.md", - "sourceDirName": "070.records", - "slug": "/records/actions-on-record", - "permalink": "/records/actions-on-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/070.actions-on-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Actions on record", - "keywords": [ - "NocoDB delete record", - "delete record", - "delete row", - "delete rows" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete record", - "permalink": "/records/delete-record" - }, - "next": { - "title": "View Overview", - "permalink": "/views/views-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-configurations-md-bf9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-configurations-md-bf9.json deleted file mode 100644 index dd8b576d03..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-records-070-configurations-md-bf9.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "records/configurations", - "id": "records/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/070.records/070.configurations.md", - "sourceDirName": "070.records", - "slug": "/records/configurations", - "permalink": "/records/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.records/070.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Comments", - "permalink": "/records/comment-on-record" - }, - "next": { - "title": "Overview", - "permalink": "/views/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-overview-md-ef1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-overview-md-ef1.json deleted file mode 100644 index 076e4641aa..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-overview-md-ef1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/overview", - "id": "rows/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/070.rows/010.overview.md", - "sourceDirName": "070.rows", - "slug": "/rows/overview", - "permalink": "/rows/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/fields/configurations" - }, - "next": { - "title": "Create", - "permalink": "/rows/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-rows-overview-md-6e2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-rows-overview-md-6e2.json deleted file mode 100644 index 8868933bcf..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-010-rows-overview-md-6e2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/rows-overview", - "id": "rows/rows-overview", - "title": "Overview", - "description": "", - "source": "@site/docs/070.rows/010.rows-overview.md", - "sourceDirName": "070.rows", - "slug": "/rows/rows-overview", - "permalink": "/rows/rows-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/010.rows-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Configurations", - "permalink": "/fields/configurations" - }, - "next": { - "title": "Create", - "permalink": "/rows/create" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-020-create-md-cc7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-020-create-md-cc7.json deleted file mode 100644 index 25abe84117..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-020-create-md-cc7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/create", - "id": "rows/create", - "title": "Create", - "description": "", - "source": "@site/docs/070.rows/020.create.md", - "sourceDirName": "070.rows", - "slug": "/rows/create", - "permalink": "/rows/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Overview", - "permalink": "/rows/rows-overview" - }, - "next": { - "title": "Duplicate", - "permalink": "/rows/duplicate" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-040-duplicate-md-69c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-040-duplicate-md-69c.json deleted file mode 100644 index 31ffb51189..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-040-duplicate-md-69c.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/duplicate", - "id": "rows/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/070.rows/040.duplicate.md", - "sourceDirName": "070.rows", - "slug": "/rows/duplicate", - "permalink": "/rows/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/rows/create" - }, - "next": { - "title": "Delete", - "permalink": "/rows/delete" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-050-delete-md-2cf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-050-delete-md-2cf.json deleted file mode 100644 index c63a833aff..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-050-delete-md-2cf.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/delete", - "id": "rows/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/070.rows/050.delete.md", - "sourceDirName": "070.rows", - "slug": "/rows/delete", - "permalink": "/rows/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duplicate", - "permalink": "/rows/duplicate" - }, - "next": { - "title": "Comments", - "permalink": "/rows/comments" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-comments-md-bb6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-comments-md-bb6.json deleted file mode 100644 index 79c44fbc60..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-comments-md-bb6.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/comments", - "id": "rows/comments", - "title": "Comments", - "description": "", - "source": "@site/docs/070.rows/060.comments.md", - "sourceDirName": "070.rows", - "slug": "/rows/comments", - "permalink": "/rows/comments", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/060.comments.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Comments" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete", - "permalink": "/rows/delete" - }, - "next": { - "title": "Configurations", - "permalink": "/rows/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-configurations-md-30b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-configurations-md-30b.json deleted file mode 100644 index e2e754c0c3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-060-configurations-md-30b.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "rows/configurations", - "id": "rows/configurations", - "title": "configurations", - "description": "", - "source": "@site/docs/070.rows/060.configurations.md", - "sourceDirName": "070.rows", - "slug": "/rows/configurations", - "permalink": "/rows/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/060.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "comments", - "permalink": "/rows/comments" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-070-configurations-md-ed7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-070-configurations-md-ed7.json deleted file mode 100644 index 48a416dc6f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-070-rows-070-configurations-md-ed7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "rows/configurations", - "id": "rows/configurations", - "title": "Configurations", - "description": "", - "source": "@site/docs/070.rows/070.configurations.md", - "sourceDirName": "070.rows", - "slug": "/rows/configurations", - "permalink": "/rows/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.rows/070.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Configurations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Comments", - "permalink": "/rows/comments" - }, - "next": { - "title": "Overview", - "permalink": "/views/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-010-records-overview-md-9df.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-010-records-overview-md-9df.json deleted file mode 100644 index 4948bab6ef..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-010-records-overview-md-9df.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "records/records-overview", - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "source": "@site/docs/080.records/010.records-overview.md", - "sourceDirName": "080.records", - "slug": "/records/records-overview", - "permalink": "/records/records-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/010.records-overview.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "tags": [ - "Records", - "Overview" - ], - "keywords": [ - "NocoDB record", - "record overview", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - }, - "next": { - "title": "Create record", - "permalink": "/records/create-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-020-create-record-md-288.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-020-create-record-md-288.json deleted file mode 100644 index 10301aa214..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-020-create-record-md-288.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "records/create-record", - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "source": "@site/docs/080.records/020.create-record.md", - "sourceDirName": "080.records", - "slug": "/records/create-record", - "permalink": "/records/create-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/020.create-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "tags": [ - "Records", - "Create" - ], - "keywords": [ - "NocoDB record", - "create record", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Records overview", - "permalink": "/records/records-overview" - }, - "next": { - "title": "Expanded record", - "permalink": "/records/expand-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expand-record-md-278.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expand-record-md-278.json deleted file mode 100644 index 77dc353d0d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expand-record-md-278.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "unversionedId": "records/expand-record", - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/docs/080.records/030.expand-record.md", - "sourceDirName": "080.records", - "slug": "/records/expand-record", - "permalink": "/records/expand-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/030.expand-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Expanded record", - "permalink": "/tags/expanded-record" - }, - { - "label": "Activity feed", - "permalink": "/tags/activity-feed" - }, - { - "label": "Comments", - "permalink": "/tags/comments" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Expanded record", - "tags": [ - "Records", - "Expanded record", - "Activity feed", - "Comments" - ], - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "keywords": [ - "NocoDB expanded form", - "expanded form", - "expanded record", - "expanded record view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create record", - "permalink": "/records/create-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expanded-record-md-ec2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expanded-record-md-ec2.json deleted file mode 100644 index 7a7b23bbd0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-030-expanded-record-md-ec2.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "unversionedId": "records/expanded-record", - "id": "records/expanded-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/docs/080.records/030.expanded-record.md", - "sourceDirName": "080.records", - "slug": "/records/expanded-record", - "permalink": "/records/expanded-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/030.expanded-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Expanded record", - "permalink": "/tags/expanded-record" - }, - { - "label": "Activity feed", - "permalink": "/tags/activity-feed" - }, - { - "label": "Comments", - "permalink": "/tags/comments" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Expanded record", - "tags": [ - "Records", - "Expanded record", - "Activity feed", - "Comments" - ], - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "keywords": [ - "NocoDB expanded form", - "expanded form", - "expanded record", - "expanded record view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create record", - "permalink": "/records/create-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-040-delete-record-md-945.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-040-delete-record-md-945.json deleted file mode 100644 index bc6d149270..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-040-delete-record-md-945.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "records/delete-record", - "id": "records/delete-record", - "title": "Delete record", - "description": "Delete Record (Single)", - "source": "@site/docs/080.records/040.delete-record.md", - "sourceDirName": "080.records", - "slug": "/records/delete-record", - "permalink": "/records/delete-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/040.delete-record.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Delete record", - "keywords": [ - "NocoDB delete record", - "delete record", - "delete row", - "delete rows" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded form", - "permalink": "/records/expanded-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-070-actions-on-record-md-99f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-070-actions-on-record-md-99f.json deleted file mode 100644 index 026e9e5fe1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-records-070-actions-on-record-md-99f.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "unversionedId": "records/actions-on-record", - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "source": "@site/docs/080.records/070.actions-on-record.md", - "sourceDirName": "080.records", - "slug": "/records/actions-on-record", - "permalink": "/records/actions-on-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/070.actions-on-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Edit", - "permalink": "/tags/edit" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Expand", - "permalink": "/tags/expand" - }, - { - "label": "Shortcuts", - "permalink": "/tags/shortcuts" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Actions on record", - "tags": [ - "Records", - "Delete", - "Edit", - "Duplicate", - "Expand", - "Shortcuts" - ], - "keywords": [ - "NocoDB delete record", - "delete record", - "delete row", - "delete rows" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded record", - "permalink": "/records/expand-record" - }, - "next": { - "title": "View overview", - "permalink": "/views/views-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-overview-md-862.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-overview-md-862.json deleted file mode 100644 index f3a5a4c45c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-overview-md-862.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "views/overview", - "id": "views/overview", - "title": "View Overview", - "description": "Understanding Views in NocoDB!", - "source": "@site/docs/080.views/010.overview.md", - "sourceDirName": "080.views", - "slug": "/views/overview", - "permalink": "/views/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "View Overview", - "description": "Understanding Views in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - }, - "next": { - "title": "Create view", - "permalink": "/views/create-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-views-overview-md-4b4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-views-overview-md-4b4.json deleted file mode 100644 index 62c70617b4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-010-views-overview-md-4b4.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "views/views-overview", - "id": "views/views-overview", - "title": "View Overview", - "description": "Understanding Views in NocoDB!", - "source": "@site/docs/080.views/010.views-overview.md", - "sourceDirName": "080.views", - "slug": "/views/views-overview", - "permalink": "/views/views-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/010.views-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "View Overview", - "description": "Understanding Views in NocoDB!", - "keywords": [ - "NocoDB view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - }, - "next": { - "title": "Create view", - "permalink": "/views/create-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-md-e71.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-md-e71.json deleted file mode 100644 index 7d247ac834..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-md-e71.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/create", - "id": "views/create", - "title": "Create view", - "description": "", - "source": "@site/docs/080.views/020.create.md", - "sourceDirName": "080.views", - "slug": "/views/create", - "permalink": "/views/create", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/020.create.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create view" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "View Overview", - "permalink": "/views/overview" - }, - "next": { - "title": "Share View", - "permalink": "/views/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-view-md-183.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-view-md-183.json deleted file mode 100644 index 2fb2d09200..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-020-create-view-md-183.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "views/create-view", - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "source": "@site/docs/080.views/020.create-view.md", - "sourceDirName": "080.views", - "slug": "/views/create-view", - "permalink": "/views/create-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/020.create-view.md", - "tags": [ - { - "label": "views", - "permalink": "/tags/views" - }, - { - "label": "create view", - "permalink": "/tags/create-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "tags": [ - "views", - "create view" - ], - "keywords": [ - "NocoDB view", - "create view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "View Overview", - "permalink": "/views/views-overview" - }, - "next": { - "title": "Share View", - "permalink": "/views/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-025-share-view-md-198.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-025-share-view-md-198.json deleted file mode 100644 index e8147fdb3c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-025-share-view-md-198.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "unversionedId": "views/share-view", - "id": "views/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "source": "@site/docs/080.views/025.share-view.md", - "sourceDirName": "080.views", - "slug": "/views/share-view", - "permalink": "/views/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/025.share-view.md", - "tags": [ - { - "label": "views", - "permalink": "/tags/views" - }, - { - "label": "share view", - "permalink": "/tags/share-view" - }, - { - "label": "share", - "permalink": "/tags/share" - } - ], - "version": "current", - "sidebarPosition": 25, - "frontMatter": { - "title": "Share View", - "description": "Procedures to share a view", - "tags": [ - "views", - "share view", - "share" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create view", - "permalink": "/views/create-view" - }, - "next": { - "title": "Grid", - "permalink": "/views/view-types/grid" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-duplicate-md-a02.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-duplicate-md-a02.json deleted file mode 100644 index 8f33ba9a44..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-duplicate-md-a02.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/duplicate", - "id": "views/duplicate", - "title": "Duplicate", - "description": "", - "source": "@site/docs/080.views/040.duplicate.md", - "sourceDirName": "080.views", - "slug": "/views/duplicate", - "permalink": "/views/duplicate", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/040.duplicate.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duplicate" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create", - "permalink": "/views/create" - }, - "next": { - "title": "Delete", - "permalink": "/views/delete-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-010-grid-md-537.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-010-grid-md-537.json deleted file mode 100644 index 94e4a5cdb7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-010-grid-md-537.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "unversionedId": "views/view-types/grid", - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "source": "@site/docs/080.views/040.view-types/010.grid.md", - "sourceDirName": "080.views/040.view-types", - "slug": "/views/view-types/grid", - "permalink": "/views/view-types/grid", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/040.view-types/010.grid.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Grid", - "keywords": [ - "NocoDB grid", - "grid view", - "grid" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/views/share-view" - }, - "next": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-020-gallery-md-d11.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-020-gallery-md-d11.json deleted file mode 100644 index 44dff7f15c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-020-gallery-md-d11.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "unversionedId": "views/view-types/gallery", - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "source": "@site/docs/080.views/040.view-types/020.gallery.md", - "sourceDirName": "080.views/040.view-types", - "slug": "/views/view-types/gallery", - "permalink": "/views/view-types/gallery", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/040.view-types/020.gallery.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Gallery", - "keywords": [ - "NocoDB gallery view", - "gallery view", - "gallery" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grid", - "permalink": "/views/view-types/grid" - }, - "next": { - "title": "Forms", - "permalink": "/views/view-types/form" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-030-form-md-b45.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-030-form-md-b45.json deleted file mode 100644 index e059a18de2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-030-form-md-b45.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "unversionedId": "views/view-types/form", - "id": "views/view-types/form", - "title": "Forms", - "description": "Form View allows you to arrange fields in a form to input data.", - "source": "@site/docs/080.views/040.view-types/030.form.md", - "sourceDirName": "080.views/040.view-types", - "slug": "/views/view-types/form", - "permalink": "/views/view-types/form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/040.view-types/030.form.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Forms", - "keywords": [ - "NocoDB form", - "form view", - "form builder", - "form view builder", - "form view actions", - "form view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - }, - "next": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-040-kanban-md-81a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-040-kanban-md-81a.json deleted file mode 100644 index 8b0835cde6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-040-view-types-040-kanban-md-81a.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "unversionedId": "views/view-types/kanban", - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Kanban View allows you to visualise your data using cards as part of various stacks on the board. You can easily rearrange the cards by dragging and dropping them to different stacks. This section will cover all the operations that can be performed on the Kanban view.", - "source": "@site/docs/080.views/040.view-types/040.kanban.md", - "sourceDirName": "080.views/040.view-types", - "slug": "/views/view-types/kanban", - "permalink": "/views/view-types/kanban", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/040.view-types/040.kanban.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Kanban", - "keywords": [ - "NocoDB kanban", - "kanban view", - "kanban board", - "kanban view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Forms", - "permalink": "/views/view-types/form" - }, - "next": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-md-cb5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-md-cb5.json deleted file mode 100644 index 9398addb10..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-md-cb5.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/delete", - "id": "views/delete", - "title": "Delete", - "description": "", - "source": "@site/docs/080.views/050.delete.md", - "sourceDirName": "080.views", - "slug": "/views/delete", - "permalink": "/views/delete", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/050.delete.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duplicate", - "permalink": "/views/duplicate" - }, - "next": { - "title": "Configurations", - "permalink": "/views/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-view-md-9fb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-view-md-9fb.json deleted file mode 100644 index 316520859e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-050-delete-view-md-9fb.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "views/delete-view", - "id": "views/delete-view", - "title": "Delete view", - "description": "Learn how to delete a view in NocoDB.", - "source": "@site/docs/080.views/050.delete-view.md", - "sourceDirName": "080.views", - "slug": "/views/delete-view", - "permalink": "/views/delete-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/050.delete-view.md", - "tags": [ - { - "label": "views", - "permalink": "/tags/views" - }, - { - "label": "delete view", - "permalink": "/tags/delete-view" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Delete view", - "description": "Learn how to delete a view in NocoDB.", - "tags": [ - "views", - "delete view" - ], - "keywords": [ - "NocoDB view", - "delete view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/views/share-view" - }, - "next": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-comments-md-3fa.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-comments-md-3fa.json deleted file mode 100644 index 9dbba9204a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-comments-md-3fa.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "views/comments", - "id": "views/comments", - "title": "comments", - "description": "", - "source": "@site/docs/080.views/060.comments.md", - "sourceDirName": "080.views", - "slug": "/views/comments", - "permalink": "/views/comments", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/060.comments.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "delete", - "permalink": "/views/delete" - }, - "next": { - "title": "configurations", - "permalink": "/views/configurations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-configurations-md-071.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-configurations-md-071.json deleted file mode 100644 index 1c908b3e84..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-060-configurations-md-071.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/configurations", - "id": "views/configurations", - "title": "Actions on views", - "description": "", - "source": "@site/docs/080.views/060.configurations.md", - "sourceDirName": "080.views", - "slug": "/views/configurations", - "permalink": "/views/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/060.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on views" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Delete view", - "permalink": "/views/delete-view" - }, - "next": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-070-configurations-md-ab5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-070-configurations-md-ab5.json deleted file mode 100644 index dda05a17c0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-070-configurations-md-ab5.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "views/configurations", - "id": "views/configurations", - "title": "configurations", - "description": "", - "source": "@site/docs/080.views/070.configurations.md", - "sourceDirName": "080.views", - "slug": "/views/configurations", - "permalink": "/views/configurations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/070.configurations.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "delete", - "permalink": "/views/delete" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-actions-on-view-md-561.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-actions-on-view-md-561.json deleted file mode 100644 index ca30e440c6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-actions-on-view-md-561.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "unversionedId": "views/actions-on-view", - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "source": "@site/docs/080.views/090.actions-on-view.md", - "sourceDirName": "080.views", - "slug": "/views/actions-on-view", - "permalink": "/views/actions-on-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/090.actions-on-view.md", - "tags": [ - { - "label": "views", - "permalink": "/tags/views" - }, - { - "label": "delete view", - "permalink": "/tags/delete-view" - }, - { - "label": "rename view", - "permalink": "/tags/rename-view" - }, - { - "label": "duplicate view", - "permalink": "/tags/duplicate-view" - } - ], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "tags": [ - "views", - "delete view", - "rename view", - "duplicate view" - ], - "keywords": [ - "NocoDB view", - "delete view", - "rename view", - "duplicate view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - }, - "next": { - "title": "Data Sources overview", - "permalink": "/data-source/data-source-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-010-grid-md-969.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-010-grid-md-969.json deleted file mode 100644 index d3fa604c97..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-010-grid-md-969.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/view-types/grid", - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "source": "@site/docs/080.views/090.view-types/010.grid.md", - "sourceDirName": "080.views/090.view-types", - "slug": "/views/view-types/grid", - "permalink": "/views/view-types/grid", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/090.view-types/010.grid.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Grid" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - }, - "next": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-020-gallery-md-32b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-020-gallery-md-32b.json deleted file mode 100644 index 3ed6c9f8b5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-020-gallery-md-32b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/view-types/gallery", - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "source": "@site/docs/080.views/090.view-types/020.gallery.md", - "sourceDirName": "080.views/090.view-types", - "slug": "/views/view-types/gallery", - "permalink": "/views/view-types/gallery", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/090.view-types/020.gallery.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Gallery" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grid", - "permalink": "/views/view-types/grid" - }, - "next": { - "title": "Forms", - "permalink": "/views/view-types/forms" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-030-forms-md-a00.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-030-forms-md-a00.json deleted file mode 100644 index eed2c8b502..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-030-forms-md-a00.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/view-types/forms", - "id": "views/view-types/forms", - "title": "Forms", - "description": "Form View allows you to arrange fields in a form to input data.", - "source": "@site/docs/080.views/090.view-types/030.forms.md", - "sourceDirName": "080.views/090.view-types", - "slug": "/views/view-types/forms", - "permalink": "/views/view-types/forms", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/090.view-types/030.forms.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Forms" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - }, - "next": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-040-kanban-md-3d7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-040-kanban-md-3d7.json deleted file mode 100644 index 4981cb2d83..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-090-view-types-040-kanban-md-3d7.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "views/view-types/kanban", - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Kanban View allows you to visualise your data using cards as part of various stacks on the board. You can easily rearrange the cards by dragging and dropping them to different stacks. This section will cover all the operations that can be performed on the Kanban view.", - "source": "@site/docs/080.views/090.view-types/040.kanban.md", - "sourceDirName": "080.views/090.view-types", - "slug": "/views/view-types/kanban", - "permalink": "/views/view-types/kanban", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/090.view-types/040.kanban.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Kanban" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Forms", - "permalink": "/views/view-types/forms" - }, - "next": { - "title": "Data Sources overview", - "permalink": "/data-source/data-source-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-100-view-types-010-grid-md-682.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-100-view-types-010-grid-md-682.json deleted file mode 100644 index 97e6faff31..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-080-views-100-view-types-010-grid-md-682.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "views/view-types/grid", - "id": "views/view-types/grid", - "title": "grid", - "description": "", - "source": "@site/docs/080.views/100.view-types/010.grid.md", - "sourceDirName": "080.views/100.view-types", - "slug": "/views/view-types/grid", - "permalink": "/views/view-types/grid", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.views/100.view-types/010.grid.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "configurations", - "permalink": "/views/configurations" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-54d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-54d.json deleted file mode 100644 index 1a5cab59cc..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-54d.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/overview", - "id": "toolbar/overview", - "title": "Toolbar overview", - "description": "The toolbar provides a set of tools to interact with the data in the table. The toolbar is located at the top of the view area.", - "source": "@site/docs/082.toolbar/010.overview.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/overview", - "permalink": "/toolbar/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Toolbar overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - }, - "next": { - "title": "Hide & Reorder Fields", - "permalink": "/toolbar/field-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-943.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-943.json deleted file mode 100644 index 867fe2de0b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-010-overview-md-943.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/overview", - "id": "Toolbar/overview", - "title": "Toolbar overview", - "description": "The toolbar provides a set of tools to interact with the data in the table. The toolbar is located at the top of the view area.", - "source": "@site/docs/082.Toolbar/010.overview.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/overview", - "permalink": "/Toolbar/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Toolbar overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - }, - "next": { - "title": "Hide & Rearrange Fields", - "permalink": "/Toolbar/field-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-5f3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-5f3.json deleted file mode 100644 index 89378486f3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-5f3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/field-operations", - "id": "toolbar/field-operations", - "title": "Hide & Reorder Fields", - "description": "Utilize the Fields button in the toolbar to manage the visibility of fields within the system. By default, all system-related fields are concealed, but you have the option to enable them by selecting Show system fields.", - "source": "@site/docs/082.toolbar/020.field-operations.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/field-operations", - "permalink": "/toolbar/field-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/020.field-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Hide & Reorder Fields" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Toolbar overview", - "permalink": "/toolbar/overview" - }, - "next": { - "title": "Filtering records", - "permalink": "/toolbar/filter" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-9bb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-9bb.json deleted file mode 100644 index e8955bbf31..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-020-field-operations-md-9bb.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/field-operations", - "id": "Toolbar/field-operations", - "title": "Hide & Rearrange Fields", - "description": "Utilize the Fields button in the toolbar to manage the visibility of fields within the system. By default, all system-related fields are concealed, but you have the option to enable them by selecting Show system fields.", - "source": "@site/docs/082.Toolbar/020.field-operations.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/field-operations", - "permalink": "/Toolbar/field-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/020.field-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Hide & Rearrange Fields" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Toolbar overview", - "permalink": "/Toolbar/overview" - }, - "next": { - "title": "Filtering records", - "permalink": "/Toolbar/filter" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-0b1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-0b1.json deleted file mode 100644 index f1b9eb7dcd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-0b1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/filter", - "id": "Toolbar/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "source": "@site/docs/082.Toolbar/030.filter.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/filter", - "permalink": "/Toolbar/filter", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/030.filter.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Filtering records" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Hide & Rearrange Fields", - "permalink": "/Toolbar/field-operations" - }, - "next": { - "title": "Sorting records", - "permalink": "/Toolbar/sort" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-ccf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-ccf.json deleted file mode 100644 index 193f7b2ced..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-md-ccf.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/filter", - "id": "toolbar/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "source": "@site/docs/082.toolbar/030.filter.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/filter", - "permalink": "/toolbar/filter", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/030.filter.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Filtering records" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Hide & Reorder Fields", - "permalink": "/toolbar/field-operations" - }, - "next": { - "title": "Sorting records", - "permalink": "/toolbar/sort" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-operations-md-b70.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-operations-md-b70.json deleted file mode 100644 index 366f3a4419..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-filter-operations-md-b70.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "Toolbar/filter-operations", - "id": "Toolbar/filter-operations", - "title": "filter-operations", - "description": "", - "source": "@site/docs/082.Toolbar/030.filter-operations.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/filter-operations", - "permalink": "/Toolbar/filter-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/030.filter-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "field-operations", - "permalink": "/Toolbar/field-operations" - }, - "next": { - "title": "sort", - "permalink": "/Toolbar/sort" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-384.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-384.json deleted file mode 100644 index 723320bf34..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-384.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/sort", - "id": "Toolbar/sort", - "title": "Sorting records", - "description": "Sorting Data", - "source": "@site/docs/082.Toolbar/030.sort.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/sort", - "permalink": "/Toolbar/sort", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/030.sort.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Sorting records" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Filtering records", - "permalink": "/Toolbar/filter" - }, - "next": { - "title": "Group by", - "permalink": "/Toolbar/group-by" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-a07.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-a07.json deleted file mode 100644 index 58f05775d8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-md-a07.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/sort", - "id": "toolbar/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "source": "@site/docs/082.toolbar/030.sort.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/sort", - "permalink": "/toolbar/sort", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/030.sort.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Sorting records" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Filtering records", - "permalink": "/toolbar/filter" - }, - "next": { - "title": "Grouping Records", - "permalink": "/toolbar/group-by" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-operations-md-4cd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-operations-md-4cd.json deleted file mode 100644 index 58c39f86e1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-030-sort-operations-md-4cd.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "Toolbar/sort-operations", - "id": "Toolbar/sort-operations", - "title": "sort-operations", - "description": "", - "source": "@site/docs/082.Toolbar/030.sort-operations.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/sort-operations", - "permalink": "/Toolbar/sort-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/030.sort-operations.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "filter-operations", - "permalink": "/Toolbar/filter-operations" - }, - "next": { - "title": "group-by", - "permalink": "/Toolbar/group-by" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-49a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-49a.json deleted file mode 100644 index 75f1d68c0b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-49a.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/group-by", - "id": "toolbar/group-by", - "title": "Grouping Records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "source": "@site/docs/082.toolbar/050.group-by.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/group-by", - "permalink": "/toolbar/group-by", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/050.group-by.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Grouping Records" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sorting records", - "permalink": "/toolbar/sort" - }, - "next": { - "title": "Row Height", - "permalink": "/toolbar/row-height" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-4f1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-4f1.json deleted file mode 100644 index 50b2cf0d74..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-050-group-by-md-4f1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/group-by", - "id": "Toolbar/group-by", - "title": "Group by", - "description": "Group by", - "source": "@site/docs/082.Toolbar/050.group-by.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/group-by", - "permalink": "/Toolbar/group-by", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/050.group-by.md", - "tags": [], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Group by" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sorting records", - "permalink": "/Toolbar/sort" - }, - "next": { - "title": "Row Height", - "permalink": "/Toolbar/row-height" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-8f3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-8f3.json deleted file mode 100644 index aa07549372..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-8f3.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/row-height", - "id": "toolbar/row-height", - "title": "Row Height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "source": "@site/docs/082.toolbar/060.row-height.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/row-height", - "permalink": "/toolbar/row-height", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/060.row-height.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Row Height" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grouping Records", - "permalink": "/toolbar/group-by" - }, - "next": { - "title": "Search", - "permalink": "/toolbar/search" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-fef.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-fef.json deleted file mode 100644 index f212bd02ce..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-060-row-height-md-fef.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/row-height", - "id": "Toolbar/row-height", - "title": "Row Height", - "description": "Row Height", - "source": "@site/docs/082.Toolbar/060.row-height.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/row-height", - "permalink": "/Toolbar/row-height", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/060.row-height.md", - "tags": [], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Row Height" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Group by", - "permalink": "/Toolbar/group-by" - }, - "next": { - "title": "Search", - "permalink": "/Toolbar/search" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-6de.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-6de.json deleted file mode 100644 index 2fdce134d2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-6de.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/search", - "id": "Toolbar/search", - "title": "Search", - "description": "", - "source": "@site/docs/082.Toolbar/070.search.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/search", - "permalink": "/Toolbar/search", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/070.search.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Search" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Row Height", - "permalink": "/Toolbar/row-height" - }, - "next": { - "title": "Export", - "permalink": "/Toolbar/download" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-81e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-81e.json deleted file mode 100644 index 7db2107be7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-070-search-md-81e.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/search", - "id": "toolbar/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "source": "@site/docs/082.toolbar/070.search.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/search", - "permalink": "/toolbar/search", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/070.search.md", - "tags": [], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Search" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Row Height", - "permalink": "/toolbar/row-height" - }, - "next": { - "title": "Download", - "permalink": "/toolbar/download" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-950.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-950.json deleted file mode 100644 index 21338e468f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-950.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "toolbar/download", - "id": "toolbar/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "source": "@site/docs/082.toolbar/080.download.md", - "sourceDirName": "082.toolbar", - "slug": "/toolbar/download", - "permalink": "/toolbar/download", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.toolbar/080.download.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Download" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Search", - "permalink": "/toolbar/search" - }, - "next": { - "title": "Data Sources overview", - "permalink": "/data-source/data-source-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-fc8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-fc8.json deleted file mode 100644 index 67516b0468..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-082-toolbar-080-download-md-fc8.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "Toolbar/download", - "id": "Toolbar/download", - "title": "Export", - "description": "", - "source": "@site/docs/082.Toolbar/080.download.md", - "sourceDirName": "082.Toolbar", - "slug": "/Toolbar/download", - "permalink": "/Toolbar/download", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/082.Toolbar/080.download.md", - "tags": [], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Export" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Search", - "permalink": "/Toolbar/search" - }, - "next": { - "title": "Data Sources", - "permalink": "/data-source/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-data-source-overview-md-938.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-data-source-overview-md-938.json deleted file mode 100644 index f2542b0570..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-data-source-overview-md-938.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "data-source/data-source-overview", - "id": "data-source/data-source-overview", - "title": "Data Sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/docs/085.data-source/010.data-source-overview.md", - "sourceDirName": "085.data-source", - "slug": "/data-source/data-source-overview", - "permalink": "/data-source/data-source-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/085.data-source/010.data-source-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Data Sources overview", - "description": "NocoDB Data-Source sync, access control & re-config" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - }, - "next": { - "title": "Roles & Permissions Overview", - "permalink": "/roles-and-permissions/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-overview-md-a5d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-overview-md-a5d.json deleted file mode 100644 index f76af7942f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-085-data-source-010-overview-md-a5d.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "data-source/overview", - "id": "data-source/overview", - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/docs/085.data-source/010.overview.md", - "sourceDirName": "085.data-source", - "slug": "/data-source/overview", - "permalink": "/data-source/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/085.data-source/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Download", - "permalink": "/toolbar/download" - }, - "next": { - "title": "Roles & Permissions overview", - "permalink": "/roles-and-permissions/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-collaboration-010-overview-md-34b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-collaboration-010-overview-md-34b.json deleted file mode 100644 index e8c7cbdc30..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-collaboration-010-overview-md-34b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "collaboration/overview", - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "At NocoDB, our passion lies in promoting teamwork, and it's a significant factor contributing to our popularity. Through NocoDB's collaborative functionalities, you have the ability to foster effective task distribution and team communication by extending invitations to others for seamless cooperation.", - "source": "@site/docs/090.collaboration/010.overview.md", - "sourceDirName": "090.collaboration", - "slug": "/collaboration/overview", - "permalink": "/collaboration/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.collaboration/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Collaboration overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources", - "permalink": "/data-source/overview" - }, - "next": { - "title": "Roles & Permissions overview", - "permalink": "/roles-and-permissions/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-roles-and-permissions-010-overview-md-763.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-roles-and-permissions-010-overview-md-763.json deleted file mode 100644 index dd5774711c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-roles-and-permissions-010-overview-md-763.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "roles-and-permissions/overview", - "id": "roles-and-permissions/overview", - "title": "Roles & Permissions Overview", - "description": "In NocoDB, we have roles that determine what people can do in a Workspace or Base.", - "source": "@site/docs/090.roles-and-permissions/010.overview.md", - "sourceDirName": "090.roles-and-permissions", - "slug": "/roles-and-permissions/overview", - "permalink": "/roles-and-permissions/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.roles-and-permissions/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Roles & Permissions Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources overview", - "permalink": "/data-source/data-source-overview" - }, - "next": { - "title": "Collaboration overview", - "permalink": "/collaboration/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-010-views-overview-md-bb5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-010-views-overview-md-bb5.json deleted file mode 100644 index 0b122b969b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-010-views-overview-md-bb5.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "unversionedId": "views/views-overview", - "id": "views/views-overview", - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "source": "@site/docs/090.views/010.views-overview.md", - "sourceDirName": "090.views", - "slug": "/views/views-overview", - "permalink": "/views/views-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/010.views-overview.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "tags": [ - "Views", - "Overview" - ], - "keywords": [ - "NocoDB view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - }, - "next": { - "title": "Create view", - "permalink": "/views/create-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-020-create-view-md-61a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-020-create-view-md-61a.json deleted file mode 100644 index 2f5cc6a561..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-020-create-view-md-61a.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "unversionedId": "views/create-view", - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "source": "@site/docs/090.views/020.create-view.md", - "sourceDirName": "090.views", - "slug": "/views/create-view", - "permalink": "/views/create-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/020.create-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Create", - "permalink": "/tags/create" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "tags": [ - "Views", - "Create", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "create view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "View overview", - "permalink": "/views/views-overview" - }, - "next": { - "title": "Share view", - "permalink": "/views/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-025-share-view-md-2bb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-025-share-view-md-2bb.json deleted file mode 100644 index c3da0b2426..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-025-share-view-md-2bb.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "unversionedId": "views/share-view", - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "source": "@site/docs/090.views/025.share-view.md", - "sourceDirName": "090.views", - "slug": "/views/share-view", - "permalink": "/views/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/025.share-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 25, - "frontMatter": { - "title": "Share view", - "description": "Procedures to share a view", - "tags": [ - "Views", - "Share", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create view", - "permalink": "/views/create-view" - }, - "next": { - "title": "Grid", - "permalink": "/views/view-types/grid" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-010-grid-md-090.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-010-grid-md-090.json deleted file mode 100644 index 0998c1866f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-010-grid-md-090.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "views/view-types/grid", - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "source": "@site/docs/090.views/040.view-types/010.grid.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/grid", - "permalink": "/views/view-types/grid", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/010.grid.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Grid", - "tags": [ - "Views", - "Grid View" - ], - "keywords": [ - "NocoDB grid", - "grid view", - "grid" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share view", - "permalink": "/views/share-view" - }, - "next": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-020-gallery-md-ebb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-020-gallery-md-ebb.json deleted file mode 100644 index 525db754e4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-020-gallery-md-ebb.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "views/view-types/gallery", - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "source": "@site/docs/090.views/040.view-types/020.gallery.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/gallery", - "permalink": "/views/view-types/gallery", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/020.gallery.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Gallery", - "tags": [ - "Views", - "Gallery View" - ], - "keywords": [ - "NocoDB gallery view", - "gallery view", - "gallery" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grid", - "permalink": "/views/view-types/grid" - }, - "next": { - "title": "Form", - "permalink": "/views/view-types/form" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-030-form-md-5af.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-030-form-md-5af.json deleted file mode 100644 index 8e0e7bd495..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-030-form-md-5af.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "unversionedId": "views/view-types/form", - "id": "views/view-types/form", - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "source": "@site/docs/090.views/040.view-types/030.form.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/form", - "permalink": "/views/view-types/form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/030.form.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Form", - "permalink": "/tags/form" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "tags": [ - "Views", - "Form" - ], - "keywords": [ - "NocoDB form", - "form view", - "form builder", - "form view builder", - "form view actions", - "form view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - }, - "next": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-040-kanban-md-197.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-040-kanban-md-197.json deleted file mode 100644 index 3c42b635ff..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-040-view-types-040-kanban-md-197.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "unversionedId": "views/view-types/kanban", - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "source": "@site/docs/090.views/040.view-types/040.kanban.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/kanban", - "permalink": "/views/view-types/kanban", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/040.kanban.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "tags": [ - "Views", - "Kanban View" - ], - "keywords": [ - "NocoDB kanban", - "kanban view", - "kanban board", - "kanban view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Form", - "permalink": "/views/view-types/form" - }, - "next": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-090-actions-on-view-md-7e1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-090-actions-on-view-md-7e1.json deleted file mode 100644 index 821b4bae0f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-090-views-090-actions-on-view-md-7e1.json +++ /dev/null @@ -1,79 +0,0 @@ -{ - "unversionedId": "views/actions-on-view", - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "source": "@site/docs/090.views/090.actions-on-view.md", - "sourceDirName": "090.views", - "slug": "/views/actions-on-view", - "permalink": "/views/actions-on-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/090.actions-on-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "tags": [ - "Views", - "Rename", - "Duplicate", - "Delete", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "delete view", - "rename view", - "duplicate view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - }, - "next": { - "title": "Data sources overview", - "permalink": "/data-source/data-source-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-overview-md-a2b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-overview-md-a2b.json deleted file mode 100644 index 1f3b116e6e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-overview-md-a2b.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "unversionedId": "collaboration/overview", - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "source": "@site/docs/100.collaboration/010.overview.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/overview", - "permalink": "/collaboration/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/010.overview.md", - "tags": [ - { - "label": "collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "workspace collaboration", - "permalink": "/tags/workspace-collaboration" - }, - { - "label": "base collaboration", - "permalink": "/tags/base-collaboration" - }, - { - "label": "share base", - "permalink": "/tags/share-base" - }, - { - "label": "share view", - "permalink": "/tags/share-view" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "tags": [ - "collaboration", - "workspace collaboration", - "base collaboration", - "share base", - "share view" - ], - "keywords": [ - "Collaboration overview", - "Workspace collaboration", - "Base collaboration", - "Share base", - "Share view", - "Team collaboration", - "Workspace management", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Roles & Permissions Overview", - "permalink": "/roles-and-permissions/overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-workspace-collaboration-md-cc3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-workspace-collaboration-md-cc3.json deleted file mode 100644 index 17e0d9747b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-010-workspace-collaboration-md-cc3.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "unversionedId": "collaboration/workspace-collaboration", - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "source": "@site/docs/100.collaboration/010.workspace-collaboration.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/workspace-collaboration", - "permalink": "/collaboration/workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/010.workspace-collaboration.md", - "tags": [ - { - "label": "workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "roles", - "permalink": "/tags/roles" - }, - { - "label": "invite", - "permalink": "/tags/invite" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "tags": [ - "workspaces", - "collaboration", - "roles", - "invite" - ], - "keywords": [ - "Workspace configuration", - "Invite members", - "Member roles", - "Access permissions", - "Displaying workspace members", - "Modifying member roles", - "Removing workspace members", - "Workspace collaboration", - "Team collaboration", - "Access control", - "Role-based permissions", - "Workspace management", - "User roles", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Collaboration overview", - "permalink": "/collaboration/overview" - }, - "next": { - "title": "Base Collaboration", - "permalink": "/collaboration/base-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-020-base-collaboration-md-5bd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-020-base-collaboration-md-5bd.json deleted file mode 100644 index 7566e91681..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-020-base-collaboration-md-5bd.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "unversionedId": "collaboration/base-collaboration", - "id": "collaboration/base-collaboration", - "title": "Base Collaboration", - "description": "Invite team members to work on a base", - "source": "@site/docs/100.collaboration/020.base-collaboration.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/base-collaboration", - "permalink": "/collaboration/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/020.base-collaboration.md", - "tags": [ - { - "label": "bases", - "permalink": "/tags/bases" - }, - { - "label": "base collaboration", - "permalink": "/tags/base-collaboration" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Base Collaboration", - "description": "Invite team members to work on a base", - "tags": [ - "bases", - "base collaboration" - ], - "keywords": [ - "NocoDB base", - "base collaboration", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - }, - "next": { - "title": "Share Base", - "permalink": "/collaboration/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-030-share-base-md-afb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-030-share-base-md-afb.json deleted file mode 100644 index 93e16afc3c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-030-share-base-md-afb.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "unversionedId": "collaboration/share-base", - "id": "collaboration/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/100.collaboration/030.share-base.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/share-base", - "permalink": "/collaboration/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/030.share-base.md", - "tags": [ - { - "label": "bases", - "permalink": "/tags/bases" - }, - { - "label": "share base", - "permalink": "/tags/share-base" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "tags": [ - "bases", - "share base" - ], - "keywords": [ - "NocoDB base", - "share base", - "base collaboration", - "base actions", - "base settings" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base Collaboration", - "permalink": "/collaboration/base-collaboration" - }, - "next": { - "title": "Share View", - "permalink": "/collaboration/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-040-share-view-md-861.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-040-share-view-md-861.json deleted file mode 100644 index 5641767b57..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-040-share-view-md-861.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "unversionedId": "collaboration/share-view", - "id": "collaboration/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "source": "@site/docs/100.collaboration/040.share-view.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/share-view", - "permalink": "/collaboration/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/040.share-view.md", - "tags": [ - { - "label": "views", - "permalink": "/tags/views" - }, - { - "label": "share view", - "permalink": "/tags/share-view" - }, - { - "label": "share", - "permalink": "/tags/share" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Share View", - "description": "Procedures to share a view", - "tags": [ - "views", - "share view", - "share" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/collaboration/share-base" - }, - "next": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-share-view-md-8bd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-share-view-md-8bd.json deleted file mode 100644 index 83eb8e1da5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-collaboration-share-view-md-8bd.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "unversionedId": "collaboration/share-view", - "id": "collaboration/share-view", - "title": "share-view", - "description": "", - "source": "@site/docs/100.collaboration/share-view.md", - "sourceDirName": "100.collaboration", - "slug": "/collaboration/share-view", - "permalink": "/collaboration/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.collaboration/share-view.md", - "tags": [], - "version": "current", - "frontMatter": {}, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/collaboration/share-base" - }, - "next": { - "title": "Automation overview", - "permalink": "/automation/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-010-data-source-overview-md-c3d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-010-data-source-overview-md-c3d.json deleted file mode 100644 index f2df4aca04..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-010-data-source-overview-md-c3d.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "unversionedId": "data-source/data-source-overview", - "id": "data-source/data-source-overview", - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/docs/100.data-source/010.data-source-overview.md", - "sourceDirName": "100.data-source", - "slug": "/data-source/data-source-overview", - "permalink": "/data-source/data-source-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.data-source/010.data-source-overview.md", - "tags": [ - { - "label": "Data Sources", - "permalink": "/tags/data-sources" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "tags": [ - "Data Sources", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - }, - "next": { - "title": "Roles & permissions overview", - "permalink": "/roles-and-permissions/roles-permissions-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-020-oss-specific-details-md-055.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-020-oss-specific-details-md-055.json deleted file mode 100644 index 77bf8eb5e3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-data-source-020-oss-specific-details-md-055.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "data-source/oss-specific-details", - "id": "data-source/oss-specific-details", - "title": "On Self-Hosted plan", - "description": "NocoDB provides all the user operation logs under Audit log", - "source": "@site/docs/100.data-source/020.oss-specific-details.md", - "sourceDirName": "100.data-source", - "slug": "/data-source/oss-specific-details", - "permalink": "/data-source/oss-specific-details", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.data-source/020.oss-specific-details.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "On Self-Hosted plan", - "description": "NocoDB provides all the user operation logs under Audit log" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources overview", - "permalink": "/data-source/data-source-overview" - }, - "next": { - "title": "Roles & Permissions Overview", - "permalink": "/roles-and-permissions/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-permissions-010-overview-md-ea1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-permissions-010-overview-md-ea1.json deleted file mode 100644 index 66c7b41760..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-permissions-010-overview-md-ea1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "permissions/overview", - "id": "permissions/overview", - "title": "Permission overview", - "description": "", - "source": "@site/docs/100.permissions/010.overview.md", - "sourceDirName": "100.permissions", - "slug": "/permissions/overview", - "permalink": "/permissions/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.permissions/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Permission overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Collaboration overview", - "permalink": "/collaboration/overview" - }, - "next": { - "title": "Automation overview", - "permalink": "/automation/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-roles-and-permissions-010-overview-md-548.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-roles-and-permissions-010-overview-md-548.json deleted file mode 100644 index 1bab6f99f4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-100-roles-and-permissions-010-overview-md-548.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "roles-and-permissions/overview", - "id": "roles-and-permissions/overview", - "title": "Roles & Permissions overview", - "description": "In NocoDB, we have roles that determine what people can do in a Workspace, Database, or Table. You can give a team or a user one of these roles: Admin, Builder, Editor, Commenter, or Viewer. When you invite someone or create a team, you'll set their role level at the beginning, but you can always change it later if needed.", - "source": "@site/docs/100.roles-and-permissions/010.overview.md", - "sourceDirName": "100.roles-and-permissions", - "slug": "/roles-and-permissions/overview", - "permalink": "/roles-and-permissions/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.roles-and-permissions/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Roles & Permissions overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Collaboration overview", - "permalink": "/collaboration/overview" - }, - "next": { - "title": "Automation overview", - "permalink": "/automation/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-010-overview-md-aa2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-010-overview-md-aa2.json deleted file mode 100644 index cb69d82ac5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-010-overview-md-aa2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "automation/overview", - "id": "automation/overview", - "title": "Automation overview", - "description": "", - "source": "@site/docs/110.automation/010.overview.md", - "sourceDirName": "110.automation", - "slug": "/automation/overview", - "permalink": "/automation/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.automation/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Automation overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/collaboration/share-view" - }, - "next": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-010-webhook-overview-md-848.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-010-webhook-overview-md-848.json deleted file mode 100644 index 9e2f076a82..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-010-webhook-overview-md-848.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "automation/webhook/webhook-overview", - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "source": "@site/docs/110.automation/020.webhook/010.webhook-overview.md", - "sourceDirName": "110.automation/020.webhook", - "slug": "/automation/webhook/webhook-overview", - "permalink": "/automation/webhook/webhook-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.automation/020.webhook/010.webhook-overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Webhook overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/collaboration/share-view" - }, - "next": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-020-create-webhook-md-72b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-020-create-webhook-md-72b.json deleted file mode 100644 index b8062f89ed..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-020-create-webhook-md-72b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "automation/webhook/create-webhook", - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Create Webhook", - "source": "@site/docs/110.automation/020.webhook/020.create-webhook.md", - "sourceDirName": "110.automation/020.webhook", - "slug": "/automation/webhook/create-webhook", - "permalink": "/automation/webhook/create-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.automation/020.webhook/020.create-webhook.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create webhook" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - }, - "next": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-030-delete-webhook-md-918.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-030-delete-webhook-md-918.json deleted file mode 100644 index e7c9e425a4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-030-delete-webhook-md-918.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "automation/webhook/delete-webhook", - "id": "automation/webhook/delete-webhook", - "title": "Delete webhook", - "description": "", - "source": "@site/docs/110.automation/020.webhook/030.delete-webhook.md", - "sourceDirName": "110.automation/020.webhook", - "slug": "/automation/webhook/delete-webhook", - "permalink": "/automation/webhook/delete-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.automation/020.webhook/030.delete-webhook.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Delete webhook" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - }, - "next": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-040-actions-on-webhook-md-3ac.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-040-actions-on-webhook-md-3ac.json deleted file mode 100644 index 29c1e26c12..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-automation-020-webhook-040-actions-on-webhook-md-3ac.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "automation/webhook/actions-on-webhook", - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "source": "@site/docs/110.automation/020.webhook/040.actions-on-webhook.md", - "sourceDirName": "110.automation/020.webhook", - "slug": "/automation/webhook/actions-on-webhook", - "permalink": "/automation/webhook/actions-on-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.automation/020.webhook/040.actions-on-webhook.md", - "tags": [], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Actions on webhook" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - }, - "next": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-overview-md-447.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-overview-md-447.json deleted file mode 100644 index 264770f8e4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-overview-md-447.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "unversionedId": "roles-and-permissions/overview", - "id": "roles-and-permissions/overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "source": "@site/docs/110.roles-and-permissions/010.overview.md", - "sourceDirName": "110.roles-and-permissions", - "slug": "/roles-and-permissions/overview", - "permalink": "/roles-and-permissions/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.roles-and-permissions/010.overview.md", - "tags": [ - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "tags": [ - "Roles", - "Permissions", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data sources overview", - "permalink": "/data-source/data-source-overview" - }, - "next": { - "title": "Collaboration overview", - "permalink": "/collaboration/overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-roles-permissions-overview-md-c76.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-roles-permissions-overview-md-c76.json deleted file mode 100644 index d7ba2f42ec..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-110-roles-and-permissions-010-roles-permissions-overview-md-c76.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "unversionedId": "roles-and-permissions/roles-permissions-overview", - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "source": "@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md", - "sourceDirName": "110.roles-and-permissions", - "slug": "/roles-and-permissions/roles-permissions-overview", - "permalink": "/roles-and-permissions/roles-permissions-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.roles-and-permissions/010.roles-permissions-overview.md", - "tags": [ - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "tags": [ - "Roles", - "Permissions", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data sources overview", - "permalink": "/data-source/data-source-overview" - }, - "next": { - "title": "Collaboration overview", - "permalink": "/collaboration/collaboration-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-overview-md-b7b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-overview-md-b7b.json deleted file mode 100644 index 4342a731a2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-overview-md-b7b.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "account-settings/overview", - "id": "account-settings/overview", - "title": "Overview", - "description": "", - "source": "@site/docs/120.account-settings/010.overview.md", - "sourceDirName": "120.account-settings", - "slug": "/account-settings/overview", - "permalink": "/account-settings/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.account-settings/010.overview.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-profile-page-md-717.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-profile-page-md-717.json deleted file mode 100644 index 1cfc57ca9c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-010-profile-page-md-717.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "unversionedId": "account-settings/profile-page", - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "source": "@site/docs/120.account-settings/010.profile-page.md", - "sourceDirName": "120.account-settings", - "slug": "/account-settings/profile-page", - "permalink": "/account-settings/profile-page", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.account-settings/010.profile-page.md", - "tags": [ - { - "label": "profile page", - "permalink": "/tags/profile-page" - }, - { - "label": "profile settings", - "permalink": "/tags/profile-settings" - }, - { - "label": "profile name", - "permalink": "/tags/profile-name" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "tags": [ - "profile page", - "profile settings", - "profile name" - ], - "keywords": [ - "Profile page", - "Profile settings", - "Profile name", - "Profile picture", - "Profile management", - "Profile customization", - "Profile information", - "Profile details", - "Profile preferences", - "Profile options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - "next": { - "title": "Actions on webhook", - "permalink": "/account-settings/api-tokens" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-020-api-tokens-md-4b2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-020-api-tokens-md-4b2.json deleted file mode 100644 index ece187af36..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-account-settings-020-api-tokens-md-4b2.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "unversionedId": "account-settings/api-tokens", - "id": "account-settings/api-tokens", - "title": "Actions on webhook", - "description": "Create API Token", - "source": "@site/docs/120.account-settings/020.api-tokens.md", - "sourceDirName": "120.account-settings", - "slug": "/account-settings/api-tokens", - "permalink": "/account-settings/api-tokens", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.account-settings/020.api-tokens.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Actions on webhook" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-collaboration-overview-md-f92.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-collaboration-overview-md-f92.json deleted file mode 100644 index 7d00d28024..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-collaboration-overview-md-f92.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "unversionedId": "collaboration/collaboration-overview", - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "source": "@site/docs/120.collaboration/010.collaboration-overview.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/collaboration-overview", - "permalink": "/collaboration/collaboration-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.collaboration-overview.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Workspace", - "permalink": "/tags/workspace" - }, - { - "label": "Base", - "permalink": "/tags/base" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "tags": [ - "Collaboration", - "Workspace", - "Base", - "Share", - "Member", - "Overview" - ], - "keywords": [ - "Collaboration overview", - "Workspace collaboration", - "Base collaboration", - "Share base", - "Share view", - "Team collaboration", - "Workspace management", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Roles & permissions overview", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-overview-md-875.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-overview-md-875.json deleted file mode 100644 index d4eb53322b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-overview-md-875.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "unversionedId": "collaboration/overview", - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "source": "@site/docs/120.collaboration/010.overview.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/overview", - "permalink": "/collaboration/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.overview.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Workspace", - "permalink": "/tags/workspace" - }, - { - "label": "Base", - "permalink": "/tags/base" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "tags": [ - "Collaboration", - "Workspace", - "Base", - "Share", - "Member", - "Overview" - ], - "keywords": [ - "Collaboration overview", - "Workspace collaboration", - "Base collaboration", - "Share base", - "Share view", - "Team collaboration", - "Workspace management", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Roles & permissions overview", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-workspace-collaboration-md-904.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-workspace-collaboration-md-904.json deleted file mode 100644 index 9d4f6e0299..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-010-workspace-collaboration-md-904.json +++ /dev/null @@ -1,78 +0,0 @@ -{ - "unversionedId": "collaboration/workspace-collaboration", - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "source": "@site/docs/120.collaboration/010.workspace-collaboration.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/workspace-collaboration", - "permalink": "/collaboration/workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.workspace-collaboration.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Role", - "permalink": "/tags/role" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "tags": [ - "Collaboration", - "Workspaces", - "Member", - "Invite", - "Role" - ], - "keywords": [ - "Workspace configuration", - "Invite members", - "Member roles", - "Access permissions", - "Displaying workspace members", - "Modifying member roles", - "Removing workspace members", - "Workspace collaboration", - "Team collaboration", - "Access control", - "Role-based permissions", - "Workspace management", - "User roles", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Collaboration overview", - "permalink": "/collaboration/collaboration-overview" - }, - "next": { - "title": "Base collaboration", - "permalink": "/collaboration/base-collaboration" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-020-base-collaboration-md-25a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-020-base-collaboration-md-25a.json deleted file mode 100644 index 818618268b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-020-base-collaboration-md-25a.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "unversionedId": "collaboration/base-collaboration", - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "source": "@site/docs/120.collaboration/020.base-collaboration.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/base-collaboration", - "permalink": "/collaboration/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/020.base-collaboration.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Role", - "permalink": "/tags/role" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "tags": [ - "Collaboration", - "Bases", - "Member", - "Invite", - "Role" - ], - "keywords": [ - "NocoDB base", - "base collaboration", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - }, - "next": { - "title": "Share base", - "permalink": "/collaboration/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-030-share-base-md-037.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-030-share-base-md-037.json deleted file mode 100644 index eb3aef2fe2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-030-share-base-md-037.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "unversionedId": "collaboration/share-base", - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/120.collaboration/030.share-base.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/share-base", - "permalink": "/collaboration/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/030.share-base.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Share", - "permalink": "/tags/share" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "tags": [ - "Collaboration", - "Bases", - "Share" - ], - "keywords": [ - "NocoDB base", - "share base", - "base collaboration", - "base actions", - "base settings" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base collaboration", - "permalink": "/collaboration/base-collaboration" - }, - "next": { - "title": "Share view", - "permalink": "/collaboration/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-040-share-view-md-a18.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-040-share-view-md-a18.json deleted file mode 100644 index a292ec8b37..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-040-share-view-md-a18.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "unversionedId": "collaboration/share-view", - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "source": "@site/docs/120.collaboration/040.share-view.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/share-view", - "permalink": "/collaboration/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/040.share-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Share view", - "description": "Procedures to share a view", - "tags": [ - "Views", - "Share", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share base", - "permalink": "/collaboration/share-base" - }, - "next": { - "title": "In Open Source", - "permalink": "/collaboration/oss-specific-details" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-050-oss-specific-details-md-576.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-050-oss-specific-details-md-576.json deleted file mode 100644 index e83314ad5d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-120-collaboration-050-oss-specific-details-md-576.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "unversionedId": "collaboration/oss-specific-details", - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "source": "@site/docs/120.collaboration/050.oss-specific-details.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/oss-specific-details", - "permalink": "/collaboration/oss-specific-details", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/050.oss-specific-details.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "tags": [ - "Collaboration", - "Open Source" - ], - "keywords": [ - "Collaboration", - "Open Source", - "User management", - "User permissions", - "User roles" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share view", - "permalink": "/collaboration/share-view" - }, - "next": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-010-webhook-overview-md-2b2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-010-webhook-overview-md-2b2.json deleted file mode 100644 index cd7f37b77d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-010-webhook-overview-md-2b2.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "unversionedId": "automation/webhook/webhook-overview", - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "source": "@site/docs/130.automation/020.webhook/010.webhook-overview.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/webhook-overview", - "permalink": "/automation/webhook/webhook-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/010.webhook-overview.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Webhook overview", - "tags": [ - "Webhook", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "In Open Source", - "permalink": "/collaboration/oss-specific-details" - }, - "next": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-020-create-webhook-md-0ca.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-020-create-webhook-md-0ca.json deleted file mode 100644 index 67fa331c58..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-020-create-webhook-md-0ca.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "unversionedId": "automation/webhook/create-webhook", - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "source": "@site/docs/130.automation/020.webhook/020.create-webhook.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/create-webhook", - "permalink": "/automation/webhook/create-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/020.create-webhook.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "tags": [ - "Webhook", - "Create" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - }, - "next": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-040-actions-on-webhook-md-052.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-040-actions-on-webhook-md-052.json deleted file mode 100644 index d3b9fd8234..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-130-automation-020-webhook-040-actions-on-webhook-md-052.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "unversionedId": "automation/webhook/actions-on-webhook", - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "source": "@site/docs/130.automation/020.webhook/040.actions-on-webhook.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/actions-on-webhook", - "permalink": "/automation/webhook/actions-on-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/040.actions-on-webhook.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Disable", - "permalink": "/tags/disable" - }, - { - "label": "Enable", - "permalink": "/tags/enable" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Actions on webhook", - "tags": [ - "Webhook", - "Delete", - "Duplicate", - "Disable", - "Enable" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - }, - "next": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-010-profile-page-md-932.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-010-profile-page-md-932.json deleted file mode 100644 index 3e792fbd66..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-010-profile-page-md-932.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "unversionedId": "account-settings/profile-page", - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "source": "@site/docs/140.account-settings/010.profile-page.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/profile-page", - "permalink": "/account-settings/profile-page", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/010.profile-page.md", - "tags": [ - { - "label": "Account Settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Profile", - "permalink": "/tags/profile" - }, - { - "label": "Member", - "permalink": "/tags/member" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "tags": [ - "Account Settings", - "Profile", - "Member" - ], - "keywords": [ - "Profile page", - "Profile settings", - "Profile name", - "Profile picture", - "Profile management", - "Profile customization", - "Profile information", - "Profile details", - "Profile preferences", - "Profile options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - "next": { - "title": "API tokens", - "permalink": "/account-settings/api-tokens" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-020-api-tokens-md-023.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-020-api-tokens-md-023.json deleted file mode 100644 index 4ec85bb019..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-020-api-tokens-md-023.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "unversionedId": "account-settings/api-tokens", - "id": "account-settings/api-tokens", - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "source": "@site/docs/140.account-settings/020.api-tokens.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/api-tokens", - "permalink": "/account-settings/api-tokens", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/020.api-tokens.md", - "tags": [ - { - "label": "Account Settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Api Tokens", - "permalink": "/tags/api-tokens" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "tags": [ - "Account Settings", - "Api Tokens" - ], - "keywords": [ - "api tokens", - "create api token", - "delete api token" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - }, - "next": { - "title": "In Open Source", - "permalink": "/account-settings/oss-specific-details" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-030-oss-specific-details-md-00a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-030-oss-specific-details-md-00a.json deleted file mode 100644 index 817f2d57c5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-140-account-settings-030-oss-specific-details-md-00a.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "unversionedId": "account-settings/oss-specific-details", - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "source": "@site/docs/140.account-settings/030.oss-specific-details.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/oss-specific-details", - "permalink": "/account-settings/oss-specific-details", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/030.oss-specific-details.md", - "tags": [ - { - "label": "Account settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "tags": [ - "Account settings", - "Open Source" - ], - "keywords": [ - "Account settings", - "Open Source" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "API tokens", - "permalink": "/account-settings/api-tokens" - }, - "next": { - "title": "Architecture overview", - "permalink": "/engineering/architecture" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-010-architecture-md-4ef.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-010-architecture-md-4ef.json deleted file mode 100644 index 009edcdc81..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-010-architecture-md-4ef.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "unversionedId": "engineering/architecture", - "id": "engineering/architecture", - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/docs/150.engineering/010.architecture.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/architecture", - "permalink": "/engineering/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/010.architecture.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "tags": [ - "Engineering" - ], - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "In Open Source", - "permalink": "/account-settings/oss-specific-details" - }, - "next": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-020-repository-structure-md-52d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-020-repository-structure-md-52d.json deleted file mode 100644 index cf63074cc7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-020-repository-structure-md-52d.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "unversionedId": "engineering/repository-structure", - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "source": "@site/docs/150.engineering/020.repository-structure.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/repository-structure", - "permalink": "/engineering/repository-structure", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/020.repository-structure.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Repository structure", - "description": "Repository Structure", - "tags": [ - "Engineering" - ], - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Architecture overview", - "permalink": "/engineering/architecture" - }, - "next": { - "title": "Development setup", - "permalink": "/engineering/development-setup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-030-development-setup-md-583.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-030-development-setup-md-583.json deleted file mode 100644 index 267b355d54..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-030-development-setup-md-583.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/development-setup", - "id": "engineering/development-setup", - "title": "Development setup", - "description": "How to set-up your development environment", - "source": "@site/docs/150.engineering/030.development-setup.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/development-setup", - "permalink": "/engineering/development-setup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/030.development-setup.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Development setup", - "description": "How to set-up your development environment", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - }, - "next": { - "title": "Writing unit tests", - "permalink": "/engineering/unit-testing" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-040-unit-testing-md-1b3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-040-unit-testing-md-1b3.json deleted file mode 100644 index eda1ca9f30..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-040-unit-testing-md-1b3.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/unit-testing", - "id": "engineering/unit-testing", - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "source": "@site/docs/150.engineering/040.unit-testing.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/unit-testing", - "permalink": "/engineering/unit-testing", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/040.unit-testing.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Development setup", - "permalink": "/engineering/development-setup" - }, - "next": { - "title": "Playwright E2E testing", - "permalink": "/engineering/playwright" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-050-playwright-md-990.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-050-playwright-md-990.json deleted file mode 100644 index 9fc70fe450..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-050-playwright-md-990.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/playwright", - "id": "engineering/playwright", - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "source": "@site/docs/150.engineering/050.playwright.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/playwright", - "permalink": "/engineering/playwright", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/050.playwright.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing unit tests", - "permalink": "/engineering/unit-testing" - }, - "next": { - "title": "Releases & builds", - "permalink": "/engineering/builds-and-releases" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-060-builds-and-releases-md-083.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-060-builds-and-releases-md-083.json deleted file mode 100644 index ae6b766bed..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-060-builds-and-releases-md-083.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/builds-and-releases", - "id": "engineering/builds-and-releases", - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "source": "@site/docs/150.engineering/060.builds-and-releases.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/builds-and-releases", - "permalink": "/engineering/builds-and-releases", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/060.builds-and-releases.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Playwright E2E testing", - "permalink": "/engineering/playwright" - }, - "next": { - "title": "i18n translation", - "permalink": "/engineering/translation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-070-translation-md-849.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-070-translation-md-849.json deleted file mode 100644 index f050ccd34a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-070-translation-md-849.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/translation", - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "source": "@site/docs/150.engineering/070.translation.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/translation", - "permalink": "/engineering/translation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/070.translation.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Releases & builds", - "permalink": "/engineering/builds-and-releases" - }, - "next": { - "title": "Writing docs", - "permalink": "/engineering/writing-docs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-080-writing-docs-md-7c4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-080-writing-docs-md-7c4.json deleted file mode 100644 index 1c34372462..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-150-engineering-080-writing-docs-md-7c4.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "unversionedId": "engineering/writing-docs", - "id": "engineering/writing-docs", - "title": "Writing docs", - "description": "Overview to writing docs", - "source": "@site/docs/150.engineering/080.writing-docs.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/writing-docs", - "permalink": "/engineering/writing-docs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/080.writing-docs.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Writing docs", - "description": "Overview to writing docs", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "i18n translation", - "permalink": "/engineering/translation" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-990-fa-qs-md-20e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-990-fa-qs-md-20e.json deleted file mode 100644 index 2529ac53eb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-docs-990-fa-qs-md-20e.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "unversionedId": "FAQs", - "id": "FAQs", - "title": "FAQs", - "description": "General FAQs", - "source": "@site/docs/990.FAQs.md", - "sourceDirName": ".", - "slug": "/FAQs", - "permalink": "/FAQs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/990.FAQs.md", - "tags": [], - "version": "current", - "sidebarPosition": 990, - "frontMatter": { - "title": "FAQs", - "description": "General FAQs" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing docs", - "permalink": "/engineering/writing-docs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-010-index-md-1e8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-010-index-md-1e8.json deleted file mode 100644 index c2a245620b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-010-index-md-1e8.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "unversionedId": "index", - "id": "version-0.109.7/index", - "title": "Welcome", - "description": "NocoDB Documentation", - "source": "@site/versioned_docs/version-0.109.7/010.index.md", - "sourceDirName": ".", - "slug": "/", - "permalink": "/0.109.7/", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/010.index.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Welcome", - "description": "NocoDB Documentation", - "slug": "/" - }, - "sidebar": "tutorialSidebar", - "next": { - "title": "Installation", - "permalink": "/0.109.7/getting-started/installation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-010-installation-md-5c9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-010-installation-md-5c9.json deleted file mode 100644 index 695f70f517..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-010-installation-md-5c9.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "getting-started/installation", - "id": "version-0.109.7/getting-started/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/installation", - "permalink": "/0.109.7/getting-started/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/010.installation.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/0.109.7/" - }, - "next": { - "title": "Environment Variables", - "permalink": "/0.109.7/getting-started/environment-variables" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-020-environment-variables-md-0c1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-020-environment-variables-md-0c1.json deleted file mode 100644 index 6760ce8800..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-020-environment-variables-md-0c1.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "getting-started/environment-variables", - "id": "version-0.109.7/getting-started/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/environment-variables", - "permalink": "/0.109.7/getting-started/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/0.109.7/getting-started/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/0.109.7/getting-started/upgrading" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-030-upgrading-md-e28.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-030-upgrading-md-e28.json deleted file mode 100644 index 7e3907a714..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-030-upgrading-md-e28.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "getting-started/upgrading", - "id": "version-0.109.7/getting-started/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/upgrading", - "permalink": "/0.109.7/getting-started/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment Variables", - "permalink": "/0.109.7/getting-started/environment-variables" - }, - "next": { - "title": "Demos", - "permalink": "/0.109.7/getting-started/demos" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-040-demos-md-87e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-040-demos-md-87e.json deleted file mode 100644 index 769d37ad7c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-020-getting-started-040-demos-md-87e.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "getting-started/demos", - "id": "version-0.109.7/getting-started/demos", - "title": "Demos", - "description": "NocoDB Demos", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/demos", - "permalink": "/0.109.7/getting-started/demos", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/040.demos.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Demos", - "description": "NocoDB Demos", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/0.109.7/getting-started/upgrading" - }, - "next": { - "title": "Dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-010-dashboard-md-a47.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-010-dashboard-md-a47.json deleted file mode 100644 index 60a4fbd12f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-010-dashboard-md-a47.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/dashboard", - "id": "version-0.109.7/setup-and-usages/dashboard", - "title": "Dashboard", - "description": "Accessing the Dashboard!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Dashboard", - "description": "Accessing the Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Demos", - "permalink": "/0.109.7/getting-started/demos" - }, - "next": { - "title": "Table Operations", - "permalink": "/0.109.7/setup-and-usages/table-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-020-table-operations-md-0f6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-020-table-operations-md-0f6.json deleted file mode 100644 index af51cb3e58..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-020-table-operations-md-0f6.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/table-operations", - "id": "version-0.109.7/setup-and-usages/table-operations", - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/table-operations", - "permalink": "/0.109.7/setup-and-usages/table-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard" - }, - "next": { - "title": "Column Operations", - "permalink": "/0.109.7/setup-and-usages/column-operations" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-030-column-operations-md-b44.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-030-column-operations-md-b44.json deleted file mode 100644 index 4dcb743576..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-030-column-operations-md-b44.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/column-operations", - "id": "version-0.109.7/setup-and-usages/column-operations", - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-operations", - "permalink": "/0.109.7/setup-and-usages/column-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table Operations", - "permalink": "/0.109.7/setup-and-usages/table-operations" - }, - "next": { - "title": "Column Types", - "permalink": "/0.109.7/setup-and-usages/column-types" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-040-column-types-md-34b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-040-column-types-md-34b.json deleted file mode 100644 index aca98ab05a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-040-column-types-md-34b.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/column-types", - "id": "version-0.109.7/setup-and-usages/column-types", - "title": "Column Types", - "description": "NocoDB Column Types Overview", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-types", - "permalink": "/0.109.7/setup-and-usages/column-types", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Column Types", - "description": "NocoDB Column Types Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Operations", - "permalink": "/0.109.7/setup-and-usages/column-operations" - }, - "next": { - "title": "Code Snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-050-code-snippets-md-615.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-050-code-snippets-md-615.json deleted file mode 100644 index 57ea5baa72..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-050-code-snippets-md-615.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/code-snippets", - "id": "version-0.109.7/setup-and-usages/code-snippets", - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/code-snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Types", - "permalink": "/0.109.7/setup-and-usages/column-types" - }, - "next": { - "title": "Link To Another Record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-060-link-to-another-record-md-86f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-060-link-to-another-record-md-86f.json deleted file mode 100644 index 700ee692b7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-060-link-to-another-record-md-86f.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/link-to-another-record", - "id": "version-0.109.7/setup-and-usages/link-to-another-record", - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/link-to-another-record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Code Snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets" - }, - "next": { - "title": "Lookup", - "permalink": "/0.109.7/setup-and-usages/lookup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-070-lookup-md-222.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-070-lookup-md-222.json deleted file mode 100644 index bb50e103ed..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-070-lookup-md-222.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/lookup", - "id": "version-0.109.7/setup-and-usages/lookup", - "title": "Lookup", - "description": "Understanding Lookup Column!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/lookup", - "permalink": "/0.109.7/setup-and-usages/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 70, - "frontMatter": { - "title": "Lookup", - "description": "Understanding Lookup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Link To Another Record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record" - }, - "next": { - "title": "Rollup", - "permalink": "/0.109.7/setup-and-usages/rollup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-080-rollup-md-cd7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-080-rollup-md-cd7.json deleted file mode 100644 index 78220b4bb6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-080-rollup-md-cd7.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/rollup", - "id": "version-0.109.7/setup-and-usages/rollup", - "title": "Rollup", - "description": "Understanding Rollup Column!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/rollup", - "permalink": "/0.109.7/setup-and-usages/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 80, - "frontMatter": { - "title": "Rollup", - "description": "Understanding Rollup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Lookup", - "permalink": "/0.109.7/setup-and-usages/lookup" - }, - "next": { - "title": "Formulas", - "permalink": "/0.109.7/setup-and-usages/formulas" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-090-formulas-md-554.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-090-formulas-md-554.json deleted file mode 100644 index 11b95b6c99..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-090-formulas-md-554.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/formulas", - "id": "version-0.109.7/setup-and-usages/formulas", - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/formulas", - "permalink": "/0.109.7/setup-and-usages/formulas", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 90, - "frontMatter": { - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/0.109.7/setup-and-usages/rollup" - }, - "next": { - "title": "Primary Key", - "permalink": "/0.109.7/setup-and-usages/primary-key" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-100-primary-key-md-654.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-100-primary-key-md-654.json deleted file mode 100644 index 8b6313b413..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-100-primary-key-md-654.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/primary-key", - "id": "version-0.109.7/setup-and-usages/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/primary-key", - "permalink": "/0.109.7/setup-and-usages/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 100, - "frontMatter": { - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formulas", - "permalink": "/0.109.7/setup-and-usages/formulas" - }, - "next": { - "title": "Display Value", - "permalink": "/0.109.7/setup-and-usages/display-value" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-110-display-value-md-9d4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-110-display-value-md-9d4.json deleted file mode 100644 index 97e9928539..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-110-display-value-md-9d4.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/display-value", - "id": "version-0.109.7/setup-and-usages/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/display-value", - "permalink": "/0.109.7/setup-and-usages/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 110, - "frontMatter": { - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary Key", - "permalink": "/0.109.7/setup-and-usages/primary-key" - }, - "next": { - "title": "Sync Schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-120-sync-schema-md-c15.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-120-sync-schema-md-c15.json deleted file mode 100644 index 4321d2658e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-120-sync-schema-md-c15.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/sync-schema", - "id": "version-0.109.7/setup-and-usages/sync-schema", - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/sync-schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 120, - "frontMatter": { - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display Value", - "permalink": "/0.109.7/setup-and-usages/display-value" - }, - "next": { - "title": "Share Base", - "permalink": "/0.109.7/setup-and-usages/share-base" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-130-share-base-md-88c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-130-share-base-md-88c.json deleted file mode 100644 index 326785dd1c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-130-share-base-md-88c.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/share-base", - "id": "version-0.109.7/setup-and-usages/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-base", - "permalink": "/0.109.7/setup-and-usages/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 130, - "frontMatter": { - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sync Schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema" - }, - "next": { - "title": "Share View", - "permalink": "/0.109.7/setup-and-usages/share-view" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-140-share-view-md-107.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-140-share-view-md-107.json deleted file mode 100644 index 6becface89..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-140-share-view-md-107.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/share-view", - "id": "version-0.109.7/setup-and-usages/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-view", - "permalink": "/0.109.7/setup-and-usages/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 140, - "frontMatter": { - "title": "Share View", - "description": "Procedures to share a view" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/0.109.7/setup-and-usages/share-base" - }, - "next": { - "title": "Keyboard Maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-150-keyboard-maneuver-md-90e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-150-keyboard-maneuver-md-90e.json deleted file mode 100644 index 9f584206e3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-150-keyboard-maneuver-md-90e.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/keyboard-maneuver", - "id": "version-0.109.7/setup-and-usages/keyboard-maneuver", - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/keyboard-maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 150, - "frontMatter": { - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/0.109.7/setup-and-usages/share-view" - }, - "next": { - "title": "Views", - "permalink": "/0.109.7/setup-and-usages/views" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-160-views-md-1e4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-160-views-md-1e4.json deleted file mode 100644 index 591da33d5d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-160-views-md-1e4.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/views", - "id": "version-0.109.7/setup-and-usages/views", - "title": "Views", - "description": "Understanding Views in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/views", - "permalink": "/0.109.7/setup-and-usages/views", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 160, - "frontMatter": { - "title": "Views", - "description": "Understanding Views in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard Maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver" - }, - "next": { - "title": "Account Settings", - "permalink": "/0.109.7/setup-and-usages/account-settings" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-170-account-settings-md-1b1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-170-account-settings-md-1b1.json deleted file mode 100644 index 0c6ace1686..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-170-account-settings-md-1b1.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/account-settings", - "id": "version-0.109.7/setup-and-usages/account-settings", - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/account-settings", - "permalink": "/0.109.7/setup-and-usages/account-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 170, - "frontMatter": { - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Views", - "permalink": "/0.109.7/setup-and-usages/views" - }, - "next": { - "title": "Languages", - "permalink": "/0.109.7/setup-and-usages/languages" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-180-languages-md-408.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-180-languages-md-408.json deleted file mode 100644 index 1297e4e908..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-180-languages-md-408.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/languages", - "id": "version-0.109.7/setup-and-usages/languages", - "title": "Languages", - "description": "Multiple languages on Dashboard!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/languages", - "permalink": "/0.109.7/setup-and-usages/languages", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 180, - "frontMatter": { - "title": "Languages", - "description": "Multiple languages on Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Account Settings", - "permalink": "/0.109.7/setup-and-usages/account-settings" - }, - "next": { - "title": "Expanded Form", - "permalink": "/0.109.7/setup-and-usages/expanded-form" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-190-expanded-form-md-e63.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-190-expanded-form-md-e63.json deleted file mode 100644 index 47ebb778af..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-190-expanded-form-md-e63.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/expanded-form", - "id": "version-0.109.7/setup-and-usages/expanded-form", - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/expanded-form", - "permalink": "/0.109.7/setup-and-usages/expanded-form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 190, - "frontMatter": { - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Languages", - "permalink": "/0.109.7/setup-and-usages/languages" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-2a4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-2a4.json deleted file mode 100644 index 911f3907bd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-200-import-airtable-to-sql-database-within-a-minute-for-free-md-2a4.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "id": "version-0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 200, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded Form", - "permalink": "/0.109.7/setup-and-usages/expanded-form" - }, - "next": { - "title": "Usage Information", - "permalink": "/0.109.7/setup-and-usages/usage-information" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-210-usage-information-md-824.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-210-usage-information-md-824.json deleted file mode 100644 index 01c931a777..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-210-usage-information-md-824.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/usage-information", - "id": "version-0.109.7/setup-and-usages/usage-information", - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/usage-information", - "permalink": "/0.109.7/setup-and-usages/usage-information", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 210, - "frontMatter": { - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - }, - "next": { - "title": "Links", - "permalink": "/0.109.7/setup-and-usages/links" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-220-links-md-a43.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-220-links-md-a43.json deleted file mode 100644 index d975c53682..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-220-links-md-a43.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/links", - "id": "version-0.109.7/setup-and-usages/links", - "title": "Links", - "description": "Understanding Link Columns!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/links", - "permalink": "/0.109.7/setup-and-usages/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 220, - "frontMatter": { - "title": "Links", - "description": "Understanding Link Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Usage Information", - "permalink": "/0.109.7/setup-and-usages/usage-information" - }, - "next": { - "title": "Team & Auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-230-team-and-auth-md-f0e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-230-team-and-auth-md-f0e.json deleted file mode 100644 index 09da856ef5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-230-team-and-auth-md-f0e.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/team-and-auth", - "id": "version-0.109.7/setup-and-usages/team-and-auth", - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/team-and-auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 230, - "frontMatter": { - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/0.109.7/setup-and-usages/links" - }, - "next": { - "title": "Data Sources", - "permalink": "/0.109.7/setup-and-usages/meta-management" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-240-meta-management-md-d42.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-240-meta-management-md-d42.json deleted file mode 100644 index 4f420e704b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-240-meta-management-md-d42.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/meta-management", - "id": "version-0.109.7/setup-and-usages/meta-management", - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/meta-management", - "permalink": "/0.109.7/setup-and-usages/meta-management", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 240, - "frontMatter": { - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Team & Auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth" - }, - "next": { - "title": "Audit", - "permalink": "/0.109.7/setup-and-usages/audit" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-250-audit-md-9c7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-250-audit-md-9c7.json deleted file mode 100644 index e8917ee437..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-250-audit-md-9c7.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/audit", - "id": "version-0.109.7/setup-and-usages/audit", - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/audit", - "permalink": "/0.109.7/setup-and-usages/audit", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 250, - "frontMatter": { - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources", - "permalink": "/0.109.7/setup-and-usages/meta-management" - }, - "next": { - "title": "Project settings", - "permalink": "/0.109.7/setup-and-usages/project-settings" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-260-project-settings-md-d01.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-260-project-settings-md-d01.json deleted file mode 100644 index aaf9ebb43e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-030-setup-and-usages-260-project-settings-md-d01.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "setup-and-usages/project-settings", - "id": "version-0.109.7/setup-and-usages/project-settings", - "title": "Project settings", - "description": "General project configuration options", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/project-settings", - "permalink": "/0.109.7/setup-and-usages/project-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 260, - "frontMatter": { - "title": "Project settings", - "description": "General project configuration options" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Audit", - "permalink": "/0.109.7/setup-and-usages/audit" - }, - "next": { - "title": "Accessing APIs", - "permalink": "/0.109.7/developer-resources/accessing-apis" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-010-accessing-apis-md-818.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-010-accessing-apis-md-818.json deleted file mode 100644 index d0b1c4bffd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-010-accessing-apis-md-818.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/accessing-apis", - "id": "version-0.109.7/developer-resources/accessing-apis", - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/accessing-apis", - "permalink": "/0.109.7/developer-resources/accessing-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Project settings", - "permalink": "/0.109.7/setup-and-usages/project-settings" - }, - "next": { - "title": "REST APIs", - "permalink": "/0.109.7/developer-resources/rest-apis" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-020-rest-apis-md-a72.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-020-rest-apis-md-a72.json deleted file mode 100644 index ef4ac1c157..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-020-rest-apis-md-a72.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/rest-apis", - "id": "version-0.109.7/developer-resources/rest-apis", - "title": "REST APIs", - "description": "NocoDB REST API Overview", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/rest-apis", - "permalink": "/0.109.7/developer-resources/rest-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "REST APIs", - "description": "NocoDB REST API Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Accessing APIs", - "permalink": "/0.109.7/developer-resources/accessing-apis" - }, - "next": { - "title": "NocoDB SDK", - "permalink": "/0.109.7/developer-resources/sdk" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-030-sdk-md-855.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-030-sdk-md-855.json deleted file mode 100644 index b33f8dea8d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-030-sdk-md-855.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/sdk", - "id": "version-0.109.7/developer-resources/sdk", - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/sdk", - "permalink": "/0.109.7/developer-resources/sdk", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "REST APIs", - "permalink": "/0.109.7/developer-resources/rest-apis" - }, - "next": { - "title": "Webhooks", - "permalink": "/0.109.7/developer-resources/webhooks" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-040-webhooks-md-529.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-040-webhooks-md-529.json deleted file mode 100644 index d3efbd8021..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-040-webhooks-md-529.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "developer-resources/webhooks", - "id": "version-0.109.7/developer-resources/webhooks", - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/webhooks", - "permalink": "/0.109.7/developer-resources/webhooks", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "NocoDB SDK", - "permalink": "/0.109.7/developer-resources/sdk" - }, - "next": { - "title": "Upload via API", - "permalink": "/0.109.7/developer-resources/upload-via-api" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-050-upload-via-api-md-543.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-050-upload-via-api-md-543.json deleted file mode 100644 index 0c75108fd1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-040-developer-resources-050-upload-via-api-md-543.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "developer-resources/upload-via-api", - "id": "version-0.109.7/developer-resources/upload-via-api", - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/upload-via-api", - "permalink": "/0.109.7/developer-resources/upload-via-api", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhooks", - "permalink": "/0.109.7/developer-resources/webhooks" - }, - "next": { - "title": "Architecture Overview", - "permalink": "/0.109.7/engineering/architecture" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-010-architecture-md-715.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-010-architecture-md-715.json deleted file mode 100644 index 1a6e050e1b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-010-architecture-md-715.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "engineering/architecture", - "id": "version-0.109.7/engineering/architecture", - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/architecture", - "permalink": "/0.109.7/engineering/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/010.architecture.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upload via API", - "permalink": "/0.109.7/developer-resources/upload-via-api" - }, - "next": { - "title": "Repository structure", - "permalink": "/0.109.7/engineering/repository-structure" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-020-repository-structure-md-6fe.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-020-repository-structure-md-6fe.json deleted file mode 100644 index 846a596472..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-020-repository-structure-md-6fe.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "unversionedId": "engineering/repository-structure", - "id": "version-0.109.7/engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/repository-structure", - "permalink": "/0.109.7/engineering/repository-structure", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Repository structure", - "description": "Repository Structure", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Architecture Overview", - "permalink": "/0.109.7/engineering/architecture" - }, - "next": { - "title": "Development Setup", - "permalink": "/0.109.7/engineering/development-setup" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-030-development-setup-md-09c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-030-development-setup-md-09c.json deleted file mode 100644 index c26aecc5b0..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-030-development-setup-md-09c.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/development-setup", - "id": "version-0.109.7/engineering/development-setup", - "title": "Development Setup", - "description": "How to set-up your development environment", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/development-setup", - "permalink": "/0.109.7/engineering/development-setup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Development Setup", - "description": "How to set-up your development environment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Repository structure", - "permalink": "/0.109.7/engineering/repository-structure" - }, - "next": { - "title": "Writing Unit Tests", - "permalink": "/0.109.7/engineering/unit-testing" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-040-unit-testing-md-e4e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-040-unit-testing-md-e4e.json deleted file mode 100644 index c2c8746ddb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-040-unit-testing-md-e4e.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/unit-testing", - "id": "version-0.109.7/engineering/unit-testing", - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/unit-testing", - "permalink": "/0.109.7/engineering/unit-testing", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Development Setup", - "permalink": "/0.109.7/engineering/development-setup" - }, - "next": { - "title": "Playwright E2E Testing", - "permalink": "/0.109.7/engineering/playwright" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-050-playwright-md-5cc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-050-playwright-md-5cc.json deleted file mode 100644 index 4e54c43c9f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-050-playwright-md-5cc.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/playwright", - "id": "version-0.109.7/engineering/playwright", - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/playwright", - "permalink": "/0.109.7/engineering/playwright", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/050.playwright.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing Unit Tests", - "permalink": "/0.109.7/engineering/unit-testing" - }, - "next": { - "title": "Releases & Builds", - "permalink": "/0.109.7/engineering/builds-and-releases" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-060-builds-and-releases-md-361.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-060-builds-and-releases-md-361.json deleted file mode 100644 index 7a7d99d8ea..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-060-builds-and-releases-md-361.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/builds-and-releases", - "id": "version-0.109.7/engineering/builds-and-releases", - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/builds-and-releases", - "permalink": "/0.109.7/engineering/builds-and-releases", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Playwright E2E Testing", - "permalink": "/0.109.7/engineering/playwright" - }, - "next": { - "title": "i18n translation", - "permalink": "/0.109.7/engineering/translation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-070-translation-md-cc4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-070-translation-md-cc4.json deleted file mode 100644 index 3b81b76bd2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-050-engineering-070-translation-md-cc4.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "unversionedId": "engineering/translation", - "id": "version-0.109.7/engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/translation", - "permalink": "/0.109.7/engineering/translation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/070.translation.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 70, - "frontMatter": { - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Releases & Builds", - "permalink": "/0.109.7/engineering/builds-and-releases" - }, - "next": { - "title": "FAQs", - "permalink": "/0.109.7/FAQs" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-060-fa-qs-md-4ed.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-060-fa-qs-md-4ed.json deleted file mode 100644 index f9e0447efc..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/site-versioned-docs-version-0-109-7-060-fa-qs-md-4ed.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "unversionedId": "FAQs", - "id": "version-0.109.7/FAQs", - "title": "FAQs", - "description": "General FAQs", - "source": "@site/versioned_docs/version-0.109.7/060.FAQs.md", - "sourceDirName": ".", - "slug": "/FAQs", - "permalink": "/0.109.7/FAQs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/060.FAQs.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "FAQs", - "description": "General FAQs" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "i18n translation", - "permalink": "/0.109.7/engineering/translation" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-account-settings-aab.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-account-settings-aab.json deleted file mode 100644 index caedd6dea2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-account-settings-aab.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Account Settings", - "permalink": "/tags/account-settings", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "account-settings/api-tokens", - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "permalink": "/account-settings/api-tokens" - }, - { - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "permalink": "/account-settings/oss-specific-details" - }, - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-activity-feed-ccc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-activity-feed-ccc.json deleted file mode 100644 index c64fe13152..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-activity-feed-ccc.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Activity feed", - "permalink": "/tags/activity-feed", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "permalink": "/records/expand-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-adoption-b21.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-adoption-b21.json deleted file mode 100644 index 72c2e41bae..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-adoption-b21.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "adoption", - "permalink": "/tags/adoption", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "In NocoDB, workspaces serve as collections of one or more bases, offering a structured approach to organizing your data and collaborators. Here are some key aspects to keep in mind regarding workspaces:", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-api-tokens-bbe.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-api-tokens-bbe.json deleted file mode 100644 index f1bf180793..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-api-tokens-bbe.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Api Tokens", - "permalink": "/tags/api-tokens", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "account-settings/api-tokens", - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "permalink": "/account-settings/api-tokens" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-attachment-9e2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-attachment-9e2.json deleted file mode 100644 index b547670f6c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-attachment-9e2.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Attachment", - "permalink": "/tags/attachment", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "permalink": "/fields/field-types/custom-types/attachment" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-barcode-e70.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-barcode-e70.json deleted file mode 100644 index 6f4c4d6f74..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-barcode-e70.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Barcode", - "permalink": "/tags/barcode", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/barcode" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-actions-441.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-actions-441.json deleted file mode 100644 index f0cfa784cb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-actions-441.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "base actions", - "permalink": "/tags/base-actions", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - }, - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-collaboration-98c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-collaboration-98c.json deleted file mode 100644 index d310993cf9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-collaboration-98c.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "base collaboration", - "permalink": "/tags/base-collaboration", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "collaboration/base-collaboration", - "title": "Base Collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-dashboard-772.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-dashboard-772.json deleted file mode 100644 index f3b3ac0bf7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-dashboard-772.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "base dashboard", - "permalink": "/tags/base-dashboard", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-fdd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-fdd.json deleted file mode 100644 index e68d2f159e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-fdd.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Base", - "permalink": "/tags/base", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-overview-2fd.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-overview-2fd.json deleted file mode 100644 index 746e484606..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-base-overview-2fd.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "base overview", - "permalink": "/tags/base-overview", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-bases-eae.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-bases-eae.json deleted file mode 100644 index 6edb618990..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-bases-eae.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "label": "Bases", - "permalink": "/tags/bases", - "allTagsPath": "/tags", - "count": 8, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - }, - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - }, - { - "id": "bases/create-base", - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "permalink": "/bases/create-base" - }, - { - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "permalink": "/bases/import-base-from-airtable" - }, - { - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/bases/share-base" - }, - { - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/collaboration/share-base" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-checkbox-bb0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-checkbox-bb0.json deleted file mode 100644 index 6504f6e222..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-checkbox-bb0.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Checkbox", - "permalink": "/tags/checkbox", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "permalink": "/fields/field-types/custom-types/checkbox" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-collaboration-e59.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-collaboration-e59.json deleted file mode 100644 index 92bb48c541..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-collaboration-e59.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "label": "Collaboration", - "permalink": "/tags/collaboration", - "allTagsPath": "/tags", - "count": 8, - "items": [ - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - }, - { - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "permalink": "/collaboration/oss-specific-details" - }, - { - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/bases/share-base" - }, - { - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/collaboration/share-base" - }, - { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/collaboration/workspace-collaboration" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-comments-65d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-comments-65d.json deleted file mode 100644 index 65851496a3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-comments-65d.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Comments", - "permalink": "/tags/comments", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "permalink": "/records/expand-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-cover-image-028.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-cover-image-028.json deleted file mode 100644 index cfc3e217e4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-cover-image-028.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Cover image", - "permalink": "/tags/cover-image", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-2ad.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-2ad.json deleted file mode 100644 index 7435b394f8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-2ad.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "label": "Create", - "permalink": "/tags/create", - "allTagsPath": "/tags", - "count": 6, - "items": [ - { - "id": "bases/create-base", - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "permalink": "/bases/create-base" - }, - { - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "permalink": "/tables/create-table" - }, - { - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "permalink": "/records/create-record" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "permalink": "/automation/webhook/create-webhook" - }, - { - "id": "workspaces/create-workspace", - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "permalink": "/workspaces/create-workspace" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-base-dd1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-base-dd1.json deleted file mode 100644 index ccf6794473..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-base-dd1.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "create base", - "permalink": "/tags/create-base", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/create-base", - "title": "Create base", - "description": "Create a new base in NocoDB.", - "permalink": "/bases/create-base" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-record-b47.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-record-b47.json deleted file mode 100644 index b7bf6fde44..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-record-b47.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "create record", - "permalink": "/tags/create-record", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "permalink": "/records/create-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-table-5cf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-table-5cf.json deleted file mode 100644 index 8a185b4e2f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-table-5cf.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "create table", - "permalink": "/tags/create-table", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "permalink": "/tables/create-table" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-view-5cc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-view-5cc.json deleted file mode 100644 index 98513caa4b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-create-view-5cc.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "create view", - "permalink": "/tags/create-view", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-csv-1df.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-csv-1df.json deleted file mode 100644 index 74553633bd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-csv-1df.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "CSV", - "permalink": "/tags/csv", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-currency-68c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-currency-68c.json deleted file mode 100644 index 07b08609e2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-currency-68c.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Currency", - "permalink": "/tags/currency", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "permalink": "/fields/field-types/numerical/currency" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-custom-types-2ab.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-custom-types-2ab.json deleted file mode 100644 index c00bed552f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-custom-types-2ab.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "label": "Custom types", - "permalink": "/tags/custom-types", - "allTagsPath": "/tags", - "count": 8, - "items": [ - { - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "permalink": "/fields/field-types/custom-types/attachment" - }, - { - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/barcode" - }, - { - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - { - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "permalink": "/fields/field-types/custom-types/geometry" - }, - { - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "permalink": "/fields/field-types/custom-types/json" - }, - { - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - { - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "permalink": "/fields/field-types/custom-types/rating" - }, - { - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-dashboard-5a9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-dashboard-5a9.json deleted file mode 100644 index f240e175d4..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-dashboard-5a9.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Dashboard", - "permalink": "/tags/dashboard", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-data-sources-eaa.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-data-sources-eaa.json deleted file mode 100644 index 6e7b1d9143..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-data-sources-eaa.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Data Sources", - "permalink": "/tags/data-sources", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "data-source/data-source-overview", - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "permalink": "/data-source/data-source-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-date-time-e33.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-date-time-e33.json deleted file mode 100644 index eb7b715188..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-date-time-e33.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Date & Time", - "permalink": "/tags/date-time", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/date" - }, - { - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "permalink": "/fields/field-types/formula/date-functions" - }, - { - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - { - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/duration" - }, - { - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "permalink": "/fields/field-types/date-time-based/time" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-decimal-575.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-decimal-575.json deleted file mode 100644 index b3f4aa0d84..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-decimal-575.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Decimal", - "permalink": "/tags/decimal", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "permalink": "/fields/field-types/numerical/decimal" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-7ef.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-7ef.json deleted file mode 100644 index 9d2203e8f2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-7ef.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "label": "Delete", - "permalink": "/tags/delete", - "allTagsPath": "/tags", - "count": 7, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - }, - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - }, - { - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "permalink": "/tables/actions-on-table" - }, - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "permalink": "/workspaces/actions-on-workspace" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-base-88b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-base-88b.json deleted file mode 100644 index 05897ab74a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-base-88b.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "delete base", - "permalink": "/tags/delete-base", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-view-5b6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-view-5b6.json deleted file mode 100644 index 476388092f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-view-5b6.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "delete view", - "permalink": "/tags/delete-view", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-workspace-ace.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-workspace-ace.json deleted file mode 100644 index f580a18ea8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-delete-workspace-ace.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "delete workspace", - "permalink": "/tags/delete-workspace", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "permalink": "/workspaces/actions-on-workspace" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-disable-39c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-disable-39c.json deleted file mode 100644 index 865b6f21f9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-disable-39c.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Disable", - "permalink": "/tags/disable", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-display-value-bc0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-display-value-bc0.json deleted file mode 100644 index f1ab0e76e7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-display-value-bc0.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Display value", - "permalink": "/tags/display-value", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "fields/display-value", - "title": "Display value", - "description": "Understanding Display Value in NocoDB!", - "permalink": "/fields/display-value" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-download-e65.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-download-e65.json deleted file mode 100644 index 17ec074485..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-download-e65.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Download", - "permalink": "/tags/download", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-74f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-74f.json deleted file mode 100644 index 01b043d24d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-74f.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "label": "Duplicate", - "permalink": "/tags/duplicate", - "allTagsPath": "/tags", - "count": 6, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - }, - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - }, - { - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "permalink": "/tables/actions-on-table" - }, - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-view-fe8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-view-fe8.json deleted file mode 100644 index a08082d889..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-duplicate-view-fe8.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "duplicate view", - "permalink": "/tags/duplicate-view", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-edit-81a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-edit-81a.json deleted file mode 100644 index 3d2d935236..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-edit-81a.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Edit", - "permalink": "/tags/edit", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-email-e39.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-email-e39.json deleted file mode 100644 index 52afe965cd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-email-e39.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Email", - "permalink": "/tags/email", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/email" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-enable-429.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-enable-429.json deleted file mode 100644 index 1488c083b2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-enable-429.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Enable", - "permalink": "/tags/enable", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-engineering-fa4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-engineering-fa4.json deleted file mode 100644 index a1a0285a02..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-engineering-fa4.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "label": "Engineering", - "permalink": "/tags/engineering", - "allTagsPath": "/tags", - "count": 8, - "items": [ - { - "id": "engineering/architecture", - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "permalink": "/engineering/architecture" - }, - { - "id": "engineering/development-setup", - "title": "Development setup", - "description": "How to set-up your development environment", - "permalink": "/engineering/development-setup" - }, - { - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "permalink": "/engineering/translation" - }, - { - "id": "engineering/playwright", - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "permalink": "/engineering/playwright" - }, - { - "id": "engineering/builds-and-releases", - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "permalink": "/engineering/builds-and-releases" - }, - { - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "permalink": "/engineering/repository-structure" - }, - { - "id": "engineering/writing-docs", - "title": "Writing docs", - "description": "Overview to writing docs", - "permalink": "/engineering/writing-docs" - }, - { - "id": "engineering/unit-testing", - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "permalink": "/engineering/unit-testing" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-excel-813.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-excel-813.json deleted file mode 100644 index 688c17568c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-excel-813.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Excel", - "permalink": "/tags/excel", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expand-158.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expand-158.json deleted file mode 100644 index 212dc5cbd6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expand-158.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Expand", - "permalink": "/tags/expand", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expanded-record-87b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expanded-record-87b.json deleted file mode 100644 index 60b01b47fa..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-expanded-record-87b.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Expanded record", - "permalink": "/tags/expanded-record", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "permalink": "/records/expand-record" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-field-types-c13.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-field-types-c13.json deleted file mode 100644 index ba4960091b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-field-types-c13.json +++ /dev/null @@ -1,200 +0,0 @@ -{ - "label": "Field types", - "permalink": "/tags/field-types", - "allTagsPath": "/tags", - "count": 32, - "items": [ - { - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "permalink": "/fields/field-types/custom-types/attachment" - }, - { - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/barcode" - }, - { - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - { - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - { - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "permalink": "/fields/field-types/numerical/currency" - }, - { - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/date" - }, - { - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "permalink": "/fields/field-types/formula/date-functions" - }, - { - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - { - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "permalink": "/fields/field-types/numerical/decimal" - }, - { - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/duration" - }, - { - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/email" - }, - { - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "permalink": "/fields/field-types/formula/formula" - }, - { - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "permalink": "/fields/field-types/custom-types/geometry" - }, - { - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "permalink": "/fields/field-types/custom-types/json" - }, - { - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "permalink": "/fields/field-types/links-based/links" - }, - { - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "permalink": "/fields/field-types/text-based/long-text" - }, - { - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "permalink": "/fields/field-types/links-based/lookup" - }, - { - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/multi-select" - }, - { - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "permalink": "/fields/field-types/numerical/number" - }, - { - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "permalink": "/fields/field-types/formula/operators" - }, - { - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - { - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "permalink": "/fields/field-types/numerical/percent" - }, - { - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - { - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - { - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "permalink": "/fields/field-types/custom-types/rating" - }, - { - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "permalink": "/fields/field-types/links-based/rollup" - }, - { - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - { - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/single-select" - }, - { - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - { - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - { - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "permalink": "/fields/field-types/date-time-based/time" - }, - { - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/url" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-8d7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-8d7.json deleted file mode 100644 index 46d6476577..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-8d7.json +++ /dev/null @@ -1,230 +0,0 @@ -{ - "label": "Fields", - "permalink": "/tags/fields", - "allTagsPath": "/tags", - "count": 37, - "items": [ - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "permalink": "/fields/field-types/custom-types/attachment" - }, - { - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/barcode" - }, - { - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - { - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - { - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "permalink": "/fields/field-types/numerical/currency" - }, - { - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/date" - }, - { - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "permalink": "/fields/field-types/formula/date-functions" - }, - { - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - { - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "permalink": "/fields/field-types/numerical/decimal" - }, - { - "id": "fields/display-value", - "title": "Display value", - "description": "Understanding Display Value in NocoDB!", - "permalink": "/fields/display-value" - }, - { - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "permalink": "/fields/field-types/date-time-based/duration" - }, - { - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/email" - }, - { - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "permalink": "/fields/fields-overview" - }, - { - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "permalink": "/fields/field-types/formula/formula" - }, - { - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "permalink": "/fields/field-types/custom-types/geometry" - }, - { - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "permalink": "/fields/field-types/custom-types/json" - }, - { - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "permalink": "/fields/field-types/links-based/links" - }, - { - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "permalink": "/fields/field-types/text-based/long-text" - }, - { - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "permalink": "/fields/field-types/links-based/lookup" - }, - { - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/multi-select" - }, - { - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "permalink": "/fields/multi-fields-editor" - }, - { - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "permalink": "/fields/field-types/numerical/number" - }, - { - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "permalink": "/fields/field-types/formula/operators" - }, - { - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - { - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "permalink": "/fields/field-types/numerical/percent" - }, - { - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - { - "id": "fields/primary-key", - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "permalink": "/fields/primary-key" - }, - { - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - { - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "permalink": "/fields/field-types/custom-types/rating" - }, - { - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "permalink": "/fields/field-types/links-based/rollup" - }, - { - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - { - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/single-select" - }, - { - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - { - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - { - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "permalink": "/fields/field-types/date-time-based/time" - }, - { - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/url" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-editor-6bf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-editor-6bf.json deleted file mode 100644 index be453548f1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-fields-editor-6bf.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "fields editor", - "permalink": "/tags/fields-editor", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/fields-editor", - "title": "Multi-Field Editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "permalink": "/fields/fields-editor" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-filter-2d5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-filter-2d5.json deleted file mode 100644 index fcbc8c42ce..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-filter-2d5.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Filter", - "permalink": "/tags/filter", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "permalink": "/table-operations/filter" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-53b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-53b.json deleted file mode 100644 index 7825bb8ff7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-53b.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Form", - "permalink": "/tags/form", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "views/view-types/form", - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "permalink": "/views/view-types/form" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-view-94e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-view-94e.json deleted file mode 100644 index 2365444f99..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-form-view-94e.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "label": "Form View", - "permalink": "/tags/form-view", - "allTagsPath": "/tags", - "count": 4, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-formula-732.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-formula-732.json deleted file mode 100644 index 6c32a43ebe..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-formula-732.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "label": "Formula", - "permalink": "/tags/formula", - "allTagsPath": "/tags", - "count": 6, - "items": [ - { - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - { - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "permalink": "/fields/field-types/formula/date-functions" - }, - { - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "permalink": "/fields/field-types/formula/formula" - }, - { - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "permalink": "/fields/field-types/formula/operators" - }, - { - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - { - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-gallery-view-170.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-gallery-view-170.json deleted file mode 100644 index 00adc3b274..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-gallery-view-170.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "label": "Gallery View", - "permalink": "/tags/gallery-view", - "allTagsPath": "/tags", - "count": 10, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "permalink": "/table-operations/filter" - }, - { - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "permalink": "/views/view-types/gallery" - }, - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - }, - { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "permalink": "/table-operations/search" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - }, - { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "permalink": "/table-operations/sort" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-geometry-c6f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-geometry-c6f.json deleted file mode 100644 index d25ad4d165..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-geometry-c6f.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Geometry", - "permalink": "/tags/geometry", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "permalink": "/fields/field-types/custom-types/geometry" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-getting-started-564.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-getting-started-564.json deleted file mode 100644 index fc06c912a9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-getting-started-564.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Getting Started", - "permalink": "/tags/getting-started", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "permalink": "/getting-started/keyboard-shortcuts" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-grid-view-58b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-grid-view-58b.json deleted file mode 100644 index f562316cc6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-grid-view-58b.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "label": "Grid View", - "permalink": "/tags/grid-view", - "allTagsPath": "/tags", - "count": 12, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "permalink": "/table-operations/filter" - }, - { - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "permalink": "/views/view-types/grid" - }, - { - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "permalink": "/table-operations/group-by" - }, - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - }, - { - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "permalink": "/table-operations/row-height" - }, - { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "permalink": "/table-operations/search" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - }, - { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "permalink": "/table-operations/sort" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-group-by-a64.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-group-by-a64.json deleted file mode 100644 index 172ea2d764..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-group-by-a64.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Group by", - "permalink": "/tags/group-by", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "permalink": "/table-operations/group-by" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-hide-1ea.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-hide-1ea.json deleted file mode 100644 index 48da4918bb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-hide-1ea.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Hide", - "permalink": "/tags/hide", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-import-be6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-import-be6.json deleted file mode 100644 index 92178f1169..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-import-be6.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Import", - "permalink": "/tags/import", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "tables/create-table-via-import", - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "permalink": "/tables/create-table-via-import" - }, - { - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "permalink": "/bases/import-base-from-airtable" - }, - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-invite-e9c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-invite-e9c.json deleted file mode 100644 index 5bf8cfe15e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-invite-e9c.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "label": "Invite", - "permalink": "/tags/invite", - "allTagsPath": "/tags", - "count": 4, - "items": [ - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/collaboration/workspace-collaboration" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-json-a8a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-json-a8a.json deleted file mode 100644 index b5c74ecd55..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-json-a8a.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "JSON", - "permalink": "/tags/json", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - }, - { - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "permalink": "/fields/field-types/custom-types/json" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-kanban-view-4dc.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-kanban-view-4dc.json deleted file mode 100644 index 59df8230cd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-kanban-view-4dc.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "label": "Kanban View", - "permalink": "/tags/kanban-view", - "allTagsPath": "/tags", - "count": 10, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "permalink": "/table-operations/filter" - }, - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - }, - { - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "permalink": "/views/view-types/kanban" - }, - { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "permalink": "/table-operations/search" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - }, - { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "permalink": "/table-operations/sort" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-based-types-1b0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-based-types-1b0.json deleted file mode 100644 index a4310b7966..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-based-types-1b0.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Links based types", - "permalink": "/tags/links-based-types", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "permalink": "/fields/field-types/links-based/links" - }, - { - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "permalink": "/fields/field-types/links-based/lookup" - }, - { - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "permalink": "/fields/field-types/links-based/rollup" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-d71.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-d71.json deleted file mode 100644 index 72a9d02886..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-links-d71.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Links", - "permalink": "/tags/links", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "permalink": "/fields/field-types/links-based/links" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-list-workspaces-378.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-list-workspaces-378.json deleted file mode 100644 index 070f4e2210..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-list-workspaces-378.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "List workspaces", - "permalink": "/tags/list-workspaces", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "NocoDB workspaces are a crucial feature for organizing and managing your data effectively:", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-long-text-c05.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-long-text-c05.json deleted file mode 100644 index cf770a5e89..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-long-text-c05.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Long text", - "permalink": "/tags/long-text", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "permalink": "/fields/field-types/text-based/long-text" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-lookup-6f6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-lookup-6f6.json deleted file mode 100644 index 85e9236dcb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-lookup-6f6.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Lookup", - "permalink": "/tags/lookup", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "permalink": "/fields/field-types/links-based/lookup" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-member-3b6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-member-3b6.json deleted file mode 100644 index defee723c9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-member-3b6.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "label": "Member", - "permalink": "/tags/member", - "allTagsPath": "/tags", - "count": 4, - "items": [ - { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - }, - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - }, - { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/collaboration/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-members-c98.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-members-c98.json deleted file mode 100644 index 1ea5a1f276..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-members-c98.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Members", - "permalink": "/tags/members", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-fields-editor-8da.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-fields-editor-8da.json deleted file mode 100644 index 6f2cea010c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-fields-editor-8da.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Multi-fields editor", - "permalink": "/tags/multi-fields-editor", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "permalink": "/fields/multi-fields-editor" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-select-0c8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-select-0c8.json deleted file mode 100644 index ccc8ff76f2..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-multi-select-0c8.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Multi select", - "permalink": "/tags/multi-select", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/multi-select" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-new-df5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-new-df5.json deleted file mode 100644 index 67762ce5b9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-new-df5.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "new", - "permalink": "/tags/new", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "In NocoDB, workspaces serve as collections of one or more bases, offering a structured approach to organizing your data and collaborators. Here are some key aspects to keep in mind regarding workspaces:", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-number-1d2.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-number-1d2.json deleted file mode 100644 index dc06b81033..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-number-1d2.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Number", - "permalink": "/tags/number", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "permalink": "/fields/field-types/numerical/number" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-numerical-types-03c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-numerical-types-03c.json deleted file mode 100644 index b917330976..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-numerical-types-03c.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "label": "Numerical types", - "permalink": "/tags/numerical-types", - "allTagsPath": "/tags", - "count": 4, - "items": [ - { - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "permalink": "/fields/field-types/numerical/currency" - }, - { - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "permalink": "/fields/field-types/numerical/decimal" - }, - { - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "permalink": "/fields/field-types/numerical/number" - }, - { - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "permalink": "/fields/field-types/numerical/percent" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-open-source-031.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-open-source-031.json deleted file mode 100644 index 30aad14ad8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-open-source-031.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Open Source", - "permalink": "/tags/open-source", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "getting-started/self-hosted/environment-variables", - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "permalink": "/getting-started/self-hosted/environment-variables" - }, - { - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "permalink": "/account-settings/oss-specific-details" - }, - { - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "permalink": "/collaboration/oss-specific-details" - }, - { - "id": "getting-started/self-hosted/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "permalink": "/getting-started/self-hosted/installation" - }, - { - "id": "getting-started/self-hosted/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "permalink": "/getting-started/self-hosted/upgrading" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-oss-specific-details-367.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-oss-specific-details-367.json deleted file mode 100644 index 25709b0024..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-oss-specific-details-367.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "oss specific details", - "permalink": "/tags/oss-specific-details", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "collaboration/oss-specific-details", - "title": "On Self-Hosted plans", - "description": "This article explains the OSS specific details of NocoDB for collaboration management.", - "permalink": "/collaboration/oss-specific-details" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-overview-08f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-overview-08f.json deleted file mode 100644 index 0aefe6bd9a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-overview-08f.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "label": "Overview", - "permalink": "/tags/overview", - "allTagsPath": "/tags", - "count": 12, - "items": [ - { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "permalink": "/bases/base-overview" - }, - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - }, - { - "id": "data-source/data-source-overview", - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "permalink": "/data-source/data-source-overview" - }, - { - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "permalink": "/fields/fields-overview" - }, - { - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "permalink": "/records/records-overview" - }, - { - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - { - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "permalink": "/table-details/table-details-overview" - }, - { - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "permalink": "/table-operations/overview" - }, - { - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "permalink": "/tables/table-overview" - }, - { - "id": "views/views-overview", - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "permalink": "/views/views-overview" - }, - { - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "permalink": "/automation/webhook/webhook-overview" - }, - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-percent-363.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-percent-363.json deleted file mode 100644 index dca2d045cc..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-percent-363.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Percent", - "permalink": "/tags/percent", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "permalink": "/fields/field-types/numerical/percent" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-permissions-6c8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-permissions-6c8.json deleted file mode 100644 index e9e8a6e50d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-permissions-6c8.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Permissions", - "permalink": "/tags/permissions", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-phone-number-f26.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-phone-number-f26.json deleted file mode 100644 index 805ca8b21a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-phone-number-f26.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Phone number", - "permalink": "/tags/phone-number", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "permalink": "/fields/field-types/text-based/phonenumber" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-primary-key-b79.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-primary-key-b79.json deleted file mode 100644 index fa81f3f85b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-primary-key-b79.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Primary Key", - "permalink": "/tags/primary-key", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/primary-key", - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "permalink": "/fields/primary-key" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-productivity-hacks-06f.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-productivity-hacks-06f.json deleted file mode 100644 index b93f5fc44f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-productivity-hacks-06f.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "permalink": "/getting-started/keyboard-shortcuts" - }, - { - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "permalink": "/fields/multi-fields-editor" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-4e1.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-4e1.json deleted file mode 100644 index 543090b27a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-4e1.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Profile", - "permalink": "/tags/profile", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-name-b19.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-name-b19.json deleted file mode 100644 index 3b49464eee..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-name-b19.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "profile name", - "permalink": "/tags/profile-name", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-page-5c7.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-page-5c7.json deleted file mode 100644 index 2d94d4525e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-page-5c7.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "profile page", - "permalink": "/tags/profile-page", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-settings-c76.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-settings-c76.json deleted file mode 100644 index 1cca416870..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-profile-settings-c76.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "profile settings", - "permalink": "/tags/profile-settings", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "permalink": "/account-settings/profile-page" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-qr-code-af6.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-qr-code-af6.json deleted file mode 100644 index 4464c89b7c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-qr-code-af6.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "QR code", - "permalink": "/tags/qr-code", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "permalink": "/fields/field-types/custom-types/QR-code" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rating-b67.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rating-b67.json deleted file mode 100644 index 71f7ad77c5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rating-b67.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Rating", - "permalink": "/tags/rating", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "permalink": "/fields/field-types/custom-types/rating" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-record-overview-e6b.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-record-overview-e6b.json deleted file mode 100644 index 277f030390..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-record-overview-e6b.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "record overview", - "permalink": "/tags/record-overview", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "permalink": "/records/records-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-records-b8e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-records-b8e.json deleted file mode 100644 index 7c435c6679..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-records-b8e.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "label": "Records", - "permalink": "/tags/records", - "allTagsPath": "/tags", - "count": 4, - "items": [ - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - }, - { - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "permalink": "/records/create-record" - }, - { - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "permalink": "/records/expand-record" - }, - { - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "permalink": "/records/records-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-relations-887.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-relations-887.json deleted file mode 100644 index ebf79a4d3e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-relations-887.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Relations", - "permalink": "/tags/relations", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-649.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-649.json deleted file mode 100644 index 1823a2251c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-649.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Rename", - "permalink": "/tags/rename", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - }, - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "permalink": "/tables/actions-on-table" - }, - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "permalink": "/workspaces/actions-on-workspace" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-view-8ee.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-view-8ee.json deleted file mode 100644 index 99b08e7c7d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-view-8ee.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "rename view", - "permalink": "/tags/rename-view", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-workspace-c59.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-workspace-c59.json deleted file mode 100644 index decc42682c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rename-workspace-c59.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "rename workspace", - "permalink": "/tags/rename-workspace", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "permalink": "/workspaces/actions-on-workspace" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-reorder-7e5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-reorder-7e5.json deleted file mode 100644 index d6b87aba3f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-reorder-7e5.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Reorder", - "permalink": "/tags/reorder", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-role-c53.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-role-c53.json deleted file mode 100644 index 79bf7c8683..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-role-c53.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Role", - "permalink": "/tags/role", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/collaboration/base-collaboration" - }, - { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/collaboration/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-roles-236.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-roles-236.json deleted file mode 100644 index 3ef806060b..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-roles-236.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Roles", - "permalink": "/tags/roles", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "permalink": "/bases/base-collaboration" - }, - { - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rollup-019.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rollup-019.json deleted file mode 100644 index 13b4a88c9e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-rollup-019.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Rollup", - "permalink": "/tags/rollup", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "permalink": "/fields/field-types/links-based/rollup" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-row-height-0cb.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-row-height-0cb.json deleted file mode 100644 index 78e170b8fb..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-row-height-0cb.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Row height", - "permalink": "/tags/row-height", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "permalink": "/table-operations/row-height" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-search-b34.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-search-b34.json deleted file mode 100644 index 01c1068252..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-search-b34.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Search", - "permalink": "/tags/search", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "permalink": "/table-operations/search" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-select-based-types-ed9.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-select-based-types-ed9.json deleted file mode 100644 index 52131babe8..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-select-based-types-ed9.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Select based types", - "permalink": "/tags/select-based-types", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/multi-select" - }, - { - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/single-select" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-self-hosted-plan-613.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-self-hosted-plan-613.json deleted file mode 100644 index 92de7a0f7d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-self-hosted-plan-613.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Self-Hosted plan", - "permalink": "/tags/self-hosted-plan", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "getting-started/self-hosted/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "permalink": "/getting-started/self-hosted/environment-variables" - }, - { - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics on Self-Hosted plan.", - "permalink": "/account-settings/oss-specific-details" - }, - { - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management on Self-Hosted plan.", - "permalink": "/collaboration/oss-specific-details" - }, - { - "id": "getting-started/self-hosted/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "permalink": "/getting-started/self-hosted/installation" - }, - { - "id": "getting-started/self-hosted/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "permalink": "/getting-started/self-hosted/upgrading" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-2bf.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-2bf.json deleted file mode 100644 index 595acf2e7f..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-2bf.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Share", - "permalink": "/tags/share", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - }, - { - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/bases/share-base" - }, - { - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/collaboration/share-base" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-base-a82.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-base-a82.json deleted file mode 100644 index 029a7d8419..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-base-a82.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "share base", - "permalink": "/tags/share-base", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/overview" - }, - { - "id": "collaboration/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "permalink": "/collaboration/share-base" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-view-632.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-view-632.json deleted file mode 100644 index f6d488bb4e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-share-view-632.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "share view", - "permalink": "/tags/share-view", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/overview" - }, - { - "id": "collaboration/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-shortcuts-33c.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-shortcuts-33c.json deleted file mode 100644 index 8c733b1dde..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-shortcuts-33c.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Shortcuts", - "permalink": "/tags/shortcuts", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "permalink": "/records/actions-on-record" - }, - { - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "permalink": "/getting-started/keyboard-shortcuts" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-show-hide-a0d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-show-hide-a0d.json deleted file mode 100644 index 9315a8c43a..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-show-hide-a0d.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Show/Hide", - "permalink": "/tags/show-hide", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-line-text-64e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-line-text-64e.json deleted file mode 100644 index 8dba377486..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-line-text-64e.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Single line text", - "permalink": "/tags/single-line-text", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "permalink": "/fields/field-types/text-based/single-line-text" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-select-bec.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-select-bec.json deleted file mode 100644 index bbcea64647..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-single-select-bec.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Single select", - "permalink": "/tags/single-select", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "permalink": "/fields/field-types/select-based/single-select" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-sort-d14.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-sort-d14.json deleted file mode 100644 index b16d2bb16e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-sort-d14.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "Sort", - "permalink": "/tags/sort", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "permalink": "/fields/actions-on-field" - }, - { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "permalink": "/table-operations/sort" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-specific-db-type-32a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-specific-db-type-32a.json deleted file mode 100644 index bee2fbe19c..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-specific-db-type-32a.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Specific DB type", - "permalink": "/tags/specific-db-type", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-star-298.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-star-298.json deleted file mode 100644 index 81ec46c643..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-star-298.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Star", - "permalink": "/tags/star", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "permalink": "/bases/actions-on-base" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-switch-between-workspaces-b98.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-switch-between-workspaces-b98.json deleted file mode 100644 index 63a305ceb7..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-switch-between-workspaces-b98.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Switch between workspaces", - "permalink": "/tags/switch-between-workspaces", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "NocoDB workspaces are a crucial feature for organizing and managing your data effectively:", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-details-781.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-details-781.json deleted file mode 100644 index f0997bd687..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-details-781.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Table details", - "permalink": "/tags/table-details", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "permalink": "/table-details/table-details-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-e12.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-e12.json deleted file mode 100644 index 037a71019e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-e12.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Table", - "permalink": "/tags/table", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "permalink": "/table-details/table-details-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-01a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-01a.json deleted file mode 100644 index 7c65ecdfdd..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-01a.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "label": "Table operations", - "permalink": "/tags/table-operations", - "allTagsPath": "/tags", - "count": 8, - "items": [ - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "permalink": "/table-operations/filter" - }, - { - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "permalink": "/table-operations/group-by" - }, - { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "permalink": "/table-operations/field-operations" - }, - { - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "permalink": "/table-operations/row-height" - }, - { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "permalink": "/table-operations/search" - }, - { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "permalink": "/table-operations/sort" - }, - { - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "permalink": "/table-operations/overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-overview-51d.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-overview-51d.json deleted file mode 100644 index d8fbebea13..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-operations-overview-51d.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "table operations overview", - "permalink": "/tags/table-operations-overview", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "permalink": "/table-operations/overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-overview-9e5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-overview-9e5.json deleted file mode 100644 index fc9e9b85a3..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-table-overview-9e5.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "table overview", - "permalink": "/tags/table-overview", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "permalink": "/tables/table-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-tables-709.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-tables-709.json deleted file mode 100644 index 1b977621b1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-tables-709.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Tables", - "permalink": "/tags/tables", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "permalink": "/tables/actions-on-table" - }, - { - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "permalink": "/tables/create-table" - }, - { - "id": "tables/create-table-via-import", - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "permalink": "/tables/create-table-via-import" - }, - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - }, - { - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "permalink": "/tables/table-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-text-based-types-00e.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-text-based-types-00e.json deleted file mode 100644 index 9917cf1e59..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-text-based-types-00e.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Text based types", - "permalink": "/tags/text-based-types", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/email" - }, - { - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "permalink": "/fields/field-types/text-based/long-text" - }, - { - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - { - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - { - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/url" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-url-4e5.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-url-4e5.json deleted file mode 100644 index 7202b79a6d..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-url-4e5.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "URL", - "permalink": "/tags/url", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "permalink": "/fields/field-types/text-based/url" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-user-management-2a3.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-user-management-2a3.json deleted file mode 100644 index 699c5b7a02..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-user-management-2a3.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "User management", - "permalink": "/tags/user-management", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "permalink": "/collaboration/oss-specific-details" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-views-e28.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-views-e28.json deleted file mode 100644 index cedb40dcf5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-views-e28.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "label": "Views", - "permalink": "/tags/views", - "allTagsPath": "/tags", - "count": 9, - "items": [ - { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "permalink": "/views/actions-on-view" - }, - { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "permalink": "/views/create-view" - }, - { - "id": "views/view-types/form", - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "permalink": "/views/view-types/form" - }, - { - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "permalink": "/views/view-types/gallery" - }, - { - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "permalink": "/views/view-types/grid" - }, - { - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "permalink": "/views/view-types/kanban" - }, - { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/collaboration/share-view" - }, - { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "permalink": "/views/share-view" - }, - { - "id": "views/views-overview", - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "permalink": "/views/views-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-webhook-2b4.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-webhook-2b4.json deleted file mode 100644 index 0870c99e17..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-webhook-2b4.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "label": "Webhook", - "permalink": "/tags/webhook", - "allTagsPath": "/tags", - "count": 3, - "items": [ - { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - { - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "permalink": "/automation/webhook/create-webhook" - }, - { - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "permalink": "/automation/webhook/webhook-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-6ef.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-6ef.json deleted file mode 100644 index 843cb0e530..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-6ef.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "Workspace", - "permalink": "/tags/workspace", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/collaboration-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-collaboration-2f8.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-collaboration-2f8.json deleted file mode 100644 index e2f75bde1e..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspace-collaboration-2f8.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "label": "workspace collaboration", - "permalink": "/tags/workspace-collaboration", - "allTagsPath": "/tags", - "count": 1, - "items": [ - { - "id": "collaboration/overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "permalink": "/collaboration/overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspaces-5c0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspaces-5c0.json deleted file mode 100644 index c9ae5b0be1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-workspaces-5c0.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "label": "Workspaces", - "permalink": "/tags/workspaces", - "allTagsPath": "/tags", - "count": 5, - "items": [ - { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "permalink": "/workspaces/actions-on-workspace" - }, - { - "id": "workspaces/create-workspace", - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "permalink": "/workspaces/create-workspace" - }, - { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/collaboration/workspace-collaboration" - }, - { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "permalink": "/workspaces/workspace-collaboration" - }, - { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "permalink": "/workspaces/workspace-overview" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-xlsx-3b0.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-xlsx-3b0.json deleted file mode 100644 index 2b8aa7b1d1..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tag-tags-xlsx-3b0.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "label": "XLSX", - "permalink": "/tags/xlsx", - "allTagsPath": "/tags", - "count": 2, - "items": [ - { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "permalink": "/table-operations/download" - }, - { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "permalink": "/tables/import-data-into-existing-table" - } - ] -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tags-list-current-prop-15a.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tags-list-current-prop-15a.json deleted file mode 100644 index ad47b50940..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/tags-list-current-prop-15a.json +++ /dev/null @@ -1,482 +0,0 @@ -[ - { - "label": "Account Settings", - "permalink": "/tags/account-settings", - "count": 3 - }, - { - "label": "Api Tokens", - "permalink": "/tags/api-tokens", - "count": 1 - }, - { - "label": "Open Source", - "permalink": "/tags/open-source", - "count": 5 - }, - { - "label": "Profile", - "permalink": "/tags/profile", - "count": 1 - }, - { - "label": "Member", - "permalink": "/tags/member", - "count": 4 - }, - { - "label": "Webhook", - "permalink": "/tags/webhook", - "count": 3 - }, - { - "label": "Delete", - "permalink": "/tags/delete", - "count": 7 - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate", - "count": 6 - }, - { - "label": "Disable", - "permalink": "/tags/disable", - "count": 1 - }, - { - "label": "Enable", - "permalink": "/tags/enable", - "count": 1 - }, - { - "label": "Create", - "permalink": "/tags/create", - "count": 6 - }, - { - "label": "Overview", - "permalink": "/tags/overview", - "count": 12 - }, - { - "label": "Bases", - "permalink": "/tags/bases", - "count": 8 - }, - { - "label": "Rename", - "permalink": "/tags/rename", - "count": 5 - }, - { - "label": "Star", - "permalink": "/tags/star", - "count": 1 - }, - { - "label": "Relations", - "permalink": "/tags/relations", - "count": 1 - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration", - "count": 8 - }, - { - "label": "Members", - "permalink": "/tags/members", - "count": 2 - }, - { - "label": "Invite", - "permalink": "/tags/invite", - "count": 4 - }, - { - "label": "Roles", - "permalink": "/tags/roles", - "count": 3 - }, - { - "label": "Permissions", - "permalink": "/tags/permissions", - "count": 3 - }, - { - "label": "Dashboard", - "permalink": "/tags/dashboard", - "count": 1 - }, - { - "label": "Import", - "permalink": "/tags/import", - "count": 3 - }, - { - "label": "Share", - "permalink": "/tags/share", - "count": 5 - }, - { - "label": "Role", - "permalink": "/tags/role", - "count": 2 - }, - { - "label": "Workspace", - "permalink": "/tags/workspace", - "count": 1 - }, - { - "label": "Base", - "permalink": "/tags/base", - "count": 1 - }, - { - "label": "Views", - "permalink": "/tags/views", - "count": 9 - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view", - "count": 12 - }, - { - "label": "Form View", - "permalink": "/tags/form-view", - "count": 4 - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view", - "count": 10 - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view", - "count": 10 - }, - { - "label": "Workspaces", - "permalink": "/tags/workspaces", - "count": 5 - }, - { - "label": "Data Sources", - "permalink": "/tags/data-sources", - "count": 1 - }, - { - "label": "Engineering", - "permalink": "/tags/engineering", - "count": 8 - }, - { - "label": "Fields", - "permalink": "/tags/fields", - "count": 37 - }, - { - "label": "Hide", - "permalink": "/tags/hide", - "count": 1 - }, - { - "label": "Display value", - "permalink": "/tags/display-value", - "count": 2 - }, - { - "label": "Sort", - "permalink": "/tags/sort", - "count": 2 - }, - { - "label": "Field types", - "permalink": "/tags/field-types", - "count": 32 - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types", - "count": 8 - }, - { - "label": "Attachment", - "permalink": "/tags/attachment", - "count": 1 - }, - { - "label": "Barcode", - "permalink": "/tags/barcode", - "count": 1 - }, - { - "label": "Checkbox", - "permalink": "/tags/checkbox", - "count": 1 - }, - { - "label": "Geometry", - "permalink": "/tags/geometry", - "count": 1 - }, - { - "label": "JSON", - "permalink": "/tags/json", - "count": 3 - }, - { - "label": "QR code", - "permalink": "/tags/qr-code", - "count": 1 - }, - { - "label": "Rating", - "permalink": "/tags/rating", - "count": 1 - }, - { - "label": "Specific DB type", - "permalink": "/tags/specific-db-type", - "count": 1 - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time", - "count": 5 - }, - { - "label": "Formula", - "permalink": "/tags/formula", - "count": 6 - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types", - "count": 3 - }, - { - "label": "Links", - "permalink": "/tags/links", - "count": 1 - }, - { - "label": "Lookup", - "permalink": "/tags/lookup", - "count": 1 - }, - { - "label": "Rollup", - "permalink": "/tags/rollup", - "count": 1 - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types", - "count": 4 - }, - { - "label": "Currency", - "permalink": "/tags/currency", - "count": 1 - }, - { - "label": "Decimal", - "permalink": "/tags/decimal", - "count": 1 - }, - { - "label": "Number", - "permalink": "/tags/number", - "count": 1 - }, - { - "label": "Percent", - "permalink": "/tags/percent", - "count": 1 - }, - { - "label": "Select based types", - "permalink": "/tags/select-based-types", - "count": 2 - }, - { - "label": "Multi select", - "permalink": "/tags/multi-select", - "count": 1 - }, - { - "label": "Single select", - "permalink": "/tags/single-select", - "count": 1 - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types", - "count": 5 - }, - { - "label": "Email", - "permalink": "/tags/email", - "count": 1 - }, - { - "label": "Long text", - "permalink": "/tags/long-text", - "count": 1 - }, - { - "label": "Phone number", - "permalink": "/tags/phone-number", - "count": 1 - }, - { - "label": "Single line text", - "permalink": "/tags/single-line-text", - "count": 1 - }, - { - "label": "URL", - "permalink": "/tags/url", - "count": 1 - }, - { - "label": "Multi-fields editor", - "permalink": "/tags/multi-fields-editor", - "count": 1 - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks", - "count": 2 - }, - { - "label": "Primary Key", - "permalink": "/tags/primary-key", - "count": 1 - }, - { - "label": "Getting Started", - "permalink": "/tags/getting-started", - "count": 1 - }, - { - "label": "Shortcuts", - "permalink": "/tags/shortcuts", - "count": 2 - }, - { - "label": "Records", - "permalink": "/tags/records", - "count": 4 - }, - { - "label": "Edit", - "permalink": "/tags/edit", - "count": 1 - }, - { - "label": "Expand", - "permalink": "/tags/expand", - "count": 1 - }, - { - "label": "Expanded record", - "permalink": "/tags/expanded-record", - "count": 1 - }, - { - "label": "Activity feed", - "permalink": "/tags/activity-feed", - "count": 1 - }, - { - "label": "Comments", - "permalink": "/tags/comments", - "count": 1 - }, - { - "label": "Table details", - "permalink": "/tags/table-details", - "count": 1 - }, - { - "label": "Table", - "permalink": "/tags/table", - "count": 1 - }, - { - "label": "Table operations", - "permalink": "/tags/table-operations", - "count": 8 - }, - { - "label": "Download", - "permalink": "/tags/download", - "count": 1 - }, - { - "label": "CSV", - "permalink": "/tags/csv", - "count": 2 - }, - { - "label": "XLSX", - "permalink": "/tags/xlsx", - "count": 2 - }, - { - "label": "Reorder", - "permalink": "/tags/reorder", - "count": 1 - }, - { - "label": "Show/Hide", - "permalink": "/tags/show-hide", - "count": 1 - }, - { - "label": "Cover image", - "permalink": "/tags/cover-image", - "count": 1 - }, - { - "label": "Filter", - "permalink": "/tags/filter", - "count": 1 - }, - { - "label": "Group by", - "permalink": "/tags/group-by", - "count": 1 - }, - { - "label": "Row height", - "permalink": "/tags/row-height", - "count": 1 - }, - { - "label": "Search", - "permalink": "/tags/search", - "count": 1 - }, - { - "label": "Tables", - "permalink": "/tags/tables", - "count": 5 - }, - { - "label": "Excel", - "permalink": "/tags/excel", - "count": 1 - }, - { - "label": "Form", - "permalink": "/tags/form", - "count": 1 - } -] \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-0-109-7-metadata-prop-007.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-0-109-7-metadata-prop-007.json deleted file mode 100644 index 6a7da3db52..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-0-109-7-metadata-prop-007.json +++ /dev/null @@ -1,576 +0,0 @@ -{ - "pluginId": "default", - "version": "0.109.7", - "label": "0.109.7 - Old UI", - "banner": "unmaintained", - "badge": true, - "noIndex": false, - "className": "docs-version-0.109.7", - "isLast": false, - "docsSidebars": { - "tutorialSidebar": [ - { - "type": "link", - "label": "Welcome", - "href": "/0.109.7/", - "docId": "index" - }, - { - "type": "category", - "label": "Getting Started", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "link", - "label": "Installation", - "href": "/0.109.7/getting-started/installation", - "docId": "getting-started/installation" - }, - { - "type": "link", - "label": "Environment Variables", - "href": "/0.109.7/getting-started/environment-variables", - "docId": "getting-started/environment-variables" - }, - { - "type": "link", - "label": "Upgrading", - "href": "/0.109.7/getting-started/upgrading", - "docId": "getting-started/upgrading" - }, - { - "type": "link", - "label": "Demos", - "href": "/0.109.7/getting-started/demos", - "docId": "getting-started/demos" - } - ] - }, - { - "type": "category", - "label": "Product", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Dashboard", - "href": "/0.109.7/setup-and-usages/dashboard", - "docId": "setup-and-usages/dashboard" - }, - { - "type": "link", - "label": "Table Operations", - "href": "/0.109.7/setup-and-usages/table-operations", - "docId": "setup-and-usages/table-operations" - }, - { - "type": "link", - "label": "Column Operations", - "href": "/0.109.7/setup-and-usages/column-operations", - "docId": "setup-and-usages/column-operations" - }, - { - "type": "link", - "label": "Column Types", - "href": "/0.109.7/setup-and-usages/column-types", - "docId": "setup-and-usages/column-types" - }, - { - "type": "link", - "label": "Code Snippets", - "href": "/0.109.7/setup-and-usages/code-snippets", - "docId": "setup-and-usages/code-snippets" - }, - { - "type": "link", - "label": "Link To Another Record", - "href": "/0.109.7/setup-and-usages/link-to-another-record", - "docId": "setup-and-usages/link-to-another-record" - }, - { - "type": "link", - "label": "Lookup", - "href": "/0.109.7/setup-and-usages/lookup", - "docId": "setup-and-usages/lookup" - }, - { - "type": "link", - "label": "Rollup", - "href": "/0.109.7/setup-and-usages/rollup", - "docId": "setup-and-usages/rollup" - }, - { - "type": "link", - "label": "Formulas", - "href": "/0.109.7/setup-and-usages/formulas", - "docId": "setup-and-usages/formulas" - }, - { - "type": "link", - "label": "Primary Key", - "href": "/0.109.7/setup-and-usages/primary-key", - "docId": "setup-and-usages/primary-key" - }, - { - "type": "link", - "label": "Display Value", - "href": "/0.109.7/setup-and-usages/display-value", - "docId": "setup-and-usages/display-value" - }, - { - "type": "link", - "label": "Sync Schema", - "href": "/0.109.7/setup-and-usages/sync-schema", - "docId": "setup-and-usages/sync-schema" - }, - { - "type": "link", - "label": "Share Base", - "href": "/0.109.7/setup-and-usages/share-base", - "docId": "setup-and-usages/share-base" - }, - { - "type": "link", - "label": "Share View", - "href": "/0.109.7/setup-and-usages/share-view", - "docId": "setup-and-usages/share-view" - }, - { - "type": "link", - "label": "Keyboard Maneuver", - "href": "/0.109.7/setup-and-usages/keyboard-maneuver", - "docId": "setup-and-usages/keyboard-maneuver" - }, - { - "type": "link", - "label": "Views", - "href": "/0.109.7/setup-and-usages/views", - "docId": "setup-and-usages/views" - }, - { - "type": "link", - "label": "Account Settings", - "href": "/0.109.7/setup-and-usages/account-settings", - "docId": "setup-and-usages/account-settings" - }, - { - "type": "link", - "label": "Languages", - "href": "/0.109.7/setup-and-usages/languages", - "docId": "setup-and-usages/languages" - }, - { - "type": "link", - "label": "Expanded Form", - "href": "/0.109.7/setup-and-usages/expanded-form", - "docId": "setup-and-usages/expanded-form" - }, - { - "type": "link", - "label": "Import Airtable to NocoDB", - "href": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "docId": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - }, - { - "type": "link", - "label": "Usage Information", - "href": "/0.109.7/setup-and-usages/usage-information", - "docId": "setup-and-usages/usage-information" - }, - { - "type": "link", - "label": "Links", - "href": "/0.109.7/setup-and-usages/links", - "docId": "setup-and-usages/links" - }, - { - "type": "link", - "label": "Team & Auth", - "href": "/0.109.7/setup-and-usages/team-and-auth", - "docId": "setup-and-usages/team-and-auth" - }, - { - "type": "link", - "label": "Data Sources", - "href": "/0.109.7/setup-and-usages/meta-management", - "docId": "setup-and-usages/meta-management" - }, - { - "type": "link", - "label": "Audit", - "href": "/0.109.7/setup-and-usages/audit", - "docId": "setup-and-usages/audit" - }, - { - "type": "link", - "label": "Project settings", - "href": "/0.109.7/setup-and-usages/project-settings", - "docId": "setup-and-usages/project-settings" - } - ] - }, - { - "type": "category", - "label": "Developer Resources", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Accessing APIs", - "href": "/0.109.7/developer-resources/accessing-apis", - "docId": "developer-resources/accessing-apis" - }, - { - "type": "link", - "label": "REST APIs", - "href": "/0.109.7/developer-resources/rest-apis", - "docId": "developer-resources/rest-apis" - }, - { - "type": "link", - "label": "NocoDB SDK", - "href": "/0.109.7/developer-resources/sdk", - "docId": "developer-resources/sdk" - }, - { - "type": "link", - "label": "Webhooks", - "href": "/0.109.7/developer-resources/webhooks", - "docId": "developer-resources/webhooks" - }, - { - "type": "link", - "label": "Upload via API", - "href": "/0.109.7/developer-resources/upload-via-api", - "docId": "developer-resources/upload-via-api" - } - ] - }, - { - "type": "category", - "label": "Engineering", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Architecture Overview", - "href": "/0.109.7/engineering/architecture", - "docId": "engineering/architecture" - }, - { - "type": "link", - "label": "Repository structure", - "href": "/0.109.7/engineering/repository-structure", - "docId": "engineering/repository-structure" - }, - { - "type": "link", - "label": "Development Setup", - "href": "/0.109.7/engineering/development-setup", - "docId": "engineering/development-setup" - }, - { - "type": "link", - "label": "Writing Unit Tests", - "href": "/0.109.7/engineering/unit-testing", - "docId": "engineering/unit-testing" - }, - { - "type": "link", - "label": "Playwright E2E Testing", - "href": "/0.109.7/engineering/playwright", - "docId": "engineering/playwright" - }, - { - "type": "link", - "label": "Releases & Builds", - "href": "/0.109.7/engineering/builds-and-releases", - "docId": "engineering/builds-and-releases" - }, - { - "type": "link", - "label": "i18n translation", - "href": "/0.109.7/engineering/translation", - "docId": "engineering/translation" - } - ] - }, - { - "type": "link", - "label": "FAQs", - "href": "/0.109.7/FAQs", - "docId": "FAQs" - } - ] - }, - "docs": { - "developer-resources/accessing-apis": { - "id": "developer-resources/accessing-apis", - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?", - "sidebar": "tutorialSidebar" - }, - "developer-resources/rest-apis": { - "id": "developer-resources/rest-apis", - "title": "REST APIs", - "description": "NocoDB REST API Overview", - "sidebar": "tutorialSidebar" - }, - "developer-resources/sdk": { - "id": "developer-resources/sdk", - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview", - "sidebar": "tutorialSidebar" - }, - "developer-resources/upload-via-api": { - "id": "developer-resources/upload-via-api", - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "sidebar": "tutorialSidebar" - }, - "developer-resources/webhooks": { - "id": "developer-resources/webhooks", - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations", - "sidebar": "tutorialSidebar" - }, - "engineering/architecture": { - "id": "engineering/architecture", - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "sidebar": "tutorialSidebar" - }, - "engineering/builds-and-releases": { - "id": "engineering/builds-and-releases", - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "sidebar": "tutorialSidebar" - }, - "engineering/development-setup": { - "id": "engineering/development-setup", - "title": "Development Setup", - "description": "How to set-up your development environment", - "sidebar": "tutorialSidebar" - }, - "engineering/playwright": { - "id": "engineering/playwright", - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests", - "sidebar": "tutorialSidebar" - }, - "engineering/repository-structure": { - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "sidebar": "tutorialSidebar" - }, - "engineering/translation": { - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "sidebar": "tutorialSidebar" - }, - "engineering/unit-testing": { - "id": "engineering/unit-testing", - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing", - "sidebar": "tutorialSidebar" - }, - "FAQs": { - "id": "FAQs", - "title": "FAQs", - "description": "General FAQs", - "sidebar": "tutorialSidebar" - }, - "getting-started/demos": { - "id": "getting-started/demos", - "title": "Demos", - "description": "NocoDB Demos", - "sidebar": "tutorialSidebar" - }, - "getting-started/environment-variables": { - "id": "getting-started/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "sidebar": "tutorialSidebar" - }, - "getting-started/installation": { - "id": "getting-started/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "sidebar": "tutorialSidebar" - }, - "getting-started/upgrading": { - "id": "getting-started/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "sidebar": "tutorialSidebar" - }, - "index": { - "id": "index", - "title": "Welcome", - "description": "NocoDB Documentation", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/account-settings": { - "id": "setup-and-usages/account-settings", - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/audit": { - "id": "setup-and-usages/audit", - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/code-snippets": { - "id": "setup-and-usages/code-snippets", - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/column-operations": { - "id": "setup-and-usages/column-operations", - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/column-types": { - "id": "setup-and-usages/column-types", - "title": "Column Types", - "description": "NocoDB Column Types Overview", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/dashboard": { - "id": "setup-and-usages/dashboard", - "title": "Dashboard", - "description": "Accessing the Dashboard!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/display-value": { - "id": "setup-and-usages/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/expanded-form": { - "id": "setup-and-usages/expanded-form", - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/formulas": { - "id": "setup-and-usages/formulas", - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free": { - "id": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/keyboard-maneuver": { - "id": "setup-and-usages/keyboard-maneuver", - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/languages": { - "id": "setup-and-usages/languages", - "title": "Languages", - "description": "Multiple languages on Dashboard!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/link-to-another-record": { - "id": "setup-and-usages/link-to-another-record", - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/links": { - "id": "setup-and-usages/links", - "title": "Links", - "description": "Understanding Link Columns!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/lookup": { - "id": "setup-and-usages/lookup", - "title": "Lookup", - "description": "Understanding Lookup Column!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/meta-management": { - "id": "setup-and-usages/meta-management", - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/primary-key": { - "id": "setup-and-usages/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/project-settings": { - "id": "setup-and-usages/project-settings", - "title": "Project settings", - "description": "General project configuration options", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/rollup": { - "id": "setup-and-usages/rollup", - "title": "Rollup", - "description": "Understanding Rollup Column!", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/share-base": { - "id": "setup-and-usages/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/share-view": { - "id": "setup-and-usages/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/sync-schema": { - "id": "setup-and-usages/sync-schema", - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/table-operations": { - "id": "setup-and-usages/table-operations", - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/team-and-auth": { - "id": "setup-and-usages/team-and-auth", - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/usage-information": { - "id": "setup-and-usages/usage-information", - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information", - "sidebar": "tutorialSidebar" - }, - "setup-and-usages/views": { - "id": "setup-and-usages/views", - "title": "Views", - "description": "Understanding Views in NocoDB!", - "sidebar": "tutorialSidebar" - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-current-metadata-prop-751.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-current-metadata-prop-751.json deleted file mode 100644 index 568fe74186..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/version-current-metadata-prop-751.json +++ /dev/null @@ -1,1460 +0,0 @@ -{ - "pluginId": "default", - "version": "current", - "label": "Latest", - "banner": null, - "badge": true, - "noIndex": false, - "className": "docs-version-current", - "isLast": true, - "docsSidebars": { - "tutorialSidebar": [ - { - "type": "link", - "label": "Welcome", - "href": "/", - "docId": "index" - }, - { - "type": "category", - "label": "Getting Started", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "link", - "label": "Quick start", - "href": "/getting-started/quick-start", - "docId": "getting-started/quick-start" - }, - { - "type": "link", - "label": "NocoDB terminologies", - "href": "/getting-started/terminologies", - "docId": "getting-started/terminologies" - }, - { - "type": "link", - "label": "Keyboard shortcuts", - "href": "/getting-started/keyboard-shortcuts", - "docId": "getting-started/keyboard-shortcuts" - }, - { - "type": "category", - "label": "In Open Source", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "link", - "label": "Installation", - "href": "/getting-started/self-hosted/installation", - "docId": "getting-started/self-hosted/installation" - }, - { - "type": "link", - "label": "Environment variables", - "href": "/getting-started/self-hosted/environment-variables", - "docId": "getting-started/self-hosted/environment-variables" - }, - { - "type": "link", - "label": "Upgrading", - "href": "/getting-started/self-hosted/upgrading", - "docId": "getting-started/self-hosted/upgrading" - } - ] - } - ] - }, - { - "type": "category", - "label": "Workspaces", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Workspace overview", - "href": "/workspaces/workspace-overview", - "docId": "workspaces/workspace-overview" - }, - { - "type": "link", - "label": "Create workspace", - "href": "/workspaces/create-workspace", - "docId": "workspaces/create-workspace" - }, - { - "type": "link", - "label": "Workspace collaboration", - "href": "/workspaces/workspace-collaboration", - "docId": "workspaces/workspace-collaboration" - }, - { - "type": "link", - "label": "Actions on workspace", - "href": "/workspaces/actions-on-workspace", - "docId": "workspaces/actions-on-workspace" - } - ] - }, - { - "type": "category", - "label": "Bases", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Base overview", - "href": "/bases/base-overview", - "docId": "bases/base-overview" - }, - { - "type": "link", - "label": "Create base", - "href": "/bases/create-base", - "docId": "bases/create-base" - }, - { - "type": "link", - "label": "Import Airtable to NocoDB", - "href": "/bases/import-base-from-airtable", - "docId": "bases/import-base-from-airtable" - }, - { - "type": "link", - "label": "Base collaboration", - "href": "/bases/base-collaboration", - "docId": "bases/base-collaboration" - }, - { - "type": "link", - "label": "Share base", - "href": "/bases/share-base", - "docId": "bases/share-base" - }, - { - "type": "link", - "label": "Actions on base", - "href": "/bases/actions-on-base", - "docId": "bases/actions-on-base" - } - ] - }, - { - "type": "category", - "label": "Tables", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Table overview", - "href": "/tables/table-overview", - "docId": "tables/table-overview" - }, - { - "type": "link", - "label": "Create empty table", - "href": "/tables/create-table", - "docId": "tables/create-table" - }, - { - "type": "link", - "label": "Create table via import", - "href": "/tables/create-table-via-import", - "docId": "tables/create-table-via-import" - }, - { - "type": "link", - "label": "Import data into an existing table", - "href": "/tables/import-data-into-existing-table", - "docId": "tables/import-data-into-existing-table" - }, - { - "type": "link", - "label": "Actions on table", - "href": "/tables/actions-on-table", - "docId": "tables/actions-on-table" - } - ] - }, - { - "type": "category", - "label": "Table operations", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Table operations overview", - "href": "/table-operations/overview", - "docId": "table-operations/overview" - }, - { - "type": "link", - "label": "Hide & reorder fields", - "href": "/table-operations/field-operations", - "docId": "table-operations/field-operations" - }, - { - "type": "link", - "label": "Filtering records", - "href": "/table-operations/filter", - "docId": "table-operations/filter" - }, - { - "type": "link", - "label": "Sorting records", - "href": "/table-operations/sort", - "docId": "table-operations/sort" - }, - { - "type": "link", - "label": "Grouping records", - "href": "/table-operations/group-by", - "docId": "table-operations/group-by" - }, - { - "type": "link", - "label": "Row height", - "href": "/table-operations/row-height", - "docId": "table-operations/row-height" - }, - { - "type": "link", - "label": "Search", - "href": "/table-operations/search", - "docId": "table-operations/search" - }, - { - "type": "link", - "label": "Download", - "href": "/table-operations/download", - "docId": "table-operations/download" - } - ] - }, - { - "type": "category", - "label": "Table Details", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Table details overview", - "href": "/table-details/table-details-overview", - "docId": "table-details/table-details-overview" - } - ] - }, - { - "type": "category", - "label": "Fields", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Fields overview", - "href": "/fields/fields-overview", - "docId": "fields/fields-overview" - }, - { - "type": "link", - "label": "Primary key", - "href": "/fields/primary-key", - "docId": "fields/primary-key" - }, - { - "type": "link", - "label": "Display value", - "href": "/fields/display-value", - "docId": "fields/display-value" - }, - { - "type": "category", - "label": "Field types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "category", - "label": "Text based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Single line text", - "href": "/fields/field-types/text-based/single-line-text", - "docId": "fields/field-types/text-based/single-line-text" - }, - { - "type": "link", - "label": "Long text", - "href": "/fields/field-types/text-based/long-text", - "docId": "fields/field-types/text-based/long-text" - }, - { - "type": "link", - "label": "Email", - "href": "/fields/field-types/text-based/email", - "docId": "fields/field-types/text-based/email" - }, - { - "type": "link", - "label": "Phone Number", - "href": "/fields/field-types/text-based/phonenumber", - "docId": "fields/field-types/text-based/phonenumber" - }, - { - "type": "link", - "label": "URL", - "href": "/fields/field-types/text-based/url", - "docId": "fields/field-types/text-based/url" - } - ] - }, - { - "type": "category", - "label": "Numerical", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Number", - "href": "/fields/field-types/numerical/number", - "docId": "fields/field-types/numerical/number" - }, - { - "type": "link", - "label": "Decimal", - "href": "/fields/field-types/numerical/decimal", - "docId": "fields/field-types/numerical/decimal" - }, - { - "type": "link", - "label": "Percent", - "href": "/fields/field-types/numerical/percent", - "docId": "fields/field-types/numerical/percent" - }, - { - "type": "link", - "label": "Currency", - "href": "/fields/field-types/numerical/currency", - "docId": "fields/field-types/numerical/currency" - } - ] - }, - { - "type": "category", - "label": "Select based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Single Select", - "href": "/fields/field-types/select-based/single-select", - "docId": "fields/field-types/select-based/single-select" - }, - { - "type": "link", - "label": "Multi Select", - "href": "/fields/field-types/select-based/multi-select", - "docId": "fields/field-types/select-based/multi-select" - } - ] - }, - { - "type": "category", - "label": "Links based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Links", - "href": "/fields/field-types/links-based/links", - "docId": "fields/field-types/links-based/links" - }, - { - "type": "link", - "label": "LookUp", - "href": "/fields/field-types/links-based/lookup", - "docId": "fields/field-types/links-based/lookup" - }, - { - "type": "link", - "label": "Rollup", - "href": "/fields/field-types/links-based/rollup", - "docId": "fields/field-types/links-based/rollup" - } - ] - }, - { - "type": "category", - "label": "Custom types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Attachment", - "href": "/fields/field-types/custom-types/attachment", - "docId": "fields/field-types/custom-types/attachment" - }, - { - "type": "link", - "label": "Checkbox", - "href": "/fields/field-types/custom-types/checkbox", - "docId": "fields/field-types/custom-types/checkbox" - }, - { - "type": "link", - "label": "Rating", - "href": "/fields/field-types/custom-types/rating", - "docId": "fields/field-types/custom-types/rating" - }, - { - "type": "link", - "label": "QR code", - "href": "/fields/field-types/custom-types/QR-code", - "docId": "fields/field-types/custom-types/QR-code" - }, - { - "type": "link", - "label": "Barcode", - "href": "/fields/field-types/custom-types/barcode", - "docId": "fields/field-types/custom-types/barcode" - }, - { - "type": "link", - "label": "Geometry", - "href": "/fields/field-types/custom-types/geometry", - "docId": "fields/field-types/custom-types/geometry" - }, - { - "type": "link", - "label": "Specific DB type", - "href": "/fields/field-types/custom-types/specific-db-type", - "docId": "fields/field-types/custom-types/specific-db-type" - }, - { - "type": "link", - "label": "JSON", - "href": "/fields/field-types/custom-types/json", - "docId": "fields/field-types/custom-types/json" - } - ] - }, - { - "type": "category", - "label": "Formula", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Formula", - "href": "/fields/field-types/formula/formula", - "docId": "fields/field-types/formula/formula" - }, - { - "type": "link", - "label": "Numeric and Logical Operators", - "href": "/fields/field-types/formula/operators", - "docId": "fields/field-types/formula/operators" - }, - { - "type": "link", - "label": "Numeric functions", - "href": "/fields/field-types/formula/numeric-functions", - "docId": "fields/field-types/formula/numeric-functions" - }, - { - "type": "link", - "label": "String functions", - "href": "/fields/field-types/formula/string-functions", - "docId": "fields/field-types/formula/string-functions" - }, - { - "type": "link", - "label": "Date functions", - "href": "/fields/field-types/formula/date-functions", - "docId": "fields/field-types/formula/date-functions" - }, - { - "type": "link", - "label": "Conditional expressions", - "href": "/fields/field-types/formula/conditional-expressions", - "docId": "fields/field-types/formula/conditional-expressions" - } - ] - }, - { - "type": "category", - "label": "Date Time based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Date Time", - "href": "/fields/field-types/date-time-based/date-time", - "docId": "fields/field-types/date-time-based/date-time" - }, - { - "type": "link", - "label": "Date", - "href": "/fields/field-types/date-time-based/date", - "docId": "fields/field-types/date-time-based/date" - }, - { - "type": "link", - "label": "Time", - "href": "/fields/field-types/date-time-based/time", - "docId": "fields/field-types/date-time-based/time" - }, - { - "type": "link", - "label": "Duration", - "href": "/fields/field-types/date-time-based/duration", - "docId": "fields/field-types/date-time-based/duration" - } - ] - } - ] - }, - { - "type": "link", - "label": "Multi-field editor", - "href": "/fields/multi-fields-editor", - "docId": "fields/multi-fields-editor" - }, - { - "type": "link", - "label": "Actions on field", - "href": "/fields/actions-on-field", - "docId": "fields/actions-on-field" - } - ] - }, - { - "type": "category", - "label": "Records", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Records overview", - "href": "/records/records-overview", - "docId": "records/records-overview" - }, - { - "type": "link", - "label": "Create record", - "href": "/records/create-record", - "docId": "records/create-record" - }, - { - "type": "link", - "label": "Expanded record", - "href": "/records/expand-record", - "docId": "records/expand-record" - }, - { - "type": "link", - "label": "Actions on record", - "href": "/records/actions-on-record", - "docId": "records/actions-on-record" - } - ] - }, - { - "type": "category", - "label": "Views", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "View overview", - "href": "/views/views-overview", - "docId": "views/views-overview" - }, - { - "type": "link", - "label": "Create view", - "href": "/views/create-view", - "docId": "views/create-view" - }, - { - "type": "link", - "label": "Share view", - "href": "/views/share-view", - "docId": "views/share-view" - }, - { - "type": "category", - "label": "View types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Grid", - "href": "/views/view-types/grid", - "docId": "views/view-types/grid" - }, - { - "type": "link", - "label": "Gallery", - "href": "/views/view-types/gallery", - "docId": "views/view-types/gallery" - }, - { - "type": "link", - "label": "Form", - "href": "/views/view-types/form", - "docId": "views/view-types/form" - }, - { - "type": "link", - "label": "Kanban", - "href": "/views/view-types/kanban", - "docId": "views/view-types/kanban" - } - ] - }, - { - "type": "link", - "label": "Actions on view", - "href": "/views/actions-on-view", - "docId": "views/actions-on-view" - } - ] - }, - { - "type": "category", - "label": "Data sources", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Data sources overview", - "href": "/data-source/data-source-overview", - "docId": "data-source/data-source-overview" - } - ] - }, - { - "type": "category", - "label": "Roles and permissions", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Roles & permissions overview", - "href": "/roles-and-permissions/roles-permissions-overview", - "docId": "roles-and-permissions/roles-permissions-overview" - } - ] - }, - { - "type": "category", - "label": "Collaboration", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Collaboration overview", - "href": "/collaboration/collaboration-overview", - "docId": "collaboration/collaboration-overview" - }, - { - "type": "link", - "label": "Workspace collaboration", - "href": "/collaboration/workspace-collaboration", - "docId": "collaboration/workspace-collaboration" - }, - { - "type": "link", - "label": "Base collaboration", - "href": "/collaboration/base-collaboration", - "docId": "collaboration/base-collaboration" - }, - { - "type": "link", - "label": "Share base", - "href": "/collaboration/share-base", - "docId": "collaboration/share-base" - }, - { - "type": "link", - "label": "Share view", - "href": "/collaboration/share-view", - "docId": "collaboration/share-view" - }, - { - "type": "link", - "label": "In Open Source", - "href": "/collaboration/oss-specific-details", - "docId": "collaboration/oss-specific-details" - } - ] - }, - { - "type": "category", - "label": "Automation", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "category", - "label": "Webhook", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Webhook overview", - "href": "/automation/webhook/webhook-overview", - "docId": "automation/webhook/webhook-overview" - }, - { - "type": "link", - "label": "Create webhook", - "href": "/automation/webhook/create-webhook", - "docId": "automation/webhook/create-webhook" - }, - { - "type": "link", - "label": "Actions on webhook", - "href": "/automation/webhook/actions-on-webhook", - "docId": "automation/webhook/actions-on-webhook" - } - ] - } - ] - }, - { - "type": "category", - "label": "Account settings", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Profile page", - "href": "/account-settings/profile-page", - "docId": "account-settings/profile-page" - }, - { - "type": "link", - "label": "API tokens", - "href": "/account-settings/api-tokens", - "docId": "account-settings/api-tokens" - }, - { - "type": "link", - "label": "In Open Source", - "href": "/account-settings/oss-specific-details", - "docId": "account-settings/oss-specific-details" - } - ] - }, - { - "type": "category", - "label": "Engineering", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "link", - "label": "Architecture overview", - "href": "/engineering/architecture", - "docId": "engineering/architecture" - }, - { - "type": "link", - "label": "Repository structure", - "href": "/engineering/repository-structure", - "docId": "engineering/repository-structure" - }, - { - "type": "link", - "label": "Development setup", - "href": "/engineering/development-setup", - "docId": "engineering/development-setup" - }, - { - "type": "link", - "label": "Writing unit tests", - "href": "/engineering/unit-testing", - "docId": "engineering/unit-testing" - }, - { - "type": "link", - "label": "Playwright E2E testing", - "href": "/engineering/playwright", - "docId": "engineering/playwright" - }, - { - "type": "link", - "label": "Releases & builds", - "href": "/engineering/builds-and-releases", - "docId": "engineering/builds-and-releases" - }, - { - "type": "link", - "label": "i18n translation", - "href": "/engineering/translation", - "docId": "engineering/translation" - }, - { - "type": "link", - "label": "Writing docs", - "href": "/engineering/writing-docs", - "docId": "engineering/writing-docs" - } - ] - }, - { - "type": "link", - "label": "FAQs", - "href": "/FAQs", - "docId": "FAQs" - } - ] - }, - "docs": { - "account-settings/api-tokens": { - "id": "account-settings/api-tokens", - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "sidebar": "tutorialSidebar" - }, - "account-settings/oss-specific-details": { - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "sidebar": "tutorialSidebar" - }, - "account-settings/profile-page": { - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "sidebar": "tutorialSidebar" - }, - "automation/webhook/actions-on-webhook": { - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "sidebar": "tutorialSidebar" - }, - "automation/webhook/create-webhook": { - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "automation/webhook/webhook-overview": { - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "sidebar": "tutorialSidebar" - }, - "bases/actions-on-base": { - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "sidebar": "tutorialSidebar" - }, - "bases/base-collaboration": { - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "sidebar": "tutorialSidebar" - }, - "bases/base-overview": { - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "bases/create-base": { - "id": "bases/create-base", - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "bases/import-base-from-airtable": { - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "sidebar": "tutorialSidebar" - }, - "bases/share-base": { - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "sidebar": "tutorialSidebar" - }, - "collaboration/base-collaboration": { - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "sidebar": "tutorialSidebar" - }, - "collaboration/collaboration-overview": { - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "sidebar": "tutorialSidebar" - }, - "collaboration/oss-specific-details": { - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "sidebar": "tutorialSidebar" - }, - "collaboration/share-base": { - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "sidebar": "tutorialSidebar" - }, - "collaboration/share-view": { - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "sidebar": "tutorialSidebar" - }, - "collaboration/workspace-collaboration": { - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "sidebar": "tutorialSidebar" - }, - "data-source/data-source-overview": { - "id": "data-source/data-source-overview", - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "sidebar": "tutorialSidebar" - }, - "engineering/architecture": { - "id": "engineering/architecture", - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "sidebar": "tutorialSidebar" - }, - "engineering/builds-and-releases": { - "id": "engineering/builds-and-releases", - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "sidebar": "tutorialSidebar" - }, - "engineering/development-setup": { - "id": "engineering/development-setup", - "title": "Development setup", - "description": "How to set-up your development environment", - "sidebar": "tutorialSidebar" - }, - "engineering/playwright": { - "id": "engineering/playwright", - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "sidebar": "tutorialSidebar" - }, - "engineering/repository-structure": { - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "sidebar": "tutorialSidebar" - }, - "engineering/translation": { - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "sidebar": "tutorialSidebar" - }, - "engineering/unit-testing": { - "id": "engineering/unit-testing", - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "sidebar": "tutorialSidebar" - }, - "engineering/writing-docs": { - "id": "engineering/writing-docs", - "title": "Writing docs", - "description": "Overview to writing docs", - "sidebar": "tutorialSidebar" - }, - "FAQs": { - "id": "FAQs", - "title": "FAQs", - "description": "General FAQs", - "sidebar": "tutorialSidebar" - }, - "fields/actions-on-field": { - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "sidebar": "tutorialSidebar" - }, - "fields/display-value": { - "id": "fields/display-value", - "title": "Display value", - "description": "Understanding Display Value in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/attachment": { - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/barcode": { - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/checkbox": { - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/geometry": { - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/json": { - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/QR-code": { - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/rating": { - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/custom-types/specific-db-type": { - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/date-time-based/date": { - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/date-time-based/date-time": { - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/date-time-based/duration": { - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/date-time-based/time": { - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/conditional-expressions": { - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/date-functions": { - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/formula": { - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/numeric-functions": { - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/operators": { - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/formula/string-functions": { - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/links-based/links": { - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/links-based/lookup": { - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/links-based/rollup": { - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/numerical/currency": { - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/numerical/decimal": { - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/numerical/number": { - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/numerical/percent": { - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/select-based/multi-select": { - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/select-based/single-select": { - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/text-based/email": { - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/text-based/long-text": { - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/text-based/phonenumber": { - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/text-based/single-line-text": { - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "sidebar": "tutorialSidebar" - }, - "fields/field-types/text-based/url": { - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "sidebar": "tutorialSidebar" - }, - "fields/fields-overview": { - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "sidebar": "tutorialSidebar" - }, - "fields/multi-fields-editor": { - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "fields/primary-key": { - "id": "fields/primary-key", - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "getting-started/keyboard-shortcuts": { - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "sidebar": "tutorialSidebar" - }, - "getting-started/quick-start": { - "id": "getting-started/quick-start", - "title": "Quick start", - "description": "NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs.", - "sidebar": "tutorialSidebar" - }, - "getting-started/self-hosted/environment-variables": { - "id": "getting-started/self-hosted/environment-variables", - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "sidebar": "tutorialSidebar" - }, - "getting-started/self-hosted/installation": { - "id": "getting-started/self-hosted/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "sidebar": "tutorialSidebar" - }, - "getting-started/self-hosted/upgrading": { - "id": "getting-started/self-hosted/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "sidebar": "tutorialSidebar" - }, - "getting-started/terminologies": { - "id": "getting-started/terminologies", - "title": "NocoDB terminologies", - "description": "To maximize your use of NocoDB, it's beneficial to become familiar with some common terms.", - "sidebar": "tutorialSidebar" - }, - "index": { - "id": "index", - "title": "Welcome", - "description": "NocoDB Documentation", - "sidebar": "tutorialSidebar" - }, - "records/actions-on-record": { - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "sidebar": "tutorialSidebar" - }, - "records/create-record": { - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "records/expand-record": { - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "sidebar": "tutorialSidebar" - }, - "records/records-overview": { - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "roles-and-permissions/roles-permissions-overview": { - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "table-details/table-details-overview": { - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "sidebar": "tutorialSidebar" - }, - "table-operations/download": { - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "sidebar": "tutorialSidebar" - }, - "table-operations/field-operations": { - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "table-operations/filter": { - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "sidebar": "tutorialSidebar" - }, - "table-operations/group-by": { - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "sidebar": "tutorialSidebar" - }, - "table-operations/overview": { - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "table-operations/row-height": { - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "sidebar": "tutorialSidebar" - }, - "table-operations/search": { - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "sidebar": "tutorialSidebar" - }, - "table-operations/sort": { - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "sidebar": "tutorialSidebar" - }, - "tables/actions-on-table": { - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "tables/create-table": { - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "tables/create-table-via-import": { - "id": "tables/create-table-via-import", - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "sidebar": "tutorialSidebar" - }, - "tables/import-data-into-existing-table": { - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "tables/table-overview": { - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/actions-on-view": { - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/create-view": { - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/share-view": { - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "sidebar": "tutorialSidebar" - }, - "views/view-types/form": { - "id": "views/view-types/form", - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/view-types/gallery": { - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "sidebar": "tutorialSidebar" - }, - "views/view-types/grid": { - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/view-types/kanban": { - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "sidebar": "tutorialSidebar" - }, - "views/views-overview": { - "id": "views/views-overview", - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "sidebar": "tutorialSidebar" - }, - "workspaces/actions-on-workspace": { - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "sidebar": "tutorialSidebar" - }, - "workspaces/create-workspace": { - "id": "workspaces/create-workspace", - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "sidebar": "tutorialSidebar" - }, - "workspaces/workspace-collaboration": { - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "sidebar": "tutorialSidebar" - }, - "workspaces/workspace-overview": { - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "sidebar": "tutorialSidebar" - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json deleted file mode 100644 index b141f718aa..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "docusaurus-plugin-content-pages", - "id": "default" -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/docusaurus-debug-all-content-673.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/docusaurus-debug-all-content-673.json deleted file mode 100644 index 87814aeff9..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/docusaurus-debug-all-content-673.json +++ /dev/null @@ -1,7374 +0,0 @@ -{ - "docusaurus-plugin-content-docs": { - "default": { - "loadedVersions": [ - { - "versionName": "current", - "label": "Latest", - "banner": null, - "badge": true, - "noIndex": false, - "className": "docs-version-current", - "path": "/", - "tagsPath": "/tags", - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs", - "editUrlLocalized": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/i18n/en/docusaurus-plugin-content-docs/current", - "isLast": true, - "routePriority": -1, - "sidebarFilePath": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/sidebars.js", - "contentPath": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/docs", - "contentPathLocalized": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/i18n/en/docusaurus-plugin-content-docs/current", - "docs": [ - { - "unversionedId": "account-settings/api-tokens", - "id": "account-settings/api-tokens", - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "source": "@site/docs/140.account-settings/020.api-tokens.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/api-tokens", - "permalink": "/account-settings/api-tokens", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/020.api-tokens.md", - "tags": [ - { - "label": "Account Settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Api Tokens", - "permalink": "/tags/api-tokens" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "API tokens", - "description": "This article explains how to create and delete API Tokens.", - "tags": [ - "Account Settings", - "Api Tokens" - ], - "keywords": [ - "api tokens", - "create api token", - "delete api token" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - }, - "next": { - "title": "In Open Source", - "permalink": "/account-settings/oss-specific-details" - } - }, - { - "unversionedId": "account-settings/oss-specific-details", - "id": "account-settings/oss-specific-details", - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "source": "@site/docs/140.account-settings/030.oss-specific-details.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/oss-specific-details", - "permalink": "/account-settings/oss-specific-details", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/030.oss-specific-details.md", - "tags": [ - { - "label": "Account settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "In Open Source", - "description": "This article explains Account settings specifics in Open source NocoDB.", - "tags": [ - "Account settings", - "Open Source" - ], - "keywords": [ - "Account settings", - "Open Source" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "API tokens", - "permalink": "/account-settings/api-tokens" - }, - "next": { - "title": "Architecture overview", - "permalink": "/engineering/architecture" - } - }, - { - "unversionedId": "account-settings/profile-page", - "id": "account-settings/profile-page", - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "source": "@site/docs/140.account-settings/010.profile-page.md", - "sourceDirName": "140.account-settings", - "slug": "/account-settings/profile-page", - "permalink": "/account-settings/profile-page", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/010.profile-page.md", - "tags": [ - { - "label": "Account Settings", - "permalink": "/tags/account-settings" - }, - { - "label": "Profile", - "permalink": "/tags/profile" - }, - { - "label": "Member", - "permalink": "/tags/member" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Profile page", - "description": "This article explains how to manage your profile page.", - "tags": [ - "Account Settings", - "Profile", - "Member" - ], - "keywords": [ - "Profile page", - "Profile settings", - "Profile name", - "Profile picture", - "Profile management", - "Profile customization", - "Profile information", - "Profile details", - "Profile preferences", - "Profile options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - }, - "next": { - "title": "API tokens", - "permalink": "/account-settings/api-tokens" - } - }, - { - "unversionedId": "automation/webhook/actions-on-webhook", - "id": "automation/webhook/actions-on-webhook", - "title": "Actions on webhook", - "description": "Enable/Disable Webhook", - "source": "@site/docs/130.automation/020.webhook/040.actions-on-webhook.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/actions-on-webhook", - "permalink": "/automation/webhook/actions-on-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/040.actions-on-webhook.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Disable", - "permalink": "/tags/disable" - }, - { - "label": "Enable", - "permalink": "/tags/enable" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Actions on webhook", - "tags": [ - "Webhook", - "Delete", - "Duplicate", - "Disable", - "Enable" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - }, - "next": { - "title": "Profile page", - "permalink": "/account-settings/profile-page" - } - }, - { - "unversionedId": "automation/webhook/create-webhook", - "id": "automation/webhook/create-webhook", - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "source": "@site/docs/130.automation/020.webhook/020.create-webhook.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/create-webhook", - "permalink": "/automation/webhook/create-webhook", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/020.create-webhook.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create webhook", - "description": "Learn how to create a webhook in NocoDB.", - "tags": [ - "Webhook", - "Create" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - }, - "next": { - "title": "Actions on webhook", - "permalink": "/automation/webhook/actions-on-webhook" - } - }, - { - "unversionedId": "automation/webhook/webhook-overview", - "id": "automation/webhook/webhook-overview", - "title": "Webhook overview", - "description": "You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.", - "source": "@site/docs/130.automation/020.webhook/010.webhook-overview.md", - "sourceDirName": "130.automation/020.webhook", - "slug": "/automation/webhook/webhook-overview", - "permalink": "/automation/webhook/webhook-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/010.webhook-overview.md", - "tags": [ - { - "label": "Webhook", - "permalink": "/tags/webhook" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Webhook overview", - "tags": [ - "Webhook", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "In Open Source", - "permalink": "/collaboration/oss-specific-details" - }, - "next": { - "title": "Create webhook", - "permalink": "/automation/webhook/create-webhook" - } - }, - { - "unversionedId": "bases/actions-on-base", - "id": "bases/actions-on-base", - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "source": "@site/docs/040.bases/070.actions-on-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/actions-on-base", - "permalink": "/bases/actions-on-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/070.actions-on-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Star", - "permalink": "/tags/star" - }, - { - "label": "Relations", - "permalink": "/tags/relations" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Actions on base", - "description": "Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.", - "tags": [ - "Bases", - "Rename", - "Duplicate", - "Delete", - "Star", - "Relations" - ], - "keywords": [ - "NocoDB base", - "base rename", - "base duplicate", - "base delete", - "base star", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share base", - "permalink": "/bases/share-base" - }, - "next": { - "title": "Table overview", - "permalink": "/tables/table-overview" - } - }, - { - "unversionedId": "bases/base-collaboration", - "id": "bases/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "source": "@site/docs/040.bases/050.base-collaboration.md", - "sourceDirName": "040.bases", - "slug": "/bases/base-collaboration", - "permalink": "/bases/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/050.base-collaboration.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Members", - "permalink": "/tags/members" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "tags": [ - "Bases", - "Collaboration", - "Members", - "Invite", - "Roles", - "Permissions" - ], - "keywords": [ - "NocoDB base", - "base collaboration", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - }, - "next": { - "title": "Share base", - "permalink": "/bases/share-base" - } - }, - { - "unversionedId": "bases/base-overview", - "id": "bases/base-overview", - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "source": "@site/docs/040.bases/010.base-overview.md", - "sourceDirName": "040.bases", - "slug": "/bases/base-overview", - "permalink": "/bases/base-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/010.base-overview.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - }, - { - "label": "Dashboard", - "permalink": "/tags/dashboard" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Base overview", - "description": "This article explains the concept of bases in NocoDB.", - "tags": [ - "Bases", - "Overview", - "Dashboard" - ], - "keywords": [ - "NocoDB base", - "base overview", - "base dashboard", - "base collaboration", - "base actions", - "delete base", - "base management", - "base administration", - "base settings", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on workspace", - "permalink": "/workspaces/actions-on-workspace" - }, - "next": { - "title": "Create base", - "permalink": "/bases/create-base" - } - }, - { - "unversionedId": "bases/create-base", - "id": "bases/create-base", - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "source": "@site/docs/040.bases/020.create-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/create-base", - "permalink": "/bases/create-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/020.create-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create base", - "description": "Learn how to create a base in NocoDB.", - "tags": [ - "Bases", - "Create" - ], - "keywords": [ - "NocoDB base", - "create base", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base overview", - "permalink": "/bases/base-overview" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/bases/import-base-from-airtable" - } - }, - { - "unversionedId": "bases/import-base-from-airtable", - "id": "bases/import-base-from-airtable", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/docs/040.bases/040.import-base-from-airtable.md", - "sourceDirName": "040.bases", - "slug": "/bases/import-base-from-airtable", - "permalink": "/bases/import-base-from-airtable", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/040.import-base-from-airtable.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Import", - "permalink": "/tags/import" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "tags": [ - "Bases", - "Import" - ], - "keywords": [ - "NocoDB", - "Airtable", - "import Airtable", - "Airtable to NocoDB", - "Airtable to MySQL", - "Airtable to Postgres", - "Airtable to SQLite", - "Airtable to SQL server" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create base", - "permalink": "/bases/create-base" - }, - "next": { - "title": "Base collaboration", - "permalink": "/bases/base-collaboration" - } - }, - { - "unversionedId": "bases/share-base", - "id": "bases/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/040.bases/060.share-base.md", - "sourceDirName": "040.bases", - "slug": "/bases/share-base", - "permalink": "/bases/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/060.share-base.md", - "tags": [ - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "tags": [ - "Bases", - "Share", - "Collaboration" - ], - "keywords": [ - "NocoDB base", - "share base", - "base collaboration", - "base actions", - "base settings" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base collaboration", - "permalink": "/bases/base-collaboration" - }, - "next": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - } - }, - { - "unversionedId": "collaboration/base-collaboration", - "id": "collaboration/base-collaboration", - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "source": "@site/docs/120.collaboration/020.base-collaboration.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/base-collaboration", - "permalink": "/collaboration/base-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/020.base-collaboration.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Role", - "permalink": "/tags/role" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Base collaboration", - "description": "Invite team members to work on a base", - "tags": [ - "Collaboration", - "Bases", - "Member", - "Invite", - "Role" - ], - "keywords": [ - "NocoDB base", - "base collaboration", - "base context menu", - "base owner", - "base collaboration", - "base actions", - "base settings", - "base administration", - "base organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - }, - "next": { - "title": "Share base", - "permalink": "/collaboration/share-base" - } - }, - { - "unversionedId": "collaboration/collaboration-overview", - "id": "collaboration/collaboration-overview", - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "source": "@site/docs/120.collaboration/010.collaboration-overview.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/collaboration-overview", - "permalink": "/collaboration/collaboration-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.collaboration-overview.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Workspace", - "permalink": "/tags/workspace" - }, - { - "label": "Base", - "permalink": "/tags/base" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Collaboration overview", - "description": "This article explains various collaboration features that NocoDB offers.", - "tags": [ - "Collaboration", - "Workspace", - "Base", - "Share", - "Member", - "Overview" - ], - "keywords": [ - "Collaboration overview", - "Workspace collaboration", - "Base collaboration", - "Share base", - "Share view", - "Team collaboration", - "Workspace management", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Roles & permissions overview", - "permalink": "/roles-and-permissions/roles-permissions-overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/collaboration/workspace-collaboration" - } - }, - { - "unversionedId": "collaboration/oss-specific-details", - "id": "collaboration/oss-specific-details", - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "source": "@site/docs/120.collaboration/050.oss-specific-details.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/oss-specific-details", - "permalink": "/collaboration/oss-specific-details", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/050.oss-specific-details.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "In Open Source", - "description": "This article explains specifics of User management in OSS.", - "tags": [ - "Collaboration", - "Open Source" - ], - "keywords": [ - "Collaboration", - "Open Source", - "User management", - "User permissions", - "User roles" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share view", - "permalink": "/collaboration/share-view" - }, - "next": { - "title": "Webhook overview", - "permalink": "/automation/webhook/webhook-overview" - } - }, - { - "unversionedId": "collaboration/share-base", - "id": "collaboration/share-base", - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/docs/120.collaboration/030.share-base.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/share-base", - "permalink": "/collaboration/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/030.share-base.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Bases", - "permalink": "/tags/bases" - }, - { - "label": "Share", - "permalink": "/tags/share" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Share base", - "description": "Procedures to share a base & generating embedded iframe", - "tags": [ - "Collaboration", - "Bases", - "Share" - ], - "keywords": [ - "NocoDB base", - "share base", - "base collaboration", - "base actions", - "base settings" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Base collaboration", - "permalink": "/collaboration/base-collaboration" - }, - "next": { - "title": "Share view", - "permalink": "/collaboration/share-view" - } - }, - { - "unversionedId": "collaboration/share-view", - "id": "collaboration/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "source": "@site/docs/120.collaboration/040.share-view.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/share-view", - "permalink": "/collaboration/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/040.share-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Share view", - "description": "Procedures to share a view", - "tags": [ - "Views", - "Share", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share base", - "permalink": "/collaboration/share-base" - }, - "next": { - "title": "In Open Source", - "permalink": "/collaboration/oss-specific-details" - } - }, - { - "unversionedId": "collaboration/workspace-collaboration", - "id": "collaboration/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "source": "@site/docs/120.collaboration/010.workspace-collaboration.md", - "sourceDirName": "120.collaboration", - "slug": "/collaboration/workspace-collaboration", - "permalink": "/collaboration/workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.workspace-collaboration.md", - "tags": [ - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Member", - "permalink": "/tags/member" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Role", - "permalink": "/tags/role" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "tags": [ - "Collaboration", - "Workspaces", - "Member", - "Invite", - "Role" - ], - "keywords": [ - "Workspace configuration", - "Invite members", - "Member roles", - "Access permissions", - "Displaying workspace members", - "Modifying member roles", - "Removing workspace members", - "Workspace collaboration", - "Team collaboration", - "Access control", - "Role-based permissions", - "Workspace management", - "User roles", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Collaboration overview", - "permalink": "/collaboration/collaboration-overview" - }, - "next": { - "title": "Base collaboration", - "permalink": "/collaboration/base-collaboration" - } - }, - { - "unversionedId": "data-source/data-source-overview", - "id": "data-source/data-source-overview", - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/docs/100.data-source/010.data-source-overview.md", - "sourceDirName": "100.data-source", - "slug": "/data-source/data-source-overview", - "permalink": "/data-source/data-source-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.data-source/010.data-source-overview.md", - "tags": [ - { - "label": "Data Sources", - "permalink": "/tags/data-sources" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Data sources overview", - "description": "NocoDB Data-Source sync, access control & re-config", - "tags": [ - "Data Sources", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - }, - "next": { - "title": "Roles & permissions overview", - "permalink": "/roles-and-permissions/roles-permissions-overview" - } - }, - { - "unversionedId": "engineering/architecture", - "id": "engineering/architecture", - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/docs/150.engineering/010.architecture.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/architecture", - "permalink": "/engineering/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/010.architecture.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Architecture overview", - "description": "Simple overview of NocoDB architecture", - "tags": [ - "Engineering" - ], - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "In Open Source", - "permalink": "/account-settings/oss-specific-details" - }, - "next": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - } - }, - { - "unversionedId": "engineering/builds-and-releases", - "id": "engineering/builds-and-releases", - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "source": "@site/docs/150.engineering/060.builds-and-releases.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/builds-and-releases", - "permalink": "/engineering/builds-and-releases", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/060.builds-and-releases.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Releases & builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Playwright E2E testing", - "permalink": "/engineering/playwright" - }, - "next": { - "title": "i18n translation", - "permalink": "/engineering/translation" - } - }, - { - "unversionedId": "engineering/development-setup", - "id": "engineering/development-setup", - "title": "Development setup", - "description": "How to set-up your development environment", - "source": "@site/docs/150.engineering/030.development-setup.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/development-setup", - "permalink": "/engineering/development-setup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/030.development-setup.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Development setup", - "description": "How to set-up your development environment", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Repository structure", - "permalink": "/engineering/repository-structure" - }, - "next": { - "title": "Writing unit tests", - "permalink": "/engineering/unit-testing" - } - }, - { - "unversionedId": "engineering/playwright", - "id": "engineering/playwright", - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "source": "@site/docs/150.engineering/050.playwright.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/playwright", - "permalink": "/engineering/playwright", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/050.playwright.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Playwright E2E testing", - "description": "Overview to playwright based e2e tests", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing unit tests", - "permalink": "/engineering/unit-testing" - }, - "next": { - "title": "Releases & builds", - "permalink": "/engineering/builds-and-releases" - } - }, - { - "unversionedId": "engineering/repository-structure", - "id": "engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "source": "@site/docs/150.engineering/020.repository-structure.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/repository-structure", - "permalink": "/engineering/repository-structure", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/020.repository-structure.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Repository structure", - "description": "Repository Structure", - "tags": [ - "Engineering" - ], - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Architecture overview", - "permalink": "/engineering/architecture" - }, - "next": { - "title": "Development setup", - "permalink": "/engineering/development-setup" - } - }, - { - "unversionedId": "engineering/translation", - "id": "engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "source": "@site/docs/150.engineering/070.translation.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/translation", - "permalink": "/engineering/translation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/070.translation.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Releases & builds", - "permalink": "/engineering/builds-and-releases" - }, - "next": { - "title": "Writing docs", - "permalink": "/engineering/writing-docs" - } - }, - { - "unversionedId": "engineering/unit-testing", - "id": "engineering/unit-testing", - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "source": "@site/docs/150.engineering/040.unit-testing.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/unit-testing", - "permalink": "/engineering/unit-testing", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/040.unit-testing.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Writing unit tests", - "description": "Overview to Unit Testing", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Development setup", - "permalink": "/engineering/development-setup" - }, - "next": { - "title": "Playwright E2E testing", - "permalink": "/engineering/playwright" - } - }, - { - "unversionedId": "engineering/writing-docs", - "id": "engineering/writing-docs", - "title": "Writing docs", - "description": "Overview to writing docs", - "source": "@site/docs/150.engineering/080.writing-docs.md", - "sourceDirName": "150.engineering", - "slug": "/engineering/writing-docs", - "permalink": "/engineering/writing-docs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/080.writing-docs.md", - "tags": [ - { - "label": "Engineering", - "permalink": "/tags/engineering" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Writing docs", - "description": "Overview to writing docs", - "tags": [ - "Engineering" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "i18n translation", - "permalink": "/engineering/translation" - }, - "next": { - "title": "FAQs", - "permalink": "/FAQs" - } - }, - { - "unversionedId": "FAQs", - "id": "FAQs", - "title": "FAQs", - "description": "General FAQs", - "source": "@site/docs/990.FAQs.md", - "sourceDirName": ".", - "slug": "/FAQs", - "permalink": "/FAQs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/990.FAQs.md", - "tags": [], - "version": "current", - "sidebarPosition": 990, - "frontMatter": { - "title": "FAQs", - "description": "General FAQs" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing docs", - "permalink": "/engineering/writing-docs" - } - }, - { - "unversionedId": "fields/actions-on-field", - "id": "fields/actions-on-field", - "title": "Actions on field", - "description": "Fields context menu", - "source": "@site/docs/070.fields/060.actions-on-field.md", - "sourceDirName": "070.fields", - "slug": "/fields/actions-on-field", - "permalink": "/fields/actions-on-field", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/060.actions-on-field.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Hide", - "permalink": "/tags/hide" - }, - { - "label": "Display value", - "permalink": "/tags/display-value" - }, - { - "label": "Sort", - "permalink": "/tags/sort" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on field", - "tags": [ - "Fields", - "Rename", - "Delete", - "Duplicate", - "Hide", - "Display value", - "Sort" - ], - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi-field editor", - "permalink": "/fields/multi-fields-editor" - }, - "next": { - "title": "Records overview", - "permalink": "/records/records-overview" - } - }, - { - "unversionedId": "fields/display-value", - "id": "fields/display-value", - "title": "Display value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/docs/070.fields/030.display-value.md", - "sourceDirName": "070.fields", - "slug": "/fields/display-value", - "permalink": "/fields/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.display-value.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Display Value", - "permalink": "/tags/display-value" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Display value", - "tags": [ - "Fields", - "Display Value" - ], - "description": "Understanding Display Value in NocoDB!", - "keywords": [ - "NocoDB display value", - "display value", - "display value in nocoDB", - "display value in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary key", - "permalink": "/fields/primary-key" - }, - "next": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - } - }, - { - "unversionedId": "fields/field-types/custom-types/attachment", - "id": "fields/field-types/custom-types/attachment", - "title": "Attachment", - "description": "Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/attachment", - "permalink": "/fields/field-types/custom-types/attachment", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/010.attachment.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Attachment", - "permalink": "/tags/attachment" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Attachment", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Attachment" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - }, - "next": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - } - }, - { - "unversionedId": "fields/field-types/custom-types/barcode", - "id": "fields/field-types/custom-types/barcode", - "title": "Barcode", - "description": "Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/barcode", - "permalink": "/fields/field-types/custom-types/barcode", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/050.barcode.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Barcode", - "permalink": "/tags/barcode" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Barcode", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Barcode" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - }, - "next": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - } - }, - { - "unversionedId": "fields/field-types/custom-types/checkbox", - "id": "fields/field-types/custom-types/checkbox", - "title": "Checkbox", - "description": "The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/checkbox", - "permalink": "/fields/field-types/custom-types/checkbox", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Checkbox", - "permalink": "/tags/checkbox" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Checkbox", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Checkbox" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - }, - "next": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - } - }, - { - "unversionedId": "fields/field-types/custom-types/geometry", - "id": "fields/field-types/custom-types/geometry", - "title": "Geometry", - "description": "Create a geometry field", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/geometry", - "permalink": "/fields/field-types/custom-types/geometry", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/060.geometry.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Geometry", - "permalink": "/tags/geometry" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Geometry", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Geometry" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - }, - "next": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - } - }, - { - "unversionedId": "fields/field-types/custom-types/json", - "id": "fields/field-types/custom-types/json", - "title": "JSON", - "description": "JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/080.json.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/json", - "permalink": "/fields/field-types/custom-types/json", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/080.json.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "JSON", - "permalink": "/tags/json" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "JSON", - "tags": [ - "Fields", - "Field types", - "Custom types", - "JSON" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Specific DB type", - "permalink": "/fields/field-types/custom-types/specific-db-type" - }, - "next": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - } - }, - { - "unversionedId": "fields/field-types/custom-types/QR-code", - "id": "fields/field-types/custom-types/QR-code", - "title": "QR code", - "description": "QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/QR-code", - "permalink": "/fields/field-types/custom-types/QR-code", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "QR code", - "permalink": "/tags/qr-code" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "QR code", - "tags": [ - "Fields", - "Field types", - "Custom types", - "QR code" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rating", - "permalink": "/fields/field-types/custom-types/rating" - }, - "next": { - "title": "Barcode", - "permalink": "/fields/field-types/custom-types/barcode" - } - }, - { - "unversionedId": "fields/field-types/custom-types/rating", - "id": "fields/field-types/custom-types/rating", - "title": "Rating", - "description": "The", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/rating", - "permalink": "/fields/field-types/custom-types/rating", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/030.rating.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Rating", - "permalink": "/tags/rating" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rating", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Rating" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Checkbox", - "permalink": "/fields/field-types/custom-types/checkbox" - }, - "next": { - "title": "QR code", - "permalink": "/fields/field-types/custom-types/QR-code" - } - }, - { - "unversionedId": "fields/field-types/custom-types/specific-db-type", - "id": "fields/field-types/custom-types/specific-db-type", - "title": "Specific DB type", - "description": "Create a Specific DB Type field", - "source": "@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md", - "sourceDirName": "070.fields/040.field-types/050.custom-types", - "slug": "/fields/field-types/custom-types/specific-db-type", - "permalink": "/fields/field-types/custom-types/specific-db-type", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Custom types", - "permalink": "/tags/custom-types" - }, - { - "label": "Specific DB type", - "permalink": "/tags/specific-db-type" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Specific DB type", - "tags": [ - "Fields", - "Field types", - "Custom types", - "Specific DB type" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Geometry", - "permalink": "/fields/field-types/custom-types/geometry" - }, - "next": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - } - }, - { - "unversionedId": "fields/field-types/date-time-based/date", - "id": "fields/field-types/date-time-based/date", - "title": "Date", - "description": "Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date", - "permalink": "/fields/field-types/date-time-based/date", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/020.date.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Date", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - }, - "next": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - } - }, - { - "unversionedId": "fields/field-types/date-time-based/date-time", - "id": "fields/field-types/date-time-based/date-time", - "title": "Date Time", - "description": "Date Time field type is used to store both date and time values in a single field.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/date-time", - "permalink": "/fields/field-types/date-time-based/date-time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Date Time", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - }, - "next": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - } - }, - { - "unversionedId": "fields/field-types/date-time-based/duration", - "id": "fields/field-types/date-time-based/duration", - "title": "Duration", - "description": "Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/duration", - "permalink": "/fields/field-types/date-time-based/duration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/040.duration.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Duration", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Time", - "permalink": "/fields/field-types/date-time-based/time" - }, - "next": { - "title": "Multi-field editor", - "permalink": "/fields/multi-fields-editor" - } - }, - { - "unversionedId": "fields/field-types/date-time-based/time", - "id": "fields/field-types/date-time-based/time", - "title": "Time", - "description": "Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.", - "source": "@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md", - "sourceDirName": "070.fields/040.field-types/070.date-time-based", - "slug": "/fields/field-types/date-time-based/time", - "permalink": "/fields/field-types/date-time-based/time", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/030.time.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Time", - "tags": [ - "Fields", - "Field types", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date", - "permalink": "/fields/field-types/date-time-based/date" - }, - "next": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - } - }, - { - "unversionedId": "fields/field-types/formula/conditional-expressions", - "id": "fields/field-types/formula/conditional-expressions", - "title": "Conditional expressions", - "description": "Conditional expressions", - "source": "@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/conditional-expressions", - "permalink": "/fields/field-types/formula/conditional-expressions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Conditional expressions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - }, - "next": { - "title": "Date Time", - "permalink": "/fields/field-types/date-time-based/date-time" - } - }, - { - "unversionedId": "fields/field-types/formula/date-functions", - "id": "fields/field-types/formula/date-functions", - "title": "Date functions", - "description": "| Name | Syntax | Sample | Output | Remark |", - "source": "@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/date-functions", - "permalink": "/fields/field-types/formula/date-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/040.date-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - }, - { - "label": "Date & Time", - "permalink": "/tags/date-time" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Date functions", - "tags": [ - "Fields", - "Field types", - "Formula", - "Date & Time" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - }, - "next": { - "title": "Conditional expressions", - "permalink": "/fields/field-types/formula/conditional-expressions" - } - }, - { - "unversionedId": "fields/field-types/formula/formula", - "id": "fields/field-types/formula/formula", - "title": "Formula", - "description": "Create a formula field", - "source": "@site/docs/070.fields/040.field-types/060.formula/010.formula.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/formula", - "permalink": "/fields/field-types/formula/formula", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/010.formula.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Formula", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "JSON", - "permalink": "/fields/field-types/custom-types/json" - }, - "next": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - } - }, - { - "unversionedId": "fields/field-types/formula/numeric-functions", - "id": "fields/field-types/formula/numeric-functions", - "title": "Numeric functions", - "description": "Numeric functions", - "source": "@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/numeric-functions", - "permalink": "/fields/field-types/formula/numeric-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Numeric functions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric and Logical Operators", - "permalink": "/fields/field-types/formula/operators" - }, - "next": { - "title": "String functions", - "permalink": "/fields/field-types/formula/string-functions" - } - }, - { - "unversionedId": "fields/field-types/formula/operators", - "id": "fields/field-types/formula/operators", - "title": "Numeric and Logical Operators", - "description": "Numeric operators", - "source": "@site/docs/070.fields/040.field-types/060.formula/015.operators.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/operators", - "permalink": "/fields/field-types/formula/operators", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/015.operators.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 15, - "frontMatter": { - "title": "Numeric and Logical Operators", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formula", - "permalink": "/fields/field-types/formula/formula" - }, - "next": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - } - }, - { - "unversionedId": "fields/field-types/formula/string-functions", - "id": "fields/field-types/formula/string-functions", - "title": "String functions", - "description": "String functions", - "source": "@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md", - "sourceDirName": "070.fields/040.field-types/060.formula", - "slug": "/fields/field-types/formula/string-functions", - "permalink": "/fields/field-types/formula/string-functions", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/030.string-functions.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Formula", - "permalink": "/tags/formula" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "String functions", - "tags": [ - "Fields", - "Field types", - "Formula" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Numeric functions", - "permalink": "/fields/field-types/formula/numeric-functions" - }, - "next": { - "title": "Date functions", - "permalink": "/fields/field-types/formula/date-functions" - } - }, - { - "unversionedId": "fields/field-types/links-based/links", - "id": "fields/field-types/links-based/links", - "title": "Links", - "description": "Links field type is used to establish relationship between tables & create links to other records.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/010.links.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/links", - "permalink": "/fields/field-types/links-based/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/010.links.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Links", - "permalink": "/tags/links" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Links", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Links" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - }, - "next": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - } - }, - { - "unversionedId": "fields/field-types/links-based/lookup", - "id": "fields/field-types/links-based/lookup", - "title": "LookUp", - "description": "Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/lookup", - "permalink": "/fields/field-types/links-based/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/020.lookup.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Lookup", - "permalink": "/tags/lookup" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "LookUp", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Lookup" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - }, - "next": { - "title": "Rollup", - "permalink": "/fields/field-types/links-based/rollup" - } - }, - { - "unversionedId": "fields/field-types/links-based/rollup", - "id": "fields/field-types/links-based/rollup", - "title": "Rollup", - "description": "Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.", - "source": "@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md", - "sourceDirName": "070.fields/040.field-types/040.links-based", - "slug": "/fields/field-types/links-based/rollup", - "permalink": "/fields/field-types/links-based/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/030.rollup.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Links based types", - "permalink": "/tags/links-based-types" - }, - { - "label": "Rollup", - "permalink": "/tags/rollup" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Rollup", - "tags": [ - "Fields", - "Field types", - "Links based types", - "Rollup" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "LookUp", - "permalink": "/fields/field-types/links-based/lookup" - }, - "next": { - "title": "Attachment", - "permalink": "/fields/field-types/custom-types/attachment" - } - }, - { - "unversionedId": "fields/field-types/numerical/currency", - "id": "fields/field-types/numerical/currency", - "title": "Currency", - "description": "Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/040.currency.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/currency", - "permalink": "/fields/field-types/numerical/currency", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/040.currency.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Currency", - "permalink": "/tags/currency" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Currency", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Currency" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - }, - "next": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - } - }, - { - "unversionedId": "fields/field-types/numerical/decimal", - "id": "fields/field-types/numerical/decimal", - "title": "Decimal", - "description": "Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/decimal", - "permalink": "/fields/field-types/numerical/decimal", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/020.decimal.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Decimal", - "permalink": "/tags/decimal" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Decimal", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Decimal" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - }, - "next": { - "title": "Percent", - "permalink": "/fields/field-types/numerical/percent" - } - }, - { - "unversionedId": "fields/field-types/numerical/number", - "id": "fields/field-types/numerical/number", - "title": "Number", - "description": "Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/010.number.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/number", - "permalink": "/fields/field-types/numerical/number", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/010.number.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Number", - "permalink": "/tags/number" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Number", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Number" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - }, - "next": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - } - }, - { - "unversionedId": "fields/field-types/numerical/percent", - "id": "fields/field-types/numerical/percent", - "title": "Percent", - "description": "Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.", - "source": "@site/docs/070.fields/040.field-types/020.numerical/030.percent.md", - "sourceDirName": "070.fields/040.field-types/020.numerical", - "slug": "/fields/field-types/numerical/percent", - "permalink": "/fields/field-types/numerical/percent", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/030.percent.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Numerical types", - "permalink": "/tags/numerical-types" - }, - { - "label": "Percent", - "permalink": "/tags/percent" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Percent", - "tags": [ - "Fields", - "Field types", - "Numerical types", - "Percent" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Decimal", - "permalink": "/fields/field-types/numerical/decimal" - }, - "next": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - } - }, - { - "unversionedId": "fields/field-types/select-based/multi-select", - "id": "fields/field-types/select-based/multi-select", - "title": "Multi Select", - "description": "Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md", - "sourceDirName": "070.fields/040.field-types/030.select-based", - "slug": "/fields/field-types/select-based/multi-select", - "permalink": "/fields/field-types/select-based/multi-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/020.multi-select.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Select based types", - "permalink": "/tags/select-based-types" - }, - { - "label": "Multi select", - "permalink": "/tags/multi-select" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Multi Select", - "tags": [ - "Fields", - "Field types", - "Select based types", - "Multi select" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single Select", - "permalink": "/fields/field-types/select-based/single-select" - }, - "next": { - "title": "Links", - "permalink": "/fields/field-types/links-based/links" - } - }, - { - "unversionedId": "fields/field-types/select-based/single-select", - "id": "fields/field-types/select-based/single-select", - "title": "Single Select", - "description": "Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.", - "source": "@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md", - "sourceDirName": "070.fields/040.field-types/030.select-based", - "slug": "/fields/field-types/select-based/single-select", - "permalink": "/fields/field-types/select-based/single-select", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/010.single-select.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Select based types", - "permalink": "/tags/select-based-types" - }, - { - "label": "Single select", - "permalink": "/tags/single-select" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single Select", - "tags": [ - "Fields", - "Field types", - "Select based types", - "Single select" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Currency", - "permalink": "/fields/field-types/numerical/currency" - }, - "next": { - "title": "Multi Select", - "permalink": "/fields/field-types/select-based/multi-select" - } - }, - { - "unversionedId": "fields/field-types/text-based/email", - "id": "fields/field-types/text-based/email", - "title": "Email", - "description": "Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/040.field-types/010.text-based/030.email.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/email", - "permalink": "/fields/field-types/text-based/email", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/030.email.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Email", - "permalink": "/tags/email" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Email", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Email" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - }, - "next": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - } - }, - { - "unversionedId": "fields/field-types/text-based/long-text", - "id": "fields/field-types/text-based/long-text", - "title": "Long text", - "description": "Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/long-text", - "permalink": "/fields/field-types/text-based/long-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/020.long-text.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Long text", - "permalink": "/tags/long-text" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Long text", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Long text" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Single line text", - "permalink": "/fields/field-types/text-based/single-line-text" - }, - "next": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - } - }, - { - "unversionedId": "fields/field-types/text-based/phonenumber", - "id": "fields/field-types/text-based/phonenumber", - "title": "Phone Number", - "description": "Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/phonenumber", - "permalink": "/fields/field-types/text-based/phonenumber", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Phone number", - "permalink": "/tags/phone-number" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Phone Number", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Phone number" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Email", - "permalink": "/fields/field-types/text-based/email" - }, - "next": { - "title": "URL", - "permalink": "/fields/field-types/text-based/url" - } - }, - { - "unversionedId": "fields/field-types/text-based/single-line-text", - "id": "fields/field-types/text-based/single-line-text", - "title": "Single line text", - "description": "Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.", - "source": "@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/single-line-text", - "permalink": "/fields/field-types/text-based/single-line-text", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "Single line text", - "permalink": "/tags/single-line-text" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Single line text", - "tags": [ - "Fields", - "Field types", - "Text based types", - "Single line text" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display value", - "permalink": "/fields/display-value" - }, - "next": { - "title": "Long text", - "permalink": "/fields/field-types/text-based/long-text" - } - }, - { - "unversionedId": "fields/field-types/text-based/url", - "id": "fields/field-types/text-based/url", - "title": "URL", - "description": "URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with", - "source": "@site/docs/070.fields/040.field-types/010.text-based/050.url.md", - "sourceDirName": "070.fields/040.field-types/010.text-based", - "slug": "/fields/field-types/text-based/url", - "permalink": "/fields/field-types/text-based/url", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/050.url.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Field types", - "permalink": "/tags/field-types" - }, - { - "label": "Text based types", - "permalink": "/tags/text-based-types" - }, - { - "label": "URL", - "permalink": "/tags/url" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "URL", - "tags": [ - "Fields", - "Field types", - "Text based types", - "URL" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Phone Number", - "permalink": "/fields/field-types/text-based/phonenumber" - }, - "next": { - "title": "Number", - "permalink": "/fields/field-types/numerical/number" - } - }, - { - "unversionedId": "fields/fields-overview", - "id": "fields/fields-overview", - "title": "Fields overview", - "description": "- Primary Key", - "source": "@site/docs/070.fields/010.fields-overview.md", - "sourceDirName": "070.fields", - "slug": "/fields/fields-overview", - "permalink": "/fields/fields-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/010.fields-overview.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Fields overview", - "tags": [ - "Fields", - "Overview" - ], - "keywords": [ - "NocoDB fields", - "fields overview", - "field administration", - "field organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table details overview", - "permalink": "/table-details/table-details-overview" - }, - "next": { - "title": "Primary key", - "permalink": "/fields/primary-key" - } - }, - { - "unversionedId": "fields/multi-fields-editor", - "id": "fields/multi-fields-editor", - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "source": "@site/docs/070.fields/050.multi-fields-editor.md", - "sourceDirName": "070.fields", - "slug": "/fields/multi-fields-editor", - "permalink": "/fields/multi-fields-editor", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/050.multi-fields-editor.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Multi-fields editor", - "permalink": "/tags/multi-fields-editor" - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Multi-field editor", - "description": "Understanding use of multi-field editor in NocoDB!", - "tags": [ - "Fields", - "Multi-fields editor", - "Productivity hacks" - ], - "keywords": [ - "NocoDB fields editor", - "fields editor", - "fields editor in nocoDB", - "fields editor in nocoDB" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Duration", - "permalink": "/fields/field-types/date-time-based/duration" - }, - "next": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - } - }, - { - "unversionedId": "fields/primary-key", - "id": "fields/primary-key", - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/docs/070.fields/020.primary-key.md", - "sourceDirName": "070.fields", - "slug": "/fields/primary-key", - "permalink": "/fields/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/020.primary-key.md", - "tags": [ - { - "label": "Fields", - "permalink": "/tags/fields" - }, - { - "label": "Primary Key", - "permalink": "/tags/primary-key" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Primary key", - "description": "Understanding Primary Key in NocoDB!", - "tags": [ - "Fields", - "Primary Key" - ], - "keywords": [ - "NocoDB primary key", - "primary key", - "primary key in NocoDB", - "primary key in database" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - }, - "next": { - "title": "Display value", - "permalink": "/fields/display-value" - } - }, - { - "unversionedId": "getting-started/keyboard-shortcuts", - "id": "getting-started/keyboard-shortcuts", - "title": "Keyboard shortcuts", - "description": "Quick Actions", - "source": "@site/docs/020.getting-started/040.keyboard-shortcuts.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/keyboard-shortcuts", - "permalink": "/getting-started/keyboard-shortcuts", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/040.keyboard-shortcuts.md", - "tags": [ - { - "label": "Getting Started", - "permalink": "/tags/getting-started" - }, - { - "label": "Shortcuts", - "permalink": "/tags/shortcuts" - }, - { - "label": "Productivity hacks", - "permalink": "/tags/productivity-hacks" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Keyboard shortcuts", - "tags": [ - "Getting Started", - "Shortcuts", - "Productivity hacks" - ], - "keywords": [ - "keyboard shortcuts", - "shortcuts", - "keyboard" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "NocoDB terminologies", - "permalink": "/getting-started/terminologies" - }, - "next": { - "title": "Installation", - "permalink": "/getting-started/self-hosted/installation" - } - }, - { - "unversionedId": "getting-started/quick-start", - "id": "getting-started/quick-start", - "title": "Quick start", - "description": "NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs.", - "source": "@site/docs/020.getting-started/020.quick-start.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/quick-start", - "permalink": "/getting-started/quick-start", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/020.quick-start.md", - "tags": [], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Quick start", - "keywords": [ - "NocoDB", - "quick start", - "getting started" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/" - }, - "next": { - "title": "NocoDB terminologies", - "permalink": "/getting-started/terminologies" - } - }, - { - "unversionedId": "getting-started/self-hosted/environment-variables", - "id": "getting-started/self-hosted/environment-variables", - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/environment-variables", - "permalink": "/getting-started/self-hosted/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/020.environment-variables.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true, - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB environment variables", - "NocoDB env variables", - "NocoDB envs", - "NocoDB env" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/getting-started/self-hosted/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/getting-started/self-hosted/upgrading" - } - }, - { - "unversionedId": "getting-started/self-hosted/installation", - "id": "getting-started/self-hosted/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/docs/020.getting-started/050.self-hosted/010.installation.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/installation", - "permalink": "/getting-started/self-hosted/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/010.installation.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB installation", - "NocoDB docker installation", - "NocoDB nodejs installation", - "NocoDB quick try", - "NocoDB prerequisites" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - }, - "next": { - "title": "Environment variables", - "permalink": "/getting-started/self-hosted/environment-variables" - } - }, - { - "unversionedId": "getting-started/self-hosted/upgrading", - "id": "getting-started/self-hosted/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/docs/020.getting-started/050.self-hosted/030.upgrading.md", - "sourceDirName": "020.getting-started/050.self-hosted", - "slug": "/getting-started/self-hosted/upgrading", - "permalink": "/getting-started/self-hosted/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/030.upgrading.md", - "tags": [ - { - "label": "Open Source", - "permalink": "/tags/open-source" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "tags": [ - "Open Source" - ], - "keywords": [ - "NocoDB upgrade", - "upgrade NocoDB", - "upgrade nocodb" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment variables", - "permalink": "/getting-started/self-hosted/environment-variables" - }, - "next": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - } - }, - { - "unversionedId": "getting-started/terminologies", - "id": "getting-started/terminologies", - "title": "NocoDB terminologies", - "description": "To maximize your use of NocoDB, it's beneficial to become familiar with some common terms.", - "source": "@site/docs/020.getting-started/030.terminologies.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/terminologies", - "permalink": "/getting-started/terminologies", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/030.terminologies.md", - "tags": [], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "NocoDB terminologies", - "keywords": [ - "NocoDB terminologies", - "NocoDB terms", - "NocoDB keywords" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Quick start", - "permalink": "/getting-started/quick-start" - }, - "next": { - "title": "Keyboard shortcuts", - "permalink": "/getting-started/keyboard-shortcuts" - } - }, - { - "unversionedId": "index", - "id": "index", - "title": "Welcome", - "description": "NocoDB Documentation", - "source": "@site/docs/010.index.md", - "sourceDirName": ".", - "slug": "/", - "permalink": "/", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/010.index.md", - "tags": [], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Welcome", - "description": "NocoDB Documentation", - "slug": "/" - }, - "sidebar": "tutorialSidebar", - "next": { - "title": "Quick start", - "permalink": "/getting-started/quick-start" - } - }, - { - "unversionedId": "records/actions-on-record", - "id": "records/actions-on-record", - "title": "Actions on record", - "description": "Keyboard navigation within Grid view", - "source": "@site/docs/080.records/070.actions-on-record.md", - "sourceDirName": "080.records", - "slug": "/records/actions-on-record", - "permalink": "/records/actions-on-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/070.actions-on-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Edit", - "permalink": "/tags/edit" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Expand", - "permalink": "/tags/expand" - }, - { - "label": "Shortcuts", - "permalink": "/tags/shortcuts" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Actions on record", - "tags": [ - "Records", - "Delete", - "Edit", - "Duplicate", - "Expand", - "Shortcuts" - ], - "keywords": [ - "NocoDB delete record", - "delete record", - "delete row", - "delete rows" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded record", - "permalink": "/records/expand-record" - }, - "next": { - "title": "View overview", - "permalink": "/views/views-overview" - } - }, - { - "unversionedId": "records/create-record", - "id": "records/create-record", - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "source": "@site/docs/080.records/020.create-record.md", - "sourceDirName": "080.records", - "slug": "/records/create-record", - "permalink": "/records/create-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/020.create-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create record", - "description": "Learn how to create a record in NocoDB.", - "tags": [ - "Records", - "Create" - ], - "keywords": [ - "NocoDB record", - "create record", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Records overview", - "permalink": "/records/records-overview" - }, - "next": { - "title": "Expanded record", - "permalink": "/records/expand-record" - } - }, - { - "unversionedId": "records/expand-record", - "id": "records/expand-record", - "title": "Expanded record", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/docs/080.records/030.expand-record.md", - "sourceDirName": "080.records", - "slug": "/records/expand-record", - "permalink": "/records/expand-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/030.expand-record.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Expanded record", - "permalink": "/tags/expanded-record" - }, - { - "label": "Activity feed", - "permalink": "/tags/activity-feed" - }, - { - "label": "Comments", - "permalink": "/tags/comments" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Expanded record", - "tags": [ - "Records", - "Expanded record", - "Activity feed", - "Comments" - ], - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "keywords": [ - "NocoDB expanded form", - "expanded form", - "expanded record", - "expanded record view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create record", - "permalink": "/records/create-record" - }, - "next": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - } - }, - { - "unversionedId": "records/records-overview", - "id": "records/records-overview", - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "source": "@site/docs/080.records/010.records-overview.md", - "sourceDirName": "080.records", - "slug": "/records/records-overview", - "permalink": "/records/records-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/010.records-overview.md", - "tags": [ - { - "label": "Records", - "permalink": "/tags/records" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Records overview", - "description": "Learn how to create, import, and manage records in NocoDB.", - "tags": [ - "Records", - "Overview" - ], - "keywords": [ - "NocoDB record", - "record overview", - "record administration", - "record organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on field", - "permalink": "/fields/actions-on-field" - }, - "next": { - "title": "Create record", - "permalink": "/records/create-record" - } - }, - { - "unversionedId": "roles-and-permissions/roles-permissions-overview", - "id": "roles-and-permissions/roles-permissions-overview", - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "source": "@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md", - "sourceDirName": "110.roles-and-permissions", - "slug": "/roles-and-permissions/roles-permissions-overview", - "permalink": "/roles-and-permissions/roles-permissions-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.roles-and-permissions/010.roles-permissions-overview.md", - "tags": [ - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Roles & permissions overview", - "description": "Learn about roles and permissions in NocoDB.", - "tags": [ - "Roles", - "Permissions", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data sources overview", - "permalink": "/data-source/data-source-overview" - }, - "next": { - "title": "Collaboration overview", - "permalink": "/collaboration/collaboration-overview" - } - }, - { - "unversionedId": "table-details/table-details-overview", - "id": "table-details/table-details-overview", - "title": "Table details overview", - "description": "Table details overview", - "source": "@site/docs/065.table-details/table-details-overview.md", - "sourceDirName": "065.table-details", - "slug": "/table-details/table-details-overview", - "permalink": "/table-details/table-details-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/065.table-details/table-details-overview.md", - "tags": [ - { - "label": "Table details", - "permalink": "/tags/table-details" - }, - { - "label": "Table", - "permalink": "/tags/table" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "frontMatter": { - "title": "Table details overview", - "description": "Table details overview", - "tags": [ - "Table details", - "Table", - "Overview" - ], - "keywords": [ - "table details", - "table overview", - "table" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Download", - "permalink": "/table-operations/download" - }, - "next": { - "title": "Fields overview", - "permalink": "/fields/fields-overview" - } - }, - { - "unversionedId": "table-operations/download", - "id": "table-operations/download", - "title": "Download", - "description": "NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.", - "source": "@site/docs/060.table-operations/080.download.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/download", - "permalink": "/table-operations/download", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/080.download.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Download", - "permalink": "/tags/download" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "CSV", - "permalink": "/tags/csv" - }, - { - "label": "JSON", - "permalink": "/tags/json" - }, - { - "label": "XLSX", - "permalink": "/tags/xlsx" - } - ], - "version": "current", - "sidebarPosition": 80, - "frontMatter": { - "title": "Download", - "tags": [ - "Table operations", - "Download", - "Gallery View", - "Kanban View", - "Grid View", - "CSV", - "JSON", - "XLSX" - ], - "keywords": [ - "NocoDB table", - "download", - "export", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Search", - "permalink": "/table-operations/search" - }, - "next": { - "title": "Table details overview", - "permalink": "/table-details/table-details-overview" - } - }, - { - "unversionedId": "table-operations/field-operations", - "id": "table-operations/field-operations", - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "source": "@site/docs/060.table-operations/020.field-operations.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/field-operations", - "permalink": "/table-operations/field-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/020.field-operations.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Reorder", - "permalink": "/tags/reorder" - }, - { - "label": "Show/Hide", - "permalink": "/tags/show-hide" - }, - { - "label": "Cover image", - "permalink": "/tags/cover-image" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Hide & reorder fields", - "description": "Learn how to hide and reorder fields in NocoDB.", - "tags": [ - "Table operations", - "Reorder", - "Show/Hide", - "Cover image", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "fields, hide fields, reorder fields, change cover field, gallery view, kanban view" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table operations overview", - "permalink": "/table-operations/overview" - }, - "next": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - } - }, - { - "unversionedId": "table-operations/filter", - "id": "table-operations/filter", - "title": "Filtering records", - "description": "Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.", - "source": "@site/docs/060.table-operations/030.filter.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/filter", - "permalink": "/table-operations/filter", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/030.filter.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Filter", - "permalink": "/tags/filter" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Filtering records", - "tags": [ - "Table operations", - "Filter", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "row height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Hide & reorder fields", - "permalink": "/table-operations/field-operations" - }, - "next": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - } - }, - { - "unversionedId": "table-operations/group-by", - "id": "table-operations/group-by", - "title": "Grouping records", - "description": "Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.", - "source": "@site/docs/060.table-operations/050.group-by.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/group-by", - "permalink": "/table-operations/group-by", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/050.group-by.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Group by", - "permalink": "/tags/group-by" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 50, - "frontMatter": { - "title": "Grouping records", - "tags": [ - "Table operations", - "Group by", - "Grid View" - ], - "keywords": [ - "NocoDB table group by", - "group By column", - "group By", - "table group by", - "grouping records", - "grouping", - "group by in table" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sorting records", - "permalink": "/table-operations/sort" - }, - "next": { - "title": "Row height", - "permalink": "/table-operations/row-height" - } - }, - { - "unversionedId": "table-operations/overview", - "id": "table-operations/overview", - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "source": "@site/docs/060.table-operations/010.overview.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/overview", - "permalink": "/table-operations/overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/010.overview.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Table operations overview", - "description": "Learn how to work with filters, sort, group by, and more in NocoDB.", - "tags": [ - "Table operations", - "Overview" - ], - "keywords": [ - "NocoDB table operations", - "table operations overview", - "table administration", - "table organization", - "hide column", - "show column", - "filter", - "sort", - "group by", - "record height", - "quick search", - "download", - "hide-field", - "show-field", - "field-operations", - "filter", - "sort", - "group-by", - "row-height", - "search", - "download" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - }, - "next": { - "title": "Hide & reorder fields", - "permalink": "/table-operations/field-operations" - } - }, - { - "unversionedId": "table-operations/row-height", - "id": "table-operations/row-height", - "title": "Row height", - "description": "NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.", - "source": "@site/docs/060.table-operations/060.row-height.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/row-height", - "permalink": "/table-operations/row-height", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/060.row-height.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Row height", - "permalink": "/tags/row-height" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Row height", - "tags": [ - "Table operations", - "Row height", - "Grid View" - ], - "keywords": [ - "table operations", - "row height" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grouping records", - "permalink": "/table-operations/group-by" - }, - "next": { - "title": "Search", - "permalink": "/table-operations/search" - } - }, - { - "unversionedId": "table-operations/search", - "id": "table-operations/search", - "title": "Search", - "description": "NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.", - "source": "@site/docs/060.table-operations/070.search.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/search", - "permalink": "/table-operations/search", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/070.search.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Search", - "permalink": "/tags/search" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 70, - "frontMatter": { - "title": "Search", - "tags": [ - "Table operations", - "Search", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table search", - "search table", - "search records", - "search" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Row height", - "permalink": "/table-operations/row-height" - }, - "next": { - "title": "Download", - "permalink": "/table-operations/download" - } - }, - { - "unversionedId": "table-operations/sort", - "id": "table-operations/sort", - "title": "Sorting records", - "description": "Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.", - "source": "@site/docs/060.table-operations/040.sort.md", - "sourceDirName": "060.table-operations", - "slug": "/table-operations/sort", - "permalink": "/table-operations/sort", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/040.sort.md", - "tags": [ - { - "label": "Table operations", - "permalink": "/tags/table-operations" - }, - { - "label": "Sort", - "permalink": "/tags/sort" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Sorting records", - "tags": [ - "Table operations", - "Sort", - "Gallery View", - "Kanban View", - "Grid View" - ], - "keywords": [ - "NocoDB table", - "sorting", - "sort", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Filtering records", - "permalink": "/table-operations/filter" - }, - "next": { - "title": "Grouping records", - "permalink": "/table-operations/group-by" - } - }, - { - "unversionedId": "tables/actions-on-table", - "id": "tables/actions-on-table", - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "source": "@site/docs/050.tables/060.actions-on-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/actions-on-table", - "permalink": "/tables/actions-on-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/060.actions-on-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - } - ], - "version": "current", - "sidebarPosition": 60, - "frontMatter": { - "title": "Actions on table", - "description": "Learn how to rename, duplicate, and delete a table in NocoDB.", - "tags": [ - "Tables", - "Rename", - "Duplicate", - "Delete" - ], - "keywords": [ - "NocoDB table", - "rename table", - "duplicate table", - "delete table", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import data into an existing table", - "permalink": "/tables/import-data-into-existing-table" - }, - "next": { - "title": "Table operations overview", - "permalink": "/table-operations/overview" - } - }, - { - "unversionedId": "tables/create-table", - "id": "tables/create-table", - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "source": "@site/docs/050.tables/020.create-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/create-table", - "permalink": "/tables/create-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/020.create-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create empty table", - "description": "Learn how to create a table in NocoDB.", - "tags": [ - "Tables", - "Create" - ], - "keywords": [ - "NocoDB table", - "create table", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table overview", - "permalink": "/tables/table-overview" - }, - "next": { - "title": "Create table via import", - "permalink": "/tables/create-table-via-import" - } - }, - { - "unversionedId": "tables/create-table-via-import", - "id": "tables/create-table-via-import", - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "source": "@site/docs/050.tables/030.create-table-via-import.md", - "sourceDirName": "050.tables", - "slug": "/tables/create-table-via-import", - "permalink": "/tables/create-table-via-import", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/030.create-table-via-import.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Import", - "permalink": "/tags/import" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Create table via import", - "description": "Learn how to create a table in NocoDB via import from CSV, Excel or JSON.", - "tags": [ - "Tables", - "Import" - ], - "keywords": [ - "NocoDB table", - "create table", - "table administration", - "table organization", - "import table", - "import csv", - "import excel", - "import json" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create empty table", - "permalink": "/tables/create-table" - }, - "next": { - "title": "Import data into an existing table", - "permalink": "/tables/import-data-into-existing-table" - } - }, - { - "unversionedId": "tables/import-data-into-existing-table", - "id": "tables/import-data-into-existing-table", - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "source": "@site/docs/050.tables/040.import-data-into-existing-table.md", - "sourceDirName": "050.tables", - "slug": "/tables/import-data-into-existing-table", - "permalink": "/tables/import-data-into-existing-table", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/040.import-data-into-existing-table.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Import", - "permalink": "/tags/import" - }, - { - "label": "CSV", - "permalink": "/tags/csv" - }, - { - "label": "Excel", - "permalink": "/tags/excel" - }, - { - "label": "XLSX", - "permalink": "/tags/xlsx" - }, - { - "label": "JSON", - "permalink": "/tags/json" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Import data into an existing table", - "description": "Learn how to import data into an existing table in NocoDB.", - "tags": [ - "Tables", - "Import", - "CSV", - "Excel", - "XLSX", - "JSON" - ], - "keywords": [ - "NocoDB table", - "import data into table", - "import data from csv", - "import data from excel", - "import data from xlsx" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create table via import", - "permalink": "/tables/create-table-via-import" - }, - "next": { - "title": "Actions on table", - "permalink": "/tables/actions-on-table" - } - }, - { - "unversionedId": "tables/table-overview", - "id": "tables/table-overview", - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "source": "@site/docs/050.tables/010.table-overview.md", - "sourceDirName": "050.tables", - "slug": "/tables/table-overview", - "permalink": "/tables/table-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/010.table-overview.md", - "tags": [ - { - "label": "Tables", - "permalink": "/tags/tables" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Table overview", - "description": "Learn how to create, import, and manage tables in NocoDB.", - "tags": [ - "Tables", - "Overview" - ], - "keywords": [ - "NocoDB table", - "table overview", - "table administration", - "table organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on base", - "permalink": "/bases/actions-on-base" - }, - "next": { - "title": "Create empty table", - "permalink": "/tables/create-table" - } - }, - { - "unversionedId": "views/actions-on-view", - "id": "views/actions-on-view", - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "source": "@site/docs/090.views/090.actions-on-view.md", - "sourceDirName": "090.views", - "slug": "/views/actions-on-view", - "permalink": "/views/actions-on-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/090.actions-on-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Duplicate", - "permalink": "/tags/duplicate" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 90, - "frontMatter": { - "title": "Actions on view", - "description": "Learn how to delete, rename, duplicate a a view in NocoDB.", - "tags": [ - "Views", - "Rename", - "Duplicate", - "Delete", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "delete view", - "rename view", - "duplicate view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - }, - "next": { - "title": "Data sources overview", - "permalink": "/data-source/data-source-overview" - } - }, - { - "unversionedId": "views/create-view", - "id": "views/create-view", - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "source": "@site/docs/090.views/020.create-view.md", - "sourceDirName": "090.views", - "slug": "/views/create-view", - "permalink": "/views/create-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/020.create-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Create", - "permalink": "/tags/create" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create view", - "description": "Learn how to create a view in NocoDB.", - "tags": [ - "Views", - "Create", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "create view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "View overview", - "permalink": "/views/views-overview" - }, - "next": { - "title": "Share view", - "permalink": "/views/share-view" - } - }, - { - "unversionedId": "views/share-view", - "id": "views/share-view", - "title": "Share view", - "description": "Procedures to share a view", - "source": "@site/docs/090.views/025.share-view.md", - "sourceDirName": "090.views", - "slug": "/views/share-view", - "permalink": "/views/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/025.share-view.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Share", - "permalink": "/tags/share" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - }, - { - "label": "Form View", - "permalink": "/tags/form-view" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 25, - "frontMatter": { - "title": "Share view", - "description": "Procedures to share a view", - "tags": [ - "Views", - "Share", - "Grid View", - "Form View", - "Kanban View", - "Gallery View" - ], - "keywords": [ - "NocoDB view", - "share view", - "share", - "share view with password protection", - "share view with download options" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create view", - "permalink": "/views/create-view" - }, - "next": { - "title": "Grid", - "permalink": "/views/view-types/grid" - } - }, - { - "unversionedId": "views/view-types/form", - "id": "views/view-types/form", - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "source": "@site/docs/090.views/040.view-types/030.form.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/form", - "permalink": "/views/view-types/form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/030.form.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Form", - "permalink": "/tags/form" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Form", - "description": "Learn how to create, import, and manage forms in NocoDB.", - "tags": [ - "Views", - "Form" - ], - "keywords": [ - "NocoDB form", - "form view", - "form builder", - "form view builder", - "form view actions", - "form view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - }, - "next": { - "title": "Kanban", - "permalink": "/views/view-types/kanban" - } - }, - { - "unversionedId": "views/view-types/gallery", - "id": "views/view-types/gallery", - "title": "Gallery", - "description": "Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.", - "source": "@site/docs/090.views/040.view-types/020.gallery.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/gallery", - "permalink": "/views/view-types/gallery", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/020.gallery.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Gallery View", - "permalink": "/tags/gallery-view" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Gallery", - "tags": [ - "Views", - "Gallery View" - ], - "keywords": [ - "NocoDB gallery view", - "gallery view", - "gallery" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Grid", - "permalink": "/views/view-types/grid" - }, - "next": { - "title": "Form", - "permalink": "/views/view-types/form" - } - }, - { - "unversionedId": "views/view-types/grid", - "id": "views/view-types/grid", - "title": "Grid", - "description": "Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.", - "source": "@site/docs/090.views/040.view-types/010.grid.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/grid", - "permalink": "/views/view-types/grid", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/010.grid.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Grid View", - "permalink": "/tags/grid-view" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Grid", - "tags": [ - "Views", - "Grid View" - ], - "keywords": [ - "NocoDB grid", - "grid view", - "grid" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share view", - "permalink": "/views/share-view" - }, - "next": { - "title": "Gallery", - "permalink": "/views/view-types/gallery" - } - }, - { - "unversionedId": "views/view-types/kanban", - "id": "views/view-types/kanban", - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "source": "@site/docs/090.views/040.view-types/040.kanban.md", - "sourceDirName": "090.views/040.view-types", - "slug": "/views/view-types/kanban", - "permalink": "/views/view-types/kanban", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/040.kanban.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Kanban View", - "permalink": "/tags/kanban-view" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Kanban", - "description": "Learn how to use Kanban view in NocoDB.", - "tags": [ - "Views", - "Kanban View" - ], - "keywords": [ - "NocoDB kanban", - "kanban view", - "kanban board", - "kanban view operations" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Form", - "permalink": "/views/view-types/form" - }, - "next": { - "title": "Actions on view", - "permalink": "/views/actions-on-view" - } - }, - { - "unversionedId": "views/views-overview", - "id": "views/views-overview", - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "source": "@site/docs/090.views/010.views-overview.md", - "sourceDirName": "090.views", - "slug": "/views/views-overview", - "permalink": "/views/views-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/010.views-overview.md", - "tags": [ - { - "label": "Views", - "permalink": "/tags/views" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "View overview", - "description": "Understanding Views in NocoDB!", - "tags": [ - "Views", - "Overview" - ], - "keywords": [ - "NocoDB view", - "view administration", - "view organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Actions on record", - "permalink": "/records/actions-on-record" - }, - "next": { - "title": "Create view", - "permalink": "/views/create-view" - } - }, - { - "unversionedId": "workspaces/actions-on-workspace", - "id": "workspaces/actions-on-workspace", - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "source": "@site/docs/030.workspaces/040.actions-on-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/actions-on-workspace", - "permalink": "/workspaces/actions-on-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/040.actions-on-workspace.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Rename", - "permalink": "/tags/rename" - }, - { - "label": "Delete", - "permalink": "/tags/delete" - } - ], - "version": "current", - "sidebarPosition": 40, - "frontMatter": { - "title": "Actions on workspace", - "description": "This article explains how to rename or delete a workspace.", - "tags": [ - "Workspaces", - "Rename", - "Delete" - ], - "keywords": [ - "Workspace configuration", - "Rename workspace", - "Delete workspace", - "Workspace actions", - "Workspace management", - "Workspace administration", - "Workspace settings", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - }, - "next": { - "title": "Base overview", - "permalink": "/bases/base-overview" - } - }, - { - "unversionedId": "workspaces/create-workspace", - "id": "workspaces/create-workspace", - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "source": "@site/docs/030.workspaces/020.create-workspace.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/create-workspace", - "permalink": "/workspaces/create-workspace", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/020.create-workspace.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Create", - "permalink": "/tags/create" - } - ], - "version": "current", - "sidebarPosition": 20, - "frontMatter": { - "title": "Create workspace", - "description": "Learn how to create a workspace in NocoDB", - "tags": [ - "Workspaces", - "Create" - ], - "keywords": [ - "NocoDB workspace", - "create workspace", - "workspace context menu", - "workspace owner", - "workspace collaboration", - "workspace actions", - "default workspace" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Workspace overview", - "permalink": "/workspaces/workspace-overview" - }, - "next": { - "title": "Workspace collaboration", - "permalink": "/workspaces/workspace-collaboration" - } - }, - { - "unversionedId": "workspaces/workspace-collaboration", - "id": "workspaces/workspace-collaboration", - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "source": "@site/docs/030.workspaces/030.workspace-collaboration.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspace-collaboration", - "permalink": "/workspaces/workspace-collaboration", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.workspace-collaboration.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Collaboration", - "permalink": "/tags/collaboration" - }, - { - "label": "Members", - "permalink": "/tags/members" - }, - { - "label": "Invite", - "permalink": "/tags/invite" - }, - { - "label": "Roles", - "permalink": "/tags/roles" - }, - { - "label": "Permissions", - "permalink": "/tags/permissions" - } - ], - "version": "current", - "sidebarPosition": 30, - "frontMatter": { - "title": "Workspace collaboration", - "description": "This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.", - "tags": [ - "Workspaces", - "Collaboration", - "Members", - "Invite", - "Roles", - "Permissions" - ], - "keywords": [ - "Workspace configuration", - "Invite members", - "Member roles", - "Access permissions", - "Displaying workspace members", - "Modifying member roles", - "Removing workspace members", - "Workspace collaboration", - "Team collaboration", - "Access control", - "Role-based permissions", - "Workspace management", - "User roles", - "Workspace settings", - "Workspace administration", - "Member invitation", - "User access", - "Member management", - "Workspace teamwork", - "Workspace organization" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - }, - "next": { - "title": "Actions on workspace", - "permalink": "/workspaces/actions-on-workspace" - } - }, - { - "unversionedId": "workspaces/workspace-overview", - "id": "workspaces/workspace-overview", - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "source": "@site/docs/030.workspaces/010.workspace-overview.md", - "sourceDirName": "030.workspaces", - "slug": "/workspaces/workspace-overview", - "permalink": "/workspaces/workspace-overview", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/010.workspace-overview.md", - "tags": [ - { - "label": "Workspaces", - "permalink": "/tags/workspaces" - }, - { - "label": "Overview", - "permalink": "/tags/overview" - } - ], - "version": "current", - "sidebarPosition": 10, - "frontMatter": { - "title": "Workspace overview", - "description": "This article briefs the concept of workspaces in NocoDB.", - "tags": [ - "Workspaces", - "Overview" - ] - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/getting-started/self-hosted/upgrading" - }, - "next": { - "title": "Create workspace", - "permalink": "/workspaces/create-workspace" - } - } - ], - "drafts": [], - "sidebars": { - "tutorialSidebar": [ - { - "type": "doc", - "id": "index" - }, - { - "type": "category", - "label": "Getting Started", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "doc", - "id": "getting-started/quick-start" - }, - { - "type": "doc", - "id": "getting-started/terminologies" - }, - { - "type": "doc", - "id": "getting-started/keyboard-shortcuts" - }, - { - "type": "category", - "label": "In Open Source", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "doc", - "id": "getting-started/self-hosted/installation" - }, - { - "type": "doc", - "id": "getting-started/self-hosted/environment-variables" - }, - { - "type": "doc", - "id": "getting-started/self-hosted/upgrading" - } - ] - } - ] - }, - { - "type": "category", - "label": "Workspaces", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "workspaces/workspace-overview" - }, - { - "type": "doc", - "id": "workspaces/create-workspace" - }, - { - "type": "doc", - "id": "workspaces/workspace-collaboration" - }, - { - "type": "doc", - "id": "workspaces/actions-on-workspace" - } - ] - }, - { - "type": "category", - "label": "Bases", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "bases/base-overview" - }, - { - "type": "doc", - "id": "bases/create-base" - }, - { - "type": "doc", - "id": "bases/import-base-from-airtable" - }, - { - "type": "doc", - "id": "bases/base-collaboration" - }, - { - "type": "doc", - "id": "bases/share-base" - }, - { - "type": "doc", - "id": "bases/actions-on-base" - } - ] - }, - { - "type": "category", - "label": "Tables", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "tables/table-overview" - }, - { - "type": "doc", - "id": "tables/create-table" - }, - { - "type": "doc", - "id": "tables/create-table-via-import" - }, - { - "type": "doc", - "id": "tables/import-data-into-existing-table" - }, - { - "type": "doc", - "id": "tables/actions-on-table" - } - ] - }, - { - "type": "category", - "label": "Table operations", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "table-operations/overview" - }, - { - "type": "doc", - "id": "table-operations/field-operations" - }, - { - "type": "doc", - "id": "table-operations/filter" - }, - { - "type": "doc", - "id": "table-operations/sort" - }, - { - "type": "doc", - "id": "table-operations/group-by" - }, - { - "type": "doc", - "id": "table-operations/row-height" - }, - { - "type": "doc", - "id": "table-operations/search" - }, - { - "type": "doc", - "id": "table-operations/download" - } - ] - }, - { - "type": "category", - "label": "Table Details", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "table-details/table-details-overview" - } - ] - }, - { - "type": "category", - "label": "Fields", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/fields-overview" - }, - { - "type": "doc", - "id": "fields/primary-key" - }, - { - "type": "doc", - "id": "fields/display-value" - }, - { - "type": "category", - "label": "Field types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "category", - "label": "Text based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/text-based/single-line-text" - }, - { - "type": "doc", - "id": "fields/field-types/text-based/long-text" - }, - { - "type": "doc", - "id": "fields/field-types/text-based/email" - }, - { - "type": "doc", - "id": "fields/field-types/text-based/phonenumber" - }, - { - "type": "doc", - "id": "fields/field-types/text-based/url" - } - ] - }, - { - "type": "category", - "label": "Numerical", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/numerical/number" - }, - { - "type": "doc", - "id": "fields/field-types/numerical/decimal" - }, - { - "type": "doc", - "id": "fields/field-types/numerical/percent" - }, - { - "type": "doc", - "id": "fields/field-types/numerical/currency" - } - ] - }, - { - "type": "category", - "label": "Select based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/select-based/single-select" - }, - { - "type": "doc", - "id": "fields/field-types/select-based/multi-select" - } - ] - }, - { - "type": "category", - "label": "Links based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/links-based/links" - }, - { - "type": "doc", - "id": "fields/field-types/links-based/lookup" - }, - { - "type": "doc", - "id": "fields/field-types/links-based/rollup" - } - ] - }, - { - "type": "category", - "label": "Custom types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/custom-types/attachment" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/checkbox" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/rating" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/QR-code" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/barcode" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/geometry" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/specific-db-type" - }, - { - "type": "doc", - "id": "fields/field-types/custom-types/json" - } - ] - }, - { - "type": "category", - "label": "Formula", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/formula/formula" - }, - { - "type": "doc", - "id": "fields/field-types/formula/operators" - }, - { - "type": "doc", - "id": "fields/field-types/formula/numeric-functions" - }, - { - "type": "doc", - "id": "fields/field-types/formula/string-functions" - }, - { - "type": "doc", - "id": "fields/field-types/formula/date-functions" - }, - { - "type": "doc", - "id": "fields/field-types/formula/conditional-expressions" - } - ] - }, - { - "type": "category", - "label": "Date Time based", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "fields/field-types/date-time-based/date-time" - }, - { - "type": "doc", - "id": "fields/field-types/date-time-based/date" - }, - { - "type": "doc", - "id": "fields/field-types/date-time-based/time" - }, - { - "type": "doc", - "id": "fields/field-types/date-time-based/duration" - } - ] - } - ] - }, - { - "type": "doc", - "id": "fields/multi-fields-editor" - }, - { - "type": "doc", - "id": "fields/actions-on-field" - } - ] - }, - { - "type": "category", - "label": "Records", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "records/records-overview" - }, - { - "type": "doc", - "id": "records/create-record" - }, - { - "type": "doc", - "id": "records/expand-record" - }, - { - "type": "doc", - "id": "records/actions-on-record" - } - ] - }, - { - "type": "category", - "label": "Views", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "views/views-overview" - }, - { - "type": "doc", - "id": "views/create-view" - }, - { - "type": "doc", - "id": "views/share-view" - }, - { - "type": "category", - "label": "View types", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "views/view-types/grid" - }, - { - "type": "doc", - "id": "views/view-types/gallery" - }, - { - "type": "doc", - "id": "views/view-types/form" - }, - { - "type": "doc", - "id": "views/view-types/kanban" - } - ] - }, - { - "type": "doc", - "id": "views/actions-on-view" - } - ] - }, - { - "type": "category", - "label": "Data sources", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "data-source/data-source-overview" - } - ] - }, - { - "type": "category", - "label": "Roles and permissions", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "roles-and-permissions/roles-permissions-overview" - } - ] - }, - { - "type": "category", - "label": "Collaboration", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "collaboration/collaboration-overview" - }, - { - "type": "doc", - "id": "collaboration/workspace-collaboration" - }, - { - "type": "doc", - "id": "collaboration/base-collaboration" - }, - { - "type": "doc", - "id": "collaboration/share-base" - }, - { - "type": "doc", - "id": "collaboration/share-view" - }, - { - "type": "doc", - "id": "collaboration/oss-specific-details" - } - ] - }, - { - "type": "category", - "label": "Automation", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "category", - "label": "Webhook", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "automation/webhook/webhook-overview" - }, - { - "type": "doc", - "id": "automation/webhook/create-webhook" - }, - { - "type": "doc", - "id": "automation/webhook/actions-on-webhook" - } - ] - } - ] - }, - { - "type": "category", - "label": "Account settings", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "account-settings/profile-page" - }, - { - "type": "doc", - "id": "account-settings/api-tokens" - }, - { - "type": "doc", - "id": "account-settings/oss-specific-details" - } - ] - }, - { - "type": "category", - "label": "Engineering", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "engineering/architecture" - }, - { - "type": "doc", - "id": "engineering/repository-structure" - }, - { - "type": "doc", - "id": "engineering/development-setup" - }, - { - "type": "doc", - "id": "engineering/unit-testing" - }, - { - "type": "doc", - "id": "engineering/playwright" - }, - { - "type": "doc", - "id": "engineering/builds-and-releases" - }, - { - "type": "doc", - "id": "engineering/translation" - }, - { - "type": "doc", - "id": "engineering/writing-docs" - } - ] - }, - { - "type": "doc", - "id": "FAQs" - } - ] - } - }, - { - "versionName": "0.109.7", - "label": "0.109.7 - Old UI", - "banner": "unmaintained", - "badge": true, - "noIndex": false, - "className": "docs-version-0.109.7", - "path": "/0.109.7", - "tagsPath": "/0.109.7/tags", - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7", - "editUrlLocalized": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/i18n/en/docusaurus-plugin-content-docs/version-0.109.7", - "isLast": false, - "sidebarFilePath": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/versioned_sidebars/version-0.109.7-sidebars.json", - "contentPath": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/versioned_docs/version-0.109.7", - "contentPathLocalized": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/i18n/en/docusaurus-plugin-content-docs/version-0.109.7", - "docs": [ - { - "unversionedId": "developer-resources/accessing-apis", - "id": "version-0.109.7/developer-resources/accessing-apis", - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/accessing-apis", - "permalink": "/0.109.7/developer-resources/accessing-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Accessing APIs", - "description": "How to access NocoDB APIs with Auth or API token?" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Project settings", - "permalink": "/0.109.7/setup-and-usages/project-settings" - }, - "next": { - "title": "REST APIs", - "permalink": "/0.109.7/developer-resources/rest-apis" - } - }, - { - "unversionedId": "developer-resources/rest-apis", - "id": "version-0.109.7/developer-resources/rest-apis", - "title": "REST APIs", - "description": "NocoDB REST API Overview", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/rest-apis", - "permalink": "/0.109.7/developer-resources/rest-apis", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "REST APIs", - "description": "NocoDB REST API Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Accessing APIs", - "permalink": "/0.109.7/developer-resources/accessing-apis" - }, - "next": { - "title": "NocoDB SDK", - "permalink": "/0.109.7/developer-resources/sdk" - } - }, - { - "unversionedId": "developer-resources/sdk", - "id": "version-0.109.7/developer-resources/sdk", - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/sdk", - "permalink": "/0.109.7/developer-resources/sdk", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "NocoDB SDK", - "description": "NocoDB SDK Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "REST APIs", - "permalink": "/0.109.7/developer-resources/rest-apis" - }, - "next": { - "title": "Webhooks", - "permalink": "/0.109.7/developer-resources/webhooks" - } - }, - { - "unversionedId": "developer-resources/upload-via-api", - "id": "version-0.109.7/developer-resources/upload-via-api", - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/upload-via-api", - "permalink": "/0.109.7/developer-resources/upload-via-api", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Upload via API", - "description": "Upload files locally present or from public remote URL via API", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Webhooks", - "permalink": "/0.109.7/developer-resources/webhooks" - }, - "next": { - "title": "Architecture Overview", - "permalink": "/0.109.7/engineering/architecture" - } - }, - { - "unversionedId": "developer-resources/webhooks", - "id": "version-0.109.7/developer-resources/webhooks", - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations", - "source": "@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md", - "sourceDirName": "040.developer-resources", - "slug": "/developer-resources/webhooks", - "permalink": "/0.109.7/developer-resources/webhooks", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Webhooks", - "description": "Webhooks allows user to trigger on certain operations on following database operations" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "NocoDB SDK", - "permalink": "/0.109.7/developer-resources/sdk" - }, - "next": { - "title": "Upload via API", - "permalink": "/0.109.7/developer-resources/upload-via-api" - } - }, - { - "unversionedId": "engineering/architecture", - "id": "version-0.109.7/engineering/architecture", - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/architecture", - "permalink": "/0.109.7/engineering/architecture", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/010.architecture.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Architecture Overview", - "description": "Simple overview of NocoDB architecture", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upload via API", - "permalink": "/0.109.7/developer-resources/upload-via-api" - }, - "next": { - "title": "Repository structure", - "permalink": "/0.109.7/engineering/repository-structure" - } - }, - { - "unversionedId": "engineering/builds-and-releases", - "id": "version-0.109.7/engineering/builds-and-releases", - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/builds-and-releases", - "permalink": "/0.109.7/engineering/builds-and-releases", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "Releases & Builds", - "description": "NocoDB creates Docker and Binaries for each PR" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Playwright E2E Testing", - "permalink": "/0.109.7/engineering/playwright" - }, - "next": { - "title": "i18n translation", - "permalink": "/0.109.7/engineering/translation" - } - }, - { - "unversionedId": "engineering/development-setup", - "id": "version-0.109.7/engineering/development-setup", - "title": "Development Setup", - "description": "How to set-up your development environment", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/development-setup", - "permalink": "/0.109.7/engineering/development-setup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Development Setup", - "description": "How to set-up your development environment" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Repository structure", - "permalink": "/0.109.7/engineering/repository-structure" - }, - "next": { - "title": "Writing Unit Tests", - "permalink": "/0.109.7/engineering/unit-testing" - } - }, - { - "unversionedId": "engineering/playwright", - "id": "version-0.109.7/engineering/playwright", - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/playwright", - "permalink": "/0.109.7/engineering/playwright", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/050.playwright.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Playwright E2E Testing", - "description": "Overview to playwright based e2e tests" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Writing Unit Tests", - "permalink": "/0.109.7/engineering/unit-testing" - }, - "next": { - "title": "Releases & Builds", - "permalink": "/0.109.7/engineering/builds-and-releases" - } - }, - { - "unversionedId": "engineering/repository-structure", - "id": "version-0.109.7/engineering/repository-structure", - "title": "Repository structure", - "description": "Repository Structure", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/repository-structure", - "permalink": "/0.109.7/engineering/repository-structure", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Repository structure", - "description": "Repository Structure", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Architecture Overview", - "permalink": "/0.109.7/engineering/architecture" - }, - "next": { - "title": "Development Setup", - "permalink": "/0.109.7/engineering/development-setup" - } - }, - { - "unversionedId": "engineering/translation", - "id": "version-0.109.7/engineering/translation", - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/translation", - "permalink": "/0.109.7/engineering/translation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/070.translation.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 70, - "frontMatter": { - "title": "i18n translation", - "description": "Contribute to NocoDB's i18n translation" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Releases & Builds", - "permalink": "/0.109.7/engineering/builds-and-releases" - }, - "next": { - "title": "FAQs", - "permalink": "/0.109.7/FAQs" - } - }, - { - "unversionedId": "engineering/unit-testing", - "id": "version-0.109.7/engineering/unit-testing", - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing", - "source": "@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md", - "sourceDirName": "050.engineering", - "slug": "/engineering/unit-testing", - "permalink": "/0.109.7/engineering/unit-testing", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Writing Unit Tests", - "description": "Overview to Unit Testing" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Development Setup", - "permalink": "/0.109.7/engineering/development-setup" - }, - "next": { - "title": "Playwright E2E Testing", - "permalink": "/0.109.7/engineering/playwright" - } - }, - { - "unversionedId": "FAQs", - "id": "version-0.109.7/FAQs", - "title": "FAQs", - "description": "General FAQs", - "source": "@site/versioned_docs/version-0.109.7/060.FAQs.md", - "sourceDirName": ".", - "slug": "/FAQs", - "permalink": "/0.109.7/FAQs", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/060.FAQs.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "FAQs", - "description": "General FAQs" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "i18n translation", - "permalink": "/0.109.7/engineering/translation" - } - }, - { - "unversionedId": "getting-started/demos", - "id": "version-0.109.7/getting-started/demos", - "title": "Demos", - "description": "NocoDB Demos", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/demos", - "permalink": "/0.109.7/getting-started/demos", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/040.demos.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Demos", - "description": "NocoDB Demos", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Upgrading", - "permalink": "/0.109.7/getting-started/upgrading" - }, - "next": { - "title": "Dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard" - } - }, - { - "unversionedId": "getting-started/environment-variables", - "id": "version-0.109.7/getting-started/environment-variables", - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/environment-variables", - "permalink": "/0.109.7/getting-started/environment-variables", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Environment Variables", - "description": "Environment Variables for NocoDB!", - "hide_table_of_contents": true - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Installation", - "permalink": "/0.109.7/getting-started/installation" - }, - "next": { - "title": "Upgrading", - "permalink": "/0.109.7/getting-started/upgrading" - } - }, - { - "unversionedId": "getting-started/installation", - "id": "version-0.109.7/getting-started/installation", - "title": "Installation", - "description": "Simple installation - takes about three minutes!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/installation", - "permalink": "/0.109.7/getting-started/installation", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/010.installation.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Installation", - "description": "Simple installation - takes about three minutes!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Welcome", - "permalink": "/0.109.7/" - }, - "next": { - "title": "Environment Variables", - "permalink": "/0.109.7/getting-started/environment-variables" - } - }, - { - "unversionedId": "getting-started/upgrading", - "id": "version-0.109.7/getting-started/upgrading", - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!", - "source": "@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md", - "sourceDirName": "020.getting-started", - "slug": "/getting-started/upgrading", - "permalink": "/0.109.7/getting-started/upgrading", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Upgrading", - "description": "Upgrading NocoDB : Docker, Node and Homebrew!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Environment Variables", - "permalink": "/0.109.7/getting-started/environment-variables" - }, - "next": { - "title": "Demos", - "permalink": "/0.109.7/getting-started/demos" - } - }, - { - "unversionedId": "index", - "id": "version-0.109.7/index", - "title": "Welcome", - "description": "NocoDB Documentation", - "source": "@site/versioned_docs/version-0.109.7/010.index.md", - "sourceDirName": ".", - "slug": "/", - "permalink": "/0.109.7/", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/010.index.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Welcome", - "description": "NocoDB Documentation", - "slug": "/" - }, - "sidebar": "tutorialSidebar", - "next": { - "title": "Installation", - "permalink": "/0.109.7/getting-started/installation" - } - }, - { - "unversionedId": "setup-and-usages/account-settings", - "id": "version-0.109.7/setup-and-usages/account-settings", - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/account-settings", - "permalink": "/0.109.7/setup-and-usages/account-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 170, - "frontMatter": { - "title": "Account Settings", - "description": "NocoDB provides Account Settings for managing your account or more for super admin" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Views", - "permalink": "/0.109.7/setup-and-usages/views" - }, - "next": { - "title": "Languages", - "permalink": "/0.109.7/setup-and-usages/languages" - } - }, - { - "unversionedId": "setup-and-usages/audit", - "id": "version-0.109.7/setup-and-usages/audit", - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/audit", - "permalink": "/0.109.7/setup-and-usages/audit", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 250, - "frontMatter": { - "title": "Audit", - "description": "NocoDB provides all the user operation logs under Audit log" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Data Sources", - "permalink": "/0.109.7/setup-and-usages/meta-management" - }, - "next": { - "title": "Project settings", - "permalink": "/0.109.7/setup-and-usages/project-settings" - } - }, - { - "unversionedId": "setup-and-usages/code-snippets", - "id": "version-0.109.7/setup-and-usages/code-snippets", - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/code-snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 50, - "frontMatter": { - "title": "Code Snippets", - "description": "Code Snippets Examples in different ways" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Types", - "permalink": "/0.109.7/setup-and-usages/column-types" - }, - "next": { - "title": "Link To Another Record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record" - } - }, - { - "unversionedId": "setup-and-usages/column-operations", - "id": "version-0.109.7/setup-and-usages/column-operations", - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-operations", - "permalink": "/0.109.7/setup-and-usages/column-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 30, - "frontMatter": { - "title": "Column Operations", - "description": "Column Operations: Fields, Sort & Filter" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Table Operations", - "permalink": "/0.109.7/setup-and-usages/table-operations" - }, - "next": { - "title": "Column Types", - "permalink": "/0.109.7/setup-and-usages/column-types" - } - }, - { - "unversionedId": "setup-and-usages/column-types", - "id": "version-0.109.7/setup-and-usages/column-types", - "title": "Column Types", - "description": "NocoDB Column Types Overview", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/column-types", - "permalink": "/0.109.7/setup-and-usages/column-types", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 40, - "frontMatter": { - "title": "Column Types", - "description": "NocoDB Column Types Overview" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Column Operations", - "permalink": "/0.109.7/setup-and-usages/column-operations" - }, - "next": { - "title": "Code Snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets" - } - }, - { - "unversionedId": "setup-and-usages/dashboard", - "id": "version-0.109.7/setup-and-usages/dashboard", - "title": "Dashboard", - "description": "Accessing the Dashboard!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 10, - "frontMatter": { - "title": "Dashboard", - "description": "Accessing the Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Demos", - "permalink": "/0.109.7/getting-started/demos" - }, - "next": { - "title": "Table Operations", - "permalink": "/0.109.7/setup-and-usages/table-operations" - } - }, - { - "unversionedId": "setup-and-usages/display-value", - "id": "version-0.109.7/setup-and-usages/display-value", - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/display-value", - "permalink": "/0.109.7/setup-and-usages/display-value", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 110, - "frontMatter": { - "title": "Display Value", - "description": "Understanding Display Value in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Primary Key", - "permalink": "/0.109.7/setup-and-usages/primary-key" - }, - "next": { - "title": "Sync Schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema" - } - }, - { - "unversionedId": "setup-and-usages/expanded-form", - "id": "version-0.109.7/setup-and-usages/expanded-form", - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/expanded-form", - "permalink": "/0.109.7/setup-and-usages/expanded-form", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 190, - "frontMatter": { - "title": "Expanded Form", - "description": "NocoDB provides Expanded Form to let you edit your data easily" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Languages", - "permalink": "/0.109.7/setup-and-usages/languages" - }, - "next": { - "title": "Import Airtable to NocoDB", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - } - }, - { - "unversionedId": "setup-and-usages/formulas", - "id": "version-0.109.7/setup-and-usages/formulas", - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/formulas", - "permalink": "/0.109.7/setup-and-usages/formulas", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 90, - "frontMatter": { - "title": "Formulas", - "description": "NocoDB Formulas Syntaxes and Functions" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Rollup", - "permalink": "/0.109.7/setup-and-usages/rollup" - }, - "next": { - "title": "Primary Key", - "permalink": "/0.109.7/setup-and-usages/primary-key" - } - }, - { - "unversionedId": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "id": "version-0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 200, - "frontMatter": { - "title": "Import Airtable to NocoDB", - "description": "A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Expanded Form", - "permalink": "/0.109.7/setup-and-usages/expanded-form" - }, - "next": { - "title": "Usage Information", - "permalink": "/0.109.7/setup-and-usages/usage-information" - } - }, - { - "unversionedId": "setup-and-usages/keyboard-maneuver", - "id": "version-0.109.7/setup-and-usages/keyboard-maneuver", - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/keyboard-maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 150, - "frontMatter": { - "title": "Keyboard Maneuver", - "description": "Keyboard shortcuts" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share View", - "permalink": "/0.109.7/setup-and-usages/share-view" - }, - "next": { - "title": "Views", - "permalink": "/0.109.7/setup-and-usages/views" - } - }, - { - "unversionedId": "setup-and-usages/languages", - "id": "version-0.109.7/setup-and-usages/languages", - "title": "Languages", - "description": "Multiple languages on Dashboard!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/languages", - "permalink": "/0.109.7/setup-and-usages/languages", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 180, - "frontMatter": { - "title": "Languages", - "description": "Multiple languages on Dashboard!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Account Settings", - "permalink": "/0.109.7/setup-and-usages/account-settings" - }, - "next": { - "title": "Expanded Form", - "permalink": "/0.109.7/setup-and-usages/expanded-form" - } - }, - { - "unversionedId": "setup-and-usages/link-to-another-record", - "id": "version-0.109.7/setup-and-usages/link-to-another-record", - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/link-to-another-record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 60, - "frontMatter": { - "title": "Link To Another Record", - "description": "Understanding Link To Another Record (LTAR) Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Code Snippets", - "permalink": "/0.109.7/setup-and-usages/code-snippets" - }, - "next": { - "title": "Lookup", - "permalink": "/0.109.7/setup-and-usages/lookup" - } - }, - { - "unversionedId": "setup-and-usages/links", - "id": "version-0.109.7/setup-and-usages/links", - "title": "Links", - "description": "Understanding Link Columns!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/links", - "permalink": "/0.109.7/setup-and-usages/links", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 220, - "frontMatter": { - "title": "Links", - "description": "Understanding Link Columns!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Usage Information", - "permalink": "/0.109.7/setup-and-usages/usage-information" - }, - "next": { - "title": "Team & Auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth" - } - }, - { - "unversionedId": "setup-and-usages/lookup", - "id": "version-0.109.7/setup-and-usages/lookup", - "title": "Lookup", - "description": "Understanding Lookup Column!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/lookup", - "permalink": "/0.109.7/setup-and-usages/lookup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 70, - "frontMatter": { - "title": "Lookup", - "description": "Understanding Lookup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Link To Another Record", - "permalink": "/0.109.7/setup-and-usages/link-to-another-record" - }, - "next": { - "title": "Rollup", - "permalink": "/0.109.7/setup-and-usages/rollup" - } - }, - { - "unversionedId": "setup-and-usages/meta-management", - "id": "version-0.109.7/setup-and-usages/meta-management", - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/meta-management", - "permalink": "/0.109.7/setup-and-usages/meta-management", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 240, - "frontMatter": { - "title": "Data Sources", - "description": "NocoDB Data-Source sync, access control & re-config" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Team & Auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth" - }, - "next": { - "title": "Audit", - "permalink": "/0.109.7/setup-and-usages/audit" - } - }, - { - "unversionedId": "setup-and-usages/primary-key", - "id": "version-0.109.7/setup-and-usages/primary-key", - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/primary-key", - "permalink": "/0.109.7/setup-and-usages/primary-key", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 100, - "frontMatter": { - "title": "Primary Key", - "description": "Understanding Primary Key in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Formulas", - "permalink": "/0.109.7/setup-and-usages/formulas" - }, - "next": { - "title": "Display Value", - "permalink": "/0.109.7/setup-and-usages/display-value" - } - }, - { - "unversionedId": "setup-and-usages/project-settings", - "id": "version-0.109.7/setup-and-usages/project-settings", - "title": "Project settings", - "description": "General project configuration options", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/project-settings", - "permalink": "/0.109.7/setup-and-usages/project-settings", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 260, - "frontMatter": { - "title": "Project settings", - "description": "General project configuration options" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Audit", - "permalink": "/0.109.7/setup-and-usages/audit" - }, - "next": { - "title": "Accessing APIs", - "permalink": "/0.109.7/developer-resources/accessing-apis" - } - }, - { - "unversionedId": "setup-and-usages/rollup", - "id": "version-0.109.7/setup-and-usages/rollup", - "title": "Rollup", - "description": "Understanding Rollup Column!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/rollup", - "permalink": "/0.109.7/setup-and-usages/rollup", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 80, - "frontMatter": { - "title": "Rollup", - "description": "Understanding Rollup Column!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Lookup", - "permalink": "/0.109.7/setup-and-usages/lookup" - }, - "next": { - "title": "Formulas", - "permalink": "/0.109.7/setup-and-usages/formulas" - } - }, - { - "unversionedId": "setup-and-usages/share-base", - "id": "version-0.109.7/setup-and-usages/share-base", - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-base", - "permalink": "/0.109.7/setup-and-usages/share-base", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 130, - "frontMatter": { - "title": "Share Base", - "description": "Procedures to share a base & generating embedded iframe" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Sync Schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema" - }, - "next": { - "title": "Share View", - "permalink": "/0.109.7/setup-and-usages/share-view" - } - }, - { - "unversionedId": "setup-and-usages/share-view", - "id": "version-0.109.7/setup-and-usages/share-view", - "title": "Share View", - "description": "Procedures to share a view", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/share-view", - "permalink": "/0.109.7/setup-and-usages/share-view", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 140, - "frontMatter": { - "title": "Share View", - "description": "Procedures to share a view" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Share Base", - "permalink": "/0.109.7/setup-and-usages/share-base" - }, - "next": { - "title": "Keyboard Maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver" - } - }, - { - "unversionedId": "setup-and-usages/sync-schema", - "id": "version-0.109.7/setup-and-usages/sync-schema", - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/sync-schema", - "permalink": "/0.109.7/setup-and-usages/sync-schema", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 120, - "frontMatter": { - "title": "Sync Schema", - "description": "Schema changes made to database from outside NocoDB GUI can be synced" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Display Value", - "permalink": "/0.109.7/setup-and-usages/display-value" - }, - "next": { - "title": "Share Base", - "permalink": "/0.109.7/setup-and-usages/share-base" - } - }, - { - "unversionedId": "setup-and-usages/table-operations", - "id": "version-0.109.7/setup-and-usages/table-operations", - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/table-operations", - "permalink": "/0.109.7/setup-and-usages/table-operations", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 20, - "frontMatter": { - "title": "Table Operations", - "description": "Table Operations: Row, Column, Quick Import, Export & Import" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Dashboard", - "permalink": "/0.109.7/setup-and-usages/dashboard" - }, - "next": { - "title": "Column Operations", - "permalink": "/0.109.7/setup-and-usages/column-operations" - } - }, - { - "unversionedId": "setup-and-usages/team-and-auth", - "id": "version-0.109.7/setup-and-usages/team-and-auth", - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/team-and-auth", - "permalink": "/0.109.7/setup-and-usages/team-and-auth", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 230, - "frontMatter": { - "title": "Team & Auth", - "description": "Breakdown of roles & permissions for team user management" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Links", - "permalink": "/0.109.7/setup-and-usages/links" - }, - "next": { - "title": "Data Sources", - "permalink": "/0.109.7/setup-and-usages/meta-management" - } - }, - { - "unversionedId": "setup-and-usages/usage-information", - "id": "version-0.109.7/setup-and-usages/usage-information", - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/usage-information", - "permalink": "/0.109.7/setup-and-usages/usage-information", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 210, - "frontMatter": { - "title": "Usage Information", - "description": "Non-sensitive and anonymous usage information" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Import Airtable to NocoDB", - "permalink": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - }, - "next": { - "title": "Links", - "permalink": "/0.109.7/setup-and-usages/links" - } - }, - { - "unversionedId": "setup-and-usages/views", - "id": "version-0.109.7/setup-and-usages/views", - "title": "Views", - "description": "Understanding Views in NocoDB!", - "source": "@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md", - "sourceDirName": "030.setup-and-usages", - "slug": "/setup-and-usages/views", - "permalink": "/0.109.7/setup-and-usages/views", - "draft": false, - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md", - "tags": [], - "version": "0.109.7", - "sidebarPosition": 160, - "frontMatter": { - "title": "Views", - "description": "Understanding Views in NocoDB!" - }, - "sidebar": "tutorialSidebar", - "previous": { - "title": "Keyboard Maneuver", - "permalink": "/0.109.7/setup-and-usages/keyboard-maneuver" - }, - "next": { - "title": "Account Settings", - "permalink": "/0.109.7/setup-and-usages/account-settings" - } - } - ], - "drafts": [], - "sidebars": { - "tutorialSidebar": [ - { - "type": "doc", - "id": "version-0.109.7/index" - }, - { - "type": "category", - "label": "Getting Started", - "collapsible": true, - "collapsed": false, - "items": [ - { - "type": "doc", - "id": "version-0.109.7/getting-started/installation" - }, - { - "type": "doc", - "id": "version-0.109.7/getting-started/environment-variables" - }, - { - "type": "doc", - "id": "version-0.109.7/getting-started/upgrading" - }, - { - "type": "doc", - "id": "version-0.109.7/getting-started/demos" - } - ] - }, - { - "type": "category", - "label": "Product", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/dashboard" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/table-operations" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/column-operations" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/column-types" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/code-snippets" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/link-to-another-record" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/lookup" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/rollup" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/formulas" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/primary-key" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/display-value" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/sync-schema" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/share-base" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/share-view" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/keyboard-maneuver" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/views" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/account-settings" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/languages" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/expanded-form" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/usage-information" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/links" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/team-and-auth" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/meta-management" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/audit" - }, - { - "type": "doc", - "id": "version-0.109.7/setup-and-usages/project-settings" - } - ] - }, - { - "type": "category", - "label": "Developer Resources", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "version-0.109.7/developer-resources/accessing-apis" - }, - { - "type": "doc", - "id": "version-0.109.7/developer-resources/rest-apis" - }, - { - "type": "doc", - "id": "version-0.109.7/developer-resources/sdk" - }, - { - "type": "doc", - "id": "version-0.109.7/developer-resources/webhooks" - }, - { - "type": "doc", - "id": "version-0.109.7/developer-resources/upload-via-api" - } - ] - }, - { - "type": "category", - "label": "Engineering", - "collapsible": true, - "collapsed": true, - "items": [ - { - "type": "doc", - "id": "version-0.109.7/engineering/architecture" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/repository-structure" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/development-setup" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/unit-testing" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/playwright" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/builds-and-releases" - }, - { - "type": "doc", - "id": "version-0.109.7/engineering/translation" - } - ] - }, - { - "type": "doc", - "id": "version-0.109.7/FAQs" - } - ] - } - } - ] - } - }, - "docusaurus-plugin-content-pages": { - "default": null - }, - "docusaurus-plugin-debug": {}, - "docusaurus-theme-classic": {}, - "docusaurus-plugin-sass": {}, - "docusaurus-plugin-image-zoom": {}, - "docusaurus-plugin-ideal-image": {}, - "docusaurus-bootstrap-plugin": {}, - "docusaurus-mdx-fallback-plugin": {} -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/plugin-route-context-module-100.json b/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/plugin-route-context-module-100.json deleted file mode 100644 index 21c2cfd4e6..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-plugin-debug/default/plugin-route-context-module-100.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "docusaurus-plugin-debug", - "id": "default" -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus-theme-search-typesense/default/plugin-route-context-module-100.json b/packages/noco-docs/.docusaurus/docusaurus-theme-search-typesense/default/plugin-route-context-module-100.json deleted file mode 100644 index 0542602a01..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus-theme-search-typesense/default/plugin-route-context-module-100.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "docusaurus-theme-search-typesense", - "id": "default" -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/docusaurus.config.mjs b/packages/noco-docs/.docusaurus/docusaurus.config.mjs deleted file mode 100644 index 0696807af5..0000000000 --- a/packages/noco-docs/.docusaurus/docusaurus.config.mjs +++ /dev/null @@ -1,374 +0,0 @@ -/* - * AUTOGENERATED - DON'T EDIT - * Your edits in this file will be overwritten in the next build! - * Modify the docusaurus.config.js file at your site's root instead. - */ -export default { - "title": "NocoDB", - "tagline": "The Open Source Airtable Alternative", - "favicon": "img/favicon.ico", - "url": "https://nocodb.com", - "baseUrl": "/", - "organizationName": "nocodb", - "projectName": "nocodb", - "onBrokenLinks": "throw", - "onBrokenMarkdownLinks": "throw", - "i18n": { - "defaultLocale": "en", - "locales": [ - "en" - ], - "path": "i18n", - "localeConfigs": {} - }, - "plugins": [ - "docusaurus-plugin-sass", - "plugin-image-zoom", - [ - "@docusaurus/plugin-ideal-image", - { - "quality": 70, - "max": 1030, - "min": 640, - "steps": 2, - "disableInDev": false - } - ] - ], - "presets": [ - [ - "classic", - { - "docs": { - "sidebarPath": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/sidebars.js", - "routeBasePath": "/", - "editUrl": "https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/", - "lastVersion": "current", - "versions": { - "current": { - "label": "Latest" - }, - "0.109.7": { - "label": "0.109.7 - Old UI" - } - } - }, - "blog": false, - "theme": { - "customCss": "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/src/css/custom.scss" - }, - "sitemap": { - "changefreq": "weekly", - "priority": 0.5, - "ignorePatterns": [ - "/tags/**" - ], - "filename": "sitemap.xml" - } - } - ] - ], - "themeConfig": { - "image": "img/docusaurus-social-card.jpg", - "navbar": { - "title": "", - "logo": { - "alt": "NocoDB", - "src": "img/nocodb-full-color.png" - }, - "items": [ - { - "type": "docsVersionDropdown", - "position": "right", - "dropdownItemsBefore": [], - "dropdownItemsAfter": [] - }, - { - "href": "https://github.com/nocodb/nocodb", - "position": "right", - "className": "header-github-link", - "aria-label": "GitHub repository" - } - ], - "hideOnScroll": false - }, - "footer": { - "style": "dark", - "logo": { - "alt": "NocoDB", - "src": "img/icon.png", - "width": 50 - }, - "links": [ - { - "label": "GitHub", - "href": "https://github.com/facebook/docusaurus" - }, - { - "label": "Website", - "href": "https://nocodb.com/" - }, - { - "label": "Community", - "href": "https://community.nocodb.com/" - }, - { - "label": "Discord", - "href": "https://discord.gg/5RgZmkW" - }, - { - "label": "Twitter", - "href": "https://twitter.com/nocodb" - } - ], - "copyright": "Copyright © 2023 NocoDB" - }, - "prism": { - "theme": { - "plain": { - "color": "#393A34", - "backgroundColor": "#f6f8fa" - }, - "styles": [ - { - "types": [ - "comment", - "prolog", - "doctype", - "cdata" - ], - "style": { - "color": "#999988", - "fontStyle": "italic" - } - }, - { - "types": [ - "namespace" - ], - "style": { - "opacity": 0.7 - } - }, - { - "types": [ - "string", - "attr-value" - ], - "style": { - "color": "#e3116c" - } - }, - { - "types": [ - "punctuation", - "operator" - ], - "style": { - "color": "#393A34" - } - }, - { - "types": [ - "entity", - "url", - "symbol", - "number", - "boolean", - "variable", - "constant", - "property", - "regex", - "inserted" - ], - "style": { - "color": "#36acaa" - } - }, - { - "types": [ - "atrule", - "keyword", - "attr-name", - "selector" - ], - "style": { - "color": "#00a4db" - } - }, - { - "types": [ - "function", - "deleted", - "tag" - ], - "style": { - "color": "#d73a49" - } - }, - { - "types": [ - "function-variable" - ], - "style": { - "color": "#6f42c1" - } - }, - { - "types": [ - "tag", - "selector", - "keyword" - ], - "style": { - "color": "#00009f" - } - } - ] - }, - "darkTheme": { - "plain": { - "color": "#F8F8F2", - "backgroundColor": "#282A36" - }, - "styles": [ - { - "types": [ - "prolog", - "constant", - "builtin" - ], - "style": { - "color": "rgb(189, 147, 249)" - } - }, - { - "types": [ - "inserted", - "function" - ], - "style": { - "color": "rgb(80, 250, 123)" - } - }, - { - "types": [ - "deleted" - ], - "style": { - "color": "rgb(255, 85, 85)" - } - }, - { - "types": [ - "changed" - ], - "style": { - "color": "rgb(255, 184, 108)" - } - }, - { - "types": [ - "punctuation", - "symbol" - ], - "style": { - "color": "rgb(248, 248, 242)" - } - }, - { - "types": [ - "string", - "char", - "tag", - "selector" - ], - "style": { - "color": "rgb(255, 121, 198)" - } - }, - { - "types": [ - "keyword", - "variable" - ], - "style": { - "color": "rgb(189, 147, 249)", - "fontStyle": "italic" - } - }, - { - "types": [ - "comment" - ], - "style": { - "color": "rgb(98, 114, 164)" - } - }, - { - "types": [ - "attr-name" - ], - "style": { - "color": "rgb(241, 250, 140)" - } - } - ] - }, - "additionalLanguages": [], - "magicComments": [ - { - "className": "theme-code-block-highlighted-line", - "line": "highlight-next-line", - "block": { - "start": "highlight-start", - "end": "highlight-end" - } - } - ] - }, - "imageZoom": { - "selector": ".markdown img", - "options": { - "margin": 96, - "background": "rgba(0,0,0,0.25)", - "scrollOffset": 0 - } - }, - "colorMode": { - "defaultMode": "light", - "disableSwitch": false, - "respectPrefersColorScheme": false - }, - "docs": { - "versionPersistence": "localStorage", - "sidebar": { - "hideable": false, - "autoCollapseCategories": false - } - }, - "metadata": [], - "tableOfContents": { - "minHeadingLevel": 2, - "maxHeadingLevel": 3 - } - }, - "clientModules": [ - "/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/src/modules/tele.js" - ], - "baseUrlIssueBanner": true, - "onDuplicateRoutes": "warn", - "staticDirectories": [ - "static" - ], - "customFields": {}, - "themes": [], - "scripts": [], - "headTags": [], - "stylesheets": [], - "titleDelimiter": "|", - "noIndex": false, - "markdown": { - "mermaid": false - } -}; diff --git a/packages/noco-docs/.docusaurus/globalData.json b/packages/noco-docs/.docusaurus/globalData.json deleted file mode 100644 index 9093357248..0000000000 --- a/packages/noco-docs/.docusaurus/globalData.json +++ /dev/null @@ -1,781 +0,0 @@ -{ - "docusaurus-plugin-content-docs": { - "default": { - "path": "/", - "versions": [ - { - "name": "current", - "label": "Latest", - "isLast": true, - "path": "/", - "mainDocId": "index", - "docs": [ - { - "id": "account-settings/api-tokens", - "path": "/account-settings/api-tokens", - "sidebar": "tutorialSidebar" - }, - { - "id": "account-settings/oss-specific-details", - "path": "/account-settings/oss-specific-details", - "sidebar": "tutorialSidebar" - }, - { - "id": "account-settings/profile-page", - "path": "/account-settings/profile-page", - "sidebar": "tutorialSidebar" - }, - { - "id": "automation/webhook/actions-on-webhook", - "path": "/automation/webhook/actions-on-webhook", - "sidebar": "tutorialSidebar" - }, - { - "id": "automation/webhook/create-webhook", - "path": "/automation/webhook/create-webhook", - "sidebar": "tutorialSidebar" - }, - { - "id": "automation/webhook/webhook-overview", - "path": "/automation/webhook/webhook-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/actions-on-base", - "path": "/bases/actions-on-base", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/base-collaboration", - "path": "/bases/base-collaboration", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/base-overview", - "path": "/bases/base-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/create-base", - "path": "/bases/create-base", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/import-base-from-airtable", - "path": "/bases/import-base-from-airtable", - "sidebar": "tutorialSidebar" - }, - { - "id": "bases/share-base", - "path": "/bases/share-base", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/base-collaboration", - "path": "/collaboration/base-collaboration", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/collaboration-overview", - "path": "/collaboration/collaboration-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/oss-specific-details", - "path": "/collaboration/oss-specific-details", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/share-base", - "path": "/collaboration/share-base", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/share-view", - "path": "/collaboration/share-view", - "sidebar": "tutorialSidebar" - }, - { - "id": "collaboration/workspace-collaboration", - "path": "/collaboration/workspace-collaboration", - "sidebar": "tutorialSidebar" - }, - { - "id": "data-source/data-source-overview", - "path": "/data-source/data-source-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/architecture", - "path": "/engineering/architecture", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/builds-and-releases", - "path": "/engineering/builds-and-releases", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/development-setup", - "path": "/engineering/development-setup", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/playwright", - "path": "/engineering/playwright", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/repository-structure", - "path": "/engineering/repository-structure", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/translation", - "path": "/engineering/translation", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/unit-testing", - "path": "/engineering/unit-testing", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/writing-docs", - "path": "/engineering/writing-docs", - "sidebar": "tutorialSidebar" - }, - { - "id": "FAQs", - "path": "/FAQs", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/actions-on-field", - "path": "/fields/actions-on-field", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/display-value", - "path": "/fields/display-value", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/attachment", - "path": "/fields/field-types/custom-types/attachment", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/barcode", - "path": "/fields/field-types/custom-types/barcode", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/checkbox", - "path": "/fields/field-types/custom-types/checkbox", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/geometry", - "path": "/fields/field-types/custom-types/geometry", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/json", - "path": "/fields/field-types/custom-types/json", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/QR-code", - "path": "/fields/field-types/custom-types/QR-code", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/rating", - "path": "/fields/field-types/custom-types/rating", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/custom-types/specific-db-type", - "path": "/fields/field-types/custom-types/specific-db-type", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/date-time-based/date", - "path": "/fields/field-types/date-time-based/date", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/date-time-based/date-time", - "path": "/fields/field-types/date-time-based/date-time", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/date-time-based/duration", - "path": "/fields/field-types/date-time-based/duration", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/date-time-based/time", - "path": "/fields/field-types/date-time-based/time", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/conditional-expressions", - "path": "/fields/field-types/formula/conditional-expressions", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/date-functions", - "path": "/fields/field-types/formula/date-functions", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/formula", - "path": "/fields/field-types/formula/formula", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/numeric-functions", - "path": "/fields/field-types/formula/numeric-functions", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/operators", - "path": "/fields/field-types/formula/operators", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/formula/string-functions", - "path": "/fields/field-types/formula/string-functions", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/links-based/links", - "path": "/fields/field-types/links-based/links", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/links-based/lookup", - "path": "/fields/field-types/links-based/lookup", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/links-based/rollup", - "path": "/fields/field-types/links-based/rollup", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/numerical/currency", - "path": "/fields/field-types/numerical/currency", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/numerical/decimal", - "path": "/fields/field-types/numerical/decimal", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/numerical/number", - "path": "/fields/field-types/numerical/number", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/numerical/percent", - "path": "/fields/field-types/numerical/percent", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/select-based/multi-select", - "path": "/fields/field-types/select-based/multi-select", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/select-based/single-select", - "path": "/fields/field-types/select-based/single-select", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/text-based/email", - "path": "/fields/field-types/text-based/email", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/text-based/long-text", - "path": "/fields/field-types/text-based/long-text", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/text-based/phonenumber", - "path": "/fields/field-types/text-based/phonenumber", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/text-based/single-line-text", - "path": "/fields/field-types/text-based/single-line-text", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/field-types/text-based/url", - "path": "/fields/field-types/text-based/url", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/fields-overview", - "path": "/fields/fields-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/multi-fields-editor", - "path": "/fields/multi-fields-editor", - "sidebar": "tutorialSidebar" - }, - { - "id": "fields/primary-key", - "path": "/fields/primary-key", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/keyboard-shortcuts", - "path": "/getting-started/keyboard-shortcuts", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/quick-start", - "path": "/getting-started/quick-start", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/self-hosted/environment-variables", - "path": "/getting-started/self-hosted/environment-variables", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/self-hosted/installation", - "path": "/getting-started/self-hosted/installation", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/self-hosted/upgrading", - "path": "/getting-started/self-hosted/upgrading", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/terminologies", - "path": "/getting-started/terminologies", - "sidebar": "tutorialSidebar" - }, - { - "id": "index", - "path": "/", - "sidebar": "tutorialSidebar" - }, - { - "id": "records/actions-on-record", - "path": "/records/actions-on-record", - "sidebar": "tutorialSidebar" - }, - { - "id": "records/create-record", - "path": "/records/create-record", - "sidebar": "tutorialSidebar" - }, - { - "id": "records/expand-record", - "path": "/records/expand-record", - "sidebar": "tutorialSidebar" - }, - { - "id": "records/records-overview", - "path": "/records/records-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "roles-and-permissions/roles-permissions-overview", - "path": "/roles-and-permissions/roles-permissions-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-details/table-details-overview", - "path": "/table-details/table-details-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/download", - "path": "/table-operations/download", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/field-operations", - "path": "/table-operations/field-operations", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/filter", - "path": "/table-operations/filter", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/group-by", - "path": "/table-operations/group-by", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/overview", - "path": "/table-operations/overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/row-height", - "path": "/table-operations/row-height", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/search", - "path": "/table-operations/search", - "sidebar": "tutorialSidebar" - }, - { - "id": "table-operations/sort", - "path": "/table-operations/sort", - "sidebar": "tutorialSidebar" - }, - { - "id": "tables/actions-on-table", - "path": "/tables/actions-on-table", - "sidebar": "tutorialSidebar" - }, - { - "id": "tables/create-table", - "path": "/tables/create-table", - "sidebar": "tutorialSidebar" - }, - { - "id": "tables/create-table-via-import", - "path": "/tables/create-table-via-import", - "sidebar": "tutorialSidebar" - }, - { - "id": "tables/import-data-into-existing-table", - "path": "/tables/import-data-into-existing-table", - "sidebar": "tutorialSidebar" - }, - { - "id": "tables/table-overview", - "path": "/tables/table-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/actions-on-view", - "path": "/views/actions-on-view", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/create-view", - "path": "/views/create-view", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/share-view", - "path": "/views/share-view", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/view-types/form", - "path": "/views/view-types/form", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/view-types/gallery", - "path": "/views/view-types/gallery", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/view-types/grid", - "path": "/views/view-types/grid", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/view-types/kanban", - "path": "/views/view-types/kanban", - "sidebar": "tutorialSidebar" - }, - { - "id": "views/views-overview", - "path": "/views/views-overview", - "sidebar": "tutorialSidebar" - }, - { - "id": "workspaces/actions-on-workspace", - "path": "/workspaces/actions-on-workspace", - "sidebar": "tutorialSidebar" - }, - { - "id": "workspaces/create-workspace", - "path": "/workspaces/create-workspace", - "sidebar": "tutorialSidebar" - }, - { - "id": "workspaces/workspace-collaboration", - "path": "/workspaces/workspace-collaboration", - "sidebar": "tutorialSidebar" - }, - { - "id": "workspaces/workspace-overview", - "path": "/workspaces/workspace-overview", - "sidebar": "tutorialSidebar" - } - ], - "draftIds": [], - "sidebars": { - "tutorialSidebar": { - "link": { - "path": "/", - "label": "index" - } - } - } - }, - { - "name": "0.109.7", - "label": "0.109.7 - Old UI", - "isLast": false, - "path": "/0.109.7", - "mainDocId": "index", - "docs": [ - { - "id": "developer-resources/accessing-apis", - "path": "/0.109.7/developer-resources/accessing-apis", - "sidebar": "tutorialSidebar" - }, - { - "id": "developer-resources/rest-apis", - "path": "/0.109.7/developer-resources/rest-apis", - "sidebar": "tutorialSidebar" - }, - { - "id": "developer-resources/sdk", - "path": "/0.109.7/developer-resources/sdk", - "sidebar": "tutorialSidebar" - }, - { - "id": "developer-resources/upload-via-api", - "path": "/0.109.7/developer-resources/upload-via-api", - "sidebar": "tutorialSidebar" - }, - { - "id": "developer-resources/webhooks", - "path": "/0.109.7/developer-resources/webhooks", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/architecture", - "path": "/0.109.7/engineering/architecture", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/builds-and-releases", - "path": "/0.109.7/engineering/builds-and-releases", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/development-setup", - "path": "/0.109.7/engineering/development-setup", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/playwright", - "path": "/0.109.7/engineering/playwright", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/repository-structure", - "path": "/0.109.7/engineering/repository-structure", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/translation", - "path": "/0.109.7/engineering/translation", - "sidebar": "tutorialSidebar" - }, - { - "id": "engineering/unit-testing", - "path": "/0.109.7/engineering/unit-testing", - "sidebar": "tutorialSidebar" - }, - { - "id": "FAQs", - "path": "/0.109.7/FAQs", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/demos", - "path": "/0.109.7/getting-started/demos", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/environment-variables", - "path": "/0.109.7/getting-started/environment-variables", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/installation", - "path": "/0.109.7/getting-started/installation", - "sidebar": "tutorialSidebar" - }, - { - "id": "getting-started/upgrading", - "path": "/0.109.7/getting-started/upgrading", - "sidebar": "tutorialSidebar" - }, - { - "id": "index", - "path": "/0.109.7/", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/account-settings", - "path": "/0.109.7/setup-and-usages/account-settings", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/audit", - "path": "/0.109.7/setup-and-usages/audit", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/code-snippets", - "path": "/0.109.7/setup-and-usages/code-snippets", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/column-operations", - "path": "/0.109.7/setup-and-usages/column-operations", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/column-types", - "path": "/0.109.7/setup-and-usages/column-types", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/dashboard", - "path": "/0.109.7/setup-and-usages/dashboard", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/display-value", - "path": "/0.109.7/setup-and-usages/display-value", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/expanded-form", - "path": "/0.109.7/setup-and-usages/expanded-form", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/formulas", - "path": "/0.109.7/setup-and-usages/formulas", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "path": "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/keyboard-maneuver", - "path": "/0.109.7/setup-and-usages/keyboard-maneuver", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/languages", - "path": "/0.109.7/setup-and-usages/languages", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/link-to-another-record", - "path": "/0.109.7/setup-and-usages/link-to-another-record", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/links", - "path": "/0.109.7/setup-and-usages/links", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/lookup", - "path": "/0.109.7/setup-and-usages/lookup", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/meta-management", - "path": "/0.109.7/setup-and-usages/meta-management", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/primary-key", - "path": "/0.109.7/setup-and-usages/primary-key", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/project-settings", - "path": "/0.109.7/setup-and-usages/project-settings", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/rollup", - "path": "/0.109.7/setup-and-usages/rollup", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/share-base", - "path": "/0.109.7/setup-and-usages/share-base", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/share-view", - "path": "/0.109.7/setup-and-usages/share-view", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/sync-schema", - "path": "/0.109.7/setup-and-usages/sync-schema", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/table-operations", - "path": "/0.109.7/setup-and-usages/table-operations", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/team-and-auth", - "path": "/0.109.7/setup-and-usages/team-and-auth", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/usage-information", - "path": "/0.109.7/setup-and-usages/usage-information", - "sidebar": "tutorialSidebar" - }, - { - "id": "setup-and-usages/views", - "path": "/0.109.7/setup-and-usages/views", - "sidebar": "tutorialSidebar" - } - ], - "draftIds": [], - "sidebars": { - "tutorialSidebar": { - "link": { - "path": "/0.109.7/", - "label": "version-0.109.7/index" - } - } - } - } - ], - "breadcrumbs": true - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/i18n.json b/packages/noco-docs/.docusaurus/i18n.json deleted file mode 100644 index 285e67dc5a..0000000000 --- a/packages/noco-docs/.docusaurus/i18n.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "defaultLocale": "en", - "locales": [ - "en" - ], - "path": "i18n", - "currentLocale": "en", - "localeConfigs": { - "en": { - "label": "English", - "direction": "ltr", - "htmlLang": "en", - "calendar": "gregory", - "path": "en" - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/registry.js b/packages/noco-docs/.docusaurus/registry.js deleted file mode 100644 index 8d3fd5244b..0000000000 --- a/packages/noco-docs/.docusaurus/registry.js +++ /dev/null @@ -1,252 +0,0 @@ -export default { - '006c1c22': [() => import(/* webpackChunkName: '006c1c22' */ '~docs/default/tag-tags-geometry-c6f.json'), '~docs/default/tag-tags-geometry-c6f.json', require.resolveWeak('~docs/default/tag-tags-geometry-c6f.json')], - '00aa88f5': [() => import(/* webpackChunkName: '00aa88f5' */ '@site/docs/140.account-settings/030.oss-specific-details.md'), '@site/docs/140.account-settings/030.oss-specific-details.md', require.resolveWeak('@site/docs/140.account-settings/030.oss-specific-details.md')], - '013b8728': [() => import(/* webpackChunkName: '013b8728' */ '~docs/default/tag-tags-productivity-hacks-06f.json'), '~docs/default/tag-tags-productivity-hacks-06f.json', require.resolveWeak('~docs/default/tag-tags-productivity-hacks-06f.json')], - '016441e2': [() => import(/* webpackChunkName: '016441e2' */ '~docs/default/tag-tags-base-fdd.json'), '~docs/default/tag-tags-base-fdd.json', require.resolveWeak('~docs/default/tag-tags-base-fdd.json')], - '01865ba3': [() => import(/* webpackChunkName: '01865ba3' */ '@site/docs/020.getting-started/020.quick-start.md'), '@site/docs/020.getting-started/020.quick-start.md', require.resolveWeak('@site/docs/020.getting-started/020.quick-start.md')], - '023320c3': [() => import(/* webpackChunkName: '023320c3' */ '@site/docs/140.account-settings/020.api-tokens.md'), '@site/docs/140.account-settings/020.api-tokens.md', require.resolveWeak('@site/docs/140.account-settings/020.api-tokens.md')], - '037e2c34': [() => import(/* webpackChunkName: '037e2c34' */ '@site/docs/120.collaboration/030.share-base.md'), '@site/docs/120.collaboration/030.share-base.md', require.resolveWeak('@site/docs/120.collaboration/030.share-base.md')], - '03af2c79': [() => import(/* webpackChunkName: '03af2c79' */ '~docs/default/tag-tags-qr-code-af6.json'), '~docs/default/tag-tags-qr-code-af6.json', require.resolveWeak('~docs/default/tag-tags-qr-code-af6.json')], - '052736b6': [() => import(/* webpackChunkName: '052736b6' */ '@site/docs/130.automation/020.webhook/040.actions-on-webhook.md'), '@site/docs/130.automation/020.webhook/040.actions-on-webhook.md', require.resolveWeak('@site/docs/130.automation/020.webhook/040.actions-on-webhook.md')], - '052c7f5b': [() => import(/* webpackChunkName: '052c7f5b' */ '~docs/default/tag-tags-number-1d2.json'), '~docs/default/tag-tags-number-1d2.json', require.resolveWeak('~docs/default/tag-tags-number-1d2.json')], - '0834b429': [() => import(/* webpackChunkName: '0834b429' */ '@site/docs/150.engineering/060.builds-and-releases.md'), '@site/docs/150.engineering/060.builds-and-releases.md', require.resolveWeak('@site/docs/150.engineering/060.builds-and-releases.md')], - '0908b333': [() => import(/* webpackChunkName: '0908b333' */ '@site/docs/090.views/040.view-types/010.grid.md'), '@site/docs/090.views/040.view-types/010.grid.md', require.resolveWeak('@site/docs/090.views/040.view-types/010.grid.md')], - '0938fe36': [() => import(/* webpackChunkName: '0938fe36' */ '~docs/default/tag-tags-expanded-record-87b.json'), '~docs/default/tag-tags-expanded-record-87b.json', require.resolveWeak('~docs/default/tag-tags-expanded-record-87b.json')], - '09ceb1a0': [() => import(/* webpackChunkName: '09ceb1a0' */ '@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md'), '@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md')], - '0a7c5cbc': [() => import(/* webpackChunkName: '0a7c5cbc' */ '@site/docs/070.fields/040.field-types/060.formula/010.formula.md'), '@site/docs/070.fields/040.field-types/060.formula/010.formula.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/010.formula.md')], - '0ac1e38e': [() => import(/* webpackChunkName: '0ac1e38e' */ '@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md'), '@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md')], - '0bd8cdc6': [() => import(/* webpackChunkName: '0bd8cdc6' */ '~docs/default/tag-tags-roles-236.json'), '~docs/default/tag-tags-roles-236.json', require.resolveWeak('~docs/default/tag-tags-roles-236.json')], - '0c130525': [() => import(/* webpackChunkName: '0c130525' */ '@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md'), '@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md')], - '0cab3fcc': [() => import(/* webpackChunkName: '0cab3fcc' */ '@site/docs/130.automation/020.webhook/020.create-webhook.md'), '@site/docs/130.automation/020.webhook/020.create-webhook.md', require.resolveWeak('@site/docs/130.automation/020.webhook/020.create-webhook.md')], - '0d8de604': [() => import(/* webpackChunkName: '0d8de604' */ '~docs/default/tag-tags-custom-types-2ab.json'), '~docs/default/tag-tags-custom-types-2ab.json', require.resolveWeak('~docs/default/tag-tags-custom-types-2ab.json')], - '0ecc5e11': [() => import(/* webpackChunkName: '0ecc5e11' */ '@site/docs/020.getting-started/040.keyboard-shortcuts.md'), '@site/docs/020.getting-started/040.keyboard-shortcuts.md', require.resolveWeak('@site/docs/020.getting-started/040.keyboard-shortcuts.md')], - '0f4f52c0': [() => import(/* webpackChunkName: '0f4f52c0' */ '@site/docs/050.tables/060.actions-on-table.md'), '@site/docs/050.tables/060.actions-on-table.md', require.resolveWeak('@site/docs/050.tables/060.actions-on-table.md')], - '0f6b8098': [() => import(/* webpackChunkName: '0f6b8098' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md')], - '105fb6bf': [() => import(/* webpackChunkName: '105fb6bf' */ '~docs/default/tag-tags-url-4e5.json'), '~docs/default/tag-tags-url-4e5.json', require.resolveWeak('~docs/default/tag-tags-url-4e5.json')], - '10779e77': [() => import(/* webpackChunkName: '10779e77' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md')], - '10b0edf0': [() => import(/* webpackChunkName: '10b0edf0' */ '~docs/default/tag-tags-checkbox-bb0.json'), '~docs/default/tag-tags-checkbox-bb0.json', require.resolveWeak('~docs/default/tag-tags-checkbox-bb0.json')], - '11d84c26': [() => import(/* webpackChunkName: '11d84c26' */ '@site/docs/070.fields/040.field-types/010.text-based/030.email.md'), '@site/docs/070.fields/040.field-types/010.text-based/030.email.md', require.resolveWeak('@site/docs/070.fields/040.field-types/010.text-based/030.email.md')], - '14095bfc': [() => import(/* webpackChunkName: '14095bfc' */ '@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md'), '@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md', require.resolveWeak('@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md')], - '147f12f7': [() => import(/* webpackChunkName: '147f12f7' */ '~docs/default/tag-tags-rename-649.json'), '~docs/default/tag-tags-rename-649.json', require.resolveWeak('~docs/default/tag-tags-rename-649.json')], - '14d6025d': [() => import(/* webpackChunkName: '14d6025d' */ '@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md'), '@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md', require.resolveWeak('@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md')], - '16d5baaf': [() => import(/* webpackChunkName: '16d5baaf' */ '@site/docs/070.fields/040.field-types/040.links-based/010.links.md'), '@site/docs/070.fields/040.field-types/040.links-based/010.links.md', require.resolveWeak('@site/docs/070.fields/040.field-types/040.links-based/010.links.md')], - '177ad845': [() => import(/* webpackChunkName: '177ad845' */ '~docs/default/tag-tags-formula-732.json'), '~docs/default/tag-tags-formula-732.json', require.resolveWeak('~docs/default/tag-tags-formula-732.json')], - '17896441': [() => import(/* webpackChunkName: '17896441' */ '@theme/DocItem'), '@theme/DocItem', require.resolveWeak('@theme/DocItem')], - '17a7e1f3': [() => import(/* webpackChunkName: '17a7e1f3' */ '~docs/default/tag-tags-form-53b.json'), '~docs/default/tag-tags-form-53b.json', require.resolveWeak('~docs/default/tag-tags-form-53b.json')], - '181f370e': [() => import(/* webpackChunkName: '181f370e' */ '~docs/default/tag-tags-barcode-e70.json'), '~docs/default/tag-tags-barcode-e70.json', require.resolveWeak('~docs/default/tag-tags-barcode-e70.json')], - '18c96d41': [() => import(/* webpackChunkName: '18c96d41' */ '@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md'), '@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md')], - '1970c274': [() => import(/* webpackChunkName: '1970c274' */ '@site/docs/090.views/040.view-types/040.kanban.md'), '@site/docs/090.views/040.view-types/040.kanban.md', require.resolveWeak('@site/docs/090.views/040.view-types/040.kanban.md')], - '1b14dca8': [() => import(/* webpackChunkName: '1b14dca8' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md')], - '1b3738fb': [() => import(/* webpackChunkName: '1b3738fb' */ '@site/docs/150.engineering/040.unit-testing.md'), '@site/docs/150.engineering/040.unit-testing.md', require.resolveWeak('@site/docs/150.engineering/040.unit-testing.md')], - '1be78505': [() => import(/* webpackChunkName: '1be78505' */ '@theme/DocPage'), '@theme/DocPage', require.resolveWeak('@theme/DocPage')], - '1c2ab191': [() => import(/* webpackChunkName: '1c2ab191' */ '~docs/default/tag-tags-overview-08f.json'), '~docs/default/tag-tags-overview-08f.json', require.resolveWeak('~docs/default/tag-tags-overview-08f.json')], - '1e403fb7': [() => import(/* webpackChunkName: '1e403fb7' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md')], - '1e898359': [() => import(/* webpackChunkName: '1e898359' */ '@site/versioned_docs/version-0.109.7/010.index.md'), '@site/versioned_docs/version-0.109.7/010.index.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/010.index.md')], - '20e10381': [() => import(/* webpackChunkName: '20e10381' */ '@site/docs/990.FAQs.md'), '@site/docs/990.FAQs.md', require.resolveWeak('@site/docs/990.FAQs.md')], - '2226a1e9': [() => import(/* webpackChunkName: '2226a1e9' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md')], - '224f2b0f': [() => import(/* webpackChunkName: '224f2b0f' */ '@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md'), '@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md')], - '22580739': [() => import(/* webpackChunkName: '22580739' */ '@site/docs/060.table-operations/020.field-operations.md'), '@site/docs/060.table-operations/020.field-operations.md', require.resolveWeak('@site/docs/060.table-operations/020.field-operations.md')], - '22aab9a3': [() => import(/* webpackChunkName: '22aab9a3' */ '@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md'), '@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md', require.resolveWeak('@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md')], - '23371042': [() => import(/* webpackChunkName: '23371042' */ '~docs/default/tag-tags-members-c98.json'), '~docs/default/tag-tags-members-c98.json', require.resolveWeak('~docs/default/tag-tags-members-c98.json')], - '25ad7bcb': [() => import(/* webpackChunkName: '25ad7bcb' */ '@site/docs/120.collaboration/020.base-collaboration.md'), '@site/docs/120.collaboration/020.base-collaboration.md', require.resolveWeak('@site/docs/120.collaboration/020.base-collaboration.md')], - '276e2b0f': [() => import(/* webpackChunkName: '276e2b0f' */ '~docs/default/tag-tags-edit-81a.json'), '~docs/default/tag-tags-edit-81a.json', require.resolveWeak('~docs/default/tag-tags-edit-81a.json')], - '278121a5': [() => import(/* webpackChunkName: '278121a5' */ '@site/docs/080.records/030.expand-record.md'), '@site/docs/080.records/030.expand-record.md', require.resolveWeak('@site/docs/080.records/030.expand-record.md')], - '27b20541': [() => import(/* webpackChunkName: '27b20541' */ '~docs/default/tag-tags-gallery-view-170.json'), '~docs/default/tag-tags-gallery-view-170.json', require.resolveWeak('~docs/default/tag-tags-gallery-view-170.json')], - '2888903d': [() => import(/* webpackChunkName: '2888903d' */ '@site/docs/080.records/020.create-record.md'), '@site/docs/080.records/020.create-record.md', require.resolveWeak('@site/docs/080.records/020.create-record.md')], - '2a1ace55': [() => import(/* webpackChunkName: '2a1ace55' */ '@site/docs/020.getting-started/050.self-hosted/010.installation.md'), '@site/docs/020.getting-started/050.self-hosted/010.installation.md', require.resolveWeak('@site/docs/020.getting-started/050.self-hosted/010.installation.md')], - '2a42d1d2': [() => import(/* webpackChunkName: '2a42d1d2' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md')], - '2b263996': [() => import(/* webpackChunkName: '2b263996' */ '@site/docs/130.automation/020.webhook/010.webhook-overview.md'), '@site/docs/130.automation/020.webhook/010.webhook-overview.md', require.resolveWeak('@site/docs/130.automation/020.webhook/010.webhook-overview.md')], - '2bb712de': [() => import(/* webpackChunkName: '2bb712de' */ '@site/docs/090.views/025.share-view.md'), '@site/docs/090.views/025.share-view.md', require.resolveWeak('@site/docs/090.views/025.share-view.md')], - '2c8a1eac': [() => import(/* webpackChunkName: '2c8a1eac' */ '~docs/default/tag-tags-kanban-view-4dc.json'), '~docs/default/tag-tags-kanban-view-4dc.json', require.resolveWeak('~docs/default/tag-tags-kanban-view-4dc.json')], - '2cbe0325': [() => import(/* webpackChunkName: '2cbe0325' */ '@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md'), '@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md', require.resolveWeak('@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md')], - '2d5bd7a1': [() => import(/* webpackChunkName: '2d5bd7a1' */ '~docs/default/tag-tags-duplicate-74f.json'), '~docs/default/tag-tags-duplicate-74f.json', require.resolveWeak('~docs/default/tag-tags-duplicate-74f.json')], - '2d8eea4e': [() => import(/* webpackChunkName: '2d8eea4e' */ '~docs/default/tag-tags-invite-e9c.json'), '~docs/default/tag-tags-invite-e9c.json', require.resolveWeak('~docs/default/tag-tags-invite-e9c.json')], - '2eb4ec02': [() => import(/* webpackChunkName: '2eb4ec02' */ '@site/docs/040.bases/020.create-base.md'), '@site/docs/040.bases/020.create-base.md', require.resolveWeak('@site/docs/040.bases/020.create-base.md')], - '2fa98934': [() => import(/* webpackChunkName: '2fa98934' */ '~docs/default/tag-tags-workspace-6ef.json'), '~docs/default/tag-tags-workspace-6ef.json', require.resolveWeak('~docs/default/tag-tags-workspace-6ef.json')], - '300d0b41': [() => import(/* webpackChunkName: '300d0b41' */ '~docs/default/tag-tags-enable-429.json'), '~docs/default/tag-tags-enable-429.json', require.resolveWeak('~docs/default/tag-tags-enable-429.json')], - '310a23cf': [() => import(/* webpackChunkName: '310a23cf' */ '@site/docs/070.fields/010.fields-overview.md'), '@site/docs/070.fields/010.fields-overview.md', require.resolveWeak('@site/docs/070.fields/010.fields-overview.md')], - '319e5695': [() => import(/* webpackChunkName: '319e5695' */ '@site/docs/030.workspaces/040.actions-on-workspace.md'), '@site/docs/030.workspaces/040.actions-on-workspace.md', require.resolveWeak('@site/docs/030.workspaces/040.actions-on-workspace.md')], - '31befc1e': [() => import(/* webpackChunkName: '31befc1e' */ '@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md'), '@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md')], - '31f9cd1a': [() => import(/* webpackChunkName: '31f9cd1a' */ '@site/docs/070.fields/040.field-types/020.numerical/030.percent.md'), '@site/docs/070.fields/040.field-types/020.numerical/030.percent.md', require.resolveWeak('@site/docs/070.fields/040.field-types/020.numerical/030.percent.md')], - '32e0f401': [() => import(/* webpackChunkName: '32e0f401' */ '@site/docs/050.tables/020.create-table.md'), '@site/docs/050.tables/020.create-table.md', require.resolveWeak('@site/docs/050.tables/020.create-table.md')], - '34b71ab6': [() => import(/* webpackChunkName: '34b71ab6' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md')], - '35af5afe': [() => import(/* webpackChunkName: '35af5afe' */ '@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md'), '@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md', require.resolveWeak('@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md')], - '3615d78a': [() => import(/* webpackChunkName: '3615d78a' */ '@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md'), '@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md')], - '3720c009': [() => import(/* webpackChunkName: '3720c009' */ '@theme/DocTagsListPage'), '@theme/DocTagsListPage', require.resolveWeak('@theme/DocTagsListPage')], - '3721b01f': [() => import(/* webpackChunkName: '3721b01f' */ '/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json'), '/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json', require.resolveWeak('/Users/rajuudava/NocoDB/nocodb/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json')], - '3a7c0cf6': [() => import(/* webpackChunkName: '3a7c0cf6' */ '~docs/default/tag-tags-collaboration-e59.json'), '~docs/default/tag-tags-collaboration-e59.json', require.resolveWeak('~docs/default/tag-tags-collaboration-e59.json')], - '3aad05b1': [() => import(/* webpackChunkName: '3aad05b1' */ '~docs/default/tag-tags-account-settings-aab.json'), '~docs/default/tag-tags-account-settings-aab.json', require.resolveWeak('~docs/default/tag-tags-account-settings-aab.json')], - '3ac80ba6': [() => import(/* webpackChunkName: '3ac80ba6' */ '~docs/default/tag-tags-data-sources-eaa.json'), '~docs/default/tag-tags-data-sources-eaa.json', require.resolveWeak('~docs/default/tag-tags-data-sources-eaa.json')], - '3da8114c': [() => import(/* webpackChunkName: '3da8114c' */ '~docs/default/tag-tags-workspaces-5c0.json'), '~docs/default/tag-tags-workspaces-5c0.json', require.resolveWeak('~docs/default/tag-tags-workspaces-5c0.json')], - '408139c4': [() => import(/* webpackChunkName: '408139c4' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md')], - '4145e2b1': [() => import(/* webpackChunkName: '4145e2b1' */ '~docs/default/tag-tags-hide-1ea.json'), '~docs/default/tag-tags-hide-1ea.json', require.resolveWeak('~docs/default/tag-tags-hide-1ea.json')], - '44655909': [() => import(/* webpackChunkName: '44655909' */ '~docs/default/tag-tags-text-based-types-00e.json'), '~docs/default/tag-tags-text-based-types-00e.json', require.resolveWeak('~docs/default/tag-tags-text-based-types-00e.json')], - '458ed5bd': [() => import(/* webpackChunkName: '458ed5bd' */ '~docs/default/tag-tags-dashboard-5a9.json'), '~docs/default/tag-tags-dashboard-5a9.json', require.resolveWeak('~docs/default/tag-tags-dashboard-5a9.json')], - '45c1aab2': [() => import(/* webpackChunkName: '45c1aab2' */ '~docs/default/tag-tags-email-e39.json'), '~docs/default/tag-tags-email-e39.json', require.resolveWeak('~docs/default/tag-tags-email-e39.json')], - '4bab5100': [() => import(/* webpackChunkName: '4bab5100' */ '@site/docs/040.bases/050.base-collaboration.md'), '@site/docs/040.bases/050.base-collaboration.md', require.resolveWeak('@site/docs/040.bases/050.base-collaboration.md')], - '4c6b0ee7': [() => import(/* webpackChunkName: '4c6b0ee7' */ '@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md'), '@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md', require.resolveWeak('@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md')], - '4cd0de40': [() => import(/* webpackChunkName: '4cd0de40' */ '@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md'), '@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md')], - '4ed1386c': [() => import(/* webpackChunkName: '4ed1386c' */ '@site/versioned_docs/version-0.109.7/060.FAQs.md'), '@site/versioned_docs/version-0.109.7/060.FAQs.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/060.FAQs.md')], - '4efb7b3c': [() => import(/* webpackChunkName: '4efb7b3c' */ '@site/docs/150.engineering/010.architecture.md'), '@site/docs/150.engineering/010.architecture.md', require.resolveWeak('@site/docs/150.engineering/010.architecture.md')], - '4f577b60': [() => import(/* webpackChunkName: '4f577b60' */ '~docs/default/tag-tags-records-b8e.json'), '~docs/default/tag-tags-records-b8e.json', require.resolveWeak('~docs/default/tag-tags-records-b8e.json')], - '523749b8': [() => import(/* webpackChunkName: '523749b8' */ '~docs/default/tag-tags-search-b34.json'), '~docs/default/tag-tags-search-b34.json', require.resolveWeak('~docs/default/tag-tags-search-b34.json')], - '524f61e0': [() => import(/* webpackChunkName: '524f61e0' */ '~docs/default/tag-tags-delete-7ef.json'), '~docs/default/tag-tags-delete-7ef.json', require.resolveWeak('~docs/default/tag-tags-delete-7ef.json')], - '525fa7b4': [() => import(/* webpackChunkName: '525fa7b4' */ '@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md'), '@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md')], - '529c2981': [() => import(/* webpackChunkName: '529c2981' */ '@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md'), '@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md')], - '52df1fbb': [() => import(/* webpackChunkName: '52df1fbb' */ '@site/docs/150.engineering/020.repository-structure.md'), '@site/docs/150.engineering/020.repository-structure.md', require.resolveWeak('@site/docs/150.engineering/020.repository-structure.md')], - '5436f7e6': [() => import(/* webpackChunkName: '5436f7e6' */ '@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md'), '@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md')], - '55156658': [() => import(/* webpackChunkName: '55156658' */ '~docs/default/tag-tags-lookup-6f6.json'), '~docs/default/tag-tags-lookup-6f6.json', require.resolveWeak('~docs/default/tag-tags-lookup-6f6.json')], - '55403ccd': [() => import(/* webpackChunkName: '55403ccd' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md')], - '55960ee5': [() => import(/* webpackChunkName: '55960ee5' */ '~docs/default/tags-list-current-prop-15a.json'), '~docs/default/tags-list-current-prop-15a.json', require.resolveWeak('~docs/default/tags-list-current-prop-15a.json')], - '576905f1': [() => import(/* webpackChunkName: '576905f1' */ '@site/docs/120.collaboration/050.oss-specific-details.md'), '@site/docs/120.collaboration/050.oss-specific-details.md', require.resolveWeak('@site/docs/120.collaboration/050.oss-specific-details.md')], - '58354ae8': [() => import(/* webpackChunkName: '58354ae8' */ '@site/docs/150.engineering/030.development-setup.md'), '@site/docs/150.engineering/030.development-setup.md', require.resolveWeak('@site/docs/150.engineering/030.development-setup.md')], - '5af3a857': [() => import(/* webpackChunkName: '5af3a857' */ '@site/docs/090.views/040.view-types/030.form.md'), '@site/docs/090.views/040.view-types/030.form.md', require.resolveWeak('@site/docs/090.views/040.view-types/030.form.md')], - '5b61f490': [() => import(/* webpackChunkName: '5b61f490' */ '~docs/default/tag-tags-expand-158.json'), '~docs/default/tag-tags-expand-158.json', require.resolveWeak('~docs/default/tag-tags-expand-158.json')], - '5c9cf4c7': [() => import(/* webpackChunkName: '5c9cf4c7' */ '@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md'), '@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md')], - '5ccd3149': [() => import(/* webpackChunkName: '5ccd3149' */ '@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md'), '@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md')], - '5dcc9f57': [() => import(/* webpackChunkName: '5dcc9f57' */ '~docs/default/tag-tags-table-operations-01a.json'), '~docs/default/tag-tags-table-operations-01a.json', require.resolveWeak('~docs/default/tag-tags-table-operations-01a.json')], - '5eaf3a75': [() => import(/* webpackChunkName: '5eaf3a75' */ '@site/docs/030.workspaces/020.create-workspace.md'), '@site/docs/030.workspaces/020.create-workspace.md', require.resolveWeak('@site/docs/030.workspaces/020.create-workspace.md')], - '603e048e': [() => import(/* webpackChunkName: '603e048e' */ '@site/docs/070.fields/030.display-value.md'), '@site/docs/070.fields/030.display-value.md', require.resolveWeak('@site/docs/070.fields/030.display-value.md')], - '60b8b995': [() => import(/* webpackChunkName: '60b8b995' */ '@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md'), '@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md', require.resolveWeak('@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md')], - '615746d5': [() => import(/* webpackChunkName: '615746d5' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md')], - '61a3d417': [() => import(/* webpackChunkName: '61a3d417' */ '@site/docs/090.views/020.create-view.md'), '@site/docs/090.views/020.create-view.md', require.resolveWeak('@site/docs/090.views/020.create-view.md')], - '61af7884': [() => import(/* webpackChunkName: '61af7884' */ '~docs/default/tag-tags-form-view-94e.json'), '~docs/default/tag-tags-form-view-94e.json', require.resolveWeak('~docs/default/tag-tags-form-view-94e.json')], - '6233b6dc': [() => import(/* webpackChunkName: '6233b6dc' */ '~docs/default/tag-tags-excel-813.json'), '~docs/default/tag-tags-excel-813.json', require.resolveWeak('~docs/default/tag-tags-excel-813.json')], - '6485a1bf': [() => import(/* webpackChunkName: '6485a1bf' */ '~docs/default/tag-tags-multi-select-0c8.json'), '~docs/default/tag-tags-multi-select-0c8.json', require.resolveWeak('~docs/default/tag-tags-multi-select-0c8.json')], - '6502d10a': [() => import(/* webpackChunkName: '6502d10a' */ '~docs/default/tag-tags-long-text-c05.json'), '~docs/default/tag-tags-long-text-c05.json', require.resolveWeak('~docs/default/tag-tags-long-text-c05.json')], - '654123f4': [() => import(/* webpackChunkName: '654123f4' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md')], - '68fa8000': [() => import(/* webpackChunkName: '68fa8000' */ '@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md'), '@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md')], - '69895f00': [() => import(/* webpackChunkName: '69895f00' */ '@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md'), '@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md', require.resolveWeak('@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md')], - '69bed9e5': [() => import(/* webpackChunkName: '69bed9e5' */ '@site/docs/060.table-operations/060.row-height.md'), '@site/docs/060.table-operations/060.row-height.md', require.resolveWeak('@site/docs/060.table-operations/060.row-height.md')], - '69bee932': [() => import(/* webpackChunkName: '69bee932' */ '@site/docs/020.getting-started/030.terminologies.md'), '@site/docs/020.getting-started/030.terminologies.md', require.resolveWeak('@site/docs/020.getting-started/030.terminologies.md')], - '6a0eac6b': [() => import(/* webpackChunkName: '6a0eac6b' */ '@site/docs/060.table-operations/080.download.md'), '@site/docs/060.table-operations/080.download.md', require.resolveWeak('@site/docs/060.table-operations/080.download.md')], - '6a105426': [() => import(/* webpackChunkName: '6a105426' */ '~docs/default/tag-tags-getting-started-564.json'), '~docs/default/tag-tags-getting-started-564.json', require.resolveWeak('~docs/default/tag-tags-getting-started-564.json')], - '6a2ab9d1': [() => import(/* webpackChunkName: '6a2ab9d1' */ '~docs/default/tag-tags-date-time-e33.json'), '~docs/default/tag-tags-date-time-e33.json', require.resolveWeak('~docs/default/tag-tags-date-time-e33.json')], - '6aee45b4': [() => import(/* webpackChunkName: '6aee45b4' */ '~docs/default/tag-tags-select-based-types-ed9.json'), '~docs/default/tag-tags-select-based-types-ed9.json', require.resolveWeak('~docs/default/tag-tags-select-based-types-ed9.json')], - '6d2f78d9': [() => import(/* webpackChunkName: '6d2f78d9' */ '@site/docs/070.fields/040.field-types/050.custom-types/080.json.md'), '@site/docs/070.fields/040.field-types/050.custom-types/080.json.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/080.json.md')], - '6f7695df': [() => import(/* webpackChunkName: '6f7695df' */ '@site/docs/040.bases/060.share-base.md'), '@site/docs/040.bases/060.share-base.md', require.resolveWeak('@site/docs/040.bases/060.share-base.md')], - '6fe2a298': [() => import(/* webpackChunkName: '6fe2a298' */ '@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md'), '@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md')], - '70424118': [() => import(/* webpackChunkName: '70424118' */ '~docs/default/tag-tags-engineering-fa4.json'), '~docs/default/tag-tags-engineering-fa4.json', require.resolveWeak('~docs/default/tag-tags-engineering-fa4.json')], - '70efa42e': [() => import(/* webpackChunkName: '70efa42e' */ '@site/docs/050.tables/030.create-table-via-import.md'), '@site/docs/050.tables/030.create-table-via-import.md', require.resolveWeak('@site/docs/050.tables/030.create-table-via-import.md')], - '71540999': [() => import(/* webpackChunkName: '71540999' */ '@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md'), '@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md')], - '71f80183': [() => import(/* webpackChunkName: '71f80183' */ '~docs/default/tag-tags-shortcuts-33c.json'), '~docs/default/tag-tags-shortcuts-33c.json', require.resolveWeak('~docs/default/tag-tags-shortcuts-33c.json')], - '78ec2f26': [() => import(/* webpackChunkName: '78ec2f26' */ '~docs/default/tag-tags-relations-887.json'), '~docs/default/tag-tags-relations-887.json', require.resolveWeak('~docs/default/tag-tags-relations-887.json')], - '7a733070': [() => import(/* webpackChunkName: '7a733070' */ '~docs/default/tag-tags-share-2bf.json'), '~docs/default/tag-tags-share-2bf.json', require.resolveWeak('~docs/default/tag-tags-share-2bf.json')], - '7c4b6d90': [() => import(/* webpackChunkName: '7c4b6d90' */ '@site/docs/150.engineering/080.writing-docs.md'), '@site/docs/150.engineering/080.writing-docs.md', require.resolveWeak('@site/docs/150.engineering/080.writing-docs.md')], - '7ce1d842': [() => import(/* webpackChunkName: '7ce1d842' */ '@site/docs/050.tables/010.table-overview.md'), '@site/docs/050.tables/010.table-overview.md', require.resolveWeak('@site/docs/050.tables/010.table-overview.md')], - '7d5d7de6': [() => import(/* webpackChunkName: '7d5d7de6' */ '~docs/default/tag-tags-rating-b67.json'), '~docs/default/tag-tags-rating-b67.json', require.resolveWeak('~docs/default/tag-tags-rating-b67.json')], - '7dce83b4': [() => import(/* webpackChunkName: '7dce83b4' */ '@site/docs/060.table-operations/070.search.md'), '@site/docs/060.table-operations/070.search.md', require.resolveWeak('@site/docs/060.table-operations/070.search.md')], - '7e18769a': [() => import(/* webpackChunkName: '7e18769a' */ '@site/docs/090.views/090.actions-on-view.md'), '@site/docs/090.views/090.actions-on-view.md', require.resolveWeak('@site/docs/090.views/090.actions-on-view.md')], - '81862c4f': [() => import(/* webpackChunkName: '81862c4f' */ '@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md'), '@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md')], - '824dfda1': [() => import(/* webpackChunkName: '824dfda1' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md')], - '832fc58a': [() => import(/* webpackChunkName: '832fc58a' */ '~docs/default/tag-tags-comments-65d.json'), '~docs/default/tag-tags-comments-65d.json', require.resolveWeak('~docs/default/tag-tags-comments-65d.json')], - '83533542': [() => import(/* webpackChunkName: '83533542' */ '~docs/default/tag-tags-fields-8d7.json'), '~docs/default/tag-tags-fields-8d7.json', require.resolveWeak('~docs/default/tag-tags-fields-8d7.json')], - '8498c216': [() => import(/* webpackChunkName: '8498c216' */ '@site/docs/150.engineering/070.translation.md'), '@site/docs/150.engineering/070.translation.md', require.resolveWeak('@site/docs/150.engineering/070.translation.md')], - '855d76bb': [() => import(/* webpackChunkName: '855d76bb' */ '@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md'), '@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md')], - '86fc9284': [() => import(/* webpackChunkName: '86fc9284' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md')], - '87e9af65': [() => import(/* webpackChunkName: '87e9af65' */ '@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md'), '@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md')], - '88cc213e': [() => import(/* webpackChunkName: '88cc213e' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md')], - '8a8a6f17': [() => import(/* webpackChunkName: '8a8a6f17' */ '@site/docs/060.table-operations/040.sort.md'), '@site/docs/060.table-operations/040.sort.md', require.resolveWeak('@site/docs/060.table-operations/040.sort.md')], - '9040003c': [() => import(/* webpackChunkName: '9040003c' */ '@site/docs/120.collaboration/010.workspace-collaboration.md'), '@site/docs/120.collaboration/010.workspace-collaboration.md', require.resolveWeak('@site/docs/120.collaboration/010.workspace-collaboration.md')], - '90e43058': [() => import(/* webpackChunkName: '90e43058' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md')], - '9329f711': [() => import(/* webpackChunkName: '9329f711' */ '@site/docs/140.account-settings/010.profile-page.md'), '@site/docs/140.account-settings/010.profile-page.md', require.resolveWeak('@site/docs/140.account-settings/010.profile-page.md')], - '935f2afb': [() => import(/* webpackChunkName: '935f2afb' */ '~docs/default/version-current-metadata-prop-751.json'), '~docs/default/version-current-metadata-prop-751.json', require.resolveWeak('~docs/default/version-current-metadata-prop-751.json')], - '95677701': [() => import(/* webpackChunkName: '95677701' */ '~docs/default/tag-tags-group-by-a64.json'), '~docs/default/tag-tags-group-by-a64.json', require.resolveWeak('~docs/default/tag-tags-group-by-a64.json')], - '95a14fd1': [() => import(/* webpackChunkName: '95a14fd1' */ '@site/docs/060.table-operations/050.group-by.md'), '@site/docs/060.table-operations/050.group-by.md', require.resolveWeak('@site/docs/060.table-operations/050.group-by.md')], - '985d43d9': [() => import(/* webpackChunkName: '985d43d9' */ '~docs/default/tag-tags-tables-709.json'), '~docs/default/tag-tags-tables-709.json', require.resolveWeak('~docs/default/tag-tags-tables-709.json')], - '98de4c79': [() => import(/* webpackChunkName: '98de4c79' */ '@site/docs/070.fields/040.field-types/060.formula/015.operators.md'), '@site/docs/070.fields/040.field-types/060.formula/015.operators.md', require.resolveWeak('@site/docs/070.fields/040.field-types/060.formula/015.operators.md')], - '9906c9d3': [() => import(/* webpackChunkName: '9906c9d3' */ '@site/docs/150.engineering/050.playwright.md'), '@site/docs/150.engineering/050.playwright.md', require.resolveWeak('@site/docs/150.engineering/050.playwright.md')], - '9995b2be': [() => import(/* webpackChunkName: '9995b2be' */ '~docs/default/tag-tags-table-e12.json'), '~docs/default/tag-tags-table-e12.json', require.resolveWeak('~docs/default/tag-tags-table-e12.json')], - '99f674e5': [() => import(/* webpackChunkName: '99f674e5' */ '@site/docs/080.records/070.actions-on-record.md'), '@site/docs/080.records/070.actions-on-record.md', require.resolveWeak('@site/docs/080.records/070.actions-on-record.md')], - '9a52cc21': [() => import(/* webpackChunkName: '9a52cc21' */ '~docs/default/tag-tags-numerical-types-03c.json'), '~docs/default/tag-tags-numerical-types-03c.json', require.resolveWeak('~docs/default/tag-tags-numerical-types-03c.json')], - '9a7e4ef7': [() => import(/* webpackChunkName: '9a7e4ef7' */ '~docs/default/tag-tags-bases-eae.json'), '~docs/default/tag-tags-bases-eae.json', require.resolveWeak('~docs/default/tag-tags-bases-eae.json')], - '9aad2067': [() => import(/* webpackChunkName: '9aad2067' */ '~docs/default/tag-tags-phone-number-f26.json'), '~docs/default/tag-tags-phone-number-f26.json', require.resolveWeak('~docs/default/tag-tags-phone-number-f26.json')], - '9c78149d': [() => import(/* webpackChunkName: '9c78149d' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md')], - '9d4ed5ff': [() => import(/* webpackChunkName: '9d4ed5ff' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md')], - '9db0d30f': [() => import(/* webpackChunkName: '9db0d30f' */ '~docs/default/tag-tags-webhook-2b4.json'), '~docs/default/tag-tags-webhook-2b4.json', require.resolveWeak('~docs/default/tag-tags-webhook-2b4.json')], - '9db7fbd6': [() => import(/* webpackChunkName: '9db7fbd6' */ '~docs/default/tag-tags-import-be6.json'), '~docs/default/tag-tags-import-be6.json', require.resolveWeak('~docs/default/tag-tags-import-be6.json')], - '9dfd9b1b': [() => import(/* webpackChunkName: '9dfd9b1b' */ '@site/docs/080.records/010.records-overview.md'), '@site/docs/080.records/010.records-overview.md', require.resolveWeak('@site/docs/080.records/010.records-overview.md')], - '9e1a113d': [() => import(/* webpackChunkName: '9e1a113d' */ '~docs/default/tag-tags-display-value-bc0.json'), '~docs/default/tag-tags-display-value-bc0.json', require.resolveWeak('~docs/default/tag-tags-display-value-bc0.json')], - '9e7567e1': [() => import(/* webpackChunkName: '9e7567e1' */ '~docs/default/tag-tags-rollup-019.json'), '~docs/default/tag-tags-rollup-019.json', require.resolveWeak('~docs/default/tag-tags-rollup-019.json')], - 'a15cb612': [() => import(/* webpackChunkName: 'a15cb612' */ '~docs/default/tag-tags-disable-39c.json'), '~docs/default/tag-tags-disable-39c.json', require.resolveWeak('~docs/default/tag-tags-disable-39c.json')], - 'a18f2535': [() => import(/* webpackChunkName: 'a18f2535' */ '@site/docs/120.collaboration/040.share-view.md'), '@site/docs/120.collaboration/040.share-view.md', require.resolveWeak('@site/docs/120.collaboration/040.share-view.md')], - 'a43060c8': [() => import(/* webpackChunkName: 'a43060c8' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md')], - 'a47b7f3a': [() => import(/* webpackChunkName: 'a47b7f3a' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md')], - 'a54c3ef6': [() => import(/* webpackChunkName: 'a54c3ef6' */ '~docs/default/tag-tags-star-298.json'), '~docs/default/tag-tags-star-298.json', require.resolveWeak('~docs/default/tag-tags-star-298.json')], - 'a71ccd0b': [() => import(/* webpackChunkName: 'a71ccd0b' */ '~docs/default/tag-tags-csv-1df.json'), '~docs/default/tag-tags-csv-1df.json', require.resolveWeak('~docs/default/tag-tags-csv-1df.json')], - 'a7294da8': [() => import(/* webpackChunkName: 'a7294da8' */ '@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md'), '@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md')], - 'a9993c14': [() => import(/* webpackChunkName: 'a9993c14' */ '~docs/default/tag-tags-table-details-781.json'), '~docs/default/tag-tags-table-details-781.json', require.resolveWeak('~docs/default/tag-tags-table-details-781.json')], - 'ab9ce1e1': [() => import(/* webpackChunkName: 'ab9ce1e1' */ '~docs/default/tag-tags-row-height-0cb.json'), '~docs/default/tag-tags-row-height-0cb.json', require.resolveWeak('~docs/default/tag-tags-row-height-0cb.json')], - 'abbfc25c': [() => import(/* webpackChunkName: 'abbfc25c' */ '@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md'), '@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md', require.resolveWeak('@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md')], - 'ae730630': [() => import(/* webpackChunkName: 'ae730630' */ '@site/docs/060.table-operations/010.overview.md'), '@site/docs/060.table-operations/010.overview.md', require.resolveWeak('@site/docs/060.table-operations/010.overview.md')], - 'ae9857c7': [() => import(/* webpackChunkName: 'ae9857c7' */ '~docs/default/version-0-109-7-metadata-prop-007.json'), '~docs/default/version-0-109-7-metadata-prop-007.json', require.resolveWeak('~docs/default/version-0-109-7-metadata-prop-007.json')], - 'b2206ab4': [() => import(/* webpackChunkName: 'b2206ab4' */ '~docs/default/tag-tags-primary-key-b79.json'), '~docs/default/tag-tags-primary-key-b79.json', require.resolveWeak('~docs/default/tag-tags-primary-key-b79.json')], - 'b22d161b': [() => import(/* webpackChunkName: 'b22d161b' */ '@site/docs/010.index.md'), '@site/docs/010.index.md', require.resolveWeak('@site/docs/010.index.md')], - 'b3347e58': [() => import(/* webpackChunkName: 'b3347e58' */ '~docs/default/tag-tags-specific-db-type-32a.json'), '~docs/default/tag-tags-specific-db-type-32a.json', require.resolveWeak('~docs/default/tag-tags-specific-db-type-32a.json')], - 'b444d910': [() => import(/* webpackChunkName: 'b444d910' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md')], - 'b6006dd7': [() => import(/* webpackChunkName: 'b6006dd7' */ '~docs/default/tag-tags-multi-fields-editor-8da.json'), '~docs/default/tag-tags-multi-fields-editor-8da.json', require.resolveWeak('~docs/default/tag-tags-multi-fields-editor-8da.json')], - 'b65801cb': [() => import(/* webpackChunkName: 'b65801cb' */ '~docs/default/tag-tags-decimal-575.json'), '~docs/default/tag-tags-decimal-575.json', require.resolveWeak('~docs/default/tag-tags-decimal-575.json')], - 'b7abf355': [() => import(/* webpackChunkName: 'b7abf355' */ '@site/docs/030.workspaces/010.workspace-overview.md'), '@site/docs/030.workspaces/010.workspace-overview.md', require.resolveWeak('@site/docs/030.workspaces/010.workspace-overview.md')], - 'ba1d2c5b': [() => import(/* webpackChunkName: 'ba1d2c5b' */ '@site/docs/040.bases/040.import-base-from-airtable.md'), '@site/docs/040.bases/040.import-base-from-airtable.md', require.resolveWeak('@site/docs/040.bases/040.import-base-from-airtable.md')], - 'bb516362': [() => import(/* webpackChunkName: 'bb516362' */ '@site/docs/090.views/010.views-overview.md'), '@site/docs/090.views/010.views-overview.md', require.resolveWeak('@site/docs/090.views/010.views-overview.md')], - 'bb53f532': [() => import(/* webpackChunkName: 'bb53f532' */ '@site/docs/070.fields/040.field-types/010.text-based/050.url.md'), '@site/docs/070.fields/040.field-types/010.text-based/050.url.md', require.resolveWeak('@site/docs/070.fields/040.field-types/010.text-based/050.url.md')], - 'bd02e23f': [() => import(/* webpackChunkName: 'bd02e23f' */ '@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md'), '@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md', require.resolveWeak('@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md')], - 'c1501dcb': [() => import(/* webpackChunkName: 'c1501dcb' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md')], - 'c1a34d6e': [() => import(/* webpackChunkName: 'c1a34d6e' */ '@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md'), '@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md')], - 'c1dfffdd': [() => import(/* webpackChunkName: 'c1dfffdd' */ '@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md'), '@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md', require.resolveWeak('@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md')], - 'c2accac3': [() => import(/* webpackChunkName: 'c2accac3' */ '~docs/default/tag-tags-percent-363.json'), '~docs/default/tag-tags-percent-363.json', require.resolveWeak('~docs/default/tag-tags-percent-363.json')], - 'c3d0dca5': [() => import(/* webpackChunkName: 'c3d0dca5' */ '@site/docs/100.data-source/010.data-source-overview.md'), '@site/docs/100.data-source/010.data-source-overview.md', require.resolveWeak('@site/docs/100.data-source/010.data-source-overview.md')], - 'c42aaec2': [() => import(/* webpackChunkName: 'c42aaec2' */ '~docs/default/tag-tags-permissions-6c8.json'), '~docs/default/tag-tags-permissions-6c8.json', require.resolveWeak('~docs/default/tag-tags-permissions-6c8.json')], - 'c76e097b': [() => import(/* webpackChunkName: 'c76e097b' */ '@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md'), '@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md', require.resolveWeak('@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md')], - 'c7dc53b4': [() => import(/* webpackChunkName: 'c7dc53b4' */ '~docs/default/tag-tags-single-select-bec.json'), '~docs/default/tag-tags-single-select-bec.json', require.resolveWeak('~docs/default/tag-tags-single-select-bec.json')], - 'c93390fb': [() => import(/* webpackChunkName: 'c93390fb' */ '~docs/default/tag-tags-links-based-types-1b0.json'), '~docs/default/tag-tags-links-based-types-1b0.json', require.resolveWeak('~docs/default/tag-tags-links-based-types-1b0.json')], - 'cc44517e': [() => import(/* webpackChunkName: 'cc44517e' */ '@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md'), '@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md')], - 'cc9fede1': [() => import(/* webpackChunkName: 'cc9fede1' */ '~docs/default/tag-tags-download-e65.json'), '~docs/default/tag-tags-download-e65.json', require.resolveWeak('~docs/default/tag-tags-download-e65.json')], - 'cd3c4207': [() => import(/* webpackChunkName: 'cd3c4207' */ '@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md'), '@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md', require.resolveWeak('@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md')], - 'cd725ea4': [() => import(/* webpackChunkName: 'cd725ea4' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md')], - 'd01bd8c5': [() => import(/* webpackChunkName: 'd01bd8c5' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md')], - 'd12c5626': [() => import(/* webpackChunkName: 'd12c5626' */ '~docs/default/tag-tags-xlsx-3b0.json'), '~docs/default/tag-tags-xlsx-3b0.json', require.resolveWeak('~docs/default/tag-tags-xlsx-3b0.json')], - 'd3abb5b7': [() => import(/* webpackChunkName: 'd3abb5b7' */ '~docs/default/tag-tags-grid-view-58b.json'), '~docs/default/tag-tags-grid-view-58b.json', require.resolveWeak('~docs/default/tag-tags-grid-view-58b.json')], - 'd427e024': [() => import(/* webpackChunkName: 'd427e024' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md')], - 'd5451361': [() => import(/* webpackChunkName: 'd5451361' */ '~docs/default/tag-tags-profile-4e1.json'), '~docs/default/tag-tags-profile-4e1.json', require.resolveWeak('~docs/default/tag-tags-profile-4e1.json')], - 'd69d4db4': [() => import(/* webpackChunkName: 'd69d4db4' */ '~docs/default/tag-tags-reorder-7e5.json'), '~docs/default/tag-tags-reorder-7e5.json', require.resolveWeak('~docs/default/tag-tags-reorder-7e5.json')], - 'd767d123': [() => import(/* webpackChunkName: 'd767d123' */ '@site/docs/040.bases/070.actions-on-base.md'), '@site/docs/040.bases/070.actions-on-base.md', require.resolveWeak('@site/docs/040.bases/070.actions-on-base.md')], - 'd96af704': [() => import(/* webpackChunkName: 'd96af704' */ '~docs/default/tag-tags-show-hide-a0d.json'), '~docs/default/tag-tags-show-hide-a0d.json', require.resolveWeak('~docs/default/tag-tags-show-hide-a0d.json')], - 'd9e65f56': [() => import(/* webpackChunkName: 'd9e65f56' */ '~docs/default/tag-tags-api-tokens-bbe.json'), '~docs/default/tag-tags-api-tokens-bbe.json', require.resolveWeak('~docs/default/tag-tags-api-tokens-bbe.json')], - 'da4f93ee': [() => import(/* webpackChunkName: 'da4f93ee' */ '@site/docs/070.fields/050.multi-fields-editor.md'), '@site/docs/070.fields/050.multi-fields-editor.md', require.resolveWeak('@site/docs/070.fields/050.multi-fields-editor.md')], - 'dc1c5b3c': [() => import(/* webpackChunkName: 'dc1c5b3c' */ '~docs/default/tag-tags-json-a8a.json'), '~docs/default/tag-tags-json-a8a.json', require.resolveWeak('~docs/default/tag-tags-json-a8a.json')], - 'ded49de4': [() => import(/* webpackChunkName: 'ded49de4' */ '@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md'), '@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md', require.resolveWeak('@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md')], - 'df203c0f': [() => import(/* webpackChunkName: 'df203c0f' */ '@theme/DocTagDocListPage'), '@theme/DocTagDocListPage', require.resolveWeak('@theme/DocTagDocListPage')], - 'df59b4b5': [() => import(/* webpackChunkName: 'df59b4b5' */ '~docs/default/tag-tags-single-line-text-64e.json'), '~docs/default/tag-tags-single-line-text-64e.json', require.resolveWeak('~docs/default/tag-tags-single-line-text-64e.json')], - 'e12d67b0': [() => import(/* webpackChunkName: 'e12d67b0' */ '~docs/default/tag-tags-views-e28.json'), '~docs/default/tag-tags-views-e28.json', require.resolveWeak('~docs/default/tag-tags-views-e28.json')], - 'e28b0c4f': [() => import(/* webpackChunkName: 'e28b0c4f' */ '@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md'), '@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md')], - 'e302cfc9': [() => import(/* webpackChunkName: 'e302cfc9' */ '@site/docs/065.table-details/table-details-overview.md'), '@site/docs/065.table-details/table-details-overview.md', require.resolveWeak('@site/docs/065.table-details/table-details-overview.md')], - 'e3120721': [() => import(/* webpackChunkName: 'e3120721' */ '~docs/default/tag-tags-filter-2d5.json'), '~docs/default/tag-tags-filter-2d5.json', require.resolveWeak('~docs/default/tag-tags-filter-2d5.json')], - 'e4367861': [() => import(/* webpackChunkName: 'e4367861' */ '@site/docs/050.tables/040.import-data-into-existing-table.md'), '@site/docs/050.tables/040.import-data-into-existing-table.md', require.resolveWeak('@site/docs/050.tables/040.import-data-into-existing-table.md')], - 'e4e12989': [() => import(/* webpackChunkName: 'e4e12989' */ '@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md'), '@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md')], - 'e55064b4': [() => import(/* webpackChunkName: 'e55064b4' */ '@site/docs/070.fields/040.field-types/020.numerical/040.currency.md'), '@site/docs/070.fields/040.field-types/020.numerical/040.currency.md', require.resolveWeak('@site/docs/070.fields/040.field-types/020.numerical/040.currency.md')], - 'e56fdc78': [() => import(/* webpackChunkName: 'e56fdc78' */ '@site/docs/020.getting-started/050.self-hosted/030.upgrading.md'), '@site/docs/020.getting-started/050.self-hosted/030.upgrading.md', require.resolveWeak('@site/docs/020.getting-started/050.self-hosted/030.upgrading.md')], - 'e5a54c1b': [() => import(/* webpackChunkName: 'e5a54c1b' */ '@site/docs/070.fields/040.field-types/020.numerical/010.number.md'), '@site/docs/070.fields/040.field-types/020.numerical/010.number.md', require.resolveWeak('@site/docs/070.fields/040.field-types/020.numerical/010.number.md')], - 'e631982f': [() => import(/* webpackChunkName: 'e631982f' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md')], - 'e68614dc': [() => import(/* webpackChunkName: 'e68614dc' */ '@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md'), '@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md')], - 'e68e0fff': [() => import(/* webpackChunkName: 'e68e0fff' */ '~docs/default/tag-tags-cover-image-028.json'), '~docs/default/tag-tags-cover-image-028.json', require.resolveWeak('~docs/default/tag-tags-cover-image-028.json')], - 'e8cbe097': [() => import(/* webpackChunkName: 'e8cbe097' */ '~docs/default/tag-tags-field-types-c13.json'), '~docs/default/tag-tags-field-types-c13.json', require.resolveWeak('~docs/default/tag-tags-field-types-c13.json')], - 'eb689018': [() => import(/* webpackChunkName: 'eb689018' */ '@site/docs/040.bases/010.base-overview.md'), '@site/docs/040.bases/010.base-overview.md', require.resolveWeak('@site/docs/040.bases/010.base-overview.md')], - 'ebb99180': [() => import(/* webpackChunkName: 'ebb99180' */ '@site/docs/090.views/040.view-types/020.gallery.md'), '@site/docs/090.views/040.view-types/020.gallery.md', require.resolveWeak('@site/docs/090.views/040.view-types/020.gallery.md')], - 'ec134df3': [() => import(/* webpackChunkName: 'ec134df3' */ '@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md'), '@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md')], - 'ec135315': [() => import(/* webpackChunkName: 'ec135315' */ '@site/docs/070.fields/020.primary-key.md'), '@site/docs/070.fields/020.primary-key.md', require.resolveWeak('@site/docs/070.fields/020.primary-key.md')], - 'ed0a57e3': [() => import(/* webpackChunkName: 'ed0a57e3' */ '@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md'), '@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md', require.resolveWeak('@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md')], - 'f0eb83f3': [() => import(/* webpackChunkName: 'f0eb83f3' */ '@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md'), '@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md', require.resolveWeak('@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md')], - 'f4472a32': [() => import(/* webpackChunkName: 'f4472a32' */ '~docs/default/tag-tags-attachment-9e2.json'), '~docs/default/tag-tags-attachment-9e2.json', require.resolveWeak('~docs/default/tag-tags-attachment-9e2.json')], - 'f472468a': [() => import(/* webpackChunkName: 'f472468a' */ '~docs/default/tag-tags-links-d71.json'), '~docs/default/tag-tags-links-d71.json', require.resolveWeak('~docs/default/tag-tags-links-d71.json')], - 'f58fbde1': [() => import(/* webpackChunkName: 'f58fbde1' */ '~docs/default/tag-tags-activity-feed-ccc.json'), '~docs/default/tag-tags-activity-feed-ccc.json', require.resolveWeak('~docs/default/tag-tags-activity-feed-ccc.json')], - 'f6aad64f': [() => import(/* webpackChunkName: 'f6aad64f' */ '~docs/default/tag-tags-open-source-031.json'), '~docs/default/tag-tags-open-source-031.json', require.resolveWeak('~docs/default/tag-tags-open-source-031.json')], - 'f7d905ba': [() => import(/* webpackChunkName: 'f7d905ba' */ '@site/docs/060.table-operations/030.filter.md'), '@site/docs/060.table-operations/030.filter.md', require.resolveWeak('@site/docs/060.table-operations/030.filter.md')], - 'f9241299': [() => import(/* webpackChunkName: 'f9241299' */ '@site/docs/120.collaboration/010.collaboration-overview.md'), '@site/docs/120.collaboration/010.collaboration-overview.md', require.resolveWeak('@site/docs/120.collaboration/010.collaboration-overview.md')], - 'f9538193': [() => import(/* webpackChunkName: 'f9538193' */ '~docs/default/tag-tags-currency-68c.json'), '~docs/default/tag-tags-currency-68c.json', require.resolveWeak('~docs/default/tag-tags-currency-68c.json')], - 'fb12fd2d': [() => import(/* webpackChunkName: 'fb12fd2d' */ '~docs/default/tag-tags-sort-d14.json'), '~docs/default/tag-tags-sort-d14.json', require.resolveWeak('~docs/default/tag-tags-sort-d14.json')], - 'fb5c685c': [() => import(/* webpackChunkName: 'fb5c685c' */ '~docs/default/tag-tags-create-2ad.json'), '~docs/default/tag-tags-create-2ad.json', require.resolveWeak('~docs/default/tag-tags-create-2ad.json')], - 'fb60c522': [() => import(/* webpackChunkName: 'fb60c522' */ '@site/docs/070.fields/060.actions-on-field.md'), '@site/docs/070.fields/060.actions-on-field.md', require.resolveWeak('@site/docs/070.fields/060.actions-on-field.md')], - 'fc37d7fe': [() => import(/* webpackChunkName: 'fc37d7fe' */ '~docs/default/tag-tags-member-3b6.json'), '~docs/default/tag-tags-member-3b6.json', require.resolveWeak('~docs/default/tag-tags-member-3b6.json')], - 'fe112e79': [() => import(/* webpackChunkName: 'fe112e79' */ '@site/docs/030.workspaces/030.workspace-collaboration.md'), '@site/docs/030.workspaces/030.workspace-collaboration.md', require.resolveWeak('@site/docs/030.workspaces/030.workspace-collaboration.md')], - 'ffd85642': [() => import(/* webpackChunkName: 'ffd85642' */ '~docs/default/tag-tags-role-c53.json'), '~docs/default/tag-tags-role-c53.json', require.resolveWeak('~docs/default/tag-tags-role-c53.json')],}; diff --git a/packages/noco-docs/.docusaurus/routes.js b/packages/noco-docs/.docusaurus/routes.js deleted file mode 100644 index 3f8f4cbed0..0000000000 --- a/packages/noco-docs/.docusaurus/routes.js +++ /dev/null @@ -1,1388 +0,0 @@ -import React from 'react'; -import ComponentCreator from '@docusaurus/ComponentCreator'; - -export default [ - { - path: '/tags', - component: ComponentCreator('/tags', '9ec'), - exact: true - }, - { - path: '/tags/account-settings', - component: ComponentCreator('/tags/account-settings', 'c9b'), - exact: true - }, - { - path: '/tags/activity-feed', - component: ComponentCreator('/tags/activity-feed', 'eed'), - exact: true - }, - { - path: '/tags/api-tokens', - component: ComponentCreator('/tags/api-tokens', 'e4c'), - exact: true - }, - { - path: '/tags/attachment', - component: ComponentCreator('/tags/attachment', '959'), - exact: true - }, - { - path: '/tags/barcode', - component: ComponentCreator('/tags/barcode', 'bde'), - exact: true - }, - { - path: '/tags/base', - component: ComponentCreator('/tags/base', 'dbf'), - exact: true - }, - { - path: '/tags/bases', - component: ComponentCreator('/tags/bases', '22f'), - exact: true - }, - { - path: '/tags/checkbox', - component: ComponentCreator('/tags/checkbox', 'f4b'), - exact: true - }, - { - path: '/tags/collaboration', - component: ComponentCreator('/tags/collaboration', '38c'), - exact: true - }, - { - path: '/tags/comments', - component: ComponentCreator('/tags/comments', '255'), - exact: true - }, - { - path: '/tags/cover-image', - component: ComponentCreator('/tags/cover-image', 'ca1'), - exact: true - }, - { - path: '/tags/create', - component: ComponentCreator('/tags/create', '92a'), - exact: true - }, - { - path: '/tags/csv', - component: ComponentCreator('/tags/csv', 'b29'), - exact: true - }, - { - path: '/tags/currency', - component: ComponentCreator('/tags/currency', 'c91'), - exact: true - }, - { - path: '/tags/custom-types', - component: ComponentCreator('/tags/custom-types', '147'), - exact: true - }, - { - path: '/tags/dashboard', - component: ComponentCreator('/tags/dashboard', '99f'), - exact: true - }, - { - path: '/tags/data-sources', - component: ComponentCreator('/tags/data-sources', '2ad'), - exact: true - }, - { - path: '/tags/date-time', - component: ComponentCreator('/tags/date-time', 'f46'), - exact: true - }, - { - path: '/tags/decimal', - component: ComponentCreator('/tags/decimal', '448'), - exact: true - }, - { - path: '/tags/delete', - component: ComponentCreator('/tags/delete', '8b9'), - exact: true - }, - { - path: '/tags/disable', - component: ComponentCreator('/tags/disable', '2d1'), - exact: true - }, - { - path: '/tags/display-value', - component: ComponentCreator('/tags/display-value', '590'), - exact: true - }, - { - path: '/tags/download', - component: ComponentCreator('/tags/download', 'c31'), - exact: true - }, - { - path: '/tags/duplicate', - component: ComponentCreator('/tags/duplicate', 'd13'), - exact: true - }, - { - path: '/tags/edit', - component: ComponentCreator('/tags/edit', '86a'), - exact: true - }, - { - path: '/tags/email', - component: ComponentCreator('/tags/email', 'd37'), - exact: true - }, - { - path: '/tags/enable', - component: ComponentCreator('/tags/enable', '3cb'), - exact: true - }, - { - path: '/tags/engineering', - component: ComponentCreator('/tags/engineering', '347'), - exact: true - }, - { - path: '/tags/excel', - component: ComponentCreator('/tags/excel', 'b1a'), - exact: true - }, - { - path: '/tags/expand', - component: ComponentCreator('/tags/expand', '13f'), - exact: true - }, - { - path: '/tags/expanded-record', - component: ComponentCreator('/tags/expanded-record', '115'), - exact: true - }, - { - path: '/tags/field-types', - component: ComponentCreator('/tags/field-types', '428'), - exact: true - }, - { - path: '/tags/fields', - component: ComponentCreator('/tags/fields', 'a5c'), - exact: true - }, - { - path: '/tags/filter', - component: ComponentCreator('/tags/filter', 'e3c'), - exact: true - }, - { - path: '/tags/form', - component: ComponentCreator('/tags/form', '833'), - exact: true - }, - { - path: '/tags/form-view', - component: ComponentCreator('/tags/form-view', '44c'), - exact: true - }, - { - path: '/tags/formula', - component: ComponentCreator('/tags/formula', 'e41'), - exact: true - }, - { - path: '/tags/gallery-view', - component: ComponentCreator('/tags/gallery-view', '602'), - exact: true - }, - { - path: '/tags/geometry', - component: ComponentCreator('/tags/geometry', '903'), - exact: true - }, - { - path: '/tags/getting-started', - component: ComponentCreator('/tags/getting-started', '90c'), - exact: true - }, - { - path: '/tags/grid-view', - component: ComponentCreator('/tags/grid-view', '608'), - exact: true - }, - { - path: '/tags/group-by', - component: ComponentCreator('/tags/group-by', 'a8c'), - exact: true - }, - { - path: '/tags/hide', - component: ComponentCreator('/tags/hide', 'cb5'), - exact: true - }, - { - path: '/tags/import', - component: ComponentCreator('/tags/import', '563'), - exact: true - }, - { - path: '/tags/invite', - component: ComponentCreator('/tags/invite', 'd63'), - exact: true - }, - { - path: '/tags/json', - component: ComponentCreator('/tags/json', 'a19'), - exact: true - }, - { - path: '/tags/kanban-view', - component: ComponentCreator('/tags/kanban-view', '6d9'), - exact: true - }, - { - path: '/tags/links', - component: ComponentCreator('/tags/links', '840'), - exact: true - }, - { - path: '/tags/links-based-types', - component: ComponentCreator('/tags/links-based-types', '7df'), - exact: true - }, - { - path: '/tags/long-text', - component: ComponentCreator('/tags/long-text', 'b67'), - exact: true - }, - { - path: '/tags/lookup', - component: ComponentCreator('/tags/lookup', 'a2f'), - exact: true - }, - { - path: '/tags/member', - component: ComponentCreator('/tags/member', '748'), - exact: true - }, - { - path: '/tags/members', - component: ComponentCreator('/tags/members', '656'), - exact: true - }, - { - path: '/tags/multi-fields-editor', - component: ComponentCreator('/tags/multi-fields-editor', 'cc5'), - exact: true - }, - { - path: '/tags/multi-select', - component: ComponentCreator('/tags/multi-select', '9aa'), - exact: true - }, - { - path: '/tags/number', - component: ComponentCreator('/tags/number', 'e29'), - exact: true - }, - { - path: '/tags/numerical-types', - component: ComponentCreator('/tags/numerical-types', '910'), - exact: true - }, - { - path: '/tags/open-source', - component: ComponentCreator('/tags/open-source', '5f2'), - exact: true - }, - { - path: '/tags/overview', - component: ComponentCreator('/tags/overview', 'c58'), - exact: true - }, - { - path: '/tags/percent', - component: ComponentCreator('/tags/percent', '6e9'), - exact: true - }, - { - path: '/tags/permissions', - component: ComponentCreator('/tags/permissions', '8d7'), - exact: true - }, - { - path: '/tags/phone-number', - component: ComponentCreator('/tags/phone-number', '3e9'), - exact: true - }, - { - path: '/tags/primary-key', - component: ComponentCreator('/tags/primary-key', '3c7'), - exact: true - }, - { - path: '/tags/productivity-hacks', - component: ComponentCreator('/tags/productivity-hacks', '8cf'), - exact: true - }, - { - path: '/tags/profile', - component: ComponentCreator('/tags/profile', '8b9'), - exact: true - }, - { - path: '/tags/qr-code', - component: ComponentCreator('/tags/qr-code', '0db'), - exact: true - }, - { - path: '/tags/rating', - component: ComponentCreator('/tags/rating', 'b13'), - exact: true - }, - { - path: '/tags/records', - component: ComponentCreator('/tags/records', 'dc5'), - exact: true - }, - { - path: '/tags/relations', - component: ComponentCreator('/tags/relations', '643'), - exact: true - }, - { - path: '/tags/rename', - component: ComponentCreator('/tags/rename', '542'), - exact: true - }, - { - path: '/tags/reorder', - component: ComponentCreator('/tags/reorder', '162'), - exact: true - }, - { - path: '/tags/role', - component: ComponentCreator('/tags/role', 'dbe'), - exact: true - }, - { - path: '/tags/roles', - component: ComponentCreator('/tags/roles', '9c1'), - exact: true - }, - { - path: '/tags/rollup', - component: ComponentCreator('/tags/rollup', '174'), - exact: true - }, - { - path: '/tags/row-height', - component: ComponentCreator('/tags/row-height', '3ab'), - exact: true - }, - { - path: '/tags/search', - component: ComponentCreator('/tags/search', '93b'), - exact: true - }, - { - path: '/tags/select-based-types', - component: ComponentCreator('/tags/select-based-types', 'ff3'), - exact: true - }, - { - path: '/tags/share', - component: ComponentCreator('/tags/share', 'fcd'), - exact: true - }, - { - path: '/tags/shortcuts', - component: ComponentCreator('/tags/shortcuts', 'ac3'), - exact: true - }, - { - path: '/tags/show-hide', - component: ComponentCreator('/tags/show-hide', '2c1'), - exact: true - }, - { - path: '/tags/single-line-text', - component: ComponentCreator('/tags/single-line-text', 'eb2'), - exact: true - }, - { - path: '/tags/single-select', - component: ComponentCreator('/tags/single-select', '318'), - exact: true - }, - { - path: '/tags/sort', - component: ComponentCreator('/tags/sort', 'ee6'), - exact: true - }, - { - path: '/tags/specific-db-type', - component: ComponentCreator('/tags/specific-db-type', '059'), - exact: true - }, - { - path: '/tags/star', - component: ComponentCreator('/tags/star', '8e4'), - exact: true - }, - { - path: '/tags/table', - component: ComponentCreator('/tags/table', '327'), - exact: true - }, - { - path: '/tags/table-details', - component: ComponentCreator('/tags/table-details', '150'), - exact: true - }, - { - path: '/tags/table-operations', - component: ComponentCreator('/tags/table-operations', '03c'), - exact: true - }, - { - path: '/tags/tables', - component: ComponentCreator('/tags/tables', '03c'), - exact: true - }, - { - path: '/tags/text-based-types', - component: ComponentCreator('/tags/text-based-types', '08a'), - exact: true - }, - { - path: '/tags/url', - component: ComponentCreator('/tags/url', '0dc'), - exact: true - }, - { - path: '/tags/views', - component: ComponentCreator('/tags/views', '7aa'), - exact: true - }, - { - path: '/tags/webhook', - component: ComponentCreator('/tags/webhook', 'd1d'), - exact: true - }, - { - path: '/tags/workspace', - component: ComponentCreator('/tags/workspace', 'f81'), - exact: true - }, - { - path: '/tags/workspaces', - component: ComponentCreator('/tags/workspaces', 'f31'), - exact: true - }, - { - path: '/tags/xlsx', - component: ComponentCreator('/tags/xlsx', 'fce'), - exact: true - }, - { - path: '/0.109.7', - component: ComponentCreator('/0.109.7', '223'), - routes: [ - { - path: '/0.109.7/', - component: ComponentCreator('/0.109.7/', 'eab'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/developer-resources/accessing-apis', - component: ComponentCreator('/0.109.7/developer-resources/accessing-apis', '238'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/developer-resources/rest-apis', - component: ComponentCreator('/0.109.7/developer-resources/rest-apis', '06e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/developer-resources/sdk', - component: ComponentCreator('/0.109.7/developer-resources/sdk', '9da'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/developer-resources/upload-via-api', - component: ComponentCreator('/0.109.7/developer-resources/upload-via-api', 'ae3'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/developer-resources/webhooks', - component: ComponentCreator('/0.109.7/developer-resources/webhooks', '93d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/architecture', - component: ComponentCreator('/0.109.7/engineering/architecture', 'a78'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/builds-and-releases', - component: ComponentCreator('/0.109.7/engineering/builds-and-releases', '107'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/development-setup', - component: ComponentCreator('/0.109.7/engineering/development-setup', '9b9'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/playwright', - component: ComponentCreator('/0.109.7/engineering/playwright', 'b87'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/repository-structure', - component: ComponentCreator('/0.109.7/engineering/repository-structure', '6f0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/translation', - component: ComponentCreator('/0.109.7/engineering/translation', '02f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/engineering/unit-testing', - component: ComponentCreator('/0.109.7/engineering/unit-testing', 'd31'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/FAQs', - component: ComponentCreator('/0.109.7/FAQs', '79f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/getting-started/demos', - component: ComponentCreator('/0.109.7/getting-started/demos', '8e4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/getting-started/environment-variables', - component: ComponentCreator('/0.109.7/getting-started/environment-variables', 'bea'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/getting-started/installation', - component: ComponentCreator('/0.109.7/getting-started/installation', 'af5'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/getting-started/upgrading', - component: ComponentCreator('/0.109.7/getting-started/upgrading', '5e6'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/account-settings', - component: ComponentCreator('/0.109.7/setup-and-usages/account-settings', '72e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/audit', - component: ComponentCreator('/0.109.7/setup-and-usages/audit', '492'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/code-snippets', - component: ComponentCreator('/0.109.7/setup-and-usages/code-snippets', 'e68'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/column-operations', - component: ComponentCreator('/0.109.7/setup-and-usages/column-operations', 'b69'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/column-types', - component: ComponentCreator('/0.109.7/setup-and-usages/column-types', 'a5e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/dashboard', - component: ComponentCreator('/0.109.7/setup-and-usages/dashboard', 'ee2'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/display-value', - component: ComponentCreator('/0.109.7/setup-and-usages/display-value', 'a30'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/expanded-form', - component: ComponentCreator('/0.109.7/setup-and-usages/expanded-form', 'b88'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/formulas', - component: ComponentCreator('/0.109.7/setup-and-usages/formulas', 'bd0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free', - component: ComponentCreator('/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free', '371'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/keyboard-maneuver', - component: ComponentCreator('/0.109.7/setup-and-usages/keyboard-maneuver', '881'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/languages', - component: ComponentCreator('/0.109.7/setup-and-usages/languages', 'b49'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/link-to-another-record', - component: ComponentCreator('/0.109.7/setup-and-usages/link-to-another-record', '6c9'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/links', - component: ComponentCreator('/0.109.7/setup-and-usages/links', '0dc'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/lookup', - component: ComponentCreator('/0.109.7/setup-and-usages/lookup', '96d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/meta-management', - component: ComponentCreator('/0.109.7/setup-and-usages/meta-management', '254'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/primary-key', - component: ComponentCreator('/0.109.7/setup-and-usages/primary-key', '0c4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/project-settings', - component: ComponentCreator('/0.109.7/setup-and-usages/project-settings', 'dc0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/rollup', - component: ComponentCreator('/0.109.7/setup-and-usages/rollup', '64f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/share-base', - component: ComponentCreator('/0.109.7/setup-and-usages/share-base', '29d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/share-view', - component: ComponentCreator('/0.109.7/setup-and-usages/share-view', 'ec1'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/sync-schema', - component: ComponentCreator('/0.109.7/setup-and-usages/sync-schema', '852'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/table-operations', - component: ComponentCreator('/0.109.7/setup-and-usages/table-operations', '364'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/team-and-auth', - component: ComponentCreator('/0.109.7/setup-and-usages/team-and-auth', 'b5f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/usage-information', - component: ComponentCreator('/0.109.7/setup-and-usages/usage-information', 'b21'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/0.109.7/setup-and-usages/views', - component: ComponentCreator('/0.109.7/setup-and-usages/views', '303'), - exact: true, - sidebar: "tutorialSidebar" - } - ] - }, - { - path: '/', - component: ComponentCreator('/', 'c27'), - routes: [ - { - path: '/', - component: ComponentCreator('/', 'f1a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/account-settings/api-tokens', - component: ComponentCreator('/account-settings/api-tokens', 'fe5'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/account-settings/oss-specific-details', - component: ComponentCreator('/account-settings/oss-specific-details', '95b'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/account-settings/profile-page', - component: ComponentCreator('/account-settings/profile-page', '6de'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/automation/webhook/actions-on-webhook', - component: ComponentCreator('/automation/webhook/actions-on-webhook', 'ec5'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/automation/webhook/create-webhook', - component: ComponentCreator('/automation/webhook/create-webhook', '7f4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/automation/webhook/webhook-overview', - component: ComponentCreator('/automation/webhook/webhook-overview', 'bdc'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/actions-on-base', - component: ComponentCreator('/bases/actions-on-base', 'd6b'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/base-collaboration', - component: ComponentCreator('/bases/base-collaboration', '1d1'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/base-overview', - component: ComponentCreator('/bases/base-overview', '305'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/create-base', - component: ComponentCreator('/bases/create-base', 'b75'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/import-base-from-airtable', - component: ComponentCreator('/bases/import-base-from-airtable', 'e12'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/bases/share-base', - component: ComponentCreator('/bases/share-base', '626'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/base-collaboration', - component: ComponentCreator('/collaboration/base-collaboration', 'dab'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/collaboration-overview', - component: ComponentCreator('/collaboration/collaboration-overview', 'd7f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/oss-specific-details', - component: ComponentCreator('/collaboration/oss-specific-details', '43a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/share-base', - component: ComponentCreator('/collaboration/share-base', '1db'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/share-view', - component: ComponentCreator('/collaboration/share-view', 'ef9'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/collaboration/workspace-collaboration', - component: ComponentCreator('/collaboration/workspace-collaboration', '952'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/data-source/data-source-overview', - component: ComponentCreator('/data-source/data-source-overview', '0c7'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/architecture', - component: ComponentCreator('/engineering/architecture', '5c0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/builds-and-releases', - component: ComponentCreator('/engineering/builds-and-releases', 'bb9'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/development-setup', - component: ComponentCreator('/engineering/development-setup', '27a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/playwright', - component: ComponentCreator('/engineering/playwright', '09d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/repository-structure', - component: ComponentCreator('/engineering/repository-structure', '6fc'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/translation', - component: ComponentCreator('/engineering/translation', '2dd'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/unit-testing', - component: ComponentCreator('/engineering/unit-testing', '24a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/engineering/writing-docs', - component: ComponentCreator('/engineering/writing-docs', '4f2'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/FAQs', - component: ComponentCreator('/FAQs', '828'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/actions-on-field', - component: ComponentCreator('/fields/actions-on-field', 'f17'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/display-value', - component: ComponentCreator('/fields/display-value', '828'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/attachment', - component: ComponentCreator('/fields/field-types/custom-types/attachment', '06c'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/barcode', - component: ComponentCreator('/fields/field-types/custom-types/barcode', 'e35'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/checkbox', - component: ComponentCreator('/fields/field-types/custom-types/checkbox', 'd59'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/geometry', - component: ComponentCreator('/fields/field-types/custom-types/geometry', '1a2'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/json', - component: ComponentCreator('/fields/field-types/custom-types/json', 'bea'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/QR-code', - component: ComponentCreator('/fields/field-types/custom-types/QR-code', '4e4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/rating', - component: ComponentCreator('/fields/field-types/custom-types/rating', '2ad'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/custom-types/specific-db-type', - component: ComponentCreator('/fields/field-types/custom-types/specific-db-type', '0cd'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/date-time-based/date', - component: ComponentCreator('/fields/field-types/date-time-based/date', '725'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/date-time-based/date-time', - component: ComponentCreator('/fields/field-types/date-time-based/date-time', '836'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/date-time-based/duration', - component: ComponentCreator('/fields/field-types/date-time-based/duration', '94e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/date-time-based/time', - component: ComponentCreator('/fields/field-types/date-time-based/time', 'd3c'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/conditional-expressions', - component: ComponentCreator('/fields/field-types/formula/conditional-expressions', '5af'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/date-functions', - component: ComponentCreator('/fields/field-types/formula/date-functions', '798'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/formula', - component: ComponentCreator('/fields/field-types/formula/formula', '576'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/numeric-functions', - component: ComponentCreator('/fields/field-types/formula/numeric-functions', '556'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/operators', - component: ComponentCreator('/fields/field-types/formula/operators', 'd96'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/formula/string-functions', - component: ComponentCreator('/fields/field-types/formula/string-functions', 'b5c'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/links-based/links', - component: ComponentCreator('/fields/field-types/links-based/links', '487'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/links-based/lookup', - component: ComponentCreator('/fields/field-types/links-based/lookup', '861'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/links-based/rollup', - component: ComponentCreator('/fields/field-types/links-based/rollup', '1f5'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/numerical/currency', - component: ComponentCreator('/fields/field-types/numerical/currency', '91a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/numerical/decimal', - component: ComponentCreator('/fields/field-types/numerical/decimal', '8cc'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/numerical/number', - component: ComponentCreator('/fields/field-types/numerical/number', 'd91'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/numerical/percent', - component: ComponentCreator('/fields/field-types/numerical/percent', '243'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/select-based/multi-select', - component: ComponentCreator('/fields/field-types/select-based/multi-select', '626'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/select-based/single-select', - component: ComponentCreator('/fields/field-types/select-based/single-select', 'e33'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/text-based/email', - component: ComponentCreator('/fields/field-types/text-based/email', '938'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/text-based/long-text', - component: ComponentCreator('/fields/field-types/text-based/long-text', 'e24'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/text-based/phonenumber', - component: ComponentCreator('/fields/field-types/text-based/phonenumber', 'a44'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/text-based/single-line-text', - component: ComponentCreator('/fields/field-types/text-based/single-line-text', '99f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/field-types/text-based/url', - component: ComponentCreator('/fields/field-types/text-based/url', '64a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/fields-overview', - component: ComponentCreator('/fields/fields-overview', '78a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/multi-fields-editor', - component: ComponentCreator('/fields/multi-fields-editor', '6e1'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/fields/primary-key', - component: ComponentCreator('/fields/primary-key', '40d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/keyboard-shortcuts', - component: ComponentCreator('/getting-started/keyboard-shortcuts', '323'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/quick-start', - component: ComponentCreator('/getting-started/quick-start', '92c'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/self-hosted/environment-variables', - component: ComponentCreator('/getting-started/self-hosted/environment-variables', '60e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/self-hosted/installation', - component: ComponentCreator('/getting-started/self-hosted/installation', '972'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/self-hosted/upgrading', - component: ComponentCreator('/getting-started/self-hosted/upgrading', 'bfd'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/getting-started/terminologies', - component: ComponentCreator('/getting-started/terminologies', 'b1a'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/records/actions-on-record', - component: ComponentCreator('/records/actions-on-record', '632'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/records/create-record', - component: ComponentCreator('/records/create-record', '945'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/records/expand-record', - component: ComponentCreator('/records/expand-record', '72d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/records/records-overview', - component: ComponentCreator('/records/records-overview', '150'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/roles-and-permissions/roles-permissions-overview', - component: ComponentCreator('/roles-and-permissions/roles-permissions-overview', '57d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-details/table-details-overview', - component: ComponentCreator('/table-details/table-details-overview', 'ae5'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/download', - component: ComponentCreator('/table-operations/download', '8d4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/field-operations', - component: ComponentCreator('/table-operations/field-operations', 'c3d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/filter', - component: ComponentCreator('/table-operations/filter', '96c'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/group-by', - component: ComponentCreator('/table-operations/group-by', '893'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/overview', - component: ComponentCreator('/table-operations/overview', 'bd0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/row-height', - component: ComponentCreator('/table-operations/row-height', '3c0'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/search', - component: ComponentCreator('/table-operations/search', 'ed7'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/table-operations/sort', - component: ComponentCreator('/table-operations/sort', '209'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/tables/actions-on-table', - component: ComponentCreator('/tables/actions-on-table', '05d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/tables/create-table', - component: ComponentCreator('/tables/create-table', 'b64'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/tables/create-table-via-import', - component: ComponentCreator('/tables/create-table-via-import', 'e6f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/tables/import-data-into-existing-table', - component: ComponentCreator('/tables/import-data-into-existing-table', 'd91'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/tables/table-overview', - component: ComponentCreator('/tables/table-overview', '046'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/actions-on-view', - component: ComponentCreator('/views/actions-on-view', '17e'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/create-view', - component: ComponentCreator('/views/create-view', '2b3'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/share-view', - component: ComponentCreator('/views/share-view', '97d'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/view-types/form', - component: ComponentCreator('/views/view-types/form', '252'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/view-types/gallery', - component: ComponentCreator('/views/view-types/gallery', '004'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/view-types/grid', - component: ComponentCreator('/views/view-types/grid', 'c46'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/view-types/kanban', - component: ComponentCreator('/views/view-types/kanban', 'b3f'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/views/views-overview', - component: ComponentCreator('/views/views-overview', 'ba9'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/workspaces/actions-on-workspace', - component: ComponentCreator('/workspaces/actions-on-workspace', 'cb7'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/workspaces/create-workspace', - component: ComponentCreator('/workspaces/create-workspace', 'd20'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/workspaces/workspace-collaboration', - component: ComponentCreator('/workspaces/workspace-collaboration', 'dd4'), - exact: true, - sidebar: "tutorialSidebar" - }, - { - path: '/workspaces/workspace-overview', - component: ComponentCreator('/workspaces/workspace-overview', '34e'), - exact: true, - sidebar: "tutorialSidebar" - } - ] - }, - { - path: '*', - component: ComponentCreator('*'), - }, -]; diff --git a/packages/noco-docs/.docusaurus/routesChunkNames.json b/packages/noco-docs/.docusaurus/routesChunkNames.json deleted file mode 100644 index 625c3ed239..0000000000 --- a/packages/noco-docs/.docusaurus/routesChunkNames.json +++ /dev/null @@ -1,1283 +0,0 @@ -{ - "/tags-9ec": { - "__comp": "3720c009", - "__context": { - "plugin": "3721b01f" - }, - "tags": "55960ee5" - }, - "/tags/account-settings-c9b": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "3aad05b1" - }, - "/tags/activity-feed-eed": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "f58fbde1" - }, - "/tags/api-tokens-e4c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d9e65f56" - }, - "/tags/attachment-959": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "f4472a32" - }, - "/tags/barcode-bde": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "181f370e" - }, - "/tags/base-dbf": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "016441e2" - }, - "/tags/bases-22f": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9a7e4ef7" - }, - "/tags/checkbox-f4b": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "10b0edf0" - }, - "/tags/collaboration-38c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "3a7c0cf6" - }, - "/tags/comments-255": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "832fc58a" - }, - "/tags/cover-image-ca1": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "e68e0fff" - }, - "/tags/create-92a": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "fb5c685c" - }, - "/tags/csv-b29": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "a71ccd0b" - }, - "/tags/currency-c91": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "f9538193" - }, - "/tags/custom-types-147": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "0d8de604" - }, - "/tags/dashboard-99f": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "458ed5bd" - }, - "/tags/data-sources-2ad": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "3ac80ba6" - }, - "/tags/date-time-f46": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6a2ab9d1" - }, - "/tags/decimal-448": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "b65801cb" - }, - "/tags/delete-8b9": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "524f61e0" - }, - "/tags/disable-2d1": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "a15cb612" - }, - "/tags/display-value-590": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9e1a113d" - }, - "/tags/download-c31": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "cc9fede1" - }, - "/tags/duplicate-d13": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "2d5bd7a1" - }, - "/tags/edit-86a": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "276e2b0f" - }, - "/tags/email-d37": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "45c1aab2" - }, - "/tags/enable-3cb": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "300d0b41" - }, - "/tags/engineering-347": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "70424118" - }, - "/tags/excel-b1a": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6233b6dc" - }, - "/tags/expand-13f": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "5b61f490" - }, - "/tags/expanded-record-115": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "0938fe36" - }, - "/tags/field-types-428": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "e8cbe097" - }, - "/tags/fields-a5c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "83533542" - }, - "/tags/filter-e3c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "e3120721" - }, - "/tags/form-833": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "17a7e1f3" - }, - "/tags/form-view-44c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "61af7884" - }, - "/tags/formula-e41": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "177ad845" - }, - "/tags/gallery-view-602": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "27b20541" - }, - "/tags/geometry-903": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "006c1c22" - }, - "/tags/getting-started-90c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6a105426" - }, - "/tags/grid-view-608": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d3abb5b7" - }, - "/tags/group-by-a8c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "95677701" - }, - "/tags/hide-cb5": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "4145e2b1" - }, - "/tags/import-563": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9db7fbd6" - }, - "/tags/invite-d63": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "2d8eea4e" - }, - "/tags/json-a19": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "dc1c5b3c" - }, - "/tags/kanban-view-6d9": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "2c8a1eac" - }, - "/tags/links-840": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "f472468a" - }, - "/tags/links-based-types-7df": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "c93390fb" - }, - "/tags/long-text-b67": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6502d10a" - }, - "/tags/lookup-a2f": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "55156658" - }, - "/tags/member-748": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "fc37d7fe" - }, - "/tags/members-656": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "23371042" - }, - "/tags/multi-fields-editor-cc5": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "b6006dd7" - }, - "/tags/multi-select-9aa": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6485a1bf" - }, - "/tags/number-e29": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "052c7f5b" - }, - "/tags/numerical-types-910": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9a52cc21" - }, - "/tags/open-source-5f2": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "f6aad64f" - }, - "/tags/overview-c58": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "1c2ab191" - }, - "/tags/percent-6e9": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "c2accac3" - }, - "/tags/permissions-8d7": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "c42aaec2" - }, - "/tags/phone-number-3e9": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9aad2067" - }, - "/tags/primary-key-3c7": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "b2206ab4" - }, - "/tags/productivity-hacks-8cf": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "013b8728" - }, - "/tags/profile-8b9": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d5451361" - }, - "/tags/qr-code-0db": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "03af2c79" - }, - "/tags/rating-b13": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "7d5d7de6" - }, - "/tags/records-dc5": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "4f577b60" - }, - "/tags/relations-643": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "78ec2f26" - }, - "/tags/rename-542": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "147f12f7" - }, - "/tags/reorder-162": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d69d4db4" - }, - "/tags/role-dbe": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "ffd85642" - }, - "/tags/roles-9c1": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "0bd8cdc6" - }, - "/tags/rollup-174": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9e7567e1" - }, - "/tags/row-height-3ab": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "ab9ce1e1" - }, - "/tags/search-93b": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "523749b8" - }, - "/tags/select-based-types-ff3": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "6aee45b4" - }, - "/tags/share-fcd": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "7a733070" - }, - "/tags/shortcuts-ac3": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "71f80183" - }, - "/tags/show-hide-2c1": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d96af704" - }, - "/tags/single-line-text-eb2": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "df59b4b5" - }, - "/tags/single-select-318": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "c7dc53b4" - }, - "/tags/sort-ee6": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "fb12fd2d" - }, - "/tags/specific-db-type-059": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "b3347e58" - }, - "/tags/star-8e4": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "a54c3ef6" - }, - "/tags/table-327": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9995b2be" - }, - "/tags/table-details-150": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "a9993c14" - }, - "/tags/table-operations-03c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "5dcc9f57" - }, - "/tags/tables-03c": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "985d43d9" - }, - "/tags/text-based-types-08a": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "44655909" - }, - "/tags/url-0dc": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "105fb6bf" - }, - "/tags/views-7aa": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "e12d67b0" - }, - "/tags/webhook-d1d": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "9db0d30f" - }, - "/tags/workspace-f81": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "2fa98934" - }, - "/tags/workspaces-f31": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "3da8114c" - }, - "/tags/xlsx-fce": { - "__comp": "df203c0f", - "__context": { - "plugin": "3721b01f" - }, - "tag": "d12c5626" - }, - "/0.109.7-223": { - "__comp": "1be78505", - "__context": { - "plugin": "3721b01f" - }, - "versionMetadata": "ae9857c7" - }, - "/0.109.7/-eab": { - "__comp": "17896441", - "content": "1e898359" - }, - "/0.109.7/developer-resources/accessing-apis-238": { - "__comp": "17896441", - "content": "81862c4f" - }, - "/0.109.7/developer-resources/rest-apis-06e": { - "__comp": "17896441", - "content": "a7294da8" - }, - "/0.109.7/developer-resources/sdk-9da": { - "__comp": "17896441", - "content": "855d76bb" - }, - "/0.109.7/developer-resources/upload-via-api-ae3": { - "__comp": "17896441", - "content": "5436f7e6" - }, - "/0.109.7/developer-resources/webhooks-93d": { - "__comp": "17896441", - "content": "529c2981" - }, - "/0.109.7/engineering/architecture-a78": { - "__comp": "17896441", - "content": "71540999" - }, - "/0.109.7/engineering/builds-and-releases-107": { - "__comp": "17896441", - "content": "3615d78a" - }, - "/0.109.7/engineering/development-setup-9b9": { - "__comp": "17896441", - "content": "09ceb1a0" - }, - "/0.109.7/engineering/playwright-b87": { - "__comp": "17896441", - "content": "5ccd3149" - }, - "/0.109.7/engineering/repository-structure-6f0": { - "__comp": "17896441", - "content": "6fe2a298" - }, - "/0.109.7/engineering/translation-02f": { - "__comp": "17896441", - "content": "cc44517e" - }, - "/0.109.7/engineering/unit-testing-d31": { - "__comp": "17896441", - "content": "e4e12989" - }, - "/0.109.7/FAQs-79f": { - "__comp": "17896441", - "content": "4ed1386c" - }, - "/0.109.7/getting-started/demos-8e4": { - "__comp": "17896441", - "content": "87e9af65" - }, - "/0.109.7/getting-started/environment-variables-bea": { - "__comp": "17896441", - "content": "0c130525" - }, - "/0.109.7/getting-started/installation-af5": { - "__comp": "17896441", - "content": "5c9cf4c7" - }, - "/0.109.7/getting-started/upgrading-5e6": { - "__comp": "17896441", - "content": "e28b0c4f" - }, - "/0.109.7/setup-and-usages/account-settings-72e": { - "__comp": "17896441", - "content": "1b14dca8" - }, - "/0.109.7/setup-and-usages/audit-492": { - "__comp": "17896441", - "content": "9c78149d" - }, - "/0.109.7/setup-and-usages/code-snippets-e68": { - "__comp": "17896441", - "content": "615746d5" - }, - "/0.109.7/setup-and-usages/column-operations-b69": { - "__comp": "17896441", - "content": "b444d910" - }, - "/0.109.7/setup-and-usages/column-types-a5e": { - "__comp": "17896441", - "content": "34b71ab6" - }, - "/0.109.7/setup-and-usages/dashboard-ee2": { - "__comp": "17896441", - "content": "a47b7f3a" - }, - "/0.109.7/setup-and-usages/display-value-a30": { - "__comp": "17896441", - "content": "9d4ed5ff" - }, - "/0.109.7/setup-and-usages/expanded-form-b88": { - "__comp": "17896441", - "content": "e631982f" - }, - "/0.109.7/setup-and-usages/formulas-bd0": { - "__comp": "17896441", - "content": "55403ccd" - }, - "/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free-371": { - "__comp": "17896441", - "content": "2a42d1d2" - }, - "/0.109.7/setup-and-usages/keyboard-maneuver-881": { - "__comp": "17896441", - "content": "90e43058" - }, - "/0.109.7/setup-and-usages/languages-b49": { - "__comp": "17896441", - "content": "408139c4" - }, - "/0.109.7/setup-and-usages/link-to-another-record-6c9": { - "__comp": "17896441", - "content": "86fc9284" - }, - "/0.109.7/setup-and-usages/links-0dc": { - "__comp": "17896441", - "content": "a43060c8" - }, - "/0.109.7/setup-and-usages/lookup-96d": { - "__comp": "17896441", - "content": "2226a1e9" - }, - "/0.109.7/setup-and-usages/meta-management-254": { - "__comp": "17896441", - "content": "d427e024" - }, - "/0.109.7/setup-and-usages/primary-key-0c4": { - "__comp": "17896441", - "content": "654123f4" - }, - "/0.109.7/setup-and-usages/project-settings-dc0": { - "__comp": "17896441", - "content": "d01bd8c5" - }, - "/0.109.7/setup-and-usages/rollup-64f": { - "__comp": "17896441", - "content": "cd725ea4" - }, - "/0.109.7/setup-and-usages/share-base-29d": { - "__comp": "17896441", - "content": "88cc213e" - }, - "/0.109.7/setup-and-usages/share-view-ec1": { - "__comp": "17896441", - "content": "10779e77" - }, - "/0.109.7/setup-and-usages/sync-schema-852": { - "__comp": "17896441", - "content": "c1501dcb" - }, - "/0.109.7/setup-and-usages/table-operations-364": { - "__comp": "17896441", - "content": "0f6b8098" - }, - "/0.109.7/setup-and-usages/team-and-auth-b5f": { - "__comp": "17896441", - "content": "f0eb83f3" - }, - "/0.109.7/setup-and-usages/usage-information-b21": { - "__comp": "17896441", - "content": "824dfda1" - }, - "/0.109.7/setup-and-usages/views-303": { - "__comp": "17896441", - "content": "1e403fb7" - }, - "/-c27": { - "__comp": "1be78505", - "__context": { - "plugin": "3721b01f" - }, - "versionMetadata": "935f2afb" - }, - "/-f1a": { - "__comp": "17896441", - "content": "b22d161b" - }, - "/account-settings/api-tokens-fe5": { - "__comp": "17896441", - "content": "023320c3" - }, - "/account-settings/oss-specific-details-95b": { - "__comp": "17896441", - "content": "00aa88f5" - }, - "/account-settings/profile-page-6de": { - "__comp": "17896441", - "content": "9329f711" - }, - "/automation/webhook/actions-on-webhook-ec5": { - "__comp": "17896441", - "content": "052736b6" - }, - "/automation/webhook/create-webhook-7f4": { - "__comp": "17896441", - "content": "0cab3fcc" - }, - "/automation/webhook/webhook-overview-bdc": { - "__comp": "17896441", - "content": "2b263996" - }, - "/bases/actions-on-base-d6b": { - "__comp": "17896441", - "content": "d767d123" - }, - "/bases/base-collaboration-1d1": { - "__comp": "17896441", - "content": "4bab5100" - }, - "/bases/base-overview-305": { - "__comp": "17896441", - "content": "eb689018" - }, - "/bases/create-base-b75": { - "__comp": "17896441", - "content": "2eb4ec02" - }, - "/bases/import-base-from-airtable-e12": { - "__comp": "17896441", - "content": "ba1d2c5b" - }, - "/bases/share-base-626": { - "__comp": "17896441", - "content": "6f7695df" - }, - "/collaboration/base-collaboration-dab": { - "__comp": "17896441", - "content": "25ad7bcb" - }, - "/collaboration/collaboration-overview-d7f": { - "__comp": "17896441", - "content": "f9241299" - }, - "/collaboration/oss-specific-details-43a": { - "__comp": "17896441", - "content": "576905f1" - }, - "/collaboration/share-base-1db": { - "__comp": "17896441", - "content": "037e2c34" - }, - "/collaboration/share-view-ef9": { - "__comp": "17896441", - "content": "a18f2535" - }, - "/collaboration/workspace-collaboration-952": { - "__comp": "17896441", - "content": "9040003c" - }, - "/data-source/data-source-overview-0c7": { - "__comp": "17896441", - "content": "c3d0dca5" - }, - "/engineering/architecture-5c0": { - "__comp": "17896441", - "content": "4efb7b3c" - }, - "/engineering/builds-and-releases-bb9": { - "__comp": "17896441", - "content": "0834b429" - }, - "/engineering/development-setup-27a": { - "__comp": "17896441", - "content": "58354ae8" - }, - "/engineering/playwright-09d": { - "__comp": "17896441", - "content": "9906c9d3" - }, - "/engineering/repository-structure-6fc": { - "__comp": "17896441", - "content": "52df1fbb" - }, - "/engineering/translation-2dd": { - "__comp": "17896441", - "content": "8498c216" - }, - "/engineering/unit-testing-24a": { - "__comp": "17896441", - "content": "1b3738fb" - }, - "/engineering/writing-docs-4f2": { - "__comp": "17896441", - "content": "7c4b6d90" - }, - "/FAQs-828": { - "__comp": "17896441", - "content": "20e10381" - }, - "/fields/actions-on-field-f17": { - "__comp": "17896441", - "content": "fb60c522" - }, - "/fields/display-value-828": { - "__comp": "17896441", - "content": "603e048e" - }, - "/fields/field-types/custom-types/attachment-06c": { - "__comp": "17896441", - "content": "e68614dc" - }, - "/fields/field-types/custom-types/barcode-e35": { - "__comp": "17896441", - "content": "4cd0de40" - }, - "/fields/field-types/custom-types/checkbox-d59": { - "__comp": "17896441", - "content": "ed0a57e3" - }, - "/fields/field-types/custom-types/geometry-1a2": { - "__comp": "17896441", - "content": "c1a34d6e" - }, - "/fields/field-types/custom-types/json-bea": { - "__comp": "17896441", - "content": "6d2f78d9" - }, - "/fields/field-types/custom-types/QR-code-4e4": { - "__comp": "17896441", - "content": "525fa7b4" - }, - "/fields/field-types/custom-types/rating-2ad": { - "__comp": "17896441", - "content": "ec134df3" - }, - "/fields/field-types/custom-types/specific-db-type-0cd": { - "__comp": "17896441", - "content": "68fa8000" - }, - "/fields/field-types/date-time-based/date-725": { - "__comp": "17896441", - "content": "14d6025d" - }, - "/fields/field-types/date-time-based/date-time-836": { - "__comp": "17896441", - "content": "ded49de4" - }, - "/fields/field-types/date-time-based/duration-94e": { - "__comp": "17896441", - "content": "60b8b995" - }, - "/fields/field-types/date-time-based/time-d3c": { - "__comp": "17896441", - "content": "2cbe0325" - }, - "/fields/field-types/formula/conditional-expressions-5af": { - "__comp": "17896441", - "content": "18c96d41" - }, - "/fields/field-types/formula/date-functions-798": { - "__comp": "17896441", - "content": "31befc1e" - }, - "/fields/field-types/formula/formula-576": { - "__comp": "17896441", - "content": "0a7c5cbc" - }, - "/fields/field-types/formula/numeric-functions-556": { - "__comp": "17896441", - "content": "224f2b0f" - }, - "/fields/field-types/formula/operators-d96": { - "__comp": "17896441", - "content": "98de4c79" - }, - "/fields/field-types/formula/string-functions-b5c": { - "__comp": "17896441", - "content": "0ac1e38e" - }, - "/fields/field-types/links-based/links-487": { - "__comp": "17896441", - "content": "16d5baaf" - }, - "/fields/field-types/links-based/lookup-861": { - "__comp": "17896441", - "content": "abbfc25c" - }, - "/fields/field-types/links-based/rollup-1f5": { - "__comp": "17896441", - "content": "cd3c4207" - }, - "/fields/field-types/numerical/currency-91a": { - "__comp": "17896441", - "content": "e55064b4" - }, - "/fields/field-types/numerical/decimal-8cc": { - "__comp": "17896441", - "content": "69895f00" - }, - "/fields/field-types/numerical/number-d91": { - "__comp": "17896441", - "content": "e5a54c1b" - }, - "/fields/field-types/numerical/percent-243": { - "__comp": "17896441", - "content": "31f9cd1a" - }, - "/fields/field-types/select-based/multi-select-626": { - "__comp": "17896441", - "content": "35af5afe" - }, - "/fields/field-types/select-based/single-select-e33": { - "__comp": "17896441", - "content": "14095bfc" - }, - "/fields/field-types/text-based/email-938": { - "__comp": "17896441", - "content": "11d84c26" - }, - "/fields/field-types/text-based/long-text-e24": { - "__comp": "17896441", - "content": "c1dfffdd" - }, - "/fields/field-types/text-based/phonenumber-a44": { - "__comp": "17896441", - "content": "bd02e23f" - }, - "/fields/field-types/text-based/single-line-text-99f": { - "__comp": "17896441", - "content": "22aab9a3" - }, - "/fields/field-types/text-based/url-64a": { - "__comp": "17896441", - "content": "bb53f532" - }, - "/fields/fields-overview-78a": { - "__comp": "17896441", - "content": "310a23cf" - }, - "/fields/multi-fields-editor-6e1": { - "__comp": "17896441", - "content": "da4f93ee" - }, - "/fields/primary-key-40d": { - "__comp": "17896441", - "content": "ec135315" - }, - "/getting-started/keyboard-shortcuts-323": { - "__comp": "17896441", - "content": "0ecc5e11" - }, - "/getting-started/quick-start-92c": { - "__comp": "17896441", - "content": "01865ba3" - }, - "/getting-started/self-hosted/environment-variables-60e": { - "__comp": "17896441", - "content": "4c6b0ee7" - }, - "/getting-started/self-hosted/installation-972": { - "__comp": "17896441", - "content": "2a1ace55" - }, - "/getting-started/self-hosted/upgrading-bfd": { - "__comp": "17896441", - "content": "e56fdc78" - }, - "/getting-started/terminologies-b1a": { - "__comp": "17896441", - "content": "69bee932" - }, - "/records/actions-on-record-632": { - "__comp": "17896441", - "content": "99f674e5" - }, - "/records/create-record-945": { - "__comp": "17896441", - "content": "2888903d" - }, - "/records/expand-record-72d": { - "__comp": "17896441", - "content": "278121a5" - }, - "/records/records-overview-150": { - "__comp": "17896441", - "content": "9dfd9b1b" - }, - "/roles-and-permissions/roles-permissions-overview-57d": { - "__comp": "17896441", - "content": "c76e097b" - }, - "/table-details/table-details-overview-ae5": { - "__comp": "17896441", - "content": "e302cfc9" - }, - "/table-operations/download-8d4": { - "__comp": "17896441", - "content": "6a0eac6b" - }, - "/table-operations/field-operations-c3d": { - "__comp": "17896441", - "content": "22580739" - }, - "/table-operations/filter-96c": { - "__comp": "17896441", - "content": "f7d905ba" - }, - "/table-operations/group-by-893": { - "__comp": "17896441", - "content": "95a14fd1" - }, - "/table-operations/overview-bd0": { - "__comp": "17896441", - "content": "ae730630" - }, - "/table-operations/row-height-3c0": { - "__comp": "17896441", - "content": "69bed9e5" - }, - "/table-operations/search-ed7": { - "__comp": "17896441", - "content": "7dce83b4" - }, - "/table-operations/sort-209": { - "__comp": "17896441", - "content": "8a8a6f17" - }, - "/tables/actions-on-table-05d": { - "__comp": "17896441", - "content": "0f4f52c0" - }, - "/tables/create-table-b64": { - "__comp": "17896441", - "content": "32e0f401" - }, - "/tables/create-table-via-import-e6f": { - "__comp": "17896441", - "content": "70efa42e" - }, - "/tables/import-data-into-existing-table-d91": { - "__comp": "17896441", - "content": "e4367861" - }, - "/tables/table-overview-046": { - "__comp": "17896441", - "content": "7ce1d842" - }, - "/views/actions-on-view-17e": { - "__comp": "17896441", - "content": "7e18769a" - }, - "/views/create-view-2b3": { - "__comp": "17896441", - "content": "61a3d417" - }, - "/views/share-view-97d": { - "__comp": "17896441", - "content": "2bb712de" - }, - "/views/view-types/form-252": { - "__comp": "17896441", - "content": "5af3a857" - }, - "/views/view-types/gallery-004": { - "__comp": "17896441", - "content": "ebb99180" - }, - "/views/view-types/grid-c46": { - "__comp": "17896441", - "content": "0908b333" - }, - "/views/view-types/kanban-b3f": { - "__comp": "17896441", - "content": "1970c274" - }, - "/views/views-overview-ba9": { - "__comp": "17896441", - "content": "bb516362" - }, - "/workspaces/actions-on-workspace-cb7": { - "__comp": "17896441", - "content": "319e5695" - }, - "/workspaces/create-workspace-d20": { - "__comp": "17896441", - "content": "5eaf3a75" - }, - "/workspaces/workspace-collaboration-dd4": { - "__comp": "17896441", - "content": "fe112e79" - }, - "/workspaces/workspace-overview-34e": { - "__comp": "17896441", - "content": "b7abf355" - } -} \ No newline at end of file diff --git a/packages/noco-docs/.docusaurus/site-metadata.json b/packages/noco-docs/.docusaurus/site-metadata.json deleted file mode 100644 index 1aa959c44f..0000000000 --- a/packages/noco-docs/.docusaurus/site-metadata.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "docusaurusVersion": "2.4.3", - "siteVersion": "1.1.0", - "pluginVersions": { - "docusaurus-plugin-content-docs": { - "type": "package", - "name": "@docusaurus/plugin-content-docs", - "version": "2.4.3" - }, - "docusaurus-plugin-content-pages": { - "type": "package", - "name": "@docusaurus/plugin-content-pages", - "version": "2.4.3" - }, - "docusaurus-plugin-sitemap": { - "type": "package", - "name": "@docusaurus/plugin-sitemap", - "version": "2.4.3" - }, - "docusaurus-theme-classic": { - "type": "package", - "name": "@docusaurus/theme-classic", - "version": "2.4.3" - }, - "docusaurus-plugin-sass": { - "type": "package", - "name": "docusaurus-plugin-sass", - "version": "0.2.5" - }, - "docusaurus-plugin-image-zoom": { - "type": "package", - "name": "plugin-image-zoom", - "version": "1.1.0" - }, - "docusaurus-plugin-ideal-image": { - "type": "package", - "name": "@docusaurus/plugin-ideal-image", - "version": "2.4.3" - } - } -} \ No newline at end of file diff --git a/packages/noco-docs/.gitignore b/packages/noco-docs/.gitignore index f24632c610..07b7a79c79 100644 --- a/packages/noco-docs/.gitignore +++ b/packages/noco-docs/.gitignore @@ -3,10 +3,10 @@ # Production /build -/dist +# /dist # Generated files -#.docusaurus +.docusaurus .cache-loader # Misc diff --git a/packages/noco-docs/dist/.nojekyll b/packages/noco-docs/dist/.nojekyll new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/noco-docs/dist/0.109.7/FAQs/index.html b/packages/noco-docs/dist/0.109.7/FAQs/index.html new file mode 100644 index 0000000000..49f62a6f7d --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/FAQs/index.html @@ -0,0 +1,18 @@ + + + + + +FAQs | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

FAQs

How to upgrade NocoDB ?

How to export CSV from the grid view ?

How to share the project with read only access ?

  • Either you can invite by email with 'viewer' access control
  • Share the base with publicly accessible link. Available since 0.82.0

How to check my current NocoDB version ?

  • You can hover the NocoDB icon on the top left corner or check PackageVersion in Project info.

image

How to check my Project info ?

  • You can click on top right icon and click Copy Project Info.

image

You should see the similar result as below.

Node: **v16.14.0**
Arch: **arm64**
Platform: **darwin**
Docker: **false**
Database: **mysql2**
ProjectOnRootDB: **true**
RootDB: **mysql2**
PackageVersion: **0.97.0**

What is available in free version ?

  • Detailed comparison of NocoDB's generous CE compared to others is here.
  • NocoDB has just one version that is free & open source.
  • In it you will notice advanced features are all available for free.
    • ACL
    • Collaboration
    • Advanced Views : Form View, Gallery View & Kanban View
    • Share View
    • Embed View
    • Password protected View
    • Automations
    • API Token Support
  • And we would never move these features from free to an enterprise version of NocoDB.
  • There is no limitations to number of projects, rows or columns either.

What is the difference between Auth Token and API Token ?

Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable NC_JWT_EXPIRES_IN. If you are passing Auth Token, make sure that the header is called xc-auth.

API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called xc-token.

Do we plan to have an Enterprise Edition?

For features that make sense for enterprises like below - yes

  • SSO, SLA, Organisation wide reports and analytics,
  • Advanced Audit or ACL,
  • Bespoke implementations & integrations,
  • A hosted solution. +

And increasing number of our customers are requesting it.

How do we decide if a feature is Enterprise or not ?

  • Depends on the effort and whether the intended users are enterprises.

What are the official socials for NocoDB?

Is NocoDB available on the cloud?

Soon! NocoDB is currently developing cloud infrastructure. +To join the upcoming FREE private beta program, fill out this form here and be the first to try it!

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/developer-resources/accessing-apis/index.html b/packages/noco-docs/dist/0.109.7/developer-resources/accessing-apis/index.html new file mode 100644 index 0000000000..9419f54ee3 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/developer-resources/accessing-apis/index.html @@ -0,0 +1,17 @@ + + + + + +Accessing APIs | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Accessing APIs

NocoDB APIs can be authorized by either Auth Token or API Token.

Auth Token

Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable NC_JWT_EXPIRES_IN. If you are passing Auth Token, make sure that the header is called xc-auth.

  • Go to NocoDB Project, click the rightmost button and click Copy Auth Token. +
image

API Token

API tokens allows us to integrate seamlessly with 3rd party apps. See API Tokens Management for more.

Swagger UI

You can interact with the API's resources via Swagger UI.

  • Go to NocoDB Project, click the rightmost button and click Swagger APIs Doc.
image
  • Click Authorize, paste the token you copied in above steps and click Authorize to save.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/developer-resources/rest-apis/index.html b/packages/noco-docs/dist/0.109.7/developer-resources/rest-apis/index.html new file mode 100644 index 0000000000..115b42f7ff --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/developer-resources/rest-apis/index.html @@ -0,0 +1,16 @@ + + + + + +REST APIs | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

REST APIs

Once you've created the schemas, you can manipulate the data or invoke actions using the REST APIs. We provide several types of APIs for different usages as below.

API Overview

Here's the overview of all APIs. For the details, please check out NocoDB API Documentation.

You may also interact with the API's resources via Swagger UI.

note

Currently, the default value for {orgs} is noco. Users will be able to change it in the future release.

Auth APIs

CategoryMethodTagFunction NamePath
AuthPostauthsignup/api/v1/auth/user/signup
AuthPostauthsignin/api/v1/auth/user/signin
AuthGetauthme/api/v1/auth/user/me
AuthPostauthpasswordForgot/api/v1/auth/password/forgot
AuthPostauthpasswordChange/api/v1/auth/password/change
AuthPostauthpasswordReset/api/v1/auth/password/reset/{token}
AuthPostauthtokenRefresh/api/v1/auth/token/refresh
AuthPostauthpasswordResetTokenValidate/api/v1/auth/token/validate/{token}
AuthPostauthemailValidate/api/v1/auth/email/validate/{email}

Public APIs

CategoryMethodTagFunction NamePath
PublicGetpublicsharedBaseGet/api/v1/db/public/shared-base/{sharedBaseUuid}/meta
PublicPostpublicdataList/api/v1/db/public/shared-view/{sharedViewUuid}/rows
PublicGetpublicdataNestedList/api/v1/db/public/shared-view/{sharedViewUuid}/rows/{rowId}/{relationType}/{columnName}
PublicPostpublicdataCreate/api/v1/db/public/shared-view/{sharedViewUuid}/rows
PublicGetpubliccsvExport/api/v1/db/public/shared-view/{sharedViewUuid}/rows/export/{type}
PublicGetpublicdataRelationList/api/v1/db/public/shared-view/{sharedViewUuid}/nested/{columnName}
PublicGetpublicsharedViewMetaGet/api/v1/db/public/shared-view/{sharedViewUuid}/meta
PublicGetpublicgroupedDataList/api/v1/db/public/shared-view/{sharedViewUuid}/group/{columnId}

Data APIs

CategoryMethodTagFunction NamePath
DataDeletedbTableRowbulkDelete/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/
DataPostdbTableRowbulkCreate/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/
DataPatchdbTableRowbulkUpdate/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/
DataPatchdbTableRowbulkUpdateAll/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/all
DataDeletedbTableRowbulkDeleteAll/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/all
DataGetdbTableRowlist/api/v1/db/data/{orgs}/{projectName}/{tableName}
DataGetdbTableRowfindOne/api/v1/db/data/{orgs}/{projectName}/{tableName}/find-one
DataGetdbTableRowgroupBy/api/v1/db/data/{orgs}/{projectName}/{tableName}/groupby
DataGetdbTableRowexist/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}/exist
DataPostdbTableRowcreate/api/v1/db/data/{orgs}/{projectName}/{tableName}
DataGetdbTableRowread/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}
DataPatchdbTableRowupdate/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}
DataDeletedbTableRowdelete/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}
DataGetdbTableRowcount/api/v1/db/data/{orgs}/{projectName}/{tableName}/count
DataGetdbTableRowgroupedDataList/api/v1/db/data/{orgs}/{projectName}/{tableName}/group/{columnId}
DataGetdbViewRowlist/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}
DataGetdbViewRowfindOne/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/find-one
DataGetdbViewRowgroupBy/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/groupby
DataGetdbViewRowexist/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}/exist
DataPostdbViewRowcreate/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}
DataGetdbViewRowread/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}
DataPatchdbViewRowupdate/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}
DataDeletedbViewRowdelete/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}
DataGetdbViewRowcount/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/count
DataGetdbViewRowgroupedDataList/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/group/{columnId}

Meta APIs

CategoryMethodTagFunction NamePath
MetaGetapiTokenlist/api/v1/db/meta/projects/{projectId}/api-tokens
MetaPostapiTokencreate/api/v1/db/meta/projects/{projectId}/api-tokens
MetaDeleteapiTokendelete/api/v1/db/meta/projects/{projectId}/api-tokens/{token}
MetaGetauthprojectUserList/api/v1/db/meta/projects/{projectId}/users
MetaPostauthprojectUserAdd/api/v1/db/meta/projects/{projectId}/users
MetaPatchauthprojectUserUpdate/api/v1/db/meta/projects/{projectId}/users/{userId}
MetaDeleteauthprojectUserRemove/api/v1/db/meta/projects/{projectId}/users/{userId}
MetaPostauthprojectUserResendInvite/api/v1/db/meta/projects/{projectId}/users/{userId}/resend-invite
MetaPostdbTablecreate/api/v1/db/meta/projects/{projectId}/tables
MetaGetdbTablelist/api/v1/db/meta/projects/{projectId}/tables
MetaPostdbTableColumncreate/api/v1/db/meta/tables/{tableId}/columns
MetaPatchdbTableColumnupdate/api/v1/db/meta/tables/{tableId}/columns/{columnId}
MetaDeletedbTableColumndelete/api/v1/db/meta/tables/{tableId}/columns/{columnId}
MetaPostdbTableColumnprimaryColumnSet/api/v1/db/meta/tables/{tableId}/columns/{columnId}/primary
MetaGetdbTableFilterget/api/v1/db/meta/filters/{filterId}
MetaPatchdbTableFilterupdate/api/v1/db/meta/filters/{filterId}
MetaDeletedbTableFilterdelete/api/v1/db/meta/filters/{filterId}
MetaGetdbTableFilterread/api/v1/db/meta/views/{viewId}/filters
MetaPostdbTableFiltercreate/api/v1/db/meta/views/{viewId}/filters
MetaGetdbTableFilterget/api/v1/db/meta/filters/{filterId}
MetaPatchdbTableFilterupdate/api/v1/db/meta/filters/{filterId}
MetaDeletedbTableFilterdelete/api/v1/db/meta/filters/{filterId}
MetaGetdbTableFilterchildrenRead/api/v1/db/meta/filters/{filterGroupId}/children
MetaGetdbTableSortlist/api/v1/db/meta/views/{viewId}/sorts
MetaPostdbTableSortcreate/api/v1/db/meta/views/{viewId}/sorts
MetaGetdbTableSortread/api/v1/db/meta/sorts/{sortId}
MetaPatchdbTableSortupdate/api/v1/db/meta/sorts/{sortId}
MetaDeletedbTableSortdelete/api/v1/db/meta/sorts/{sortId}/api/v1/db
MetaPatchdbTableWebhookupdate/api/v1/db/meta/hooks/{hookId}
MetaDeletedbTableWebhookdelete/api/v1/db/meta/hooks/{hookId}
MetaGetdbTableWebhooklist/api/v1/db/meta/tables/{tableId}/hooks
MetaPostdbTableWebhookcreate/api/v1/db/meta/tables/{tableId}/hooks
MetaPostdbTableWebhooktest/api/v1/db/meta/tables/{tableId}/hooks/test
MetaGetdbTableWebhooksamplePayloadGet/api/v1/db/meta/tables/{tableId}/hooks/samplePayload/{operation}
MetaGetdbTableWebhookFilterread/api/v1/db/meta/hooks/{hookId}/filters
MetaPostdbTableWebhookFiltercreate/api/v1/db/meta/hooks/{hookId}/filters
MetaGetdbViewlist/api/v1/db/meta/tables/{tableId}/views
MetaGetdbViewread/api/v1/db/meta/tables/{tableId}
MetaPatchdbViewupdate/api/v1/db/meta/tables/{tableId}
MetaDeletedbViewdelete/api/v1/db/meta/tables/{tableId}
MetaPostdbViewreorder/api/v1/db/meta/tables/{tableId}/reorder
MetaPostdbViewformCreate/api/v1/db/meta/tables/{tableId}/forms
MetaPatchdbViewformUpdate/api/v1/db/meta/forms/{formViewId}
MetaGetdbViewformRead/api/v1/db/meta/forms/{formViewId}
MetaPatchdbViewformColumnUpdate/api/v1/db/meta/form-columns/{formViewColumnId}
MetaPostdbViewgalleryCreate/api/v1/db/meta/tables/{tableId}/galleries
MetaPatchdbViewgalleryUpdate/api/v1/db/meta/galleries/{galleryViewId}
MetaGetdbViewgalleryRead/api/v1/db/meta/galleries/{galleryViewId}
MetaPostdbViewkanbanCreate/api/v1/db/meta/tables/{tableId}/kanbans
MetaPatchdbViewkanbanUpdate/api/v1/db/meta/kanban/{kanbanViewId}
MetaGetdbViewkanbanRead/api/v1/db/meta/kanbans/{kanbanViewId}
MetaPostdbViewmapCreate/api/v1/db/meta/tables/{tableId}/maps
MetaPatchdbViewmapUpdate/api/v1/db/meta/maps/{mapViewId}
MetaGetdbViewmapRead/api/v1/db/meta/maps/{mapViewId}
MetaPostdbViewgridCreate/api/v1/db/meta/tables/{tableId}/grids
MetaGetdbViewgridColumnsList/api/v1/db/meta/grids/{gridId}/grid-columns
MetaPatchdbViewgridColumnUpdate/api/v1/db/meta/grid-columns/{columnId}
MetaPatchdbViewupdate/api/v1/db/meta/views/{viewId}
MetaDeletedbViewdelete/api/v1/db/meta/views/{viewId}
MetaPostdbViewshowAllColumn/api/v1/db/meta/views/{viewId}/show-all
MetaPostdbViewhideAllColumn/api/v1/db/meta/views/{viewId}/hide-all
MetaGetdbViewColumnlist/api/v1/db/meta/views/{viewId}/columns
MetaPostdbViewColumncreate/api/v1/db/meta/views/{viewId}/columns
MetaPatchdbViewColumnupdate/api/v1/db/meta/views/{viewId}/columns/{columnId}
MetaGetdbViewSharelist/api/v1/db/meta/views/{viewId}/share
MetaPostdbViewSharecreate/api/v1/db/meta/views/{viewId}/share
MetaPatchdbViewShareupdate/api/v1/db/meta/views/{viewId}/share
MetaDeletedbViewSharedelete/api/v1/db/meta/views/{viewId}/share
MetaGetpluginlist/api/v1/db/meta/plugins
MetaGetpluginstatus/api/v1/db/meta/plugins/{pluginTitle}/status
MetaPostplugintest/api/v1/db/meta/plugins/test
MetaPATCHpluginupdate/api/v1/db/meta/plugins/{pluginId}
MetaGetpluginread/api/v1/db/meta/plugins/{pluginId}
MetaGetprojectmetaGet/api/v1/db/meta/projects/{projectId}/info
MetaGetprojectmodelVisibilityList/api/v1/db/meta/projects/{projectId}/visibility-rules
MetaPostprojectmodelVisibilitySet/api/v1/db/meta/projects/{projectId}/visibility-rules
MetaGetprojectlist/api/v1/db/meta/projects
MetaPostprojectcreate/api/v1/db/meta/projects
MetaGetprojectread/api/v1/db/meta/projects/{projectId}
MetaDeleteprojectdelete/api/v1/db/meta/projects/{projectId}
MetaGetprojectauditList/api/v1/db/meta/projects/{projectId}/audits
MetaGetprojectmetaDiffGet/api/v1/db/meta/projects/{projectId}/meta-diff
MetaPostprojectmetaDiffSync/api/v1/db/meta/projects/{projectId}/meta-diff
MetaGetprojectsharedBaseGet/api/v1/db/meta/projects/{projectId}/shared
MetaDeleteprojectsharedBaseDisable/api/v1/db/meta/projects/{projectId}/shared
MetaPostprojectsharedBaseCreate/api/v1/db/meta/projects/{projectId}/shared
MetaPatchprojectsharedBaseUpdate/api/v1/db/meta/projects/{projectId}/shared
MetaPoststorageupload/api/v1/db/storage/upload
MetaPoststorageuploadByUrl/api/v1/db/storage/upload-by-url
MetaGetutilscommentList/api/v1/db/meta/audits/comments
MetaPostutilscommentRow/api/v1/db/meta/audits/comments
MetaGetutilscommentCount/api/v1/db/meta/audits/comments/count
MetaPostutilsauditRowUpdate/api/v1/db/meta/audits/update
MetaGetutilscacheGet/api/v1/db/meta/cache
MetaDeleteutilscacheDelete/api/v1/db/meta/cache
MetaPostutilstestConnection/api/v1/db/meta/projects/connection/test
MetaGetutilsappInfo/api/v1/db/meta/nocodb/info
MetaGetutilsappVersion/api/v1/version
MetaGetutilsappHealth/api/v1/health
MetaGetutilsaggregatedMetaInfo/api/v1/aggregated-meta-info
MetaGetorgUserslist/api/v1/users
MetaPostorgUsersadd/api/v1/users
MetaPatchorgUsersupdate/api/v1/users/{userId}
MetaDeleteorgUsersdelete/api/v1/users/{userId}
MetaGetorgTokenslist/api/v1/tokens
MetaPostorgTokenscreate/api/v1/tokens
MetaDeleteorgTokensdelete/api/v1/tokens/{token}
MetaGetorgAppSettingsget/api/v1/app-settings
MetaPostorgAppSettingsset/api/v1/app-settings

Query params

NameAliasUse caseDefault valueExample value
wherewComplicated where conditions(colName,eq,colValue)~or(colName2,gt,colValue2)
Usage: Comparison operators
Usage: Logical operators
limitlNumber of rows to get (SQL limit value)1020
offsetoOffset for pagination (SQL offset value)020
sortsSort by column name, Use - as prefix for descending sortcolumn_name
fieldsfRequired column names in result*column_name1,column_name2
shufflerShuffle the result for pagination01 (Only allow 0 or 1. Other values would see it as 0)

Comparison Operators

OperationMeaningExample
eqequal(colName,eq,colValue)
neqnot equal(colName,neq,colValue)
notnot equal (alias of neq)(colName,not,colValue)
gtgreater than(colName,gt,colValue)
gegreater or equal(colName,ge,colValue)
ltless than(colName,lt,colValue)
leless or equal(colName,le,colValue)
isis(colName,is,true/false/null)
isnotis not(colName,isnot,true/false/null)
inin(colName,in,val1,val2,val3,val4)
btwbetween(colName,btw,val1,val2)
nbtwnot between(colName,nbtw,val1,val2)
likelike(colName,like,%name)
isWithinis Within (Available in Date and DateTime only)(colName,isWithin,sub_op)
allofincludes all of(colName,allof,val1,val2,...)
anyofincludes any of(colName,anyof,val1,val2,...)
nallofdoes not include all of (includes none or some, but not all of)(colName,nallof,val1,val2,...)
nanyofdoes not include any of (includes none of)(colName,nanyof,val1,val2,...)

Comparison Sub-Operators

The following sub-operators are available in Date and DateTime columns.

OperationMeaningExample
todaytoday(colName,eq,today)
tomorrowtomorrow(colName,eq,tomorrow)
yesterdayyesterday(colName,eq,yesterday)
oneWeekAgoone week ago(colName,eq,oneWeekAgo)
oneWeekFromNowone week from now(colName,eq,oneWeekFromNow)
oneMonthAgoone month ago(colName,eq,oneMonthAgo)
oneMonthFromNowone month from now(colName,eq,oneMonthFromNow)
daysAgonumber of days ago(colName,eq,daysAgo,10)
daysFromNownumber of days from now(colName,eq,daysFromNow,10)
exactDateexact date(colName,eq,exactDate,2022-02-02)

For isWithin in Date and DateTime columns, the different set of sub-operators are used.

OperationMeaningExample
pastWeekthe past week(colName,isWithin,pastWeek)
pastMonththe past month(colName,isWithin,pastMonth)
pastYearthe past year(colName,isWithin,pastYear)
nextWeekthe next week(colName,isWithin,nextWeek)
nextMonththe next month(colName,isWithin,nextMonth)
nextYearthe next year(colName,isWithin,nextYear)
nextNumberOfDaysthe next number of days(colName,isWithin,nextNumberOfDays,10)
pastNumberOfDaysthe past number of days(colName,isWithin,pastNumberOfDays,10)

Logical Operators

OperationExample
~or(checkNumber,eq,JM555205)~or((amount, gt, 200)~and(amount, lt, 2000))
~and(checkNumber,eq,JM555205)~and((amount, gt, 200)~and(amount, lt, 2000))
~not~not(checkNumber,eq,JM555205)
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/developer-resources/sdk/index.html b/packages/noco-docs/dist/0.109.7/developer-resources/sdk/index.html new file mode 100644 index 0000000000..8b2a7bad8e --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/developer-resources/sdk/index.html @@ -0,0 +1,16 @@ + + + + + +NocoDB SDK | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

NocoDB SDK

We provide SDK for users to integrate with their applications. Currently only SDK for Javascript is supported.

note

The NocoDB SDK requires authorization token. If you haven't created one, please check out Accessing APIs for details.

SDK For Javascript

Install nocodb-sdk

npm i nocodb-sdk

Import Api

import { Api } from 'nocodb-sdk'

Configure Api

The Api can be authorizated by either Auth Token or API Token.

Example: Auth Token

const api = new Api({
baseURL: 'https://<HOST>:<PORT>',
headers: {
'xc-auth': '<AUTH_TOKEN>'
}
})

Example: API Token

const api = new Api({
baseURL: 'https://<HOST>:<PORT>',
headers: {
'xc-token': '<API_TOKEN>'
}
})

Call Functions

Once you have configured api, you can call different types of APIs by api.<Tag>.<FunctionName>.

note

For Tag and FunctionName, please check out the API table here.

Example: Calling API - /api/v1/db/meta/projects/{projectId}/tables

await api.dbTable.create(params)
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/developer-resources/upload-via-api/index.html b/packages/noco-docs/dist/0.109.7/developer-resources/upload-via-api/index.html new file mode 100644 index 0000000000..aff7572465 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/developer-resources/upload-via-api/index.html @@ -0,0 +1,17 @@ + + + + + +Upload via API | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Upload via API

Sample code to upload files via API is listed below. +Assumes http://localhost:8080/ as the base URL for the API calls.

Upload local file

let axios = require("axios").default;
let FormData = require('form-data');
let fs = require('fs');

// Configurations
//
const project_id = '<Project Identifier>';
const table_id = '<Table Identifier>';
const xc_token = '<Auth Token>';
const file_path = '<Local File Path>';


// Insert Image
// @param image_path : local file path
// @return : JSON object to be used in insert record API for attachment field
//
async function insertImage (path) {
const formData = new FormData();
formData.append("file", fs.createReadStream(path));
const data = await axios({
url: 'http://localhost:8080/api/v1/db/storage/upload',
data: formData,
headers:{
'Content-Type':`multipart/form-data;`,
'xc-auth': xc_token
},
method: 'post',

// Optional : storage file path
params: {"path": "somePath"}
});
return data;
}

// Insert record with attachment
// Assumes a table with two columns :
// 'Title' of type SingleLineText and
// 'Attachment' of type Attachment
//
async function uploadFileExample() {
let response = await insertImage(file_path);

let row = {
"Title": "2",
"Attachment": response.data
};

await axios({
method: 'POST',
url: `http://localhost:8080/api/v1/db/data/noco/${project_id}/${table_id}`,
data: row,
headers: {
'xc-auth': xc_token
}
});
}

(async () => {
await uploadFileExample();
})();

Upload via URL

let axios = require("axios").default;
let FormData = require('form-data');
let fs = require('fs');

// Configurations
//
const project_id = '<Project Identifier>';
const table_id = '<Table Identifier>';
const xc_token = '<Auth Token>';

// URL array : URLs of files to be uploaded
const URLs = [{ url: '<URL1>' }, { url: '<URL2>' }];

// Insert Image
// @param URLs : [] containing public URL for files to be uploaded
// @return : JSON object to be used in insert record API for attachment field
//
async function insertImageByURL (URL_array) {
const data = await axios({
url: 'http://localhost:8080/api/v1/db/storage/upload-by-url',
data: URL_array,
headers: {
'xc-auth': xc_token
},
method: 'post',

// Optional : storage file path
params: {"path": "somePath"}
});
return data;
}

// Insert record with attachment
// Assumes a table with two columns :
// 'Title' of type SingleLineText and
// 'Attachment' of type Attachment
//
async function uploadByUrlExample() {
let response = await insertImageByURL(URLs);

// Update two columns : Title and Attachment
let row = {
"Title": "3",
"Attachment": response.data
};

await axios({
method: 'POST',
url: `http://localhost:8080/api/v1/db/data/noco/${project_id}/${table_id}`,
data: row,
headers: {
'xc-auth': xc_auth
}
});
}

(async () => {
await uploadByUrlExample();
})();
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/developer-resources/webhooks/index.html b/packages/noco-docs/dist/0.109.7/developer-resources/webhooks/index.html new file mode 100644 index 0000000000..58f8148501 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/developer-resources/webhooks/index.html @@ -0,0 +1,19 @@ + + + + + +Webhooks | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Webhooks

Overview

Some types of notifications can be triggered by a webhook after a particular event.

Open View menu, click on Webhooks

image

Click Add New Webhook

image

Configure Webhook

  • General configurations
    • Webhook Name
    • Webhook Trigger
    • Webhook Type
  • Webhook Type specific configuration : additional configuration details depending on webhook type selected
  • Webhook Conditional Trigger
    • Only records meeting the criteria will trigger webhook

Screenshot 2023-04-06 at 11 39 49 AM

Call Log

Call Log allows user to check the call history of the hook. By default, it has been disabled. However, it can be configured by using environment variable NC_AUTOMATION_LOG_LEVEL.

  • NC_AUTOMATION_LOG_LEVEL=OFF: No logs will be displayed and no history will be inserted to meta database.
  • NC_AUTOMATION_LOG_LEVEL=ERROR: only error logs will be displayed and history of error logs will be inserted to meta database.
  • NC_AUTOMATION_LOG_LEVEL=ALL: Both error and success logs will be displayed and history of both types of logs will be inserted to meta database. This option is only available for Enterprise Edition.

image

Triggers

Webhooks allows user to trigger on certain operations on following database operations

  • AFTER INSERT
  • AFTER UPDATE
  • AFTER DELETE

The triggers will trigger asynchronously without blocking the actual operation.

Applications/services

TriggerDetails
EmailSend email to certain email addresses
SlackNotify via Slack channel
Microsoft TeamsNotify via Microsoft Teams channel
DiscordNotify via Discord channel
MattermostNotify via Mattermost channel
TwilioSend SMS to certain mobile numbers
Whatsapp TwilioSend Whatsapp messages to numbers using Twilio
URLInvoke an HTTP API

Accessing Data: Handlebars

caution

You can access data using handlebars for v1 webhooks only.

The current row data and other details will be available in the hooks payload so the user can use handlebar syntax to use data.

We are using Handlebars library to parse the payload internally.

Example

For a table with column names (id, title, created_at, updated_at).
+For INSERT/ UPDATE based triggers, use following handlebars to access corresponding data fields.

  • {{ data.id }}
  • {{ data.title }}
  • {{ data.created_at }}
  • {{ data.updated_at }}

Note that, for Update trigger - all the fields in the ROW will be accessible, not just the field updated. +For DELETE based triggers, only {{ data.id }} is accessible representing ID of the column deleted.

JSON format

Use {{ json data }} to dump complete data & user information available in JSON format

Additional references:

Handlebar Guide.

Application Guide

Discord

1. Create WebHook

  • On Discord, open your Server Settings and head into the Integrations tab:
  • Click the "Create Webhook" button to create a new webhook!

Screenshot 2022-02-22 at 1 21 59 PM

  • Choose channel to which this webhook will post to.
  • Copy webhook URL

Screenshot 2022-02-22 at 1 23 18 PM

(Sample webhook URL: https://discord.com/api/webhooks/945558283756908644/GNUtiGuzfOky6wZ4ce30XuXc1sbPK3Od7EC-4t6hihh5Fovv6oU9OsdT6mGuoL1QlTzj).
+Detailed procedure for discord webhook described here.

2. Install Plugin

  • Open 'App Store' (under Settings), hover over Discord tile. Click 'Install'.

Screenshot 2022-09-14 at 10 47 59 AM

  • Provide a name of your choice (not to be confused with Discord Channel name).
  • Paste Discord Webhook URL copied from Step (1.) above.

Screenshot 2022-09-14 at 10 52 14 AM

3. Configure

  • Open project and choose a table.
  • Click 'More' > 'Webhooks'.
  • Click 'Create webhook'
  • Configure webhook
    • Title: Name of your choice to identify this Webhook.
    • Event: Trigger event. Choose between.
      • After Insert: Trigger event for new ROW insertion.
      • After Update: Trigger event for existing ROW updation.
      • After Delete: Trigger event for ROW deletion
    • On Condition: [Optional] Enable if you wish to associate additional condition/constraint with the trigger configured above.
    • Notification: Select 'Discord'.
    • Select Discord Channels: Select from the drop down list, channel name configured in Step (2). Please click on 'Reload' if drop down list is empty.
    • Body: Message to be posted over Discord channel, via webhooks on trigger of configured event.
      • Body can contain plain text &
      • Handlebars {{ }}

Slack

1. Create WebHook

  • Details to create slack webhook are captured here

2. Install Plugin

  • Procedure remain same as listed for DISCORD channel configuration above

3. Configure Webhook

  • Procedure remain same as listed for DISCORD channel configuration above

Microsoft Teams

1. Create WebHook

  • On Teams, open your channel, click on three-dots menu (far right) and select 'Connectors'
154971352-6912d53b-cf71-4edd-a319-1c85be85f0c5
  • Select incoming webhook & click 'Configure'
154971434-0ced97f7-205a-4e2e-8f88-17092cb7771a- Create webhook, Copy webhook URL ![154971683-db16be7f-4f07-4447-8f2e-ac50e133bef8](https://user-images.githubusercontent.com/86527202/155095733-c339a914-5d78-408c-8f1e-9cd75a7783e8.png)

2. Install Plugin

  • Open 'App Store' (under Settings), hover over 'Microsoft Teams' tile. Click 'Install'.

Screenshot 2022-09-14 at 10 53 22 AM

  • Provide a name of your choice (not to be confused with Teams Channel name).
  • Paste MS Teams Webhook URL copied from Step (1.) above.

Screenshot 2022-09-14 at 10 53 31 AM

3. Configure

  • Open project and choose a table.
  • Click 'More' > 'Webhooks'.
  • Click 'Create webhook'
  • Configure webhook
    • Title: Name of your choice to identify this Webhook.
    • Event: Trigger event. Choose between.
      • After Insert: Trigger event for new ROW insertion.
      • After Update: Trigger event for existing ROW updation.
      • After Delete: Trigger event for ROW deletion
    • On Condition: [Optional] Enable if you wish to associate additional condition/constraint with the trigger configured above.
    • Notification: Select 'Microsoft Teams'.
    • Select Teams Channels: Select from the drop down list, channel name configured in Step (2). Please click on 'Reload' if drop down list is empty.
    • Body: Message to be posted over Teams channel, via webhooks on trigger of configured event.
      • Body can contain plain text &
      • Handlebars {{ }}

Webhook V2

Webhook v2 is available after v0.106.0. Here's the differences.

  • Response Payload has been predefined and cannot configure in Body using Handlebars. The payload can be referenced under Sample Payload in Hook detail page.
  • Support the following bulk operations:
    • AFTER BULK INSERT
    • AFTER BULK UPDATE
    • AFTER BULK DELETE
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/architecture/index.html b/packages/noco-docs/dist/0.109.7/engineering/architecture/index.html new file mode 100644 index 0000000000..1a32a5e264 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/architecture/index.html @@ -0,0 +1,16 @@ + + + + + +Architecture Overview | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Architecture Overview

By default, if NC_DB is not specified, then SQLite will be used to store your meta data. We suggest users to separate the meta data and user data in different databases.

image

Project TypeMetadata stored inData stored in
Create new projectNC_DBNC_DB
Create new project with External DatabaseNC_DBExternal Database
Create new project from ExcelNC_DBNC_DB
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/builds-and-releases/index.html b/packages/noco-docs/dist/0.109.7/engineering/builds-and-releases/index.html new file mode 100644 index 0000000000..c5b5f13418 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/builds-and-releases/index.html @@ -0,0 +1,16 @@ + + + + + +Releases & Builds | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Releases & Builds

Builds of NocoDB

There are 3 kinds of docker builds in NocoDB

Below is an overview of how to make these builds and what happens behind the scenes.

Release builds

How to make a release build ?

  • Click NocoDB release action

  • You should see the below screen

    image

  • Change Use workflow from to Branch: master. If you choose the wrong branch, the workflow will be ended.

    image

  • Then there would be two cases - you can either leave target tag and pervious tag blank or manually input some values

  • Target Tag means the target deployment version, while Previous Tag means the latest version as of now. Previous Tag is used for Release Note only - showing the file / commit differences between two tags.

Tagging

The naming convention would be following given the actual release tag is 0.100.0

  • 0.100.0-beta.0 (first version of pre-release)
  • 0.100.0-beta.1 (include bug fix changes on top of the previous version)
  • 0.100.0-beta.2(include bug fix changes on top of the previous version)
  • and so on ...
  • 0.100.0 (actual release)
  • 0.100.1 (minor bug fix release)
  • 0.100.2 (minor bug fix release)

Case 1: Leaving inputs blank

  • If Previous Tag is blank, then the value will be fetched from latest
  • If Target Tag is blank, then the value will be Previous Tag plus one. Example: 0.90.11 (Previous Tag) + 0.0.1 = 0.90.12 (Target Tag)

Case 2: Manually Input

Why? Sometimes we may mess up in NPM deployment. As NPM doesn't allow us to redeploy to the same tag again, in this case we cannot just use the previous tag + 1. Therefore, we need to use previous tag + 2 instead and we manually configure it.

  • After that, click Run workflow to start
  • You can see Summary for the overall job status.
  • Once release-draft-note and release-executables is finished, then go to releases, edit the draft note and save as draft for time being.
    • Example: Adding header, update content if necessary, and click Auto-generate release notes to include more info.
  • Once release-docker is finished, then test it locally first. You'll be expected to see Upgrade Available notification in UI as we haven't published the release note. (the version is retrieved from there)
  • Once everything is finished, then publish the release note and the deployment is considered as DONE.

How does release action work ?

validate-branch

To check if github.ref is master. Otherwise, other branches will be not accepted.

process-input

To enrich target tag or previous tag if necessary.

pr-to-master

Automate a PR from develop to master branch so that we know the actual differences between the previous tag and the current tag. We choose master branch for a deployment base.

release-npm

Build frontend and backend and release them to NPM. The changes during built such as version bumping will be committed and pushed to a temporary branch and an automated PR will be created and merged to master branch.

Note that once you publish with a certain tag, you cannot publish with the same tag again.

release-draft-note

Generate a draft release note. Some actions need to be done after this step.

release-docker

Build docker image and publish it to Docker Hub. It may take around 15 - 30 mins.

close-issues

Open issues marked with label Status: Fixed and Status: Resolved will be closed by bot automatically with comment mentioning the fix is included in which version.

Example:

image

publish-docs

Publish Documentations

update-sdk-path

nocodb-sdk is used in frontend and backend. However, in develop branch, the value would be file:../nocodb-sdk for development purpose (so that the changes done in nocodb-sdk in develop will be included in frontend and backend). During the deployment, the value will be changed to the target tag. This job is to update them back.

sync-to-develop

Once the deployment is finished, there would be some new changes being pushed to master branch. This job is to sync the changes back to develop so that both branch won't have any difference.

Daily builds

What are daily builds ?

  • NocoDB creates every 6 hours from develop branches and publishes as nocodb/nocodb-daily
  • This is so that we can easily try what is in the develop branch easily.

Docker images

  • The docker images will be built and pushed to Docker Hub (See nocodb/nocodb-daily for the full list).

Timely builds

What are timely builds ?

NocoDB has github actions which creates docker and binaries for each PR! And these can be found as a comment on the last commit of the PR.

Example shown below

  • Go to a PR and click on the comment.

    Screenshot 2023-01-23 at 15 46 36
  • Click on the link to copy the docker image and run it locally.

    Screenshot 2023-01-23 at 15 46 55

This is to

  • reduce pull request cycle time
  • allow issue reporters / reviewers to verify the fix without setting up their local machines

Docker images

When a non-draft Pull Request is created, reopened or synchronized, a timely build for Docker would be triggered for the changes only included in the following paths.

  • packages/nocodb-sdk/**
  • packages/nc-gui/**
  • packages/nc-plugin/**
  • packages/nocodb/**

The docker images will be built and pushed to Docker Hub (See nocodb/nocodb-timely for the full list). Once the image is ready, Github bot will add a comment with the command in the pull request. The tag would be <NOCODB_CURRENT_VERSION>-pr-<PR_NUMBER>-<YYYYMMDD>-<HHMM>.

image

Executables or Binaries

Similarly, we provide a timely build for executables for non-docker users. The source code will be built, packaged as binary files, and pushed to Github (See nocodb/nocodb-timely for the full list).

Currently, we only support the following targets:

  • node16-linux-arm64
  • node16-macos-arm64
  • node16-win-arm64
  • node16-linux-x64
  • node16-macos-x64
  • node16-win-x64

Once the executables are ready, Github bot will add a comment with the commands in the pull request.

image

NocoDB creates Docker and Binaries for each PR.

This is to

  • reduce pull request cycle time
  • allow issue reporters / reviewers to verify the fix without setting up their local machines
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/development-setup/index.html b/packages/noco-docs/dist/0.109.7/engineering/development-setup/index.html new file mode 100644 index 0000000000..74916dc7f8 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/development-setup/index.html @@ -0,0 +1,16 @@ + + + + + +Development Setup | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Development Setup

Clone the repo

git clone https://github.com/nocodb/nocodb
cd nocodb/packages

Build SDK

# build nocodb-sdk
cd nocodb-sdk
npm install
npm run build

Build Backend

# build backend - runs on port 8080
cd ../nocodb
npm install
npm run watch:run

Build Frontend

# build frontend - runs on port 3000
cd ../nc-gui
npm install
npm run dev

Any changes made to frontend and backend will be automatically reflected in the browser.

Enabling CI-CD for Draft PR

CI-CD will be triggered on moving a PR from draft state to Ready for review state & on pushing changes to Develop. To verify CI-CD before requesting for review, add label trigger-CI on Draft PR.

Accessing CI-CD Failure Screenshots

For Playwright tests, screenshots are captured on the tests. These will provide vital clues for debugging possible issues observed in CI-CD. To access screenshots, Open link associated with CI-CD run & click on Artifacts

Screenshot 2022-09-29 at 12 43 37 PM

Accessing 'Easter egg' menu

Double click twice on empty space between View list & Share button to the left top of Grid view; following options become accessible

  1. Export Cache
  2. Delete Cache
  3. Debug Meta
  4. Toggle Beta Features

Screenshot 2023-05-23 at 8 35 14 PM

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/playwright/index.html b/packages/noco-docs/dist/0.109.7/engineering/playwright/index.html new file mode 100644 index 0000000000..a2581a6ab5 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/playwright/index.html @@ -0,0 +1,16 @@ + + + + + +Playwright E2E Testing | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Playwright E2E Testing

How to run tests

All the tests reside in tests/playwright folder.

Make sure to install the dependencies(in the playwright folder):

npm install
npx playwright install chromium --with-deps

Run Test Server

Start the backend test server (in packages/nocodb folder):

npm run watch:run:playwright

Start the frontend test server (in packages/nc-gui folder):

NUXT_PAGE_TRANSITION_DISABLE=true npm run dev

Running all tests

For selecting db type, rename .env.example to .env and set E2E_DEV_DB_TYPE to sqlite(default), mysql or pg.

headless mode(without opening browser):

npm run test

with browser:

npm run test:debug

For setting up mysql(sakila):

docker-compose -f ./tests/playwright/scripts/docker-compose-mysql-playwright.yml  up -d

For setting up postgres(sakila):

docker-compose -f ./tests/playwright/scripts/docker-compose-playwright-pg.yml 

Running individual tests

Add .only to the test you want to run:

test.only('should login', async ({ page }) => {
// ...
})
npm run test

Concepts

Independent tests

  • All tests are independent of each other.
  • Each test starts with a fresh project with a fresh sakila database(option to not use sakila db is also there).
  • Each test creates a new user(email as user@nocodb.com) and logs in with that user to the dashboard.

Caveats:

  • Some stuffs are shared i.e, users, plugins etc. So be catious while writing tests touching that. A fix for this is in the works.
  • In test, we prefix email and project with the test id, which will be deleted after the test is done.

What to test

  • UI verification. This includes verifying the state of the UI element, i.e if the element is visible, if the element has a particular text etc.
  • Test should verify all user flow. A test has a default timeout of 60 seconds. If a test is taking more than 60 seconds, it is a sign that the test should be broken down into smaller tests.
  • Test should also verify all the side effects the feature(i.e. On adding a new column type, should verify column deletion as well) will have, and also error cases.
  • Test name should be descriptive. It should be easy to understand what the test is doing by just reading the test name.

Playwright

  • Playwright is a nodejs library for automating chromium, firefox and webkit.
  • For each test, a new browser context is created. This means that each test runs in a new incognito window.
  • For assertion always use expect from @playwright/test library. This library provides a lot of useful assertions, which also has retry logic built in.

Page Objects

  • Page objects are used to abstract over the components/page. This makes the tests more readable and maintainable.
  • All page objects are in tests/playwright/pages folder.
  • All the test related code should be in page objects.
  • Methods should be as thin as possible and its better to have multiple methods than one big method, which improves reusability.

The methods of a page object can be classified into 2 categories:

  • Actions: Performs an UI actions like click, type, select etc. Is also responsible for waiting for the element to be ready and the action to be performed. This included waiting for API calls to complete.
  • Assertions: Asserts the state of the UI element, i.e if the element is visible, if the element has a particular text etc. Use expect from @playwright/test and if not use expect.poll to wait for the assertion to pass.

Writing a test

Let's write a test for testing filter functionality.

For simplicity, we will have DashboardPage implemented, which will have all the methods related to dashboard page and also its child components like Grid, etc.

Create a test suite

Create a new file filter.spec.ts in tests/playwright/tests folder and use setup method to create a new project and user.

import { test, expect } from '@playwright/test';
import setup, { NcContext } from '../setup';

test.describe('Filter', () => {
let context: NcContext;

test.beforeEach(async ({ page }) => {
context = await setup({ page });
})

test('should filter', async ({ page }) => {
// ...
});
});

Create a page object

Since filter is UI wise scoped to a Toolbar , we will add filter page object to ToolbarPage page object.

export class ToolbarPage extends BasePage {
readonly parent: GridPage | GalleryPage | FormPage | KanbanPage;
readonly filter: ToolbarFilterPage;

constructor(parent: GridPage | GalleryPage | FormPage | KanbanPage) {
super(parent.rootPage);
this.parent = parent;
this.filter = new ToolbarFilterPage(this);
}
}

We will create ToolbarFilterPage page object, which will have all the methods related to filter.

export class ToolbarFilterPage extends BasePage {
readonly toolbar: ToolbarPage;

constructor(toolbar: ToolbarPage) {
super(toolbar.rootPage);
this.toolbar = toolbar;
}
}

Here BasePage is an abstract class, which used to enforce structure for all page objects. Thus all page object should inherit BasePage.

  • Helper methods like waitForResponse and getClipboardText (this can be access on any page object, with this.waitForResponse)
  • Provides structure for page objects, enforces all Page objects to have rootPage property, which is the page object created in the test setup.
  • Enforces all pages to have a get method which will return the locator of the main container of that page, hence we can have focused dom selection, i.e.
// This will only select the button inside the container of the concerned page
await this.get().querySelector('button').count();

Writing an action method

This a method which will reset/clear all the filters. Since this is an action method, it will also wait for the delete filter API to return. Ignoring this API call will cause flakiness in the test, down the line.

async resetFilter() {
await this.waitForResponse({
uiAction: () => this.get().locator('.nc-filter-item-remove-btn').click(),
httpMethodsToMatch: ['DELETE'],
requestUrlPathToMatch: '/api/v1/db/meta/filters/',
});
}

Writing an assertion/verification method

Here we use expect from @playwright/test library, which has retry logic built in.

import { expect } from '@playwright/test';

async verifyFilter({ title }: { title: string }) {
await expect(
this.get().locator(`[data-testid="nc-fields-menu-${title}"]`).locator('input[type="checkbox"]')
).toBeChecked();
}

Tips to avoid flakiness

  • If an UI action, causes an API call or the UI state change, then wait for that API call to complete or the UI state to change.
  • What to wait out can be situation specific, but in general, is best to wait for the final state to be reached, i.e. in the case of creating filter, while it seems like waiting for the filter API to complete is enough, but after its return the table rows are reloaded and the UI state changes, so its better to wait for the table rows to be reloaded.

Accessing playwright report in the CI

  • Open Summary tab in the CI workflow in github actions.
  • Scroll down to Artifacts section.
  • Access reports which suffixed with the db type and shard number(corresponding to the CI workerflow name). i.e playwright-report-mysql-2 is for playwright-mysql-2 workflow.
  • Download it and run npm install -D @playwright/test && npx playwright show-report ./ inside the downloaded folder.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/repository-structure/index.html b/packages/noco-docs/dist/0.109.7/engineering/repository-structure/index.html new file mode 100644 index 0000000000..e202210c4d --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/repository-structure/index.html @@ -0,0 +1,16 @@ + + + + + +Repository structure | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Repository structure

We use Lerna to manage multi-packages. We have the following packages.

  • packages/nc-cli : A CLI to create NocoDB app.

  • packages/nocodb-sdk: API client sdk of nocodb.

  • packages/nc-gui: NocoDB Frontend.

  • packages/nc-lib-gui: The build version of nc-gui which will be used in packages/nocodb.

  • packages/nc-plugin: Plugin template.

  • packages/noco-blog: NocoDB Blog which will be auto-released to nocodb/noco-blog.

  • packages/noco-docs: NocoDB Documentation which will be auto-released to nocodb/noco-docs.

  • packages/nocodb: NocoDB Backend, hosted in NPM.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/translation/index.html b/packages/noco-docs/dist/0.109.7/engineering/translation/index.html new file mode 100644 index 0000000000..9f4fc7a3a0 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/translation/index.html @@ -0,0 +1,18 @@ + + + + + +i18n translation | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

i18n translation

  • NocoDB supports 30+ foreign languages & community contributions are now simplified via Crowdin.

How to add / edit translations ?

Using Github

  • For English, make changes directly to en.json & commit to develop
  • For any other language, use crowdin option.

Using Crowdin

Screenshot 2022-09-08 at 10 26 23 PM

  • Click the language that you wish to contribute

Screenshot 2022-09-08 at 10 29 56 PM

  • Click the Translate button; this opens up Crowdin Online Editor

Screenshot 2022-09-08 at 10 32 17 PM

  • Select string in English on the left-hand menu bar [1]
  • Propose changes [2]
  • Save [3] +Note: Crowdin provides translation recommendation's as in [4]. Click directly if it's apt +

Screenshot 2022-09-08 at 10 37 38 PM

A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follow up on remaining integration work items.

Reference

Refer following articles to get additional details about Crowdin Portal usage

How to add a new language ?

GitHub changes

  • Update enumeration in enums.ts [packages/nc-gui/lib/enums.ts]
  • Map JSON path in a.i18n.ts [packages/nc-gui/plugins/a.i18n.ts]

Crowdin changes [admin only]

  • Open NocoDB project
  • Click on Language on the home tab
  • Select target language, Update
  • Update array in tests/playwright/tests/language.spec.ts

Screenshot 2022-09-08 at 10 52 59 PM

Screenshot 2022-09-08 at 10 54 04 PM

String Categories

  • General: simple & common tokens (save, cancel, submit, open, close, home, and such)
  • Objects: objects from NocoDB POV (project, table, field, column, view, page, and such)
  • Title: screen headers (compact) (menu headers, modal headers)
  • Lables: text box/ radio/ field headers (few words) (Labels over textbox, radio buttons, and such)
  • Activity/ actions: work items (few words) (Create Project, Delete Table, Add Row, and such)
  • Tooltip: additional information associated with work items (usually lengthy) (Additional information provided for activity)
  • Placeholder: placeholders associated with various textboxes (Text placeholders)
  • Msg
    • Info: general/success category for everything
    • Error: warnings & errors
    • Toast: pop-up toast messages

Note: string name should be in camelCase. Use above list as priority order in case of ambiguity.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/engineering/unit-testing/index.html b/packages/noco-docs/dist/0.109.7/engineering/unit-testing/index.html new file mode 100644 index 0000000000..ef728e4f07 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/engineering/unit-testing/index.html @@ -0,0 +1,19 @@ + + + + + +Writing Unit Tests | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Writing Unit Tests

Unit Tests

  • All individual unit tests are independent of each other. We don't use any shared state between tests.
  • Test environment includes sakila sample database and any change to it by a test is reverted before running other tests.
  • While running unit tests, it tries to connect to mysql server running on localhost:3306 with username root and password password (which can be configured) and if not found, it will use sqlite as a fallback, hence no requirement of any sql server to run tests.

Pre-requisites

  • MySQL is preferred - however tests can fallback on SQLite too

Setup

cd packages/nocodb

npm install

# add a .env file
cp tests/unit/.env.sample tests/unit/.env

# open .env file
open tests/unit/.env

Configure the following variables

DB_HOST : host +DB_PORT : port +DB_USER : username +DB_PASSWORD : password

Run Tests

npm run test:unit

Folder Structure

The root folder for unit tests is packages/nocodb/tests/unit

  • rest folder contains all the test suites for rest apis.
  • model folder contains all the test suites for models.
  • factory folder contains all the helper functions to create test data.
  • init folder contains helper functions to configure test environment.
  • index.test.ts is the root test suite file which imports all the test suites.
  • TestDbMngr.ts is a helper class to manage test databases (i.e. creating, dropping, etc.).

Factory Pattern

  • Use factories for create/update/delete data. No data should be directly create/updated/deleted in the test.
  • While writing a factory make sure that it can be used with as less parameters as possible and use default values for other parameters.
  • Use named parameters for factories.
    createUser({ email, password})
  • Use one file per factory.

Walk through of writing a Unit Test

We will create an Table test suite as an example.

Configure test

We will configure beforeEach which is called before each test is executed. We will use init function from nocodb/packages/nocodb/tests/unit/init/index.ts, which is a helper function which configures the test environment(i.e resetting state, etc.).

init does the following things -

  • It initializes a Noco instance(reused in all tests).
  • Restores meta and sakila database to its initial state.
  • Creates the root user.
  • Returns context which has auth token for the created user, node server instance(app), and dbConfig.

We will use createProject and createProject factories to create a project and a table.

let context;

beforeEach(async function () {
context = await init();

project = await createProject(context);
table = await createTable(context, project);
});

Test case

We will use it function to create a test case. We will use supertest to make a request to the server. We use expect(chai) to assert the response.

it('Get table list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/meta/projects/${project.id}/tables`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list).to.be.an('array').not.empty;
});
note

We can also run individual test by using .only in describe or it function and the running the test command.

it.only('Get table list', async () => {

Integrating the New Test Suite

We create a new file table.test.ts in packages/nocodb/tests/unit/rest/tests directory.

import 'mocha';
import request from 'supertest';
import init from '../../init';
import { createTable, getAllTables } from '../../factory/table';
import { createProject } from '../../factory/project';
import { defaultColumns } from '../../factory/column';
import Model from '../../../../src/lib/models/Model';
import { expect } from 'chai';

function tableTest() {
let context;
let project;
let table;

beforeEach(async function () {
context = await init();

project = await createProject(context);
table = await createTable(context, project);
});

it('Get table list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/meta/projects/${project.id}/tables`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list).to.be.an('array').not.empty;
});
}

export default function () {
describe('Table', tableTests);
}

We can then import the Table test suite to Rest test suite in packages/nocodb/tests/unit/rest/index.test.ts file(Rest test suite is imported in the root test suite file which is packages/nocodb/tests/unit/index.test.ts).

Seeding Sample DB (Sakila)


function tableTest() {
let context;
let sakilaProject: Project;
let customerTable: Model;

beforeEach(async function () {
context = await init();

/******* Start : Seeding sample database **********/
sakilaProject = await createSakilaProject(context);
/******* End : Seeding sample database **********/

customerTable = await getTable({project: sakilaProject, name: 'customer'})
});

it('Get table data list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/data/noco/${sakilaProject.id}/${customerTable.id}`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list[0]['FirstName']).to.equal('MARY');
});
}
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/getting-started/demos/index.html b/packages/noco-docs/dist/0.109.7/getting-started/demos/index.html new file mode 100644 index 0000000000..8447d335bf --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/getting-started/demos/index.html @@ -0,0 +1,16 @@ + + + + + +Demos | NocoDB + + + + +
+
Skip to main content
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/getting-started/environment-variables/index.html b/packages/noco-docs/dist/0.109.7/getting-started/environment-variables/index.html new file mode 100644 index 0000000000..787e0da054 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/getting-started/environment-variables/index.html @@ -0,0 +1,16 @@ + + + + + +Environment Variables | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Environment Variables

For production usecases, it is recommended to configure

  • NC_DB,
  • NC_AUTH_JWT_SECRET,
  • NC_PUBLIC_URL,
  • NC_REDIS_URL
VariableCommentsIf absent
NC_DBSee our database URLsA local SQLite will be created in root folder if NC_DB is not provided
NC_DB_JSONCan be used instead of NC_DB and value should be valid knex connection JSON
NC_DB_JSON_FILECan be used instead of NC_DB and value should be a valid path to knex connection JSON
DATABASE_URLJDBC URL Format. Can be used instead of NC_DB.
DATABASE_URL_FILECan be used instead of DATABASE_URL: path to file containing JDBC URL Format.
NC_AUTH_JWT_SECRETJWT secret used for auth and storing other secretsA random secret will be generated
PORTFor setting app running port8080
DB_QUERY_LIMIT_DEFAULTDefault pagination limit25
DB_QUERY_LIMIT_MAXMaximum allowed pagination limit1000
DB_QUERY_LIMIT_MINMinimum allowed pagination limit1
NC_TOOL_DIRApp directory to keep metadata and app related filesDefaults to current working directory. In docker maps to /usr/app/data/ for mounting volume.
NC_PUBLIC_URLUsed for sending Email invitationsBest guess from http request params
NC_JWT_EXPIRES_INJWT token expiry time10h
NC_CONNECT_TO_EXTERNAL_DB_DISABLEDDisable Project creation with external database
NC_INVITE_ONLY_SIGNUPRemoved since version 0.99.0 and now it's recommended to use super admin settings menu. Allow users to signup only via invite url, value should be any non-empty string.
NUXT_PUBLIC_NC_BACKEND_URLCustom Backend URLhttp://localhost:8080 will be used
NC_REQUEST_BODY_SIZERequest body size limit1048576
NC_EXPORT_MAX_TIMEOUTAfter NC_EXPORT_MAX_TIMEOUT csv gets downloaded in batchesDefault value 5000(in millisecond) will be used
NC_DISABLE_TELEDisable telemetry
NC_DASHBOARD_URLCustom dashboard url path/dashboard
NC_GOOGLE_CLIENT_IDGoogle client id to enable google authentication
NC_GOOGLE_CLIENT_SECRETGoogle client secret to enable google authentication
NC_MIGRATIONS_DISABLEDDisable NocoDB migration
NC_MINIf set to any non-empty string the default splash screen(initial welcome animation) and matrix screensaver will disable
NC_SENTRY_DSNFor Sentry monitoring
NC_REDIS_URLCustom Redis URL. Example: redis://:authpassword@127.0.0.1:6380/4Meta data will be stored in memory
NC_DISABLE_ERR_REPORTDisable error reporting
NC_DISABLE_CACHETo be used only while debugging. On setting this to true - meta data be fetched from db instead of redis/cache.false
AWS_ACCESS_KEY_IDFor Litestream - S3 access key idIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_SECRET_ACCESS_KEYFor Litestream - S3 secret access keyIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_BUCKETFor Litestream - S3 bucketIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_BUCKET_PATHFor Litestream - S3 bucket path (like folder within S3 bucket)If Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
NC_SMTP_FROMFor SMTP plugin - Email sender address
NC_SMTP_HOSTFor SMTP plugin - SMTP host value
NC_SMTP_PORTFor SMTP plugin - SMTP port value
NC_SMTP_USERNAMEFor SMTP plugin (Optional) - SMTP username value for authentication
NC_SMTP_PASSWORDFor SMTP plugin (Optional) - SMTP password value for authentication
NC_SMTP_SECUREFor SMTP plugin (Optional) - To enable secure set value as true any other value treated as false
NC_SMTP_IGNORE_TLSFor SMTP plugin (Optional) - To ignore tls set value as true any other value treated as false. For more info visit https://nodemailer.com/smtp/
NC_S3_BUCKET_NAMEFor S3 storage plugin - AWS S3 bucket name
NC_S3_REGIONFor S3 storage plugin - AWS S3 region
NC_S3_ACCESS_KEYFor S3 storage plugin - AWS access key credential for accessing resource
NC_S3_ACCESS_SECRETFor S3 storage plugin - AWS access secret credential for accessing resource
NC_ADMIN_EMAILFor updating/creating super admin with provided email and password
NC_ATTACHMENT_FIELD_SIZEFor setting the attachment field size(in Bytes)Defaults to 20MB
NC_ADMIN_PASSWORDFor updating/creating super admin with provided email and password. Your password should have at least 8 letters with one uppercase, one number and one special letter(Allowed special chars $&+,:;=?@#|'.^*()%!_-" )
NODE_OPTIONSFor passing Node.js options to instance
NC_MINIMAL_DBSCreate a new SQLite file for each project. All the db files are stored in nc_minimal_dbs folder in current working directory. (This option restricts project creation on external sources)
NC_DISABLE_AUDITDisable Audit Logfalse
NC_AUTOMATION_LOG_LEVELPossible Values: OFF, ERROR, ALL. See Webhooks for details.OFF
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/getting-started/installation/index.html b/packages/noco-docs/dist/0.109.7/getting-started/installation/index.html new file mode 100644 index 0000000000..49064c7326 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/getting-started/installation/index.html @@ -0,0 +1,20 @@ + + + + + +Installation | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Installation

Simple installation - takes about three minutes!

Prerequisites

Quick try

Docker

If you are a Docker user, you may try this way!

docker run -d --name nocodb \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
nocodb/nocodb:latest
tip

To persist data in docker you can mount volume at /usr/app/data/ since 0.10.6. In older version mount at /usr/src/app. Otherwise your data will be lost after recreating the container.

tip

If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for MySQL Docker.

Docker Compose

We provide different docker-compose.yml files under this directory. Here are some examples.

git clone https://github.com/nocodb/nocodb
cd nocodb/docker-compose/mysql
docker-compose up -d
tip

To persist data in docker you can mount volume at /usr/app/data/ since 0.10.6. In older version mount at /usr/src/app.

tip

If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for MySQL Docker Compose.

NPX

You can run below command if you need an interactive configuration.

npx create-nocodb-app

Preview:

image

Homebrew

brew tap nocodb/nocodb
brew install nocodb
nocodb

Executables

You can download executables directly and run without any extra dependancy. Use the right command based on your platform.

MacOS (x64)
curl http://get.nocodb.com/macos-x64 -o nocodb -L \
&& chmod +x nocodb \
&& ./nocodb
MacOS (arm64)
curl http://get.nocodb.com/macos-arm64 -o nocodb -L \
&& chmod +x nocodb \
&& ./nocodb
Linux (x64)
curl http://get.nocodb.com/linux-x64 -o nocodb -L \
&& chmod +x nocodb \
&& ./nocodb
Linux (arm64)
curl http://get.nocodb.com/linux-arm64 -o nocodb -L \
&& chmod +x nocodb \
&& ./nocodb
Windows (x64)
iwr http://get.nocodb.com/win-x64.exe
.\Noco-win-x64.exe
Windows (arm64)
iwr http://get.nocodb.com/win-arm64.exe
.\Noco-win-arm64.exe

Node Application

We provide a simple NodeJS Application for getting started.

git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start

AWS ECS (Fargate)

Click to Expand

Create ECS Cluster

aws ecs create-cluster \
--cluster-name <YOUR_ECS_CLUSTER>

Create Log group

aws logs create-log-group \
--log-group-name /ecs/<YOUR_APP_NAME>/<YOUR_CONTAINER_NAME>

Create ECS Task Definiton

Every time you create it, it will add a new version. If it is not existing, the version will be 1.

aws ecs register-task-definition \
--cli-input-json "file://./<YOUR_TASK_DEF_NAME>.json"
note

This json file defines the container specification. You can define secrets such as NC_DB and environment variables here.

Here's the sample Task Definition

{
"family": "nocodb-sample-task-def",
"networkMode": "awsvpc",
"containerDefinitions": [{
"name": "<YOUR_CONTAINER_NAME>",
"image": "nocodb/nocodb:latest",
"essential": true,
"logConfiguration": {
"logDriver": "awslogs",
"options": {
"awslogs-group": "/ecs/<YOUR_APP_NAME>/<YOUR_CONTAINER_NAME>",
"awslogs-region": "<YOUR_AWS_REGION>",
"awslogs-stream-prefix": "ecs"
}
},
"secrets": [{
"name": "<YOUR_SECRETS_NAME>",
"valueFrom": "<YOUR_SECRET_ARN>"
}],
"environment": [{
"name": "<YOUR_ENV_VARIABLE_NAME>",
"value": "<YOUR_ENV_VARIABLE_VALUE>"
}],
"portMappings": [{
"containerPort": 8080,
"hostPort": 8080,
"protocol": "tcp"
}]
}],
"requiresCompatibilities": [
"FARGATE"
],
"cpu": "256",
"memory": "512",
"executionRoleArn": "<YOUR_ECS_EXECUTION_ROLE_ARN>",
"taskRoleArn": "<YOUR_ECS_TASK_ROLE_ARN>"
}

Create ECS Service

aws ecs create-service \
--cluster <YOUR_ECS_CLUSTER> \
--service-name <YOUR_SERVICE_NAME> \
--task-definition <YOUR_TASK_DEF>:<YOUR_TASK_DEF_VERSION> \
--desired-count <DESIRED_COUNT> \
--launch-type "FARGATE" \
--platform-version <VERSION> \
--health-check-grace-period-seconds <GRACE_PERIOD_IN_SECOND> \
--network-configuration "awsvpcConfiguration={subnets=["<YOUR_SUBSETS>"], securityGroups=["<YOUR_SECURITY_GROUPS>"], assignPublicIp=ENABLED}" \
--load-balancer targetGroupArn=<TARGET_GROUP_ARN>,containerName=<CONTAINER_NAME>,containerPort=<YOUR_CONTAINER_PORT>
note

If your service fails to start, you may check the logs in ECS console or in Cloudwatch. Generally it fails due to the connection between ECS container and NC_DB. Make sure the security groups have the correct inbound and outbound rules. +

GCP (Cloud Run)

Click to Expand

Pull NocoDB Image on Cloud Shell

Since Cloud Run only supports images from Google Container Registry (GCR) or Artifact Registry, we need to pull NocoDB image, tag it and push it in GCP using Cloud Shell. Here are some sample commands which you can execute in Cloud Shell.

# pull latest NocoDB image
docker pull nocodb/nocodb:latest

# tag the image
docker tag nocodb/nocodb:latest gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest

# push the image to GCR
docker push gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest

Deploy NocoDB on Cloud Run

gcloud run deploy --image=gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest \
--region=us-central1 \
--allow-unauthenticated \
--platform=managed

DigitalOcean (App)

Click to Expand

Create Apps

On Home page, Click on Create icon & Select Apps (Deploy your code).

Screenshot 2022-02-19 at 12 17 43 PM

Choose Source: Docker Hub

Screenshot 2022-02-19 at 12 22 01 PM

Choose Source: Repository

Configure Source Repository as nocodb/nocodb. Optionally you can pick release tag if you are interested in specific NocoDB version.

Screenshot 2022-02-19 at 12 23 11 PM

[Optional] Additional Configurations

Screenshot 2022-02-19 at 12 24 44 PM

Name your web service

Pick a name for your NocoDB application. This name will become part of URL subsequently +Pick nearest Region for cloud hosting +Screenshot 2022-02-19 at 12 28 11 PM

Finalize and Launch

Cloudron

Click to Expand

Log into Cloudron and select App Store

image

Search NocoDB

image

Click Install

image

Configure NocoDB

image

Go to My App and Launch NocoDB

image

CapRover

Click to Expand

Login and Click One-Click Apps / Databases

image

Search NocoDB

image

Configure NocoDB and Deploy

image

Railway

Click to Expand

Go to Templates, Search NocoDB and click Deploy

image

Configure NocoDB and Deploy

image

FreeBSD / FreeNAS / TrueNAS Jail

See here provided by C. R. Zamana.

Sample Demos

Code Sandbox

Docker deploying with one command

Using NPX

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/getting-started/upgrading/index.html b/packages/noco-docs/dist/0.109.7/getting-started/upgrading/index.html new file mode 100644 index 0000000000..7aefff7908 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/getting-started/upgrading/index.html @@ -0,0 +1,16 @@ + + + + + +Upgrading | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Upgrading

By default, if NC_DB is not specified upon installation, then SQLite will be used to store metadata. We suggest users to separate the metadata and user data in different databases as pictured in our architecture.

Docker

Find, Stop & Delete NocoDB Docker Container

# find NocoDB container ID
docker ps
# stop NocoDB container
docker stop <YOUR_CONTAINER_ID>
# delete NocoDB container
docker rm <YOUR_CONTAINER_ID>

Note: Deleting your docker container without setting NC_DB or mounting to a persistent volume for a default SQLite database will result in losing your data. See examples below.

Find & Remove NocoDB Docker Image

# find NocoDB image
docker images
# delete NocoDB image
docker rmi <YOUR_IMAGE_ID>

Pull the latest NocoDB image with same environment variables

docker run -d -p 8080:8080 \
-e NC_DB="<YOUR_NC_DB_URL>" \
-e NC_AUTH_JWT_SECRET="<YOUR_NC_AUTH_JWT_SECRET_IF_GIVEN>" \
nocodb/nocodb:latest

Updating nocodb docker container is similar to updating any other docker containers.

Example: Docker Upgrade

Screen Shot 2021-09-16 at 09 23 07

Node

Updating docker container is similar to updating a npm package.

From your root folder

Uninstall NocoDB package

npm uninstall nocodb

Install NocoDB package

npm install --save nocodb

Homebrew

Run following commands to upgrade Homebrew Nocodb version.

# Update the local homebrew formulas
brew update
# Upgrade nocodb package
brew upgrade nocodb
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/index.html b/packages/noco-docs/dist/0.109.7/index.html new file mode 100644 index 0000000000..acc04a1add --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/index.html @@ -0,0 +1,16 @@ + + + + + +Welcome | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Welcome

Welcome!

image

NocoDB is a no-code database platform that allows teams to collaborate and build applications with ease of a familiar and intuitive spreadsheet interface. This allows even non-developers or business users to become software creators.

NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface! This allows you to build no-code applications collaboratively with teams. NocoDB currently works with MySQL, PostgreSQL, Microsoft SQL Server, SQLite, Amazon Aurora & MariaDB databases.

Also NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too.

Features

Rich Spreadsheet Interface

  •  Basic Operations: Create, Read, Update and Delete on Tables, Columns, and Rows
  •  Fields Operations: Sort, Filter, Hide / Unhide Columns
  •  Multiple Views Types: Grid (By default), Gallery, Form View and Kanban View
  •  View Permissions Types: Collaborative Views, & Locked Views
  •  Share Bases / Views: either Public or Private (with Password Protected)
  •  Variant Cell Types: ID, LinkToAnotherRecord, Lookup, Rollup, SingleLineText, Attachement, Currency, Formula and etc
  •  Access Control with Roles : Fine-grained Access Control at different levels
  •  and more ...

App Store for Workflow Automations

We provide different integrations in three main categories. See App Store for details.

  •  Chat : Slack, Discord, Mattermost, and etc
  •  Email : AWS SES, SMTP, MailerSend, and etc
  •  Storage : AWS S3, Google Cloud Storage, Minio, and etc

Programmatic Access

We provide the following ways to let users to invoke actions in a programmatic way. You can use a token (either JWT or Social Auth) to sign your requests for authorization to NocoDB.

  •  REST APIs
  •  NocoDB SDK

Sync Schema

We allow you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from environment to others. See Sync Schema for details.

Audit

We are keeping all the user operation logs under one place. See Audit for details.

Why are we building this?

Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by a Billion+ humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings has meant horrible access controls, vendor lockin, data lockin, abrupt price changes & most importantly a glass ceiling on what's possible in future.

Our Mission

Our mission is to provide the most powerful no-code interface for databases which is open source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on internet.

How can I contribute to NocoDB's development ?

Please refer to here for the contribution guidelines.

Where can I join the NocoDB community?

Follow us for daily updates, content, and other activities with our community:

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/account-settings/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/account-settings/index.html new file mode 100644 index 0000000000..3c28134ec2 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/account-settings/index.html @@ -0,0 +1,18 @@ + + + + + +Account Settings | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Account Settings

Overview

Account Settings allow you to manage your account such as your password or tokens.

image

Reset Password

image

Token Management

  • Newly created tokens are associated with the created user and it will have all permissions that particular user has.
  • Existing token will work as it is and only be visible to the super admin.
image

If you are a super admin, you can also manage all user roles in organization level.

User Management

Permissions within NocoDB are divided into two levels: Organisation level and Project level.

Organisation Level Permissions:

  • Org Level Creator: Allows users to create new projects and access invited projects.
  • Org Level Viewer: Allows users to access invited projects but does not permit the creation of new projects.

image

Project Level Permissions:

  • Owner: The user who created the project. A project can have only one owner. The owner persists until the project exists and the role is non-transferable. The owner has access to carry out any operations within the project, including deleting it.
  • Creator: Has access to carry out any operations within the project except deleting the project and removing the "Owner."
  • Editor: Can modify data but cannot modify the schema (add/remove columns, tables, users, and such).
  • Commenter: Can neither modify data nor schema, can only see data and can mark row-level comments.
  • Viewer: Can only see data.

Additional access details for project level permissions can be found here. +Please note that the above-mentioned Project Level Permissions are additional to the already defined Organisation Level Permissions. +In addition to the previously defined permissions, NocoDB also includes the role of "Super Admin." The "Super Admin" is the first user to sign up on this NocoDB installation. An organisation can have only one "Super Admin" and this role is non-transferable. The "Super Admin" will have the equivalent permissions of an "Org Level Creator" and "Owner" for all projects within the organisation.

Enable / Disable Signup

Signup without an invitation is disabled by default and can be managed from UI by a super admin.

image

App Store

image

We provide different integrations in three main categories.

CategoryApp Name
ChatMicrosoft Teams
Discord
Twilio
Whatsapp Twilio
Mattermost
Slack
EmailSMTP
MailerSend
AWS SES
StorageAWS S3
Minio
Google Cloud Storage
Spaces
Backblaze B2
Vultr Object Storage
OvhCloud Object Storage
Linode Object Storage
UpCloud Object Storage
Scaleway Object Storage

License

You can configure NocoDB Enterprise License key here

Screenshot 2023-01-12 at 2 30 57 PM

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/audit/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/audit/index.html new file mode 100644 index 0000000000..c78f6f4f55 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/audit/index.html @@ -0,0 +1,16 @@ + + + + + +Audit | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Audit

Overview

We are keeping all the user operation logs under Audit. To access it, click the down arrow button next to Project Name on the top left side, then select Team & Settings.

info

We can disable audit logs by setting NC_DISABLE_AUDIT to true.

image

Then, under SETTINGS, click Audit.

image
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/code-snippets/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/code-snippets/index.html new file mode 100644 index 0000000000..e9b47b9280 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/code-snippets/index.html @@ -0,0 +1,16 @@ + + + + + +Code Snippets | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Code Snippets

Overview

In the table toolbar, click Table name button and click Get API Snippet.

image

A modal box will be shown with sample code snippet for List API.

image

Supported Snippet

Shell

  • cURL
  • wget

Javascript

  • Axios
  • Fetch
  • jQuery
  • XHR

Node

  • Axios
  • Fetch
  • Request
  • Native
  • Unirest

NocoDB SDK

  • Javascript
  • Node

PHP

Python

  • http.client
  • request

Ruby

Java

C

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/column-operations/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/column-operations/index.html new file mode 100644 index 0000000000..267727ce6b --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/column-operations/index.html @@ -0,0 +1,16 @@ + + + + + +Column Operations | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Column Operations

Fields

Click Fields to control the visibility of a field.

image

By default, all system fields will be hid. However, you can tick Show system fields to make them visible.

image

Re-order Columns

Column positions can be re-ordered. Open Fields menu, and re-order fields as needed by dragging and dropping the drag icon.

image

Hide / Unhide Columns

To hide / unhide columns, open Fields menu, tick checkbox to keep the column visible, untick checkbox to remove it from the view.

tip

You can create different grid views with different fields shown in each view.

image

Sort

Sorting allows you to order contents alphabetically (A → Z) / (Z → A) (OR) in ascending / descending order. NocoDB allows nested sorting. You can choose column fields & order in which to apply nested sorting. Lookup, Formula, Nested Data are also supported in Sorting.

imageimageimage

Filter

Filters allow you to restrict / organize your data on the view as per your needs. NocoDB allows nested filters. You can choose multiple columns and conditions to apply filter. Between filters, you can opt for either and or or mode operation. Lookup, Formula, Nested Data are also supported in Filtering.

imageimage

You can also group several filters together using Filter Group.

image

Enable NULL and EMPTY Filters

NULL filters (is null & is not null) and EMPTY filters (is empty & is not empty) are hidden by default. If you wish to filter out either one only, you may enable Show NULL and EMPTY Filter in Project Settings.

image

Otherwise, we can use Blank filters to filter out cells with NULL values and EMPTY values.

Supported Filters

Currently we support different types of filters for corresponding columns. Please refer the below matrix for details.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/column-types/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/column-types/index.html new file mode 100644 index 0000000000..e72185e519 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/column-types/index.html @@ -0,0 +1,18 @@ + + + + + +Column Types | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Column Types

Available Column Types

TypeDescription
LinkToAnotherRecordHas Many or Many To Many columns
SingleLineTextFor short text
LongTextFor lengthy string content
AttachmentFile attachment column
CheckboxBoolean value
MultiSelectMultiple options can be selected once
SingleSelectSingle option select
DateDate selector
YearYear selector
TimeTime selector
PhoneNumberPhone number field
EmailEmail field
URLValid URL field
NumberAny type of number
DecimalFractional number
CurrencyCurrency value
PercentPercentage
DurationDuration
RatingRating
FormulaFormula based generated column
RollupPerforms calculations and aggregations
DateTimeDate & Time selector
QR CodeQR Code visualization of another referenced column
BarcodeBarcode visualization of another referenced column
GeometryGeometry column
GeoDataGeoData column
JsonJson column
SpecificDBTypeCustom DB type option

Database Types

LinkToAnotherRecord

For more about Link To Another Record, please visit here.

SingleLineText

Available Database Types

DatabaseTypesDefault Type
MySQLchar, varchar, nchar, text, tinytext, mediumtext, longtextvarchar
PostgreSQLchar, character, character varying, textcharacter varying
SQL Serverchar, ntext, text, varchar, nvarcharvarchar
SQLitecharacter, text, varcharvarchar

LongText

Available Database Types

DatabaseTypesDefault Type
MySQLchar, varchar, nchar, text, tinytext, mediumtext, longtexttext
PostgreSQLchar, character, character varying, texttext
SQL Serverchar, ntext, text, varchar, nvarchartext
SQLitecharacter, text, varchartext

Attachment

Available Database Types

DatabaseTypesDefault Type
MySQLjson, char, varchar, nchar, text, tinytext, mediumtext, longtexttext
PostgreSQLjson, char, character, character varying, texttext
SQL Serverchar, ntext, text, varchar, nvarchartext
SQLitecharacter, text, varchartext

Checkbox

Available Database Types

DatabaseTypesDefault Type
MySQLint, smallint, mediumint, bigint, bit, boolean, serial, tinyinttinyint
PostgreSQLbit, bool, int2, int4, int8, boolean, smallint, int, integer, bigint, bigserial, char, int4range, int8range, serial, serial2, serial8bool
SQL Serverbigint, bit, int, tinyinttinyint
SQLiteint, integer, tinyint, smallint, mediumint, bigint, int2, int8, boolean

MultiSelect

Available Database Types

DatabaseTypesDefault Type
MySQLset, text, tinytext, mediumtext, longtextset
PostgreSQLtexttext
SQL Servertext, ntexttext
SQLitetext, varchartext

SingleSelect

Available Database Types

DatabaseTypesDefault Type
MySQLenum, text, tinytext, mediumtext, longtextenum
PostgreSQLtexttext
SQL Servertext, ntexttext
SQLitetext, varchartext

Date

Available Database Types

DatabaseTypesDefault Type
MySQLdate, datetime, timestamp, varcharvarchar
PostgreSQLdate, timestamp, timestamp without time zone, timestamptz, timestamp with time zone
SQL Serverdatedate
SQLitedate, varcharvarchar

Year

Available Database Types

DatabaseTypesDefault Type
MySQLyearyear
PostgreSQLintint
SQL Serverintint
SQLiteint, integer, tinyint, smallint, mediumint, bigint, int2, int8year

Time

Available Database Types

DatabaseTypesDefault Type
MySQLtimetime
PostgreSQLtime, time without time zone, timestamp, timestamp without time zone, timestamptz, timestamp with time zone, timetz, time with time zonetime
SQL Servertimetime
SQLiteint, integer, tinyint, smallint, mediumint, bigint, int2, int8time

PhoneNumber

Available Database Types

DatabaseTypesDefault Type
MySQLvarcharvarchar
PostgreSQLcharacter varyingcharacter varying
SQL Servervarcharvarchar
SQLitevarchar, textvarchar

Email

Available Database Types

DatabaseTypesDefault Type
MySQLvarcharvarchar
PostgreSQLcharacter varyingcharacter varying
SQL Servervarcharvarchar
SQLitevarchar, textvarchar

URL

Available Database Types

DatabaseTypesDefault Type
MySQLtext, tinytext, mediumtext, longtext, varcharvarchar
PostgreSQLcharacter varying, textcharacter varying
SQL Servervarchar, textvarchar
SQLitevarchar, textvarchar

Number

Available Database Types

DatabaseTypesDefault Type
MySQLint, smallint, mediumint, bigint, bit, float, decimal, double, serialint
PostgreSQLint, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserialint8
SQL Serverint, bigint, bit, decimal, float, numeric, real, smallint, tinyintint
SQLiteint, integer, tinyint, smallint, mediumint, bigint, int2, int8, numeric, real, double, double precision, floatinteger

Decimal

Available Database Types

DatabaseTypesDefault Type
MySQLfloat, decimal, double, serialdecimal
PostgreSQLdouble precision,float4,float8decimal
SQL Serverdecimal, floatdecimal
SQLitereal, double, double precision, float, numericdecimal

Currency

Available Database Types

DatabaseTypesDefault Type
MySQLdecimal, float, double, serial', 'int, smallint, mediumint, bigint, bitdecimal
PostgreSQLint, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, money', 'float4, float8decimal
SQL Serverint, bigint, bit, decimal, float, numeric, real, smallint, tinyintdecimal
SQLitereal, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numericdouble precision

Percent

Available Database Types

DatabaseTypesDefault Type
MySQLdecimal, float, double, serial', 'int, smallint, mediumint, bigint, bitdouble
PostgreSQLint, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserialdouble
SQL Serverint, bigint, bit, decimal, float, numeric, real, smallint, tinyintdouble
SQLitereal, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numericdouble

Duration

Available Database Types

DatabaseTypesDefault Type
MySQLdecimal, float, double, serial', 'int, smallint, mediumint, bigint, bitint
PostgreSQLint, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserialint8
SQL Serverint, bigint, bit, decimal, float, numeric, real, smallint, tinyintint
SQLiteint, integer, tinyint, smallint, mediumint, bigint, int2, int8integer

Rating

Available Database Types

DatabaseTypesDefault Type
MySQLdecimal, float, double, serial', 'int, smallint, mediumint, bigint, bitfloat
PostgreSQLint, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserialfloat8
SQL Serverint, bigint, bit, decimal, float, numeric, real, smallint, tinyintfloat
SQLitereal, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numericfloat

Formula

For more about Formulas, please visit here.

QR-Code

Encodes the value of a reference column as QR code. The following column types are supported for the for reference column:

  • Formula
  • Single Line Text
  • Long Text
  • Phone Number
  • URL
  • Email

Since it's a virtual column, the cell content (QR code) cannot be changed directly.

Barcode

Encodes the value of a reference column as Barcode. Supported barcode formats: CODE128, EAN, EAN-13, EAN-8, EAN-5, EAN-2, UPC (A), CODE39, ITF-14, MSI, Pharmacode, Codabar. The following column types are supported for the for reference column:

  • Formula
  • Single Line Text
  • Long Text
  • Phone Number
  • URL
  • Email

Since it's a virtual column, the cell content (Barcode) cannot be changed directly.

Rollup

For more about Rollup, please visit here.

DateTime

Available Database Types

DatabaseTypesDefault Type
MySQLdatetime, timestamp, varchardatetime
PostgreSQLtimestamp, timestamp without time zone, timestamptz, timestamp with time zonedatetime
SQL Serverdatetime, datetime2, datetimeoffsetdatetime
SQLitedatetime, timestampdatetime

Geometry

Available Database Types

DatabaseTypes
MySQLgeometry, point, linestring, polygon, multipoint, multilinestring, multipolygon
PostgreSQLpolygon, point, circle, box, line, lseg, path, circle
SQL Servergeometry
SQLitetext

GeoData

Encodes a geographic location which consists of a latitude and a longitude. +Both are internally stored as one string, where latitude and longitude are separated by ';' +Example: "52.2134;29.1442"

Available Database Types

DatabaseTypes
MySQLchar, varchar, nchar, text, tinytext, mediumtext, longtext
PostgreSQLchar, character, character varying, text
SQL Serverdecimal, float
SQLitecharacter, text, varchar

JSON

Available Database Types

DatabaseTypes
MySQLjson
PostgreSQLjson
SQL Servertext, ntext
SQLitetext

SpecificDBType

Available Database Types

DatabaseTypes
MySQLAll types are available
PostgreSQLAll types are available
SQL ServerAll types are available
SQLiteAll types are available
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/dashboard/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/dashboard/index.html new file mode 100644 index 0000000000..261fbca2f9 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/dashboard/index.html @@ -0,0 +1,16 @@ + + + + + +Dashboard | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Dashboard

Setup Your First Super Admin

Once you have started NocoDB, you can visit the dashboard via example.com. You will be redirected to example.com/#/signup.

Enter your work email and your password.

image
note

Your password has at least 8 letters. No other constraints on case, numbers or special characters.

Initialize Your First Project

Once you have logged into NocoDB, you should see My Projects.

Screenshot 2022-12-29 at 2 54 43 PM

To create a new project, you can click New Project.

You need to specify the project name. The data will be stored in NC_DB. If it is not specified, a local SQLite will be created and used.

note

NC_DB is an environment variable used to store the meta data in the given database.

Screenshot 2022-12-29 at 2 54 57 PM

Connecting to External Database

Click on three-dot menu adjacent to BASES. Pick required database option from the menu Connect to new datasource.

tip

If you are running NocoDB on Docker and your local DB is running on your host machine, your Host Address would be host.docker.internal instead of localhost.

Screenshot 2022-12-29 at 2 55 39 PM

Above menu is also accessible from Team & Settings > Data Sources. Click on New button to add existing database.

image

You need to specify the project name, API type, and other database parameters.

image

Currently it supports MySQL, Postgres, MSSQL and SQLite.

You can also configure associated SSL & advanced parameters.

image
tip

You can click Edit Connection JSON and modify SSL settings in "ssl".

{
"client": "pg",
"connection": {
"host": "<YOUR_HOST>",
"port": "5432",
"user": "<YOUR_DB_USER>",
"password": "<YOUR_DB_PASSWORD>",
"database": "<YOUR_DB_NAME>",
"ssl": {
"require": true,
"rejectUnauthorized": false,
"sslMode": "no-verify"
}
}
}
tip

You can click Edit Connection JSON and specify the schema you want to use in "searchPath".

{
"client": "pg",
"connection": {
...
},
"searchPath": [ "<YOUR_TARGET_SCHEMA>" ]
}

Click Test Database Connection to see if the connection can be established or not. NocoDB creates a new empty database with specified parameters if the database doesn't exist.

image
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/display-value/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/display-value/index.html new file mode 100644 index 0000000000..6f3d2ce7f2 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/display-value/index.html @@ -0,0 +1,16 @@ + + + + + +Display Value | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Display Value

What is a Display Value ?

  • Display Value as the name stands is the primary or main value within a row of a table that you generally associate that row with.
  • It should be usually associated with a column which is uniquely identifiable. However, this uniqueness is not enforced at the database level.
  • Before v0.105.0, Display Value was known as Primary Value.

What is the use of Display Value ?

  • Within a spreadsheet, Display Value are always highlighted so that it is easier to recognise what row we are in.
  • And when LinkToAnotherRecord is created between two tables - it is the Display Value that appears in LinkToAnotheRecord column.

Example : Display Value highlighted in Actor table

image

Example : Display Value highlighted in Film table

image

Example : Display Value associated when LinkToAnotherRecord is created

image

How to set Display Value ?

Click down arrow in the target column. Click Set as Display Value.

image

How is Display Value identfied for existing database tables ?

  • It is usually the first column after the primary key which is not a number.
  • If there is no column which is not a number then the column adjacent to primary key is chosen.

Can I change the Display Value to another column within tables ?

  • Yes, you can use the same way mentioned above to set Display Value.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/expanded-form/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/expanded-form/index.html new file mode 100644 index 0000000000..16732f5798 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/expanded-form/index.html @@ -0,0 +1,16 @@ + + + + + +Expanded Form | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Expanded Form

Overview

Expanded Form allows you to edit a row data in a form. It also shows the activity feed such as user comments or revision history. It can be also shared by others by copying the record URL.

image

Expanding a Record

In a grid view, we can hover a row record and a doulbe arrow will be shown. By clicking it, the expanded form will be opened.

image

Alternatively, we can highlight a cell and press the space bar. The expanded form for the correpsonding row will be opened.

Activity Feed

In an expanded form, we can click Toggle Comment View button to show the activity feed where we can optionally filter out comments only.

image

Copy Record URL

In an expanded form, we can click Copy Record URL to share the record form to other authorized users.

image

Save Button Option

By default, when we save the form, the expanded form will be closed, i.e. Save & Exit. However, if we prefer not to close the form even after saving, we can choose Save & Stay mode instead. This is useful when you are editing a long form and you want to save it from time to time.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/formulas/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/formulas/index.html new file mode 100644 index 0000000000..cbe389b053 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/formulas/index.html @@ -0,0 +1,17 @@ + + + + + +Formulas | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Formulas

Adding formula column

image

1. Click on '+' (Add column)

2. Populate column Name

3. Select column Type as 'Formula'

4. Insert required formula

  • You can use explicit numerical values/ strings as needed, e.g. 123 (numeric) or "123" (string).
  • You can reference column names in equation with {}, e.g. {column_name}, if the column name conflicts with literals
  • Table below lists supported formula & associated syntax
  • Nested formula (formula equation referring to another formula column) is supported

5. Click on 'Save'

Editing formula column

Unlike other column types, formula cells cannot be modified by double-clicking since the value is generated based on the formula. Instead, the vaule can be changed by updating the formula in the column setting.

image

Available Formula Features

Numeric Functions

NameSyntaxSampleOutput
ABSABS(value)ABS({Column})Absolute value of the input parameter
ADDADD(value1,[value2,...])ADD({Column1}, {Column2})Sum of input parameters
AVGAVG(value1,[value2,...])AVG({Column1}, {Column2})Average of input parameters
CEILINGCEILING(value)CEILING({Column})Rounded next largest integer value of input parameter
EXPEXP(value)EXP({Column})Exponential value of input parameter (e^x)
FLOORFLOOR(value)FLOOR({Column})Rounded largest integer less than or equal to input parameter
INTINT(value)INT({Column})Integer value of input parameter
LOGLOG([base], value)LOG(10, {Column})Logarithm of input parameter to the base (default = e) specified
MAXMAX(value1,[value2,...])MAX({Column1}, {Column2}, {Column3})Maximum value amongst input parameters
MINMIN(value1,[value2,...])MIN({Column1}, {Column2}, {Column3})Minimum value amongst input parameters
MODMOD(value1, value2)MOD({Column}, 2)Remainder after integer division of input parameters
POWERPOWER(base, exponent)POWER({Column}, 3)base to the exponent power, as in base ^ exponent
ROUNDROUND(value, precision)ROUND({Column}, 3)Round input value to decimal place specified by precision (Nearest integer if precision not provided)
SQRTSQRT(value)SQRT({Column})Square root of the input parameter

Numeric Operators

OperatorSampleDescription
+{Column1} + {Column2} + 2Addition of numeric values
-{Column1} - {Column2}Subtraction of numeric values
*{Column1} * {Column2}Multiplication of numeric values
/{Column1} / {Column2}Division of numeric values
tip

To change the order of arithmetic operation, you can use round bracket parantheses ().
+Example: ({Column1} + ({Column2} * {Column3}) / (3 - $Column4$ ))

String Functions

NameSyntaxSampleOutput
CONCATCONCAT(str1, [str2,...])CONCAT({Column1}, ' ', {Column2})Concatenated string of input parameters
LEFTLEFT(str1, n)LEFT({Column}, 3)n characters from the beginning of input parameter
LENLEN(str)LEN({Column})Input parameter character length
LOWERLOWER(str)LOWER({Column})Lower case converted string of input parameter
MIDMID(str, position, [count])MID({Column}, 3, 2)Alias for SUBSTR
REPEATREPEAT(str, count)REPEAT({Column}, 2)Specified copies of the input parameter string concatenated together
REPLACEREPLACE(str, srchStr, rplcStr)REPLACE({Column}, 'int', 'num')String, after replacing all occurrences of srchStr with rplcStr
RIGHTRIGHT(str, n)RIGHT({Column}, 3)n characters from the end of input parameter
SEARCHSEARCH(str, srchStr)SEARCH({Column}, 'str')Index of srchStr specified if found, 0 otherwise
SUBSTRSUBTR(str, position, [count])SUBSTR({Column}, 3, 2)Substring of length 'count' of input string, from the postition specified
TRIMTRIM(str)TRIM({Column})Remove trailing and leading whitespaces from input parameter
UPPERUPPER(str)UPPER({Column})Upper case converted string of input parameter
URLURL(str)URL({Column})Convert to a hyperlink if it is a valid URL

Date Functions

NameSyntaxSampleOutputRemark
NOWNOW()NOW()2022-05-19 17:20:43Returns the current time and day
IF(NOW() < {DATE_COL}, "true", "false")IF(NOW() < date, "true", "false")If current date is less than {DATE_COL}, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
DATEADDDATEADD(date \| datetime, value, ["day" \| "week" \| "month" \| "year"])DATEADD(date, 1, 'day')Supposing {DATE_COL} is 2022-03-14. The result is 2022-03-15.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'day')
DATEADD(date, 1, 'week')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-03-21 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'week')
DATEADD(date, 1, 'month')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-04-14 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'month')
DATEADD(date, 1, 'year')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2023-03-14 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'year')
IF(NOW() < DATEADD(date,10,'day'), "true", "false")If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
IF(NOW() < DATEADD(date,10,'day'), "true", "false")If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
DATETIME_DIFFDATETIME_DIFF(date, date, ["milliseconds" \| "ms" \| "seconds" \| "s" \| "minutes" \| "m" \| "hours" \| "h" \| "days" \| "d" \| "weeks" \| "w" \| "months" \| "M" \| "quarters" \| "Q" \| "years" \| "y"])DATETIME_DIFF("2022/10/14", "2022/10/15", "second")Supposing {DATE_COL_1} is 2017-08-25 and {DATE_COL_2} is 2011-08-25. The result is 86400.Compares two dates and returns the difference in the unit specified. Positive integers indicate the second date being in the past compared to the first and vice versa for negative ones.
WEEKDAY(NOW(), "sunday")If today is Monday, it returns 1Get the week day of NOW() with the first day set as sunday
WEEKDAYWEEKDAY(date, [startDayOfWeek])WEEKDAY(NOW())If today is Monday, it returns 0Returns the day of the week as an integer between 0 and 6 inclusive starting from Monday by default. You can optionally change the start day of the week by specifying in the second argument
WEEKDAY(NOW(), "sunday")If today is Monday, it returns 1Get the week day of NOW() with the first day set as sunday

Logical Operators

OperatorSampleDescription
<{Column1} < {Column2}Less than
>{Column1} > {Column2}Greater than
<={Column1} <= {Column2}Less than or equal to
>={Column1} >= {Column2}Greater than or equal to
=={Column1} == {Column2}Equal to
!={Column1} != {Column2}Not equal to

Conditional Expressions

NameSyntaxSampleOutput
IFIF(expr, successCase, elseCase)IF({Column} > 1, Value1, Value2)successCase if expr evaluates to TRUE, elseCase otherwise
SWITCHSWITCH(expr, [pattern, value, ..., default])SWITCH({Column}, 1, 'One', 2, 'Two', '--')Switch case value based on expr output
ANDAND(expr1, [expr2,...])AND({Column} > 2, {Column} < 10)TRUE if all expr evaluate to TRUE
OROR(expr1, [expr2,...])OR({Column} > 2, {Column} < 10)TRUE if at least one expr evaluates to TRUE

Logical operators, along with Numerical operators can be used to build conditional expressions.

Examples:

IF({marksSecured} > 80, "GradeA", "GradeB")  
SWITCH({quarterNumber},  
1, 'Jan-Mar',
2, 'Apr-Jun',
3, 'Jul-Sep',
4, 'Oct-Dec',
'INVALID'
)
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free/index.html new file mode 100644 index 0000000000..a1af6cadfa --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free/index.html @@ -0,0 +1,18 @@ + + + + + +Import Airtable to NocoDB | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Import Airtable to NocoDB

NocoDB allows a complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes.

note

Import from Airtable is in beta version. See Importing Airtable To NocoDB for the migration notes.

Get Airtable Credentials

note

You need to retrieve API key and Shared Base ID / URL from Airtable.

Retrieve API Key

Retrieve Share Base ID / URL

See here for detailed procedures.

  1. Open Share menu in your Project / Base +Screenshot 2022-05-16 at 3 47 27 PM

  2. Open tab Share Publicly

  3. Enable Turn on full base access

  4. Copy generated shared base URL +Screenshot 2022-05-16 at 3 41 54 PM

Import Airtable to NocoDB

note

Prerequisites:
- A NocoDB Project
- Airtable Credentials

Below are 3 simple steps

  1. Go to your Project, Open Add / Import menu and click Airtable.

Screenshot 2022-09-14 at 9 27 51 AM

  1. Input API key & Shared Base ID / URL (retrieved from Get Airtable Credentials above).
  • <1> API Key
  • <2> Share Base ID
  • <3> Configuration option
    • Import Data: disable this option to import only table & view schema's
    • Import Secondary Views: disable this option to import only primary grid view per table
    • Import Rollup Columns: disable this option to skip Rollup column import
    • Import Lookup Columns: disable this option to skip Lookup column import
    • Import Attachments Columns: disable this option to skip Attachment column import
    • \<Not supported yet> Import Formula Columns: disable this option to skip Formula (computation) column import

Screenshot 2022-09-14 at 9 30 14 AM

  1. Click Import and you will see the status
  2. Wait until Go To Dashboard button is activated on the modal. Import details are captured in log window.

Screenshot 2022-09-14 at 9 33 42 AM

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/keyboard-maneuver/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/keyboard-maneuver/index.html new file mode 100644 index 0000000000..feb504e56a --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/keyboard-maneuver/index.html @@ -0,0 +1,16 @@ + + + + + +Keyboard Maneuver | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Keyboard Maneuver

Shortcuts

KeyBehaviour
ALT tInsert new table
ALT rInsert new row
ALT cInsert new column
ALT fToggle fullscreen mode
ALT iInvite a member to team
ALT ,Open Team & Settings menu

Grid view

KeyBehaviour
Jump to first record in this column (in same page)
Jump to last record in this column (in same page)
CCopy cell contents
EnterSwitch cell in focus to EDIT mode; opens modal/picker if cell is associated with one
EscExit cell EDIT mode
DeleteClear cell
SpaceExpand current row
General cell navigation
TabMove to next cell horizontally; if on last cell, move to next row beginning

Column type specific

DatatypeKeyBehaviour
Text / Numerical cells Move cursor to the left / right
Move cursor to the beginning / end
Single Select Move between options
EnterSelect option
Multi Select Move between options
EnterSelect / deselect option
DateTimeCtrl ;Select current date time
Link Move between options
EnterLink current selection
CheckboxEnterToggle
Rating<0 ~ Max>Enter number to toggle rating

Expanded form

KeyBehaviour
EnterSave current expanded form item
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/languages/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/languages/index.html new file mode 100644 index 0000000000..5901c40a52 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/languages/index.html @@ -0,0 +1,16 @@ + + + + + +Languages | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Languages

NocoDB supports multiple lanuages on dashboard. By default, English will be used. However, if you prefer to display in other languages, you can do the following steps to change the language.

Open Project Menu (click on project name on left top to access Project menu)

image

and select the one you prefer.

If you want to help translate, please check out i18n. If you want to request a new language, please create an issue on Github.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/link-to-another-record/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/link-to-another-record/index.html new file mode 100644 index 0000000000..4e799b64fe --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/link-to-another-record/index.html @@ -0,0 +1,18 @@ + + + + + +Link To Another Record | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Link To Another Record

Relationship types:

  • One to one
    • A Table record in first table is related to only one record of second table.
    • Example: Country has a capital city
  • One to many
    • A Table record in first table is related to more than one record of second table. But second table record maps to only one entry of first table
    • NocoDB refers to this category of relationship as has many
    • For every has many relation defined, NocoDB augments belongs to relationship column in the other table automatically
    • Example: Country has many Cities. (other way mapping > City belongs to Country )
  • Many to many
    • A Table record in first table is related to more than one record of second table; second table record can also map to more than on record of first table.
    • NocoDB refers to this category of relationship as many to many
    • For every many to many relation defined between tables, NocoDB augments many to many relationship column in the other table automatically
    • Example: Film has many Actors. Actor has many Films (works on many films)

Further details of relationship types can be found here

Relationships between table records can be established by using LinkToAnotherRecord column type. +Workflow details are captured below

Adding a relationship

image

1. Create column

Click on '+' button at end of column headers

2. Update column name

Input name in the text box provided

3. Select column type

Select Column type as "LinkToAnotherRecord" from the drop-down menu

4. Choose relationship type

  • 'Has Many' corresponds to the 'One-to-many' relationships
  • 'Many To Many' corresponds to the 'Many-to-many' relationships

5. Select child table from drop down menu

6. Click on 'Save'

A new column will get created in both the parent table & child table

Updating linked records

Click on the '+' icon in corresponding row - cell

image

2. Select from the option displayed

Use 'Filter box' to narrow down on search items +You can opt to insert a new record as well, using "+ New Record" button

image

3. Column mapping showing "Has Many" relationship

Sheet1 'has many' Sheet2

image

4. Column mapping for "Belongs to" relationship [Automatically updated]

Sheet2 'belongs to' Sheet1

image
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/links/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/links/index.html new file mode 100644 index 0000000000..e65b5f0497 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/links/index.html @@ -0,0 +1,27 @@ + + + + + +Links | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Links

Supported relationship types:

  • One to many
    • A Table record in first table is related to more than one record of second table. But second table record maps to only one entry of first table
    • NocoDB refers to this category of relationship as has many
    • For every has many relation defined, NocoDB augments belongs to relationship column in the adjacent table automatically
    • Example: Country has many Cities. (other way mapping > City belongs to Country )
  • Many to many
    • A Table record in first table is related to more than one record of second table; second table record can also map to more than on record of first table.
    • NocoDB refers to this category of relationship as many to many
    • For every many to many relation defined between tables, NocoDB augments many to many relationship column in the other table automatically
    • Example: Film has many Actors. Actor has many Films (works on many films)

Further details of relationship types can be found here

From Release v0.111.0, table records can be connected through relationships using the Links column type. +It is important to note that, earlier supported column type LinkToAnotherRecord for creating relations is considered deprecated. While the old datatype is still supported for backward compatibility, it is no longer possible to create new fields of that type.

The main distinction between these two column types lies in how the contents are displayed within the cell when links are established between two tables. With the LinkToAnotherRecord column type, the cell displays the Primary value of the related records. On the other hand, the Links column type only shows the count of related records. +The decision to switch over to new column type was made to ensure better performance and scalability of the application, more so when the records & the number of records in the related table is large.

Child list to display the related records can be accessed by clicking on the link count displayed on the cell. +Except for the column type, the following procedures remain same as before

  • Create, update & delete a relationship column,
  • Link & unlink a record,
  • Create a lookup and rollup columns

Workflow details are captured below.

Adding a relationship

Screenshot 2023-06-27 at 11 03 20 AM

  1. Create column +Click on '+' button at end of column headers

  2. Update column name +Input name in the text box provided

  3. Select column type +Select Column type as "Links" from the drop-down menu

  4. Choose relationship type

  • 'Has Many' corresponds to the 'One-to-many' relationships
  • 'Many To Many' corresponds to the 'Many-to-many' relationships
  1. Select child table from drop down menu

  2. Click on 'Save' +A new column will get created in both the parent table & child table

Linking records

Click on the '+' icon in corresponding row - cell +Screenshot 2023-06-27 at 11 06 52 AM

2. Select from the option displayed

Use 'Filter box' to narrow down on search items.
+You can opt to insert a new record as well, using "+ New Record" button.
+You can use ALT + Click to insert multiple options together.

Screenshot 2023-06-27 at 11 08 40 AM

3. Column display for "Has Many" relationship

Country 'has many' City

Screenshot 2023-06-27 at 11 11 50 AM

4. Column display for "Belongs to" relationship [Automatically updated]

City 'belongs to' Country.
+Note: Primary value is still used as cell display value for "Belongs to" as it can have only one associated record.

Screenshot 2023-06-27 at 11 12 27 AM

Unlinking records

  1. Click on link count to open Child modal
  2. Click on Unlink icon against required item

Screenshot 2023-06-27 at 11 22 00 AM

Use column edit menu for Links to reconfigure display label

Screenshot 2023-06-27 at 11 16 19 AM

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/lookup/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/lookup/index.html new file mode 100644 index 0000000000..8a5a355cfc --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/lookup/index.html @@ -0,0 +1,16 @@ + + + + + +Lookup | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Lookup

Lookup

Example organization structure

Consider an organization with

  • 5 departments (company departments), each department has a team name & associated team code. Each Team has many Employees - relationship has been defined using LinkToAnotherRecord or Linkscolumn
  • 5 employees working at different departments

Screenshot 2022-09-09 at 12 57 32 PM

Now, let's explore procedure to retrieve team-code information in Employee table using LOOKUP columns

Configuring a lookup column

1. Add new column : Click on '+' icon to the left of column headers in Employee table

2. Feed column name

3. Select column type as 'Lookup'

4. Choose child table

5. Select child column

6. Click on 'Save'

Screenshot 2022-09-09 at 12 21 13 PM

Required information is now populated in the newly created column

Screenshot 2022-09-09 at 12 26 06 PM

Additional notes

  • Nested 'Lookup' supported: a Lookup field can have its child column datatype as Lookup (or Rollup).
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/meta-management/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/meta-management/index.html new file mode 100644 index 0000000000..b6dfa21faa --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/meta-management/index.html @@ -0,0 +1,17 @@ + + + + + +Data Sources | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Data Sources

Overview

Data Sources sub-menu includes

  • Database Metadata
  • UI Access Control
  • ERD
  • Add/Remove new data source
  • Edit existing data source configuration
  • Edit data source visibility options

Note that, currently only one external data source can be added per project.

Accessing Data Sources

To access it, click the down arrow button next to Project Name on the top left side, then select Team & Settings and clicking Data Sources.

image

image

Sync Metadata

Go to Data Sources, click Sync Metadata, you can see your metadata sync status. If it is out of sync, you can sync the schema. See Sync Schema for more.

image

UI Access Control

Go to Data Sources, click UI ACL, you can control the access to each table by roles.

image

ERD

Go to Data Sources, click ERD, you can see the ERD of your database.

image

Junction table names within ERD

  • Enable Show M2M Tables within Project Settings menu
  • Double click on Show Columns to see additional checkboxes get enabled.
    • Enabling which you should be able to see junction tables and their table names.

image

Edit external database configuration parameters

Go to Data Sources, click Edit, you can re-configure database credentials.
+Please make sure database configuration parameters are valid. Any incorrect parameters could lead to schema loss!

image

Go to Data Sources, click Delete against the data source that you wish to un-link.

image

Data source visibility

Go to Data Sources, toggle Radio-button against the data source that you wish to hide/un-hide.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/primary-key/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/primary-key/index.html new file mode 100644 index 0000000000..018a0c8fbf --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/primary-key/index.html @@ -0,0 +1,17 @@ + + + + + +Primary Key | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Primary Key

What is a Primary Key ?

  • A primary key is a special database table column designated to uniquely identify each table record.

What is the use of Primary Key ?

  • As it uniquely identifies an individual record of a table, it is used internally by NocoDB for all operations associated with a record

Primary Key in NocoDB

  • Primary Key that gets defined / used in NocoDB depends on how underlying table was created. Summary is captured below
  1. From UI, Create new table / Import from Excel / Import from CSV
    1. An ID [datatype: Integer] system field created by default during table creation is used as primary key
    2. Additional system fields created-at, updated-at are inserted by default & can be omitted optionally; these fields can be deleted after table creation
  2. Connect to existing external database
    1. Existing primary key field defined for a table is retained as is; NocoDB doesn't insert a new ID field
    2. Additional system fields created-at, updated-at are not inserted by default
  3. Import from Airtable
    1. Airtable record ID is marked as primary key for imported records, and is mapped to field ncRecordId [datatype: varchar]
    2. If a new record is inserted after migration & if ncRecordId field was omitted during record insertion - auto generated string will be inserted by NocoDB
    3. Computed hash value for the entire record is stored in system field ncRecordHash
    4. Additional system fields created-at, updated-at are not inserted by default
  4. Create new table using SDK / API
    1. No default primary key field is introduced by NocoDB. It has to be explicitly specified during table creation (using attribute pk: true)

What if Primary Key was missing?

It is possible to have a table without any primary key.

  • External database table can be created without primary key configuration.
  • New table can be created using SDK / API without primary key +In such scenario's, new records can be created in NocoDB for this table, but records can't be updated or deleted [as there is now way for NocoDB to uniquely identify these records]

Example : Primary Key & optional system fields during new table creation

image

Example : Show System Fields

image

Can I change the Primary Key to another column within tables ?

  • You can't update Primary Key from NocoDB UI. You can reconfigure it at database level directly & trigger meta sync explicitly.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/project-settings/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/project-settings/index.html new file mode 100644 index 0000000000..9aa743c31a --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/project-settings/index.html @@ -0,0 +1,16 @@ + + + + + +Project settings | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Project settings

Overview

Generic project configuration options are retained under Project Settings menu. To access it, click the down arrow button next to Project Name on the top left side, then select Team & Settings.

image

Then, under SETTINGS, click Project Settings.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/rollup/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/rollup/index.html new file mode 100644 index 0000000000..bd84a1ee3c --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/rollup/index.html @@ -0,0 +1,16 @@ + + + + + +Rollup | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Rollup

Rollup

Sample Organization structure:

  • 5 Departments, each department has a team name & associated team code
  • 5 employees working at different Departments
  • Teams has many Employees : relationship has been defined

Screenshot 2022-09-09 at 12 57 32 PM

RollUp AGGREGATION functions supported

  • Count
  • Minimum
  • Maximum
  • Average
  • Sum
  • Count Distinct
  • Sum Distinct
  • Average Distinct

Now, we can explore how to extract employee count information per team using "ROLLUP" columns

Adding a rollup column

1. Add new column

Click on '+' icon to the left of column headers in Departments table

2. Feed column name

3. Select Column type as 'Rollup'

4. Choose Child Table

Table Employee in our example

5. Choose on ​Child column

Pick appropriate column for aggreagation

6. Select ​Aggregate function

Aggregate function will be "count" in our case

7. Click on Save

Screenshot 2022-09-09 at 1 03 49 PM

Column Employee Count is populated with appropriate information

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/share-base/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/share-base/index.html new file mode 100644 index 0000000000..4620a81397 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/share-base/index.html @@ -0,0 +1,16 @@ + + + + + +Share Base | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Share Base

Generate Share base

  • Open Project
  • Click on Invite Team button on bottom left tool bar

image

  • Under Shared base link tab and toggle from Disabled Share base to Anyone with the link

image

  • Share base link generated is displayed over & can be used to share this project to others in the team [Selection (2) in the image below]

Screenshot 2022-02-19 at 12 01 58 PM

Modify Share base

Modifying Share base will invalidate the Share base link generated previously and will generate a new link.

  • Open Project base
  • Click on 'Share' button on top right tool bar
  • Click on 'Reload' button on Quick menu (next to Shared base link)

Disable Share base

Disabling Share base will invalidate the generated Share base link

  • Open Project base
  • Click on 'Share' button on top right tool bar
  • Under Shared base link and toggle from Anyone with the link to Disable Share base

Share base Access Permissions

Shared base can be configured as

  • Viewer - User with the link will get READ ONLY access to the project data.
  • Editor - User with the link will get READ & WRITE access to the project data.

Embeddable Frame

NocoDB interface can be embedded into existing applications easily by making use of HTML IFRAME) attribute.

Generate embeddable HTML code

  • Open Project base
  • Click on 'Share' button on top right tool bar
  • Under 'Shared base link' tab
    • Click on button to copy 'Embeddable HTML code'

Example:

<iframe
class="nc-embed"
src="https://nocodb-nocodb-rsyir.ondigitalocean.app/dashboard/#/nc/base/e3bba9df-4fc1-4d11-b7ce-41c4a3ad6810?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; border: 1px solid #ddd"
>
</iframe>

Embed into application's HTML Body

Sample code with embedded iframe generated above

<!DOCTYPE html>
<html>
<body>
<iframe
class="nc-embed"
src="http://localhost:3000/#/nc/base/7d4b551c-b5e0-41c9-a87b-f3984c21d2c7?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; "
></iframe>
</body>
</html>
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/share-view/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/share-view/index.html new file mode 100644 index 0000000000..a69d7eb810 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/share-view/index.html @@ -0,0 +1,16 @@ + + + + + +Share View | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Share View

Generate Share View

  • Open a table or a view

  • Click Share View on the toolbar

image

  • Copy the link and share to someone

image

  • Optionally you can enable Use Theme to select the share view theme (Only Form View is supported currently)

image

  • or you can enable Restrict access with a password if you want a password-protected view

image

  • or you can Download allowed if you want the people with this link can download the data

image

Access Share View

  • Access the link. If it is password-protected, enter the password to unlock.

image

  • Otherwise, you should see the share view.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/sync-schema/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/sync-schema/index.html new file mode 100644 index 0000000000..5769850925 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/sync-schema/index.html @@ -0,0 +1,16 @@ + + + + + +Sync Schema | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Sync Schema

How to sync schema changes to NocoDB

NocoDB allows you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from one environment to other.

Below are the steps to sync schema changes.

1. From the Project menu, click Team & Settings

image

2. Click Data Source under SETTINGS, click Sync Metadata on the target base

image

image

3. Changes carried outside GUI, identified by NocoDB are listed under Sync state

  • If changes made to the database are not visible, click Reload
  • Identified schema changes are identified for each table in red
  • Sync now button gets activated, if Schema changes are identified by NocoDB

image

4. Click Sync Now to complete Schema sync procedure

Notes

  1. Column rename operation will be treated like column delete & column create operation.
  2. Only table schema changes identified will be listed under Sync state. Any changes to records are automatically synchronized.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/table-operations/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/table-operations/index.html new file mode 100644 index 0000000000..11690e4d7f --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/table-operations/index.html @@ -0,0 +1,20 @@ + + + + + +Table Operations | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Table Operations

Once you have created a new NocoDB project you can open it, In the browser, the URL would be like example.com/#/default/<project_id>.

Table

Table Create

On project dashboard, click on Add new table button

table-create-button

Provide a name for the table & click Create Table button.

table-create-modal

After the successful submission, the table will be created and open on a new grid.

image

Table Rename

Right click on Table name on left hand project-tree menu, select Rename

image

In modal popup, enter new table name and click Submit button

image

Table Delete

Right click on Table name on left hand project-tree menu, select Delete

image

Click Yes to confirm the table deletion

image

Column

Column Add

Click the + icon on the right corner of the table.

image

After the click, it will show a menu and you can enter the column name and choose the column type. (See Column Types for the full list).

image

You can also click Show more for additional menu options.

Screenshot 2023-03-03 at 8 13 07 PM

Click Save button to create the new column.

image

Column Edit

To edit column properties, click the down arrow, select Edit from the menu.

imageYou will be able to edit column name & associated datatype using pop-up modal. You can also click `Show more` for additional menu options.image

Prior to v0.104.3, Advanced menu by default displayed developer specific database configuration options. To avoid unintended tweaks from user, these are now hidden under an easter egg menu. To enable, double click on show all/hide all button in column edit modal.

Screenshot 2023-03-06 at 10 45 26 AM

Column Delete

To delete a column, click the down arrow, select Delete from the menu.

image

Click Yes to confirm the column deletion.

image

Row

For adding new values to the table we need new rows, new rows can be added in two methods.

Row Add (Using Form)

  • Click the + icon in the toolbar of the table tab. image
  • Then you can enter the values and click Save row. image
  • After saving it will be there on your table. image

Row Add (Using Table Row at bottom of page)

  • Click the bottom row of the table + Add new row.image
  • A new empty row will be createdimage

Row Add (Pressing Enter Key from Previous Row)

When you finish editing a cell and press Enter, the cell in the next row with the same column will be highlighted.

image

Row Edit

You can start editing by any of the following methods

  • Double click on cell to edit
  • Click on cell and start typing (this way it will clear the previous content)
  • Click on cell and press enter to start editing
  • And it will automatically save on blur event or if inactive.

Row Delete

Right-click on anywhere in the row and then from the context menu select Delete Row option.

Bulk delete is also possible by selecting multiple rows by using the checkbox in first column and then Delete Selected Rows options from the right click context menu.

image

Quick Import

You can use Quick Import when you have data from external sources such as Airtable, CSV file or Microsoft Excel to an existing project by either

  • Hover Add new table button in table menu, click three dots, use Quick Import to create
  • Drag and drop CSV, JSON or Excel file to import
image

Import Airtable into an Existing Project

Import CSV data into an Existing Project

  • Hover Add new table button in table menu, click three dots, and click CSV file
  • Drag & drop or select files (at most 5 files) to upload or specify CSV file URL, and Click Import
    • Auto-Select Field Types: If it is checked, column types will be detected. Otherwise, it will default to SingleLineText.
    • Use First Row as Headers: If it is checked, the first row will be treated as header row.
    • Import Data: If it is checked, all data will be imported. Otherwise, only table will be created. +image
  • You can revise the table name by double-clicking it, column name and column type. By default, the first column will be chosen as Display Value and cannot be deleted. +image
  • Click Import to start importing process. The table will be created and the data will be imported. +image

Import Excel data into an Existing Project

  • Hover Add new table button in table menu, click three dots, and click Microsoft Excel
  • Drag & drop or select file (at most 1 file) to upload or specify Excel file URL and Click Import.
    • Auto-Select Field Types: If it is checked, column types will be detected. Otherwise, it will default to SingleLineText.
    • Use First Row as Headers: If it is checked, the first row will be treated as header row.
    • Import Data: If it is checked, all data will be imported. Otherwise, only table will be created. +image
  • You can revise the table name, column name and column type. By default, the first column will be chosen as Display Value and cannot be deleted.
note

If your Excel file contains multiple sheets, each sheet will be stored in a separate table.

image
  • Click Import to start importing process. The table(s) will be created and the data will be imported to the corresponding table(s).

    image

Export Data

You can export your data from a table as a CSV file by clicking the down arrow next to Table name and hover on Download. Currently only CSV and XLSX formats are supported for export.

image

Import Data

You can import your data in CSV format to a table by clicking the down arrow next to Table name and hover on Upload. Currently only CSV format is supported for upload.

image
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/team-and-auth/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/team-and-auth/index.html new file mode 100644 index 0000000000..a4a9b240fa --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/team-and-auth/index.html @@ -0,0 +1,16 @@ + + + + + +Team & Auth | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Team & Auth

Accessing Team & Auth

  • Click on Team & Settings from the Project Menu
  • Access Team & Auth under Settings
image

User Management

How to Add a User

  1. Go to Team & Auth, click on Invite Team

image

  1. Enter the user's E-mail. Select User Role, and Click Invite.
tip

You can add multiple comma (,) seperated emails

Screenshot 2022-09-13 at 10 54 39 AM

If you do not have an SMTP sender configured, make sure to copy the invite link and manually send it to your collaborator.

Screenshot 2022-09-13 at 10 54 22 AM

How to Update user permissions

  1. Use Edit <1> menu to assign a different role to existing user
  2. Use Delete <2> menu to remove a user from accessing current project

image


User Role Permissions

Advanced Options & Configurations

                                                       Owner        Creator        Editor    Commenter    Viewer    
Audit
App Store
Team & Auth
Project Metadata
New user: Add Owner
New user: Add Creator
New user: Add Editor
New user: Add Commenter
New user: Add Viewer
View existing users
Preview mode

Schema Options

                                                       Owner        Creator        Editor    Commenter    Viewer    
Add table
Delete table
Modify table
Add column
Delete column
Modify column

Record Options

                                                       Owner        Creator        Editor    Commenter    Viewer    
Add row
Delete row
Modify row/ cell
Expand row
Right click on cell (add/edit row)
View table data (cell) contents

Comments

                                                       Owner        Creator        Editor    Commenter    Viewer    
View comments from others
Add comments

Views

                                                       Owner        Creator        Editor    Commenter    Viewer    
Create new view
Share view

Project Generals

                                                       Owner        Creator        Editor    Commenter    Viewer    
Created views access
Filter fields/ Column
Filter fields/ Query
Sort fields
Theme
Auth token
Project Info
Swagger API

API Tokens Management

NocoDB allows creating API tokens which allow it to be integrated seamlessly with 3rd party apps. API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called xc-token.

  • Open Project Menu, click on Team & Settings
image
  • Click API Tokens Management tab under Team & Auth section

  • Click Add New Token

image

  • Type an recognizable name for your token and click Generate

Screenshot 2022-09-14 at 10 20 10 AM

  • Copy API token to your clipboard; use action menu to the right of token list
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/usage-information/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/usage-information/index.html new file mode 100644 index 0000000000..3772e82063 --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/usage-information/index.html @@ -0,0 +1,21 @@ + + + + + +Usage Information | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Usage Information

NocoDB is a fast growing open source project which is UI heavy and we are committed to providing a solution that exceeds the expectations of the users and community. +We are also committed to continuing to develop and make NocoDB even better than it is today. +To that end, NocoDB contains a feature in which anonymous and otherwise non-sensitive data is collected. +This anonymous and non-sensitive data gives a better understanding of how users are interacting and using the product.

Context

We will always continue to do hands-on UI/UX testing, surveys, issue tracking and roadmap. +Otherwise talk with the Community while striving to understand +and deliver what is being asked for and what is needed, by any means available.

However, these above actions alone are often insufficient

  • To maintain an overall picture of the product usage.
  • Prioritising the efforts.
  • Impact of any breaking changes.
  • To understand whether UI improvements are helpful to users.

What we collect ?

We collect actions made on models (project, table, view, sharedView, user, hook, image, sharedBase etc) periodically with :

  • System information (OS, node version, docker or npm)
  • Environment (dev, staging, production)
  • Instance information (Unique machine ID, database type, count of projects and users)
  • Failures.

Our UI Dashboard is a Vuejs-Nuxtjs app. Actions taken on UI with completely anonymized route names are sent as payload.

What we DO NOT collect ?

We do not collect any private or sensitive information, such as:

  • Personally identifiable information
  • Credential information (endpoints, ports, DB connections, username/password)
  • Database/User data

Opt-out

To disable usage information collection please set following environment variable.

NC_DISABLE_TELE=true

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/0.109.7/setup-and-usages/views/index.html b/packages/noco-docs/dist/0.109.7/setup-and-usages/views/index.html new file mode 100644 index 0000000000..1e090570ac --- /dev/null +++ b/packages/noco-docs/dist/0.109.7/setup-and-usages/views/index.html @@ -0,0 +1,16 @@ + + + + + +Views | NocoDB + + + + +
+
Skip to main content
Version: 0.109.7 - Old UI

Views

What's a View?

In a table, you can use different views to display your data. You can show specific fields in a View. You can also apply Sorting or Filtering to the View. Each View is independent, which means the configuration applying to View 1 will not apply to View 2.

To navigate different views, we can select the target one in the view sidebar. By default, Grid View will be created for you after creating the table. You can create multiple views of a type, as long as they have unique View names.

View Menu Bar

To work with Views, use View menu-bar on the right hand side -

  • <1> Toggle View menu-bar.
  • <2> Displays created view-list for the selected table
    • Currently active view is high-lighted
  • <3> Add new view to the list

image

View Types

Grid View

Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface.

1010-2 Grid

Form View

Form View allows you to arrange fields in a form to input data.

1010-2 Form

You can drag-drop columns from the form to form-field-menu-bar as requried.

Gallery View allows you to display images as thumbnails with other fields just like a gallery.

1010-2 Gallery

Kanban View

Kanban View allows you to visualise your data using cards at various stacks.

1010-2 Kanban

View Permission Types

We can apply permission to each View. By default, Collaborative Views will be used. To see or change the view type, expand view-tool-bar-menu as shown below.

Screenshot 2022-09-09 at 3 46 33 PM

Collaborative Views (default)

  • Collaborators with edit permissions or higher can change the view configurations

Locked Views

  • No one can edit view configurations until it is Unlocked
  • All collaborators can only READ data from such views

Personal Views

  • Only you can edit the view configuration.
  • Your personal views are hidden for other collaborators
  • Are not available currently; will be enabled in future release

View Operations

Screenshot 2022-09-09 at 3 27 46 PM

Create a View

Click '+' in View-menu sidebar, as shown in <3>.

Rename a View

Double click on view-name, edit, .

Delete a View

Hover the target View and click the delete icon, as shown in <2>.

note

You cannot delete the very first Grid View (termed as Default view).

Duplicate a View

Hover the target View and click the copy icon, as shown in <2>.

Reorder a View

Hover the target View and re-order it as needed by drag-drop the drag icon, as shown in <1>.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/404.html b/packages/noco-docs/dist/404.html new file mode 100644 index 0000000000..dc6aa0d189 --- /dev/null +++ b/packages/noco-docs/dist/404.html @@ -0,0 +1,16 @@ + + + + + +Page Not Found | NocoDB + + + + +
+
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/FAQs/index.html b/packages/noco-docs/dist/FAQs/index.html new file mode 100644 index 0000000000..954c2c6e19 --- /dev/null +++ b/packages/noco-docs/dist/FAQs/index.html @@ -0,0 +1,18 @@ + + + + + +FAQs | NocoDB + + + + +
+
Skip to main content
Version: Latest

FAQs

How to upgrade NocoDB ?

How to export CSV from the grid view ?

How to share the project with read only access ?

  • Either you can invite by email with 'viewer' access control
  • Share the base with publicly accessible link. Available since 0.82.0

How to check my Project info ?

  • You can open Project context menu and click Copy Project Info.

image

You should see the similar result as below.

Node: **v18.16.4**
Arch: **arm64**
Platform: **linux**
Docker: **true**
RootDB: **sqlite3**
PackageVersion: **0.111.0**

What is available in free version ?

  • Detailed comparison of NocoDB's generous CE compared to others is here.
  • NocoDB has just one version that is free & open source.
  • In it you will notice advanced features are all available for free.
    • ACL
    • Collaboration
    • Advanced Views : Form View, Gallery View & Kanban View
    • Share View
    • Embed View
    • Password protected View
    • Automations
    • API Token Support
  • And we would never move these features from free to an enterprise version of NocoDB.
  • There is no limitations to number of projects, rows or columns either.

What is the difference between Auth Token and API Token ?

Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable NC_JWT_EXPIRES_IN. If you are passing Auth Token, make sure that the header is called xc-auth.

API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called xc-token.

Do we plan to have an Enterprise Edition?

For features that make sense for enterprises like below - yes

  • SSO, SLA, Organisation wide reports and analytics,
  • Advanced Audit or ACL,
  • Bespoke implementations & integrations,
  • A hosted solution. +

And increasing number of our customers are requesting it.

How do we decide if a feature is Enterprise or not ?

  • Depends on the effort and whether the intended users are enterprises.

What are the official socials for NocoDB?

Is NocoDB available on the cloud?

Soon! NocoDB is currently developing cloud infrastructure. +To join the upcoming FREE private beta program, fill out this form here and be the first to try it!

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/account-settings/api-tokens/index.html b/packages/noco-docs/dist/account-settings/api-tokens/index.html new file mode 100644 index 0000000000..a5fdf15a07 --- /dev/null +++ b/packages/noco-docs/dist/account-settings/api-tokens/index.html @@ -0,0 +1,16 @@ + + + + + +API tokens | NocoDB + + + + +
+
Skip to main content
Version: Latest

API tokens

Create API Token

Open Account Settings page from the user menu in the bottom left corner of the sidebar. Follow the steps below to create API Token

  1. Click on API Tokens tab
  2. Click on Add New API Token
  3. Enter the name of the API Token
  4. Click on Save button to save the changes

Create API Token

Create API Token

API Token created will get added to the list. Copy API token by clicking on Copy button displayed under Actions menu

Create API Token

Delete API Token

  1. Click on API Tokens tab
  2. From the Actions menu, click on Delete button associated with the API Token to be deleted

Delete API Token

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/account-settings/oss-specific-details/index.html b/packages/noco-docs/dist/account-settings/oss-specific-details/index.html new file mode 100644 index 0000000000..41e8505777 --- /dev/null +++ b/packages/noco-docs/dist/account-settings/oss-specific-details/index.html @@ -0,0 +1,17 @@ + + + + + +In Open Source | NocoDB + + + + +
+
Skip to main content
Version: Latest

In Open Source

Some of the Account settings features are available only in Open Source NocoDB. This article explains details about such specifics.

Enable / Disable Signup

Signup without an invitation is disabled by default and can be managed from UI by a super admin.

Invite only signup

App Store

App store lists available integrations for NocoDB. You can install and configure these integrations from the App store.

Screenshot 2023-08-22 at 5 02 26 PM +We provide different integrations in three main categories.

CategoryApp Name
ChatMicrosoft Teams
Discord
Twilio
Whatsapp Twilio
Mattermost
Slack
EmailSMTP
MailerSend
AWS SES
StorageAWS S3
Minio
Google Cloud Storage
Spaces
Backblaze B2
Vultr Object Storage
OvhCloud Object Storage
Linode Object Storage
UpCloud Object Storage
Scaleway Object Storage
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/account-settings/profile-page/index.html b/packages/noco-docs/dist/account-settings/profile-page/index.html new file mode 100644 index 0000000000..5d1b1ebbd1 --- /dev/null +++ b/packages/noco-docs/dist/account-settings/profile-page/index.html @@ -0,0 +1,16 @@ + + + + + +Profile page | NocoDB + + + + +
+
Skip to main content
Version: Latest

Profile page

Profile page is the place where you can manage your profile information. To access your profile page,

  1. Click on User menu in the bottom left corner of the sidebar,
  2. Select Account Settings from the dropdown
  3. Change Profile name
  4. Click on Save button to save the changes

profile page

profile page

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/css/styles.e26f1b75.css b/packages/noco-docs/dist/assets/css/styles.e26f1b75.css new file mode 100644 index 0000000000..96cdce692b --- /dev/null +++ b/packages/noco-docs/dist/assets/css/styles.e26f1b75.css @@ -0,0 +1 @@ +.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,code{vertical-align:middle}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}.toggleButton_gllP,html{-webkit-tap-highlight-color:transparent}.clean-list,.containsTaskList_mC6p,.details_lb9f>summary,.dropdown__menu,.menu__list{list-style:none}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#3498db;--ifm-color-primary-dark:#2980b9;--ifm-color-primary-darker:#2471a3;--ifm-color-primary-darkest:#1f618d;--ifm-color-primary-light:#5fa8d0;--ifm-color-primary-lighter:#76b9e0;--ifm-color-primary-lightest:#a5d8ff;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#0000001a;--docusaurus-announcement-bar-height:auto;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300);--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);text-rendering:optimizelegibility}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none,.tabItem_LNqP{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.row--align-bottom{align-items:flex-end}.menuExternalLink_NmtK,.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal)}a code{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img{max-width:100%}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul,.tabList__CuJ{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_EoeP .wordWrapButtonIcon_Bwma{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_tbUL,.alert__heading,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.card--full-height,.navbar__logo img,body,html{height:100%}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area[href].breadcrumbs__link:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;-webkit-user-select:none;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover{opacity:.7}.close:focus,.header-github-link:hover,.theme-code-block-highlighted-line .codeLineNumber_Tfdd:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white)}.footer__links{margin-bottom:1rem}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.docItemContainer_Djhp article>:first-child,.docItemContainer_Djhp header+*,.footer__item{margin-top:0}.admonitionContent_S0QG>:last-child,.collapsibleContent_i85q>:last-child,.footer__items,.tabItem_Ymn6>:last-child{margin-bottom:0}.codeBlockStandalone_MEMb,[type=checkbox]{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child){margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_lb9f[data-collapsed=false].isBrowser_bmU9>summary:before,.details_lb9f[open]:not(.isBrowser_bmU9)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;filter:var(--ifm-menu-link-sublist-icon-filter);content:""}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar-sidebar,.navbar-sidebar__backdrop{bottom:0;opacity:0;position:fixed;transition-duration:var(--ifm-transition-fast);transition-timing-function:ease-in-out;left:0;top:0;visibility:hidden}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_xLdY,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center .navbar__brand{margin:0}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:.9rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);transform:translate3d(-100%,0,0);transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;right:0;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover{text-decoration:none}.pagination-nav{grid-gap:var(--ifm-spacing-horizontal);display:grid;gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;cursor:pointer;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs,:not(.containsTaskList_mC6p>li)>.containsTaskList_mC6p{padding-left:0}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);cursor:pointer;display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}.header-github-link:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E") no-repeat;content:"";display:flex;height:24px;width:24px}.navbar__logo{height:3rem}html[data-theme=dark] .header-github-link:hover{opacity:.6}html[data-theme=dark] .header-github-link:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23fff' d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E") no-repeat}[data-theme=dark]{--ifm-color-primary:#258cc2;--ifm-color-primary-dark:#2074a0;--ifm-color-primary-darker:#1d6a8e;--ifm-color-primary-darkest:#1a5779;--ifm-color-primary-light:#29a7d5;--ifm-color-primary-lighter:#32b9e1;--ifm-color-primary-lightest:#4fcbe9;--docusaurus-highlighted-code-line-bg:#0000004d}.markdown img{box-shadow:0 0 10px #000000bf}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}#__docusaurus-base-url-issue-banner-container,.themedImage_ToTc,[data-theme=dark] .lightToggleIcon_pyhR,[data-theme=light] .darkToggleIcon_wfgR,html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j{display:none}.skipToContent_fXgn{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem;z-index:calc(var(--ifm-z-index-fixed) + 1)}.skipToContent_fXgn:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_CVFx{line-height:0;padding:0}.content_knG7{font-size:85%;padding:5px 0;text-align:center}.content_knG7 a{color:inherit;text-decoration:underline}.announcementBar_mb4j{align-items:center;background-color:var(--ifm-color-white);border-bottom:1px solid var(--ifm-color-emphasis-100);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}.announcementBarPlaceholder_vyr4{flex:0 0 10px}.announcementBarClose_gvF7{align-self:stretch;flex:0 0 30px}.toggle_vylO{height:2rem;width:2rem}.toggleButton_gllP{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.toggleButton_gllP:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_aARS{cursor:not-allowed}.darkNavbarColorModeToggle_X3D1:hover{background:var(--ifm-color-gray-800)}[data-theme=dark] .themedImage--dark_i4oU,[data-theme=light] .themedImage--light_HNdA,html:not([data-theme]) .themedComponent--light_NU7w{display:initial}.iconExternalLink_nPIU{margin-left:.3rem}.iconLanguage_nlXk{margin-right:5px;vertical-align:text-bottom}.navbarHideable_m1mJ{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_jGov{transform:translate3d(0,calc(-100% - 2px),0)}.errorBoundaryError_a6uf{color:red;white-space:pre-wrap}.footerLogoLink_BH7S{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_BH7S:hover,.hash-link:focus,:hover>.hash-link{opacity:1}.mainWrapper_z2l0{display:flex;flex:1 0 auto;flex-direction:column}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.iconEdit_Z9Sw{margin-right:.3em;vertical-align:sub}.tag_zVej{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_zVej:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_sFm0{border-radius:var(--ifm-global-radius);font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_h2kH{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_h2kH:after,.tagWithCount_h2kH:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_h2kH:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_h2kH:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_h2kH span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tags_jXut{display:inline}.tag_QGVx{display:inline-block;margin:0 .4rem .5rem 0}.lastUpdated_vwxv{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_TO0P{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.tocCollapsibleButton_TO0P:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_MG3E:after,.tocCollapsibleExpanded_sAul{transform:none}.tocCollapsible_ETCw{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.buttonGroup__atx button,.codeBlockContainer_Ckt0{background:var(--prism-background-color);color:var(--prism-color)}.tocCollapsibleContent_vkbj>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_vkbj ul li{margin:.4rem .8rem}.tocCollapsibleContent_vkbj a{display:block}.tableOfContents_bqdL{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.anchorWithStickyNavbar_LWe7{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar_WYt5{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);-webkit-user-select:none;user-select:none}.hash-link:before{content:"#"}.codeBlockContainer_Ckt0{border-radius:var(--ifm-code-border-radius);box-shadow:var(--ifm-global-shadow-lw);margin-bottom:var(--ifm-leading)}.codeBlockContent_biex{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_Ktv7{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_bY9V{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_Ktv7+.codeBlockContent_biex .codeBlock_bY9V{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_e6Vv{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_o6Pm{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup__atx{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup__atx button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity var(--ifm-transition-fast) ease-in-out}.buttonGroup__atx button:focus-visible,.buttonGroup__atx button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup__atx button{opacity:.4}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_lJS_{counter-increment:a;display:table-row}.codeLineNumber_Tfdd{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_Tfdd:before{content:counter(a);opacity:.4}.codeLineContent_feaV{padding-right:var(--ifm-pre-padding)}.theme-code-block:hover .copyButtonCopied_obH4{opacity:1!important}.copyButtonIcons_eSgA{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_y97N,.copyButtonSuccessIcon_LjdS{fill:currentColor;height:inherit;left:0;opacity:inherit;position:absolute;top:0;transition:all var(--ifm-transition-fast) ease;width:inherit}.copyButtonSuccessIcon_LjdS{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_obH4 .copyButtonIcon_y97N{opacity:0;transform:scale(.33)}.copyButtonCopied_obH4 .copyButtonSuccessIcon_LjdS{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.wordWrapButtonIcon_Bwma{height:1.2rem;width:1.2rem}.details_lb9f{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_lb9f>summary{cursor:pointer;padding-left:1rem;position:relative}.details_lb9f>summary::-webkit-details-marker{display:none}.details_lb9f>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_i85q{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_b_Ee{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.img_ev3q{height:auto}.admonition_LlT9{margin-bottom:1em}.admonitionHeading_tbUL{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.3rem}.admonitionHeading_tbUL code{text-transform:none}.admonitionIcon_kALy{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_kALy svg{fill:var(--ifm-alert-foreground-color);display:inline-block;height:1.6em;width:1.6em}.breadcrumbHomeIcon_YNFT{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.breadcrumbsContainer_Z_bl{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.backToTopButton_sjWU{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;box-shadow:var(--ifm-global-shadow-lw);height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_sjWU:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_xfvO{opacity:1;transform:scale(1);visibility:visible}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.collapseSidebarButton_PEFL{display:none;margin:0}.docSidebarContainer_b6E3,.sidebarLogo_isFc{display:none}.docMainContainer_gTbr,.docPage__5DB{display:flex;width:100%}.docPage__5DB{flex:1 0}.docsWrapper_BCFX{display:flex;flex:1 0 auto}.tag_Nnez{display:inline-block;margin:.5rem .5rem 0 1rem}@media (min-width:997px){.collapseSidebarButton_PEFL,.expandButton_m80_{background-color:var(--docusaurus-collapse-button-bg)}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_gvF7,.announcementBarPlaceholder_vyr4{flex-basis:50px}.searchBox_ZlJk{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.lastUpdated_vwxv{text-align:right}.tocMobile_ITEo{display:none}.docItemCol_VOVn{max-width:75%!important}.collapseSidebarButton_PEFL{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px;position:sticky}.collapseSidebarButtonIcon_kv0_{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_BlDH,[dir=rtl] .collapseSidebarButtonIcon_kv0_{transform:rotate(0)}.collapseSidebarButton_PEFL:focus,.collapseSidebarButton_PEFL:hover,.expandButton_m80_:focus,.expandButton_m80_:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_M9Kj{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_SIkG{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_SIkG{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar_GW3s{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_njMd{display:flex;flex-direction:column;height:100%;padding-top:var(--ifm-navbar-height);width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_wUlq{padding-top:0}.sidebarHidden_VK0M{opacity:0;visibility:hidden}.sidebarLogo_isFc{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_isFc img{height:2rem;margin-right:.5rem}.expandButton_m80_{align-items:center;display:flex;height:100%;justify-content:center;position:absolute;right:0;top:0;transition:background-color var(--ifm-transition-fast) ease;width:100%}[dir=rtl] .expandButtonIcon_BlDH{transform:rotate(180deg)}.docSidebarContainer_b6E3{border-right:1px solid var(--ifm-toc-border-color);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_b3ry{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.sidebarViewport_Xe31{height:100%;max-height:100vh;position:sticky;top:0}.docMainContainer_gTbr{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_Uz_u{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_czyv{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_DEke,.footer__link-separator,.navbar__item,.tableOfContents_bqdL{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.searchBox_ZlJk{position:absolute;right:var(--ifm-navbar-padding-horizontal)}.docItemContainer_F8PC{padding:0 .3rem}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}}@media (hover:hover){.backToTopButton_sjWU:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media (prefers-reduced-motion:reduce){:root{--ifm-transition-fast:0ms;--ifm-transition-slow:0ms}}@media print{.announcementBar_mb4j,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_ITEo{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_e6Vv{white-space:pre-wrap}} \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/images/QR-2786114c9e62771d79a0e3f73408dc6e.png b/packages/noco-docs/dist/assets/images/QR-2786114c9e62771d79a0e3f73408dc6e.png new file mode 100644 index 0000000000..14be0c0c52 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/QR-2786114c9e62771d79a0e3f73408dc6e.png differ diff --git a/packages/noco-docs/dist/assets/images/account-settings-3f8b281c933be2349ddb19f0fa8660e8.png b/packages/noco-docs/dist/assets/images/account-settings-3f8b281c933be2349ddb19f0fa8660e8.png new file mode 100644 index 0000000000..77b8df391f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/account-settings-3f8b281c933be2349ddb19f0fa8660e8.png differ diff --git a/packages/noco-docs/dist/assets/images/add-link-modal-fde55380d59bdd5d597bd38e3330dbbd.png b/packages/noco-docs/dist/assets/images/add-link-modal-fde55380d59bdd5d597bd38e3330dbbd.png new file mode 100644 index 0000000000..eed317543b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/add-link-modal-fde55380d59bdd5d597bd38e3330dbbd.png differ diff --git a/packages/noco-docs/dist/assets/images/airtable-api-key-877ce3d40ba4f18389ceede7c4fa50bb.png b/packages/noco-docs/dist/assets/images/airtable-api-key-877ce3d40ba4f18389ceede7c4fa50bb.png new file mode 100644 index 0000000000..eed641ad87 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/airtable-api-key-877ce3d40ba4f18389ceede7c4fa50bb.png differ diff --git a/packages/noco-docs/dist/assets/images/airtable-share-base-c48341713680e60f512768432df19fec.png b/packages/noco-docs/dist/assets/images/airtable-share-base-c48341713680e60f512768432df19fec.png new file mode 100644 index 0000000000..fe250b7ca2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/airtable-share-base-c48341713680e60f512768432df19fec.png differ diff --git a/packages/noco-docs/dist/assets/images/api-token-1-6806c5ece8a92717e786e0fa4e824081.png b/packages/noco-docs/dist/assets/images/api-token-1-6806c5ece8a92717e786e0fa4e824081.png new file mode 100644 index 0000000000..0ce6938614 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/api-token-1-6806c5ece8a92717e786e0fa4e824081.png differ diff --git a/packages/noco-docs/dist/assets/images/api-token-2-378e04140d53a68be86d17d3561c8591.png b/packages/noco-docs/dist/assets/images/api-token-2-378e04140d53a68be86d17d3561c8591.png new file mode 100644 index 0000000000..0a9d355d1d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/api-token-2-378e04140d53a68be86d17d3561c8591.png differ diff --git a/packages/noco-docs/dist/assets/images/api-token-3-493d6baa74b64ec5d6a00c20d6806fd4.png b/packages/noco-docs/dist/assets/images/api-token-3-493d6baa74b64ec5d6a00c20d6806fd4.png new file mode 100644 index 0000000000..78b8a42be6 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/api-token-3-493d6baa74b64ec5d6a00c20d6806fd4.png differ diff --git a/packages/noco-docs/dist/assets/images/api-token-4-1a6120f496ccdfca799987a4dc8f9027.png b/packages/noco-docs/dist/assets/images/api-token-4-1a6120f496ccdfca799987a4dc8f9027.png new file mode 100644 index 0000000000..a36c1ae8aa Binary files /dev/null and b/packages/noco-docs/dist/assets/images/api-token-4-1a6120f496ccdfca799987a4dc8f9027.png differ diff --git a/packages/noco-docs/dist/assets/images/attachment-07fc09954116d2fc22ef8e2f25b41688.png b/packages/noco-docs/dist/assets/images/attachment-07fc09954116d2fc22ef8e2f25b41688.png new file mode 100644 index 0000000000..39316001fc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/attachment-07fc09954116d2fc22ef8e2f25b41688.png differ diff --git a/packages/noco-docs/dist/assets/images/attachment-cell-63aeff518251334ef9ebdd018c752b1b.png b/packages/noco-docs/dist/assets/images/attachment-cell-63aeff518251334ef9ebdd018c752b1b.png new file mode 100644 index 0000000000..ed7c6e68a2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/attachment-cell-63aeff518251334ef9ebdd018c752b1b.png differ diff --git a/packages/noco-docs/dist/assets/images/attachment-cell-display-d0e036b051275db64f5a516ad8c604b5.png b/packages/noco-docs/dist/assets/images/attachment-cell-display-d0e036b051275db64f5a516ad8c604b5.png new file mode 100644 index 0000000000..801d391e63 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/attachment-cell-display-d0e036b051275db64f5a516ad8c604b5.png differ diff --git a/packages/noco-docs/dist/assets/images/attachment-expand-bf0a44f3b002a3efa120b55211ac4d3c.png b/packages/noco-docs/dist/assets/images/attachment-expand-bf0a44f3b002a3efa120b55211ac4d3c.png new file mode 100644 index 0000000000..7d39aa05db Binary files /dev/null and b/packages/noco-docs/dist/assets/images/attachment-expand-bf0a44f3b002a3efa120b55211ac4d3c.png differ diff --git a/packages/noco-docs/dist/assets/images/audit-8486b02fd5d59268886ab05c697bd747.png b/packages/noco-docs/dist/assets/images/audit-8486b02fd5d59268886ab05c697bd747.png new file mode 100644 index 0000000000..4634d489db Binary files /dev/null and b/packages/noco-docs/dist/assets/images/audit-8486b02fd5d59268886ab05c697bd747.png differ diff --git a/packages/noco-docs/dist/assets/images/audit-logs-c781137e1b06c22923d2da20ca02fcf0.png b/packages/noco-docs/dist/assets/images/audit-logs-c781137e1b06c22923d2da20ca02fcf0.png new file mode 100644 index 0000000000..0d23ca1933 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/audit-logs-c781137e1b06c22923d2da20ca02fcf0.png differ diff --git a/packages/noco-docs/dist/assets/images/banner-0a7a485798fc16881259280a1227725d.png b/packages/noco-docs/dist/assets/images/banner-0a7a485798fc16881259280a1227725d.png new file mode 100644 index 0000000000..27d7254d52 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/banner-0a7a485798fc16881259280a1227725d.png differ diff --git a/packages/noco-docs/dist/assets/images/barcode-cell-5e6612ed1460a61d5e51629f7b068d35.png b/packages/noco-docs/dist/assets/images/barcode-cell-5e6612ed1460a61d5e51629f7b068d35.png new file mode 100644 index 0000000000..fbb3c59ed9 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/barcode-cell-5e6612ed1460a61d5e51629f7b068d35.png differ diff --git a/packages/noco-docs/dist/assets/images/barcode-cfb8c7c7c1b36117936f6faebfe6c05c.png b/packages/noco-docs/dist/assets/images/barcode-cfb8c7c7c1b36117936f6faebfe6c05c.png new file mode 100644 index 0000000000..c26aad8cf8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/barcode-cfb8c7c7c1b36117936f6faebfe6c05c.png differ diff --git a/packages/noco-docs/dist/assets/images/barcode-expand-29f49619f7b7dd014841681482c8a8af.png b/packages/noco-docs/dist/assets/images/barcode-expand-29f49619f7b7dd014841681482c8a8af.png new file mode 100644 index 0000000000..b10ba5704a Binary files /dev/null and b/packages/noco-docs/dist/assets/images/barcode-expand-29f49619f7b7dd014841681482c8a8af.png differ diff --git a/packages/noco-docs/dist/assets/images/base-collaboration-93b92d0cc8674c0bb061c23b121776af.png b/packages/noco-docs/dist/assets/images/base-collaboration-93b92d0cc8674c0bb061c23b121776af.png new file mode 100644 index 0000000000..ef7be176d9 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-collaboration-93b92d0cc8674c0bb061c23b121776af.png differ diff --git a/packages/noco-docs/dist/assets/images/base-context-menu-cc34dd7848044be500746b6e4855a535.png b/packages/noco-docs/dist/assets/images/base-context-menu-cc34dd7848044be500746b6e4855a535.png new file mode 100644 index 0000000000..a90cd0f70d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-context-menu-cc34dd7848044be500746b6e4855a535.png differ diff --git a/packages/noco-docs/dist/assets/images/base-create-1-5c38376e4bef5ed7673326e42e870d29.png b/packages/noco-docs/dist/assets/images/base-create-1-5c38376e4bef5ed7673326e42e870d29.png new file mode 100644 index 0000000000..e3e3a01a78 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-create-1-5c38376e4bef5ed7673326e42e870d29.png differ diff --git a/packages/noco-docs/dist/assets/images/base-create-2-f1008bb9d469f827666fb2809ceeda83.png b/packages/noco-docs/dist/assets/images/base-create-2-f1008bb9d469f827666fb2809ceeda83.png new file mode 100644 index 0000000000..b8f91844e6 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-create-2-f1008bb9d469f827666fb2809ceeda83.png differ diff --git a/packages/noco-docs/dist/assets/images/base-dashboard-40e8017a6e324432c160ae8fa388abc5.png b/packages/noco-docs/dist/assets/images/base-dashboard-40e8017a6e324432c160ae8fa388abc5.png new file mode 100644 index 0000000000..07e512f4e3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-dashboard-40e8017a6e324432c160ae8fa388abc5.png differ diff --git a/packages/noco-docs/dist/assets/images/base-delete-84305d1f43b929d0a95a9e291dc98327.png b/packages/noco-docs/dist/assets/images/base-delete-84305d1f43b929d0a95a9e291dc98327.png new file mode 100644 index 0000000000..98679cc639 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-delete-84305d1f43b929d0a95a9e291dc98327.png differ diff --git a/packages/noco-docs/dist/assets/images/base-duplicate-bb986db4421e157d466819cf8482a502.png b/packages/noco-docs/dist/assets/images/base-duplicate-bb986db4421e157d466819cf8482a502.png new file mode 100644 index 0000000000..5239f2efba Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-duplicate-bb986db4421e157d466819cf8482a502.png differ diff --git a/packages/noco-docs/dist/assets/images/base-import-airtable-1-cd2ddbebd57b9c068abe45423b77615e.png b/packages/noco-docs/dist/assets/images/base-import-airtable-1-cd2ddbebd57b9c068abe45423b77615e.png new file mode 100644 index 0000000000..e24478644a Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-import-airtable-1-cd2ddbebd57b9c068abe45423b77615e.png differ diff --git a/packages/noco-docs/dist/assets/images/base-import-airtable-2-6de583f3222e87d2fdc8cf337d7d1681.png b/packages/noco-docs/dist/assets/images/base-import-airtable-2-6de583f3222e87d2fdc8cf337d7d1681.png new file mode 100644 index 0000000000..52d64ae5c8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-import-airtable-2-6de583f3222e87d2fdc8cf337d7d1681.png differ diff --git a/packages/noco-docs/dist/assets/images/base-import-airtable-3-f4b0605c3afdabdf6d54e8ec5504fe5b.png b/packages/noco-docs/dist/assets/images/base-import-airtable-3-f4b0605c3afdabdf6d54e8ec5504fe5b.png new file mode 100644 index 0000000000..420cbd3d10 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-import-airtable-3-f4b0605c3afdabdf6d54e8ec5504fe5b.png differ diff --git a/packages/noco-docs/dist/assets/images/base-import-from-dashboard-1-d84f2e26bb351110ca88c3e6e11e95ce.png b/packages/noco-docs/dist/assets/images/base-import-from-dashboard-1-d84f2e26bb351110ca88c3e6e11e95ce.png new file mode 100644 index 0000000000..619f8d7bca Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-import-from-dashboard-1-d84f2e26bb351110ca88c3e6e11e95ce.png differ diff --git a/packages/noco-docs/dist/assets/images/base-import-from-dashboard-2-d11037cc3192b2d1de4789cc2e03289f.png b/packages/noco-docs/dist/assets/images/base-import-from-dashboard-2-d11037cc3192b2d1de4789cc2e03289f.png new file mode 100644 index 0000000000..062033dc0b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-import-from-dashboard-2-d11037cc3192b2d1de4789cc2e03289f.png differ diff --git a/packages/noco-docs/dist/assets/images/base-relations-bea924dc05a2e6fd0c5b27372e8a9e2c.png b/packages/noco-docs/dist/assets/images/base-relations-bea924dc05a2e6fd0c5b27372e8a9e2c.png new file mode 100644 index 0000000000..97d2960ec6 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-relations-bea924dc05a2e6fd0c5b27372e8a9e2c.png differ diff --git a/packages/noco-docs/dist/assets/images/base-remove-from-starred-2850121608f7a1225bbf8b8369259a26.png b/packages/noco-docs/dist/assets/images/base-remove-from-starred-2850121608f7a1225bbf8b8369259a26.png new file mode 100644 index 0000000000..b0ed12597d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-remove-from-starred-2850121608f7a1225bbf8b8369259a26.png differ diff --git a/packages/noco-docs/dist/assets/images/base-rename-0fec27c17c50903fa633604dd921a617.png b/packages/noco-docs/dist/assets/images/base-rename-0fec27c17c50903fa633604dd921a617.png new file mode 100644 index 0000000000..7d3dc0c22c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-rename-0fec27c17c50903fa633604dd921a617.png differ diff --git a/packages/noco-docs/dist/assets/images/base-settings-0d3389f235cef4d4fc1b5b673ea3c204.png b/packages/noco-docs/dist/assets/images/base-settings-0d3389f235cef4d4fc1b5b673ea3c204.png new file mode 100644 index 0000000000..7903d1747c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-settings-0d3389f235cef4d4fc1b5b673ea3c204.png differ diff --git a/packages/noco-docs/dist/assets/images/base-starred-0847b6638b1ed750ffd5ee5f9b3c4aad.png b/packages/noco-docs/dist/assets/images/base-starred-0847b6638b1ed750ffd5ee5f9b3c4aad.png new file mode 100644 index 0000000000..c36f99d1de Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-starred-0847b6638b1ed750ffd5ee5f9b3c4aad.png differ diff --git a/packages/noco-docs/dist/assets/images/base-swagger-66b41d2cd5d5e0a8f51ff026b6cfab85.png b/packages/noco-docs/dist/assets/images/base-swagger-66b41d2cd5d5e0a8f51ff026b6cfab85.png new file mode 100644 index 0000000000..c719c68bc8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/base-swagger-66b41d2cd5d5e0a8f51ff026b6cfab85.png differ diff --git a/packages/noco-docs/dist/assets/images/bulk-update-1-abf0bea8ffcee3689a6b4c7bc912a92b.png b/packages/noco-docs/dist/assets/images/bulk-update-1-abf0bea8ffcee3689a6b4c7bc912a92b.png new file mode 100644 index 0000000000..3d621bf5e7 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/bulk-update-1-abf0bea8ffcee3689a6b4c7bc912a92b.png differ diff --git a/packages/noco-docs/dist/assets/images/bulk-update-2-8ad8314489b9cb76d57cdddddcf2ab85.png b/packages/noco-docs/dist/assets/images/bulk-update-2-8ad8314489b9cb76d57cdddddcf2ab85.png new file mode 100644 index 0000000000..5488ea8c0a Binary files /dev/null and b/packages/noco-docs/dist/assets/images/bulk-update-2-8ad8314489b9cb76d57cdddddcf2ab85.png differ diff --git a/packages/noco-docs/dist/assets/images/bulk-update-3-e8c66d72a7fdbe1247482ba2021aa0f5.png b/packages/noco-docs/dist/assets/images/bulk-update-3-e8c66d72a7fdbe1247482ba2021aa0f5.png new file mode 100644 index 0000000000..93e107ef2b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/bulk-update-3-e8c66d72a7fdbe1247482ba2021aa0f5.png differ diff --git a/packages/noco-docs/dist/assets/images/change-cover-image-b15b7e243d6f759f98b53af619ffc93f.png b/packages/noco-docs/dist/assets/images/change-cover-image-b15b7e243d6f759f98b53af619ffc93f.png new file mode 100644 index 0000000000..ff035995a0 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/change-cover-image-b15b7e243d6f759f98b53af619ffc93f.png differ diff --git a/packages/noco-docs/dist/assets/images/checkbox-8420bfd3b3068af0665f7d29b884936a.png b/packages/noco-docs/dist/assets/images/checkbox-8420bfd3b3068af0665f7d29b884936a.png new file mode 100644 index 0000000000..74a46319e8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/checkbox-8420bfd3b3068af0665f7d29b884936a.png differ diff --git a/packages/noco-docs/dist/assets/images/checkbox-icon-50a0b9c5edbae35ca181d433419c943c.png b/packages/noco-docs/dist/assets/images/checkbox-icon-50a0b9c5edbae35ca181d433419c943c.png new file mode 100644 index 0000000000..181bf72035 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/checkbox-icon-50a0b9c5edbae35ca181d433419c943c.png differ diff --git a/packages/noco-docs/dist/assets/images/cmd-k-a1a5afe1b0973128014fb87a3c909982.png b/packages/noco-docs/dist/assets/images/cmd-k-a1a5afe1b0973128014fb87a3c909982.png new file mode 100644 index 0000000000..b12408fb5a Binary files /dev/null and b/packages/noco-docs/dist/assets/images/cmd-k-a1a5afe1b0973128014fb87a3c909982.png differ diff --git a/packages/noco-docs/dist/assets/images/copy-proj-info-f059b5a1330cd599d89ba88d6714883c.png b/packages/noco-docs/dist/assets/images/copy-proj-info-f059b5a1330cd599d89ba88d6714883c.png new file mode 100644 index 0000000000..608db0fe5c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/copy-proj-info-f059b5a1330cd599d89ba88d6714883c.png differ diff --git a/packages/noco-docs/dist/assets/images/create-view-1-336b23c8d721344a1924560932a8ca6f.png b/packages/noco-docs/dist/assets/images/create-view-1-336b23c8d721344a1924560932a8ca6f.png new file mode 100644 index 0000000000..89bf00c321 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/create-view-1-336b23c8d721344a1924560932a8ca6f.png differ diff --git a/packages/noco-docs/dist/assets/images/create-view-2-b1e2ae57004dc07a6bf2fc3e9121f7f9.png b/packages/noco-docs/dist/assets/images/create-view-2-b1e2ae57004dc07a6bf2fc3e9121f7f9.png new file mode 100644 index 0000000000..f729d3db50 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/create-view-2-b1e2ae57004dc07a6bf2fc3e9121f7f9.png differ diff --git a/packages/noco-docs/dist/assets/images/create-webhook-1-be523f2a91b6829cd8d82915d07e92e4.png b/packages/noco-docs/dist/assets/images/create-webhook-1-be523f2a91b6829cd8d82915d07e92e4.png new file mode 100644 index 0000000000..0c6d91a2bd Binary files /dev/null and b/packages/noco-docs/dist/assets/images/create-webhook-1-be523f2a91b6829cd8d82915d07e92e4.png differ diff --git a/packages/noco-docs/dist/assets/images/create-webhook-2-ae6af25bd288d16427ddbcd283a32eb2.png b/packages/noco-docs/dist/assets/images/create-webhook-2-ae6af25bd288d16427ddbcd283a32eb2.png new file mode 100644 index 0000000000..149e580f6f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/create-webhook-2-ae6af25bd288d16427ddbcd283a32eb2.png differ diff --git a/packages/noco-docs/dist/assets/images/currency-593bbfd7821dee235c349581f898acef.png b/packages/noco-docs/dist/assets/images/currency-593bbfd7821dee235c349581f898acef.png new file mode 100644 index 0000000000..a0d60ecde1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/currency-593bbfd7821dee235c349581f898acef.png differ diff --git a/packages/noco-docs/dist/assets/images/currency-cell-display-d3e0309151ff2bb7cc72a48861a565bd.png b/packages/noco-docs/dist/assets/images/currency-cell-display-d3e0309151ff2bb7cc72a48861a565bd.png new file mode 100644 index 0000000000..dc019c6961 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/currency-cell-display-d3e0309151ff2bb7cc72a48861a565bd.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-2-85c6555101f32ed24b6ad18937e62f96.png b/packages/noco-docs/dist/assets/images/data-source-2-85c6555101f32ed24b6ad18937e62f96.png new file mode 100644 index 0000000000..0dfb695bb1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-2-85c6555101f32ed24b6ad18937e62f96.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-3-702f8672d11868999be1db2082089c6d.png b/packages/noco-docs/dist/assets/images/data-source-3-702f8672d11868999be1db2082089c6d.png new file mode 100644 index 0000000000..77346e40fe Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-3-702f8672d11868999be1db2082089c6d.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-4-0d1aded7e8c2f19c54cbd3b1ae404194.png b/packages/noco-docs/dist/assets/images/data-source-4-0d1aded7e8c2f19c54cbd3b1ae404194.png new file mode 100644 index 0000000000..c41c21752f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-4-0d1aded7e8c2f19c54cbd3b1ae404194.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-a136125c9bc5031ada9df69ba6484d5a.png b/packages/noco-docs/dist/assets/images/data-source-a136125c9bc5031ada9df69ba6484d5a.png new file mode 100644 index 0000000000..3311b364dc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-a136125c9bc5031ada9df69ba6484d5a.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-edit-c8839805c570f2eaef08012a94f31246.png b/packages/noco-docs/dist/assets/images/data-source-edit-c8839805c570f2eaef08012a94f31246.png new file mode 100644 index 0000000000..314df70957 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-edit-c8839805c570f2eaef08012a94f31246.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-meta-sync-04cd020f9b20939911dab34bb2a85820.png b/packages/noco-docs/dist/assets/images/data-source-meta-sync-04cd020f9b20939911dab34bb2a85820.png new file mode 100644 index 0000000000..70c10a1458 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-meta-sync-04cd020f9b20939911dab34bb2a85820.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-post-sync-82f4dc6812378d0f4b119efaa7761735.png b/packages/noco-docs/dist/assets/images/data-source-post-sync-82f4dc6812378d0f4b119efaa7761735.png new file mode 100644 index 0000000000..bec1f18dec Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-post-sync-82f4dc6812378d0f4b119efaa7761735.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-unlink-517f290e2d4be67315dd4336bd699ce4.png b/packages/noco-docs/dist/assets/images/data-source-unlink-517f290e2d4be67315dd4336bd699ce4.png new file mode 100644 index 0000000000..8172914464 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-unlink-517f290e2d4be67315dd4336bd699ce4.png differ diff --git a/packages/noco-docs/dist/assets/images/data-source-visibility-4c2aa0d95c0280597aac2754392abaae.png b/packages/noco-docs/dist/assets/images/data-source-visibility-4c2aa0d95c0280597aac2754392abaae.png new file mode 100644 index 0000000000..b7c382e7f4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/data-source-visibility-4c2aa0d95c0280597aac2754392abaae.png differ diff --git a/packages/noco-docs/dist/assets/images/date-6857a2dda0ce3f3a8feffcb5bb4e44f0.png b/packages/noco-docs/dist/assets/images/date-6857a2dda0ce3f3a8feffcb5bb4e44f0.png new file mode 100644 index 0000000000..99dba480c8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/date-6857a2dda0ce3f3a8feffcb5bb4e44f0.png differ diff --git a/packages/noco-docs/dist/assets/images/datetime-a8439dd8500ad12059dc56b8598a75fd.png b/packages/noco-docs/dist/assets/images/datetime-a8439dd8500ad12059dc56b8598a75fd.png new file mode 100644 index 0000000000..731eb2b9e6 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/datetime-a8439dd8500ad12059dc56b8598a75fd.png differ diff --git a/packages/noco-docs/dist/assets/images/decimal-e3bb0ca87ff8e3b13a94dbbb461f56f2.png b/packages/noco-docs/dist/assets/images/decimal-e3bb0ca87ff8e3b13a94dbbb461f56f2.png new file mode 100644 index 0000000000..00c81cb863 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/decimal-e3bb0ca87ff8e3b13a94dbbb461f56f2.png differ diff --git a/packages/noco-docs/dist/assets/images/delete-row-2ef2b7c113b757dabf1542106e79f2db.png b/packages/noco-docs/dist/assets/images/delete-row-2ef2b7c113b757dabf1542106e79f2db.png new file mode 100644 index 0000000000..9c1c5238fa Binary files /dev/null and b/packages/noco-docs/dist/assets/images/delete-row-2ef2b7c113b757dabf1542106e79f2db.png differ diff --git a/packages/noco-docs/dist/assets/images/delete-row-bulk-70240cbb8e8a5e84e368e9ff11b6e5c0.png b/packages/noco-docs/dist/assets/images/delete-row-bulk-70240cbb8e8a5e84e368e9ff11b6e5c0.png new file mode 100644 index 0000000000..9813fe94ef Binary files /dev/null and b/packages/noco-docs/dist/assets/images/delete-row-bulk-70240cbb8e8a5e84e368e9ff11b6e5c0.png differ diff --git a/packages/noco-docs/dist/assets/images/delete-view-confirmation-1afddd0d2975dde5d235b6ee04893b59.png b/packages/noco-docs/dist/assets/images/delete-view-confirmation-1afddd0d2975dde5d235b6ee04893b59.png new file mode 100644 index 0000000000..730f5964e0 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/delete-view-confirmation-1afddd0d2975dde5d235b6ee04893b59.png differ diff --git a/packages/noco-docs/dist/assets/images/details-api-snippet-78906ef3b2248845b8955eed84a3031e.png b/packages/noco-docs/dist/assets/images/details-api-snippet-78906ef3b2248845b8955eed84a3031e.png new file mode 100644 index 0000000000..f59e9c98fa Binary files /dev/null and b/packages/noco-docs/dist/assets/images/details-api-snippet-78906ef3b2248845b8955eed84a3031e.png differ diff --git a/packages/noco-docs/dist/assets/images/details-field-editor-6b80e39a53b09c20af27e53b9777ea9a.png b/packages/noco-docs/dist/assets/images/details-field-editor-6b80e39a53b09c20af27e53b9777ea9a.png new file mode 100644 index 0000000000..943d7ff2bc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/details-field-editor-6b80e39a53b09c20af27e53b9777ea9a.png differ diff --git a/packages/noco-docs/dist/assets/images/details-relations-0716794b3e749928f581e2a2f78931a3.png b/packages/noco-docs/dist/assets/images/details-relations-0716794b3e749928f581e2a2f78931a3.png new file mode 100644 index 0000000000..268465a9e3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/details-relations-0716794b3e749928f581e2a2f78931a3.png differ diff --git a/packages/noco-docs/dist/assets/images/details-tab-8aeca1f70ead223a641ead51b82e97f5.png b/packages/noco-docs/dist/assets/images/details-tab-8aeca1f70ead223a641ead51b82e97f5.png new file mode 100644 index 0000000000..40a0be52eb Binary files /dev/null and b/packages/noco-docs/dist/assets/images/details-tab-8aeca1f70ead223a641ead51b82e97f5.png differ diff --git a/packages/noco-docs/dist/assets/images/details-webhook-834a408cf5a6b9d711ac6ab63a1eaa4a.png b/packages/noco-docs/dist/assets/images/details-webhook-834a408cf5a6b9d711ac6ab63a1eaa4a.png new file mode 100644 index 0000000000..ceffbf4f0b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/details-webhook-834a408cf5a6b9d711ac6ab63a1eaa4a.png differ diff --git a/packages/noco-docs/dist/assets/images/display-value-23916141d8a6d88f998f903210fc12de.png b/packages/noco-docs/dist/assets/images/display-value-23916141d8a6d88f998f903210fc12de.png new file mode 100644 index 0000000000..fc714730b8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/display-value-23916141d8a6d88f998f903210fc12de.png differ diff --git a/packages/noco-docs/dist/assets/images/display-value-in-linked-record-a2d5ae449c2be23c1b31d60beb97d063.png b/packages/noco-docs/dist/assets/images/display-value-in-linked-record-a2d5ae449c2be23c1b31d60beb97d063.png new file mode 100644 index 0000000000..213e7ee4f8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/display-value-in-linked-record-a2d5ae449c2be23c1b31d60beb97d063.png differ diff --git a/packages/noco-docs/dist/assets/images/download-7abfaf6c07a06e7669524f44c1832cc3.png b/packages/noco-docs/dist/assets/images/download-7abfaf6c07a06e7669524f44c1832cc3.png new file mode 100644 index 0000000000..17b8a32f21 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/download-7abfaf6c07a06e7669524f44c1832cc3.png differ diff --git a/packages/noco-docs/dist/assets/images/duplicate-confirmation-319dac1b1b6351e9c1da8019160cd854.png b/packages/noco-docs/dist/assets/images/duplicate-confirmation-319dac1b1b6351e9c1da8019160cd854.png new file mode 100644 index 0000000000..6d00794980 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/duplicate-confirmation-319dac1b1b6351e9c1da8019160cd854.png differ diff --git a/packages/noco-docs/dist/assets/images/duration-cb2c98c0e3d1318471767cf055e457ce.png b/packages/noco-docs/dist/assets/images/duration-cb2c98c0e3d1318471767cf055e457ce.png new file mode 100644 index 0000000000..3f65d9fc9d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/duration-cb2c98c0e3d1318471767cf055e457ce.png differ diff --git a/packages/noco-docs/dist/assets/images/edit-base-9071d099ef7f2dcb99604c31f0ab60f8.png b/packages/noco-docs/dist/assets/images/edit-base-9071d099ef7f2dcb99604c31f0ab60f8.png new file mode 100644 index 0000000000..1de6dfd463 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/edit-base-9071d099ef7f2dcb99604c31f0ab60f8.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-1-032b8644d896ccd06472a3dbdf335c7f.png b/packages/noco-docs/dist/assets/images/editor-1-032b8644d896ccd06472a3dbdf335c7f.png new file mode 100644 index 0000000000..611c7138d4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-1-032b8644d896ccd06472a3dbdf335c7f.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-2-32a839ed9117843e3405f9f74d2b0d69.png b/packages/noco-docs/dist/assets/images/editor-2-32a839ed9117843e3405f9f74d2b0d69.png new file mode 100644 index 0000000000..e5bf748eb4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-2-32a839ed9117843e3405f9f74d2b0d69.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-3-821415bc38b70b7c92bd9b8fac9a377f.png b/packages/noco-docs/dist/assets/images/editor-3-821415bc38b70b7c92bd9b8fac9a377f.png new file mode 100644 index 0000000000..b8449d8179 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-3-821415bc38b70b7c92bd9b8fac9a377f.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-4-a14d5c9b87c37429d161a93a236c66ea.png b/packages/noco-docs/dist/assets/images/editor-4-a14d5c9b87c37429d161a93a236c66ea.png new file mode 100644 index 0000000000..b006a70121 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-4-a14d5c9b87c37429d161a93a236c66ea.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-6-b33d2e2179328483dfd8b116afdf8328.png b/packages/noco-docs/dist/assets/images/editor-6-b33d2e2179328483dfd8b116afdf8328.png new file mode 100644 index 0000000000..4eaead80e1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-6-b33d2e2179328483dfd8b116afdf8328.png differ diff --git a/packages/noco-docs/dist/assets/images/editor-7-2b64de97ac28d7b5818629d900f04947.png b/packages/noco-docs/dist/assets/images/editor-7-2b64de97ac28d7b5818629d900f04947.png new file mode 100644 index 0000000000..612b19435d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/editor-7-2b64de97ac28d7b5818629d900f04947.png differ diff --git a/packages/noco-docs/dist/assets/images/email-c71401cef80f194154a62a734ca9ccab.png b/packages/noco-docs/dist/assets/images/email-c71401cef80f194154a62a734ca9ccab.png new file mode 100644 index 0000000000..069ed67c01 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/email-c71401cef80f194154a62a734ca9ccab.png differ diff --git a/packages/noco-docs/dist/assets/images/engineering-search-by-tags-9453d5cf2d1534c2f812c7aee697fe43.png b/packages/noco-docs/dist/assets/images/engineering-search-by-tags-9453d5cf2d1534c2f812c7aee697fe43.png new file mode 100644 index 0000000000..bff0b02246 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/engineering-search-by-tags-9453d5cf2d1534c2f812c7aee697fe43.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-context-menu-4f9a5bab8a49e95e5f9f38263099f817.png b/packages/noco-docs/dist/assets/images/fields-context-menu-4f9a5bab8a49e95e5f9f38263099f817.png new file mode 100644 index 0000000000..22d649b85f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-context-menu-4f9a5bab8a49e95e5f9f38263099f817.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-edit-2-c4397fd6767bb55f5c93a6ccb533a036.png b/packages/noco-docs/dist/assets/images/fields-edit-2-c4397fd6767bb55f5c93a6ccb533a036.png new file mode 100644 index 0000000000..19ed5a7ff1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-edit-2-c4397fd6767bb55f5c93a6ccb533a036.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-edit-3-29f474ae3de21b74e08f117c6e43a1ea.png b/packages/noco-docs/dist/assets/images/fields-edit-3-29f474ae3de21b74e08f117c6e43a1ea.png new file mode 100644 index 0000000000..59a1554259 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-edit-3-29f474ae3de21b74e08f117c6e43a1ea.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-edit-4-4ce76b407ae0704a235bbb602afde349.png b/packages/noco-docs/dist/assets/images/fields-edit-4-4ce76b407ae0704a235bbb602afde349.png new file mode 100644 index 0000000000..c54902c1ab Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-edit-4-4ce76b407ae0704a235bbb602afde349.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-hide-4cb4fc24e858aa3cc1b1e0f3b6b2e697.png b/packages/noco-docs/dist/assets/images/fields-hide-4cb4fc24e858aa3cc1b1e0f3b6b2e697.png new file mode 100644 index 0000000000..0354bfcc1c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-hide-4cb4fc24e858aa3cc1b1e0f3b6b2e697.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-reorder-6377c71bdded118c93410ae6d956fbd2.png b/packages/noco-docs/dist/assets/images/fields-reorder-6377c71bdded118c93410ae6d956fbd2.png new file mode 100644 index 0000000000..0f64c9596d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-reorder-6377c71bdded118c93410ae6d956fbd2.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-show-system-fields-6e11b087d9ad724171b108988da62eeb.png b/packages/noco-docs/dist/assets/images/fields-show-system-fields-6e11b087d9ad724171b108988da62eeb.png new file mode 100644 index 0000000000..3bb293f128 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-show-system-fields-6e11b087d9ad724171b108988da62eeb.png differ diff --git a/packages/noco-docs/dist/assets/images/fields-width-b843c90fee1c762db57dd39a37c931cf.png b/packages/noco-docs/dist/assets/images/fields-width-b843c90fee1c762db57dd39a37c931cf.png new file mode 100644 index 0000000000..44d9debaf1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/fields-width-b843c90fee1c762db57dd39a37c931cf.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-1-6d82d6adaa0df9338b4c29b6376de557.png b/packages/noco-docs/dist/assets/images/filter-1-6d82d6adaa0df9338b4c29b6376de557.png new file mode 100644 index 0000000000..0e3ac05a6c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-1-6d82d6adaa0df9338b4c29b6376de557.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-2-51019e4c6061e78b8b3df002cf6db8f5.png b/packages/noco-docs/dist/assets/images/filter-2-51019e4c6061e78b8b3df002cf6db8f5.png new file mode 100644 index 0000000000..162bca5c47 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-2-51019e4c6061e78b8b3df002cf6db8f5.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-3-f6db70222f513a250bf4b0bd36e3c158.png b/packages/noco-docs/dist/assets/images/filter-3-f6db70222f513a250bf4b0bd36e3c158.png new file mode 100644 index 0000000000..847f4f101a Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-3-f6db70222f513a250bf4b0bd36e3c158.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-4-058ba55633cb86f5b1a5431c1ee8766d.png b/packages/noco-docs/dist/assets/images/filter-4-058ba55633cb86f5b1a5431c1ee8766d.png new file mode 100644 index 0000000000..d8659ddcad Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-4-058ba55633cb86f5b1a5431c1ee8766d.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-5-e2ea016b369c57c5787ec7c4259f7fc6.png b/packages/noco-docs/dist/assets/images/filter-5-e2ea016b369c57c5787ec7c4259f7fc6.png new file mode 100644 index 0000000000..58ec38fe9d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-5-e2ea016b369c57c5787ec7c4259f7fc6.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-is-blank-93b9ad8f1a235a7a0c0e198c076a7caf.png b/packages/noco-docs/dist/assets/images/filter-is-blank-93b9ad8f1a235a7a0c0e198c076a7caf.png new file mode 100644 index 0000000000..24775f83d4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-is-blank-93b9ad8f1a235a7a0c0e198c076a7caf.png differ diff --git a/packages/noco-docs/dist/assets/images/filter-is-null-empty-1341b5cc9439c361df4992106ff00ad6.png b/packages/noco-docs/dist/assets/images/filter-is-null-empty-1341b5cc9439c361df4992106ff00ad6.png new file mode 100644 index 0000000000..ac7f481da2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/filter-is-null-empty-1341b5cc9439c361df4992106ff00ad6.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-94e8ab4d97828f668019451e303409c0.png b/packages/noco-docs/dist/assets/images/form-view-94e8ab4d97828f668019451e303409c0.png new file mode 100644 index 0000000000..03eba6f8b9 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-94e8ab4d97828f668019451e303409c0.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-add-field-26399d5da0f299a76f045286f4b70690.png b/packages/noco-docs/dist/assets/images/form-view-add-field-26399d5da0f299a76f045286f4b70690.png new file mode 100644 index 0000000000..7d84b87d07 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-add-field-26399d5da0f299a76f045286f4b70690.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-field-label-help-text-aa69425b678df2503add4a96f926e238.png b/packages/noco-docs/dist/assets/images/form-view-field-label-help-text-aa69425b678df2503add4a96f926e238.png new file mode 100644 index 0000000000..3c55f06d95 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-field-label-help-text-aa69425b678df2503add4a96f926e238.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-layout-348a2dba9c9ceafe6911477b7e530283.png b/packages/noco-docs/dist/assets/images/form-view-layout-348a2dba9c9ceafe6911477b7e530283.png new file mode 100644 index 0000000000..d47ffe1c4b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-layout-348a2dba9c9ceafe6911477b7e530283.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-remove-field-efc0f8d307ab234bfea21fa9c467dfd6.png b/packages/noco-docs/dist/assets/images/form-view-remove-field-efc0f8d307ab234bfea21fa9c467dfd6.png new file mode 100644 index 0000000000..221c75b063 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-remove-field-efc0f8d307ab234bfea21fa9c467dfd6.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-required-field-62f44205bdd070ef8c4c8d30de181286.png b/packages/noco-docs/dist/assets/images/form-view-required-field-62f44205bdd070ef8c4c8d30de181286.png new file mode 100644 index 0000000000..e8c9e0ddfe Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-required-field-62f44205bdd070ef8c4c8d30de181286.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-settings-f765389d102cecdac46b0258b696344f.png b/packages/noco-docs/dist/assets/images/form-view-settings-f765389d102cecdac46b0258b696344f.png new file mode 100644 index 0000000000..cd6be7aaf5 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-settings-f765389d102cecdac46b0258b696344f.png differ diff --git a/packages/noco-docs/dist/assets/images/form-view-title-description-99d122bea09868f65bd0f6e04e087db4.png b/packages/noco-docs/dist/assets/images/form-view-title-description-99d122bea09868f65bd0f6e04e087db4.png new file mode 100644 index 0000000000..99767a10a8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/form-view-title-description-99d122bea09868f65bd0f6e04e087db4.png differ diff --git a/packages/noco-docs/dist/assets/images/formula-a0c1cda1b7516e923383a8aa1e494c7d.png b/packages/noco-docs/dist/assets/images/formula-a0c1cda1b7516e923383a8aa1e494c7d.png new file mode 100644 index 0000000000..5a733b0038 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/formula-a0c1cda1b7516e923383a8aa1e494c7d.png differ diff --git a/packages/noco-docs/dist/assets/images/gallery-45f0b39f541ab7afc2a5b7d44f010406.png b/packages/noco-docs/dist/assets/images/gallery-45f0b39f541ab7afc2a5b7d44f010406.png new file mode 100644 index 0000000000..b0cab75474 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/gallery-45f0b39f541ab7afc2a5b7d44f010406.png differ diff --git a/packages/noco-docs/dist/assets/images/grid-a278b184ce772b6c7263abc105f09a76.png b/packages/noco-docs/dist/assets/images/grid-a278b184ce772b6c7263abc105f09a76.png new file mode 100644 index 0000000000..92666f2510 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/grid-a278b184ce772b6c7263abc105f09a76.png differ diff --git a/packages/noco-docs/dist/assets/images/group-by-1-9fca54ae46eb7c74e888a44d49416e9c.png b/packages/noco-docs/dist/assets/images/group-by-1-9fca54ae46eb7c74e888a44d49416e9c.png new file mode 100644 index 0000000000..1fbe1cd7b2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/group-by-1-9fca54ae46eb7c74e888a44d49416e9c.png differ diff --git a/packages/noco-docs/dist/assets/images/group-by-create-903d7ed5fc17d47bcf49b5c84f201f80.png b/packages/noco-docs/dist/assets/images/group-by-create-903d7ed5fc17d47bcf49b5c84f201f80.png new file mode 100644 index 0000000000..9881e94a58 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/group-by-create-903d7ed5fc17d47bcf49b5c84f201f80.png differ diff --git a/packages/noco-docs/dist/assets/images/group-by-delete-2bb963126a68838d8c7dc51e7cf139bb.png b/packages/noco-docs/dist/assets/images/group-by-delete-2bb963126a68838d8c7dc51e7cf139bb.png new file mode 100644 index 0000000000..5c123a59bc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/group-by-delete-2bb963126a68838d8c7dc51e7cf139bb.png differ diff --git a/packages/noco-docs/dist/assets/images/group-by-nested-68c0f8159f38c76343ee6905c701fd5e.png b/packages/noco-docs/dist/assets/images/group-by-nested-68c0f8159f38c76343ee6905c701fd5e.png new file mode 100644 index 0000000000..e5db4401c2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/group-by-nested-68c0f8159f38c76343ee6905c701fd5e.png differ diff --git a/packages/noco-docs/dist/assets/images/import-csv-515b6519a0b425cfa1672cd51ec465d6.png b/packages/noco-docs/dist/assets/images/import-csv-515b6519a0b425cfa1672cd51ec465d6.png new file mode 100644 index 0000000000..3a77b07da2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/import-csv-515b6519a0b425cfa1672cd51ec465d6.png differ diff --git a/packages/noco-docs/dist/assets/images/import-csv-url-f9d895566bcab33720fd7272125e1a37.png b/packages/noco-docs/dist/assets/images/import-csv-url-f9d895566bcab33720fd7272125e1a37.png new file mode 100644 index 0000000000..bf3eb9ec63 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/import-csv-url-f9d895566bcab33720fd7272125e1a37.png differ diff --git a/packages/noco-docs/dist/assets/images/import-stage-2-9b0b9c7805b194f2dbe8017eae3c5d80.png b/packages/noco-docs/dist/assets/images/import-stage-2-9b0b9c7805b194f2dbe8017eae3c5d80.png new file mode 100644 index 0000000000..cb364c68df Binary files /dev/null and b/packages/noco-docs/dist/assets/images/import-stage-2-9b0b9c7805b194f2dbe8017eae3c5d80.png differ diff --git a/packages/noco-docs/dist/assets/images/invite-only-sign-up-a9a36ba0e96b88ac229b92889b471ae9.png b/packages/noco-docs/dist/assets/images/invite-only-sign-up-a9a36ba0e96b88ac229b92889b471ae9.png new file mode 100644 index 0000000000..b81a8259fb Binary files /dev/null and b/packages/noco-docs/dist/assets/images/invite-only-sign-up-a9a36ba0e96b88ac229b92889b471ae9.png differ diff --git a/packages/noco-docs/dist/assets/images/junction-table-28270cb936c6107d21e68edaaed04913.png b/packages/noco-docs/dist/assets/images/junction-table-28270cb936c6107d21e68edaaed04913.png new file mode 100644 index 0000000000..c08fd1a1a8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/junction-table-28270cb936c6107d21e68edaaed04913.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-add-record-6d53ed410a1ee0323790496461b53aff.png b/packages/noco-docs/dist/assets/images/kanban-add-record-6d53ed410a1ee0323790496461b53aff.png new file mode 100644 index 0000000000..22a876f884 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-add-record-6d53ed410a1ee0323790496461b53aff.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-change-stack-a8d26dff838ea4b480a30e2db1d0624f.png b/packages/noco-docs/dist/assets/images/kanban-change-stack-a8d26dff838ea4b480a30e2db1d0624f.png new file mode 100644 index 0000000000..b35ba3701c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-change-stack-a8d26dff838ea4b480a30e2db1d0624f.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-collapse-stack-8ec03d704b55aba7bbc1510efd0f746d.png b/packages/noco-docs/dist/assets/images/kanban-collapse-stack-8ec03d704b55aba7bbc1510efd0f746d.png new file mode 100644 index 0000000000..e0f960d889 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-collapse-stack-8ec03d704b55aba7bbc1510efd0f746d.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-delete-stack-b51611d8427f1a16a295861c0c91eb94.png b/packages/noco-docs/dist/assets/images/kanban-delete-stack-b51611d8427f1a16a295861c0c91eb94.png new file mode 100644 index 0000000000..e6b04e0ad9 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-delete-stack-b51611d8427f1a16a295861c0c91eb94.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-delete-stack-confirmation-e4b55be5361259d84852953931f63f8c.png b/packages/noco-docs/dist/assets/images/kanban-delete-stack-confirmation-e4b55be5361259d84852953931f63f8c.png new file mode 100644 index 0000000000..c337718ba4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-delete-stack-confirmation-e4b55be5361259d84852953931f63f8c.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-e00b90c6413259b626deeeb6659281ea.png b/packages/noco-docs/dist/assets/images/kanban-e00b90c6413259b626deeeb6659281ea.png new file mode 100644 index 0000000000..cfdfc4782d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-e00b90c6413259b626deeeb6659281ea.png differ diff --git a/packages/noco-docs/dist/assets/images/kanban-edit-stack-options-7f9e0324e6068956dae0268031c712f7.png b/packages/noco-docs/dist/assets/images/kanban-edit-stack-options-7f9e0324e6068956dae0268031c712f7.png new file mode 100644 index 0000000000..23e468b30b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/kanban-edit-stack-options-7f9e0324e6068956dae0268031c712f7.png differ diff --git a/packages/noco-docs/dist/assets/images/layout-overview-e73d351486ff105d59a64cc0d1801f12.png b/packages/noco-docs/dist/assets/images/layout-overview-e73d351486ff105d59a64cc0d1801f12.png new file mode 100644 index 0000000000..d3e37ac523 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/layout-overview-e73d351486ff105d59a64cc0d1801f12.png differ diff --git a/packages/noco-docs/dist/assets/images/linked-record-modal-3e57fdb38dfa9be609959b9843ec65b4.png b/packages/noco-docs/dist/assets/images/linked-record-modal-3e57fdb38dfa9be609959b9843ec65b4.png new file mode 100644 index 0000000000..841c40dbd9 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/linked-record-modal-3e57fdb38dfa9be609959b9843ec65b4.png differ diff --git a/packages/noco-docs/dist/assets/images/links-ce24a14495db42a4be3920be126b9895.png b/packages/noco-docs/dist/assets/images/links-ce24a14495db42a4be3920be126b9895.png new file mode 100644 index 0000000000..acb2944ffd Binary files /dev/null and b/packages/noco-docs/dist/assets/images/links-ce24a14495db42a4be3920be126b9895.png differ diff --git a/packages/noco-docs/dist/assets/images/links-cell-display-11ef22c835684c116f159598247e9b5d.png b/packages/noco-docs/dist/assets/images/links-cell-display-11ef22c835684c116f159598247e9b5d.png new file mode 100644 index 0000000000..a41c73d62f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/links-cell-display-11ef22c835684c116f159598247e9b5d.png differ diff --git a/packages/noco-docs/dist/assets/images/locked-view-98e409b4c0859f73d2d59b6e418d338b.png b/packages/noco-docs/dist/assets/images/locked-view-98e409b4c0859f73d2d59b6e418d338b.png new file mode 100644 index 0000000000..ad04e57c0f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/locked-view-98e409b4c0859f73d2d59b6e418d338b.png differ diff --git a/packages/noco-docs/dist/assets/images/long-text-e19ae68198be92a063059023ef7effd0.png b/packages/noco-docs/dist/assets/images/long-text-e19ae68198be92a063059023ef7effd0.png new file mode 100644 index 0000000000..7989d4ca24 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/long-text-e19ae68198be92a063059023ef7effd0.png differ diff --git a/packages/noco-docs/dist/assets/images/long-text-expand-2-09cce09ec85355082b79054a189abb37.png b/packages/noco-docs/dist/assets/images/long-text-expand-2-09cce09ec85355082b79054a189abb37.png new file mode 100644 index 0000000000..427913f1cb Binary files /dev/null and b/packages/noco-docs/dist/assets/images/long-text-expand-2-09cce09ec85355082b79054a189abb37.png differ diff --git a/packages/noco-docs/dist/assets/images/long-text-expand-d15b69ace110a10185959d52b19bce63.png b/packages/noco-docs/dist/assets/images/long-text-expand-d15b69ace110a10185959d52b19bce63.png new file mode 100644 index 0000000000..d189d890d5 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/long-text-expand-d15b69ace110a10185959d52b19bce63.png differ diff --git a/packages/noco-docs/dist/assets/images/lookup-a18b54754608e45dd68371ecceee50a7.png b/packages/noco-docs/dist/assets/images/lookup-a18b54754608e45dd68371ecceee50a7.png new file mode 100644 index 0000000000..170fa7dfd7 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/lookup-a18b54754608e45dd68371ecceee50a7.png differ diff --git a/packages/noco-docs/dist/assets/images/multi-select-856f1a7e26ad86d841019ada237bf124.png b/packages/noco-docs/dist/assets/images/multi-select-856f1a7e26ad86d841019ada237bf124.png new file mode 100644 index 0000000000..819e2e21de Binary files /dev/null and b/packages/noco-docs/dist/assets/images/multi-select-856f1a7e26ad86d841019ada237bf124.png differ diff --git a/packages/noco-docs/dist/assets/images/new-record-form-80ab9af2574b27d6cf824542057f15af.png b/packages/noco-docs/dist/assets/images/new-record-form-80ab9af2574b27d6cf824542057f15af.png new file mode 100644 index 0000000000..e332c46bda Binary files /dev/null and b/packages/noco-docs/dist/assets/images/new-record-form-80ab9af2574b27d6cf824542057f15af.png differ diff --git a/packages/noco-docs/dist/assets/images/new-record-grid-7ae6148311e56de598a0d729847d8abb.png b/packages/noco-docs/dist/assets/images/new-record-grid-7ae6148311e56de598a0d729847d8abb.png new file mode 100644 index 0000000000..8e70d4bc73 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/new-record-grid-7ae6148311e56de598a0d729847d8abb.png differ diff --git a/packages/noco-docs/dist/assets/images/number-0cef1c4d333a56e19e4f34872d1c6b04.png b/packages/noco-docs/dist/assets/images/number-0cef1c4d333a56e19e4f34872d1c6b04.png new file mode 100644 index 0000000000..85c9d64c94 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/number-0cef1c4d333a56e19e4f34872d1c6b04.png differ diff --git a/packages/noco-docs/dist/assets/images/pat-1-b1eb986ad72a1c426ccd1ad338b26ecc.png b/packages/noco-docs/dist/assets/images/pat-1-b1eb986ad72a1c426ccd1ad338b26ecc.png new file mode 100644 index 0000000000..b7e1b5ea57 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/pat-1-b1eb986ad72a1c426ccd1ad338b26ecc.png differ diff --git a/packages/noco-docs/dist/assets/images/pat-2-a3fcb811ed325a6d621f45e17e3aee2f.png b/packages/noco-docs/dist/assets/images/pat-2-a3fcb811ed325a6d621f45e17e3aee2f.png new file mode 100644 index 0000000000..8f2385987d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/pat-2-a3fcb811ed325a6d621f45e17e3aee2f.png differ diff --git a/packages/noco-docs/dist/assets/images/pat-3-fd78b26e00f9f01f395a073e54c465f6.png b/packages/noco-docs/dist/assets/images/pat-3-fd78b26e00f9f01f395a073e54c465f6.png new file mode 100644 index 0000000000..e05623fadc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/pat-3-fd78b26e00f9f01f395a073e54c465f6.png differ diff --git a/packages/noco-docs/dist/assets/images/percent-49d72b9b9a2ff29bf251cfca6dbfc1e6.png b/packages/noco-docs/dist/assets/images/percent-49d72b9b9a2ff29bf251cfca6dbfc1e6.png new file mode 100644 index 0000000000..b6b4eec9c1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/percent-49d72b9b9a2ff29bf251cfca6dbfc1e6.png differ diff --git a/packages/noco-docs/dist/assets/images/phone-32116538485830f7b2d7cf354f047669.png b/packages/noco-docs/dist/assets/images/phone-32116538485830f7b2d7cf354f047669.png new file mode 100644 index 0000000000..384e26158f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/phone-32116538485830f7b2d7cf354f047669.png differ diff --git a/packages/noco-docs/dist/assets/images/profile-page-a57e61bb64613b60a0567d3589307653.png b/packages/noco-docs/dist/assets/images/profile-page-a57e61bb64613b60a0567d3589307653.png new file mode 100644 index 0000000000..595b45f0b3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/profile-page-a57e61bb64613b60a0567d3589307653.png differ diff --git a/packages/noco-docs/dist/assets/images/qr-cell-display-4c407736d9529d363e9c5a5894d89064.png b/packages/noco-docs/dist/assets/images/qr-cell-display-4c407736d9529d363e9c5a5894d89064.png new file mode 100644 index 0000000000..794974e1de Binary files /dev/null and b/packages/noco-docs/dist/assets/images/qr-cell-display-4c407736d9529d363e9c5a5894d89064.png differ diff --git a/packages/noco-docs/dist/assets/images/qr-expand-71565f5a001bd474c52fd39577539d73.png b/packages/noco-docs/dist/assets/images/qr-expand-71565f5a001bd474c52fd39577539d73.png new file mode 100644 index 0000000000..ad20576296 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/qr-expand-71565f5a001bd474c52fd39577539d73.png differ diff --git a/packages/noco-docs/dist/assets/images/rating-cell-ab9000c7aa5624758b22f06f59b5495e.png b/packages/noco-docs/dist/assets/images/rating-cell-ab9000c7aa5624758b22f06f59b5495e.png new file mode 100644 index 0000000000..06bb2c1d8c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/rating-cell-ab9000c7aa5624758b22f06f59b5495e.png differ diff --git a/packages/noco-docs/dist/assets/images/rating-e00623f8051d56ee1eb07b9d3f3bf916.png b/packages/noco-docs/dist/assets/images/rating-e00623f8051d56ee1eb07b9d3f3bf916.png new file mode 100644 index 0000000000..8ca3c957af Binary files /dev/null and b/packages/noco-docs/dist/assets/images/rating-e00623f8051d56ee1eb07b9d3f3bf916.png differ diff --git a/packages/noco-docs/dist/assets/images/rating-icon-06378f121f8364a58ce1b0da016f6b12.png b/packages/noco-docs/dist/assets/images/rating-icon-06378f121f8364a58ce1b0da016f6b12.png new file mode 100644 index 0000000000..6e5c40a1dc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/rating-icon-06378f121f8364a58ce1b0da016f6b12.png differ diff --git a/packages/noco-docs/dist/assets/images/rollup-da7090504e4ad62550d4f92115a10282.png b/packages/noco-docs/dist/assets/images/rollup-da7090504e4ad62550d4f92115a10282.png new file mode 100644 index 0000000000..592369643e Binary files /dev/null and b/packages/noco-docs/dist/assets/images/rollup-da7090504e4ad62550d4f92115a10282.png differ diff --git a/packages/noco-docs/dist/assets/images/row-height-1-b999107b8ea25b026213a6c67498695b.png b/packages/noco-docs/dist/assets/images/row-height-1-b999107b8ea25b026213a6c67498695b.png new file mode 100644 index 0000000000..72fe3d9963 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/row-height-1-b999107b8ea25b026213a6c67498695b.png differ diff --git a/packages/noco-docs/dist/assets/images/row-height-2-422a0b8fac325abb9392cbd5763ee5c7.png b/packages/noco-docs/dist/assets/images/row-height-2-422a0b8fac325abb9392cbd5763ee5c7.png new file mode 100644 index 0000000000..55925773f7 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/row-height-2-422a0b8fac325abb9392cbd5763ee5c7.png differ diff --git a/packages/noco-docs/dist/assets/images/row-height-3-8b665502bcb2cb4bde649e53698161f5.png b/packages/noco-docs/dist/assets/images/row-height-3-8b665502bcb2cb4bde649e53698161f5.png new file mode 100644 index 0000000000..12b0d01a45 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/row-height-3-8b665502bcb2cb4bde649e53698161f5.png differ diff --git a/packages/noco-docs/dist/assets/images/row-height-4-6672aa1a7be4bd6075b285f7324c61bc.png b/packages/noco-docs/dist/assets/images/row-height-4-6672aa1a7be4bd6075b285f7324c61bc.png new file mode 100644 index 0000000000..6f99f89c54 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/row-height-4-6672aa1a7be4bd6075b285f7324c61bc.png differ diff --git a/packages/noco-docs/dist/assets/images/row-height-5-e58d68386f8aa821d5a32c7411ef4ba9.png b/packages/noco-docs/dist/assets/images/row-height-5-e58d68386f8aa821d5a32c7411ef4ba9.png new file mode 100644 index 0000000000..9117c59f53 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/row-height-5-e58d68386f8aa821d5a32c7411ef4ba9.png differ diff --git a/packages/noco-docs/dist/assets/images/set-as-display-value-1816fc2bbf6eba7f2d96a43850d5774f.png b/packages/noco-docs/dist/assets/images/set-as-display-value-1816fc2bbf6eba7f2d96a43850d5774f.png new file mode 100644 index 0000000000..ebcd97d5be Binary files /dev/null and b/packages/noco-docs/dist/assets/images/set-as-display-value-1816fc2bbf6eba7f2d96a43850d5774f.png differ diff --git a/packages/noco-docs/dist/assets/images/share-base-1-c3c442ce89c00b2cd26119a2c7360ac5.png b/packages/noco-docs/dist/assets/images/share-base-1-c3c442ce89c00b2cd26119a2c7360ac5.png new file mode 100644 index 0000000000..ba994fc8f0 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-base-1-c3c442ce89c00b2cd26119a2c7360ac5.png differ diff --git a/packages/noco-docs/dist/assets/images/share-base-2-e413c75c905d813681ef53d42bf0ad1b.png b/packages/noco-docs/dist/assets/images/share-base-2-e413c75c905d813681ef53d42bf0ad1b.png new file mode 100644 index 0000000000..bde33a505c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-base-2-e413c75c905d813681ef53d42bf0ad1b.png differ diff --git a/packages/noco-docs/dist/assets/images/share-base-edit-access-b293bc0349998853d6de8a9784ae9e54.png b/packages/noco-docs/dist/assets/images/share-base-edit-access-b293bc0349998853d6de8a9784ae9e54.png new file mode 100644 index 0000000000..22e72f5407 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-base-edit-access-b293bc0349998853d6de8a9784ae9e54.png differ diff --git a/packages/noco-docs/dist/assets/images/share-base-enable-public-access-70567245aad03d619b620d838cbdb21a.png b/packages/noco-docs/dist/assets/images/share-base-enable-public-access-70567245aad03d619b620d838cbdb21a.png new file mode 100644 index 0000000000..f6d4f9ac54 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-base-enable-public-access-70567245aad03d619b620d838cbdb21a.png differ diff --git a/packages/noco-docs/dist/assets/images/share-base-iframe-5cf906c782389e1cf39b132cd1ab62ac.png b/packages/noco-docs/dist/assets/images/share-base-iframe-5cf906c782389e1cf39b132cd1ab62ac.png new file mode 100644 index 0000000000..55353a55ce Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-base-iframe-5cf906c782389e1cf39b132cd1ab62ac.png differ diff --git a/packages/noco-docs/dist/assets/images/share-button-9751630544eab59c43f368bcbe4aaaae.png b/packages/noco-docs/dist/assets/images/share-button-9751630544eab59c43f368bcbe4aaaae.png new file mode 100644 index 0000000000..1387a535af Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-button-9751630544eab59c43f368bcbe4aaaae.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-22f8daabd281e5b6199d1e03ab814378.png b/packages/noco-docs/dist/assets/images/share-view-22f8daabd281e5b6199d1e03ab814378.png new file mode 100644 index 0000000000..f0ef0639ef Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-22f8daabd281e5b6199d1e03ab814378.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-form-d98371a23098e020e611302bcb5ebe40.png b/packages/noco-docs/dist/assets/images/share-view-form-d98371a23098e020e611302bcb5ebe40.png new file mode 100644 index 0000000000..360cce84bf Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-form-d98371a23098e020e611302bcb5ebe40.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-modal-2-4bb63f03e7cb528595d3f2f6335fca02.png b/packages/noco-docs/dist/assets/images/share-view-modal-2-4bb63f03e7cb528595d3f2f6335fca02.png new file mode 100644 index 0000000000..5582535fca Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-modal-2-4bb63f03e7cb528595d3f2f6335fca02.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-modal-2c40f95aa822fa2830e1f205431a4b4e.png b/packages/noco-docs/dist/assets/images/share-view-modal-2c40f95aa822fa2830e1f205431a4b4e.png new file mode 100644 index 0000000000..9517f02a95 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-modal-2c40f95aa822fa2830e1f205431a4b4e.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-modal-3-1202422c5c9bf2b234a5b5ed7a05e805.png b/packages/noco-docs/dist/assets/images/share-view-modal-3-1202422c5c9bf2b234a5b5ed7a05e805.png new file mode 100644 index 0000000000..d65edd5487 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-modal-3-1202422c5c9bf2b234a5b5ed7a05e805.png differ diff --git a/packages/noco-docs/dist/assets/images/share-view-password-8b55b2f905ed895f6ceddccad842c205.png b/packages/noco-docs/dist/assets/images/share-view-password-8b55b2f905ed895f6ceddccad842c205.png new file mode 100644 index 0000000000..23c3cd0bcf Binary files /dev/null and b/packages/noco-docs/dist/assets/images/share-view-password-8b55b2f905ed895f6ceddccad842c205.png differ diff --git a/packages/noco-docs/dist/assets/images/single-line-text-de73983db410a8037d3518f7ff6f8fcb.png b/packages/noco-docs/dist/assets/images/single-line-text-de73983db410a8037d3518f7ff6f8fcb.png new file mode 100644 index 0000000000..ef2b35e1a5 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/single-line-text-de73983db410a8037d3518f7ff6f8fcb.png differ diff --git a/packages/noco-docs/dist/assets/images/single-select-6629e5aac22d5cd29b447a0e7a777755.png b/packages/noco-docs/dist/assets/images/single-select-6629e5aac22d5cd29b447a0e7a777755.png new file mode 100644 index 0000000000..b53f99ef64 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/single-select-6629e5aac22d5cd29b447a0e7a777755.png differ diff --git a/packages/noco-docs/dist/assets/images/single-select-color-8658ed7709d43bb4506b61e0ce420f21.png b/packages/noco-docs/dist/assets/images/single-select-color-8658ed7709d43bb4506b61e0ce420f21.png new file mode 100644 index 0000000000..b07cf8a859 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/single-select-color-8658ed7709d43bb4506b61e0ce420f21.png differ diff --git a/packages/noco-docs/dist/assets/images/single-select-delete-656a108ff71fbef65411239787f27861.png b/packages/noco-docs/dist/assets/images/single-select-delete-656a108ff71fbef65411239787f27861.png new file mode 100644 index 0000000000..6596f15646 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/single-select-delete-656a108ff71fbef65411239787f27861.png differ diff --git a/packages/noco-docs/dist/assets/images/single-select-reorder-906d6ae0697610c5df2c4f3c49545a38.png b/packages/noco-docs/dist/assets/images/single-select-reorder-906d6ae0697610c5df2c4f3c49545a38.png new file mode 100644 index 0000000000..20cc63ff85 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/single-select-reorder-906d6ae0697610c5df2c4f3c49545a38.png differ diff --git a/packages/noco-docs/dist/assets/images/sort-1-fa0fe0c81f35a773f6c03ae98c05751f.png b/packages/noco-docs/dist/assets/images/sort-1-fa0fe0c81f35a773f6c03ae98c05751f.png new file mode 100644 index 0000000000..b34fff5f62 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/sort-1-fa0fe0c81f35a773f6c03ae98c05751f.png differ diff --git a/packages/noco-docs/dist/assets/images/sort-2-9b1d1e39e76dca86dbf63d9c4d59f940.png b/packages/noco-docs/dist/assets/images/sort-2-9b1d1e39e76dca86dbf63d9c4d59f940.png new file mode 100644 index 0000000000..35b3148aa4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/sort-2-9b1d1e39e76dca86dbf63d9c4d59f940.png differ diff --git a/packages/noco-docs/dist/assets/images/sort-3-3b0cf33ff1728c5649bcf6de7a5073ff.png b/packages/noco-docs/dist/assets/images/sort-3-3b0cf33ff1728c5649bcf6de7a5073ff.png new file mode 100644 index 0000000000..abc8c5fca8 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/sort-3-3b0cf33ff1728c5649bcf6de7a5073ff.png differ diff --git a/packages/noco-docs/dist/assets/images/sort-4-124856ebba5f7b4ca9d8cc67ff97a32b.png b/packages/noco-docs/dist/assets/images/sort-4-124856ebba5f7b4ca9d8cc67ff97a32b.png new file mode 100644 index 0000000000..e211971269 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/sort-4-124856ebba5f7b4ca9d8cc67ff97a32b.png differ diff --git a/packages/noco-docs/dist/assets/images/specific-db-type-39420b6e61f776e62f66c7bbe8616539.png b/packages/noco-docs/dist/assets/images/specific-db-type-39420b6e61f776e62f66c7bbe8616539.png new file mode 100644 index 0000000000..be5d764e1b Binary files /dev/null and b/packages/noco-docs/dist/assets/images/specific-db-type-39420b6e61f776e62f66c7bbe8616539.png differ diff --git a/packages/noco-docs/dist/assets/images/survey-form-ba422967e0b347d42b4824e8940b064c.png b/packages/noco-docs/dist/assets/images/survey-form-ba422967e0b347d42b4824e8940b064c.png new file mode 100644 index 0000000000..7d4d074873 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/survey-form-ba422967e0b347d42b4824e8940b064c.png differ diff --git a/packages/noco-docs/dist/assets/images/table-context-menu-0d6be8893f4a97f8fb53365af006c97d.png b/packages/noco-docs/dist/assets/images/table-context-menu-0d6be8893f4a97f8fb53365af006c97d.png new file mode 100644 index 0000000000..0c5691b96f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-context-menu-0d6be8893f4a97f8fb53365af006c97d.png differ diff --git a/packages/noco-docs/dist/assets/images/table-create-1-aff9df656f0041ec3db9e456889831b5.png b/packages/noco-docs/dist/assets/images/table-create-1-aff9df656f0041ec3db9e456889831b5.png new file mode 100644 index 0000000000..821f9ceb71 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-create-1-aff9df656f0041ec3db9e456889831b5.png differ diff --git a/packages/noco-docs/dist/assets/images/table-create-2-bd90d50b93a12813e08331620e11e7a7.png b/packages/noco-docs/dist/assets/images/table-create-2-bd90d50b93a12813e08331620e11e7a7.png new file mode 100644 index 0000000000..2523624b88 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-create-2-bd90d50b93a12813e08331620e11e7a7.png differ diff --git a/packages/noco-docs/dist/assets/images/table-delete-f192bb8c382c339ad0210e1289fcd879.png b/packages/noco-docs/dist/assets/images/table-delete-f192bb8c382c339ad0210e1289fcd879.png new file mode 100644 index 0000000000..b31b28b37f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-delete-f192bb8c382c339ad0210e1289fcd879.png differ diff --git a/packages/noco-docs/dist/assets/images/table-duplicate-d45db255c689cba50d599909e603dfd1.png b/packages/noco-docs/dist/assets/images/table-duplicate-d45db255c689cba50d599909e603dfd1.png new file mode 100644 index 0000000000..6c60b98d8c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-duplicate-d45db255c689cba50d599909e603dfd1.png differ diff --git a/packages/noco-docs/dist/assets/images/table-import-from-dashboard-1af1df0615bea827871e9577807395db.png b/packages/noco-docs/dist/assets/images/table-import-from-dashboard-1af1df0615bea827871e9577807395db.png new file mode 100644 index 0000000000..9271774bfd Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-import-from-dashboard-1af1df0615bea827871e9577807395db.png differ diff --git a/packages/noco-docs/dist/assets/images/table-import-from-sidebar-e6bc97c393575998ed411314f7248ff1.png b/packages/noco-docs/dist/assets/images/table-import-from-sidebar-e6bc97c393575998ed411314f7248ff1.png new file mode 100644 index 0000000000..947a7b0a30 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-import-from-sidebar-e6bc97c393575998ed411314f7248ff1.png differ diff --git a/packages/noco-docs/dist/assets/images/table-rename-da76d830b3965e2415505f58981f5dfb.png b/packages/noco-docs/dist/assets/images/table-rename-da76d830b3965e2415505f58981f5dfb.png new file mode 100644 index 0000000000..1bdafe9551 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-rename-da76d830b3965e2415505f58981f5dfb.png differ diff --git a/packages/noco-docs/dist/assets/images/table-search-762c0ea68ae64bfda3aee882a82a326e.png b/packages/noco-docs/dist/assets/images/table-search-762c0ea68ae64bfda3aee882a82a326e.png new file mode 100644 index 0000000000..f70235c70e Binary files /dev/null and b/packages/noco-docs/dist/assets/images/table-search-762c0ea68ae64bfda3aee882a82a326e.png differ diff --git a/packages/noco-docs/dist/assets/images/time-63fbf1d0a3413d3debf27d5004999815.png b/packages/noco-docs/dist/assets/images/time-63fbf1d0a3413d3debf27d5004999815.png new file mode 100644 index 0000000000..454b28df67 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/time-63fbf1d0a3413d3debf27d5004999815.png differ diff --git a/packages/noco-docs/dist/assets/images/ui-acl-52e141d26e976acba3a9e8591c59ea18.png b/packages/noco-docs/dist/assets/images/ui-acl-52e141d26e976acba3a9e8591c59ea18.png new file mode 100644 index 0000000000..ef95c1daa6 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/ui-acl-52e141d26e976acba3a9e8591c59ea18.png differ diff --git a/packages/noco-docs/dist/assets/images/upload-csv-1-5060880a942894e2cf7d72a27b048520.png b/packages/noco-docs/dist/assets/images/upload-csv-1-5060880a942894e2cf7d72a27b048520.png new file mode 100644 index 0000000000..f0b7446f0f Binary files /dev/null and b/packages/noco-docs/dist/assets/images/upload-csv-1-5060880a942894e2cf7d72a27b048520.png differ diff --git a/packages/noco-docs/dist/assets/images/upload-csv-2-8d2bf537b779871fcd91d482507b6ec2.png b/packages/noco-docs/dist/assets/images/upload-csv-2-8d2bf537b779871fcd91d482507b6ec2.png new file mode 100644 index 0000000000..16ae9bac14 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/upload-csv-2-8d2bf537b779871fcd91d482507b6ec2.png differ diff --git a/packages/noco-docs/dist/assets/images/upload-csv-3-2b437b676c7ea55dfc099c630c62bc32.png b/packages/noco-docs/dist/assets/images/upload-csv-3-2b437b676c7ea55dfc099c630c62bc32.png new file mode 100644 index 0000000000..b0c85b04d3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/upload-csv-3-2b437b676c7ea55dfc099c630c62bc32.png differ diff --git a/packages/noco-docs/dist/assets/images/upload-csv-url-e91498d1e314587238b1379f73bee6b1.png b/packages/noco-docs/dist/assets/images/upload-csv-url-e91498d1e314587238b1379f73bee6b1.png new file mode 100644 index 0000000000..e74f8d61fc Binary files /dev/null and b/packages/noco-docs/dist/assets/images/upload-csv-url-e91498d1e314587238b1379f73bee6b1.png differ diff --git a/packages/noco-docs/dist/assets/images/url-a30d9d3d9ac692682756521452c4f3af.png b/packages/noco-docs/dist/assets/images/url-a30d9d3d9ac692682756521452c4f3af.png new file mode 100644 index 0000000000..39d46a0ce0 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/url-a30d9d3d9ac692682756521452c4f3af.png differ diff --git a/packages/noco-docs/dist/assets/images/view-context-menu-2aaa116e512e31804a1c471b0af66371.png b/packages/noco-docs/dist/assets/images/view-context-menu-2aaa116e512e31804a1c471b0af66371.png new file mode 100644 index 0000000000..29e74b00d1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/view-context-menu-2aaa116e512e31804a1c471b0af66371.png differ diff --git a/packages/noco-docs/dist/assets/images/webhook-list-2-1381dc40997897385408c827bacaa94b.png b/packages/noco-docs/dist/assets/images/webhook-list-2-1381dc40997897385408c827bacaa94b.png new file mode 100644 index 0000000000..450e01bda0 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/webhook-list-2-1381dc40997897385408c827bacaa94b.png differ diff --git a/packages/noco-docs/dist/assets/images/webhook-list-3-725c177d503d2d4fa90ec9599610c8e1.png b/packages/noco-docs/dist/assets/images/webhook-list-3-725c177d503d2d4fa90ec9599610c8e1.png new file mode 100644 index 0000000000..f7fefd5111 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/webhook-list-3-725c177d503d2d4fa90ec9599610c8e1.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-collaboration-1cd7622b6d7dfbccc5ba759d8cab27c0.png b/packages/noco-docs/dist/assets/images/workspace-collaboration-1cd7622b6d7dfbccc5ba759d8cab27c0.png new file mode 100644 index 0000000000..717636e0e4 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-collaboration-1cd7622b6d7dfbccc5ba759d8cab27c0.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-context-menu-6c2b64ca701e4c01ed8706bde7426f2d.png b/packages/noco-docs/dist/assets/images/workspace-context-menu-6c2b64ca701e4c01ed8706bde7426f2d.png new file mode 100644 index 0000000000..d8c4a57eb3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-context-menu-6c2b64ca701e4c01ed8706bde7426f2d.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-create-1847b5a89de49a838a9ca1808e3ad934.png b/packages/noco-docs/dist/assets/images/workspace-create-1847b5a89de49a838a9ca1808e3ad934.png new file mode 100644 index 0000000000..d6bc3f22eb Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-create-1847b5a89de49a838a9ca1808e3ad934.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-create-2-facaf0bb6375e733d61ccdd77894e74b.png b/packages/noco-docs/dist/assets/images/workspace-create-2-facaf0bb6375e733d61ccdd77894e74b.png new file mode 100644 index 0000000000..2ceaaf37a1 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-create-2-facaf0bb6375e733d61ccdd77894e74b.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-delete-3087b68511d36f5c917052f3375e07e4.png b/packages/noco-docs/dist/assets/images/workspace-delete-3087b68511d36f5c917052f3375e07e4.png new file mode 100644 index 0000000000..0242e47d72 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-delete-3087b68511d36f5c917052f3375e07e4.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-delete-confirmation-9a4ee5e3f00a201dbd8923caeca1f522.png b/packages/noco-docs/dist/assets/images/workspace-delete-confirmation-9a4ee5e3f00a201dbd8923caeca1f522.png new file mode 100644 index 0000000000..fa8b9750a2 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-delete-confirmation-9a4ee5e3f00a201dbd8923caeca1f522.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-members-list-95c31f777544a133c392afe1b25f5d4e.png b/packages/noco-docs/dist/assets/images/workspace-members-list-95c31f777544a133c392afe1b25f5d4e.png new file mode 100644 index 0000000000..ae2c16d21d Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-members-list-95c31f777544a133c392afe1b25f5d4e.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-members-remove-2bd587da2b6abe610d1695930cbf3f2b.png b/packages/noco-docs/dist/assets/images/workspace-members-remove-2bd587da2b6abe610d1695930cbf3f2b.png new file mode 100644 index 0000000000..8cb31d8b11 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-members-remove-2bd587da2b6abe610d1695930cbf3f2b.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-members-role-change-d44e8f808de738f6ff1f678e4c0e6ec1.png b/packages/noco-docs/dist/assets/images/workspace-members-role-change-d44e8f808de738f6ff1f678e4c0e6ec1.png new file mode 100644 index 0000000000..6e14a82e8c Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-members-role-change-d44e8f808de738f6ff1f678e4c0e6ec1.png differ diff --git a/packages/noco-docs/dist/assets/images/workspace-rename-10dc461c8d3bacfbaecf59dc9bcb8c26.png b/packages/noco-docs/dist/assets/images/workspace-rename-10dc461c8d3bacfbaecf59dc9bcb8c26.png new file mode 100644 index 0000000000..b1f249dca3 Binary files /dev/null and b/packages/noco-docs/dist/assets/images/workspace-rename-10dc461c8d3bacfbaecf59dc9bcb8c26.png differ diff --git a/packages/noco-docs/dist/assets/js/006c1c22.db8ce074.js b/packages/noco-docs/dist/assets/js/006c1c22.db8ce074.js new file mode 100644 index 0000000000..eaca6f055d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/006c1c22.db8ce074.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1015],{40992:e=>{e.exports=JSON.parse('{"label":"Geometry","permalink":"/tags/geometry","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/geometry","title":"Geometry","description":"Create a geometry field","permalink":"/fields/field-types/custom-types/geometry"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/00aa88f5.806473d1.js b/packages/noco-docs/dist/assets/js/00aa88f5.806473d1.js new file mode 100644 index 0000000000..e1d9d34604 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/00aa88f5.806473d1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1185],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>g});var r=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var c=r.createContext({}),s=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},b=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=s(n),b=a,g=u["".concat(c,".").concat(b)]||u[b]||d[b]||o;return n?r.createElement(g,i(i({ref:t},p),{},{components:n})):r.createElement(g,i({ref:t},p))}));function g(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,i=new Array(o);i[0]=b;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[u]="string"==typeof e?e:a,i[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var r=n(87462),a=(n(67294),n(3905));const o={title:"In Open Source",description:"This article explains Account settings specifics in Open source NocoDB.",tags:["Account settings","Open Source"],keywords:["Account settings","Open Source"]},i=void 0,l={unversionedId:"account-settings/oss-specific-details",id:"account-settings/oss-specific-details",title:"In Open Source",description:"This article explains Account settings specifics in Open source NocoDB.",source:"@site/docs/140.account-settings/030.oss-specific-details.md",sourceDirName:"140.account-settings",slug:"/account-settings/oss-specific-details",permalink:"/account-settings/oss-specific-details",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/030.oss-specific-details.md",tags:[{label:"Account settings",permalink:"/tags/account-settings"},{label:"Open Source",permalink:"/tags/open-source"}],version:"current",sidebarPosition:30,frontMatter:{title:"In Open Source",description:"This article explains Account settings specifics in Open source NocoDB.",tags:["Account settings","Open Source"],keywords:["Account settings","Open Source"]},sidebar:"tutorialSidebar",previous:{title:"API tokens",permalink:"/account-settings/api-tokens"},next:{title:"Architecture overview",permalink:"/engineering/architecture"}},c={},s=[{value:"Enable / Disable Signup",id:"enable--disable-signup",level:2},{value:"App Store",id:"app-store",level:2}],p={toc:s},u="wrapper";function d(e){let{components:t,...o}=e;return(0,a.kt)(u,(0,r.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"Some of the Account settings features are available only in Open Source NocoDB. This article explains details about such specifics."),(0,a.kt)("h2",{id:"enable--disable-signup"},"Enable / Disable Signup"),(0,a.kt)("p",null,"Signup without an invitation is disabled by default and can be managed from UI by a super admin."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Invite only signup",src:n(48953).Z,width:"2872",height:"890"})),(0,a.kt)("h2",{id:"app-store"},"App Store"),(0,a.kt)("p",null,"App store lists available integrations for NocoDB. You can install and configure these integrations from the App store."),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/e739a4b6-6ab6-4ee7-aac3-073d3aaf20ac",alt:"Screenshot 2023-08-22 at 5 02 26 PM"}),"\nWe provide different integrations in three main categories."),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Category"),(0,a.kt)("th",{parentName:"tr",align:null},"App Name"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"Chat")),(0,a.kt)("td",{parentName:"tr",align:null},"Microsoft Teams ",(0,a.kt)("br",null)," Discord ",(0,a.kt)("br",null)," Twilio ",(0,a.kt)("br",null)," Whatsapp Twilio",(0,a.kt)("br",null)," Mattermost",(0,a.kt)("br",null)," Slack")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"Email")),(0,a.kt)("td",{parentName:"tr",align:null},"SMTP",(0,a.kt)("br",null)," MailerSend",(0,a.kt)("br",null)," AWS SES")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"Storage")),(0,a.kt)("td",{parentName:"tr",align:null},"AWS S3 ",(0,a.kt)("br",null)," Minio ",(0,a.kt)("br",null)," Google Cloud Storage ",(0,a.kt)("br",null)," Spaces ",(0,a.kt)("br",null)," Backblaze B2 ",(0,a.kt)("br",null)," Vultr Object Storage ",(0,a.kt)("br",null)," OvhCloud Object Storage ",(0,a.kt)("br",null)," Linode Object Storage ",(0,a.kt)("br",null)," UpCloud Object Storage ",(0,a.kt)("br",null)," Scaleway Object Storage")))))}d.isMDXComponent=!0},48953:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/invite-only-sign-up-a9a36ba0e96b88ac229b92889b471ae9.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/013b8728.00dc75b7.js b/packages/noco-docs/dist/assets/js/013b8728.00dc75b7.js new file mode 100644 index 0000000000..bd2e3f4583 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/013b8728.00dc75b7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1371],{68542:t=>{t.exports=JSON.parse('{"label":"Productivity hacks","permalink":"/tags/productivity-hacks","allTagsPath":"/tags","count":2,"items":[{"id":"getting-started/keyboard-shortcuts","title":"Keyboard shortcuts","description":"Quick Actions","permalink":"/getting-started/keyboard-shortcuts"},{"id":"fields/multi-fields-editor","title":"Multi-field editor","description":"Understanding use of multi-field editor in NocoDB!","permalink":"/fields/multi-fields-editor"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/016441e2.64dc3cdb.js b/packages/noco-docs/dist/assets/js/016441e2.64dc3cdb.js new file mode 100644 index 0000000000..eac1026f7d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/016441e2.64dc3cdb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8673],{65290:o=>{o.exports=JSON.parse('{"label":"Base","permalink":"/tags/base","allTagsPath":"/tags","count":1,"items":[{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/01865ba3.034d1107.js b/packages/noco-docs/dist/assets/js/01865ba3.034d1107.js new file mode 100644 index 0000000000..84e341dfcb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/01865ba3.034d1107.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[43],{3905:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>h});var r=o(67294);function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function n(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,r)}return o}function i(e){for(var t=1;t=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var l=r.createContext({}),c=function(e){var t=r.useContext(l),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},u=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var o=e.components,a=e.mdxType,n=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),d=c(o),f=a,h=d["".concat(l,".").concat(f)]||d[f]||p[f]||n;return o?r.createElement(h,i(i({ref:t},u),{},{components:o})):r.createElement(h,i({ref:t},u))}));function h(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=o.length,i=new Array(n);i[0]=f;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[d]="string"==typeof e?e:a,i[1]=s;for(var c=2;c{o.r(t),o.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>p,frontMatter:()=>n,metadata:()=>s,toc:()=>c});var r=o(87462),a=(o(67294),o(3905));const n={title:"Quick start",keywords:["NocoDB","quick start","getting started"]},i=void 0,s={unversionedId:"getting-started/quick-start",id:"getting-started/quick-start",title:"Quick start",description:"NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs.",source:"@site/docs/020.getting-started/020.quick-start.md",sourceDirName:"020.getting-started",slug:"/getting-started/quick-start",permalink:"/getting-started/quick-start",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/020.quick-start.md",tags:[],version:"current",sidebarPosition:20,frontMatter:{title:"Quick start",keywords:["NocoDB","quick start","getting started"]},sidebar:"tutorialSidebar",previous:{title:"Welcome",permalink:"/"},next:{title:"NocoDB terminologies",permalink:"/getting-started/terminologies"}},l={},c=[{value:"SaaS (Cloud Hosted)",id:"saas-cloud-hosted",level:2},{value:"Sign up for a NocoDB account",id:"sign-up-for-a-nocodb-account",level:3},{value:"Create a workspace",id:"create-a-workspace",level:3},{value:"Build a base",id:"build-a-base",level:3},{value:"Create custom views for your base",id:"create-custom-views-for-your-base",level:4},{value:"Import data into your base",id:"import-data-into-your-base",level:4},{value:"Collaborate with your team",id:"collaborate-with-your-team",level:3},{value:"Self Hosted",id:"self-hosted",level:2}],u={toc:c},d="wrapper";function p(e){let{components:t,...o}=e;return(0,a.kt)(d,(0,r.Z)({},u,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs."),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("p",{parentName:"admonition"},"For this introductory guide, we suggest utilizing the hosted (SaaS) option. New users can take advantage of a complimentary trial period to explore the platform's features.")),(0,a.kt)("h2",{id:"saas-cloud-hosted"},"SaaS (Cloud Hosted)"),(0,a.kt)("h3",{id:"sign-up-for-a-nocodb-account"},"Sign up for a NocoDB account"),(0,a.kt)("h3",{id:"create-a-workspace"},"Create a workspace"),(0,a.kt)("h3",{id:"build-a-base"},"Build a base"),(0,a.kt)("h4",{id:"create-custom-views-for-your-base"},"Create custom views for your base"),(0,a.kt)("h4",{id:"import-data-into-your-base"},"Import data into your base"),(0,a.kt)("h3",{id:"collaborate-with-your-team"},"Collaborate with your team"),(0,a.kt)("h2",{id:"self-hosted"},"Self Hosted"),(0,a.kt)("p",null,"When you opt for self-hosting, you gain the advantage of running an application on a server that you have direct control over. This grants you the flexibility to choose whether to host the database on your premises or within a server leased from a data center. In this self-administered arrangement, typically found on-premises, you assume full responsibility for the management and upkeep of your server. This level of control ensures that you have complete authority over all aspects of your data and services, eliminating any reliance on third-party service providers. This option is ideal for organizations that require a high degree of control over their data and services, but it does necessitate a higher level of technical expertise."),(0,a.kt)("p",null,"Setting up NocoDB on your own server is a straightforward process & the articles below will guide you through the steps to get started."),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/getting-started/self-hosted/installation"},"Installation")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/getting-started/self-hosted/environment-variables"},"Environment Variables")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/getting-started/self-hosted/upgrading"},"Upgrading"))))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/023320c3.a48103df.js b/packages/noco-docs/dist/assets/js/023320c3.a48103df.js new file mode 100644 index 0000000000..97e81f4a6d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/023320c3.a48103df.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1484],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var o=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=o.createContext({}),s=function(e){var t=o.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=s(e.components);return o.createElement(l.Provider,{value:t},e.children)},d="mdxType",k={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},u=o.forwardRef((function(e,t){var n=e.components,a=e.mdxType,r=e.originalType,l=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),d=s(n),u=a,m=d["".concat(l,".").concat(u)]||d[u]||k[u]||r;return n?o.createElement(m,i(i({ref:t},p),{},{components:n})):o.createElement(m,i({ref:t},p))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=n.length,i=new Array(r);i[0]=u;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[d]="string"==typeof e?e:a,i[1]=c;for(var s=2;s{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>k,frontMatter:()=>r,metadata:()=>c,toc:()=>s});var o=n(87462),a=(n(67294),n(3905));const r={title:"API tokens",description:"This article explains how to create and delete API Tokens.",tags:["Account Settings","Api Tokens"],keywords:["api tokens","create api token","delete api token"]},i=void 0,c={unversionedId:"account-settings/api-tokens",id:"account-settings/api-tokens",title:"API tokens",description:"This article explains how to create and delete API Tokens.",source:"@site/docs/140.account-settings/020.api-tokens.md",sourceDirName:"140.account-settings",slug:"/account-settings/api-tokens",permalink:"/account-settings/api-tokens",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/020.api-tokens.md",tags:[{label:"Account Settings",permalink:"/tags/account-settings"},{label:"Api Tokens",permalink:"/tags/api-tokens"}],version:"current",sidebarPosition:20,frontMatter:{title:"API tokens",description:"This article explains how to create and delete API Tokens.",tags:["Account Settings","Api Tokens"],keywords:["api tokens","create api token","delete api token"]},sidebar:"tutorialSidebar",previous:{title:"Profile page",permalink:"/account-settings/profile-page"},next:{title:"In Open Source",permalink:"/account-settings/oss-specific-details"}},l={},s=[{value:"Create API Token",id:"create-api-token",level:2},{value:"Delete API Token",id:"delete-api-token",level:2}],p={toc:s},d="wrapper";function k(e){let{components:t,...r}=e;return(0,a.kt)(d,(0,o.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"create-api-token"},"Create API Token"),(0,a.kt)("p",null,"Open Account Settings page from the user menu in the bottom left corner of the sidebar. Follow the steps below to create API Token"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"API Tokens")," tab"),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Add New API Token")),(0,a.kt)("li",{parentName:"ol"},"Enter the name of the API Token"),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save")," button to save the changes")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Create API Token",src:n(86918).Z,width:"2866",height:"1068"})),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Create API Token",src:n(16172).Z,width:"2862",height:"1054"})),(0,a.kt)("p",null,"API Token created will get added to the list. Copy API token by clicking on ",(0,a.kt)("inlineCode",{parentName:"p"},"Copy")," button displayed under ",(0,a.kt)("inlineCode",{parentName:"p"},"Actions")," menu"),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Create API Token",src:n(66643).Z,width:"2870",height:"1050"})),(0,a.kt)("h2",{id:"delete-api-token"},"Delete API Token"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"API Tokens")," tab"),(0,a.kt)("li",{parentName:"ol"},"From the ",(0,a.kt)("inlineCode",{parentName:"li"},"Actions")," menu, click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Delete")," button associated with the API Token to be deleted")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Delete API Token",src:n(55054).Z,width:"2870",height:"1050"})))}k.isMDXComponent=!0},86918:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/api-token-1-6806c5ece8a92717e786e0fa4e824081.png"},16172:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/api-token-2-378e04140d53a68be86d17d3561c8591.png"},66643:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/api-token-3-493d6baa74b64ec5d6a00c20d6806fd4.png"},55054:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/api-token-4-1a6120f496ccdfca799987a4dc8f9027.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/037e2c34.2e97e336.js b/packages/noco-docs/dist/assets/js/037e2c34.2e97e336.js new file mode 100644 index 0000000000..93b2014a8b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/037e2c34.2e97e336.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7820],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>m});var n=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),c=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},d=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},b="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),b=c(a),h=r,m=b["".concat(s,".").concat(h)]||b[h]||p[h]||o;return a?n.createElement(m,i(i({ref:t},d),{},{components:a})):n.createElement(m,i({ref:t},d))}));function m(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=a.length,i=new Array(o);i[0]=h;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[b]="string"==typeof e?e:r,i[1]=l;for(var c=2;c{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var n=a(87462),r=(a(67294),a(3905));const o={title:"Share base",description:"Procedures to share a base & generating embedded iframe",tags:["Collaboration","Bases","Share"],keywords:["NocoDB base","share base","base collaboration","base actions","base settings"]},i=void 0,l={unversionedId:"collaboration/share-base",id:"collaboration/share-base",title:"Share base",description:"Procedures to share a base & generating embedded iframe",source:"@site/docs/120.collaboration/030.share-base.md",sourceDirName:"120.collaboration",slug:"/collaboration/share-base",permalink:"/collaboration/share-base",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/030.share-base.md",tags:[{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Bases",permalink:"/tags/bases"},{label:"Share",permalink:"/tags/share"}],version:"current",sidebarPosition:30,frontMatter:{title:"Share base",description:"Procedures to share a base & generating embedded iframe",tags:["Collaboration","Bases","Share"],keywords:["NocoDB base","share base","base collaboration","base actions","base settings"]},sidebar:"tutorialSidebar",previous:{title:"Base collaboration",permalink:"/collaboration/base-collaboration"},next:{title:"Share view",permalink:"/collaboration/share-view"}},s={},c=[{value:"Modify Share base",id:"modify-share-base",level:2},{value:"Disable Share base",id:"disable-share-base",level:2},{value:"Share base Access Permissions",id:"share-base-access-permissions",level:2},{value:"Embeddable Frame",id:"embeddable-frame",level:2},{value:"Embed into application's HTML Body",id:"embed-into-applications-html-body",level:3}],d={toc:c},b="wrapper";function p(e){let{components:t,...o}=e;return(0,r.kt)(b,(0,n.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"To share a base, follow the steps below:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Navigate to the top right corner of the top navigation bar and click on the ",(0,r.kt)("inlineCode",{parentName:"li"},"Share")," button."),(0,r.kt)("li",{parentName:"ol"},"In the ",(0,r.kt)("inlineCode",{parentName:"li"},"Shared base")," section, toggle the switch to ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public access")," in order to activate the shared base feature."),(0,r.kt)("li",{parentName:"ol"},"The generated link for the shared base will be displayed above and can be utilized to share this project with others. To copy the URL, simply click on the ",(0,r.kt)("inlineCode",{parentName:"li"},"Copy Link")," option.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Share base",src:a(34992).Z,width:"3046",height:"994"})),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Share base",src:a(8558).Z,width:"2874",height:"1790"})),(0,r.kt)("h2",{id:"modify-share-base"},"Modify Share base"),(0,r.kt)("p",null,"Amending the ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," setting will render the previously generated ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," link invalid and generate a new link in its place.\nHere are the steps to modify it:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on the ",(0,r.kt)("inlineCode",{parentName:"li"},"Share")," button located in the top right corner of the toolbar."),(0,r.kt)("li",{parentName:"ol"},"Toggle the option labeled ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public access")," to deactivate the base share."),(0,r.kt)("li",{parentName:"ol"},"Toggle the same option, ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public access,")," to reactivate the base share, subsequently generating a new link.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Enable public access",src:a(6196).Z,width:"2874",height:"1790"})),(0,r.kt)("h2",{id:"disable-share-base"},"Disable Share base"),(0,r.kt)("p",null,"Disabling ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," will render the previously generated ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," link invalid\nHere are the steps to disable it:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on the 'Share' button located in the top right corner of the toolbar."),(0,r.kt)("li",{parentName:"ol"},"Toggle the option labeled ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public access")," to deactivate the base share.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Enable public access",src:a(6196).Z,width:"2874",height:"1790"})),(0,r.kt)("h2",{id:"share-base-access-permissions"},"Share base Access Permissions"),(0,r.kt)("p",null,'The "Shared base" can be configured in two modes:'),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("strong",{parentName:"li"},"Viewer")," - Users with the provided link will have ",(0,r.kt)("strong",{parentName:"li"},"read-only")," access to the base data."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("strong",{parentName:"li"},"Editor")," - Users with the provided link will have ",(0,r.kt)("strong",{parentName:"li"},"read and write")," access to the base data.")),(0,r.kt)("p",null,"Toggle ",(0,r.kt)("inlineCode",{parentName:"p"},"Enable Editor Access")," button to configure permissions as desired\n",(0,r.kt)("img",{alt:"Share base edit access",src:a(33703).Z,width:"2874",height:"1790"})),(0,r.kt)("h2",{id:"embeddable-frame"},"Embeddable Frame"),(0,r.kt)("p",null,"The NocoDB interface can be seamlessly integrated into existing applications through the utilization of the ",(0,r.kt)("a",{parentName:"p",href:"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"},"HTML IFRAME")," attribute. This feature empowers users to embed the NocoDB interface into their applications, allowing for a unified user experience. To generate the embeddable HTML code, follow these steps:"),(0,r.kt)("p",null,(0,r.kt)("strong",{parentName:"p"},"To Generate Embeddable HTML Code:")),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click the ",(0,r.kt)("inlineCode",{parentName:"li"},"Share")," button located in the top right corner of the toolbar."),(0,r.kt)("li",{parentName:"ol"},"Within the ",(0,r.kt)("inlineCode",{parentName:"li"},"Shared base link")," tab, select the button to copy the ",(0,r.kt)("inlineCode",{parentName:"li"},"Embeddable HTML code")," to your clipboard.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Share base iFrame",src:a(95682).Z,width:"2874",height:"1790"})),(0,r.kt)("p",null,"Example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-html"},'\n\n')),(0,r.kt)("h3",{id:"embed-into-applications-html-body"},"Embed into application's HTML Body"),(0,r.kt)("p",null,"Sample code with embedded iframe generated above"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-html"},'\n\n\n\n\n\n')))}p.isMDXComponent=!0},34992:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/share-base-1-c3c442ce89c00b2cd26119a2c7360ac5.png"},8558:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/share-base-2-e413c75c905d813681ef53d42bf0ad1b.png"},33703:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/share-base-edit-access-b293bc0349998853d6de8a9784ae9e54.png"},6196:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/share-base-enable-public-access-70567245aad03d619b620d838cbdb21a.png"},95682:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/share-base-iframe-5cf906c782389e1cf39b132cd1ab62ac.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/03af2c79.500a3d05.js b/packages/noco-docs/dist/assets/js/03af2c79.500a3d05.js new file mode 100644 index 0000000000..e00dfbe7ee --- /dev/null +++ b/packages/noco-docs/dist/assets/js/03af2c79.500a3d05.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6570],{52806:e=>{e.exports=JSON.parse('{"label":"QR code","permalink":"/tags/qr-code","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/QR-code","title":"QR code","description":"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/QR-code"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/052736b6.ce51f510.js b/packages/noco-docs/dist/assets/js/052736b6.ce51f510.js new file mode 100644 index 0000000000..c0ea2dc024 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/052736b6.ce51f510.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7657],{3905:(e,t,o)=>{o.d(t,{Zo:()=>p,kt:()=>d});var n=o(67294);function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function l(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function i(e){for(var t=1;t=0||(a[o]=e[o]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(a[o]=e[o])}return a}var c=n.createContext({}),b=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},p=function(e){var t=b(e.components);return n.createElement(c.Provider,{value:t},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},k=n.forwardRef((function(e,t){var o=e.components,a=e.mdxType,l=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),s=b(o),k=a,d=s["".concat(c,".").concat(k)]||s[k]||u[k]||l;return o?n.createElement(d,i(i({ref:t},p),{},{components:o})):n.createElement(d,i({ref:t},p))}));function d(e,t){var o=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=o.length,i=new Array(l);i[0]=k;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r[s]="string"==typeof e?e:a,i[1]=r;for(var b=2;b{o.r(t),o.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>l,metadata:()=>r,toc:()=>b});var n=o(87462),a=(o(67294),o(3905));const l={title:"Actions on webhook",tags:["Webhook","Delete","Duplicate","Disable","Enable"]},i=void 0,r={unversionedId:"automation/webhook/actions-on-webhook",id:"automation/webhook/actions-on-webhook",title:"Actions on webhook",description:"Enable/Disable Webhook",source:"@site/docs/130.automation/020.webhook/040.actions-on-webhook.md",sourceDirName:"130.automation/020.webhook",slug:"/automation/webhook/actions-on-webhook",permalink:"/automation/webhook/actions-on-webhook",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/040.actions-on-webhook.md",tags:[{label:"Webhook",permalink:"/tags/webhook"},{label:"Delete",permalink:"/tags/delete"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Disable",permalink:"/tags/disable"},{label:"Enable",permalink:"/tags/enable"}],version:"current",sidebarPosition:40,frontMatter:{title:"Actions on webhook",tags:["Webhook","Delete","Duplicate","Disable","Enable"]},sidebar:"tutorialSidebar",previous:{title:"Create webhook",permalink:"/automation/webhook/create-webhook"},next:{title:"Profile page",permalink:"/account-settings/profile-page"}},c={},b=[{value:"Enable/Disable Webhook",id:"enabledisable-webhook",level:3},{value:"Delete Webhook",id:"delete-webhook",level:3},{value:"Duplicate Webhook",id:"duplicate-webhook",level:3}],p={toc:b},s="wrapper";function u(e){let{components:t,...l}=e;return(0,a.kt)(s,(0,n.Z)({},p,l,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h3",{id:"enabledisable-webhook"},"Enable/Disable Webhook"),(0,a.kt)("p",null,"To disable a Webhook"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Open ",(0,a.kt)("inlineCode",{parentName:"li"},"Webhook")," tab to find list of webhooks created"),(0,a.kt)("li",{parentName:"ul"},"Toggle ",(0,a.kt)("inlineCode",{parentName:"li"},"Activate")," button to enable/disable")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Webhook List",src:o(63892).Z,width:"2362",height:"1050"})),(0,a.kt)("h3",{id:"delete-webhook"},"Delete Webhook"),(0,a.kt)("p",null,"To delete a Webhook"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Open ",(0,a.kt)("inlineCode",{parentName:"li"},"Webhook")," tab to find list of webhooks created"),(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"...")," actions button associated with the webhook to be deleted"),(0,a.kt)("li",{parentName:"ul"},"Select ",(0,a.kt)("inlineCode",{parentName:"li"},"Delete"))),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Webhook context menu",src:o(18474).Z,width:"2362",height:"1050"})),(0,a.kt)("h3",{id:"duplicate-webhook"},"Duplicate Webhook"),(0,a.kt)("p",null,"To duplicate a Webhook"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Open ",(0,a.kt)("inlineCode",{parentName:"li"},"Webhook")," tab to find list of webhooks created"),(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"...")," actions button associated with the webhook to be duplicate"),(0,a.kt)("li",{parentName:"ul"},"Select ",(0,a.kt)("inlineCode",{parentName:"li"},"Duplicate"))),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Webhook context menu",src:o(18474).Z,width:"2362",height:"1050"})),(0,a.kt)("p",null,"A copy of the webhook will be created (disabled by default) with a suffix ",(0,a.kt)("inlineCode",{parentName:"p"}," - Copy")))}u.isMDXComponent=!0},63892:(e,t,o)=>{o.d(t,{Z:()=>n});const n=o.p+"assets/images/webhook-list-2-1381dc40997897385408c827bacaa94b.png"},18474:(e,t,o)=>{o.d(t,{Z:()=>n});const n=o.p+"assets/images/webhook-list-3-725c177d503d2d4fa90ec9599610c8e1.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/052c7f5b.14bc812c.js b/packages/noco-docs/dist/assets/js/052c7f5b.14bc812c.js new file mode 100644 index 0000000000..ac713e053b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/052c7f5b.14bc812c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3595],{88739:e=>{e.exports=JSON.parse('{"label":"Number","permalink":"/tags/number","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/numerical/number","title":"Number","description":"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.","permalink":"/fields/field-types/numerical/number"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0834b429.d504b7b1.js b/packages/noco-docs/dist/assets/js/0834b429.d504b7b1.js new file mode 100644 index 0000000000..e4af17bf44 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0834b429.d504b7b1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1305],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>h});var n=a(67294);function l(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(l[a]=e[a]);return l}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,l=e.mdxType,i=e.originalType,s=e.parentName,u=r(e,["components","mdxType","originalType","parentName"]),c=d(a),m=l,h=c["".concat(s,".").concat(m)]||c[m]||p[m]||i;return a?n.createElement(h,o(o({ref:t},u),{},{components:a})):n.createElement(h,o({ref:t},u))}));function h(e,t){var a=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var i=a.length,o=new Array(i);o[0]=m;var r={};for(var s in t)hasOwnProperty.call(t,s)&&(r[s]=t[s]);r.originalType=e,r[c]="string"==typeof e?e:l,o[1]=r;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>r,toc:()=>d});var n=a(87462),l=(a(67294),a(3905));const i={title:"Releases & builds",description:"NocoDB creates Docker and Binaries for each PR",tags:["Engineering"]},o=void 0,r={unversionedId:"engineering/builds-and-releases",id:"engineering/builds-and-releases",title:"Releases & builds",description:"NocoDB creates Docker and Binaries for each PR",source:"@site/docs/150.engineering/060.builds-and-releases.md",sourceDirName:"150.engineering",slug:"/engineering/builds-and-releases",permalink:"/engineering/builds-and-releases",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/060.builds-and-releases.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:60,frontMatter:{title:"Releases & builds",description:"NocoDB creates Docker and Binaries for each PR",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"Playwright E2E testing",permalink:"/engineering/playwright"},next:{title:"i18n translation",permalink:"/engineering/translation"}},s={},d=[{value:"Builds of NocoDB",id:"builds-of-nocodb",level:2},{value:"Release builds",id:"release-builds",level:2},{value:"How to make a release build ?",id:"how-to-make-a-release-build--",level:3},{value:"Tagging",id:"tagging",level:3},{value:"Case 1: Leaving inputs blank",id:"case-1-leaving-inputs-blank",level:3},{value:"Case 2: Manually Input",id:"case-2-manually-input",level:3},{value:"How does release action work ?",id:"how-does-release-action-work-",level:3},{value:"validate-branch",id:"validate-branch",level:4},{value:"process-input",id:"process-input",level:4},{value:"pr-to-master",id:"pr-to-master",level:4},{value:"release-npm",id:"release-npm",level:4},{value:"release-draft-note",id:"release-draft-note",level:4},{value:"release-docker",id:"release-docker",level:4},{value:"close-issues",id:"close-issues",level:4},{value:"publish-docs",id:"publish-docs",level:4},{value:"update-sdk-path",id:"update-sdk-path",level:4},{value:"sync-to-develop",id:"sync-to-develop",level:4},{value:"Daily builds",id:"daily-builds",level:2},{value:"What are daily builds ?",id:"what-are-daily-builds-",level:3},{value:"Docker images",id:"docker-images",level:3},{value:"Timely builds",id:"timely-builds",level:2},{value:"What are timely builds ?",id:"what-are-timely-builds-",level:3},{value:"Docker images",id:"docker-images-1",level:3},{value:"Executables or Binaries",id:"executables-or-binaries",level:2}],u={toc:d},c="wrapper";function p(e){let{components:t,...a}=e;return(0,l.kt)(c,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"builds-of-nocodb"},"Builds of NocoDB"),(0,l.kt)("p",null,"There are 3 kinds of docker builds in NocoDB"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Release builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb"},"nocodb/nocodb")," : built during NocoDB release. "),(0,l.kt)("li",{parentName:"ul"},"Daily builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-daily"},"nocodb/nocodb-daily")," : built every 6 hours from Develop branch."),(0,l.kt)("li",{parentName:"ul"},"Timely builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-timely"},"nocodb/nocodb-timely"),": built for every PR and manually triggered PRs.")),(0,l.kt)("p",null,"Below is an overview of how to make these builds and what happens behind the scenes."),(0,l.kt)("h2",{id:"release-builds"},"Release builds"),(0,l.kt)("h3",{id:"how-to-make-a-release-build--"},"How to make a release build ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Click ",(0,l.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/actions/workflows/release-nocodb.yml"},"NocoDB release action"))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"You should see the below screen"),(0,l.kt)("p",{parentName:"li"},(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167240353-a02f690f-c865-4ade-8645-64382405c9ea.png",alt:"image"}))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Change ",(0,l.kt)("inlineCode",{parentName:"p"},"Use workflow from")," to ",(0,l.kt)("inlineCode",{parentName:"p"},"Branch: master"),". If you choose the wrong branch, the workflow will be ended."),(0,l.kt)("p",{parentName:"li"},(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167240383-dda05f76-8323-4f4a-b3e7-9db886dbd68d.png",alt:"image"}))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Then there would be two cases - you can either leave target tag and pervious tag blank or manually input some values")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Target Tag means the target deployment version, while Previous Tag means the latest version as of now. Previous Tag is used for Release Note only - showing the file / commit differences between two tags."))),(0,l.kt)("h3",{id:"tagging"},"Tagging"),(0,l.kt)("p",null,"The naming convention would be following given the actual release tag is ",(0,l.kt)("inlineCode",{parentName:"p"},"0.100.0")),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.0")," (first version of pre-release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.1")," (include bug fix changes on top of the previous version)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.2"),"(include bug fix changes on top of the previous version)"),(0,l.kt)("li",{parentName:"ul"},"and so on ..."),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0")," (actual release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.1")," (minor bug fix release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.2")," (minor bug fix release)")),(0,l.kt)("h3",{id:"case-1-leaving-inputs-blank"},"Case 1: Leaving inputs blank"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"If Previous Tag is blank, then the value will be fetched from ",(0,l.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/latest"},"latest")),(0,l.kt)("li",{parentName:"ul"},"If Target Tag is blank, then the value will be Previous Tag plus one. Example: 0.90.11 (Previous Tag) + 0.0.1 = 0.90.12 (Target Tag)")),(0,l.kt)("h3",{id:"case-2-manually-input"},"Case 2: Manually Input"),(0,l.kt)("p",null,"Why? Sometimes we may mess up in NPM deployment. As NPM doesn't allow us to redeploy to the same tag again, in this case we cannot just use the previous tag + 1. Therefore, we need to use previous tag + 2 instead and we manually configure it."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"After that, click ",(0,l.kt)("inlineCode",{parentName:"li"},"Run workflow")," to start"),(0,l.kt)("li",{parentName:"ul"},"You can see Summary for the overall job status."),(0,l.kt)("li",{parentName:"ul"},"Once ",(0,l.kt)("inlineCode",{parentName:"li"},"release-draft-note")," and ",(0,l.kt)("inlineCode",{parentName:"li"},"release-executables")," is finished, then go to ",(0,l.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases"},"releases"),", edit the draft note and save as draft for time being.",(0,l.kt)("ul",{parentName:"li"},(0,l.kt)("li",{parentName:"ul"},"Example: Adding header, update content if necessary, and click ",(0,l.kt)("inlineCode",{parentName:"li"},"Auto-generate release notes")," to include more info."))),(0,l.kt)("li",{parentName:"ul"},"Once ",(0,l.kt)("inlineCode",{parentName:"li"},"release-docker")," is finished, then test it locally first. You'll be expected to see ",(0,l.kt)("inlineCode",{parentName:"li"},"Upgrade Available")," notification in UI as we haven't published the release note. (the version is retrieved from there)"),(0,l.kt)("li",{parentName:"ul"},"Once everything is finished, then publish the release note and the deployment is considered as DONE.")),(0,l.kt)("h3",{id:"how-does-release-action-work-"},"How does release action work ?"),(0,l.kt)("h4",{id:"validate-branch"},"validate-branch"),(0,l.kt)("p",null,"To check if ",(0,l.kt)("inlineCode",{parentName:"p"},"github.ref")," is master. Otherwise, other branches will be not accepted."),(0,l.kt)("h4",{id:"process-input"},"process-input"),(0,l.kt)("p",null,"To enrich target tag or previous tag if necessary."),(0,l.kt)("h4",{id:"pr-to-master"},"pr-to-master"),(0,l.kt)("p",null,"Automate a PR from develop to master branch so that we know the actual differences between the previous tag and the current tag. We choose master branch for a deployment base."),(0,l.kt)("h4",{id:"release-npm"},"release-npm"),(0,l.kt)("p",null,"Build frontend and backend and release them to NPM. The changes during built such as version bumping will be committed and pushed to a temporary branch and an automated PR will be created and merged to master branch."),(0,l.kt)("p",null,"Note that once you publish with a certain tag, you cannot publish with the same tag again."),(0,l.kt)("h4",{id:"release-draft-note"},"release-draft-note"),(0,l.kt)("p",null,"Generate a draft release note. Some actions need to be done after this step."),(0,l.kt)("h4",{id:"release-docker"},"release-docker"),(0,l.kt)("p",null,"Build docker image and publish it to Docker Hub. It may take around 15 - 30 mins."),(0,l.kt)("h4",{id:"close-issues"},"close-issues"),(0,l.kt)("p",null,"Open issues marked with label ",(0,l.kt)("inlineCode",{parentName:"p"},"Status: Fixed")," and ",(0,l.kt)("inlineCode",{parentName:"p"},"Status: Resolved")," will be closed by bot automatically with comment mentioning the fix is included in which version."),(0,l.kt)("p",null,"Example:"),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167241574-f8f7061f-c689-444a-b761-0a727974c53f.png",alt:"image"})),(0,l.kt)("h4",{id:"publish-docs"},"publish-docs"),(0,l.kt)("p",null,"Publish Documentations"),(0,l.kt)("h4",{id:"update-sdk-path"},"update-sdk-path"),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"nocodb-sdk")," is used in frontend and backend. However, in develop branch, the value would be ",(0,l.kt)("inlineCode",{parentName:"p"},"file:../nocodb-sdk")," for development purpose (so that the changes done in nocodb-sdk in develop will be included in frontend and backend). During the deployment, the value will be changed to the target tag. This job is to update them back."),(0,l.kt)("h4",{id:"sync-to-develop"},"sync-to-develop"),(0,l.kt)("p",null,"Once the deployment is finished, there would be some new changes being pushed to master branch. This job is to sync the changes back to develop so that both branch won't have any difference."),(0,l.kt)("h2",{id:"daily-builds"},"Daily builds"),(0,l.kt)("h3",{id:"what-are-daily-builds-"},"What are daily builds ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"NocoDB creates every 6 hours from develop branches and publishes as nocodb/nocodb-daily"),(0,l.kt)("li",{parentName:"ul"},"This is so that we can easily try what is in the develop branch easily.")),(0,l.kt)("h3",{id:"docker-images"},"Docker images"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"The docker images will be built and pushed to Docker Hub (See ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-daily/tags"},"nocodb/nocodb-daily")," for the full list). ")),(0,l.kt)("h2",{id:"timely-builds"},"Timely builds"),(0,l.kt)("h3",{id:"what-are-timely-builds-"},"What are timely builds ?"),(0,l.kt)("p",null,"NocoDB has github actions which creates docker and binaries for each PR! And these can be found as a ",(0,l.kt)("strong",{parentName:"p"},"comment on the last commit")," of the PR. "),(0,l.kt)("p",null,"Example shown below"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Go to a PR and click on the comment."),(0,l.kt)("img",{width:"1111",alt:"Screenshot 2023-01-23 at 15 46 36",src:"https://user-images.githubusercontent.com/5435402/214083736-80062398-3712-430f-9865-86b110090c91.png"})),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Click on the link to copy the docker image and run it locally."),(0,l.kt)("img",{width:"1231",alt:"Screenshot 2023-01-23 at 15 46 55",src:"https://user-images.githubusercontent.com/5435402/214083755-945d9485-2b9e-4739-8408-068bdf4a84b7.png"}))),(0,l.kt)("p",null,"This is to"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"reduce pull request cycle time"),(0,l.kt)("li",{parentName:"ul"},"allow issue reporters / reviewers to verify the fix without setting up their local machines")),(0,l.kt)("h3",{id:"docker-images-1"},"Docker images"),(0,l.kt)("p",null,"When a non-draft Pull Request is created, reopened or synchronized, a timely build for Docker would be triggered for the changes only included in the following paths."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nocodb-sdk/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nc-gui/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nc-plugin/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nocodb/**"))),(0,l.kt)("p",null,"The docker images will be built and pushed to Docker Hub (See ",(0,l.kt)("a",{parentName:"p",href:"https://hub.docker.com/r/nocodb/nocodb-timely/tags"},"nocodb/nocodb-timely")," for the full list). Once the image is ready, Github bot will add a comment with the command in the pull request. The tag would be ",(0,l.kt)("inlineCode",{parentName:"p"},"-pr---"),"."),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/175012097-240dab05-da93-4c4e-87c1-1c36fb1350bd.png",alt:"image"})),(0,l.kt)("h2",{id:"executables-or-binaries"},"Executables or Binaries"),(0,l.kt)("p",null,"Similarly, we provide a timely build for executables for non-docker users. The source code will be built, packaged as binary files, and pushed to Github (See ",(0,l.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb-timely/releases"},"nocodb/nocodb-timely")," for the full list)."),(0,l.kt)("p",null,"Currently, we only support the following targets:"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-linux-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-macos-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-win-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-linux-x64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-macos-x64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-win-x64"))),(0,l.kt)("p",null,"Once the executables are ready, Github bot will add a comment with the commands in the pull request."),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/175012070-f5f3e7b8-6dc5-4d1c-9f7e-654bc5039521.png",alt:"image"})),(0,l.kt)("p",null,"NocoDB creates Docker and Binaries for each PR."),(0,l.kt)("p",null,"This is to"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"reduce pull request cycle time"),(0,l.kt)("li",{parentName:"ul"},"allow issue reporters / reviewers to verify the fix without setting up their local machines")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0908b333.96104aba.js b/packages/noco-docs/dist/assets/js/0908b333.96104aba.js new file mode 100644 index 0000000000..8d808e0722 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0908b333.96104aba.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6187],{3905:(e,r,t)=>{t.d(r,{Zo:()=>p,kt:()=>m});var i=t(67294);function a(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function o(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);r&&(i=i.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,i)}return t}function n(e){for(var r=1;r=0||(a[t]=e[t]);return a}(e,r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var s=i.createContext({}),d=function(e){var r=i.useContext(s),t=r;return e&&(t="function"==typeof e?e(r):n(n({},r),e)),t},p=function(e){var r=d(e.components);return i.createElement(s.Provider,{value:r},e.children)},c="mdxType",w={inlineCode:"code",wrapper:function(e){var r=e.children;return i.createElement(i.Fragment,{},r)}},f=i.forwardRef((function(e,r){var t=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),c=d(t),f=a,m=c["".concat(s,".").concat(f)]||c[f]||w[f]||o;return t?i.createElement(m,n(n({ref:r},p),{},{components:t})):i.createElement(m,n({ref:r},p))}));function m(e,r){var t=arguments,a=r&&r.mdxType;if("string"==typeof e||a){var o=t.length,n=new Array(o);n[0]=f;var l={};for(var s in r)hasOwnProperty.call(r,s)&&(l[s]=r[s]);l.originalType=e,l[c]="string"==typeof e?e:a,n[1]=l;for(var d=2;d{t.r(r),t.d(r,{assets:()=>s,contentTitle:()=>n,default:()=>w,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var i=t(87462),a=(t(67294),t(3905));const o={title:"Grid",tags:["Views","Grid View"],keywords:["NocoDB grid","grid view","grid"]},n=void 0,l={unversionedId:"views/view-types/grid",id:"views/view-types/grid",title:"Grid",description:"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.",source:"@site/docs/090.views/040.view-types/010.grid.md",sourceDirName:"090.views/040.view-types",slug:"/views/view-types/grid",permalink:"/views/view-types/grid",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/010.grid.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:10,frontMatter:{title:"Grid",tags:["Views","Grid View"],keywords:["NocoDB grid","grid view","grid"]},sidebar:"tutorialSidebar",previous:{title:"Share view",permalink:"/views/share-view"},next:{title:"Gallery",permalink:"/views/view-types/gallery"}},s={},d=[{value:"Grid View Actions",id:"grid-view-actions",level:2},{value:"Grid View Operations",id:"grid-view-operations",level:2},{value:"Grid View Record Operations",id:"grid-view-record-operations",level:2},{value:"Related articles",id:"related-articles",level:2}],p={toc:d},c="wrapper";function w(e){let{components:r,...o}=e;return(0,a.kt)(c,(0,i.Z)({},p,o,{components:r,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"1010-2 Grid",src:t(38185).Z,width:"2880",height:"1800"})),(0,a.kt)("p",null,"Grid view is the default view type for all tables. This view type is ideal for viewing and editing data in a spreadsheet-like interface. You can also perform various operations on the grid view, such as sorting, filtering, grouping, and searching. You can also export the data in the grid view to CSV or Excel format. This section will cover all the operations that can be performed on the grid view."),(0,a.kt)("h2",{id:"grid-view-actions"},"Grid View Actions"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/create-view/#create-new-view"},"Create a New Grid View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#rename-view"},"Rename an Existing Grid View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#duplicate-view"},"Duplicate a Grid View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#delete-view"},"Remove a Grid View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/share-view"},"Share a Grid View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/views-overview#view-permission-types"},"Lock Grid View for Edits"))),(0,a.kt)("h2",{id:"grid-view-operations"},"Grid View Operations"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/field-operations#rearranging-fields"},"Rearrange Fields Within the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/field-operations#showhide-fields"},"Show or Hide Fields Within the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/filter"},"Apply Filters to Display Specific Records on the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/sort"},"Sort Records on the Grid by One or More Criteria")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/group-by"},"Group Records Horizontally on the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/search"},"Search for Specific Data Within Fields")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/download#download-data"},"Export Data to CSV or Excel Format")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/row-height"},"Adjust Record Height on the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/fields/actions-on-field"},"Customize Field Width")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/table-operations/field-operations#showhide-fields"},"Toggle Field Visibility on the Grid"))),(0,a.kt)("h2",{id:"grid-view-record-operations"},"Grid View Record Operations"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/records/create-record"},"Add a New Record to the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/records/actions-on-record#row-edit"},"Edit an Existing Record on the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/records/actions-on-record#delete-record-single"},"Delete a Single Record from the Grid")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/records/actions-on-record#delete-record-bulk"},"Delete Multiple Records in Bulk from the Grid"))),(0,a.kt)("h2",{id:"related-articles"},"Related articles"),(0,a.kt)("p",null,(0,a.kt)("a",{parentName:"p",href:"/views/view-types/gallery"},"Gallery View"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"/views/view-types/form"},"Form View"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"/views/view-types/kanban"},"Kanban View")))}w.isMDXComponent=!0},38185:(e,r,t)=>{t.d(r,{Z:()=>i});const i=t.p+"assets/images/grid-a278b184ce772b6c7263abc105f09a76.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0938fe36.179be5b4.js b/packages/noco-docs/dist/assets/js/0938fe36.179be5b4.js new file mode 100644 index 0000000000..0975b302b8 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0938fe36.179be5b4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7075],{36171:e=>{e.exports=JSON.parse('{"label":"Expanded record","permalink":"/tags/expanded-record","allTagsPath":"/tags","count":1,"items":[{"id":"records/expand-record","title":"Expanded record","description":"NocoDB provides Expanded Form to let you edit your data easily","permalink":"/records/expand-record"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/09ceb1a0.051f7a95.js b/packages/noco-docs/dist/assets/js/09ceb1a0.051f7a95.js new file mode 100644 index 0000000000..f69cc8bbb2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/09ceb1a0.051f7a95.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4936],{3905:(e,n,t)=>{t.d(n,{Zo:()=>p,kt:()=>g});var r=t(67294);function o(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function i(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function l(e){for(var n=1;n=0||(o[t]=e[t]);return o}(e,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var c=r.createContext({}),s=function(e){var n=r.useContext(c),t=n;return e&&(t="function"==typeof e?e(n):l(l({},n),e)),t},p=function(e){var n=s(e.components);return r.createElement(c.Provider,{value:n},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var n=e.children;return r.createElement(r.Fragment,{},n)}},m=r.forwardRef((function(e,n){var t=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,p=a(e,["components","mdxType","originalType","parentName"]),d=s(t),m=o,g=d["".concat(c,".").concat(m)]||d[m]||u[m]||i;return t?r.createElement(g,l(l({ref:n},p),{},{components:t})):r.createElement(g,l({ref:n},p))}));function g(e,n){var t=arguments,o=n&&n.mdxType;if("string"==typeof e||o){var i=t.length,l=new Array(i);l[0]=m;var a={};for(var c in n)hasOwnProperty.call(n,c)&&(a[c]=n[c]);a.originalType=e,a[d]="string"==typeof e?e:o,l[1]=a;for(var s=2;s{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>l,default:()=>u,frontMatter:()=>i,metadata:()=>a,toc:()=>s});var r=t(87462),o=(t(67294),t(3905));const i={title:"Development Setup",description:"How to set-up your development environment"},l=void 0,a={unversionedId:"engineering/development-setup",id:"version-0.109.7/engineering/development-setup",title:"Development Setup",description:"How to set-up your development environment",source:"@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md",sourceDirName:"050.engineering",slug:"/engineering/development-setup",permalink:"/0.109.7/engineering/development-setup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md",tags:[],version:"0.109.7",sidebarPosition:30,frontMatter:{title:"Development Setup",description:"How to set-up your development environment"},sidebar:"tutorialSidebar",previous:{title:"Repository structure",permalink:"/0.109.7/engineering/repository-structure"},next:{title:"Writing Unit Tests",permalink:"/0.109.7/engineering/unit-testing"}},c={},s=[{value:"Clone the repo",id:"clone-the-repo",level:2},{value:"Build SDK",id:"build-sdk",level:2},{value:"Build Backend",id:"build-backend",level:2},{value:"Build Frontend",id:"build-frontend",level:2},{value:"Enabling CI-CD for Draft PR",id:"enabling-ci-cd-for-draft-pr",level:2},{value:"Accessing CI-CD Failure Screenshots",id:"accessing-ci-cd-failure-screenshots",level:2},{value:"Accessing 'Easter egg' menu",id:"accessing-easter-egg-menu",level:2}],p={toc:s},d="wrapper";function u(e){let{components:n,...t}=e;return(0,o.kt)(d,(0,r.Z)({},p,t,{components:n,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"clone-the-repo"},"Clone the repo"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/packages\n")),(0,o.kt)("h2",{id:"build-sdk"},"Build SDK"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"# build nocodb-sdk\ncd nocodb-sdk\nnpm install\nnpm run build\n")),(0,o.kt)("h2",{id:"build-backend"},"Build Backend"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"# build backend - runs on port 8080\ncd ../nocodb\nnpm install\nnpm run watch:run\n")),(0,o.kt)("h2",{id:"build-frontend"},"Build Frontend"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"# build frontend - runs on port 3000\ncd ../nc-gui\nnpm install\nnpm run dev \n")),(0,o.kt)("p",null,"Any changes made to frontend and backend will be automatically reflected in the browser."),(0,o.kt)("h2",{id:"enabling-ci-cd-for-draft-pr"},"Enabling CI-CD for Draft PR"),(0,o.kt)("p",null,"CI-CD will be triggered on moving a PR from draft state to ",(0,o.kt)("inlineCode",{parentName:"p"},"Ready for review")," state & on pushing changes to ",(0,o.kt)("inlineCode",{parentName:"p"},"Develop"),". To verify CI-CD before requesting for review, add label ",(0,o.kt)("inlineCode",{parentName:"p"},"trigger-CI")," on Draft PR. "),(0,o.kt)("h2",{id:"accessing-ci-cd-failure-screenshots"},"Accessing CI-CD Failure Screenshots"),(0,o.kt)("p",null,"For Playwright tests, screenshots are captured on the tests. These will provide vital clues for debugging possible issues observed in CI-CD. To access screenshots, Open link associated with CI-CD run & click on ",(0,o.kt)("inlineCode",{parentName:"p"},"Artifacts")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/192965070-dc04b952-70fb-4197-b4bd-ca7eda066e60.png",alt:"Screenshot 2022-09-29 at 12 43 37 PM"})),(0,o.kt)("h2",{id:"accessing-easter-egg-menu"},"Accessing 'Easter egg' menu"),(0,o.kt)("p",null,"Double click twice on empty space between ",(0,o.kt)("inlineCode",{parentName:"p"},"View list")," & ",(0,o.kt)("inlineCode",{parentName:"p"},"Share")," button to the left top of Grid view; following options become accessible"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Export Cache"),(0,o.kt)("li",{parentName:"ol"},"Delete Cache"),(0,o.kt)("li",{parentName:"ol"},"Debug Meta"),(0,o.kt)("li",{parentName:"ol"},"Toggle Beta Features")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/fe2765fa-5796-4d26-8c12-e71b8226872e",alt:"Screenshot 2023-05-23 at 8 35 14 PM"})))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0a7c5cbc.9fd81a2a.js b/packages/noco-docs/dist/assets/js/0a7c5cbc.9fd81a2a.js new file mode 100644 index 0000000000..a6b7c5e454 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0a7c5cbc.9fd81a2a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[809],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>c});var n=r(67294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var u=n.createContext({}),s=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(u.Provider,{value:t},e.children)},m="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,l=e.originalType,u=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),m=s(r),d=a,c=m["".concat(u,".").concat(d)]||m[d]||f[d]||l;return r?n.createElement(c,o(o({ref:t},p),{},{components:r})):n.createElement(c,o({ref:t},p))}));function c(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var l=r.length,o=new Array(l);o[0]=d;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[m]="string"==typeof e?e:a,o[1]=i;for(var s=2;s{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>o,default:()=>f,frontMatter:()=>l,metadata:()=>i,toc:()=>s});var n=r(87462),a=(r(67294),r(3905));const l={title:"Formula",tags:["Fields","Field types","Formula"]},o=void 0,i={unversionedId:"fields/field-types/formula/formula",id:"fields/field-types/formula/formula",title:"Formula",description:"Create a formula field",source:"@site/docs/070.fields/040.field-types/060.formula/010.formula.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/formula",permalink:"/fields/field-types/formula/formula",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/010.formula.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"}],version:"current",sidebarPosition:10,frontMatter:{title:"Formula",tags:["Fields","Field types","Formula"]},sidebar:"tutorialSidebar",previous:{title:"JSON",permalink:"/fields/field-types/custom-types/json"},next:{title:"Numeric and Logical Operators",permalink:"/fields/field-types/formula/operators"}},u={},s=[{value:"Create a formula field",id:"create-a-formula-field",level:2},{value:"Supported formula functions",id:"supported-formula-functions",level:2}],p={toc:s},m="wrapper";function f(e){let{components:t,...l}=e;return(0,a.kt)(m,(0,n.Z)({},p,l,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"create-a-formula-field"},"Create a formula field"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,a.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,a.kt)("li",{parentName:"ol"},"Select the field type as ",(0,a.kt)("inlineCode",{parentName:"li"},"Formula")," from the dropdown."),(0,a.kt)("li",{parentName:"ol"},"Insert required formula "),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(42895).Z,width:"1268",height:"859"})),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("ul",{parentName:"admonition"},(0,a.kt)("li",{parentName:"ul"},"You can use explicit numerical values/ strings as needed, e.g. ",(0,a.kt)("inlineCode",{parentName:"li"},"123")," (numeric) or ",(0,a.kt)("inlineCode",{parentName:"li"},'"123"')," (string)."),(0,a.kt)("li",{parentName:"ul"},"You can reference column names in equation with ",(0,a.kt)("inlineCode",{parentName:"li"},"{}"),", e.g. ",(0,a.kt)("inlineCode",{parentName:"li"},"{column_name}")),(0,a.kt)("li",{parentName:"ul"},"Nested formula (formula equation referring to another formula column) is supported"))),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("p",{parentName:"admonition"},"Unlike other column types, formula cells cannot be modified by double-clicking since the value is generated based on the formula."),(0,a.kt)("img",{width:"253",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189109486-4d41f2b7-0a19-46ef-8bb4-a8d1aabd3592.png"})),(0,a.kt)("h2",{id:"supported-formula-functions"},"Supported formula functions"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/operators"},"Numeric and Logical Operators")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/numeric-functions"},"Numeric Functions")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/string-functions"},"String Functions")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/date-functions"},"Date Functions")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/conditional-expressions"},"Conditional Expressions"))))}f.isMDXComponent=!0},42895:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/formula-a0c1cda1b7516e923383a8aa1e494c7d.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0ac1e38e.109d5fe8.js b/packages/noco-docs/dist/assets/js/0ac1e38e.109d5fe8.js new file mode 100644 index 0000000000..96a4189047 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0ac1e38e.109d5fe8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5305],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>k});var r=n(67294);function a(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function i(t){for(var e=1;e=0||(a[n]=t[n]);return a}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(a[n]=t[n])}return a}var d=r.createContext({}),p=function(t){var e=r.useContext(d),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=p(t.components);return r.createElement(d.Provider,{value:e},t.children)},u="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},c=r.forwardRef((function(t,e){var n=t.components,a=t.mdxType,l=t.originalType,d=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),u=p(n),c=a,k=u["".concat(d,".").concat(c)]||u[c]||s[c]||l;return n?r.createElement(k,i(i({ref:e},m),{},{components:n})):r.createElement(k,i({ref:e},m))}));function k(t,e){var n=arguments,a=e&&e.mdxType;if("string"==typeof t||a){var l=n.length,i=new Array(l);i[0]=c;var o={};for(var d in e)hasOwnProperty.call(e,d)&&(o[d]=e[d]);o.originalType=t,o[u]="string"==typeof t?t:a,i[1]=o;for(var p=2;p{n.r(e),n.d(e,{assets:()=>d,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var r=n(87462),a=(n(67294),n(3905));const l={title:"String functions",tags:["Fields","Field types","Formula"]},i=void 0,o={unversionedId:"fields/field-types/formula/string-functions",id:"fields/field-types/formula/string-functions",title:"String functions",description:"String functions",source:"@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/string-functions",permalink:"/fields/field-types/formula/string-functions",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/030.string-functions.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"}],version:"current",sidebarPosition:30,frontMatter:{title:"String functions",tags:["Fields","Field types","Formula"]},sidebar:"tutorialSidebar",previous:{title:"Numeric functions",permalink:"/fields/field-types/formula/numeric-functions"},next:{title:"Date functions",permalink:"/fields/field-types/formula/date-functions"}},d={},p=[{value:"String functions",id:"string-functions",level:3},{value:"Related Articles",id:"related-articles",level:2}],m={toc:p},u="wrapper";function s(t){let{components:e,...n}=t;return(0,a.kt)(u,(0,r.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,a.kt)("h3",{id:"string-functions"},"String functions"),(0,a.kt)("table",null,(0,a.kt)("thead",{parentName:"table"},(0,a.kt)("tr",{parentName:"thead"},(0,a.kt)("th",{parentName:"tr",align:null},"Name"),(0,a.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,a.kt)("th",{parentName:"tr",align:null},"Sample"),(0,a.kt)("th",{parentName:"tr",align:null},"Output"))),(0,a.kt)("tbody",{parentName:"table"},(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"CONCAT")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"CONCAT(str1, [str2,...])")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"CONCAT({Column1}, ' ', {Column2})")),(0,a.kt)("td",{parentName:"tr",align:null},"Concatenated string of input parameters")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"LEFT")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LEFT(str1, n)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LEFT({Column}, 3)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"n")," characters from the beginning of input parameter")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"LEN")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LEN(str)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LEN({Column})")),(0,a.kt)("td",{parentName:"tr",align:null},"Input parameter character length")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"LOWER")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LOWER(str)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"LOWER({Column})")),(0,a.kt)("td",{parentName:"tr",align:null},"Lower case converted string of input parameter")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"MID")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"MID(str, position, [count])")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"MID({Column}, 3, 2)")),(0,a.kt)("td",{parentName:"tr",align:null},"Alias for ",(0,a.kt)("inlineCode",{parentName:"td"},"SUBSTR"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"REPEAT")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"REPEAT(str, count)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"REPEAT({Column}, 2)")),(0,a.kt)("td",{parentName:"tr",align:null},"Specified copies of the input parameter string concatenated together")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"REPLACE")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"REPLACE(str, srchStr, rplcStr)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"REPLACE({Column}, 'int', 'num')")),(0,a.kt)("td",{parentName:"tr",align:null},"String, after replacing all occurrences of ",(0,a.kt)("inlineCode",{parentName:"td"},"srchStr")," with ",(0,a.kt)("inlineCode",{parentName:"td"},"rplcStr"))),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"RIGHT")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"RIGHT(str, n)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"RIGHT({Column}, 3)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"n")," characters from the end of input parameter")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"SEARCH")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"SEARCH(str, srchStr)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"SEARCH({Column}, 'str')")),(0,a.kt)("td",{parentName:"tr",align:null},"Index of ",(0,a.kt)("inlineCode",{parentName:"td"},"srchStr")," specified if found, 0 otherwise")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"SUBSTR")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"SUBTR(str, position, [count])")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"SUBSTR({Column}, 3, 2)")),(0,a.kt)("td",{parentName:"tr",align:null},"Substring of length 'count' of input string, from the postition specified")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"TRIM")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"TRIM(str)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"TRIM({Column})")),(0,a.kt)("td",{parentName:"tr",align:null},"Remove trailing and leading whitespaces from input parameter")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"UPPER")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"UPPER(str)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"UPPER({Column})")),(0,a.kt)("td",{parentName:"tr",align:null},"Upper case converted string of input parameter")),(0,a.kt)("tr",{parentName:"tbody"},(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("strong",{parentName:"td"},"URL")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"URL(str)")),(0,a.kt)("td",{parentName:"tr",align:null},(0,a.kt)("inlineCode",{parentName:"td"},"URL({Column})")),(0,a.kt)("td",{parentName:"tr",align:null},"Convert to a hyperlink if it is a valid URL")))),(0,a.kt)("h2",{id:"related-articles"},"Related Articles"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/operators"},"Numeric and Logical Operators")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/numeric-functions"},"Numeric Functions")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/date-functions"},"Date Functions")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/formula/conditional-expressions"},"Conditional Expressions"))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0bd8cdc6.f4a94a31.js b/packages/noco-docs/dist/assets/js/0bd8cdc6.f4a94a31.js new file mode 100644 index 0000000000..e9309d33e5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0bd8cdc6.f4a94a31.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5707],{93713:e=>{e.exports=JSON.parse('{"label":"Roles","permalink":"/tags/roles","allTagsPath":"/tags","count":3,"items":[{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"roles-and-permissions/roles-permissions-overview","title":"Roles & permissions overview","description":"Learn about roles and permissions in NocoDB.","permalink":"/roles-and-permissions/roles-permissions-overview"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0c130525.033f7aac.js b/packages/noco-docs/dist/assets/js/0c130525.033f7aac.js new file mode 100644 index 0000000000..bd6c772e81 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0c130525.033f7aac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[604],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>k});var a=n(67294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var o=a.createContext({}),p=function(t){var e=a.useContext(o),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=p(t.components);return a.createElement(o.Provider,{value:e},t.children)},N="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},s=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,o=t.parentName,m=d(t,["components","mdxType","originalType","parentName"]),N=p(n),s=r,k=N["".concat(o,".").concat(s)]||N[s]||u[s]||l;return n?a.createElement(k,i(i({ref:e},m),{},{components:n})):a.createElement(k,i({ref:e},m))}));function k(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=s;var d={};for(var o in e)hasOwnProperty.call(e,o)&&(d[o]=e[o]);d.originalType=t,d[N]="string"==typeof t?t:r,i[1]=d;for(var p=2;p{n.r(e),n.d(e,{assets:()=>o,contentTitle:()=>i,default:()=>u,frontMatter:()=>l,metadata:()=>d,toc:()=>p});var a=n(87462),r=(n(67294),n(3905));const l={title:"Environment Variables",description:"Environment Variables for NocoDB!",hide_table_of_contents:!0},i=void 0,d={unversionedId:"getting-started/environment-variables",id:"version-0.109.7/getting-started/environment-variables",title:"Environment Variables",description:"Environment Variables for NocoDB!",source:"@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md",sourceDirName:"020.getting-started",slug:"/getting-started/environment-variables",permalink:"/0.109.7/getting-started/environment-variables",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md",tags:[],version:"0.109.7",sidebarPosition:20,frontMatter:{title:"Environment Variables",description:"Environment Variables for NocoDB!",hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Installation",permalink:"/0.109.7/getting-started/installation"},next:{title:"Upgrading",permalink:"/0.109.7/getting-started/upgrading"}},o={},p=[],m={toc:p},N="wrapper";function u(t){let{components:e,...n}=t;return(0,r.kt)(N,(0,a.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"For production usecases, it is ",(0,r.kt)("strong",{parentName:"p"},"recommended")," to configure "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_DB"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_AUTH_JWT_SECRET"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_PUBLIC_URL"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_REDIS_URL"))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Variable"),(0,r.kt)("th",{parentName:"tr",align:null},"Comments"),(0,r.kt)("th",{parentName:"tr",align:null},"If absent"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,r.kt)("td",{parentName:"tr",align:null},"See our database URLs"),(0,r.kt)("td",{parentName:"tr",align:null},"A local SQLite will be created in root folder if ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not provided")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB_JSON"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," and value should be valid knex connection JSON"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB_JSON_FILE"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," and value should be a valid path to knex connection JSON"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DATABASE_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"JDBC URL Format. Can be used instead of NC_DB."),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DATABASE_URL_FILE"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of DATABASE_URL: path to file containing JDBC URL Format."),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_AUTH_JWT_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"JWT secret used for auth and storing other secrets"),(0,r.kt)("td",{parentName:"tr",align:null},"A random secret will be generated")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"PORT"),(0,r.kt)("td",{parentName:"tr",align:null},"For setting app running port"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"8080"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_DEFAULT"),(0,r.kt)("td",{parentName:"tr",align:null},"Default pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"25")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_MAX"),(0,r.kt)("td",{parentName:"tr",align:null},"Maximum allowed pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"1000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_MIN"),(0,r.kt)("td",{parentName:"tr",align:null},"Minimum allowed pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_TOOL_DIR"),(0,r.kt)("td",{parentName:"tr",align:null},"App directory to keep metadata and app related files"),(0,r.kt)("td",{parentName:"tr",align:null},"Defaults to current working directory. In docker maps to ",(0,r.kt)("inlineCode",{parentName:"td"},"/usr/app/data/")," for mounting volume.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_PUBLIC_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Used for sending Email invitations"),(0,r.kt)("td",{parentName:"tr",align:null},"Best guess from http request params")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_JWT_EXPIRES_IN"),(0,r.kt)("td",{parentName:"tr",align:null},"JWT token expiry time"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"10h"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_CONNECT_TO_EXTERNAL_DB_DISABLED"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable Project creation with external database"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_INVITE_ONLY_SIGNUP"),(0,r.kt)("td",{parentName:"tr",align:null},"Removed since version 0.99.0 and now it's recommended to use ",(0,r.kt)("a",{parentName:"td",href:"/0.109.7/setup-and-usages/account-settings#enable--disable-signup"},"super admin settings menu"),". Allow users to signup only via invite url, value should be any non-empty string."),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NUXT_PUBLIC_NC_BACKEND_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom Backend URL"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"http://localhost:8080")," will be used")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_REQUEST_BODY_SIZE"),(0,r.kt)("td",{parentName:"tr",align:null},"Request body size ",(0,r.kt)("a",{parentName:"td",href:"https://expressjs.com/en/resources/middleware/body-parser.html#limit"},"limit")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"1048576"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_EXPORT_MAX_TIMEOUT"),(0,r.kt)("td",{parentName:"tr",align:null},"After NC_EXPORT_MAX_TIMEOUT csv gets downloaded in batches"),(0,r.kt)("td",{parentName:"tr",align:null},"Default value 5000(in millisecond) will be used")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_TELE"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable telemetry"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DASHBOARD_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom dashboard url path"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"/dashboard"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_GOOGLE_CLIENT_ID"),(0,r.kt)("td",{parentName:"tr",align:null},"Google client id to enable google authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_GOOGLE_CLIENT_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"Google client secret to enable google authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MIGRATIONS_DISABLED"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable NocoDB migration"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MIN"),(0,r.kt)("td",{parentName:"tr",align:null},"If set to any non-empty string the default splash screen(initial welcome animation) and matrix screensaver will disable"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SENTRY_DSN"),(0,r.kt)("td",{parentName:"tr",align:null},"For Sentry monitoring"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_REDIS_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom Redis URL. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"redis://:authpassword@127.0.0.1:6380/4")),(0,r.kt)("td",{parentName:"tr",align:null},"Meta data will be stored in memory")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_ERR_REPORT"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable error reporting"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_CACHE"),(0,r.kt)("td",{parentName:"tr",align:null},"To be used only while debugging. On setting this to ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," - meta data be fetched from db instead of redis/cache."),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"false"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_ACCESS_KEY_ID"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 access key id"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_SECRET_ACCESS_KEY"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 secret access key"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_BUCKET"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 bucket"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_BUCKET_PATH"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 bucket path (like folder within S3 bucket)"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_FROM"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - Email sender address"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_HOST"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - SMTP host value"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_PORT"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - SMTP port value"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_USERNAME"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - SMTP username value for authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_PASSWORD"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - SMTP password value for authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_SECURE"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - To enable secure set value as ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," any other value treated as false"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_IGNORE_TLS"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - To ignore tls set value as ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," any other value treated as false. For more info visit ",(0,r.kt)("a",{parentName:"td",href:"https://nodemailer.com/smtp/"},"https://nodemailer.com/smtp/")),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_BUCKET_NAME"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS S3 bucket name"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_REGION"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS S3 region"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_ACCESS_KEY"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS access key credential for accessing resource"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_ACCESS_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS access secret credential for accessing resource"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ADMIN_EMAIL"),(0,r.kt)("td",{parentName:"tr",align:null},"For updating/creating super admin with provided email and password"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ATTACHMENT_FIELD_SIZE"),(0,r.kt)("td",{parentName:"tr",align:null},"For setting the attachment field size(in Bytes)"),(0,r.kt)("td",{parentName:"tr",align:null},"Defaults to 20MB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ADMIN_PASSWORD"),(0,r.kt)("td",{parentName:"tr",align:null},"For updating/creating super admin with provided email and password. Your password should have at least 8 letters with one uppercase, one number and one special letter(Allowed special chars $&+,:;=?@#","|","'.^*()%!_-\" )"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NODE_OPTIONS"),(0,r.kt)("td",{parentName:"tr",align:null},"For passing Node.js ",(0,r.kt)("a",{parentName:"td",href:"https://nodejs.org/api/cli.html#node_optionsoptions"},"options")," to instance"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MINIMAL_DBS"),(0,r.kt)("td",{parentName:"tr",align:null},"Create a new SQLite file for each project. All the db files are stored in ",(0,r.kt)("inlineCode",{parentName:"td"},"nc_minimal_dbs")," folder in current working directory. (This option restricts project creation on external sources)"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_AUDIT"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable Audit Log"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"false"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_AUTOMATION_LOG_LEVEL"),(0,r.kt)("td",{parentName:"tr",align:null},"Possible Values: ",(0,r.kt)("inlineCode",{parentName:"td"},"OFF"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ERROR"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ALL"),". See ",(0,r.kt)("a",{parentName:"td",href:"/0.109.7/developer-resources/webhooks#call-log"},"Webhooks")," for details."),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OFF"))))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0cab3fcc.5d074144.js b/packages/noco-docs/dist/assets/js/0cab3fcc.5d074144.js new file mode 100644 index 0000000000..7e2d1a41c7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0cab3fcc.5d074144.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3479],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>k});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var d=a.createContext({}),s=function(e){var t=a.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},p=function(e){var t=s(e.components);return a.createElement(d.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},b=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,d=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),c=s(n),b=r,k=c["".concat(d,".").concat(b)]||c[b]||m[b]||o;return n?a.createElement(k,l(l({ref:t},p),{},{components:n})):a.createElement(k,l({ref:t},p))}));function k(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,l=new Array(o);l[0]=b;var i={};for(var d in t)hasOwnProperty.call(t,d)&&(i[d]=t[d]);i.originalType=e,i[c]="string"==typeof e?e:r,l[1]=i;for(var s=2;s{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>s});var a=n(87462),r=(n(67294),n(3905));const o={title:"Create webhook",description:"Learn how to create a webhook in NocoDB.",tags:["Webhook","Create"]},l=void 0,i={unversionedId:"automation/webhook/create-webhook",id:"automation/webhook/create-webhook",title:"Create webhook",description:"Learn how to create a webhook in NocoDB.",source:"@site/docs/130.automation/020.webhook/020.create-webhook.md",sourceDirName:"130.automation/020.webhook",slug:"/automation/webhook/create-webhook",permalink:"/automation/webhook/create-webhook",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/020.create-webhook.md",tags:[{label:"Webhook",permalink:"/tags/webhook"},{label:"Create",permalink:"/tags/create"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create webhook",description:"Learn how to create a webhook in NocoDB.",tags:["Webhook","Create"]},sidebar:"tutorialSidebar",previous:{title:"Webhook overview",permalink:"/automation/webhook/webhook-overview"},next:{title:"Actions on webhook",permalink:"/automation/webhook/actions-on-webhook"}},d={},s=[{value:"Create Webhook",id:"create-webhook",level:2},{value:"Accessing Webhook",id:"accessing-webhook",level:3},{value:"Configuring webhook",id:"configuring-webhook",level:3},{value:"Webhook Response Sample",id:"webhook-response-sample",level:3},{value:"Call Log",id:"call-log",level:2}],p=e=>function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",t)},c=p("Tabs"),m=p("TabItem"),b={toc:s},k="wrapper";function u(e){let{components:t,...o}=e;return(0,r.kt)(k,(0,a.Z)({},b,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"create-webhook"},"Create Webhook"),(0,r.kt)("h3",{id:"accessing-webhook"},"Accessing Webhook"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on table for which webhook needs to be configured on the left sidebar"),(0,r.kt)("li",{parentName:"ol"},"Open ",(0,r.kt)("inlineCode",{parentName:"li"},"Details")," tab in topbar,"),(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Webhooks")," tab"),(0,r.kt)("li",{parentName:"ol"},"Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Add New Webhook"))),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Accessing webhook",src:n(8322).Z,width:"2872",height:"1584"})),(0,r.kt)("h3",{id:"configuring-webhook"},"Configuring webhook"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Webhook Name: Name of the webhook"),(0,r.kt)("li",{parentName:"ol"},"Event: Select the event for which webhook needs to be triggered")),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Trigger"),(0,r.kt)("th",{parentName:"tr",align:null},"Details"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Insert"),(0,r.kt)("td",{parentName:"tr",align:null},"After a single record is inserted")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Update"),(0,r.kt)("td",{parentName:"tr",align:null},"After a single record is updated")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Delete"),(0,r.kt)("td",{parentName:"tr",align:null},"After a single record is deleted")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Bulk Insert"),(0,r.kt)("td",{parentName:"tr",align:null},"After bulk records are inserted")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Bulk Update"),(0,r.kt)("td",{parentName:"tr",align:null},"After bulk records are updated")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"After Bulk Delete"),(0,r.kt)("td",{parentName:"tr",align:null},"After bulk records are deleted")))),(0,r.kt)("ol",{start:3},(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},"Method & URL: Configure the endpoint to which webhook needs to be triggered. Supported methods are GET, POST, DELETE, PUT, HEAD, PATCH")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},"[Optional]"," Headers & Parameters: Configure Request headers & parameters (if any)")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},"[Optional]"," Condition: Only records meeting the criteria will trigger webhook")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},"[Optional]"," Test: Test webhook (with sample payload) to verify if parameter are configured appropriately")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},"Save: Save the webhook"))),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Configuring webhook",src:n(86369).Z,width:"2872",height:"1790"})),(0,r.kt)("h3",{id:"webhook-response-sample"},"Webhook Response Sample"),(0,r.kt)(c,{mdxType:"Tabs"},(0,r.kt)(m,{value:"After Insert",label:"After Insert",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'{\n "type": "records.after.insert",\n "id": "9dac1c54-b3be-49a1-a676-af388145fa8c",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_736wrpoas7tr0c",\n "view_name": "Film",\n "rows": [\n {\n "FilmId": 1011,\n "Title": "FOO",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n }\n ]\n }\n}\n'))),(0,r.kt)(m,{value:"After Update",label:"After Update",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'{\n "type": "records.after.update",\n "id": "6a6ebfe4-b0b5-434e-b5d6-5212adbf82fa",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_736wrpoas7tr0c",\n "view_name": "Film",\n "previous_rows": [\n {\n "FilmId": 1,\n "Title": "ACADEMY DINOSAUR",\n "Description": "A Epic Drama of a Feminist in The Canadian Rockies",\n "Actor List": [\n {\n "ActorId": 10,\n "FirstName": "CHRISTIAN"\n }\n ],\n }\n ],\n "rows": [\n {\n "FilmId": 1,\n "Title": "ACADEMY DINOSAUR (Edited)",\n "Actor List": [\n {\n "ActorId": 10,\n "FirstName": "CHRISTIAN"\n }\n ],\n }\n ]\n }\n}\n'))),(0,r.kt)(m,{value:"After Delete",label:"After Delete",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-bash"},'{\n "type": "records.after.delete",\n "id": "e593079f-70e5-4965-8944-5ff7aeed005c",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_736wrpoas7tr0c",\n "view_name": "Film",\n "rows": [\n {\n "FilmId": 1010,\n "Title": "ALL-EDITED",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n }\n ]\n }\n}\n'))),(0,r.kt)(m,{value:"After Bulk Insert",label:"After Bulk Insert",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "type": "records.after.bulkInsert",\n "id": "f8397b06-a399-4a3a-b6b0-6d1c0c2f7578",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_3fq2e9q8drkblw",\n "view_name": "GridView",\n "rows_inserted": 2\n }\n}\n'))),(0,r.kt)(m,{value:"After Bulk Update",label:"After Bulk Update",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "type": "records.after.bulkUpdate",\n "id": "e983cea5-8e38-438e-96a0-048751f6830b",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_3fq2e9q8drkblw",\n "view_name": "Sheet-1",\n "previous_rows": [\n [\n {\n "FilmId": 1005,\n "Title": "Q",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n },\n {\n "FilmId": 1004,\n "Title": "P",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n }\n }\n ]\n ],\n "rows": [\n [\n {\n "FilmId": 1005,\n "Title": "Q-EDITED",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n }\n },\n {\n "FilmId": 1004,\n "Title": "P-EDITED",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n }\n ]\n ]\n }\n}\n'))),(0,r.kt)(m,{value:"After Bulk Delete",label:"After Bulk Delete",mdxType:"TabItem"},(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'{\n "type": "records.after.bulkDelete",\n "id": "e7f1f4e5-7052-4ca2-9355-241ceb836f43",\n "data": {\n "table_id": "md_xzru7dcqrecc60",\n "table_name": "Film",\n "view_id": "vw_3fq2e9q8drkblw",\n "view_name": "Sheet-1",\n "rows": [\n [\n {\n "FilmId": 1022,\n "Title": "x",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n },\n {\n "FilmId": 1023,\n "Title": "x",\n "Language": {\n "LanguageId": 1,\n "Name": "English"\n },\n }\n ]\n ]\n }\n}\n')))),">",(0,r.kt)("h2",{id:"call-log"},"Call Log"),(0,r.kt)("p",null,"Call Log allows user to check the call history of the hook. By default, it has been disabled. However, it can be configured by using environment variable ",(0,r.kt)("inlineCode",{parentName:"p"},"NC_AUTOMATION_LOG_LEVEL"),"."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=OFF"),": No logs will be displayed and no history will be inserted to meta database."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=ERROR"),": only error logs will be displayed and history of error logs will be inserted to meta database."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=ALL"),": Both error and success logs will be displayed and history of both types of logs will be inserted to meta database. ",(0,r.kt)("strong",{parentName:"li"},"This option is only available for Enterprise Edition."))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/228790148-1e3f21c7-9385-413a-843f-b93073ca6bea.png",alt:"image"})))}u.isMDXComponent=!0},8322:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/create-webhook-1-be523f2a91b6829cd8d82915d07e92e4.png"},86369:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/create-webhook-2-ae6af25bd288d16427ddbcd283a32eb2.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0d8de604.4e8ef227.js b/packages/noco-docs/dist/assets/js/0d8de604.4e8ef227.js new file mode 100644 index 0000000000..681a347437 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0d8de604.4e8ef227.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2092],{34398:e=>{e.exports=JSON.parse('{"label":"Custom types","permalink":"/tags/custom-types","allTagsPath":"/tags","count":8,"items":[{"id":"fields/field-types/custom-types/attachment","title":"Attachment","description":"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.","permalink":"/fields/field-types/custom-types/attachment"},{"id":"fields/field-types/custom-types/barcode","title":"Barcode","description":"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/barcode"},{"id":"fields/field-types/custom-types/checkbox","title":"Checkbox","description":"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.","permalink":"/fields/field-types/custom-types/checkbox"},{"id":"fields/field-types/custom-types/geometry","title":"Geometry","description":"Create a geometry field","permalink":"/fields/field-types/custom-types/geometry"},{"id":"fields/field-types/custom-types/json","title":"JSON","description":"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.","permalink":"/fields/field-types/custom-types/json"},{"id":"fields/field-types/custom-types/QR-code","title":"QR code","description":"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/QR-code"},{"id":"fields/field-types/custom-types/rating","title":"Rating","description":"The","permalink":"/fields/field-types/custom-types/rating"},{"id":"fields/field-types/custom-types/specific-db-type","title":"Specific DB type","description":"Create a Specific DB Type field","permalink":"/fields/field-types/custom-types/specific-db-type"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0ecc5e11.7a3e22a9.js b/packages/noco-docs/dist/assets/js/0ecc5e11.7a3e22a9.js new file mode 100644 index 0000000000..751f600ba2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0ecc5e11.7a3e22a9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[117],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>g});var n=a(67294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function l(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var d=n.createContext({}),p=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):l(l({},e),t)),a},m=function(t){var e=p(t.components);return n.createElement(d.Provider,{value:e},t.children)},k="mdxType",c={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},s=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,d=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),k=p(a),s=r,g=k["".concat(d,".").concat(s)]||k[s]||c[s]||i;return a?n.createElement(g,l(l({ref:e},m),{},{components:a})):n.createElement(g,l({ref:e},m))}));function g(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,l=new Array(i);l[0]=s;var o={};for(var d in e)hasOwnProperty.call(e,d)&&(o[d]=e[d]);o.originalType=t,o[k]="string"==typeof t?t:r,l[1]=o;for(var p=2;p{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>p});var n=a(87462),r=(a(67294),a(3905));const i={title:"Keyboard shortcuts",tags:["Getting Started","Shortcuts","Productivity hacks"],keywords:["keyboard shortcuts","shortcuts","keyboard"]},l=void 0,o={unversionedId:"getting-started/keyboard-shortcuts",id:"getting-started/keyboard-shortcuts",title:"Keyboard shortcuts",description:"Quick Actions",source:"@site/docs/020.getting-started/040.keyboard-shortcuts.md",sourceDirName:"020.getting-started",slug:"/getting-started/keyboard-shortcuts",permalink:"/getting-started/keyboard-shortcuts",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/040.keyboard-shortcuts.md",tags:[{label:"Getting Started",permalink:"/tags/getting-started"},{label:"Shortcuts",permalink:"/tags/shortcuts"},{label:"Productivity hacks",permalink:"/tags/productivity-hacks"}],version:"current",sidebarPosition:40,frontMatter:{title:"Keyboard shortcuts",tags:["Getting Started","Shortcuts","Productivity hacks"],keywords:["keyboard shortcuts","shortcuts","keyboard"]},sidebar:"tutorialSidebar",previous:{title:"NocoDB terminologies",permalink:"/getting-started/terminologies"},next:{title:"Installation",permalink:"/getting-started/self-hosted/installation"}},d={},p=[{value:"Quick Actions",id:"quick-actions",level:2},{value:"General shortcuts",id:"general-shortcuts",level:2},{value:"Grid view shortcuts",id:"grid-view-shortcuts",level:2},{value:"Field type specific shortcuts",id:"field-type-specific-shortcuts",level:2},{value:"Expanded form shortcuts",id:"expanded-form-shortcuts",level:2}],m={toc:p},k="wrapper";function c(t){let{components:e,...i}=t;return(0,r.kt)(k,(0,n.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"quick-actions"},"Quick Actions"),(0,r.kt)("p",null,'Cmd+K (Ctrl+K on Windows) is a keyboard shortcut to quickly navigate between different workspace, table, view, or a menu items. For example, if you want to quickly navigate to the "API Tokens" page, you can open Quick Actions menu using \u2318+K, type "Token" in the search box and press enter.'),(0,r.kt)("p",null,"This shortcut is often referred to as \"Command-K\". It's a great way to save time when you're navigating around NocoDB."),(0,r.kt)("p",null,'Command-K menu can also be accessed via the "Quick Actions" button in the top left corner of the screen.'),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Quick Actions",src:a(13716).Z,width:"2870",height:"1316"})),(0,r.kt)("p",null,"To navigate within \u2318+K menu, "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"li"},"\u2193")," to navigate between listed items"),(0,r.kt)("li",{parentName:"ul"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"Enter")," to select an item"),(0,r.kt)("li",{parentName:"ul"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"Backspace")," to move to parent menu"),(0,r.kt)("li",{parentName:"ul"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"Esc")," to close the menu")),(0,r.kt)("h2",{id:"general-shortcuts"},"General shortcuts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"t")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Opens new table modal")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"c")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Opens new field modal")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"f")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Toggles fullscreen mode")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"i")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Opens share button modal")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"k")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Opens Quick Actions modal")))),(0,r.kt)("h2",{id:"grid-view-shortcuts"},"Grid view shortcuts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"General cell navigation")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Delete")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Clear cell")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Space")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Expand current record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Tab")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move to next cell horizontally; if on last cell, move to beginning of next record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Esc")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Exit cell EDIT mode")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Switch cell in focus to EDIT mode; opens modal/picker if cell is associated with one")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to first record in this field (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to last record in this field (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to first field in this record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to last field in this record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"c")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Copy cell contents")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"v")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Paste copied contents")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"r")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Inserts new record in grid view")))),(0,r.kt)("h2",{id:"field-type-specific-shortcuts"},"Field type specific shortcuts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"center"},"Datatype"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Text & Numerical cells"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move cursor to the left / right")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move cursor to the beginning / end")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Single Select"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Select option")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Multi Select"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Select / deselect option")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Link"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Link current selection")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Checkbox"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Toggle")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Rating"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"<0 ~ Max>")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enter number to toggle rating")))),(0,r.kt)("h2",{id:"expanded-form-shortcuts"},"Expanded form shortcuts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Save current expanded form item")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Switch to next record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Switch to previous record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"S")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Save current expanded form record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"alt")," + ",(0,r.kt)("inlineCode",{parentName:"td"},"N")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Create a new record")))))}c.isMDXComponent=!0},13716:(t,e,a)=>{a.d(e,{Z:()=>n});const n=a.p+"assets/images/cmd-k-a1a5afe1b0973128014fb87a3c909982.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0f4f52c0.3dfd1bea.js b/packages/noco-docs/dist/assets/js/0f4f52c0.3dfd1bea.js new file mode 100644 index 0000000000..0fa8514452 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0f4f52c0.3dfd1bea.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5822],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>u});var n=a(67294);function l(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(l[a]=e[a]);return l}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}var c=n.createContext({}),s=function(e){var t=n.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},d="mdxType",b={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,l=e.mdxType,i=e.originalType,c=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=s(a),m=l,u=d["".concat(c,".").concat(m)]||d[m]||b[m]||i;return a?n.createElement(u,o(o({ref:t},p),{},{components:a})):n.createElement(u,o({ref:t},p))}));function u(e,t){var a=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var i=a.length,o=new Array(i);o[0]=m;var r={};for(var c in t)hasOwnProperty.call(t,c)&&(r[c]=t[c]);r.originalType=e,r[d]="string"==typeof e?e:l,o[1]=r;for(var s=2;s{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>b,frontMatter:()=>i,metadata:()=>r,toc:()=>s});var n=a(87462),l=(a(67294),a(3905));const i={title:"Actions on table",description:"Learn how to rename, duplicate, and delete a table in NocoDB.",tags:["Tables","Rename","Duplicate","Delete"],keywords:["NocoDB table","rename table","duplicate table","delete table","table administration","table organization"]},o=void 0,r={unversionedId:"tables/actions-on-table",id:"tables/actions-on-table",title:"Actions on table",description:"Learn how to rename, duplicate, and delete a table in NocoDB.",source:"@site/docs/050.tables/060.actions-on-table.md",sourceDirName:"050.tables",slug:"/tables/actions-on-table",permalink:"/tables/actions-on-table",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/060.actions-on-table.md",tags:[{label:"Tables",permalink:"/tags/tables"},{label:"Rename",permalink:"/tags/rename"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Delete",permalink:"/tags/delete"}],version:"current",sidebarPosition:60,frontMatter:{title:"Actions on table",description:"Learn how to rename, duplicate, and delete a table in NocoDB.",tags:["Tables","Rename","Duplicate","Delete"],keywords:["NocoDB table","rename table","duplicate table","delete table","table administration","table organization"]},sidebar:"tutorialSidebar",previous:{title:"Import data into an existing table",permalink:"/tables/import-data-into-existing-table"},next:{title:"Table operations overview",permalink:"/table-operations/overview"}},c={},s=[{value:"Rename table",id:"rename-table",level:2},{value:"Duplicate table",id:"duplicate-table",level:2},{value:"Delete table",id:"delete-table",level:2},{value:"Related articles",id:"related-articles",level:2}],p={toc:s},d="wrapper";function b(e){let{components:t,...i}=e;return(0,l.kt)(d,(0,n.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"rename-table"},"Rename table"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Access the contextual menu for the table by clicking on the ellipsis symbol (",(0,l.kt)("inlineCode",{parentName:"li"},"..."),") located in the left sidebar."),(0,l.kt)("li",{parentName:"ol"},"Click on the ",(0,l.kt)("inlineCode",{parentName:"li"},"Rename")," option from the context menu."),(0,l.kt)("li",{parentName:"ol"},"Enter the desired new table name into the provided field."),(0,l.kt)("li",{parentName:"ol"},"To finalize the renaming process, click on the ",(0,l.kt)("inlineCode",{parentName:"li"},"Rename")," button.")),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(62117).Z,width:"2878",height:"1176"})),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(6140).Z,width:"2876",height:"1188"})),(0,l.kt)("h2",{id:"duplicate-table"},"Duplicate table"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Access the contextual menu for the table by clicking on the ellipsis symbol (",(0,l.kt)("inlineCode",{parentName:"li"},"..."),") located in the left sidebar."),(0,l.kt)("li",{parentName:"ol"},"Click on the ",(0,l.kt)("inlineCode",{parentName:"li"},"Duplicate")," option from the context menu."),(0,l.kt)("li",{parentName:"ol"},"For additional customization (Optional)\na) Under ",(0,l.kt)("inlineCode",{parentName:"li"},"Include data"),", you have the flexibility to choose whether to replicate the table with or without its data.\nb) Regarding ",(0,l.kt)("inlineCode",{parentName:"li"},"Include views")," you can select whether to duplicate the table with or without its associated views."),(0,l.kt)("li",{parentName:"ol"},"Proceed by clicking the ",(0,l.kt)("inlineCode",{parentName:"li"},"Duplicate Table")," button found in the confirmation dialog.")),(0,l.kt)("p",null,"A new table will be generated, mirroring the original table's schema and content, in accordance with the configurations specified in step 3."),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(62117).Z,width:"2878",height:"1176"})),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(18271).Z,width:"2878",height:"1210"})),(0,l.kt)("admonition",{type:"info"},(0,l.kt)("ul",{parentName:"admonition"},(0,l.kt)("li",{parentName:"ul"},"Duplicate table will be created in the same base as the original table"),(0,l.kt)("li",{parentName:"ul"},"Duplicate table will carry suffix ",(0,l.kt)("inlineCode",{parentName:"li"}," Copy")," in its name."),(0,l.kt)("li",{parentName:"ul"},"Duplicate table option is not available for ",(0,l.kt)("inlineCode",{parentName:"li"},"External DB")," projects"))),(0,l.kt)("h2",{id:"delete-table"},"Delete table"),(0,l.kt)("admonition",{type:"danger"},(0,l.kt)("p",{parentName:"admonition"},(0,l.kt)("strong",{parentName:"p"},"This action cannot be undone."))),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Access the contextual menu for the table by clicking on the ellipsis symbol (",(0,l.kt)("inlineCode",{parentName:"li"},"..."),") located in the left sidebar."),(0,l.kt)("li",{parentName:"ol"},"Click on the ",(0,l.kt)("inlineCode",{parentName:"li"},"Delete")," option from the context menu."),(0,l.kt)("li",{parentName:"ol"},"To finalize the deletion process, click on the ",(0,l.kt)("inlineCode",{parentName:"li"},"Delete")," button in the confirmation dialog.")),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(62117).Z,width:"2878",height:"1176"})),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(59359).Z,width:"2878",height:"1178"})),(0,l.kt)("h2",{id:"related-articles"},"Related articles"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/create-table"},"Create a new table")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/create-table-via-import"},"Create a table using a CSV, Excel or a JSON")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/import-data-into-existing-table"},"Import data from Csv/Xlsx into existing table")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/actions-on-table#rename-table"},"Rename a table")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/actions-on-table#duplicate-table"},"Duplicate a table")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/tables/actions-on-table#delete-table"},"Delete a table"))))}b.isMDXComponent=!0},62117:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/table-context-menu-0d6be8893f4a97f8fb53365af006c97d.png"},59359:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/table-delete-f192bb8c382c339ad0210e1289fcd879.png"},18271:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/table-duplicate-d45db255c689cba50d599909e603dfd1.png"},6140:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/table-rename-da76d830b3965e2415505f58981f5dfb.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/0f6b8098.784442da.js b/packages/noco-docs/dist/assets/js/0f6b8098.784442da.js new file mode 100644 index 0000000000..b052200060 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/0f6b8098.784442da.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6157],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>b});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var s=n.createContext({}),c=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},d=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,l=e.originalType,s=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),p=c(a),m=i,b=p["".concat(s,".").concat(m)]||p[m]||u[m]||l;return a?n.createElement(b,o(o({ref:t},d),{},{components:a})):n.createElement(b,o({ref:t},d))}));function b(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var l=a.length,o=new Array(l);o[0]=m;var r={};for(var s in t)hasOwnProperty.call(t,s)&&(r[s]=t[s]);r.originalType=e,r[p]="string"==typeof e?e:i,o[1]=r;for(var c=2;c{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>u,frontMatter:()=>l,metadata:()=>r,toc:()=>c});var n=a(87462),i=(a(67294),a(3905));const l={title:"Table Operations",description:"Table Operations: Row, Column, Quick Import, Export & Import"},o=void 0,r={unversionedId:"setup-and-usages/table-operations",id:"version-0.109.7/setup-and-usages/table-operations",title:"Table Operations",description:"Table Operations: Row, Column, Quick Import, Export & Import",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/table-operations",permalink:"/0.109.7/setup-and-usages/table-operations",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md",tags:[],version:"0.109.7",sidebarPosition:20,frontMatter:{title:"Table Operations",description:"Table Operations: Row, Column, Quick Import, Export & Import"},sidebar:"tutorialSidebar",previous:{title:"Dashboard",permalink:"/0.109.7/setup-and-usages/dashboard"},next:{title:"Column Operations",permalink:"/0.109.7/setup-and-usages/column-operations"}},s={},c=[{value:"Table",id:"table",level:2},{value:"Table Create",id:"table-create",level:3},{value:"Table Rename",id:"table-rename",level:3},{value:"Table Delete",id:"table-delete",level:3},{value:"Column",id:"column",level:2},{value:"Column Add",id:"column-add",level:3},{value:"Column Edit",id:"column-edit",level:3},{value:"Column Delete",id:"column-delete",level:3},{value:"Row",id:"row",level:2},{value:"Row Add (Using Form)",id:"row-add-using-form",level:3},{value:"Row Add (Using Table Row at bottom of page)",id:"row-add-using-table-row-at-bottom-of-page",level:3},{value:"Row Add (Pressing Enter Key from Previous Row)",id:"row-add-pressing-enter-key-from-previous-row",level:3},{value:"Row Edit",id:"row-edit",level:3},{value:"Row Delete",id:"row-delete",level:3},{value:"Quick Import",id:"quick-import",level:2},{value:"Import Airtable into an Existing Project",id:"import-airtable-into-an-existing-project",level:3},{value:"Import CSV data into an Existing Project",id:"import-csv-data-into-an-existing-project",level:3},{value:"Import Excel data into an Existing Project",id:"import-excel-data-into-an-existing-project",level:3},{value:"Export Data",id:"export-data",level:2},{value:"Import Data",id:"import-data",level:2}],d={toc:c},p="wrapper";function u(e){let{components:t,...a}=e;return(0,i.kt)(p,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"Once you have created a new NocoDB project you can open it, In the browser, the URL would be like ",(0,i.kt)("inlineCode",{parentName:"p"},"example.com/#/default/"),"."),(0,i.kt)("h2",{id:"table"},"Table"),(0,i.kt)("h3",{id:"table-create"},"Table Create"),(0,i.kt)("p",null,"On project dashboard, click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Add new table")," button"),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/0b1d0b89-b3c6-4c3c-8208-4b6afce67d23",alt:"table-create-button"})),(0,i.kt)("p",null,"Provide a name for the table & click ",(0,i.kt)("inlineCode",{parentName:"p"},"Create Table")," button."),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/fceb6c48-e0d6-428c-bb16-d2da4e38a81f",alt:"table-create-modal"})),(0,i.kt)("p",null,"After the successful submission, the table will be created and open on a new grid. "),(0,i.kt)("img",{width:"1504",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795081-f41ebd4d-7fa9-4f65-a66f-3d2375925106.png"}),(0,i.kt)("h3",{id:"table-rename"},"Table Rename"),(0,i.kt)("p",null,"Right click on Table name on left hand project-tree menu, select ",(0,i.kt)("inlineCode",{parentName:"p"},"Rename")),(0,i.kt)("img",{width:"606",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795096-82b007fb-f57a-4141-938e-be502b1fb2cd.png"}),(0,i.kt)("p",null,"In modal popup, enter new table name and click ",(0,i.kt)("inlineCode",{parentName:"p"},"Submit")," button"),(0,i.kt)("img",{width:"1506",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795119-4aeb05e1-16d5-4b4f-bf6c-81752234d946.png"}),(0,i.kt)("h3",{id:"table-delete"},"Table Delete"),(0,i.kt)("p",null,"Right click on Table name on left hand project-tree menu, select ",(0,i.kt)("inlineCode",{parentName:"p"},"Delete")),(0,i.kt)("img",{width:"641",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795140-4fe71896-0802-45dd-9c93-64e51925be57.png"}),(0,i.kt)("p",null,"Click Yes to confirm the table deletion"),(0,i.kt)("img",{width:"1507",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795152-9bdbf8df-846e-42f3-89d0-c68bce022cc1.png"}),(0,i.kt)("h2",{id:"column"},"Column"),(0,i.kt)("h3",{id:"column-add"},"Column Add"),(0,i.kt)("p",null,"Click the ",(0,i.kt)("inlineCode",{parentName:"p"},"+")," icon on the right corner of the table."),(0,i.kt)("img",{width:"352",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189053971-a3d29b3b-1177-49fe-8178-8868528fe3e7.png"}),(0,i.kt)("p",null,"After the click, it will show a menu and you can enter the column name and choose the column type. (See ",(0,i.kt)("a",{parentName:"p",href:"./column-types"},"Column Types")," for the full list)."),(0,i.kt)("img",{width:"459",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189073266-a0f19e2e-5dd2-4343-8c74-4ef709da272c.png"}),(0,i.kt)("p",null,"You can also click ",(0,i.kt)("inlineCode",{parentName:"p"},"Show more")," for additional menu options."),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/222749857-0e793db2-a5d2-4b54-8d23-2a0cbbec8f5d.png",alt:"Screenshot 2023-03-03 at 8 13 07 PM"})),(0,i.kt)("p",null,"Click ",(0,i.kt)("inlineCode",{parentName:"p"},"Save")," button to create the new column. "),(0,i.kt)("img",{width:"1509",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795274-08483315-5538-4685-8c08-261a9c2dfe14.png"}),(0,i.kt)("h3",{id:"column-edit"},"Column Edit"),(0,i.kt)("p",null,"To edit column properties, click the down arrow, select ",(0,i.kt)("inlineCode",{parentName:"p"},"Edit")," from the menu. "),(0,i.kt)("img",{width:"230",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189077129-dfb7a815-3fc7-41ea-b72c-e57f3c30a7f4.png"}),"You will be able to edit column name & associated datatype using pop-up modal. You can also click `Show more` for additional menu options.",(0,i.kt)("img",{width:"497",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189077270-7acdc818-3747-4307-93fb-e970cb7936f9.png"}),(0,i.kt)("p",null,"Prior to v0.104.3, Advanced menu by default displayed developer specific database configuration options. To avoid unintended tweaks from user, these are now hidden under an easter egg menu. To enable, double click on ",(0,i.kt)("inlineCode",{parentName:"p"},"show all"),"/",(0,i.kt)("inlineCode",{parentName:"p"},"hide all")," button in column edit modal."),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/223024810-85dac1c6-87ef-4193-90cb-3a05be8ccc1d.png",alt:"Screenshot 2023-03-06 at 10 45 26 AM"})),(0,i.kt)("h3",{id:"column-delete"},"Column Delete"),(0,i.kt)("p",null,"To delete a column, click the down arrow, select ",(0,i.kt)("inlineCode",{parentName:"p"},"Delete")," from the menu. "),(0,i.kt)("img",{width:"256",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189077566-c9376e4e-9ee8-4ffa-b437-1240894a30cd.png"}),(0,i.kt)("p",null,"Click ",(0,i.kt)("inlineCode",{parentName:"p"},"Yes")," to confirm the column deletion. "),(0,i.kt)("img",{width:"1507",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795311-c2a5587e-d92f-4b88-a8a3-e20ac13c694b.png"}),(0,i.kt)("h2",{id:"row"},"Row"),(0,i.kt)("p",null,"For adding new values to the table we need new rows, new rows can be added in two methods."),(0,i.kt)("h3",{id:"row-add-using-form"},"Row Add (Using Form)"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Click the ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon in the toolbar of the table tab. ",(0,i.kt)("img",{width:"1038",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189079143-8f3e3dd6-9b62-4fb0-9a78-a57545026d11.png"})),(0,i.kt)("li",{parentName:"ul"},"Then you can enter the values and click ",(0,i.kt)("inlineCode",{parentName:"li"},"Save row"),". ",(0,i.kt)("img",{width:"1506",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795353-2d90316f-a5e4-41af-8931-20b3c6ed08dc.png"})),(0,i.kt)("li",{parentName:"ul"},"After saving it will be there on your table. ",(0,i.kt)("img",{width:"620",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795402-d7c26ced-a009-43d9-a4a4-e3c2653225f0.png"}))),(0,i.kt)("h3",{id:"row-add-using-table-row-at-bottom-of-page"},"Row Add (Using Table Row at bottom of page)"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Click the bottom row of the table ",(0,i.kt)("inlineCode",{parentName:"li"},"+ Add new row"),".",(0,i.kt)("img",{width:"545",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189079815-9a7ea5e3-4eb7-452e-99a8-78c271f2ad1f.png"})),(0,i.kt)("li",{parentName:"ul"},"A new empty row will be created",(0,i.kt)("img",{width:"567",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189080009-3aeb70b4-92b0-4702-acb9-e5e52e31855e.png"}))),(0,i.kt)("h3",{id:"row-add-pressing-enter-key-from-previous-row"},"Row Add (Pressing Enter Key from Previous Row)"),(0,i.kt)("p",null,"When you finish editing a cell and press Enter, the cell in the next row with the same column will be highlighted."),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203271676-bab64ca4-e0e4-4deb-9a62-609a97158911.png",alt:"image"})),(0,i.kt)("h3",{id:"row-edit"},"Row Edit"),(0,i.kt)("p",null,"You can start editing by any of the following methods "),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Double click on cell to edit "),(0,i.kt)("li",{parentName:"ul"},"Click on cell and start typing (this way it will clear the previous content) "),(0,i.kt)("li",{parentName:"ul"},"Click on cell and press enter to start editing"),(0,i.kt)("li",{parentName:"ul"},"And it will automatically save on blur event or if inactive. ")),(0,i.kt)("h3",{id:"row-delete"},"Row Delete"),(0,i.kt)("p",null,"Right-click on anywhere in the row and then from the context menu select ",(0,i.kt)("inlineCode",{parentName:"p"},"Delete Row")," option. "),(0,i.kt)("p",null,"Bulk delete is also possible by selecting multiple rows by using the checkbox in first column and then ",(0,i.kt)("inlineCode",{parentName:"p"},"Delete Selected Rows")," options from the right click context menu."),(0,i.kt)("img",{width:"568",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189081764-9f13c286-e02a-40d0-93ea-4b1362d96827.png"}),(0,i.kt)("h2",{id:"quick-import"},"Quick Import"),(0,i.kt)("p",null,"You can use Quick Import when you have data from external sources such as Airtable, CSV file or Microsoft Excel to an existing project by either "),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Hover ",(0,i.kt)("inlineCode",{parentName:"li"},"Add new table")," button in table menu, click three dots, use Quick Import to create"),(0,i.kt)("li",{parentName:"ul"},"Drag and drop CSV, JSON or Excel file to import")),(0,i.kt)("img",{width:"1505",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795025-afd81191-4743-435b-b802-88367d2663f9.png"}),(0,i.kt)("h3",{id:"import-airtable-into-an-existing-project"},"Import Airtable into an Existing Project"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"See ",(0,i.kt)("a",{parentName:"li",href:"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free"},"here"))),(0,i.kt)("h3",{id:"import-csv-data-into-an-existing-project"},"Import CSV data into an Existing Project"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Hover ",(0,i.kt)("inlineCode",{parentName:"li"},"Add new table")," button in table menu, click three dots, and click ",(0,i.kt)("inlineCode",{parentName:"li"},"CSV file")),(0,i.kt)("li",{parentName:"ul"},"Drag & drop or select files (at most 5 files) to upload or specify CSV file URL, and Click Import",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Auto-Select Field Types"),": If it is checked, column types will be detected. Otherwise, it will default to ",(0,i.kt)("inlineCode",{parentName:"li"},"SingleLineText"),"."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Use First Row as Headers"),": If it is checked, the first row will be treated as header row."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Import Data"),": If it is checked, all data will be imported. Otherwise, only table will be created.\n",(0,i.kt)("img",{parentName:"li",src:"https://user-images.githubusercontent.com/35857179/197454479-1ed18dce-1d0b-4ee3-88b3-9b6a132dea2a.png",alt:"image"})))),(0,i.kt)("li",{parentName:"ul"},"You can revise the table name by double-clicking it, column name and column type. By default, the first column will be chosen as ",(0,i.kt)("a",{href:"/0.109.7/setup-and-usages/display-value",target:"_blank"},"Display Value")," and cannot be deleted.\n",(0,i.kt)("img",{parentName:"li",src:"https://user-images.githubusercontent.com/35857179/197454633-5b30323e-2b13-4c55-843a-948c093d373e.png",alt:"image"})),(0,i.kt)("li",{parentName:"ul"},"Click ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," to start importing process. The table will be created and the data will be imported.\n",(0,i.kt)("img",{parentName:"li",src:"https://user-images.githubusercontent.com/35857179/197455547-2d93df5e-a7f0-4c88-af53-990067625967.png",alt:"image"}))),(0,i.kt)("h3",{id:"import-excel-data-into-an-existing-project"},"Import Excel data into an Existing Project"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Hover ",(0,i.kt)("inlineCode",{parentName:"li"},"Add new table")," button in table menu, click three dots, and click ",(0,i.kt)("inlineCode",{parentName:"li"},"Microsoft Excel")),(0,i.kt)("li",{parentName:"ul"},"Drag & drop or select file (at most 1 file) to upload or specify Excel file URL and Click Import.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Auto-Select Field Types"),": If it is checked, column types will be detected. Otherwise, it will default to ",(0,i.kt)("inlineCode",{parentName:"li"},"SingleLineText"),"."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Use First Row as Headers"),": If it is checked, the first row will be treated as header row."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Import Data"),": If it is checked, all data will be imported. Otherwise, only table will be created.\n",(0,i.kt)("img",{parentName:"li",src:"https://user-images.githubusercontent.com/35857179/197455788-8dd8a7d1-38f3-48c3-a05e-6ab0cf25045c.png",alt:"image"})))),(0,i.kt)("li",{parentName:"ul"},"You can revise the table name, column name and column type. By default, the first column will be chosen as ",(0,i.kt)("a",{href:"/0.109.7/setup-and-usages/display-value",target:"_blank"},"Display Value")," and cannot be deleted.")),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("p",{parentName:"admonition"},"If your Excel file contains multiple sheets, each sheet will be stored in a separate table.")),(0,i.kt)("img",{width:"1449",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795771-77963196-8e10-4f45-b605-eb1089d6bc9b.png"}),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},"Click ",(0,i.kt)("inlineCode",{parentName:"p"},"Import")," to start importing process. The table(s) will be created and the data will be imported to the corresponding table(s)."),(0,i.kt)("img",{width:"1508",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795789-80366467-9778-464b-bce0-a5c0dfe97522.png"}))),(0,i.kt)("h2",{id:"export-data"},"Export Data"),(0,i.kt)("p",null,"You can export your data from a table as a CSV file by clicking the down arrow next to Table name and hover on ",(0,i.kt)("inlineCode",{parentName:"p"},"Download"),". Currently only CSV and XLSX formats are supported for export."),(0,i.kt)("img",{width:"660",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795866-a2db2a9b-d8e3-43f2-aec5-085e1932a0a5.png"}),(0,i.kt)("h2",{id:"import-data"},"Import Data"),(0,i.kt)("p",null,"You can import your data in CSV format to a table by clicking the down arrow next to Table name and hover on ",(0,i.kt)("inlineCode",{parentName:"p"},"Upload"),". Currently only CSV format is supported for upload."),(0,i.kt)("img",{width:"668",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194795880-60bf2003-0bef-45cd-aafa-1b97adb75d42.png"}))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/105fb6bf.280db2b3.js b/packages/noco-docs/dist/assets/js/105fb6bf.280db2b3.js new file mode 100644 index 0000000000..a0da5bd460 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/105fb6bf.280db2b3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5408],{93163:e=>{e.exports=JSON.parse('{"label":"URL","permalink":"/tags/url","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/text-based/url","title":"URL","description":"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/url"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/10779e77.f565d9f8.js b/packages/noco-docs/dist/assets/js/10779e77.f565d9f8.js new file mode 100644 index 0000000000..35271e4783 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/10779e77.f565d9f8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1990],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>h});var n=r(67294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var l=n.createContext({}),c=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},u=function(e){var t=c(e.components);return n.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,a=e.mdxType,i=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),p=c(r),m=a,h=p["".concat(l,".").concat(m)]||p[m]||d[m]||i;return r?n.createElement(h,o(o({ref:t},u),{},{components:r})):n.createElement(h,o({ref:t},u))}));function h(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=r.length,o=new Array(i);o[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:a,o[1]=s;for(var c=2;c{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var n=r(87462),a=(r(67294),r(3905));const i={title:"Share View",description:"Procedures to share a view"},o=void 0,s={unversionedId:"setup-and-usages/share-view",id:"version-0.109.7/setup-and-usages/share-view",title:"Share View",description:"Procedures to share a view",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/share-view",permalink:"/0.109.7/setup-and-usages/share-view",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md",tags:[],version:"0.109.7",sidebarPosition:140,frontMatter:{title:"Share View",description:"Procedures to share a view"},sidebar:"tutorialSidebar",previous:{title:"Share Base",permalink:"/0.109.7/setup-and-usages/share-base"},next:{title:"Keyboard Maneuver",permalink:"/0.109.7/setup-and-usages/keyboard-maneuver"}},l={},c=[{value:"Generate Share View",id:"generate-share-view",level:2},{value:"Access Share View",id:"access-share-view",level:2}],u={toc:c},p="wrapper";function d(e){let{components:t,...r}=e;return(0,a.kt)(p,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"generate-share-view"},"Generate Share View"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},"Open a table or a view")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("p",{parentName:"li"},"Click ",(0,a.kt)("inlineCode",{parentName:"p"},"Share View")," on the toolbar"))),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194689843-53ba719f-8071-4c6f-84e3-57078f0f4c4a.png",alt:"image"})),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Copy the link and share to someone")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194689920-32f1a321-d00d-48fb-bc55-99d761133c6f.png",alt:"image"})),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Optionally you can enable ",(0,a.kt)("inlineCode",{parentName:"li"},"Use Theme")," to select the share view theme (Only Form View is supported currently)")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194689949-8bee012c-cb7c-459e-9bac-c17004f55bc0.png",alt:"image"})),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"or you can enable ",(0,a.kt)("inlineCode",{parentName:"li"},"Restrict access with a password")," if you want a password-protected view")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194689978-b62b7e8d-bb8f-4da9-86e7-335af453ed2e.png",alt:"image"})),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"or you can ",(0,a.kt)("inlineCode",{parentName:"li"},"Download allowed")," if you want the people with this link can download the data")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194690197-8474381f-98ca-43e7-a343-99cd738f4b25.png",alt:"image"})),(0,a.kt)("h2",{id:"access-share-view"},"Access Share View"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Access the link. If it is password-protected, enter the password to unlock.")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194690379-e3d89df6-d9c1-4d9d-9e8c-7e59c3978d31.png",alt:"image"})),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Otherwise, you should see the share view.")),(0,a.kt)("p",null,(0,a.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194690389-5b78e236-aacc-49c2-898e-110f95edd1e5.png",alt:"image"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/10b0edf0.d146c46b.js b/packages/noco-docs/dist/assets/js/10b0edf0.d146c46b.js new file mode 100644 index 0000000000..bdeecf51dd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/10b0edf0.d146c46b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8946],{27046:e=>{e.exports=JSON.parse('{"label":"Checkbox","permalink":"/tags/checkbox","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/checkbox","title":"Checkbox","description":"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.","permalink":"/fields/field-types/custom-types/checkbox"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/11d84c26.1ee346ed.js b/packages/noco-docs/dist/assets/js/11d84c26.1ee346ed.js new file mode 100644 index 0000000000..8cfd2b55b5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/11d84c26.1ee346ed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5336],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>u});var i=l(67294);function a(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function n(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,i)}return l}function r(e){for(var t=1;t=0||(a[l]=e[l]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(a[l]=e[l])}return a}var s=i.createContext({}),d=function(e){var t=i.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},p=function(e){var t=d(e.components);return i.createElement(s.Provider,{value:t},e.children)},m="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},f=i.forwardRef((function(e,t){var l=e.components,a=e.mdxType,n=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),m=d(l),f=a,u=m["".concat(s,".").concat(f)]||m[f]||c[f]||n;return l?i.createElement(u,r(r({ref:t},p),{},{components:l})):i.createElement(u,r({ref:t},p))}));function u(e,t){var l=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=l.length,r=new Array(n);r[0]=f;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[m]="string"==typeof e?e:a,r[1]=o;for(var d=2;d{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>c,frontMatter:()=>n,metadata:()=>o,toc:()=>d});var i=l(87462),a=(l(67294),l(3905));const n={title:"Email",tags:["Fields","Field types","Text based types","Email"]},r=void 0,o={unversionedId:"fields/field-types/text-based/email",id:"fields/field-types/text-based/email",title:"Email",description:"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with",source:"@site/docs/070.fields/040.field-types/010.text-based/030.email.md",sourceDirName:"070.fields/040.field-types/010.text-based",slug:"/fields/field-types/text-based/email",permalink:"/fields/field-types/text-based/email",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/030.email.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Text based types",permalink:"/tags/text-based-types"},{label:"Email",permalink:"/tags/email"}],version:"current",sidebarPosition:30,frontMatter:{title:"Email",tags:["Fields","Field types","Text based types","Email"]},sidebar:"tutorialSidebar",previous:{title:"Long text",permalink:"/fields/field-types/text-based/long-text"},next:{title:"Phone Number",permalink:"/fields/field-types/text-based/phonenumber"}},s={},d=[{value:"Create an Email field",id:"create-an-email-field",level:2},{value:"Similar text based fields",id:"similar-text-based-fields",level:2}],p={toc:d},m="wrapper";function c(e){let{components:t,...n}=e;return(0,a.kt)(m,(0,i.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"Email")," field is text based field custom-built for storing E-mail IDs. It is a special type of ",(0,a.kt)("inlineCode",{parentName:"p"},"Single line text")," field with"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Optional validation for Email ID"),(0,a.kt)("li",{parentName:"ul"},"Cell display as clickable link")),(0,a.kt)("h2",{id:"create-an-email-field"},"Create an ",(0,a.kt)("inlineCode",{parentName:"h2"},"Email")," field"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,a.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,a.kt)("li",{parentName:"ol"},"Select the field type as ",(0,a.kt)("inlineCode",{parentName:"li"},"Email")," from the dropdown."),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," Enable validation by toggling the ",(0,a.kt)("inlineCode",{parentName:"li"},"Validate Email")," checkbox."),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:l(40436).Z,width:"1266",height:"527"})),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("ul",{parentName:"admonition"},(0,a.kt)("li",{parentName:"ul"},"Specify default value without quotes."),(0,a.kt)("li",{parentName:"ul"},"Validation only ensures that the value entered is a valid email ID. It does not check if the email ID exists."))),(0,a.kt)("h2",{id:"similar-text-based-fields"},"Similar text based fields"),(0,a.kt)("p",null,"Following are the other text based fields available in NocoDB, custom-built for specific use cases."),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/single-line-text"},"Single line text")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/long-text"},"Long text")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/url"},"URL")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/phonenumber"},"Phone"))))}c.isMDXComponent=!0},40436:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/email-c71401cef80f194154a62a734ca9ccab.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/14095bfc.a9ef060c.js b/packages/noco-docs/dist/assets/js/14095bfc.a9ef060c.js new file mode 100644 index 0000000000..8ab23f912e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/14095bfc.a9ef060c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5922],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var o=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function r(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=o.createContext({}),c=function(e){var t=o.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},d=function(e){var t=c(e.components);return o.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},f=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,l=e.originalType,s=e.parentName,d=a(e,["components","mdxType","originalType","parentName"]),p=c(n),f=i,m=p["".concat(s,".").concat(f)]||p[f]||u[f]||l;return n?o.createElement(m,r(r({ref:t},d),{},{components:n})):o.createElement(m,r({ref:t},d))}));function m(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var l=n.length,r=new Array(l);r[0]=f;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a[p]="string"==typeof e?e:i,r[1]=a;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>u,frontMatter:()=>l,metadata:()=>a,toc:()=>c});var o=n(87462),i=(n(67294),n(3905));const l={title:"Single Select",tags:["Fields","Field types","Select based types","Single select"]},r=void 0,a={unversionedId:"fields/field-types/select-based/single-select",id:"fields/field-types/select-based/single-select",title:"Single Select",description:"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.",source:"@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md",sourceDirName:"070.fields/040.field-types/030.select-based",slug:"/fields/field-types/select-based/single-select",permalink:"/fields/field-types/select-based/single-select",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/010.single-select.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Select based types",permalink:"/tags/select-based-types"},{label:"Single select",permalink:"/tags/single-select"}],version:"current",sidebarPosition:10,frontMatter:{title:"Single Select",tags:["Fields","Field types","Select based types","Single select"]},sidebar:"tutorialSidebar",previous:{title:"Currency",permalink:"/fields/field-types/numerical/currency"},next:{title:"Multi Select",permalink:"/fields/field-types/select-based/multi-select"}},s={},c=[{value:"Create a single select field",id:"create-a-single-select-field",level:2},{value:"Edit options",id:"edit-options",level:2},{value:"Rename options",id:"rename-options",level:3},{value:"Re-configure color for options",id:"re-configure-color-for-options",level:3},{value:"Re-order options",id:"re-order-options",level:3},{value:"Delete options",id:"delete-options",level:3},{value:"Similar select based fields",id:"similar-select-based-fields",level:2}],d={toc:c},p="wrapper";function u(e){let{components:t,...l}=e;return(0,i.kt)(p,(0,o.Z)({},d,l,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Single select")," fields allow you to select a single option from a list of options. The options can be defined in the field configuration."),(0,i.kt)("h2",{id:"create-a-single-select-field"},"Create a single select field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"SingleSelect")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Add option")," button to add options."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field. The options are populated in the dropdown."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(75230).Z,width:"1268",height:"754"})),(0,i.kt)("h2",{id:"edit-options"},"Edit options"),(0,i.kt)("h3",{id:"rename-options"},"Rename options"),(0,i.kt)("p",null,"You can rename options by clicking on the associated option text box. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the changes."),(0,i.kt)("h3",{id:"re-configure-color-for-options"},"Re-configure color for options"),(0,i.kt)("p",null,"You can re-configure background color for each option. This is useful when you want to highlight certain options. For example, you can configure ",(0,i.kt)("inlineCode",{parentName:"p"},"High")," option to have ",(0,i.kt)("inlineCode",{parentName:"p"},"red")," background color.\nTo configure, click on the ",(0,i.kt)("inlineCode",{parentName:"p"},"color")," icon next to the option. Select the color from the color picker and click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(68261).Z,width:"450",height:"542"})),(0,i.kt)("h3",{id:"re-order-options"},"Re-order options"),(0,i.kt)("p",null,"You can re-order options by dragging and dropping the options. To re-order, click on the ",(0,i.kt)("inlineCode",{parentName:"p"},"drag")," icon next to the option and drag it to the desired position. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the order."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(28654).Z,width:"402",height:"541"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"The order defined for the options will be used in cells dropdown as well.")),(0,i.kt)("h3",{id:"delete-options"},"Delete options"),(0,i.kt)("p",null,"You can delete options by clicking on the ",(0,i.kt)("inlineCode",{parentName:"p"},"x")," icon next to the option. You can undo the delete by clicking on the ",(0,i.kt)("inlineCode",{parentName:"p"},"undo")," icon next to the option. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the changes."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"On removing an option, the option value will be removed from all the cells. "),(0,i.kt)("li",{parentName:"ul"},"If the option value is set as default value for the field, then the default value will be removed."))),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(17517).Z,width:"400",height:"541"})),(0,i.kt)("h2",{id:"similar-select-based-fields"},"Similar select based fields"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/select-based/multi-select"},"Multi select"))))}u.isMDXComponent=!0},68261:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/single-select-color-8658ed7709d43bb4506b61e0ce420f21.png"},17517:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/single-select-delete-656a108ff71fbef65411239787f27861.png"},28654:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/single-select-reorder-906d6ae0697610c5df2c4f3c49545a38.png"},75230:(e,t,n)=>{n.d(t,{Z:()=>o});const o=n.p+"assets/images/single-select-6629e5aac22d5cd29b447a0e7a777755.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/147f12f7.c9c849d0.js b/packages/noco-docs/dist/assets/js/147f12f7.c9c849d0.js new file mode 100644 index 0000000000..bd4e8c8e6c --- /dev/null +++ b/packages/noco-docs/dist/assets/js/147f12f7.c9c849d0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4918],{28123:e=>{e.exports=JSON.parse('{"label":"Rename","permalink":"/tags/rename","allTagsPath":"/tags","count":5,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"},{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"tables/actions-on-table","title":"Actions on table","description":"Learn how to rename, duplicate, and delete a table in NocoDB.","permalink":"/tables/actions-on-table"},{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"workspaces/actions-on-workspace","title":"Actions on workspace","description":"This article explains how to rename or delete a workspace.","permalink":"/workspaces/actions-on-workspace"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/14d6025d.1e21debf.js b/packages/noco-docs/dist/assets/js/14d6025d.1e21debf.js new file mode 100644 index 0000000000..55358b45fb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/14d6025d.1e21debf.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7539],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>c});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var o=r.createContext({}),p=function(e){var t=r.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},s=function(e){var t=p(e.components);return r.createElement(o.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,o=e.parentName,s=d(e,["components","mdxType","originalType","parentName"]),m=p(a),f=n,c=m["".concat(o,".").concat(f)]||m[f]||u[f]||l;return a?r.createElement(c,i(i({ref:t},s),{},{components:a})):r.createElement(c,i({ref:t},s))}));function c(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,i=new Array(l);i[0]=f;var d={};for(var o in t)hasOwnProperty.call(t,o)&&(d[o]=t[o]);d.originalType=e,d[m]="string"==typeof e?e:n,i[1]=d;for(var p=2;p{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>i,default:()=>u,frontMatter:()=>l,metadata:()=>d,toc:()=>p});var r=a(87462),n=(a(67294),a(3905));const l={title:"Date",tags:["Fields","Field types","Date & Time"]},i=void 0,d={unversionedId:"fields/field-types/date-time-based/date",id:"fields/field-types/date-time-based/date",title:"Date",description:"Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.",source:"@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md",sourceDirName:"070.fields/040.field-types/070.date-time-based",slug:"/fields/field-types/date-time-based/date",permalink:"/fields/field-types/date-time-based/date",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/020.date.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Date & Time",permalink:"/tags/date-time"}],version:"current",sidebarPosition:20,frontMatter:{title:"Date",tags:["Fields","Field types","Date & Time"]},sidebar:"tutorialSidebar",previous:{title:"Date Time",permalink:"/fields/field-types/date-time-based/date-time"},next:{title:"Time",permalink:"/fields/field-types/date-time-based/time"}},o={},p=[{value:"Create a date field",id:"create-a-date-field",level:2},{value:"Supported date formats",id:"supported-date-formats",level:3},{value:"Related fields",id:"related-fields",level:2}],s={toc:p},m="wrapper";function u(e){let{components:t,...l}=e;return(0,n.kt)(m,(0,r.Z)({},s,l,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"Date")," field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below."),(0,n.kt)("h2",{id:"create-a-date-field"},"Create a date field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"Date")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"Configure ",(0,n.kt)("inlineCode",{parentName:"li"},"Date Format")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure default value"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(38197).Z,width:"1265",height:"595"})),(0,n.kt)("h3",{id:"supported-date-formats"},"Supported date formats"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Format"),(0,n.kt)("th",{parentName:"tr",align:null},"Example"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"YYYY-MM-DD"),(0,n.kt)("td",{parentName:"tr",align:null},"2023-09-22")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"YYYY/MM/DD"),(0,n.kt)("td",{parentName:"tr",align:null},"2023/09/22")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"DD-MM-YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"22-09-2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"MM-DD-YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"09-22-2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"DD/MM/YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"22/09/2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"MM/DD/YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"09/22/2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"DD MM YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"22 09 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"MM DD YYYY"),(0,n.kt)("td",{parentName:"tr",align:null},"09 22 2023")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"YYYY MM DD"),(0,n.kt)("td",{parentName:"tr",align:null},"2023 09 22")))),(0,n.kt)("h2",{id:"related-fields"},"Related fields"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date-time"},"DateTime")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/time"},"Time")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/duration"},"Duration"))))}u.isMDXComponent=!0},38197:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/date-6857a2dda0ce3f3a8feffcb5bb4e44f0.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/16d5baaf.3201846c.js b/packages/noco-docs/dist/assets/js/16d5baaf.3201846c.js new file mode 100644 index 0000000000..1be455baa3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/16d5baaf.3201846c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[65],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>u});var l=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function r(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(l=0;l=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var d=l.createContext({}),s=function(e){var t=l.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},p=function(e){var t=s(e.components);return l.createElement(d.Provider,{value:t},e.children)},k="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},m=l.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,d=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),k=s(n),m=i,u=k["".concat(d,".").concat(m)]||k[m]||c[m]||a;return n?l.createElement(u,r(r({ref:t},p),{},{components:n})):l.createElement(u,r({ref:t},p))}));function u(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,r=new Array(a);r[0]=m;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[k]="string"==typeof e?e:i,r[1]=o;for(var s=2;s{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>r,default:()=>c,frontMatter:()=>a,metadata:()=>o,toc:()=>s});var l=n(87462),i=(n(67294),n(3905));const a={title:"Links",tags:["Fields","Field types","Links based types","Links"]},r=void 0,o={unversionedId:"fields/field-types/links-based/links",id:"fields/field-types/links-based/links",title:"Links",description:"Links field type is used to establish relationship between tables & create links to other records.",source:"@site/docs/070.fields/040.field-types/040.links-based/010.links.md",sourceDirName:"070.fields/040.field-types/040.links-based",slug:"/fields/field-types/links-based/links",permalink:"/fields/field-types/links-based/links",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/010.links.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Links based types",permalink:"/tags/links-based-types"},{label:"Links",permalink:"/tags/links"}],version:"current",sidebarPosition:10,frontMatter:{title:"Links",tags:["Fields","Field types","Links based types","Links"]},sidebar:"tutorialSidebar",previous:{title:"Multi Select",permalink:"/fields/field-types/select-based/multi-select"},next:{title:"LookUp",permalink:"/fields/field-types/links-based/lookup"}},d={},s=[{value:"Create a link field",id:"create-a-link-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"List linked records",id:"list-linked-records",level:3},{value:"Link new records",id:"link-new-records",level:3},{value:"Unlink records",id:"unlink-records",level:3},{value:"Related fields",id:"related-fields",level:3}],p={toc:s},k="wrapper";function c(e){let{components:t,...a}=e;return(0,i.kt)(k,(0,l.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Links")," field type is used to establish relationship between tables & create links to other records.\nNocoDB supports following types of relations:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Has-Many")," - A record in one table can have multiple records in another table. ",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Example: A ",(0,i.kt)("inlineCode",{parentName:"li"},"Country")," can have multiple ",(0,i.kt)("inlineCode",{parentName:"li"},"Cities"),"."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Belongs-to")," - Multiple records in one table can have a single record in another table. ",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Example: A ",(0,i.kt)("inlineCode",{parentName:"li"},"City")," ",(0,i.kt)("inlineCode",{parentName:"li"},"Belongs-to")," a ",(0,i.kt)("inlineCode",{parentName:"li"},"Country"),"."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Many-to-Many")," - Multiple records in one table can have multiple records in another table. ",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Example: A ",(0,i.kt)("inlineCode",{parentName:"li"},"Student")," can have multiple ",(0,i.kt)("inlineCode",{parentName:"li"},"Subjects")," & a ",(0,i.kt)("inlineCode",{parentName:"li"},"Subject")," can have multiple ",(0,i.kt)("inlineCode",{parentName:"li"},"Students"),". ")))),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"Links can be created only between tables in the same database."),(0,i.kt)("li",{parentName:"ul"},"Self-referencing links are supported. (Link to the same table)"),(0,i.kt)("li",{parentName:"ul"},"For every ",(0,i.kt)("inlineCode",{parentName:"li"},"Has-Many")," relation defined, NocoDB augments ",(0,i.kt)("inlineCode",{parentName:"li"},"Belongs-to")," relationship field in the adjacent table automatically"))),(0,i.kt)("h2",{id:"create-a-link-field"},"Create a link field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Links")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"Select the relation type : Either ",(0,i.kt)("inlineCode",{parentName:"li"},"Has-Many")," or ",(0,i.kt)("inlineCode",{parentName:"li"},"Many-to-Many"),"."),(0,i.kt)("li",{parentName:"ol"},"Select the table to which the relation is to be established with."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure label to be used for display in the cell. Defaults to ",(0,i.kt)("inlineCode",{parentName:"li"},"Link"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"Links"),"."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(93112).Z,width:"1264",height:"747"})),(0,i.kt)("h3",{id:"cell-display"},"Cell display"),(0,i.kt)("p",null,"The cell will display number of links for a record to the related table. "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(11291).Z,width:"1269",height:"512"})),(0,i.kt)("p",null,"Clicking on the link-text will open a ",(0,i.kt)("inlineCode",{parentName:"p"},"Linked Records")," modal with the list of links & associated additional information."),(0,i.kt)("h3",{id:"list-linked-records"},"List linked records"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(73274).Z,width:"1321",height:"868"})),(0,i.kt)("p",null,"A brief note about the modal components:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"This modal is displaying linked records for ",(0,i.kt)("inlineCode",{parentName:"li"},"PENELOPE")),(0,i.kt)("li",{parentName:"ol"},"Icon represents ",(0,i.kt)("inlineCode",{parentName:"li"},"Many-to-Many")," relation"),(0,i.kt)("li",{parentName:"ol"},"Linked records belong to ",(0,i.kt)("inlineCode",{parentName:"li"},"Film")," table"),(0,i.kt)("li",{parentName:"ol"},"Search bar, to narrow down the list of linked records displayed"),(0,i.kt)("li",{parentName:"ol"},"List (cards) of linked records"),(0,i.kt)("li",{parentName:"ol"},"To view additional information (expanded record), hover on the card & click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"<>")," icon"),(0,i.kt)("li",{parentName:"ol"},"Indicates total records linked"),(0,i.kt)("li",{parentName:"ol"},"Pagination bar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+ Link more Records")," button to add new links : ",(0,i.kt)("a",{parentName:"li",href:"#link-new-records"},"Read more"))),(0,i.kt)("h3",{id:"link-new-records"},"Link new records"),(0,i.kt)("p",null,"Modal to add new links can be opened by"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Clicking on ",(0,i.kt)("inlineCode",{parentName:"li"},"+ Link more Records")," button in the ",(0,i.kt)("inlineCode",{parentName:"li"},"Linked Records")," modal"),(0,i.kt)("li",{parentName:"ul"},"Clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon in the cell (appears on clicking on the cell)")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(79933).Z,width:"791",height:"655"})),(0,i.kt)("p",null,"A brief note about the modal components:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Links being created are for ",(0,i.kt)("inlineCode",{parentName:"li"},"PENELOPE")),(0,i.kt)("li",{parentName:"ol"},"Icon represents ",(0,i.kt)("inlineCode",{parentName:"li"},"Many-to-Many")," relation"),(0,i.kt)("li",{parentName:"ol"},"Linked records belong to ",(0,i.kt)("inlineCode",{parentName:"li"},"Film")," table"),(0,i.kt)("li",{parentName:"ol"},"Search bar, to narrow down the list of records displayed"),(0,i.kt)("li",{parentName:"ol"},"Linked record card is displayed in blue color"),(0,i.kt)("li",{parentName:"ol"},"Records available for link are displayed in white color; use expand icon on the cord to view additional information"),(0,i.kt)("li",{parentName:"ol"},"Indicates total records linked (including the ones being linked)"),(0,i.kt)("li",{parentName:"ol"},"Pagination bar")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Multiple records can be linked at once.")),(0,i.kt)("h3",{id:"unlink-records"},"Unlink records"),(0,i.kt)("p",null,"To unlink a record, open the ",(0,i.kt)("inlineCode",{parentName:"p"},"Linked Records")," modal & click on the card of the record to be unlinked."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Multiple records can be unlinked at once.")),(0,i.kt)("h3",{id:"related-fields"},"Related fields"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/lookup"},"Lookup")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/rollup"},"Rollup"))))}c.isMDXComponent=!0},79933:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/add-link-modal-fde55380d59bdd5d597bd38e3330dbbd.png"},73274:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/linked-record-modal-3e57fdb38dfa9be609959b9843ec65b4.png"},11291:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/links-cell-display-11ef22c835684c116f159598247e9b5d.png"},93112:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/links-ce24a14495db42a4be3920be126b9895.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/177ad845.ca633ee4.js b/packages/noco-docs/dist/assets/js/177ad845.ca633ee4.js new file mode 100644 index 0000000000..f341461105 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/177ad845.ca633ee4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8252],{2035:i=>{i.exports=JSON.parse('{"label":"Formula","permalink":"/tags/formula","allTagsPath":"/tags","count":6,"items":[{"id":"fields/field-types/formula/conditional-expressions","title":"Conditional expressions","description":"Conditional expressions","permalink":"/fields/field-types/formula/conditional-expressions"},{"id":"fields/field-types/formula/date-functions","title":"Date functions","description":"| Name | Syntax | Sample | Output | Remark |","permalink":"/fields/field-types/formula/date-functions"},{"id":"fields/field-types/formula/formula","title":"Formula","description":"Create a formula field","permalink":"/fields/field-types/formula/formula"},{"id":"fields/field-types/formula/operators","title":"Numeric and Logical Operators","description":"Numeric operators","permalink":"/fields/field-types/formula/operators"},{"id":"fields/field-types/formula/numeric-functions","title":"Numeric functions","description":"Numeric functions","permalink":"/fields/field-types/formula/numeric-functions"},{"id":"fields/field-types/formula/string-functions","title":"String functions","description":"String functions","permalink":"/fields/field-types/formula/string-functions"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/17896441.476191cb.js b/packages/noco-docs/dist/assets/js/17896441.476191cb.js new file mode 100644 index 0000000000..f69436b722 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/17896441.476191cb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7918],{4308:(s,c,e)=>{e.d(c,{Z:()=>b});var o=e(16528),a=e(73992),n=e(18679),Z=e(15944);const b={...o.Z,Tabs:a.Z,TabItem:n.Z,Image:Z.Z}}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/17a7e1f3.399e6aa4.js b/packages/noco-docs/dist/assets/js/17a7e1f3.399e6aa4.js new file mode 100644 index 0000000000..300933352a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/17a7e1f3.399e6aa4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4493],{75085:e=>{e.exports=JSON.parse('{"label":"Form","permalink":"/tags/form","allTagsPath":"/tags","count":1,"items":[{"id":"views/view-types/form","title":"Form","description":"Learn how to create, import, and manage forms in NocoDB.","permalink":"/views/view-types/form"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/181f370e.1ae3037d.js b/packages/noco-docs/dist/assets/js/181f370e.1ae3037d.js new file mode 100644 index 0000000000..7e27504ed0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/181f370e.1ae3037d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6786],{48513:e=>{e.exports=JSON.parse('{"label":"Barcode","permalink":"/tags/barcode","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/barcode","title":"Barcode","description":"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/barcode"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/18c96d41.bcfa9c73.js b/packages/noco-docs/dist/assets/js/18c96d41.bcfa9c73.js new file mode 100644 index 0000000000..de5232ae75 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/18c96d41.bcfa9c73.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9449],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>f});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var p=a.createContext({}),s=function(e){var t=a.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=s(e.components);return a.createElement(p.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=s(n),c=r,f=u["".concat(p,".").concat(c)]||u[c]||m[c]||l;return n?a.createElement(f,i(i({ref:t},d),{},{components:n})):a.createElement(f,i({ref:t},d))}));function f(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=c;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[u]="string"==typeof e?e:r,i[1]=o;for(var s=2;s{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>m,frontMatter:()=>l,metadata:()=>o,toc:()=>s});var a=n(87462),r=(n(67294),n(3905));const l={title:"Conditional expressions",tags:["Fields","Field types","Formula"]},i=void 0,o={unversionedId:"fields/field-types/formula/conditional-expressions",id:"fields/field-types/formula/conditional-expressions",title:"Conditional expressions",description:"Conditional expressions",source:"@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/conditional-expressions",permalink:"/fields/field-types/formula/conditional-expressions",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"}],version:"current",sidebarPosition:50,frontMatter:{title:"Conditional expressions",tags:["Fields","Field types","Formula"]},sidebar:"tutorialSidebar",previous:{title:"Date functions",permalink:"/fields/field-types/formula/date-functions"},next:{title:"Date Time",permalink:"/fields/field-types/date-time-based/date-time"}},p={},s=[{value:"Conditional expressions",id:"conditional-expressions",level:3},{value:"Related Articles",id:"related-articles",level:2}],d={toc:s},u="wrapper";function m(e){let{components:t,...n}=e;return(0,r.kt)(u,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h3",{id:"conditional-expressions"},"Conditional expressions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"IF")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"IF(expr, successCase, elseCase)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"IF({Column} > 1, Value1, Value2)")),(0,r.kt)("td",{parentName:"tr",align:null},"successCase if ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluates to TRUE, elseCase otherwise")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SWITCH")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SWITCH(expr, [pattern, value, ..., default])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SWITCH({Column}, 1, 'One', 2, 'Two', '--')")),(0,r.kt)("td",{parentName:"tr",align:null},"Switch case value based on ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," output")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"AND")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AND(expr1, [expr2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AND({Column} > 2, {Column} < 10)")),(0,r.kt)("td",{parentName:"tr",align:null},"TRUE if all ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluate to TRUE")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"OR")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OR(expr1, [expr2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OR({Column} > 2, {Column} < 10)")),(0,r.kt)("td",{parentName:"tr",align:null},"TRUE if at least one ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluates to TRUE")))),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"Logical operators, along with Numerical operators can be used to build conditional ",(0,r.kt)("inlineCode",{parentName:"p"},"expressions"),". "),(0,r.kt)("p",{parentName:"admonition"},"Examples:"),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre"},'IF({marksSecured} > 80, "GradeA", "GradeB") \n')),(0,r.kt)("pre",{parentName:"admonition"},(0,r.kt)("code",{parentName:"pre"},"SWITCH({quarterNumber}, \n 1, 'Jan-Mar',\n 2, 'Apr-Jun',\n 3, 'Jul-Sep',\n 4, 'Oct-Dec',\n 'INVALID'\n)\n"))),(0,r.kt)("h2",{id:"related-articles"},"Related Articles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/operators"},"Numeric and Logical Operators")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/numeric-functions"},"Numeric Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/string-functions"},"String Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/date-functions"},"Date Functions"))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1970c274.ff162d79.js b/packages/noco-docs/dist/assets/js/1970c274.ff162d79.js new file mode 100644 index 0000000000..a7d1343544 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1970c274.ff162d79.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1140],{3905:(e,a,t)=>{t.d(a,{Zo:()=>c,kt:()=>h});var n=t(67294);function i(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function o(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,n)}return t}function r(e){for(var a=1;a=0||(i[t]=e[t]);return i}(e,a);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(i[t]=e[t])}return i}var d=n.createContext({}),s=function(e){var a=n.useContext(d),t=a;return e&&(t="function"==typeof e?e(a):r(r({},a),e)),t},c=function(e){var a=s(e.components);return n.createElement(d.Provider,{value:a},e.children)},p="mdxType",k={inlineCode:"code",wrapper:function(e){var a=e.children;return n.createElement(n.Fragment,{},a)}},b=n.forwardRef((function(e,a){var t=e.components,i=e.mdxType,o=e.originalType,d=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),p=s(t),b=i,h=p["".concat(d,".").concat(b)]||p[b]||k[b]||o;return t?n.createElement(h,r(r({ref:a},c),{},{components:t})):n.createElement(h,r({ref:a},c))}));function h(e,a){var t=arguments,i=a&&a.mdxType;if("string"==typeof e||i){var o=t.length,r=new Array(o);r[0]=b;var l={};for(var d in a)hasOwnProperty.call(a,d)&&(l[d]=a[d]);l.originalType=e,l[p]="string"==typeof e?e:i,r[1]=l;for(var s=2;s{t.r(a),t.d(a,{assets:()=>d,contentTitle:()=>r,default:()=>k,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var n=t(87462),i=(t(67294),t(3905));const o={title:"Kanban",description:"Learn how to use Kanban view in NocoDB.",tags:["Views","Kanban View"],keywords:["NocoDB kanban","kanban view","kanban board","kanban view operations"]},r=void 0,l={unversionedId:"views/view-types/kanban",id:"views/view-types/kanban",title:"Kanban",description:"Learn how to use Kanban view in NocoDB.",source:"@site/docs/090.views/040.view-types/040.kanban.md",sourceDirName:"090.views/040.view-types",slug:"/views/view-types/kanban",permalink:"/views/view-types/kanban",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/040.kanban.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Kanban View",permalink:"/tags/kanban-view"}],version:"current",sidebarPosition:40,frontMatter:{title:"Kanban",description:"Learn how to use Kanban view in NocoDB.",tags:["Views","Kanban View"],keywords:["NocoDB kanban","kanban view","kanban board","kanban view operations"]},sidebar:"tutorialSidebar",previous:{title:"Form",permalink:"/views/view-types/form"},next:{title:"Actions on view",permalink:"/views/actions-on-view"}},d={},s=[{value:"Kanban View Actions",id:"kanban-view-actions",level:2},{value:"Kanban View Operations",id:"kanban-view-operations",level:2},{value:"Kanban View Stacked-by field Operations",id:"kanban-view-stacked-by-field-operations",level:2},{value:"Change Stacked by Field",id:"change-stacked-by-field",level:3},{value:"Add/modify Stacked-by Field Options",id:"addmodify-stacked-by-field-options",level:3},{value:"Collapse Stack",id:"collapse-stack",level:3},{value:"Delete Stack",id:"delete-stack",level:3},{value:"Reorder Stacks",id:"reorder-stacks",level:3},{value:"Kanban View Record Operations",id:"kanban-view-record-operations",level:2},{value:"Move Records within Stacks",id:"move-records-within-stacks",level:3},{value:"Add a New Record to the Kanban",id:"add-a-new-record-to-the-kanban",level:3},{value:"Edit an Existing Record on the Kanban",id:"edit-an-existing-record-on-the-kanban",level:3},{value:"Delete a Single Record from the Kanban",id:"delete-a-single-record-from-the-kanban",level:3},{value:"Related articles",id:"related-articles",level:2}],c={toc:s},p="wrapper";function k(e){let{components:a,...o}=e;return(0,i.kt)(p,(0,n.Z)({},c,o,{components:a,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"Kanban View allows you to visualise your data using cards as part of various stacks on the board. You can easily rearrange the cards by dragging and dropping them to different stacks. This section will cover all the operations that can be performed on the Kanban view."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"1010-2 Kanban",src:t(90355).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"kanban-view-actions"},"Kanban View Actions"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/create-view/#create-new-view"},"Create a New Kanban View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#rename-view"},"Rename an Existing Kanban View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#duplicate-view"},"Duplicate a Kanban View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#delete-view"},"Remove a Kanban View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/share-view"},"Share a Kanban View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/views-overview#view-permission-types"},"Lock Kanban View for Edits"))),(0,i.kt)("h2",{id:"kanban-view-operations"},"Kanban View Operations"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#rearranging-fields"},"Rearrange Fields Within the Kanban")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#showhide-fields"},"Show or Hide Fields Within the Kanban")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/filter"},"Apply Filters to Display Specific Records on the Kanban")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/sort"},"Sort Records on the Kanban by One or More Criteria")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/search"},"Perform Quick Searches for Specific Data Within Fields")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/download#download-data"},"Export Data to CSV or Excel Format")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#change-cover-field-kanbankanban-view"},"Change Cover Image"))),(0,i.kt)("h2",{id:"kanban-view-stacked-by-field-operations"},"Kanban View Stacked-by field Operations"),(0,i.kt)("h3",{id:"change-stacked-by-field"},"Change Stacked by Field"),(0,i.kt)("p",null,"You can change the field by which the records are stacked on the kanban view by following the steps below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Stacked by")," menu in the toolbar. "),(0,i.kt)("li",{parentName:"ol"},"Click on field name that is currently selected as the stacked-by field. "),(0,i.kt)("li",{parentName:"ol"},"From the dropdown, select the new field by which you want to stack the records. ")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Change Stacked by Field",src:t(16710).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"addmodify-stacked-by-field-options"},"Add/modify Stacked-by Field Options"),(0,i.kt)("p",null,"You can add/modify options on the stacked-by single select field by following the steps below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Stacked by")," menu in the toolbar. Dropdown lists all ",(0,i.kt)("inlineCode",{parentName:"li"},"Select Options")," that are available on this field. "),(0,i.kt)("li",{parentName:"ol"},"Add/modify as required."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save")," to save the changes.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Add/modify option on the stacked-by single select field",src:t(97254).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"collapse-stack"},"Collapse Stack"),(0,i.kt)("p",null,"To ease the view of the kanban, you can collapse the stack by following the steps below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on the dropdown icon on the stack header."),(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Collapse Stack")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"Collapsed Stack")," will be displayed as vertical bars on the kanban view as displayed below.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Collapse Stack",src:t(30245).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"delete-stack"},"Delete Stack"),(0,i.kt)("p",null,"To delete a stack from the kanban view, follow the steps below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on the dropdown icon on the stack header."),(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete Stack")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"A confirmation dialog will be displayed. Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete")," to delete the stack.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Delete Stack",src:t(58349).Z,width:"2880",height:"1800"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Delete Stack Confirmation",src:t(77053).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"reorder-stacks"},"Reorder Stacks"),(0,i.kt)("p",null,"You can reorder the stacks on the kanban view by dragging and dropping the stack to the desired position."),(0,i.kt)("h2",{id:"kanban-view-record-operations"},"Kanban View Record Operations"),(0,i.kt)("h3",{id:"move-records-within-stacks"},"Move Records within Stacks"),(0,i.kt)("p",null,"You can move records within a stack by dragging and dropping the card to the desired position within the stack."),(0,i.kt)("h3",{id:"add-a-new-record-to-the-kanban"},"Add a New Record to the Kanban"),(0,i.kt)("p",null,"On kanban, you can add a new record directly to a particular stack by using ",(0,i.kt)("inlineCode",{parentName:"p"},"Add Record")," button on the stack footer. This opens up an expanded record view where you can enter the data for the new record. Once you save the record, it will be displayed on the kanban view. You can also add a new record to the table, and it will be displayed on the kanban view. "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Add Record",src:t(84552).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"edit-an-existing-record-on-the-kanban"},"Edit an Existing Record on the Kanban"),(0,i.kt)("p",null,"Click on the card on the kanban view to open the record in the expanded record view. You can edit the record in the expanded record view and save it."),(0,i.kt)("h3",{id:"delete-a-single-record-from-the-kanban"},"Delete a Single Record from the Kanban"),(0,i.kt)("p",null,"Right-click on the card to access the context menu and select the ",(0,i.kt)("inlineCode",{parentName:"p"},"Delete")," option."),(0,i.kt)("h2",{id:"related-articles"},"Related articles"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/views/view-types/grid"},"Grid View"),(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("a",{parentName:"p",href:"/views/view-types/kanban"},"Kanban View"),(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("a",{parentName:"p",href:"/views/view-types/form"},"Form View")))}k.isMDXComponent=!0},84552:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-add-record-6d53ed410a1ee0323790496461b53aff.png"},16710:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-change-stack-a8d26dff838ea4b480a30e2db1d0624f.png"},30245:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-collapse-stack-8ec03d704b55aba7bbc1510efd0f746d.png"},77053:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-delete-stack-confirmation-e4b55be5361259d84852953931f63f8c.png"},58349:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-delete-stack-b51611d8427f1a16a295861c0c91eb94.png"},97254:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-edit-stack-options-7f9e0324e6068956dae0268031c712f7.png"},90355:(e,a,t)=>{t.d(a,{Z:()=>n});const n=t.p+"assets/images/kanban-e00b90c6413259b626deeeb6659281ea.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1b14dca8.333819cc.js b/packages/noco-docs/dist/assets/js/1b14dca8.333819cc.js new file mode 100644 index 0000000000..bb4050ec31 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1b14dca8.333819cc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5404],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>g});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,l=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),p=c(n),m=r,g=p["".concat(l,".").concat(m)]||p[m]||d[m]||o;return n?a.createElement(g,i(i({ref:t},u),{},{components:n})):a.createElement(g,i({ref:t},u))}));function g(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,i[1]=s;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>c});var a=n(87462),r=(n(67294),n(3905));const o={title:"Account Settings",description:"NocoDB provides Account Settings for managing your account or more for super admin"},i=void 0,s={unversionedId:"setup-and-usages/account-settings",id:"version-0.109.7/setup-and-usages/account-settings",title:"Account Settings",description:"NocoDB provides Account Settings for managing your account or more for super admin",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/account-settings",permalink:"/0.109.7/setup-and-usages/account-settings",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md",tags:[],version:"0.109.7",sidebarPosition:170,frontMatter:{title:"Account Settings",description:"NocoDB provides Account Settings for managing your account or more for super admin"},sidebar:"tutorialSidebar",previous:{title:"Views",permalink:"/0.109.7/setup-and-usages/views"},next:{title:"Languages",permalink:"/0.109.7/setup-and-usages/languages"}},l={},c=[{value:"Overview",id:"overview",level:2},{value:"Reset Password",id:"reset-password",level:2},{value:"Token Management",id:"token-management",level:2},{value:"User Management",id:"user-management",level:2},{value:"Organisation Level Permissions:",id:"organisation-level-permissions",level:3},{value:"Project Level Permissions:",id:"project-level-permissions",level:3},{value:"Enable / Disable Signup",id:"enable--disable-signup",level:2},{value:"App Store",id:"app-store",level:2},{value:"License",id:"license",level:2}],u={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"overview"},"Overview"),(0,r.kt)("p",null,"Account Settings allow you to manage your account such as your password or tokens. "),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203260408-7767daec-a862-4b33-8a6a-6706bff01eb7.png",alt:"image"})),(0,r.kt)("h2",{id:"reset-password"},"Reset Password"),(0,r.kt)("img",{width:"1500",alt:"image",src:"https://user-images.githubusercontent.com/35857179/203267251-139fff32-38a9-4f39-af4f-c2c6ec5456bb.png"}),(0,r.kt)("h2",{id:"token-management"},"Token Management"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Newly created tokens are associated with the created user and it will have all permissions that particular user has."),(0,r.kt)("li",{parentName:"ul"},"Existing token will work as it is and only be visible to the super admin.")),(0,r.kt)("img",{width:"1506",alt:"image",src:"https://user-images.githubusercontent.com/35857179/203267432-352d3038-7784-4ea5-b521-1d0252ffbf70.png"}),(0,r.kt)("p",null,"If you are a super admin, you can also manage all user roles in organization level. "),(0,r.kt)("h2",{id:"user-management"},"User Management"),(0,r.kt)("p",null,"Permissions within NocoDB are divided into two levels: Organisation level and Project level."),(0,r.kt)("h3",{id:"organisation-level-permissions"},"Organisation Level Permissions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Org Level Creator"),": Allows users to create new projects and access invited projects."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Org Level Viewer"),": Allows users to access invited projects but does not permit the creation of new projects.")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203261168-5ba75f9c-476e-4fe7-ace4-f81051f42773.png",alt:"image"})),(0,r.kt)("h3",{id:"project-level-permissions"},"Project Level Permissions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Owner"),": The user who created the project. A project can have only one owner. The owner persists until the project exists and the role is non-transferable. The owner has access to carry out any operations within the project, including deleting it."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Creator"),': Has access to carry out any operations within the project except deleting the project and removing the "Owner."'),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Editor"),": Can modify data but cannot modify the schema (add/remove columns, tables, users, and such)."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Commenter"),": Can neither modify data nor schema, can only see data and can mark row-level comments."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Viewer"),": Can only see data.")),(0,r.kt)("p",null,"Additional access details for project level permissions can be found ",(0,r.kt)("a",{parentName:"p",href:"https://docs.nocodb.com/setup-and-usages/team-and-auth#advanced-options--configurations"},"here"),'.\nPlease note that the above-mentioned Project Level Permissions are additional to the already defined Organisation Level Permissions.\nIn addition to the previously defined permissions, NocoDB also includes the role of "Super Admin." The "Super Admin" is the first user to sign up on this NocoDB installation. An organisation can have only one "Super Admin" and this role is non-transferable. The "Super Admin" will have the equivalent permissions of an "Org Level Creator" and "Owner" for all projects within the organisation.'),(0,r.kt)("h2",{id:"enable--disable-signup"},"Enable / Disable Signup"),(0,r.kt)("p",null,"Signup without an invitation is disabled by default and can be managed from UI by a super admin."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203268555-a17fcd39-5fb9-448d-aeaf-e55cbf49f6c5.png",alt:"image"})),(0,r.kt)("h2",{id:"app-store"},"App Store"),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203267619-24a8f5f5-1c8c-4419-a7a1-be4377fe6216.png",alt:"image"})),(0,r.kt)("p",null,"We provide different integrations in three main categories."),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Category"),(0,r.kt)("th",{parentName:"tr",align:null},"App Name"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Chat"),(0,r.kt)("td",{parentName:"tr",align:null},"Microsoft Teams ",(0,r.kt)("br",null)," Discord ",(0,r.kt)("br",null)," Twilio ",(0,r.kt)("br",null)," Whatsapp Twilio",(0,r.kt)("br",null)," Mattermost",(0,r.kt)("br",null)," Slack")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Email"),(0,r.kt)("td",{parentName:"tr",align:null},"SMTP",(0,r.kt)("br",null)," MailerSend",(0,r.kt)("br",null)," AWS SES")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Storage"),(0,r.kt)("td",{parentName:"tr",align:null},"AWS S3 ",(0,r.kt)("br",null)," Minio ",(0,r.kt)("br",null)," Google Cloud Storage ",(0,r.kt)("br",null)," Spaces ",(0,r.kt)("br",null)," Backblaze B2 ",(0,r.kt)("br",null)," Vultr Object Storage ",(0,r.kt)("br",null)," OvhCloud Object Storage ",(0,r.kt)("br",null)," Linode Object Storage ",(0,r.kt)("br",null)," UpCloud Object Storage ",(0,r.kt)("br",null)," Scaleway Object Storage")))),(0,r.kt)("h2",{id:"license"},"License"),(0,r.kt)("p",null,"You can configure NocoDB Enterprise ",(0,r.kt)("inlineCode",{parentName:"p"},"License key")," here"),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/212023989-0129af0a-689d-465e-bdda-3d54399ea6b7.png",alt:"Screenshot 2023-01-12 at 2 30 57 PM"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1b3738fb.ad6025e7.js b/packages/noco-docs/dist/assets/js/1b3738fb.ad6025e7.js new file mode 100644 index 0000000000..c3661806e7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1b3738fb.ad6025e7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8149],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>k});var a=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),u=p(n),m=i,k=u["".concat(s,".").concat(m)]||u[m]||d[m]||r;return n?a.createElement(k,o(o({ref:t},c),{},{components:n})):a.createElement(k,o({ref:t},c))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:i,o[1]=l;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>r,metadata:()=>l,toc:()=>p});var a=n(87462),i=(n(67294),n(3905));const r={title:"Writing unit tests",description:"Overview to Unit Testing",tags:["Engineering"]},o=void 0,l={unversionedId:"engineering/unit-testing",id:"engineering/unit-testing",title:"Writing unit tests",description:"Overview to Unit Testing",source:"@site/docs/150.engineering/040.unit-testing.md",sourceDirName:"150.engineering",slug:"/engineering/unit-testing",permalink:"/engineering/unit-testing",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/040.unit-testing.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:40,frontMatter:{title:"Writing unit tests",description:"Overview to Unit Testing",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"Development setup",permalink:"/engineering/development-setup"},next:{title:"Playwright E2E testing",permalink:"/engineering/playwright"}},s={},p=[{value:"Unit Tests",id:"unit-tests",level:2},{value:"Pre-requisites",id:"pre-requisites",level:3},{value:"Setup",id:"setup",level:3},{value:"Run Tests",id:"run-tests",level:3},{value:"Folder Structure",id:"folder-structure",level:3},{value:"Factory Pattern",id:"factory-pattern",level:3},{value:"Walk through of writing a Unit Test",id:"walk-through-of-writing-a-unit-test",level:3},{value:"Configure test",id:"configure-test",level:4},{value:"Test case",id:"test-case",level:4},{value:"Integrating the New Test Suite",id:"integrating-the-new-test-suite",level:4},{value:"Seeding Sample DB (Sakila)",id:"seeding-sample-db-sakila",level:3}],c={toc:p},u="wrapper";function d(e){let{components:t,...n}=e;return(0,i.kt)(u,(0,a.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"unit-tests"},"Unit Tests"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"All individual unit tests are independent of each other. We don't use any shared state between tests."),(0,i.kt)("li",{parentName:"ul"},"Test environment includes ",(0,i.kt)("inlineCode",{parentName:"li"},"sakila")," sample database and any change to it by a test is reverted before running other tests."),(0,i.kt)("li",{parentName:"ul"},"While running unit tests, it tries to connect to mysql server running on ",(0,i.kt)("inlineCode",{parentName:"li"},"localhost:3306")," with username ",(0,i.kt)("inlineCode",{parentName:"li"},"root")," and password ",(0,i.kt)("inlineCode",{parentName:"li"},"password")," (which can be configured) and if not found, it will use ",(0,i.kt)("inlineCode",{parentName:"li"},"sqlite")," as a fallback, hence no requirement of any sql server to run tests.")),(0,i.kt)("h3",{id:"pre-requisites"},"Pre-requisites"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"MySQL is preferred - however tests can fallback on SQLite too")),(0,i.kt)("h3",{id:"setup"},"Setup"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm --filter=-nocodb install\n\n# add a .env file\ncp tests/unit/.env.sample tests/unit/.env\n\n# open .env file\nopen tests/unit/.env\n")),(0,i.kt)("p",null,"Configure the following variables"),(0,i.kt)("blockquote",null,(0,i.kt)("p",{parentName:"blockquote"},"DB_HOST : host\nDB_PORT : port\nDB_USER : username\nDB_PASSWORD : password")),(0,i.kt)("h3",{id:"run-tests"},"Run Tests"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm run test:unit\n")),(0,i.kt)("h3",{id:"folder-structure"},"Folder Structure"),(0,i.kt)("p",null,"The root folder for unit tests is ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"rest")," folder contains all the test suites for rest apis."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"model")," folder contains all the test suites for models."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"factory")," folder contains all the helper functions to create test data."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"init")," folder contains helper functions to configure test environment."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"index.test.ts")," is the root test suite file which imports all the test suites."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"TestDbMngr.ts")," is a helper class to manage test databases (i.e. creating, dropping, etc.).")),(0,i.kt)("h3",{id:"factory-pattern"},"Factory Pattern"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Use factories for create/update/delete data. No data should be directly create/updated/deleted in the test."),(0,i.kt)("li",{parentName:"ul"},"While writing a factory make sure that it can be used with as less parameters as possible and use default values for other parameters."),(0,i.kt)("li",{parentName:"ul"},"Use named parameters for factories.",(0,i.kt)("pre",{parentName:"li"},(0,i.kt)("code",{parentName:"pre",className:"language-ts"},"createUser({ email, password})\n"))),(0,i.kt)("li",{parentName:"ul"},"Use one file per factory.")),(0,i.kt)("h3",{id:"walk-through-of-writing-a-unit-test"},"Walk through of writing a Unit Test"),(0,i.kt)("p",null,"We will create an ",(0,i.kt)("inlineCode",{parentName:"p"},"Table")," test suite as an example."),(0,i.kt)("h4",{id:"configure-test"},"Configure test"),(0,i.kt)("p",null,"We will configure ",(0,i.kt)("inlineCode",{parentName:"p"},"beforeEach")," which is called before each test is executed. We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"init")," function from ",(0,i.kt)("inlineCode",{parentName:"p"},"nocodb/packages/nocodb/tests/unit/init/index.ts"),", which is a helper function which configures the test environment(i.e resetting state, etc.)."),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"init")," does the following things -"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"It initializes a ",(0,i.kt)("inlineCode",{parentName:"li"},"Noco")," instance(reused in all tests)."),(0,i.kt)("li",{parentName:"ul"},"Restores ",(0,i.kt)("inlineCode",{parentName:"li"},"meta")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"sakila")," database to its initial state."),(0,i.kt)("li",{parentName:"ul"},"Creates the root user."),(0,i.kt)("li",{parentName:"ul"},"Returns ",(0,i.kt)("inlineCode",{parentName:"li"},"context")," which has ",(0,i.kt)("inlineCode",{parentName:"li"},"auth token")," for the created user, node server instance(",(0,i.kt)("inlineCode",{parentName:"li"},"app"),"), and ",(0,i.kt)("inlineCode",{parentName:"li"},"dbConfig"),".")),(0,i.kt)("p",null,"We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"createProject")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"createProject")," factories to create a project and a table."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"let context;\n\nbeforeEach(async function () {\n context = await init();\n\n project = await createProject(context);\n table = await createTable(context, project);\n});\n")),(0,i.kt)("h4",{id:"test-case"},"Test case"),(0,i.kt)("p",null,"We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"it")," function to create a test case. We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"supertest")," to make a request to the server. We use ",(0,i.kt)("inlineCode",{parentName:"p"},"expect"),"(",(0,i.kt)("inlineCode",{parentName:"p"},"chai"),") to assert the response."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"it('Get table list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/meta/projects/${project.id}/tables`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list).to.be.an('array').not.empty;\n});\n")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"We can also run individual test by using ",(0,i.kt)("inlineCode",{parentName:"p"},".only")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"describe")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"it")," function and the running the test command.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"it.only('Get table list', async () => {\n")),(0,i.kt)("h4",{id:"integrating-the-new-test-suite"},"Integrating the New Test Suite"),(0,i.kt)("p",null,"We create a new file ",(0,i.kt)("inlineCode",{parentName:"p"},"table.test.ts")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/rest/tests")," directory."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"import 'mocha';\nimport request from 'supertest';\nimport init from '../../init';\nimport { createTable, getAllTables } from '../../factory/table';\nimport { createProject } from '../../factory/project';\nimport { defaultColumns } from '../../factory/column';\nimport Model from '../../../../src/lib/models/Model';\nimport { expect } from 'chai';\n\nfunction tableTest() {\n let context;\n let project;\n let table;\n\n beforeEach(async function () {\n context = await init();\n\n project = await createProject(context);\n table = await createTable(context, project);\n });\n\n it('Get table list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/meta/projects/${project.id}/tables`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list).to.be.an('array').not.empty;\n });\n}\n\nexport default function () {\n describe('Table', tableTests);\n}\n")),(0,i.kt)("p",null,"We can then import the ",(0,i.kt)("inlineCode",{parentName:"p"},"Table")," test suite to ",(0,i.kt)("inlineCode",{parentName:"p"},"Rest")," test suite in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/rest/index.test.ts")," file(",(0,i.kt)("inlineCode",{parentName:"p"},"Rest")," test suite is imported in the root test suite file which is ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/index.test.ts"),")."),(0,i.kt)("h3",{id:"seeding-sample-db-sakila"},"Seeding Sample DB (Sakila)"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"\nfunction tableTest() {\n let context;\n let sakilaProject: Project;\n let customerTable: Model;\n\n beforeEach(async function () {\n context = await init();\n \n /******* Start : Seeding sample database **********/\n sakilaProject = await createSakilaProject(context);\n /******* End : Seeding sample database **********/\n \n customerTable = await getTable({project: sakilaProject, name: 'customer'})\n });\n\n it('Get table data list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/data/noco/${sakilaProject.id}/${customerTable.id}`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list[0]['FirstName']).to.equal('MARY');\n });\n}\n")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1be78505.ad6e3293.js b/packages/noco-docs/dist/assets/js/1be78505.ad6e3293.js new file mode 100644 index 0000000000..a028a5d5b5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1be78505.ad6e3293.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9514,4248],{81299:(e,t,n)=>{n.r(t),n.d(t,{default:()=>ge});var a=n(67294),o=n(86010),l=n(35463),r=n(23702),c=n(60246),i=n(78259),s=n(58801),d=n(84432),m=n(91764),u=n(97325),b=n(72957),p=n(43266);const h={backToTopButton:"backToTopButton_sjWU",backToTopButtonShow:"backToTopButtonShow_xfvO"};function E(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,o]=(0,a.useState)(!1),l=(0,a.useRef)(!1),{startScroll:r,cancelScroll:c}=(0,b.Ct)();return(0,b.RF)(((e,n)=>{let{scrollY:a}=e;const r=n?.scrollY;r&&(l.current?l.current=!1:a>=r?(c(),o(!1)):a{e.location.hash&&(l.current=!0,o(!1))})),{shown:n,scrollToTop:()=>r(0)}}({threshold:300});return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,o.Z)("clean-btn",r.k.common.backToTopButton,h.backToTopButton,e&&h.backToTopButtonShow),type:"button",onClick:t})}var f=n(58986),g=n(16550),v=n(13488),k=n(20107),_=n(96811),C=n(87462);function S(e){return a.createElement("svg",(0,C.Z)({width:"20",height:"20","aria-hidden":"true"},e),a.createElement("g",{fill:"#7a7a7a"},a.createElement("path",{d:"M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0"}),a.createElement("path",{d:"M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0"})))}const I={collapseSidebarButton:"collapseSidebarButton_PEFL",collapseSidebarButtonIcon:"collapseSidebarButtonIcon_kv0_"};function N(e){let{onClick:t}=e;return a.createElement("button",{type:"button",title:(0,u.I)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,o.Z)("button button--secondary button--outline",I.collapseSidebarButton),onClick:t},a.createElement(S,{className:I.collapseSidebarButtonIcon}))}var T=n(65830),x=n(43768);const Z=Symbol("EmptyContext"),B=a.createContext(Z);function w(e){let{children:t}=e;const[n,o]=(0,a.useState)(null),l=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:o})),[n]);return a.createElement(B.Provider,{value:l},t)}var y=n(54639),L=n(69003),A=n(83699),M=n(51048);function F(e){let{categoryLabel:t,onClick:n}=e;return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel",message:"Toggle the collapsible sidebar category '{label}'",description:"The ARIA label to toggle the collapsible sidebar category"},{label:t}),type:"button",className:"clean-btn menu__caret",onClick:n})}function H(e){let{item:t,onItemClick:n,activePath:l,level:c,index:s,...d}=e;const{items:m,label:u,collapsible:b,className:p,href:h}=t,{docs:{sidebar:{autoCollapseCategories:E}}}=(0,k.L)(),f=function(e){const t=(0,M.Z)();return(0,a.useMemo)((()=>e.href?e.href:!t&&e.collapsible?(0,i.Wl)(e):void 0),[e,t])}(t),g=(0,i._F)(t,l),v=(0,L.Mg)(h,l),{collapsed:_,setCollapsed:S}=(0,y.u)({initialState:()=>!!b&&(!g&&t.collapsed)}),{expandedItem:I,setExpandedItem:N}=function(){const e=(0,a.useContext)(B);if(e===Z)throw new x.i6("DocSidebarItemsExpandedStateProvider");return e}(),T=function(e){void 0===e&&(e=!_),N(e?null:s),S(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:o}=e;const l=(0,x.D9)(t);(0,a.useEffect)((()=>{t&&!l&&n&&o(!1)}),[t,l,n,o])}({isActive:g,collapsed:_,updateCollapsed:T}),(0,a.useEffect)((()=>{b&&null!=I&&I!==s&&E&&S(!0)}),[b,I,s,S,E]),a.createElement("li",{className:(0,o.Z)(r.k.docs.docSidebarItemCategory,r.k.docs.docSidebarItemCategoryLevel(c),"menu__list-item",{"menu__list-item--collapsed":_},p)},a.createElement("div",{className:(0,o.Z)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":v})},a.createElement(A.Z,(0,C.Z)({className:(0,o.Z)("menu__link",{"menu__link--sublist":b,"menu__link--sublist-caret":!h&&b,"menu__link--active":g}),onClick:b?e=>{n?.(t),h?T(!1):(e.preventDefault(),T())}:()=>{n?.(t)},"aria-current":v?"page":void 0,"aria-expanded":b?!_:void 0,href:b?f??"#":f},d),u),h&&b&&a.createElement(F,{categoryLabel:u,onClick:e=>{e.preventDefault(),T()}})),a.createElement(y.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:_},a.createElement(j,{items:m,tabIndex:_?-1:0,onItemClick:n,activePath:l,level:c+1})))}var P=n(2735),W=n(14082);const D={menuExternalLink:"menuExternalLink_NmtK"};function R(e){let{item:t,onItemClick:n,activePath:l,level:c,index:s,...d}=e;const{href:m,label:u,className:b,autoAddBaseUrl:p}=t,h=(0,i._F)(t,l),E=(0,P.Z)(m);return a.createElement("li",{className:(0,o.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(c),"menu__list-item",b),key:u},a.createElement(A.Z,(0,C.Z)({className:(0,o.Z)("menu__link",!E&&D.menuExternalLink,{"menu__link--active":h}),autoAddBaseUrl:p,"aria-current":h?"page":void 0,to:m},E&&{onClick:n?()=>n(t):void 0},d),u,!E&&a.createElement(W.Z,null)))}const V={menuHtmlItem:"menuHtmlItem_M9Kj"};function U(e){let{item:t,level:n,index:l}=e;const{value:c,defaultStyle:i,className:s}=t;return a.createElement("li",{className:(0,o.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(n),i&&[V.menuHtmlItem,"menu__list-item"],s),key:l,dangerouslySetInnerHTML:{__html:c}})}function z(e){let{item:t,...n}=e;switch(t.type){case"category":return a.createElement(H,(0,C.Z)({item:t},n));case"html":return a.createElement(U,(0,C.Z)({item:t},n));default:return a.createElement(R,(0,C.Z)({item:t},n))}}function K(e){let{items:t,...n}=e;return a.createElement(w,null,t.map(((e,t)=>a.createElement(z,(0,C.Z)({key:t,item:e,index:t},n)))))}const j=(0,a.memo)(K),q={menu:"menu_SIkG",menuWithAnnouncementBar:"menuWithAnnouncementBar_GW3s"};function G(e){let{path:t,sidebar:n,className:l}=e;const c=function(){const{isActive:e}=(0,T.nT)(),[t,n]=(0,a.useState)(e);return(0,b.RF)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return a.createElement("nav",{"aria-label":(0,u.I)({id:"theme.docs.sidebar.navAriaLabel",message:"Docs sidebar",description:"The ARIA label for the sidebar navigation"}),className:(0,o.Z)("menu thin-scrollbar",q.menu,c&&q.menuWithAnnouncementBar,l)},a.createElement("ul",{className:(0,o.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(j,{items:n,activePath:t,level:1})))}const Y="sidebar_njMd",O="sidebarWithHideableNavbar_wUlq",X="sidebarHidden_VK0M",J="sidebarLogo_isFc";function Q(e){let{path:t,sidebar:n,onCollapse:l,isHidden:r}=e;const{navbar:{hideOnScroll:c},docs:{sidebar:{hideable:i}}}=(0,k.L)();return a.createElement("div",{className:(0,o.Z)(Y,c&&O,r&&X)},c&&a.createElement(_.Z,{tabIndex:-1,className:J}),a.createElement(G,{path:t,sidebar:n}),i&&a.createElement(N,{onClick:l}))}const $=a.memo(Q);var ee=n(53086),te=n(60735);const ne=e=>{let{sidebar:t,path:n}=e;const l=(0,te.e)();return a.createElement("ul",{className:(0,o.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(j,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&l.toggle(),"link"===e.type&&l.toggle()},level:1}))};function ae(e){return a.createElement(ee.Zo,{component:ne,props:e})}const oe=a.memo(ae);function le(e){const t=(0,v.i)(),n="desktop"===t||"ssr"===t,o="mobile"===t;return a.createElement(a.Fragment,null,n&&a.createElement($,e),o&&a.createElement(oe,e))}const re={expandButton:"expandButton_m80_",expandButtonIcon:"expandButtonIcon_BlDH"};function ce(e){let{toggleSidebar:t}=e;return a.createElement("div",{className:re.expandButton,title:(0,u.I)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.expandButtonAriaLabel",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),tabIndex:0,role:"button",onKeyDown:t,onClick:t},a.createElement(S,{className:re.expandButtonIcon}))}const ie={docSidebarContainer:"docSidebarContainer_b6E3",docSidebarContainerHidden:"docSidebarContainerHidden_b3ry",sidebarViewport:"sidebarViewport_Xe31"};function se(e){let{children:t}=e;const n=(0,d.V)();return a.createElement(a.Fragment,{key:n?.name??"noSidebar"},t)}function de(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:l}=e;const{pathname:c}=(0,g.TH)(),[i,s]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{i&&s(!1),!i&&(0,f.n)()&&s(!0),l((e=>!e))}),[l,i]);return a.createElement("aside",{className:(0,o.Z)(r.k.docs.docSidebarContainer,ie.docSidebarContainer,n&&ie.docSidebarContainerHidden),onTransitionEnd:e=>{e.currentTarget.classList.contains(ie.docSidebarContainer)&&n&&s(!0)}},a.createElement(se,null,a.createElement("div",{className:(0,o.Z)(ie.sidebarViewport,i&&ie.sidebarViewportHidden)},a.createElement(le,{sidebar:t,path:c,onCollapse:d,isHidden:i}),i&&a.createElement(ce,{toggleSidebar:d}))))}const me={docMainContainer:"docMainContainer_gTbr",docMainContainerEnhanced:"docMainContainerEnhanced_Uz_u",docItemWrapperEnhanced:"docItemWrapperEnhanced_czyv"};function ue(e){let{hiddenSidebarContainer:t,children:n}=e;const l=(0,d.V)();return a.createElement("main",{className:(0,o.Z)(me.docMainContainer,(t||!l)&&me.docMainContainerEnhanced)},a.createElement("div",{className:(0,o.Z)("container padding-top--md padding-bottom--lg",me.docItemWrapper,t&&me.docItemWrapperEnhanced)},n))}const be={docPage:"docPage__5DB",docsWrapper:"docsWrapper_BCFX","themedComponent--light":"themedComponent--light_NU7w"};function pe(e){let{children:t}=e;const n=(0,d.V)(),[o,l]=(0,a.useState)(!1);return a.createElement(m.Z,{wrapperClassName:be.docsWrapper},a.createElement(E,null),a.createElement("div",{className:be.docPage},n&&a.createElement(de,{sidebar:n.items,hiddenSidebarContainer:o,setHiddenSidebarContainer:l}),a.createElement(ue,{hiddenSidebarContainer:o},t)))}var he=n(74248),Ee=n(33647);function fe(e){const{versionMetadata:t}=e;return a.createElement(a.Fragment,null,a.createElement(Ee.Z,{version:t.version,tag:(0,c.os)(t.pluginId,t.version)}),a.createElement(l.d,null,t.noIndex&&a.createElement("meta",{name:"robots",content:"noindex, nofollow"})))}function ge(e){const{versionMetadata:t}=e,n=(0,i.hI)(e);if(!n)return a.createElement(he.default,null);const{docElement:c,sidebarName:m,sidebarItems:u}=n;return a.createElement(a.Fragment,null,a.createElement(fe,e),a.createElement(l.FG,{className:(0,o.Z)(r.k.wrapper.docsPages,r.k.page.docsDocPage,e.versionMetadata.className)},a.createElement(s.q,{version:t},a.createElement(d.b,{name:m,items:u},a.createElement(pe,null,c)))))}},74248:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});var a=n(67294),o=n(97325),l=n(35463),r=n(91764);function c(){return a.createElement(a.Fragment,null,a.createElement(l.d,{title:(0,o.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(o.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}},58801:(e,t,n)=>{n.d(t,{E:()=>c,q:()=>r});var a=n(67294),o=n(43768);const l=a.createContext(null);function r(e){let{children:t,version:n}=e;return a.createElement(l.Provider,{value:n},t)}function c(){const e=(0,a.useContext)(l);if(null===e)throw new o.i6("DocsVersionProvider");return e}}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1c2ab191.851a48ce.js b/packages/noco-docs/dist/assets/js/1c2ab191.851a48ce.js new file mode 100644 index 0000000000..c319642fd0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1c2ab191.851a48ce.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5518],{84031:e=>{e.exports=JSON.parse('{"label":"Overview","permalink":"/tags/overview","allTagsPath":"/tags","count":12,"items":[{"id":"bases/base-overview","title":"Base overview","description":"This article explains the concept of bases in NocoDB.","permalink":"/bases/base-overview"},{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"},{"id":"data-source/data-source-overview","title":"Data sources overview","description":"NocoDB Data-Source sync, access control & re-config","permalink":"/data-source/data-source-overview"},{"id":"fields/fields-overview","title":"Fields overview","description":"- Primary Key","permalink":"/fields/fields-overview"},{"id":"records/records-overview","title":"Records overview","description":"Learn how to create, import, and manage records in NocoDB.","permalink":"/records/records-overview"},{"id":"roles-and-permissions/roles-permissions-overview","title":"Roles & permissions overview","description":"Learn about roles and permissions in NocoDB.","permalink":"/roles-and-permissions/roles-permissions-overview"},{"id":"table-details/table-details-overview","title":"Table details overview","description":"Table details overview","permalink":"/table-details/table-details-overview"},{"id":"table-operations/overview","title":"Table operations overview","description":"Learn how to work with filters, sort, group by, and more in NocoDB.","permalink":"/table-operations/overview"},{"id":"tables/table-overview","title":"Table overview","description":"Learn how to create, import, and manage tables in NocoDB.","permalink":"/tables/table-overview"},{"id":"views/views-overview","title":"View overview","description":"Understanding Views in NocoDB!","permalink":"/views/views-overview"},{"id":"automation/webhook/webhook-overview","title":"Webhook overview","description":"You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.","permalink":"/automation/webhook/webhook-overview"},{"id":"workspaces/workspace-overview","title":"Workspace overview","description":"This article briefs the concept of workspaces in NocoDB.","permalink":"/workspaces/workspace-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1e403fb7.960437d1.js b/packages/noco-docs/dist/assets/js/1e403fb7.960437d1.js new file mode 100644 index 0000000000..6b84ff7319 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1e403fb7.960437d1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4796],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>v});var i=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,i)}return a}function l(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var s=i.createContext({}),u=function(e){var t=i.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},p=function(e){var t=u(e.components);return i.createElement(s.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},w=i.forwardRef((function(e,t){var a=e.components,n=e.mdxType,r=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),d=u(a),w=n,v=d["".concat(s,".").concat(w)]||d[w]||c[w]||r;return a?i.createElement(v,l(l({ref:t},p),{},{components:a})):i.createElement(v,l({ref:t},p))}));function v(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=a.length,l=new Array(r);l[0]=w;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[d]="string"==typeof e?e:n,l[1]=o;for(var u=2;u{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>c,frontMatter:()=>r,metadata:()=>o,toc:()=>u});var i=a(87462),n=(a(67294),a(3905));const r={title:"Views",description:"Understanding Views in NocoDB!"},l=void 0,o={unversionedId:"setup-and-usages/views",id:"version-0.109.7/setup-and-usages/views",title:"Views",description:"Understanding Views in NocoDB!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/views",permalink:"/0.109.7/setup-and-usages/views",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md",tags:[],version:"0.109.7",sidebarPosition:160,frontMatter:{title:"Views",description:"Understanding Views in NocoDB!"},sidebar:"tutorialSidebar",previous:{title:"Keyboard Maneuver",permalink:"/0.109.7/setup-and-usages/keyboard-maneuver"},next:{title:"Account Settings",permalink:"/0.109.7/setup-and-usages/account-settings"}},s={},u=[{value:"What's a View?",id:"whats-a-view",level:2},{value:"View Menu Bar",id:"view-menu-bar",level:2},{value:"View Types",id:"view-types",level:2},{value:"Grid View",id:"grid-view",level:3},{value:"Form View",id:"form-view",level:3},{value:"Gallery View",id:"gallery-view",level:3},{value:"Kanban View",id:"kanban-view",level:3},{value:"View Permission Types",id:"view-permission-types",level:2},{value:"Collaborative Views (default)",id:"collaborative-views-default",level:3},{value:"Locked Views",id:"locked-views",level:3},{value:"Personal Views",id:"personal-views",level:3},{value:"View Operations",id:"view-operations",level:2},{value:"Create a View",id:"create-a-view",level:3},{value:"Rename a View",id:"rename-a-view",level:3},{value:"Delete a View",id:"delete-a-view",level:3},{value:"Duplicate a View",id:"duplicate-a-view",level:3},{value:"Reorder a View",id:"reorder-a-view",level:3}],p={toc:u},d="wrapper";function c(e){let{components:t,...a}=e;return(0,n.kt)(d,(0,i.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"whats-a-view"},"What's a View?"),(0,n.kt)("p",null,"In a table, you can use different views to display your data. You can show specific fields in a View. You can also apply Sorting or Filtering to the View. Each View is independent, which means the configuration applying to View 1 will not apply to View 2. "),(0,n.kt)("p",null,"To navigate different views, we can select the target one in the view sidebar. By default, Grid View will be created for you after creating the table. You can create multiple views of a type, as long as they have unique View names."),(0,n.kt)("h2",{id:"view-menu-bar"},"View Menu Bar"),(0,n.kt)("p",null,"To work with ",(0,n.kt)("inlineCode",{parentName:"p"},"Views"),", use View menu-bar on the right hand side - "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"<1> Toggle View menu-bar."),(0,n.kt)("li",{parentName:"ul"},"<2> Displays created view-list for the selected table",(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Currently active view is high-lighted "))),(0,n.kt)("li",{parentName:"ul"},"<3> Add new view to the list")),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194814369-53fa8875-7610-4849-9a91-f94096b15b3f.png",alt:"image"})),(0,n.kt)("h2",{id:"view-types"},"View Types"),(0,n.kt)("h3",{id:"grid-view"},"Grid View"),(0,n.kt)("p",null,"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194824161-ce5c4875-4425-40b7-b932-8176271e4f1e.png",alt:"1010-2 Grid"})),(0,n.kt)("h3",{id:"form-view"},"Form View"),(0,n.kt)("p",null,"Form View allows you to arrange fields in a form to input data."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194824127-b400f9c8-18a7-4a37-b8c3-7d279e9976af.png",alt:"1010-2 Form"})),(0,n.kt)("p",null,"You can drag-drop columns from the form to form-field-menu-bar as requried."),(0,n.kt)("h3",{id:"gallery-view"},"Gallery View"),(0,n.kt)("p",null,"Gallery View allows you to display images as thumbnails with other fields just like a gallery."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194824141-04c76a4e-2cae-448f-a842-c79f5bce339d.png",alt:"1010-2 Gallery"})),(0,n.kt)("h3",{id:"kanban-view"},"Kanban View"),(0,n.kt)("p",null,"Kanban View allows you to visualise your data using cards at various stacks."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194824164-97ca897a-3af4-42ab-8812-534afaf23396.png",alt:"1010-2 Kanban"})),(0,n.kt)("h2",{id:"view-permission-types"},"View Permission Types"),(0,n.kt)("p",null,"We can apply permission to each View. By default, Collaborative Views will be used. To see or change the view type, expand ",(0,n.kt)("inlineCode",{parentName:"p"},"view-tool-bar-menu")," as shown below. "),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189328303-edbf35b5-f793-4e06-9dbf-89d045a38482.png",alt:"Screenshot 2022-09-09 at 3 46 33 PM"})),(0,n.kt)("h3",{id:"collaborative-views-default"},"Collaborative Views (default)"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Collaborators with edit permissions or higher can change the view configurations")),(0,n.kt)("h3",{id:"locked-views"},"Locked Views"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"No one can edit view configurations until it is Unlocked"),(0,n.kt)("li",{parentName:"ul"},"All collaborators can only READ data from such views")),(0,n.kt)("h3",{id:"personal-views"},"Personal Views"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Only you can edit the view configuration. "),(0,n.kt)("li",{parentName:"ul"},"Your personal views are hidden for other collaborators"),(0,n.kt)("li",{parentName:"ul"},"Are not available currently; will be enabled in future release")),(0,n.kt)("h2",{id:"view-operations"},"View Operations"),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189325592-302054da-a755-4a92-a322-80aed184ca3b.png",alt:"Screenshot 2022-09-09 at 3 27 46 PM"})),(0,n.kt)("h3",{id:"create-a-view"},"Create a View"),(0,n.kt)("p",null,"Click '+' in View-menu sidebar, as shown in <3>."),(0,n.kt)("h3",{id:"rename-a-view"},"Rename a View"),(0,n.kt)("p",null,"Double click on ",(0,n.kt)("inlineCode",{parentName:"p"},"view-name"),", edit, ",(0,n.kt)("enter",null),"."),(0,n.kt)("h3",{id:"delete-a-view"},"Delete a View"),(0,n.kt)("p",null,"Hover the target View and click the delete icon, as shown in <2>."),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"You cannot delete the very first Grid View (termed as ",(0,n.kt)("inlineCode",{parentName:"p"},"Default view"),").")),(0,n.kt)("h3",{id:"duplicate-a-view"},"Duplicate a View"),(0,n.kt)("p",null,"Hover the target View and click the copy icon, as shown in <2>."),(0,n.kt)("h3",{id:"reorder-a-view"},"Reorder a View"),(0,n.kt)("p",null,"Hover the target View and re-order it as needed by drag-drop the drag icon, as shown in <1>."))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/1e898359.6dc08d8a.js b/packages/noco-docs/dist/assets/js/1e898359.6dc08d8a.js new file mode 100644 index 0000000000..9648d2a2de --- /dev/null +++ b/packages/noco-docs/dist/assets/js/1e898359.6dc08d8a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8704],{3905:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>h});var a=o(67294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var s=a.createContext({}),c=function(e){var t=a.useContext(s),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},u=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(o),m=n,h=d["".concat(s,".").concat(m)]||d[m]||p[m]||r;return o?a.createElement(h,i(i({ref:t},u),{},{components:o})):a.createElement(h,i({ref:t},u))}));function h(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,i=new Array(r);i[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:n,i[1]=l;for(var c=2;c{o.r(t),o.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var a=o(87462),n=(o(67294),o(3905));const r={title:"Welcome",description:"NocoDB Documentation",slug:"/"},i=void 0,l={unversionedId:"index",id:"version-0.109.7/index",title:"Welcome",description:"NocoDB Documentation",source:"@site/versioned_docs/version-0.109.7/010.index.md",sourceDirName:".",slug:"/",permalink:"/0.109.7/",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/010.index.md",tags:[],version:"0.109.7",sidebarPosition:10,frontMatter:{title:"Welcome",description:"NocoDB Documentation",slug:"/"},sidebar:"tutorialSidebar",next:{title:"Installation",permalink:"/0.109.7/getting-started/installation"}},s={},c=[{value:"Welcome!",id:"welcome",level:2},{value:"Features",id:"features",level:2},{value:"Rich Spreadsheet Interface",id:"rich-spreadsheet-interface",level:3},{value:"App Store for Workflow Automations",id:"app-store-for-workflow-automations",level:3},{value:"Programmatic Access",id:"programmatic-access",level:3},{value:"Sync Schema",id:"sync-schema",level:3},{value:"Audit",id:"audit",level:3},{value:"Why are we building this?",id:"why-are-we-building-this",level:2},{value:"Our Mission",id:"our-mission",level:2},{value:"How can I contribute to NocoDB's development ?",id:"how-can-i-contribute-to-nocodbs-development-",level:2},{value:"Where can I join the NocoDB community?",id:"where-can-i-join-the-nocodb-community",level:2}],u={toc:c},d="wrapper";function p(e){let{components:t,...r}=e;return(0,n.kt)(d,(0,a.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"welcome"},"Welcome!"),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:o(86216).Z,width:"1584",height:"396"})),(0,n.kt)("p",null,"NocoDB is a no-code database platform that allows teams to collaborate and build applications with ease of a familiar and intuitive spreadsheet interface. This allows even non-developers or business users to become software creators."),(0,n.kt)("p",null,"NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface! This allows you to build no-code applications collaboratively with teams. NocoDB currently works with MySQL, PostgreSQL, Microsoft SQL Server, SQLite, Amazon Aurora & MariaDB databases."),(0,n.kt)("p",null,"Also NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too."),(0,n.kt)("h2",{id:"features"},"Features"),(0,n.kt)("h3",{id:"rich-spreadsheet-interface"},"Rich Spreadsheet Interface"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Basic Operations: Create, Read, Update and Delete on Tables, Columns, and Rows"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Fields Operations: Sort, Filter, Hide / Unhide Columns"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Multiple Views Types: Grid (By default), Gallery, Form View and Kanban View"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","View Permissions Types: Collaborative Views, & Locked Views "),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Share Bases / Views: either Public or Private (with Password Protected)"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Variant Cell Types: ID, LinkToAnotherRecord, Lookup, Rollup, SingleLineText, Attachement, Currency, Formula and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Access Control with Roles : Fine-grained Access Control at different levels"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","and more ...")),(0,n.kt)("h3",{id:"app-store-for-workflow-automations"},"App Store for Workflow Automations"),(0,n.kt)("p",null,"We provide different integrations in three main categories. See ",(0,n.kt)("a",{href:"/0.109.7/setup-and-usages/account-settings#app-store",target:"_blank"},"App Store")," for details."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Chat : Slack, Discord, Mattermost, and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Email : AWS SES, SMTP, MailerSend, and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Storage : AWS S3, Google Cloud Storage, Minio, and etc")),(0,n.kt)("h3",{id:"programmatic-access"},"Programmatic Access"),(0,n.kt)("p",null,"We provide the following ways to let users to invoke actions in a programmatic way. You can use a token (either JWT or Social Auth) to sign your requests for authorization to NocoDB. "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","REST APIs"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","NocoDB SDK")),(0,n.kt)("h3",{id:"sync-schema"},"Sync Schema"),(0,n.kt)("p",null,"We allow you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from environment to others. See ",(0,n.kt)("a",{href:"/0.109.7/setup-and-usages/sync-schema",target:"_blank"},"Sync Schema")," for details."),(0,n.kt)("h3",{id:"audit"},"Audit"),(0,n.kt)("p",null,"We are keeping all the user operation logs under one place. See ",(0,n.kt)("a",{href:"/0.109.7/setup-and-usages/audit",target:"_blank"},"Audit")," for details."),(0,n.kt)("h2",{id:"why-are-we-building-this"},"Why are we building this?"),(0,n.kt)("p",null,"Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by a Billion+ humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings has meant horrible access controls, vendor lockin, data lockin, abrupt price changes & most importantly a glass ceiling on what's possible in future."),(0,n.kt)("h2",{id:"our-mission"},"Our Mission"),(0,n.kt)("p",null,"Our mission is to provide the most powerful no-code interface for databases which is open source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on internet. "),(0,n.kt)("h2",{id:"how-can-i-contribute-to-nocodbs-development-"},"How can I contribute to NocoDB's development ?"),(0,n.kt)("p",null,"Please refer to ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/blob/develop/.github/CONTRIBUTING.md"},"here")," for the contribution guidelines."),(0,n.kt)("img",{src:"https://static.scarf.sh/a.png?x-pxid=c12a77cc-855e-4602-8a0f-614b2d0da56a",style:{margin:"0px"}}),(0,n.kt)("h2",{id:"where-can-i-join-the-nocodb-community"},"Where can I join the NocoDB community?"),(0,n.kt)("p",null,"Follow us for daily updates, content, and other activities with our community:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.youtube.com/@nocodb"},"Youtube")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://twitter.com/nocodb"},"Twitter")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"http://discord.nocodb.com/"},"Discord")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb"},"GitHub")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://community.nocodb.com/"},"Community Forums")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nocodb"},"LinkedIn")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.reddit.com/r/NocoDB/"},"Reddit"))))}p.isMDXComponent=!0},86216:(e,t,o)=>{o.d(t,{Z:()=>a});const a=o.p+"assets/images/banner-0a7a485798fc16881259280a1227725d.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/20e10381.37a84cbb.js b/packages/noco-docs/dist/assets/js/20e10381.37a84cbb.js new file mode 100644 index 0000000000..75a89b2a19 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/20e10381.37a84cbb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[405],{3905:(e,t,o)=>{o.d(t,{Zo:()=>p,kt:()=>m});var n=o(67294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function i(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),s=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=s(o),h=r,m=u["".concat(c,".").concat(h)]||u[h]||d[h]||a;return o?n.createElement(m,i(i({ref:t},p),{},{components:o})):n.createElement(m,i({ref:t},p))}));function m(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=o.length,i=new Array(a);i[0]=h;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[u]="string"==typeof e?e:r,i[1]=l;for(var s=2;s{o.r(t),o.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var n=o(87462),r=(o(67294),o(3905));const a={title:"FAQs",description:"General FAQs"},i=void 0,l={unversionedId:"FAQs",id:"FAQs",title:"FAQs",description:"General FAQs",source:"@site/docs/990.FAQs.md",sourceDirName:".",slug:"/FAQs",permalink:"/FAQs",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/990.FAQs.md",tags:[],version:"current",sidebarPosition:990,frontMatter:{title:"FAQs",description:"General FAQs"},sidebar:"tutorialSidebar",previous:{title:"Writing docs",permalink:"/engineering/writing-docs"}},c={},s=[{value:"How to upgrade NocoDB ?",id:"how-to-upgrade-nocodb-",level:2},{value:"How to export CSV from the grid view ?",id:"how-to-export-csv-from-the-grid-view-",level:2},{value:"How to share the project with read only access ?",id:"how-to-share-the-project-with-read-only-access-",level:2},{value:"How to check my Project info ?",id:"how-to-check-my-project-info-",level:2},{value:"What is available in free version ?",id:"what-is-available-in-free-version-",level:2},{value:"What is the difference between Auth Token and API Token ?",id:"what-is-the-difference-between-auth-token-and-api-token-",level:2},{value:"Do we plan to have an Enterprise Edition?",id:"do-we-plan-to-have-an-enterprise-edition",level:2},{value:"How do we decide if a feature is Enterprise or not ?",id:"how-do-we-decide-if-a-feature-is-enterprise-or-not-",level:2},{value:"What are the official socials for NocoDB?",id:"what-are-the-official-socials-for-nocodb",level:2},{value:"Is NocoDB available on the cloud?",id:"is-nocodb-available-on-the-cloud",level:2}],p={toc:s},u="wrapper";function d(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"how-to-upgrade-nocodb-"},"How to upgrade NocoDB ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Please see ",(0,r.kt)("a",{parentName:"li",href:"https://docs.nocodb.com/getting-started/upgrading"},"here")," ")),(0,r.kt)("h2",{id:"how-to-export-csv-from-the-grid-view-"},"How to export CSV from the grid view ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Available since ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/tag/0.81.1"},"0.81.1"))),(0,r.kt)("h2",{id:"how-to-share-the-project-with-read-only-access-"},"How to share the project with read only access ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Either you can invite by email with 'viewer' access control"),(0,r.kt)("li",{parentName:"ul"},"Share the base with publicly accessible link. Available since ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/tag/0.82.0"},"0.82.0")," ")),(0,r.kt)("h2",{id:"how-to-check-my-project-info-"},"How to check my Project info ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"You can open ",(0,r.kt)("inlineCode",{parentName:"li"},"Project context menu")," and click ",(0,r.kt)("inlineCode",{parentName:"li"},"Copy Project Info"),".")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:o(24330).Z,width:"824",height:"511"})),(0,r.kt)("p",null,"You should see the similar result as below."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"Node: **v18.16.4**\nArch: **arm64**\nPlatform: **linux**\nDocker: **true**\nRootDB: **sqlite3**\nPackageVersion: **0.111.0**\n")),(0,r.kt)("h2",{id:"what-is-available-in-free-version-"},"What is available in free version ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/orgs/nocodb/projects/13"},"Detailed comparison of NocoDB's generous CE compared to others is here"),"."),(0,r.kt)("li",{parentName:"ul"},"NocoDB has just one version that is free & open source."),(0,r.kt)("li",{parentName:"ul"},"In it you will notice advanced features are all available for free.",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"ACL"),(0,r.kt)("li",{parentName:"ul"},"Collaboration"),(0,r.kt)("li",{parentName:"ul"},"Advanced Views : Form View, Gallery View & Kanban View"),(0,r.kt)("li",{parentName:"ul"},"Share View"),(0,r.kt)("li",{parentName:"ul"},"Embed View "),(0,r.kt)("li",{parentName:"ul"},"Password protected View"),(0,r.kt)("li",{parentName:"ul"},"Automations"),(0,r.kt)("li",{parentName:"ul"},"API Token Support"))),(0,r.kt)("li",{parentName:"ul"},"And we would never move these features from free to an enterprise version of NocoDB."),(0,r.kt)("li",{parentName:"ul"},"There is no limitations to number of projects, rows or columns either.")),(0,r.kt)("h2",{id:"what-is-the-difference-between-auth-token-and-api-token-"},"What is the difference between Auth Token and API Token ?"),(0,r.kt)("p",null,"Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable ",(0,r.kt)("inlineCode",{parentName:"p"},"NC_JWT_EXPIRES_IN"),". If you are passing Auth Token, make sure that the header is called ",(0,r.kt)("inlineCode",{parentName:"p"},"xc-auth"),"."),(0,r.kt)("p",null,"API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called ",(0,r.kt)("inlineCode",{parentName:"p"},"xc-token"),"."),(0,r.kt)("h2",{id:"do-we-plan-to-have-an-enterprise-edition"},"Do we plan to have an Enterprise Edition?"),(0,r.kt)("p",null,"For features that make sense for enterprises like below - yes "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"SSO, SLA, Organisation wide reports and analytics, "),(0,r.kt)("li",{parentName:"ul"},"Advanced Audit or ACL, "),(0,r.kt)("li",{parentName:"ul"},"Bespoke implementations & integrations,"),(0,r.kt)("li",{parentName:"ul"},"A hosted solution.\n")),(0,r.kt)("p",null,"And increasing number of our customers are requesting it. "),(0,r.kt)("h2",{id:"how-do-we-decide-if-a-feature-is-enterprise-or-not-"},"How do we decide if a feature is Enterprise or not ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Depends on the effort and whether the intended users are enterprises.")),(0,r.kt)("h2",{id:"what-are-the-official-socials-for-nocodb"},"What are the official socials for NocoDB?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Youtube: ",(0,r.kt)("a",{parentName:"li",href:"https://www.youtube.com/@nocodb"},"https://www.youtube.com/@nocodb")),(0,r.kt)("li",{parentName:"ul"},"Twitter: ",(0,r.kt)("a",{parentName:"li",href:"https://twitter.com/nocodb"},"https://twitter.com/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Discord: ",(0,r.kt)("a",{parentName:"li",href:"http://discord.nocodb.com/"},"http://discord.nocodb.com/")),(0,r.kt)("li",{parentName:"ul"},"GitHub: ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb"},"https://github.com/nocodb/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Community Forums: ",(0,r.kt)("a",{parentName:"li",href:"https://community.nocodb.com/"},"https://community.nocodb.com/")),(0,r.kt)("li",{parentName:"ul"},"LinkedIn: ",(0,r.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nocodb"},"https://www.linkedin.com/company/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Reddit: ",(0,r.kt)("a",{parentName:"li",href:"https://www.reddit.com/r/NocoDB/"},"https://www.reddit.com/r/NocoDB/"))),(0,r.kt)("h2",{id:"is-nocodb-available-on-the-cloud"},"Is NocoDB available on the cloud?"),(0,r.kt)("p",null,"Soon! NocoDB is currently developing cloud infrastructure.\nTo join the upcoming FREE private beta program, ",(0,r.kt)("a",{parentName:"p",href:"https://docs.google.com/forms/d/e/1FAIpQLSfKLe8Rcrq0uo2_jM5W1kbVBbzDiQ3IvlP8Iov61FTekVAvzA/viewform"},"fill out this form here")," and be the first to try it!"))}d.isMDXComponent=!0},24330:(e,t,o)=>{o.d(t,{Z:()=>n});const n=o.p+"assets/images/copy-proj-info-f059b5a1330cd599d89ba88d6714883c.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2226a1e9.03795cf8.js b/packages/noco-docs/dist/assets/js/2226a1e9.03795cf8.js new file mode 100644 index 0000000000..d0d5031a13 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2226a1e9.03795cf8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9552],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>k});var o=n(67294);function l(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function r(e){for(var t=1;t=0||(l[n]=e[n]);return l}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n])}return l}var u=o.createContext({}),c=function(e){var t=o.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},s=function(e){var t=c(e.components);return o.createElement(u.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,l=e.mdxType,a=e.originalType,u=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),p=c(n),m=l,k=p["".concat(u,".").concat(m)]||p[m]||d[m]||a;return n?o.createElement(k,r(r({ref:t},s),{},{components:n})):o.createElement(k,r({ref:t},s))}));function k(e,t){var n=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var a=n.length,r=new Array(a);r[0]=m;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i[p]="string"==typeof e?e:l,r[1]=i;for(var c=2;c{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>r,default:()=>d,frontMatter:()=>a,metadata:()=>i,toc:()=>c});var o=n(87462),l=(n(67294),n(3905));const a={title:"Lookup",description:"Understanding Lookup Column!"},r=void 0,i={unversionedId:"setup-and-usages/lookup",id:"version-0.109.7/setup-and-usages/lookup",title:"Lookup",description:"Understanding Lookup Column!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/lookup",permalink:"/0.109.7/setup-and-usages/lookup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md",tags:[],version:"0.109.7",sidebarPosition:70,frontMatter:{title:"Lookup",description:"Understanding Lookup Column!"},sidebar:"tutorialSidebar",previous:{title:"Link To Another Record",permalink:"/0.109.7/setup-and-usages/link-to-another-record"},next:{title:"Rollup",permalink:"/0.109.7/setup-and-usages/rollup"}},u={},c=[{value:"Lookup",id:"lookup",level:2},{value:"Example organization structure",id:"example-organization-structure",level:3},{value:"Configuring a lookup column",id:"configuring-a-lookup-column",level:3},{value:"1. Add new column : Click on '+' icon to the left of column headers in Employee table",id:"1-add-new-column--click-on--icon-to-the-left-of-column-headers-in-employee-table",level:4},{value:"2. Feed column name",id:"2-feed-column-name",level:4},{value:"3. Select column type as 'Lookup'",id:"3-select-column-type-as-lookup",level:4},{value:"4. Choose child table",id:"4-choose-child-table",level:4},{value:"5. Select child column",id:"5-select-child-column",level:4},{value:"6. Click on 'Save'",id:"6-click-on-save",level:4},{value:"Additional notes",id:"additional-notes",level:2}],s={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,l.kt)(p,(0,o.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"lookup"},"Lookup"),(0,l.kt)("h3",{id:"example-organization-structure"},"Example organization structure"),(0,l.kt)("p",null,"Consider an organization with"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"5 departments (company departments), each department has a team name & associated team code. Each ",(0,l.kt)("inlineCode",{parentName:"li"},"Team")," ",(0,l.kt)("strong",{parentName:"li"},"has many")," ",(0,l.kt)("inlineCode",{parentName:"li"},"Employees")," - relationship has been defined using ",(0,l.kt)("inlineCode",{parentName:"li"},"LinkToAnotherRecord")," or ",(0,l.kt)("inlineCode",{parentName:"li"},"Links"),"column"),(0,l.kt)("li",{parentName:"ul"},"5 employees working at different departments")),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189295738-a4197818-f7d7-4769-acad-13b6d05afe7e.png",alt:"Screenshot 2022-09-09 at 12 57 32 PM"})),(0,l.kt)("p",null,"Now, let's explore procedure to retrieve team-code information in Employee table using ",(0,l.kt)("strong",{parentName:"p"},"LOOKUP")," columns"),(0,l.kt)("h3",{id:"configuring-a-lookup-column"},"Configuring a lookup column"),(0,l.kt)("h4",{id:"1-add-new-column--click-on--icon-to-the-left-of-column-headers-in-employee-table"},"1. Add new column : Click on '+' icon to the left of column headers in Employee table"),(0,l.kt)("h4",{id:"2-feed-column-name"},"2. Feed column name"),(0,l.kt)("h4",{id:"3-select-column-type-as-lookup"},"3. Select column type as 'Lookup'"),(0,l.kt)("h4",{id:"4-choose-child-table"},"4. Choose child table"),(0,l.kt)("h4",{id:"5-select-child-column"},"5. Select child column"),(0,l.kt)("h4",{id:"6-click-on-save"},"6. Click on 'Save'"),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189291720-642a6a96-0b3d-4eaa-886a-20d33a967644.png",alt:"Screenshot 2022-09-09 at 12 21 13 PM"})),(0,l.kt)("p",null,"Required information is now populated in the newly created column"),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189291679-09503e32-9146-41fa-b28c-d900f2dc35a4.png",alt:"Screenshot 2022-09-09 at 12 26 06 PM"})),(0,l.kt)("h2",{id:"additional-notes"},"Additional notes"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Nested 'Lookup' supported: a Lookup field can have its child column datatype as Lookup (or Rollup).")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/224f2b0f.8af2269b.js b/packages/noco-docs/dist/assets/js/224f2b0f.8af2269b.js new file mode 100644 index 0000000000..1ad5a98f50 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/224f2b0f.8af2269b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2562],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>k});var a=n(67294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var p=a.createContext({}),d=function(t){var e=a.useContext(p),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=d(t.components);return a.createElement(p.Provider,{value:e},t.children)},u="mdxType",s={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},N=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),u=d(n),N=r,k=u["".concat(p,".").concat(N)]||u[N]||s[N]||l;return n?a.createElement(k,i(i({ref:e},m),{},{components:n})):a.createElement(k,i({ref:e},m))}));function k(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=N;var o={};for(var p in e)hasOwnProperty.call(e,p)&&(o[p]=e[p]);o.originalType=t,o[u]="string"==typeof t?t:r,i[1]=o;for(var d=2;d{n.r(e),n.d(e,{assets:()=>p,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>d});var a=n(87462),r=(n(67294),n(3905));const l={title:"Numeric functions",tags:["Fields","Field types","Formula"]},i=void 0,o={unversionedId:"fields/field-types/formula/numeric-functions",id:"fields/field-types/formula/numeric-functions",title:"Numeric functions",description:"Numeric functions",source:"@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/numeric-functions",permalink:"/fields/field-types/formula/numeric-functions",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"}],version:"current",sidebarPosition:20,frontMatter:{title:"Numeric functions",tags:["Fields","Field types","Formula"]},sidebar:"tutorialSidebar",previous:{title:"Numeric and Logical Operators",permalink:"/fields/field-types/formula/operators"},next:{title:"String functions",permalink:"/fields/field-types/formula/string-functions"}},p={},d=[{value:"Numeric functions",id:"numeric-functions",level:3},{value:"Related Articles",id:"related-articles",level:2}],m={toc:d},u="wrapper";function s(t){let{components:e,...n}=t;return(0,r.kt)(u,(0,a.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h3",{id:"numeric-functions"},"Numeric functions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ABS")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ABS(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ABS({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Absolute value of the input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ADD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ADD(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ADD({Column1}, {Column2})")),(0,r.kt)("td",{parentName:"tr",align:null},"Sum of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"AVG")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AVG(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AVG({Column1}, {Column2})")),(0,r.kt)("td",{parentName:"tr",align:null},"Average of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"CEILING")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CEILING(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CEILING({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Rounded next largest integer value of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"EXP")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"EXP(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"EXP({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Exponential value of input parameter (",(0,r.kt)("inlineCode",{parentName:"td"},"e^x"),")")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"FLOOR")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"FLOOR(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"FLOOR({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Rounded largest integer less than or equal to input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"INT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"INT(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"INT({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Integer value of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"LOG")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOG([base], value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOG(10, {Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Logarithm of input parameter to the base (default = e) specified")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MAX")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MAX(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MAX({Column1}, {Column2}, {Column3})")),(0,r.kt)("td",{parentName:"tr",align:null},"Maximum value amongst input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MIN")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MIN(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MIN({Column1}, {Column2}, {Column3})")),(0,r.kt)("td",{parentName:"tr",align:null},"Minimum value amongst input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MOD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MOD(value1, value2)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MOD({Column}, 2)")),(0,r.kt)("td",{parentName:"tr",align:null},"Remainder after integer division of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"POWER")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"POWER(base, exponent)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"POWER({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"base")," to the ",(0,r.kt)("inlineCode",{parentName:"td"},"exponent")," power, as in ",(0,r.kt)("inlineCode",{parentName:"td"},"base ^ exponent"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ROUND")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ROUND(value, precision)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ROUND({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},"Round input ",(0,r.kt)("inlineCode",{parentName:"td"},"value")," to decimal place specified by ",(0,r.kt)("inlineCode",{parentName:"td"},"precision")," (Nearest integer if ",(0,r.kt)("inlineCode",{parentName:"td"},"precision")," not provided)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SQRT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SQRT(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SQRT({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Square root of the input parameter")))),(0,r.kt)("h2",{id:"related-articles"},"Related Articles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/operators"},"Numeric and Logical Operators")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/string-functions"},"String Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/date-functions"},"Date Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/conditional-expressions"},"Conditional Expressions"))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/22580739.f92115db.js b/packages/noco-docs/dist/assets/js/22580739.f92115db.js new file mode 100644 index 0000000000..972790b201 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/22580739.f92115db.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1796],{3905:(e,t,i)=>{i.d(t,{Zo:()=>p,kt:()=>m});var r=i(67294);function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function n(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function o(e){for(var t=1;t=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var d=r.createContext({}),s=function(e){var t=r.useContext(d),i=t;return e&&(i="function"==typeof e?e(t):o(o({},t),e)),i},p=function(e){var t=s(e.components);return r.createElement(d.Provider,{value:t},e.children)},c="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},h=r.forwardRef((function(e,t){var i=e.components,a=e.mdxType,n=e.originalType,d=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),c=s(i),h=a,m=c["".concat(d,".").concat(h)]||c[h]||f[h]||n;return i?r.createElement(m,o(o({ref:t},p),{},{components:i})):r.createElement(m,o({ref:t},p))}));function m(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=i.length,o=new Array(n);o[0]=h;var l={};for(var d in t)hasOwnProperty.call(t,d)&&(l[d]=t[d]);l.originalType=e,l[c]="string"==typeof e?e:a,o[1]=l;for(var s=2;s{i.r(t),i.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>f,frontMatter:()=>n,metadata:()=>l,toc:()=>s});var r=i(87462),a=(i(67294),i(3905));const n={title:"Hide & reorder fields",description:"Learn how to hide and reorder fields in NocoDB.",tags:["Table operations","Reorder","Show/Hide","Cover image","Gallery View","Kanban View","Grid View"],keywords:["fields, hide fields, reorder fields, change cover field, gallery view, kanban view"]},o=void 0,l={unversionedId:"table-operations/field-operations",id:"table-operations/field-operations",title:"Hide & reorder fields",description:"Learn how to hide and reorder fields in NocoDB.",source:"@site/docs/060.table-operations/020.field-operations.md",sourceDirName:"060.table-operations",slug:"/table-operations/field-operations",permalink:"/table-operations/field-operations",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/020.field-operations.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Reorder",permalink:"/tags/reorder"},{label:"Show/Hide",permalink:"/tags/show-hide"},{label:"Cover image",permalink:"/tags/cover-image"},{label:"Gallery View",permalink:"/tags/gallery-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:20,frontMatter:{title:"Hide & reorder fields",description:"Learn how to hide and reorder fields in NocoDB.",tags:["Table operations","Reorder","Show/Hide","Cover image","Gallery View","Kanban View","Grid View"],keywords:["fields, hide fields, reorder fields, change cover field, gallery view, kanban view"]},sidebar:"tutorialSidebar",previous:{title:"Table operations overview",permalink:"/table-operations/overview"},next:{title:"Filtering records",permalink:"/table-operations/filter"}},d={},s=[{value:"Rearranging Fields",id:"rearranging-fields",level:3},{value:"Show/Hide Fields",id:"showhide-fields",level:3},{value:"Change cover field (Gallery/Kanban View)",id:"change-cover-field-gallerykanban-view",level:3},{value:"Related topics",id:"related-topics",level:3}],p={toc:s},c="wrapper";function f(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"Utilize the ",(0,a.kt)("inlineCode",{parentName:"p"},"Fields")," button in the toolbar to manage the visibility of fields within the system. By default, all system-related fields are concealed, but you have the option to enable them by selecting ",(0,a.kt)("inlineCode",{parentName:"p"},"Show system fields"),"."),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"For Gallery View & Kanban View, the ",(0,a.kt)("inlineCode",{parentName:"p"},"Fields")," menu is available on the toolbar as ",(0,a.kt)("inlineCode",{parentName:"p"},"Edit Cards"),".")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Show system fields",src:i(96734).Z,width:"2876",height:"1032"})),(0,a.kt)("h3",{id:"rearranging-fields"},"Rearranging Fields"),(0,a.kt)("p",null,"You have the flexibility to rearrange field positions. Access the ",(0,a.kt)("inlineCode",{parentName:"p"},"Fields")," menu and reorder fields effortlessly by dragging and dropping the associated field using the provided ",(0,a.kt)("inlineCode",{parentName:"p"},"drag icon"),"."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Reorder Fields",src:i(75537).Z,width:"2876",height:"1032"})),(0,a.kt)("h3",{id:"showhide-fields"},"Show/Hide Fields"),(0,a.kt)("p",null,"For showing or hiding fields, navigate to the ",(0,a.kt)("inlineCode",{parentName:"p"},"Fields")," menu and simply click the toggle button associated with the respective field to hide or un-hide it."),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("p",{parentName:"admonition"},"Consider creating different grid views with distinct sets of fields displayed in each view for enhanced customization.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Show/Hide Fields",src:i(84125).Z,width:"2876",height:"1032"})),(0,a.kt)("h3",{id:"change-cover-field-gallerykanban-view"},"Change cover field (Gallery/Kanban View)"),(0,a.kt)("p",null,"For Gallery View & Kanban View, you can change the cover field by clicking on the ",(0,a.kt)("inlineCode",{parentName:"p"},"Change cover field")," button in the ",(0,a.kt)("inlineCode",{parentName:"p"},"Edit Cards")," menu. You can select any field of type ",(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," as the cover field."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Change cover field",src:i(29194).Z,width:"2874",height:"1414"})),(0,a.kt)("h3",{id:"related-topics"},"Related topics"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"download"},"Download"))))}f.isMDXComponent=!0},29194:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/change-cover-image-b15b7e243d6f759f98b53af619ffc93f.png"},84125:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/fields-hide-4cb4fc24e858aa3cc1b1e0f3b6b2e697.png"},75537:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/fields-reorder-6377c71bdded118c93410ae6d956fbd2.png"},96734:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/fields-show-system-fields-6e11b087d9ad724171b108988da62eeb.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/22aab9a3.aede8217.js b/packages/noco-docs/dist/assets/js/22aab9a3.aede8217.js new file mode 100644 index 0000000000..b2ab0e6e98 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/22aab9a3.aede8217.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6907],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>m});var n=l(67294);function i(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function r(e){for(var t=1;t=0||(i[l]=e[l]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(i[l]=e[l])}return i}var o=n.createContext({}),d=function(e){var t=n.useContext(o),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},p=function(e){var t=d(e.components);return n.createElement(o.Provider,{value:t},e.children)},f="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var l=e.components,i=e.mdxType,a=e.originalType,o=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),f=d(l),u=i,m=f["".concat(o,".").concat(u)]||f[u]||c[u]||a;return l?n.createElement(m,r(r({ref:t},p),{},{components:l})):n.createElement(m,r({ref:t},p))}));function m(e,t){var l=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=l.length,r=new Array(a);r[0]=u;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[f]="string"==typeof e?e:i,r[1]=s;for(var d=2;d{l.r(t),l.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>c,frontMatter:()=>a,metadata:()=>s,toc:()=>d});var n=l(87462),i=(l(67294),l(3905));const a={title:"Single line text",tags:["Fields","Field types","Text based types","Single line text"]},r=void 0,s={unversionedId:"fields/field-types/text-based/single-line-text",id:"fields/field-types/text-based/single-line-text",title:"Single line text",description:"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.",source:"@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md",sourceDirName:"070.fields/040.field-types/010.text-based",slug:"/fields/field-types/text-based/single-line-text",permalink:"/fields/field-types/text-based/single-line-text",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Text based types",permalink:"/tags/text-based-types"},{label:"Single line text",permalink:"/tags/single-line-text"}],version:"current",sidebarPosition:10,frontMatter:{title:"Single line text",tags:["Fields","Field types","Text based types","Single line text"]},sidebar:"tutorialSidebar",previous:{title:"Display value",permalink:"/fields/display-value"},next:{title:"Long text",permalink:"/fields/field-types/text-based/long-text"}},o={},d=[{value:"Create a single line text field",id:"create-a-single-line-text-field",level:2},{value:"Similar text based fields",id:"similar-text-based-fields",level:2}],p={toc:d},f="wrapper";function c(e){let{components:t,...a}=e;return(0,i.kt)(f,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Single line text")," field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use ",(0,i.kt)("a",{parentName:"p",href:"/fields/field-types/text-based/long-text"},"Long text")," field. "),(0,i.kt)("h2",{id:"create-a-single-line-text-field"},"Create a single line text field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Single line text")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:l(34863).Z,width:"1263",height:"540"})),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("p",{parentName:"admonition"},"Specify default value without quotes.")),(0,i.kt)("h2",{id:"similar-text-based-fields"},"Similar text based fields"),(0,i.kt)("p",null,"Following are the other text based fields available in NocoDB, custom-built for specific use cases."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/long-text"},"Long text")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/url"},"URL")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/email"},"Email")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/phonenumber"},"Phone"))))}c.isMDXComponent=!0},34863:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/single-line-text-de73983db410a8037d3518f7ff6f8fcb.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/23371042.057e65b7.js b/packages/noco-docs/dist/assets/js/23371042.057e65b7.js new file mode 100644 index 0000000000..bc81d0f8b0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/23371042.057e65b7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5375],{67337:e=>{e.exports=JSON.parse('{"label":"Members","permalink":"/tags/members","allTagsPath":"/tags","count":2,"items":[{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/25ad7bcb.4c882009.js b/packages/noco-docs/dist/assets/js/25ad7bcb.4c882009.js new file mode 100644 index 0000000000..d764ca4b84 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/25ad7bcb.4c882009.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8789],{3905:(e,t,o)=>{o.d(t,{Zo:()=>b,kt:()=>d});var a=o(67294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function n(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},b=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},m="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var o=e.components,r=e.mdxType,n=e.originalType,s=e.parentName,b=l(e,["components","mdxType","originalType","parentName"]),m=c(o),u=r,d=m["".concat(s,".").concat(u)]||m[u]||p[u]||n;return o?a.createElement(d,i(i({ref:t},b),{},{components:o})):a.createElement(d,i({ref:t},b))}));function d(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var n=o.length,i=new Array(n);i[0]=u;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[m]="string"==typeof e?e:r,i[1]=l;for(var c=2;c{o.r(t),o.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>n,metadata:()=>l,toc:()=>c});var a=o(87462),r=(o(67294),o(3905));const n={title:"Base collaboration",description:"Invite team members to work on a base",tags:["Collaboration","Bases","Member","Invite","Role"],keywords:["NocoDB base","base collaboration","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},i=void 0,l={unversionedId:"collaboration/base-collaboration",id:"collaboration/base-collaboration",title:"Base collaboration",description:"Invite team members to work on a base",source:"@site/docs/120.collaboration/020.base-collaboration.md",sourceDirName:"120.collaboration",slug:"/collaboration/base-collaboration",permalink:"/collaboration/base-collaboration",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/020.base-collaboration.md",tags:[{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Bases",permalink:"/tags/bases"},{label:"Member",permalink:"/tags/member"},{label:"Invite",permalink:"/tags/invite"},{label:"Role",permalink:"/tags/role"}],version:"current",sidebarPosition:20,frontMatter:{title:"Base collaboration",description:"Invite team members to work on a base",tags:["Collaboration","Bases","Member","Invite","Role"],keywords:["NocoDB base","base collaboration","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},sidebar:"tutorialSidebar",previous:{title:"Workspace collaboration",permalink:"/collaboration/workspace-collaboration"},next:{title:"Share base",permalink:"/collaboration/share-base"}},s={},c=[{value:"Inviting members to your base",id:"inviting-members-to-your-base",level:2},{value:"Removing members from your base",id:"removing-members-from-your-base",level:2}],b={toc:c},m="wrapper";function p(e){let{components:t,...n}=e;return(0,r.kt)(m,(0,a.Z)({},b,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"inviting-members-to-your-base"},"Inviting members to your base"),(0,r.kt)("p",null,"A member added to a workspace will carry his assigned role specific permissions to all the base with in workspace. To override member permissions to your base, please follow steps outlined below:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Go to the left sidebar and select ",(0,r.kt)("inlineCode",{parentName:"li"},"Base name")," to access the ",(0,r.kt)("inlineCode",{parentName:"li"},"Base Dashboard.")),(0,r.kt)("li",{parentName:"ol"},"Click on the ",(0,r.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,r.kt)("li",{parentName:"ol"},"Use the dropdown menu to specify the access permissions for the member you wish to collaborate."),(0,r.kt)("li",{parentName:"ol"},"Finalize the process by assigning the desired role to the user.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:o(60730).Z,width:"2878",height:"1408"})),(0,r.kt)("p",null,"More details about roles & permissions can be found ",(0,r.kt)("a",{parentName:"p",href:"/roles-and-permissions/roles-permissions-overview"},"here"),"."),(0,r.kt)("h2",{id:"removing-members-from-your-base"},"Removing members from your base"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Go to the left sidebar and select ",(0,r.kt)("inlineCode",{parentName:"li"},"Base name")," to access the ",(0,r.kt)("inlineCode",{parentName:"li"},"Base Dashboard.")),(0,r.kt)("li",{parentName:"ol"},"Click on the ",(0,r.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,r.kt)("li",{parentName:"ol"},"Use the dropdown menu to specify the access permissions for the member you wish to collaborate."),(0,r.kt)("li",{parentName:"ol"},"Assign the ",(0,r.kt)("inlineCode",{parentName:"li"},"No Access")," role to the user.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:o(60730).Z,width:"2878",height:"1408"})))}p.isMDXComponent=!0},60730:(e,t,o)=>{o.d(t,{Z:()=>a});const a=o.p+"assets/images/base-collaboration-93b92d0cc8674c0bb061c23b121776af.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/276e2b0f.038d5041.js b/packages/noco-docs/dist/assets/js/276e2b0f.038d5041.js new file mode 100644 index 0000000000..ba587143fb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/276e2b0f.038d5041.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2439],{41962:o=>{o.exports=JSON.parse('{"label":"Edit","permalink":"/tags/edit","allTagsPath":"/tags","count":1,"items":[{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/278121a5.7e56d748.js b/packages/noco-docs/dist/assets/js/278121a5.7e56d748.js new file mode 100644 index 0000000000..9aa8c31f80 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/278121a5.7e56d748.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2556],{3905:(e,r,o)=>{o.d(r,{Zo:()=>l,kt:()=>f});var t=o(67294);function n(e,r,o){return r in e?Object.defineProperty(e,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[r]=o,e}function d(e,r){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r&&(t=t.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),o.push.apply(o,t)}return o}function a(e){for(var r=1;r=0||(n[o]=e[o]);return n}(e,r);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(e);for(t=0;t=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var i=t.createContext({}),p=function(e){var r=t.useContext(i),o=r;return e&&(o="function"==typeof e?e(r):a(a({},r),e)),o},l=function(e){var r=p(e.components);return t.createElement(i.Provider,{value:r},e.children)},s="mdxType",m={inlineCode:"code",wrapper:function(e){var r=e.children;return t.createElement(t.Fragment,{},r)}},u=t.forwardRef((function(e,r){var o=e.components,n=e.mdxType,d=e.originalType,i=e.parentName,l=c(e,["components","mdxType","originalType","parentName"]),s=p(o),u=n,f=s["".concat(i,".").concat(u)]||s[u]||m[u]||d;return o?t.createElement(f,a(a({ref:r},l),{},{components:o})):t.createElement(f,a({ref:r},l))}));function f(e,r){var o=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var d=o.length,a=new Array(d);a[0]=u;var c={};for(var i in r)hasOwnProperty.call(r,i)&&(c[i]=r[i]);c.originalType=e,c[s]="string"==typeof e?e:n,a[1]=c;for(var p=2;p{o.r(r),o.d(r,{assets:()=>i,contentTitle:()=>a,default:()=>m,frontMatter:()=>d,metadata:()=>c,toc:()=>p});var t=o(87462),n=(o(67294),o(3905));const d={title:"Expanded record",tags:["Records","Expanded record","Activity feed","Comments"],description:"NocoDB provides Expanded Form to let you edit your data easily",keywords:["NocoDB expanded form","expanded form","expanded record","expanded record view"]},a=void 0,c={unversionedId:"records/expand-record",id:"records/expand-record",title:"Expanded record",description:"NocoDB provides Expanded Form to let you edit your data easily",source:"@site/docs/080.records/030.expand-record.md",sourceDirName:"080.records",slug:"/records/expand-record",permalink:"/records/expand-record",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/030.expand-record.md",tags:[{label:"Records",permalink:"/tags/records"},{label:"Expanded record",permalink:"/tags/expanded-record"},{label:"Activity feed",permalink:"/tags/activity-feed"},{label:"Comments",permalink:"/tags/comments"}],version:"current",sidebarPosition:30,frontMatter:{title:"Expanded record",tags:["Records","Expanded record","Activity feed","Comments"],description:"NocoDB provides Expanded Form to let you edit your data easily",keywords:["NocoDB expanded form","expanded form","expanded record","expanded record view"]},sidebar:"tutorialSidebar",previous:{title:"Create record",permalink:"/records/create-record"},next:{title:"Actions on record",permalink:"/records/actions-on-record"}},i={},p=[{value:"Overview",id:"overview",level:2},{value:"Expanding a Record",id:"expanding-a-record",level:2},{value:"Activity Feed",id:"activity-feed",level:2},{value:"Copy Record URL",id:"copy-record-url",level:2},{value:"Comment on Record",id:"comment-on-record",level:2}],l={toc:p},s="wrapper";function m(e){let{components:r,...o}=e;return(0,n.kt)(s,(0,t.Z)({},l,o,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"overview"},"Overview"),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"Expanded record")," allows you to edit a record data using a form layout. Apart from record information, it also consists of the activity feed such as user comments or revision history. "),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/fbefba54-9b88-44ba-a3bf-8853d849e88f",alt:"expanded record"})),(0,n.kt)("h2",{id:"expanding-a-record"},"Expanding a Record"),(0,n.kt)("p",null,"To expand a record in a grid view, click on double arrow icon that appears on the first column (index column) on hover over a record. "),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/7df9ceb3-b9cf-4891-9e88-ab074a07393f",alt:"expand record icon"})),(0,n.kt)("p",null,"Alternatively, we can click on a cell and press the space bar. The expanded form for the corresponding record will be opened."),(0,n.kt)("h2",{id:"activity-feed"},"Activity Feed"),(0,n.kt)("p",null,"In an expanded form comment section, disable ",(0,n.kt)("inlineCode",{parentName:"p"},"Comments only")," checkbox to show the activity feed."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/8f7f0f70-2f27-444c-95e4-f359f34319a9",alt:"expand record activity feed"})),(0,n.kt)("h2",{id:"copy-record-url"},"Copy Record URL"),(0,n.kt)("p",null,"In an expanded form, click ",(0,n.kt)("inlineCode",{parentName:"p"},"Copy Record URL")," to share the record form to other authorized users."),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/5ce70067-444b-4caf-b491-3566a4c091ea",alt:"expand record copy record url"})),(0,n.kt)("h2",{id:"comment-on-record"},"Comment on Record"),(0,n.kt)("p",null,"In an expanded form comment section, feed in the comment in the input box provided and press ",(0,n.kt)("inlineCode",{parentName:"p"},"Enter")," key"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/27b20541.9df80c26.js b/packages/noco-docs/dist/assets/js/27b20541.9df80c26.js new file mode 100644 index 0000000000..981a4b5ea6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/27b20541.9df80c26.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3238],{47090:e=>{e.exports=JSON.parse('{"label":"Gallery View","permalink":"/tags/gallery-view","allTagsPath":"/tags","count":10,"items":[{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","permalink":"/table-operations/filter"},{"id":"views/view-types/gallery","title":"Gallery","description":"Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.","permalink":"/views/view-types/gallery"},{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"},{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","permalink":"/table-operations/search"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"},{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","permalink":"/table-operations/sort"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2888903d.ac5dd4ef.js b/packages/noco-docs/dist/assets/js/2888903d.ac5dd4ef.js new file mode 100644 index 0000000000..6533b3bace --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2888903d.ac5dd4ef.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3259],{3905:(e,r,t)=>{t.d(r,{Zo:()=>p,kt:()=>f});var o=t(67294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var d=o.createContext({}),l=function(e){var r=o.useContext(d),t=r;return e&&(t="function"==typeof e?e(r):i(i({},r),e)),t},p=function(e){var r=l(e.components);return o.createElement(d.Provider,{value:r},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},m=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,a=e.originalType,d=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),s=l(t),m=n,f=s["".concat(d,".").concat(m)]||s[m]||u[m]||a;return t?o.createElement(f,i(i({ref:r},p),{},{components:t})):o.createElement(f,i({ref:r},p))}));function f(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var a=t.length,i=new Array(a);i[0]=m;var c={};for(var d in r)hasOwnProperty.call(r,d)&&(c[d]=r[d]);c.originalType=e,c[s]="string"==typeof e?e:n,i[1]=c;for(var l=2;l{t.r(r),t.d(r,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var o=t(87462),n=(t(67294),t(3905));const a={title:"Create record",description:"Learn how to create a record in NocoDB.",tags:["Records","Create"],keywords:["NocoDB record","create record","record administration","record organization"]},i=void 0,c={unversionedId:"records/create-record",id:"records/create-record",title:"Create record",description:"Learn how to create a record in NocoDB.",source:"@site/docs/080.records/020.create-record.md",sourceDirName:"080.records",slug:"/records/create-record",permalink:"/records/create-record",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/020.create-record.md",tags:[{label:"Records",permalink:"/tags/records"},{label:"Create",permalink:"/tags/create"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create record",description:"Learn how to create a record in NocoDB.",tags:["Records","Create"],keywords:["NocoDB record","create record","record administration","record organization"]},sidebar:"tutorialSidebar",previous:{title:"Records overview",permalink:"/records/records-overview"},next:{title:"Expanded record",permalink:"/records/expand-record"}},d={},l=[{value:"Related topics",id:"related-topics",level:3}],p={toc:l},s="wrapper";function u(e){let{components:r,...a}=e;return(0,n.kt)(s,(0,o.Z)({},p,a,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"A new record can be added by using the ",(0,n.kt)("inlineCode",{parentName:"p"},"New Record")," button in the bottom left corner of the grid view. Default behaviour of this button is to add a new empty record at the end of the grid view. Field values can be populated by clicking on the cell and entering the value."),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"An empty record can also be added by using ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon in the last row of the grid view."),(0,n.kt)("li",{parentName:"ul"},"When on last record, ",(0,n.kt)("inlineCode",{parentName:"li"},"Enter")," key can be used to add a new empty record to the grid view."))),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:t(62841).Z,width:"2876",height:"1414"})),(0,n.kt)("p",null,"New records can also be added by using a form. To add a new record using a form, "),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on the up-arrow in ",(0,n.kt)("inlineCode",{parentName:"li"},"New Record")," button; this expands options for adding a new record. "),(0,n.kt)("li",{parentName:"ol"},"Select ",(0,n.kt)("inlineCode",{parentName:"li"},"New Record - Form")," option. This will reconfigure default behaviour of ",(0,n.kt)("inlineCode",{parentName:"li"},"New Record")," button to add a new record using a form.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:t(73799).Z,width:"2876",height:"1422"})),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"To revert back to default behaviour of ",(0,n.kt)("inlineCode",{parentName:"p"},"New Record")," button, click on the up-arrow in ",(0,n.kt)("inlineCode",{parentName:"p"},"New Record")," button and select ",(0,n.kt)("inlineCode",{parentName:"p"},"New Record - Grid")," option.")),(0,n.kt)("h3",{id:"related-topics"},"Related topics"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/records/expand-record"},"Expanded record view"))))}u.isMDXComponent=!0},73799:(e,r,t)=>{t.d(r,{Z:()=>o});const o=t.p+"assets/images/new-record-form-80ab9af2574b27d6cf824542057f15af.png"},62841:(e,r,t)=>{t.d(r,{Z:()=>o});const o=t.p+"assets/images/new-record-grid-7ae6148311e56de598a0d729847d8abb.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2a1ace55.e7541d41.js b/packages/noco-docs/dist/assets/js/2a1ace55.e7541d41.js new file mode 100644 index 0000000000..318c477dc3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2a1ace55.e7541d41.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4829],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>g});var o=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,o)}return a}function r(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var c=o.createContext({}),s=function(e){var t=o.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):r(r({},t),e)),a},p=function(e){var t=s(e.components);return o.createElement(c.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),d=s(a),m=n,g=d["".concat(c,".").concat(m)]||d[m]||u[m]||l;return a?o.createElement(g,r(r({ref:t},p),{},{components:a})):o.createElement(g,r({ref:t},p))}));function g(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,r=new Array(l);r[0]=m;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[d]="string"==typeof e?e:n,r[1]=i;for(var s=2;s{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>r,default:()=>b,frontMatter:()=>l,metadata:()=>i,toc:()=>s});var o=a(87462),n=(a(67294),a(3905));const l={title:"Installation",description:"Simple installation - takes about three minutes!",tags:["Open Source"],keywords:["NocoDB installation","NocoDB docker installation","NocoDB nodejs installation","NocoDB quick try","NocoDB prerequisites"]},r=void 0,i={unversionedId:"getting-started/self-hosted/installation",id:"getting-started/self-hosted/installation",title:"Installation",description:"Simple installation - takes about three minutes!",source:"@site/docs/020.getting-started/050.self-hosted/010.installation.md",sourceDirName:"020.getting-started/050.self-hosted",slug:"/getting-started/self-hosted/installation",permalink:"/getting-started/self-hosted/installation",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/010.installation.md",tags:[{label:"Open Source",permalink:"/tags/open-source"}],version:"current",sidebarPosition:10,frontMatter:{title:"Installation",description:"Simple installation - takes about three minutes!",tags:["Open Source"],keywords:["NocoDB installation","NocoDB docker installation","NocoDB nodejs installation","NocoDB quick try","NocoDB prerequisites"]},sidebar:"tutorialSidebar",previous:{title:"Keyboard shortcuts",permalink:"/getting-started/keyboard-shortcuts"},next:{title:"Environment variables",permalink:"/getting-started/self-hosted/environment-variables"}},c={},s=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Quick try",id:"quick-try",level:2},{value:"Docker",id:"docker",level:3},{value:"Docker Compose",id:"docker-compose",level:3},{value:"NPX",id:"npx",level:3},{value:"Preview:",id:"preview",level:4},{value:"Homebrew",id:"homebrew",level:3},{value:"Executables",id:"executables",level:3},{value:"Node Application",id:"node-application",level:3},{value:"AWS ECS (Fargate)",id:"aws-ecs-fargate",level:3},{value:"Create ECS Cluster",id:"create-ecs-cluster",level:4},{value:"Create Log group",id:"create-log-group",level:4},{value:"Create ECS Task Definiton",id:"create-ecs-task-definiton",level:4},{value:"Create ECS Service",id:"create-ecs-service",level:4},{value:"GCP (Cloud Run)",id:"gcp-cloud-run",level:3},{value:"Pull NocoDB Image on Cloud Shell",id:"pull-nocodb-image-on-cloud-shell",level:4},{value:"Deploy NocoDB on Cloud Run",id:"deploy-nocodb-on-cloud-run",level:4},{value:"DigitalOcean (App)",id:"digitalocean-app",level:3},{value:"Create Apps",id:"create-apps",level:4},{value:"Choose Source: Docker Hub",id:"choose-source-docker-hub",level:4},{value:"Choose Source: Repository",id:"choose-source-repository",level:4},{value:"Optional Additional Configurations",id:"optional-additional-configurations",level:4},{value:"Name your web service",id:"name-your-web-service",level:4},{value:"Finalize and Launch",id:"finalize-and-launch",level:4},{value:"Cloudron",id:"cloudron",level:3},{value:"Navigate to App Store",id:"navigate-to-app-store",level:4},{value:"Search NocoDB",id:"search-nocodb",level:4},{value:"Click Install",id:"click-install",level:4},{value:"Configure NocoDB",id:"configure-nocodb",level:4},{value:"Go to My App and Launch NocoDB",id:"go-to-my-app-and-launch-nocodb",level:4},{value:"CapRover",id:"caprover",level:3},{value:"Login and Click One-Click Apps / Databases",id:"login-and-click-one-click-apps--databases",level:4},{value:"Search NocoDB",id:"search-nocodb-1",level:4},{value:"Configure NocoDB and Deploy",id:"configure-nocodb-and-deploy",level:4},{value:"Railway",id:"railway",level:3},{value:"Navigate to Templates",id:"navigate-to-templates",level:4},{value:"Configure NocoDB and Deploy",id:"configure-nocodb-and-deploy-1",level:4},{value:"FreeBSD / FreeNAS / TrueNAS Jail",id:"freebsd--freenas--truenas-jail",level:3},{value:"Sample Demos",id:"sample-demos",level:2},{value:"Code Sandbox",id:"code-sandbox",level:3},{value:"Docker deploying with one command",id:"docker-deploying-with-one-command",level:3},{value:"Using NPX",id:"using-npx",level:3}],p=e=>function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,n.kt)("div",t)},d=p("Tabs"),u=p("TabItem"),m={toc:s},g="wrapper";function b(e){let{components:t,...a}=e;return(0,n.kt)(g,(0,o.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Simple installation - takes about three minutes!"),(0,n.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.docker.com/get-started"},"Docker")," or ",(0,n.kt)("a",{parentName:"li",href:"https://nodejs.org/en/download"},"Node.js")," ( > v18.x )\n")),(0,n.kt)("h2",{id:"quick-try"},"Quick try"),(0,n.kt)("h3",{id:"docker"},"Docker"),(0,n.kt)("p",null,"If you are a Docker user, you may try this way!"),(0,n.kt)(d,{mdxType:"Tabs"},(0,n.kt)(u,{value:"sqlite",label:"SQLite",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\nnocodb/nocodb:latest\n'))),(0,n.kt)(u,{value:"mysql",label:"MySQL",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-mysql \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n'))),(0,n.kt)(u,{value:"postgres",label:"Postgres",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-postgres \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="pg://host.docker.internal:5432?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n'))),(0,n.kt)(u,{value:"sqlserver",label:"SQL Server",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-mssql \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="mssql://host.docker.internal:1433?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n')))),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"To persist data in docker you can mount volume at ",(0,n.kt)("inlineCode",{parentName:"p"},"/usr/app/data/")," since 0.10.6. In older version mount at ",(0,n.kt)("inlineCode",{parentName:"p"},"/usr/src/app"),". Otherwise your data will be lost after recreating the container.")),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/issues/1340#issuecomment-1049481043"},"MySQL Docker"),".")),(0,n.kt)("h3",{id:"docker-compose"},"Docker Compose"),(0,n.kt)("p",null,"We provide different docker-compose.yml files under ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/tree/master/docker-compose"},"this directory"),". Here are some examples."),(0,n.kt)(d,{mdxType:"Tabs"},(0,n.kt)(u,{value:"mysql",label:"MySQL",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/mysql\ndocker-compose up -d\n"))),(0,n.kt)(u,{value:"postgres",label:"Postgres",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/pg\ndocker-compose up -d\n"))),(0,n.kt)(u,{value:"sqlserver",label:"SQL Server",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/mssql\ndocker-compose up -d\n")))),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"To persist data in docker you can mount volume at ",(0,n.kt)("inlineCode",{parentName:"p"},"/usr/app/data/")," since 0.10.6. In older version mount at ",(0,n.kt)("inlineCode",{parentName:"p"},"/usr/src/app"),".\nIf you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/issues/1313#issuecomment-1046625974"},"MySQL Docker Compose"),".")),(0,n.kt)("h3",{id:"npx"},"NPX"),(0,n.kt)("p",null,"You can run below command if you need an interactive configuration."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"npx create-nocodb-app\n")),(0,n.kt)("h4",{id:"preview"},"Preview:"),(0,n.kt)("img",{width:"587",alt:"image",src:"https://user-images.githubusercontent.com/35857179/161526235-5ee0d592-0105-4a57-aa53-b1048dca6aad.png"}),(0,n.kt)("h3",{id:"homebrew"},"Homebrew"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nocodb/nocodb\nbrew install nocodb\nnocodb\n")),(0,n.kt)("h3",{id:"executables"},"Executables"),(0,n.kt)("p",null,"You can download executables directly and run without any extra dependency. Use the right command based on your platform."),(0,n.kt)(d,{mdxType:"Tabs"},(0,n.kt)(u,{value:"MacOS (x64)",label:"MacOS (x64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/macos-x64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n"))),(0,n.kt)(u,{value:"MacOS (arm64)",label:"MacOS (arm64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/macos-arm64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n"))),(0,n.kt)(u,{value:"Linux (x64)",label:"Linux (x64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/linux-x64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n"))),(0,n.kt)(u,{value:"Linux (arm64)",label:"Linux (arm64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/linux-arm64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n"))),(0,n.kt)(u,{value:"Windows (x64)",label:"Windows (x64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"iwr http://get.nocodb.com/win-x64.exe\n.\\Noco-win-x64.exe\n"))),(0,n.kt)(u,{value:"Windows (arm64)",label:"Windows (arm64)",mdxType:"TabItem"},(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"iwr http://get.nocodb.com/win-arm64.exe\n.\\Noco-win-arm64.exe\n")))),(0,n.kt)("h3",{id:"node-application"},"Node Application"),(0,n.kt)("p",null,"We provide a simple NodeJS Application for getting started."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb-seed\ncd nocodb-seed\nnpm install\nnpm start\n")),(0,n.kt)("h3",{id:"aws-ecs-fargate"},"AWS ECS (Fargate)"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"create-ecs-cluster"},"Create ECS Cluster"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"aws ecs create-cluster \\\n--cluster-name \n")),(0,n.kt)("h4",{id:"create-log-group"},"Create Log group"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre"},"aws logs create-log-group \\\n--log-group-name /ecs//\n")),(0,n.kt)("h4",{id:"create-ecs-task-definiton"},"Create ECS Task Definiton"),(0,n.kt)("p",null," Every time you create it, it will add a new version. If it is not existing, the version will be 1. "),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'aws ecs register-task-definition \\\n--cli-input-json "file://./.json"\n')),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"This json file defines the container specification. You can define secrets such as NC_DB and environment variables here.")),(0,n.kt)("p",null," Here's the sample Task Definition"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-json"},'{\n "family": "nocodb-sample-task-def",\n "networkMode": "awsvpc",\n "containerDefinitions": [{\n "name": "",\n "image": "nocodb/nocodb:latest",\n "essential": true,\n "logConfiguration": {\n "logDriver": "awslogs",\n "options": {\n "awslogs-group": "/ecs//",\n "awslogs-region": "",\n "awslogs-stream-prefix": "ecs"\n }\n },\n "secrets": [{\n "name": "",\n "valueFrom": ""\n }],\n "environment": [{\n "name": "",\n "value": ""\n }],\n "portMappings": [{\n "containerPort": 8080,\n "hostPort": 8080,\n "protocol": "tcp"\n }]\n }],\n "requiresCompatibilities": [\n "FARGATE"\n ],\n "cpu": "256",\n "memory": "512",\n "executionRoleArn": "",\n "taskRoleArn": ""\n}\n')),(0,n.kt)("h4",{id:"create-ecs-service"},"Create ECS Service"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},'aws ecs create-service \\\n--cluster \\\n--service-name \\\n--task-definition : \\\n--desired-count \\\n--launch-type "FARGATE" \\\n--platform-version \\\n--health-check-grace-period-seconds \\\n--network-configuration "awsvpcConfiguration={subnets=[""], securityGroups=[""], assignPublicIp=ENABLED}" \\\n--load-balancer targetGroupArn=,containerName=,containerPort=\n')),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"If your service fails to start, you may check the logs in ECS console or in Cloudwatch. Generally it fails due to the connection between ECS container and NC_DB. Make sure the security groups have the correct inbound and outbound rules. "))),(0,n.kt)("h3",{id:"gcp-cloud-run"},"GCP (Cloud Run)"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"pull-nocodb-image-on-cloud-shell"},"Pull NocoDB Image on Cloud Shell"),(0,n.kt)("p",null," Since Cloud Run only supports images from Google Container Registry (GCR) or Artifact Registry, we need to pull NocoDB image, tag it and push it in GCP using Cloud Shell. Here are some sample commands which you can execute in Cloud Shell."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"# pull latest NocoDB image\ndocker pull nocodb/nocodb:latest\n\n# tag the image\ndocker tag nocodb/nocodb:latest gcr.io//nocodb/nocodb:latest\n\n# push the image to GCR\ndocker push gcr.io//nocodb/nocodb:latest\n")),(0,n.kt)("h4",{id:"deploy-nocodb-on-cloud-run"},"Deploy NocoDB on Cloud Run"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-bash"},"gcloud run deploy --image=gcr.io//nocodb/nocodb:latest \\\n --region=us-central1 \\\n --allow-unauthenticated \\\n --platform=managed \n"))),(0,n.kt)("h3",{id:"digitalocean-app"},"DigitalOcean (App)"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"create-apps"},"Create Apps"),(0,n.kt)("p",null," On Home page, Click on Create icon & Select Apps (Deploy your code)."),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790558-f8fe5580-5a58-412c-9c2e-145587712bf2.png",alt:"Screenshot 2022-02-19 at 12 17 43 PM"})),(0,n.kt)("h4",{id:"choose-source-docker-hub"},"Choose Source: Docker Hub"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790563-b5b6d5b4-0bdc-4718-8cea-0a7ee52f283b.png",alt:"Screenshot 2022-02-19 at 12 22 01 PM"})),(0,n.kt)("h4",{id:"choose-source-repository"},"Choose Source: Repository"),(0,n.kt)("p",null," Configure Source Repository as ",(0,n.kt)("inlineCode",{parentName:"p"},"nocodb/nocodb"),". Optionally you can pick release tag if you are interested in specific NocoDB version."),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790564-1dcb5e33-3a57-471a-a44c-835a410a0cb7.png",alt:"Screenshot 2022-02-19 at 12 23 11 PM"})),(0,n.kt)("h4",{id:"optional-additional-configurations"},"[Optional]"," Additional Configurations"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790565-c0234b2e-ad50-4042-90b6-4f8798f1d585.png",alt:"Screenshot 2022-02-19 at 12 24 44 PM"})),(0,n.kt)("h4",{id:"name-your-web-service"},"Name your web service"),(0,n.kt)("p",null," Pick a name for your NocoDB application. This name will become part of URL subsequently\nPick nearest Region for cloud hosting\n",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790567-a6e65e4e-9aa0-4edb-998e-da8803ad6e23.png",alt:"Screenshot 2022-02-19 at 12 28 11 PM"})),(0,n.kt)("h4",{id:"finalize-and-launch"},"Finalize and Launch"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"Select hosting plan for your NocoDB application")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},'Click "Launch APP"'),(0,n.kt)("p",{parentName:"li"},(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790570-62044713-5cca-4d06-82ec-f3cc257218a1.png",alt:"Screenshot 2022-02-19 at 12 29 23 PM"})),(0,n.kt)("p",{parentName:"li"},"Application will be build & URL will be live in a minute! The URL will be something like ",(0,n.kt)("a",{parentName:"p",href:"https://simply-nocodb-rsyir.ondigitalocean.app/"},"https://simply-nocodb-rsyir.ondigitalocean.app/"))))),(0,n.kt)("h3",{id:"cloudron"},"Cloudron"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"navigate-to-app-store"},"Navigate to App Store"),(0,n.kt)("p",null," Log into Cloudron and select App Store"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700146-aae90503-a8fd-4bc5-8397-39f0bc279606.png",alt:"image"})),(0,n.kt)("h4",{id:"search-nocodb"},"Search NocoDB"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700181-b5303919-70b8-4cf8-bebe-7e75aca601f3.png",alt:"image"})),(0,n.kt)("h4",{id:"click-install"},"Click Install"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700192-d702f5c2-2afa-45c5-9823-4ebe9e141b01.png",alt:"image"})),(0,n.kt)("h4",{id:"configure-nocodb"},"Configure NocoDB"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700230-c35e934f-bd93-4948-8f31-935483b30571.png",alt:"image"})),(0,n.kt)("h4",{id:"go-to-my-app-and-launch-nocodb"},"Go to My App and Launch NocoDB"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700464-50098cb1-bf94-42bb-a63a-cc0aad671913.png",alt:"image"}))),(0,n.kt)("h3",{id:"caprover"},"CapRover"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"login-and-click-one-click-apps--databases"},"Login and Click One-Click Apps / Databases"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701420-7fe5c396-a488-456c-98de-6f2ee1151fc5.png",alt:"image"})),(0,n.kt)("h4",{id:"search-nocodb-1"},"Search NocoDB"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701537-63e7efc5-013b-4ca9-8659-56e9d536e7d0.png",alt:"image"})),(0,n.kt)("h4",{id:"configure-nocodb-and-deploy"},"Configure NocoDB and Deploy"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701576-19519df5-2aa4-435d-8fc6-7bc684b9cfe1.png",alt:"image"}))),(0,n.kt)("h3",{id:"railway"},"Railway"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Click to Expand"),(0,n.kt)("h4",{id:"navigate-to-templates"},"Navigate to Templates"),(0,n.kt)("p",null," Go to ",(0,n.kt)("a",{parentName:"p",href:"https://railway.app/templates"},"Templates"),", Search NocoDB and click Deploy"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194702833-1bea22ee-6dfa-4024-ac27-e33fe56e5500.png",alt:"image"})),(0,n.kt)("h4",{id:"configure-nocodb-and-deploy-1"},"Configure NocoDB and Deploy"),(0,n.kt)("p",null," ",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194702960-149393fe-b00f-4d84-9e54-22cb7616ba44.png",alt:"image"}))),(0,n.kt)("h3",{id:"freebsd--freenas--truenas-jail"},"FreeBSD / FreeNAS / TrueNAS Jail"),(0,n.kt)("p",null,"See ",(0,n.kt)("a",{parentName:"p",href:"https://gist.github.com/Zamana/e9281d736f9e9ce5882c6f4b140a590e"},"here")," provided by ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/Zamana"},"C. R. Zamana"),"."),(0,n.kt)("h2",{id:"sample-demos"},"Sample Demos"),(0,n.kt)("h3",{id:"code-sandbox"},"Code Sandbox"),(0,n.kt)("iframe",{width:"100%",height:"500",src:"https://codesandbox.io/embed/vigorous-firefly-80kq5?hidenavigation=1&theme=dark",title:"Code Sandbox",frameBorder:"0",allow:"clipboard-write"}),(0,n.kt)("h3",{id:"docker-deploying-with-one-command"},"Docker deploying with one command"),(0,n.kt)("iframe",{width:"100%",height:"500",src:"https://www.youtube.com/embed/K-UEecQyiOk",title:"YouTube video player",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0}),(0,n.kt)("h3",{id:"using-npx"},"Using NPX"),(0,n.kt)("iframe",{width:"100%",height:"500",src:"https://www.youtube.com/embed/v6Nn75P1p7I",title:"YouTube video player",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0}))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2a42d1d2.2b1dab84.js b/packages/noco-docs/dist/assets/js/2a42d1d2.2b1dab84.js new file mode 100644 index 0000000000..3dc567c7ca --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2a42d1d2.2b1dab84.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2636],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>b});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var s=r.createContext({}),p=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},m=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,o=e.originalType,s=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),u=p(a),d=n,b=u["".concat(s,".").concat(d)]||u[d]||c[d]||o;return a?r.createElement(b,i(i({ref:t},m),{},{components:a})):r.createElement(b,i({ref:t},m))}));function b(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=a.length,i=new Array(o);i[0]=d;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:n,i[1]=l;for(var p=2;p{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>c,frontMatter:()=>o,metadata:()=>l,toc:()=>p});var r=a(87462),n=(a(67294),a(3905));const o={title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes"},i=void 0,l={unversionedId:"setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free",id:"version-0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free",title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free",permalink:"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md",tags:[],version:"0.109.7",sidebarPosition:200,frontMatter:{title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes"},sidebar:"tutorialSidebar",previous:{title:"Expanded Form",permalink:"/0.109.7/setup-and-usages/expanded-form"},next:{title:"Usage Information",permalink:"/0.109.7/setup-and-usages/usage-information"}},s={},p=[{value:"Get Airtable Credentials",id:"get-airtable-credentials",level:2},{value:"Retrieve API Key",id:"retrieve-api-key",level:3},{value:"Retrieve Share Base ID / URL",id:"retrieve-share-base-id--url",level:3},{value:"Import Airtable to NocoDB",id:"import-airtable-to-nocodb",level:2}],m={toc:p},u="wrapper";function c(e){let{components:t,...a}=e;return(0,n.kt)(u,(0,r.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"NocoDB allows a complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes."),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"Import from Airtable is in beta version. See ",(0,n.kt)("a",{href:"https://github.com/nocodb/nocodb/discussions/2122",target:"_blank"},"Importing Airtable To NocoDB")," for the migration notes.")),(0,n.kt)("h2",{id:"get-airtable-credentials"},"Get Airtable Credentials"),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"You need to retrieve API key and Shared Base ID / URL from Airtable.")),(0,n.kt)("h3",{id:"retrieve-api-key"},"Retrieve API Key"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"Copy your Airtable API Key from ",(0,n.kt)("a",{parentName:"p",href:"https://airtable.com/account"},"Airtable Accounts")," page"),(0,n.kt)("p",{parentName:"li"},(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/168569905-48c16d6d-c44a-4337-be49-0ac3dc1f7b75.png",alt:"Screenshot 2022-05-16 at 1 50 07 PM"})))),(0,n.kt)("h3",{id:"retrieve-share-base-id--url"},"Retrieve Share Base ID / URL"),(0,n.kt)("p",null,"See ",(0,n.kt)("a",{parentName:"p",href:"https://support.airtable.com/hc/en-us/articles/205752117-Creating-a-base-share-link-or-a-view-share-link#basesharelink"},"here")," for detailed procedures."),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},"Open ",(0,n.kt)("inlineCode",{parentName:"p"},"Share")," menu in your Project / Base\n",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/168572054-533b8c19-d76e-4add-b876-f1e0570ac33c.png",alt:"Screenshot 2022-05-16 at 3 47 27 PM"}))),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},"Open tab ",(0,n.kt)("inlineCode",{parentName:"p"},"Share Publicly"))),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},"Enable ",(0,n.kt)("inlineCode",{parentName:"p"},"Turn on full base access"))),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},"Copy generated shared base URL\n",(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/168572062-5dee065d-2394-426d-8f43-77ecc0c9b73f.png",alt:"Screenshot 2022-05-16 at 3 41 54 PM"})))),(0,n.kt)("h2",{id:"import-airtable-to-nocodb"},"Import Airtable to NocoDB"),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"Prerequisites: ",(0,n.kt)("br",null)," - A NocoDB Project ",(0,n.kt)("br",null)," - Airtable Credentials")),(0,n.kt)("p",null,"Below are 3 simple steps"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Go to your Project, Open ",(0,n.kt)("inlineCode",{parentName:"li"},"Add / Import")," menu and click ",(0,n.kt)("inlineCode",{parentName:"li"},"Airtable"),".")),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190057053-983126b3-287a-4bc4-a1d8-fa89da8f40f8.png",alt:"Screenshot 2022-09-14 at 9 27 51 AM"})),(0,n.kt)("ol",{start:2},(0,n.kt)("li",{parentName:"ol"},"Input API key & Shared Base ID / URL (retrieved from ",(0,n.kt)("inlineCode",{parentName:"li"},"Get Airtable Credentials")," above).")),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"<1> API Key"),(0,n.kt)("li",{parentName:"ul"},"<2> Share Base ID"),(0,n.kt)("li",{parentName:"ul"},"<3> Configuration option",(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"Import Data: disable this option to import only table & view schema's"),(0,n.kt)("li",{parentName:"ul"},"Import Secondary Views: disable this option to import only primary grid view per table"),(0,n.kt)("li",{parentName:"ul"},"Import Rollup Columns: disable this option to skip Rollup column import"),(0,n.kt)("li",{parentName:"ul"},"Import Lookup Columns: disable this option to skip Lookup column import"),(0,n.kt)("li",{parentName:"ul"},"Import Attachments Columns: disable this option to skip Attachment column import"),(0,n.kt)("li",{parentName:"ul"},"\\"," Import Formula Columns: disable this option to skip Formula (computation) column import")))),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190057133-92807b16-4f2b-4c58-8bae-a2cfe677ee62.png",alt:"Screenshot 2022-09-14 at 9 30 14 AM"})),(0,n.kt)("ol",{start:3},(0,n.kt)("li",{parentName:"ol"},"Click ",(0,n.kt)("inlineCode",{parentName:"li"},"Import")," and you will see the status"),(0,n.kt)("li",{parentName:"ol"},"Wait until ",(0,n.kt)("inlineCode",{parentName:"li"},"Go To Dashboard")," button is activated on the modal. Import details are captured in log window.")),(0,n.kt)("p",null,(0,n.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190057152-be9ec6cb-e414-465c-8967-d1ad40478ce1.png",alt:"Screenshot 2022-09-14 at 9 33 42 AM"})))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2b263996.f4427b71.js b/packages/noco-docs/dist/assets/js/2b263996.f4427b71.js new file mode 100644 index 0000000000..e2513d6ad4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2b263996.f4427b71.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[403],{3905:(e,o,t)=>{t.d(o,{Zo:()=>u,kt:()=>m});var r=t(67294);function n(e,o,t){return o in e?Object.defineProperty(e,o,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[o]=t,e}function a(e,o){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);o&&(r=r.filter((function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var o=1;o=0||(n[t]=e[t]);return n}(e,o);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var s=r.createContext({}),c=function(e){var o=r.useContext(s),t=o;return e&&(t="function"==typeof e?e(o):i(i({},o),e)),t},u=function(e){var o=c(e.components);return r.createElement(s.Provider,{value:o},e.children)},p="mdxType",b={inlineCode:"code",wrapper:function(e){var o=e.children;return r.createElement(r.Fragment,{},o)}},f=r.forwardRef((function(e,o){var t=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(t),f=n,m=p["".concat(s,".").concat(f)]||p[f]||b[f]||a;return t?r.createElement(m,i(i({ref:o},u),{},{components:t})):r.createElement(m,i({ref:o},u))}));function m(e,o){var t=arguments,n=o&&o.mdxType;if("string"==typeof e||n){var a=t.length,i=new Array(a);i[0]=f;var l={};for(var s in o)hasOwnProperty.call(o,s)&&(l[s]=o[s]);l.originalType=e,l[p]="string"==typeof e?e:n,i[1]=l;for(var c=2;c{t.r(o),t.d(o,{assets:()=>s,contentTitle:()=>i,default:()=>b,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var r=t(87462),n=(t(67294),t(3905));const a={title:"Webhook overview",tags:["Webhook","Overview"]},i=void 0,l={unversionedId:"automation/webhook/webhook-overview",id:"automation/webhook/webhook-overview",title:"Webhook overview",description:"You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.",source:"@site/docs/130.automation/020.webhook/010.webhook-overview.md",sourceDirName:"130.automation/020.webhook",slug:"/automation/webhook/webhook-overview",permalink:"/automation/webhook/webhook-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/130.automation/020.webhook/010.webhook-overview.md",tags:[{label:"Webhook",permalink:"/tags/webhook"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Webhook overview",tags:["Webhook","Overview"]},sidebar:"tutorialSidebar",previous:{title:"In Open Source",permalink:"/collaboration/oss-specific-details"},next:{title:"Create webhook",permalink:"/automation/webhook/create-webhook"}},s={},c=[],u={toc:c},p="wrapper";function b(e){let{components:o,...t}=e;return(0,n.kt)(p,(0,r.Z)({},u,t,{components:o,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously."),(0,n.kt)("p",null,"Note that, Webhooks currently are specific for associated table."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"create-webhook"},"Create Webhook")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"actions-on-webhook"},"Modify Webhook")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"actions-on-webhook#delete-webhook"},"Delete Webhook"))))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2bb712de.80a245e6.js b/packages/noco-docs/dist/assets/js/2bb712de.80a245e6.js new file mode 100644 index 0000000000..4e69b320f8 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2bb712de.80a245e6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1771],{3905:(e,t,i)=>{i.d(t,{Zo:()=>c,kt:()=>v});var a=i(67294);function r(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,a)}return i}function n(e){for(var t=1;t=0||(r[i]=e[i]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(r[i]=e[i])}return r}var l=a.createContext({}),d=function(e){var t=a.useContext(l),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},c=function(e){var t=d(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",w={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},h=a.forwardRef((function(e,t){var i=e.components,r=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(i),h=r,v=p["".concat(l,".").concat(h)]||p[h]||w[h]||o;return i?a.createElement(v,n(n({ref:t},c),{},{components:i})):a.createElement(v,n({ref:t},c))}));function v(e,t){var i=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=i.length,n=new Array(o);n[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,n[1]=s;for(var d=2;d{i.r(t),i.d(t,{assets:()=>l,contentTitle:()=>n,default:()=>w,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var a=i(87462),r=(i(67294),i(3905));const o={title:"Share view",description:"Procedures to share a view",tags:["Views","Share","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","share view","share","share view with password protection","share view with download options"]},n=void 0,s={unversionedId:"views/share-view",id:"views/share-view",title:"Share view",description:"Procedures to share a view",source:"@site/docs/090.views/025.share-view.md",sourceDirName:"090.views",slug:"/views/share-view",permalink:"/views/share-view",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/025.share-view.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Share",permalink:"/tags/share"},{label:"Grid View",permalink:"/tags/grid-view"},{label:"Form View",permalink:"/tags/form-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Gallery View",permalink:"/tags/gallery-view"}],version:"current",sidebarPosition:25,frontMatter:{title:"Share view",description:"Procedures to share a view",tags:["Views","Share","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","share view","share","share view with password protection","share view with download options"]},sidebar:"tutorialSidebar",previous:{title:"Create view",permalink:"/views/create-view"},next:{title:"Grid",permalink:"/views/view-types/grid"}},l={},d=[{value:"Generate Share View",id:"generate-share-view",level:2},{value:"Share view options",id:"share-view-options",level:3},{value:"Password protection",id:"password-protection",level:4},{value:"Download options",id:"download-options",level:4},{value:"Share Form View Options",id:"share-form-view-options",level:3},{value:"Access Share View",id:"access-share-view",level:2}],c={toc:d},p="wrapper";function w(e){let{components:t,...o}=e;return(0,r.kt)(p,(0,a.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"Sharing a specific view of a table becomes highly valuable when you need to collaborate with individuals outside your organization who need access to specific sections of your database. This shared view provides a read-only perspective, accessible to anyone, regardless of their workspace affiliation. You have control over which data fields and records are visible to these external viewers, ensuring that any sensitive data remains hidden. Furthermore, if you decide to make changes to the visible fields or records within the view, the shared link will promptly reflect these adjustments, updating in real-time."),(0,r.kt)("h2",{id:"generate-share-view"},"Generate Share View"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Share")," button on the top right of the toolbar"),(0,r.kt)("li",{parentName:"ol"},"Toggle ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public viewing")," to create shared view link"),(0,r.kt)("li",{parentName:"ol"},"Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Copy")," button to copy the link to clipboard")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"share button",src:i(25918).Z,width:"2894",height:"864"})),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"shared view",src:i(67548).Z,width:"2876",height:"1800"})),(0,r.kt)("h3",{id:"share-view-options"},"Share view options"),(0,r.kt)("h4",{id:"password-protection"},"Password protection"),(0,r.kt)("p",null,"You can enable ",(0,r.kt)("inlineCode",{parentName:"p"},"Restrict access with a password")," if you want a password-protected view"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"password protection",src:i(430).Z,width:"2876",height:"1800"})),(0,r.kt)("h4",{id:"download-options"},"Download options"),(0,r.kt)("p",null,"You can toggle ",(0,r.kt)("inlineCode",{parentName:"p"},"Allow Download")," button to enable or disable download CSV/XLSX options in the shared view link"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"download options",src:i(12649).Z,width:"2876",height:"1800"})),(0,r.kt)("h3",{id:"share-form-view-options"},"Share Form View Options"),(0,r.kt)("p",null,"Form view has additional customizations for shared view. You can enable/disable the following options for shared form view:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Survey mode"),": This option when enabled, will display the form in survey mode."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"RTL Orientation"),": This option when enabled, will display the form in RTL orientation."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Themes"),": You can select a theme for the form from the dropdown.\n",(0,r.kt)("img",{alt:"form view options",src:i(63074).Z,width:"2876",height:"1800"}))),(0,r.kt)("h2",{id:"access-share-view"},"Access Share View"),(0,r.kt)("p",null,"To access the shared view, please follow the steps below:\nClick on the ",(0,r.kt)("inlineCode",{parentName:"p"},"Shared View URL"),". If the URL is password-protected, you will be prompted to enter the password to unlock it. Please input the required password to proceed."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"password modal",src:i(66239).Z,width:"1328",height:"846"})),(0,r.kt)("p",null,"Once the password is successfully entered and authenticated, you will gain access to the shared view.\nIn the event that the URL is not password-protected, you will be directed to the shared view directly, without the need for a password."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"share-view",src:i(83792).Z,width:"2880",height:"1800"})),(0,r.kt)("p",null,"Users with the shared view link can only view the data and cannot make any changes to the view or its content. Records and fields in the shared view will be updated in real-time as changes are made to the original view. Users accessing shared view can apply filters and sort records as per their requirements."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Note that, filters & sorts applied to shared view will not be persisted. These filters & sorts will be reset when the shared view is accessed again.")))}w.isMDXComponent=!0},25918:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-button-9751630544eab59c43f368bcbe4aaaae.png"},63074:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-form-d98371a23098e020e611302bcb5ebe40.png"},430:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-modal-2-4bb63f03e7cb528595d3f2f6335fca02.png"},12649:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-modal-3-1202422c5c9bf2b234a5b5ed7a05e805.png"},67548:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-modal-2c40f95aa822fa2830e1f205431a4b4e.png"},66239:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-password-8b55b2f905ed895f6ceddccad842c205.png"},83792:(e,t,i)=>{i.d(t,{Z:()=>a});const a=i.p+"assets/images/share-view-22f8daabd281e5b6199d1e03ab814378.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2c8a1eac.ac4ffa9d.js b/packages/noco-docs/dist/assets/js/2c8a1eac.ac4ffa9d.js new file mode 100644 index 0000000000..7b03a76100 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2c8a1eac.ac4ffa9d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5631],{71411:e=>{e.exports=JSON.parse('{"label":"Kanban View","permalink":"/tags/kanban-view","allTagsPath":"/tags","count":10,"items":[{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","permalink":"/table-operations/filter"},{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"},{"id":"views/view-types/kanban","title":"Kanban","description":"Learn how to use Kanban view in NocoDB.","permalink":"/views/view-types/kanban"},{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","permalink":"/table-operations/search"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"},{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","permalink":"/table-operations/sort"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2cbe0325.b7631b4b.js b/packages/noco-docs/dist/assets/js/2cbe0325.b7631b4b.js new file mode 100644 index 0000000000..1a9d445457 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2cbe0325.b7631b4b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1245],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>c});var i=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,i)}return a}function l(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var d=i.createContext({}),s=function(e){var t=i.useContext(d),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},m=function(e){var t=s(e.components);return i.createElement(d.Provider,{value:t},e.children)},p="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var a=e.components,r=e.mdxType,n=e.originalType,d=e.parentName,m=o(e,["components","mdxType","originalType","parentName"]),p=s(a),u=r,c=p["".concat(d,".").concat(u)]||p[u]||f[u]||n;return a?i.createElement(c,l(l({ref:t},m),{},{components:a})):i.createElement(c,l({ref:t},m))}));function c(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var n=a.length,l=new Array(n);l[0]=u;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[p]="string"==typeof e?e:r,l[1]=o;for(var s=2;s{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>f,frontMatter:()=>n,metadata:()=>o,toc:()=>s});var i=a(87462),r=(a(67294),a(3905));const n={title:"Time",tags:["Fields","Field types","Date & Time"]},l=void 0,o={unversionedId:"fields/field-types/date-time-based/time",id:"fields/field-types/date-time-based/time",title:"Time",description:"Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.",source:"@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md",sourceDirName:"070.fields/040.field-types/070.date-time-based",slug:"/fields/field-types/date-time-based/time",permalink:"/fields/field-types/date-time-based/time",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/030.time.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Date & Time",permalink:"/tags/date-time"}],version:"current",sidebarPosition:30,frontMatter:{title:"Time",tags:["Fields","Field types","Date & Time"]},sidebar:"tutorialSidebar",previous:{title:"Date",permalink:"/fields/field-types/date-time-based/date"},next:{title:"Duration",permalink:"/fields/field-types/date-time-based/duration"}},d={},s=[{value:"Create a time field",id:"create-a-time-field",level:2},{value:"Supported time formats",id:"supported-time-formats",level:3},{value:"Related fields",id:"related-fields",level:2}],m={toc:s},p="wrapper";function f(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,i.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Time")," field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below."),(0,r.kt)("h2",{id:"create-a-time-field"},"Create a time field"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,r.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,r.kt)("li",{parentName:"ol"},"Select the field type as ",(0,r.kt)("inlineCode",{parentName:"li"},"Time")," from the dropdown."),(0,r.kt)("li",{parentName:"ol"},"Configure ",(0,r.kt)("inlineCode",{parentName:"li"},"Time Format")),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure default value"),(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:a(3527).Z,width:"1268",height:"540"})),(0,r.kt)("h3",{id:"supported-time-formats"},"Supported time formats"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Format"),(0,r.kt)("th",{parentName:"tr",align:null},"Example"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"HH:mm:ss"),(0,r.kt)("td",{parentName:"tr",align:null},"12:45:30")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"HH:mm"),(0,r.kt)("td",{parentName:"tr",align:null},"14:20")))),(0,r.kt)("h2",{id:"related-fields"},"Related fields"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date-time"},"DateTime")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date"},"Date")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/duration"},"Duration"))))}f.isMDXComponent=!0},3527:(e,t,a)=>{a.d(t,{Z:()=>i});const i=a.p+"assets/images/time-63fbf1d0a3413d3debf27d5004999815.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2d5bd7a1.324d6e70.js b/packages/noco-docs/dist/assets/js/2d5bd7a1.324d6e70.js new file mode 100644 index 0000000000..24415a3e4a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2d5bd7a1.324d6e70.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7666],{18972:e=>{e.exports=JSON.parse('{"label":"Duplicate","permalink":"/tags/duplicate","allTagsPath":"/tags","count":6,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"},{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"},{"id":"tables/actions-on-table","title":"Actions on table","description":"Learn how to rename, duplicate, and delete a table in NocoDB.","permalink":"/tables/actions-on-table"},{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","permalink":"/automation/webhook/actions-on-webhook"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2d8eea4e.8c1789a5.js b/packages/noco-docs/dist/assets/js/2d8eea4e.8c1789a5.js new file mode 100644 index 0000000000..5f06449b0b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2d8eea4e.8c1789a5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5837],{65804:o=>{o.exports=JSON.parse('{"label":"Invite","permalink":"/tags/invite","allTagsPath":"/tags","count":4,"items":[{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/collaboration/base-collaboration"},{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/collaboration/workspace-collaboration"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2eb4ec02.0226ebc7.js b/packages/noco-docs/dist/assets/js/2eb4ec02.0226ebc7.js new file mode 100644 index 0000000000..ba64fbc370 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2eb4ec02.0226ebc7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1876],{3905:(e,t,a)=>{a.d(t,{Zo:()=>b,kt:()=>d});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function o(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var l=r.createContext({}),c=function(e){var t=r.useContext(l),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},b=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,s=e.originalType,l=e.parentName,b=i(e,["components","mdxType","originalType","parentName"]),p=c(a),u=n,d=p["".concat(l,".").concat(u)]||p[u]||m[u]||s;return a?r.createElement(d,o(o({ref:t},b),{},{components:a})):r.createElement(d,o({ref:t},b))}));function d(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var s=a.length,o=new Array(s);o[0]=u;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[p]="string"==typeof e?e:n,o[1]=i;for(var c=2;c{a.r(t),a.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>m,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var r=a(87462),n=(a(67294),a(3905));const s={title:"Create base",description:"Learn how to create a base in NocoDB.",tags:["Bases","Create"],keywords:["NocoDB base","create base","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},o=void 0,i={unversionedId:"bases/create-base",id:"bases/create-base",title:"Create base",description:"Learn how to create a base in NocoDB.",source:"@site/docs/040.bases/020.create-base.md",sourceDirName:"040.bases",slug:"/bases/create-base",permalink:"/bases/create-base",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/020.create-base.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Create",permalink:"/tags/create"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create base",description:"Learn how to create a base in NocoDB.",tags:["Bases","Create"],keywords:["NocoDB base","create base","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},sidebar:"tutorialSidebar",previous:{title:"Base overview",permalink:"/bases/base-overview"},next:{title:"Import Airtable to NocoDB",permalink:"/bases/import-base-from-airtable"}},l={},c=[{value:"Create base from scratch",id:"create-base-from-scratch",level:2},{value:"Related articles",id:"related-articles",level:2}],b={toc:c},p="wrapper";function m(e){let{components:t,...s}=e;return(0,n.kt)(p,(0,r.Z)({},b,s,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"create-base-from-scratch"},"Create base from scratch"),(0,n.kt)("p",null,"To initiate the creation of a new database from the ground up, follow these steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Navigate to the left sidebar and either select the ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon adjacent to ",(0,n.kt)("inlineCode",{parentName:"li"},"Projects")," or click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"+ New Project")," button."),(0,n.kt)("li",{parentName:"ol"},"Input the desired name for the database within the presented pop-up modal."),(0,n.kt)("li",{parentName:"ol"},"Conclude the process by clicking on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Create Database")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(61949).Z,width:"2880",height:"986"}),"\n",(0,n.kt)("img",{alt:"image",src:a(49954).Z,width:"2876",height:"1272"})),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"Upon the creation of the base, you will assume the role of the ",(0,n.kt)("inlineCode",{parentName:"li"},"base owner.")),(0,n.kt)("li",{parentName:"ul"},"Only the ",(0,n.kt)("inlineCode",{parentName:"li"},"base owner")," possesses the authority to delete a base."),(0,n.kt)("li",{parentName:"ul"},"It is possible to create multiple bases within a single workspace."))),(0,n.kt)("p",null,"On the successful creation of a base, you will be directed to the Base Dashboard, which serves as the primary landing page for the base. This central hub provides users with swift access to essential features such as base settings and collaboration tools. To access the Base Dashboard, simply click on the base name located in the left sidebar."),(0,n.kt)("p",null,"Find more details on adding tables to a base in the ",(0,n.kt)("a",{parentName:"p",href:"/tables/create-table"},"Tables")," section."),(0,n.kt)("h2",{id:"related-articles"},"Related articles"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}m.isMDXComponent=!0},61949:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-create-1-5c38376e4bef5ed7673326e42e870d29.png"},49954:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-create-2-f1008bb9d469f827666fb2809ceeda83.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/2fa98934.581c1f3f.js b/packages/noco-docs/dist/assets/js/2fa98934.581c1f3f.js new file mode 100644 index 0000000000..62a54d3993 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/2fa98934.581c1f3f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5084],{849:o=>{o.exports=JSON.parse('{"label":"Workspace","permalink":"/tags/workspace","allTagsPath":"/tags","count":1,"items":[{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/300d0b41.5cef7702.js b/packages/noco-docs/dist/assets/js/300d0b41.5cef7702.js new file mode 100644 index 0000000000..f532e1dc17 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/300d0b41.5cef7702.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2534],{48717:o=>{o.exports=JSON.parse('{"label":"Enable","permalink":"/tags/enable","allTagsPath":"/tags","count":1,"items":[{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","permalink":"/automation/webhook/actions-on-webhook"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/310a23cf.354702fe.js b/packages/noco-docs/dist/assets/js/310a23cf.354702fe.js new file mode 100644 index 0000000000..035ba831df --- /dev/null +++ b/packages/noco-docs/dist/assets/js/310a23cf.354702fe.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1878],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>c});var l=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,l)}return a}function n(e){for(var t=1;t=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(l=0;l=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=l.createContext({}),p=function(e){var t=l.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):n(n({},t),e)),a},d=function(e){var t=p(e.components);return l.createElement(o.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},f=l.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,o=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=p(a),f=r,c=u["".concat(o,".").concat(f)]||u[f]||m[f]||i;return a?l.createElement(c,n(n({ref:t},d),{},{components:a})):l.createElement(c,n({ref:t},d))}));function c(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,n=new Array(i);n[0]=f;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[u]="string"==typeof e?e:r,n[1]=s;for(var p=2;p{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>n,default:()=>m,frontMatter:()=>i,metadata:()=>s,toc:()=>p});var l=a(87462),r=(a(67294),a(3905));const i={title:"Fields overview",tags:["Fields","Overview"],keywords:["NocoDB fields","fields overview","field administration","field organization"]},n=void 0,s={unversionedId:"fields/fields-overview",id:"fields/fields-overview",title:"Fields overview",description:"- Primary Key",source:"@site/docs/070.fields/010.fields-overview.md",sourceDirName:"070.fields",slug:"/fields/fields-overview",permalink:"/fields/fields-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/010.fields-overview.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Fields overview",tags:["Fields","Overview"],keywords:["NocoDB fields","fields overview","field administration","field organization"]},sidebar:"tutorialSidebar",previous:{title:"Table details overview",permalink:"/table-details/table-details-overview"},next:{title:"Primary key",permalink:"/fields/primary-key"}},o={},p=[{value:"Text based",id:"text-based",level:3},{value:"Numerical",id:"numerical",level:3},{value:"Date and time",id:"date-and-time",level:3},{value:"Select based",id:"select-based",level:3},{value:"Link based",id:"link-based",level:3},{value:"Custom types",id:"custom-types",level:3},{value:"Formula",id:"formula",level:3}],d={toc:p},u="wrapper";function m(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,l.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"primary-key"},"Primary Key")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"display-value"},"Display Value"))),(0,r.kt)("h3",{id:"text-based"},"Text based"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/text-based/single-line-text"},"Single line text")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/text-based/long-text"},"Long text")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/text-based/email"},"Email")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/text-based/phonenumber"},"Phone")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/text-based/url"},"URL"))),(0,r.kt)("h3",{id:"numerical"},"Numerical"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/numerical/number"},"Number")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/numerical/currency"},"Currency")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/numerical/percent"},"Percentage")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/numerical/currency"},"Currency"))),(0,r.kt)("h3",{id:"date-and-time"},"Date and time"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/date-time-based/date"},"Date")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/date-time-based/time"},"Time")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/date-time-based/date-time"},"Date and time")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/date-time-based/duration"},"Duration"))),(0,r.kt)("h3",{id:"select-based"},"Select based"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/select-based/single-select"},"Single select")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/select-based/multi-select"},"Multi select"))),(0,r.kt)("h3",{id:"link-based"},"Link based"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/links-based/links"},"Links")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/links-based/lookup"},"Lookup")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/links-based/rollup"},"Rollup"))),(0,r.kt)("h3",{id:"custom-types"},"Custom types"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/attachment"},"Attachment")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/checkbox"},"Checkbox")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/rating"},"Rating")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/barcode"},"Barcode")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/QR-code"},"QR-code")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/geometry"},"Geometry")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/specific-db-type"},"Specific DB type")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/custom-types/json"},"JSON"))),(0,r.kt)("h3",{id:"formula"},"Formula"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/formula"},"Formula"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/operators"},"Operators")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/numeric-functions"},"Numeric Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/string-functions"},"String Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/date-functions"},"Date Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"field-types/formula/conditional-expressions"},"Conditional Expressions"))))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/319e5695.d626135a.js b/packages/noco-docs/dist/assets/js/319e5695.d626135a.js new file mode 100644 index 0000000000..6ab7ae5caf --- /dev/null +++ b/packages/noco-docs/dist/assets/js/319e5695.d626135a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9542],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>w});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function i(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var c=r.createContext({}),l=function(e){var t=r.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},p=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},k="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,o=e.originalType,c=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),k=l(a),d=n,w=k["".concat(c,".").concat(d)]||k[d]||m[d]||o;return a?r.createElement(w,i(i({ref:t},p),{},{components:a})):r.createElement(w,i({ref:t},p))}));function w(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=a.length,i=new Array(o);i[0]=d;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[k]="string"==typeof e?e:n,i[1]=s;for(var l=2;l{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>s,toc:()=>l});var r=a(87462),n=(a(67294),a(3905));const o={title:"Actions on workspace",description:"This article explains how to rename or delete a workspace.",tags:["Workspaces","Rename","Delete"],keywords:["Workspace configuration","Rename workspace","Delete workspace","Workspace actions","Workspace management","Workspace administration","Workspace settings","Workspace organization"]},i=void 0,s={unversionedId:"workspaces/actions-on-workspace",id:"workspaces/actions-on-workspace",title:"Actions on workspace",description:"This article explains how to rename or delete a workspace.",source:"@site/docs/030.workspaces/040.actions-on-workspace.md",sourceDirName:"030.workspaces",slug:"/workspaces/actions-on-workspace",permalink:"/workspaces/actions-on-workspace",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/040.actions-on-workspace.md",tags:[{label:"Workspaces",permalink:"/tags/workspaces"},{label:"Rename",permalink:"/tags/rename"},{label:"Delete",permalink:"/tags/delete"}],version:"current",sidebarPosition:40,frontMatter:{title:"Actions on workspace",description:"This article explains how to rename or delete a workspace.",tags:["Workspaces","Rename","Delete"],keywords:["Workspace configuration","Rename workspace","Delete workspace","Workspace actions","Workspace management","Workspace administration","Workspace settings","Workspace organization"]},sidebar:"tutorialSidebar",previous:{title:"Workspace collaboration",permalink:"/workspaces/workspace-collaboration"},next:{title:"Base overview",permalink:"/bases/base-overview"}},c={},l=[{value:"Rename workspace",id:"rename-workspace",level:2},{value:"Delete workspace",id:"delete-workspace",level:2},{value:"Related articles",id:"related-articles",level:2}],p={toc:l},k="wrapper";function m(e){let{components:t,...o}=e;return(0,n.kt)(k,(0,r.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"rename-workspace"},"Rename workspace"),(0,n.kt)("p",null,"To update the workspace name:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Navigate to the ",(0,n.kt)("inlineCode",{parentName:"li"},"Team & Settings")," option in the left sidebar to access the Workspace configuration page."),(0,n.kt)("li",{parentName:"ol"},"Select the ",(0,n.kt)("inlineCode",{parentName:"li"},"Settings")," tab."),(0,n.kt)("li",{parentName:"ol"},"Enter the new desired workspace name in the ",(0,n.kt)("inlineCode",{parentName:"li"},"Workspace Name")," field."),(0,n.kt)("li",{parentName:"ol"},"Confirm the change by clicking on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Rename Workspace")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(7235).Z,width:"2876",height:"1576"})),(0,n.kt)("h2",{id:"delete-workspace"},"Delete workspace"),(0,n.kt)("p",null,"If you determine that a workspace is no longer necessary, you have the option to permanently remove it from your settings. Deleting a workspace will delete all the bases and data associated with it."),(0,n.kt)("admonition",{type:"danger"},(0,n.kt)("p",{parentName:"admonition"},(0,n.kt)("strong",{parentName:"p"},"This action cannot be undone."))),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Only ",(0,n.kt)("strong",{parentName:"p"},"workspace owner")," can delete a workspace.")),(0,n.kt)("p",null,"To remove a workspace:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the Workspace configuration page by selecting ",(0,n.kt)("inlineCode",{parentName:"li"},"Team & Settings")," from the left sidebar."),(0,n.kt)("li",{parentName:"ol"},"Access the ",(0,n.kt)("inlineCode",{parentName:"li"},"Settings")," tab."),(0,n.kt)("li",{parentName:"ol"},"Click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Delete Workspace")," button."),(0,n.kt)("li",{parentName:"ol"},"Provide the workspace name as confirmation for deletion."),(0,n.kt)("li",{parentName:"ol"},"Confirm the action by clicking the ",(0,n.kt)("inlineCode",{parentName:"li"},"Delete Workspace")," button in the confirmation dialog box.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(36659).Z,width:"2874",height:"1576"}),"\n",(0,n.kt)("img",{alt:"image",src:a(36816).Z,width:"2874",height:"1578"})),(0,n.kt)("h2",{id:"related-articles"},"Related articles"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/workspaces/workspace-overview"},"Workspace overview")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/workspaces/create-workspace"},"Create workspace")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/workspaces/workspace-collaboration"},"Invite team members to workspace"))))}m.isMDXComponent=!0},36816:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/workspace-delete-confirmation-9a4ee5e3f00a201dbd8923caeca1f522.png"},36659:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/workspace-delete-3087b68511d36f5c917052f3375e07e4.png"},7235:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/workspace-rename-10dc461c8d3bacfbaecf59dc9bcb8c26.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/31befc1e.16ef0a7f.js b/packages/noco-docs/dist/assets/js/31befc1e.16ef0a7f.js new file mode 100644 index 0000000000..d24a357f58 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/31befc1e.16ef0a7f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6799],{3905:(t,e,a)=>{a.d(e,{Zo:()=>p,kt:()=>c});var n=a(67294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var s=n.createContext({}),o=function(t){var e=n.useContext(s),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},p=function(t){var e=o(t.components);return n.createElement(s.Provider,{value:e},t.children)},u="mdxType",m={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},k=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,s=t.parentName,p=d(t,["components","mdxType","originalType","parentName"]),u=o(a),k=r,c=u["".concat(s,".").concat(k)]||u[k]||m[k]||l;return a?n.createElement(c,i(i({ref:e},p),{},{components:a})):n.createElement(c,i({ref:e},p))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=k;var d={};for(var s in e)hasOwnProperty.call(e,s)&&(d[s]=e[s]);d.originalType=t,d[u]="string"==typeof t?t:r,i[1]=d;for(var o=2;o{a.r(e),a.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>m,frontMatter:()=>l,metadata:()=>d,toc:()=>o});var n=a(87462),r=(a(67294),a(3905));const l={title:"Date functions",tags:["Fields","Field types","Formula","Date & Time"]},i=void 0,d={unversionedId:"fields/field-types/formula/date-functions",id:"fields/field-types/formula/date-functions",title:"Date functions",description:"| Name | Syntax | Sample | Output | Remark |",source:"@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/date-functions",permalink:"/fields/field-types/formula/date-functions",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/040.date-functions.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"},{label:"Date & Time",permalink:"/tags/date-time"}],version:"current",sidebarPosition:40,frontMatter:{title:"Date functions",tags:["Fields","Field types","Formula","Date & Time"]},sidebar:"tutorialSidebar",previous:{title:"String functions",permalink:"/fields/field-types/formula/string-functions"},next:{title:"Conditional expressions",permalink:"/fields/field-types/formula/conditional-expressions"}},s={},o=[{value:"Related Articles",id:"related-articles",level:2}],p={toc:o},u="wrapper";function m(t){let{components:e,...a}=t;return(0,r.kt)(u,(0,n.Z)({},p,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"),(0,r.kt)("th",{parentName:"tr",align:null},"Remark"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"NOW")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"NOW()")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"NOW()")),(0,r.kt)("td",{parentName:"tr",align:null},"2022-05-19 17:20:43"),(0,r.kt)("td",{parentName:"tr",align:null},"Returns the current time and day")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < {DATE_COL}, "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < date, "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If current date is less than {DATE_COL}, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"DATEADD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATEADD(date \\| datetime, value, ["day" \\| "week" \\| "month" \\| "year"])')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'day')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14. The result is 2022-03-15."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'day')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'week')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-03-21 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'week')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'month')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-04-14 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'month')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'year')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2023-03-14 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'year')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < DATEADD(date,10,\'day\'), "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < DATEADD(date,10,\'day\'), "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"DATETIME_DIFF")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATETIME_DIFF(date, date, ["milliseconds" \\| "ms" \\| "seconds" \\| "s" \\| "minutes" \\| "m" \\| "hours" \\| "h" \\| "days" \\| "d" \\| "weeks" \\| "w" \\| "months" \\| "M" \\| "quarters" \\| "Q" \\| "years" \\| "y"])')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATETIME_DIFF("2022/10/14", "2022/10/15", "second")')),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL_1} is 2017-08-25 and {DATE_COL_2} is 2011-08-25. The result is 86400."),(0,r.kt)("td",{parentName:"tr",align:null},"Compares two dates and returns the difference in the unit specified. Positive integers indicate the second date being in the past compared to the first and vice versa for negative ones.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'WEEKDAY(NOW(), "sunday")')),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 1"),(0,r.kt)("td",{parentName:"tr",align:null},"Get the week day of NOW() with the first day set as sunday")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"WEEKDAY")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"WEEKDAY(date, [startDayOfWeek])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"WEEKDAY(NOW())")),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 0"),(0,r.kt)("td",{parentName:"tr",align:null},"Returns the day of the week as an integer between 0 and 6 inclusive starting from Monday by default. You can optionally change the start day of the week by specifying in the second argument")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'WEEKDAY(NOW(), "sunday")')),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 1"),(0,r.kt)("td",{parentName:"tr",align:null},"Get the week day of NOW() with the first day set as sunday")))),(0,r.kt)("h2",{id:"related-articles"},"Related Articles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/operators"},"Numeric and Logical Operators")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/numeric-functions"},"Numeric Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/string-functions"},"String Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/conditional-expressions"},"Conditional Expressions"))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/31f9cd1a.a2a77901.js b/packages/noco-docs/dist/assets/js/31f9cd1a.a2a77901.js new file mode 100644 index 0000000000..cbf57d08b4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/31f9cd1a.a2a77901.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7130],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>f});var n=r(67294);function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}var o=n.createContext({}),p=function(e){var t=n.useContext(o),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},s=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,l=e.mdxType,i=e.originalType,o=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),d=p(r),m=l,f=d["".concat(o,".").concat(m)]||d[m]||u[m]||i;return r?n.createElement(f,a(a({ref:t},s),{},{components:r})):n.createElement(f,a({ref:t},s))}));function f(e,t){var r=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var i=r.length,a=new Array(i);a[0]=m;var c={};for(var o in t)hasOwnProperty.call(t,o)&&(c[o]=t[o]);c.originalType=e,c[d]="string"==typeof e?e:l,a[1]=c;for(var p=2;p{r.r(t),r.d(t,{assets:()=>o,contentTitle:()=>a,default:()=>u,frontMatter:()=>i,metadata:()=>c,toc:()=>p});var n=r(87462),l=(r(67294),r(3905));const i={title:"Percent",tags:["Fields","Field types","Numerical types","Percent"]},a=void 0,c={unversionedId:"fields/field-types/numerical/percent",id:"fields/field-types/numerical/percent",title:"Percent",description:"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.",source:"@site/docs/070.fields/040.field-types/020.numerical/030.percent.md",sourceDirName:"070.fields/040.field-types/020.numerical",slug:"/fields/field-types/numerical/percent",permalink:"/fields/field-types/numerical/percent",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/030.percent.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Numerical types",permalink:"/tags/numerical-types"},{label:"Percent",permalink:"/tags/percent"}],version:"current",sidebarPosition:30,frontMatter:{title:"Percent",tags:["Fields","Field types","Numerical types","Percent"]},sidebar:"tutorialSidebar",previous:{title:"Decimal",permalink:"/fields/field-types/numerical/decimal"},next:{title:"Currency",permalink:"/fields/field-types/numerical/currency"}},o={},p=[{value:"Create a percent field",id:"create-a-percent-field",level:2},{value:"Similar numerical fields",id:"similar-numerical-fields",level:2}],s={toc:p},d="wrapper";function u(e){let{components:t,...i}=e;return(0,l.kt)(d,(0,n.Z)({},s,i,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"Percent")," field type is used to store percentage values. Use cases include storing ",(0,l.kt)("inlineCode",{parentName:"p"},"discount"),", ",(0,l.kt)("inlineCode",{parentName:"p"},"tax"),", etc."),(0,l.kt)("h2",{id:"create-a-percent-field"},"Create a percent field"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,l.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,l.kt)("li",{parentName:"ol"},"Select the field type as ",(0,l.kt)("inlineCode",{parentName:"li"},"Percent")," from the dropdown."),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:r(86233).Z,width:"1266",height:"543"})),(0,l.kt)("h2",{id:"similar-numerical-fields"},"Similar numerical fields"),(0,l.kt)("p",null,"Following are the other numerical fields available in NocoDB, with some custom add-on features."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/number"},"Number")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/decimal"},"Decimal")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/currency"},"Currency"))))}u.isMDXComponent=!0},86233:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/percent-49d72b9b9a2ff29bf251cfca6dbfc1e6.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/32e0f401.fce914da.js b/packages/noco-docs/dist/assets/js/32e0f401.fce914da.js new file mode 100644 index 0000000000..06dc7b0b61 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/32e0f401.fce914da.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9789],{3905:(e,t,a)=>{a.d(t,{Zo:()=>b,kt:()=>u});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function o(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var c=r.createContext({}),s=function(e){var t=r.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},b=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,c=e.parentName,b=i(e,["components","mdxType","originalType","parentName"]),p=s(a),d=n,u=p["".concat(c,".").concat(d)]||p[d]||m[d]||l;return a?r.createElement(u,o(o({ref:t},b),{},{components:a})):r.createElement(u,o({ref:t},b))}));function u(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,o=new Array(l);o[0]=d;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[p]="string"==typeof e?e:n,o[1]=i;for(var s=2;s{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>m,frontMatter:()=>l,metadata:()=>i,toc:()=>s});var r=a(87462),n=(a(67294),a(3905));const l={title:"Create empty table",description:"Learn how to create a table in NocoDB.",tags:["Tables","Create"],keywords:["NocoDB table","create table","table administration","table organization"]},o=void 0,i={unversionedId:"tables/create-table",id:"tables/create-table",title:"Create empty table",description:"Learn how to create a table in NocoDB.",source:"@site/docs/050.tables/020.create-table.md",sourceDirName:"050.tables",slug:"/tables/create-table",permalink:"/tables/create-table",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/020.create-table.md",tags:[{label:"Tables",permalink:"/tags/tables"},{label:"Create",permalink:"/tags/create"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create empty table",description:"Learn how to create a table in NocoDB.",tags:["Tables","Create"],keywords:["NocoDB table","create table","table administration","table organization"]},sidebar:"tutorialSidebar",previous:{title:"Table overview",permalink:"/tables/table-overview"},next:{title:"Create table via import",permalink:"/tables/create-table-via-import"}},c={},s=[{value:"Create new table",id:"create-new-table",level:2},{value:"Related articles",id:"related-articles",level:3}],b={toc:s},p="wrapper";function m(e){let{components:t,...l}=e;return(0,n.kt)(p,(0,r.Z)({},b,l,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"create-new-table"},"Create new table"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," on the left sidebar next to ",(0,n.kt)("inlineCode",{parentName:"li"},"base name")," OR click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+ New Table")," button on the Base dashboard."),(0,n.kt)("li",{parentName:"ol"},"Fill table name in the pop-up modal."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Create Table")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(7216).Z,width:"2878",height:"1410"}),"\n",(0,n.kt)("img",{alt:"image",src:a(42728).Z,width:"2874",height:"1414"})),(0,n.kt)("h3",{id:"related-articles"},"Related articles"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/create-table-via-import"},"Create a table using a CSV, Excel or a JSON")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/import-data-into-existing-table"},"Import data from Csv/Xlsx into existing table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#rename-table"},"Rename a table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#duplicate-table"},"Duplicate a table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#delete-table"},"Delete a table"))))}m.isMDXComponent=!0},7216:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/table-create-1-aff9df656f0041ec3db9e456889831b5.png"},42728:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/table-create-2-bd90d50b93a12813e08331620e11e7a7.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/34b71ab6.001a0e94.js b/packages/noco-docs/dist/assets/js/34b71ab6.001a0e94.js new file mode 100644 index 0000000000..5955f4987f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/34b71ab6.001a0e94.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4364],{3905:(t,a,e)=>{e.d(a,{Zo:()=>k,kt:()=>g});var n=e(67294);function l(t,a,e){return a in t?Object.defineProperty(t,a,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[a]=e,t}function r(t,a){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable}))),e.push.apply(e,n)}return e}function i(t){for(var a=1;a=0||(l[e]=t[e]);return l}(t,a);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(l[e]=t[e])}return l}var m=n.createContext({}),d=function(t){var a=n.useContext(m),e=a;return t&&(e="function"==typeof t?t(a):i(i({},a),t)),e},k=function(t){var a=d(t.components);return n.createElement(m.Provider,{value:a},t.children)},u="mdxType",N={inlineCode:"code",wrapper:function(t){var a=t.children;return n.createElement(n.Fragment,{},a)}},o=n.forwardRef((function(t,a){var e=t.components,l=t.mdxType,r=t.originalType,m=t.parentName,k=p(t,["components","mdxType","originalType","parentName"]),u=d(e),o=l,g=u["".concat(m,".").concat(o)]||u[o]||N[o]||r;return e?n.createElement(g,i(i({ref:a},k),{},{components:e})):n.createElement(g,i({ref:a},k))}));function g(t,a){var e=arguments,l=a&&a.mdxType;if("string"==typeof t||l){var r=e.length,i=new Array(r);i[0]=o;var p={};for(var m in a)hasOwnProperty.call(a,m)&&(p[m]=a[m]);p.originalType=t,p[u]="string"==typeof t?t:l,i[1]=p;for(var d=2;d{e.r(a),e.d(a,{assets:()=>m,contentTitle:()=>i,default:()=>N,frontMatter:()=>r,metadata:()=>p,toc:()=>d});var n=e(87462),l=(e(67294),e(3905));const r={title:"Column Types",description:"NocoDB Column Types Overview"},i=void 0,p={unversionedId:"setup-and-usages/column-types",id:"version-0.109.7/setup-and-usages/column-types",title:"Column Types",description:"NocoDB Column Types Overview",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/column-types",permalink:"/0.109.7/setup-and-usages/column-types",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md",tags:[],version:"0.109.7",sidebarPosition:40,frontMatter:{title:"Column Types",description:"NocoDB Column Types Overview"},sidebar:"tutorialSidebar",previous:{title:"Column Operations",permalink:"/0.109.7/setup-and-usages/column-operations"},next:{title:"Code Snippets",permalink:"/0.109.7/setup-and-usages/code-snippets"}},m={},d=[{value:"Available Column Types",id:"available-column-types",level:2},{value:"Database Types",id:"database-types",level:2},{value:"LinkToAnotherRecord",id:"linktoanotherrecord",level:3},{value:"SingleLineText",id:"singlelinetext",level:3},{value:"Available Database Types",id:"available-database-types",level:4},{value:"LongText",id:"longtext",level:3},{value:"Available Database Types",id:"available-database-types-1",level:4},{value:"Attachment",id:"attachment",level:3},{value:"Available Database Types",id:"available-database-types-2",level:4},{value:"Checkbox",id:"checkbox",level:3},{value:"Available Database Types",id:"available-database-types-3",level:4},{value:"MultiSelect",id:"multiselect",level:3},{value:"Available Database Types",id:"available-database-types-4",level:4},{value:"SingleSelect",id:"singleselect",level:3},{value:"Available Database Types",id:"available-database-types-5",level:4},{value:"Date",id:"date",level:3},{value:"Available Database Types",id:"available-database-types-6",level:4},{value:"Year",id:"year",level:3},{value:"Available Database Types",id:"available-database-types-7",level:4},{value:"Time",id:"time",level:3},{value:"Available Database Types",id:"available-database-types-8",level:4},{value:"PhoneNumber",id:"phonenumber",level:3},{value:"Available Database Types",id:"available-database-types-9",level:4},{value:"Email",id:"email",level:3},{value:"Available Database Types",id:"available-database-types-10",level:4},{value:"URL",id:"url",level:3},{value:"Available Database Types",id:"available-database-types-11",level:4},{value:"Number",id:"number",level:3},{value:"Available Database Types",id:"available-database-types-12",level:4},{value:"Decimal",id:"decimal",level:3},{value:"Available Database Types",id:"available-database-types-13",level:4},{value:"Currency",id:"currency",level:3},{value:"Available Database Types",id:"available-database-types-14",level:4},{value:"Percent",id:"percent",level:3},{value:"Available Database Types",id:"available-database-types-15",level:4},{value:"Duration",id:"duration",level:3},{value:"Available Database Types",id:"available-database-types-16",level:4},{value:"Rating",id:"rating",level:3},{value:"Available Database Types",id:"available-database-types-17",level:4},{value:"Formula",id:"formula",level:3},{value:"QR-Code",id:"qr-code",level:3},{value:"Barcode",id:"barcode",level:3},{value:"Rollup",id:"rollup",level:3},{value:"DateTime",id:"datetime",level:3},{value:"Available Database Types",id:"available-database-types-18",level:4},{value:"Geometry",id:"geometry",level:3},{value:"Available Database Types",id:"available-database-types-19",level:4},{value:"GeoData",id:"geodata",level:3},{value:"Available Database Types",id:"available-database-types-20",level:4},{value:"JSON",id:"json",level:3},{value:"Available Database Types",id:"available-database-types-21",level:4},{value:"SpecificDBType",id:"specificdbtype",level:3},{value:"Available Database Types",id:"available-database-types-22",level:4}],k={toc:d},u="wrapper";function N(t){let{components:a,...e}=t;return(0,l.kt)(u,(0,n.Z)({},k,e,{components:a,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"available-column-types"},"Available Column Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Type"),(0,l.kt)("th",{parentName:"tr",align:null},"Description"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#linktoanotherrecord"},"LinkToAnotherRecord")),(0,l.kt)("td",{parentName:"tr",align:null},"Has Many or Many To Many columns")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#singlelinetext"},"SingleLineText")),(0,l.kt)("td",{parentName:"tr",align:null},"For short text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#longtext"},"LongText")),(0,l.kt)("td",{parentName:"tr",align:null},"For lengthy string content")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#attachment"},"Attachment")),(0,l.kt)("td",{parentName:"tr",align:null},"File attachment column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#checkbox"},"Checkbox")),(0,l.kt)("td",{parentName:"tr",align:null},"Boolean value")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#multiselect"},"MultiSelect")),(0,l.kt)("td",{parentName:"tr",align:null},"Multiple options can be selected once")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#singleselect"},"SingleSelect")),(0,l.kt)("td",{parentName:"tr",align:null},"Single option select")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#date"},"Date")),(0,l.kt)("td",{parentName:"tr",align:null},"Date selector")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#year"},"Year")),(0,l.kt)("td",{parentName:"tr",align:null},"Year selector")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#time"},"Time")),(0,l.kt)("td",{parentName:"tr",align:null},"Time selector")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#phonenumber"},"PhoneNumber")),(0,l.kt)("td",{parentName:"tr",align:null},"Phone number field")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#email"},"Email")),(0,l.kt)("td",{parentName:"tr",align:null},"Email field")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#url"},"URL")),(0,l.kt)("td",{parentName:"tr",align:null},"Valid URL field")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#number"},"Number")),(0,l.kt)("td",{parentName:"tr",align:null},"Any type of number")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#decimal"},"Decimal")),(0,l.kt)("td",{parentName:"tr",align:null},"Fractional number")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#currency"},"Currency")),(0,l.kt)("td",{parentName:"tr",align:null},"Currency value")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#percent"},"Percent")),(0,l.kt)("td",{parentName:"tr",align:null},"Percentage")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#duration"},"Duration")),(0,l.kt)("td",{parentName:"tr",align:null},"Duration")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#rating"},"Rating")),(0,l.kt)("td",{parentName:"tr",align:null},"Rating")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#formula"},"Formula")),(0,l.kt)("td",{parentName:"tr",align:null},"Formula based generated column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#rollup"},"Rollup")),(0,l.kt)("td",{parentName:"tr",align:null},"Performs calculations and aggregations")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#datetime"},"DateTime")),(0,l.kt)("td",{parentName:"tr",align:null},"Date & Time selector")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#qr-code"},"QR Code")),(0,l.kt)("td",{parentName:"tr",align:null},"QR Code visualization of another referenced column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#barcode"},"Barcode")),(0,l.kt)("td",{parentName:"tr",align:null},"Barcode visualization of another referenced column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#geometry"},"Geometry")),(0,l.kt)("td",{parentName:"tr",align:null},"Geometry column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#geodata"},"GeoData")),(0,l.kt)("td",{parentName:"tr",align:null},"GeoData column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#json"},"Json")),(0,l.kt)("td",{parentName:"tr",align:null},"Json column")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#specificdbtype"},"SpecificDBType")),(0,l.kt)("td",{parentName:"tr",align:null},"Custom DB type option")))),(0,l.kt)("h2",{id:"database-types"},"Database Types"),(0,l.kt)("h3",{id:"linktoanotherrecord"},"LinkToAnotherRecord"),(0,l.kt)("p",null,"For more about Link To Another Record, please visit ",(0,l.kt)("a",{href:"/0.109.7/setup-and-usages/link-to-another-record",target:"_blank"},"here"),"."),(0,l.kt)("h3",{id:"singlelinetext"},"SingleLineText"),(0,l.kt)("h4",{id:"available-database-types"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, varchar, nchar, text, tinytext, mediumtext, longtext"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, character, character varying, text"),(0,l.kt)("td",{parentName:"tr",align:null},"character varying")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"char, ntext, text, varchar, nvarchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"character, text, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")))),(0,l.kt)("h3",{id:"longtext"},"LongText"),(0,l.kt)("h4",{id:"available-database-types-1"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, varchar, nchar, text, tinytext, mediumtext, longtext"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, character, character varying, text"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"char, ntext, text, varchar, nvarchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"character, text, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"attachment"},"Attachment"),(0,l.kt)("h4",{id:"available-database-types-2"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"json, char, varchar, nchar, text, tinytext, mediumtext, longtext"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"json, char, character, character varying, text"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"char, ntext, text, varchar, nvarchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"character, text, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"checkbox"},"Checkbox"),(0,l.kt)("h4",{id:"available-database-types-3"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, smallint, mediumint, bigint, bit, boolean, serial, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"tinyint")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"bit, bool, int2, int4, int8, boolean, smallint, int, integer, bigint, bigserial, char, int4range, int8range, serial, serial2, serial8"),(0,l.kt)("td",{parentName:"tr",align:null},"bool")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"bigint, bit, int, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"tinyint")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, tinyint, smallint, mediumint, bigint, int2, int8, boolean"),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("h3",{id:"multiselect"},"MultiSelect"),(0,l.kt)("h4",{id:"available-database-types-4"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"set, text, tinytext, mediumtext, longtext"),(0,l.kt)("td",{parentName:"tr",align:null},"set")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"text"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"text, ntext"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"text, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"singleselect"},"SingleSelect"),(0,l.kt)("h4",{id:"available-database-types-5"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"enum, text, tinytext, mediumtext, longtext"),(0,l.kt)("td",{parentName:"tr",align:null},"enum")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"text"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"text, ntext"),(0,l.kt)("td",{parentName:"tr",align:null},"text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"text, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"date"},"Date"),(0,l.kt)("h4",{id:"available-database-types-6"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"date, datetime, timestamp, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"date, timestamp, timestamp without time zone, timestamptz, timestamp with time zone")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"date"),(0,l.kt)("td",{parentName:"tr",align:null},"date")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"date, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")))),(0,l.kt)("h3",{id:"year"},"Year"),(0,l.kt)("h4",{id:"available-database-types-7"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"year"),(0,l.kt)("td",{parentName:"tr",align:null},"year")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, tinyint, smallint, mediumint, bigint, int2, int8"),(0,l.kt)("td",{parentName:"tr",align:null},"year")))),(0,l.kt)("h3",{id:"time"},"Time"),(0,l.kt)("h4",{id:"available-database-types-8"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"time"),(0,l.kt)("td",{parentName:"tr",align:null},"time")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"time, time without time zone, timestamp, timestamp without time zone, timestamptz, timestamp with time zone, timetz, time with time zone"),(0,l.kt)("td",{parentName:"tr",align:null},"time")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"time"),(0,l.kt)("td",{parentName:"tr",align:null},"time")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, tinyint, smallint, mediumint, bigint, int2, int8"),(0,l.kt)("td",{parentName:"tr",align:null},"time")))),(0,l.kt)("h3",{id:"phonenumber"},"PhoneNumber"),(0,l.kt)("h4",{id:"available-database-types-9"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"character varying"),(0,l.kt)("td",{parentName:"tr",align:null},"character varying")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar, text"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")))),(0,l.kt)("h3",{id:"email"},"Email"),(0,l.kt)("h4",{id:"available-database-types-10"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"character varying"),(0,l.kt)("td",{parentName:"tr",align:null},"character varying")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar, text"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")))),(0,l.kt)("h3",{id:"url"},"URL"),(0,l.kt)("h4",{id:"available-database-types-11"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"text, tinytext, mediumtext, longtext, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"character varying, text"),(0,l.kt)("td",{parentName:"tr",align:null},"character varying")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar, text"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"varchar, text"),(0,l.kt)("td",{parentName:"tr",align:null},"varchar")))),(0,l.kt)("h3",{id:"number"},"Number"),(0,l.kt)("h4",{id:"available-database-types-12"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, smallint, mediumint, bigint, bit, float, decimal, double, serial"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserial"),(0,l.kt)("td",{parentName:"tr",align:null},"int8")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int, bigint, bit, decimal, float, numeric, real, smallint, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numeric, real, double, double precision, float"),(0,l.kt)("td",{parentName:"tr",align:null},"integer")))),(0,l.kt)("h3",{id:"decimal"},"Decimal"),(0,l.kt)("h4",{id:"available-database-types-13"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"float, decimal, double, serial"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"double precision,float4,float8"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"real, double, double precision, float, numericdecimal"),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("h3",{id:"currency"},"Currency"),(0,l.kt)("h4",{id:"available-database-types-14"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float, double, serial', 'int, smallint, mediumint, bigint, bit"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, money', 'float4, float8"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int, bigint, bit, decimal, float, numeric, real, smallint, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"decimal")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"real, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numeric"),(0,l.kt)("td",{parentName:"tr",align:null},"double precision")))),(0,l.kt)("h3",{id:"percent"},"Percent"),(0,l.kt)("h4",{id:"available-database-types-15"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float, double, serial', 'int, smallint, mediumint, bigint, bit"),(0,l.kt)("td",{parentName:"tr",align:null},"double")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserial"),(0,l.kt)("td",{parentName:"tr",align:null},"double")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int, bigint, bit, decimal, float, numeric, real, smallint, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"double")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"real, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numeric"),(0,l.kt)("td",{parentName:"tr",align:null},"double")))),(0,l.kt)("h3",{id:"duration"},"Duration"),(0,l.kt)("h4",{id:"available-database-types-16"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float, double, serial', 'int, smallint, mediumint, bigint, bit"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserial"),(0,l.kt)("td",{parentName:"tr",align:null},"int8")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int, bigint, bit, decimal, float, numeric, real, smallint, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"int")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, tinyint, smallint, mediumint, bigint, int2, int8"),(0,l.kt)("td",{parentName:"tr",align:null},"integer")))),(0,l.kt)("h3",{id:"rating"},"Rating"),(0,l.kt)("h4",{id:"available-database-types-17"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float, double, serial', 'int, smallint, mediumint, bigint, bit"),(0,l.kt)("td",{parentName:"tr",align:null},"float")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"int, integer, bigint, bigserial, int2, int4, int8, serial, serial2, serial8, double precision, float4, float8, smallint, smallserial"),(0,l.kt)("td",{parentName:"tr",align:null},"float8")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"int, bigint, bit, decimal, float, numeric, real, smallint, tinyint"),(0,l.kt)("td",{parentName:"tr",align:null},"float")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"real, double, double precision, float, int, integer, tinyint, smallint, mediumint, bigint, int2, int8, numeric"),(0,l.kt)("td",{parentName:"tr",align:null},"float")))),(0,l.kt)("h3",{id:"formula"},"Formula"),(0,l.kt)("p",null,"For more about Formulas, please visit ",(0,l.kt)("a",{href:"/0.109.7/setup-and-usages/formulas",target:"_blank"},"here"),"."),(0,l.kt)("h3",{id:"qr-code"},"QR-Code"),(0,l.kt)("p",null,"Encodes the value of a reference column as QR code. The following column types are supported for the for reference column: "),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Formula"),(0,l.kt)("li",{parentName:"ul"},"Single Line Text"),(0,l.kt)("li",{parentName:"ul"},"Long Text"),(0,l.kt)("li",{parentName:"ul"},"Phone Number"),(0,l.kt)("li",{parentName:"ul"},"URL "),(0,l.kt)("li",{parentName:"ul"},"Email")),(0,l.kt)("p",null,"Since it's a virtual column, the cell content (QR code) cannot be changed directly. "),(0,l.kt)("h3",{id:"barcode"},"Barcode"),(0,l.kt)("p",null,"Encodes the value of a reference column as Barcode. Supported barcode formats: CODE128, EAN, EAN-13, EAN-8, EAN-5, EAN-2, UPC (A), CODE39, ITF-14, MSI, Pharmacode, Codabar. The following column types are supported for the for reference column: "),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Formula"),(0,l.kt)("li",{parentName:"ul"},"Single Line Text"),(0,l.kt)("li",{parentName:"ul"},"Long Text"),(0,l.kt)("li",{parentName:"ul"},"Phone Number"),(0,l.kt)("li",{parentName:"ul"},"URL "),(0,l.kt)("li",{parentName:"ul"},"Email")),(0,l.kt)("p",null,"Since it's a virtual column, the cell content (Barcode) cannot be changed directly."),(0,l.kt)("h3",{id:"rollup"},"Rollup"),(0,l.kt)("p",null,"For more about Rollup, please visit ",(0,l.kt)("a",{href:"/0.109.7/setup-and-usages/rollup",target:"_blank"},"here"),"."),(0,l.kt)("h3",{id:"datetime"},"DateTime"),(0,l.kt)("h4",{id:"available-database-types-18"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"),(0,l.kt)("th",{parentName:"tr",align:null},"Default Type"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"datetime, timestamp, varchar"),(0,l.kt)("td",{parentName:"tr",align:null},"datetime")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"timestamp, timestamp without time zone, timestamptz, timestamp with time zone"),(0,l.kt)("td",{parentName:"tr",align:null},"datetime")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"datetime, datetime2, datetimeoffset"),(0,l.kt)("td",{parentName:"tr",align:null},"datetime")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"datetime, timestamp"),(0,l.kt)("td",{parentName:"tr",align:null},"datetime")))),(0,l.kt)("h3",{id:"geometry"},"Geometry"),(0,l.kt)("h4",{id:"available-database-types-19"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"geometry, point, linestring, polygon, multipoint, multilinestring, multipolygon")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"polygon, point, circle, box, line, lseg, path, circle")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"geometry")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"geodata"},"GeoData"),(0,l.kt)("p",null,"Encodes a geographic location which consists of a latitude and a longitude.\nBoth are internally stored as one string, where latitude and longitude are separated by ';'\nExample: \"52.2134;29.1442\""),(0,l.kt)("h4",{id:"available-database-types-20"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, varchar, nchar, text, tinytext, mediumtext, longtext")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"char, character, character varying, text")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"decimal, float")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"character, text, varchar")))),(0,l.kt)("h3",{id:"json"},"JSON"),(0,l.kt)("h4",{id:"available-database-types-21"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},"json")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},"json")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},"text, ntext")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},"text")))),(0,l.kt)("h3",{id:"specificdbtype"},"SpecificDBType"),(0,l.kt)("h4",{id:"available-database-types-22"},"Available Database Types"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Database"),(0,l.kt)("th",{parentName:"tr",align:null},"Types"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"MySQL")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"All types are available"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"PostgreSQL")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"All types are available"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQL Server")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"All types are available"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"td"},"SQLite")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("em",{parentName:"td"},"All types are available"))))))}N.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/35af5afe.cea2cc41.js b/packages/noco-docs/dist/assets/js/35af5afe.cea2cc41.js new file mode 100644 index 0000000000..02f143c4e6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/35af5afe.cea2cc41.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1179],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>m});var l=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(l=0;l=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=l.createContext({}),d=function(e){var t=l.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=d(e.components);return l.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},f=l.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,c=r(e,["components","mdxType","originalType","parentName"]),p=d(n),f=i,m=p["".concat(s,".").concat(f)]||p[f]||u[f]||o;return n?l.createElement(m,a(a({ref:t},c),{},{components:n})):l.createElement(m,a({ref:t},c))}));function m(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=f;var r={};for(var s in t)hasOwnProperty.call(t,s)&&(r[s]=t[s]);r.originalType=e,r[p]="string"==typeof e?e:i,a[1]=r;for(var d=2;d{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>u,frontMatter:()=>o,metadata:()=>r,toc:()=>d});var l=n(87462),i=(n(67294),n(3905));const o={title:"Multi Select",tags:["Fields","Field types","Select based types","Multi select"]},a=void 0,r={unversionedId:"fields/field-types/select-based/multi-select",id:"fields/field-types/select-based/multi-select",title:"Multi Select",description:"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.",source:"@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md",sourceDirName:"070.fields/040.field-types/030.select-based",slug:"/fields/field-types/select-based/multi-select",permalink:"/fields/field-types/select-based/multi-select",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/030.select-based/020.multi-select.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Select based types",permalink:"/tags/select-based-types"},{label:"Multi select",permalink:"/tags/multi-select"}],version:"current",sidebarPosition:20,frontMatter:{title:"Multi Select",tags:["Fields","Field types","Select based types","Multi select"]},sidebar:"tutorialSidebar",previous:{title:"Single Select",permalink:"/fields/field-types/select-based/single-select"},next:{title:"Links",permalink:"/fields/field-types/links-based/links"}},s={},d=[{value:"Create a multi select field",id:"create-a-multi-select-field",level:2},{value:"Configure color for options",id:"configure-color-for-options",level:3},{value:"Re-order options",id:"re-order-options",level:3},{value:"Edit options",id:"edit-options",level:3},{value:"Delete options",id:"delete-options",level:3},{value:"Similar select based fields",id:"similar-select-based-fields",level:2}],c={toc:d},p="wrapper";function u(e){let{components:t,...o}=e;return(0,i.kt)(p,(0,l.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Multi Select")," fields allow you to select multiple options from a list of options. The options can be defined in the field configuration."),(0,i.kt)("h2",{id:"create-a-multi-select-field"},"Create a multi select field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"MultiSelect")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Add option")," button to add options."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field. The options are populated in the dropdown. Since its multi select, you can select multiple options as default value."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(9651).Z,width:"1266",height:"741"})),(0,i.kt)("h3",{id:"configure-color-for-options"},"Configure color for options"),(0,i.kt)("p",null,"You can re-configure background color for each option. This is useful when you want to highlight certain options. For example, you can configure ",(0,i.kt)("inlineCode",{parentName:"p"},"High")," option to have ",(0,i.kt)("inlineCode",{parentName:"p"},"red")," background color.\nTo configure, click on the ",(0,i.kt)("inlineCode",{parentName:"p"},"color")," icon next to the option. Select the color from the color picker and click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(68261).Z,width:"450",height:"542"})),(0,i.kt)("h3",{id:"re-order-options"},"Re-order options"),(0,i.kt)("p",null,"You can re-order options by dragging and dropping the options. To re-order, click on the ",(0,i.kt)("inlineCode",{parentName:"p"},"drag")," icon next to the option and drag it to the desired position. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the order."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(28654).Z,width:"402",height:"541"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"The order defined for the options will be used in cells dropdown as well.")),(0,i.kt)("h3",{id:"edit-options"},"Edit options"),(0,i.kt)("p",null,"You can rename options by clicking on the associated option text box. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the changes."),(0,i.kt)("h3",{id:"delete-options"},"Delete options"),(0,i.kt)("p",null,"You can delete options by clicking on the ",(0,i.kt)("inlineCode",{parentName:"p"},"x")," icon next to the option. You can undo the delete by clicking on the ",(0,i.kt)("inlineCode",{parentName:"p"},"undo")," icon next to the option. Click on ",(0,i.kt)("inlineCode",{parentName:"p"},"Save Column")," button to save the changes."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"On removing an option, the option value will be removed from all the cells."),(0,i.kt)("li",{parentName:"ul"},"If the option value is set as default value for the field, then the default value will be removed."))),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:n(17517).Z,width:"400",height:"541"})),(0,i.kt)("h2",{id:"similar-select-based-fields"},"Similar select based fields"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/select-based/single-select"},"Single select"))))}u.isMDXComponent=!0},9651:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/multi-select-856f1a7e26ad86d841019ada237bf124.png"},68261:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/single-select-color-8658ed7709d43bb4506b61e0ce420f21.png"},17517:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/single-select-delete-656a108ff71fbef65411239787f27861.png"},28654:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/single-select-reorder-906d6ae0697610c5df2c4f3c49545a38.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3615d78a.3807e0ad.js b/packages/noco-docs/dist/assets/js/3615d78a.3807e0ad.js new file mode 100644 index 0000000000..4fe3b64ed3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3615d78a.3807e0ad.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3590],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>h});var n=a(67294);function l(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t=0||(l[a]=e[a]);return l}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,l=e.mdxType,i=e.originalType,s=e.parentName,u=r(e,["components","mdxType","originalType","parentName"]),c=d(a),m=l,h=c["".concat(s,".").concat(m)]||c[m]||p[m]||i;return a?n.createElement(h,o(o({ref:t},u),{},{components:a})):n.createElement(h,o({ref:t},u))}));function h(e,t){var a=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var i=a.length,o=new Array(i);o[0]=m;var r={};for(var s in t)hasOwnProperty.call(t,s)&&(r[s]=t[s]);r.originalType=e,r[c]="string"==typeof e?e:l,o[1]=r;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>p,frontMatter:()=>i,metadata:()=>r,toc:()=>d});var n=a(87462),l=(a(67294),a(3905));const i={title:"Releases & Builds",description:"NocoDB creates Docker and Binaries for each PR"},o=void 0,r={unversionedId:"engineering/builds-and-releases",id:"version-0.109.7/engineering/builds-and-releases",title:"Releases & Builds",description:"NocoDB creates Docker and Binaries for each PR",source:"@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md",sourceDirName:"050.engineering",slug:"/engineering/builds-and-releases",permalink:"/0.109.7/engineering/builds-and-releases",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md",tags:[],version:"0.109.7",sidebarPosition:60,frontMatter:{title:"Releases & Builds",description:"NocoDB creates Docker and Binaries for each PR"},sidebar:"tutorialSidebar",previous:{title:"Playwright E2E Testing",permalink:"/0.109.7/engineering/playwright"},next:{title:"i18n translation",permalink:"/0.109.7/engineering/translation"}},s={},d=[{value:"Builds of NocoDB",id:"builds-of-nocodb",level:2},{value:"Release builds",id:"release-builds",level:2},{value:"How to make a release build ?",id:"how-to-make-a-release-build--",level:3},{value:"Tagging",id:"tagging",level:3},{value:"Case 1: Leaving inputs blank",id:"case-1-leaving-inputs-blank",level:3},{value:"Case 2: Manually Input",id:"case-2-manually-input",level:3},{value:"How does release action work ?",id:"how-does-release-action-work-",level:3},{value:"validate-branch",id:"validate-branch",level:4},{value:"process-input",id:"process-input",level:4},{value:"pr-to-master",id:"pr-to-master",level:4},{value:"release-npm",id:"release-npm",level:4},{value:"release-draft-note",id:"release-draft-note",level:4},{value:"release-docker",id:"release-docker",level:4},{value:"close-issues",id:"close-issues",level:4},{value:"publish-docs",id:"publish-docs",level:4},{value:"update-sdk-path",id:"update-sdk-path",level:4},{value:"sync-to-develop",id:"sync-to-develop",level:4},{value:"Daily builds",id:"daily-builds",level:2},{value:"What are daily builds ?",id:"what-are-daily-builds-",level:3},{value:"Docker images",id:"docker-images",level:3},{value:"Timely builds",id:"timely-builds",level:2},{value:"What are timely builds ?",id:"what-are-timely-builds-",level:3},{value:"Docker images",id:"docker-images-1",level:3},{value:"Executables or Binaries",id:"executables-or-binaries",level:2}],u={toc:d},c="wrapper";function p(e){let{components:t,...a}=e;return(0,l.kt)(c,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"builds-of-nocodb"},"Builds of NocoDB"),(0,l.kt)("p",null,"There are 3 kinds of docker builds in NocoDB"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Release builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb"},"nocodb/nocodb")," : built during NocoDB release. "),(0,l.kt)("li",{parentName:"ul"},"Daily builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-daily"},"nocodb/nocodb-daily")," : built every 6 hours from Develop branch."),(0,l.kt)("li",{parentName:"ul"},"Timely builds ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-timely"},"nocodb/nocodb-timely"),": built for every PR and manually triggered PRs.")),(0,l.kt)("p",null,"Below is an overview of how to make these builds and what happens behind the scenes."),(0,l.kt)("h2",{id:"release-builds"},"Release builds"),(0,l.kt)("h3",{id:"how-to-make-a-release-build--"},"How to make a release build ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Click ",(0,l.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/actions/workflows/release-nocodb.yml"},"NocoDB release action"))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"You should see the below screen"),(0,l.kt)("p",{parentName:"li"},(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167240353-a02f690f-c865-4ade-8645-64382405c9ea.png",alt:"image"}))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Change ",(0,l.kt)("inlineCode",{parentName:"p"},"Use workflow from")," to ",(0,l.kt)("inlineCode",{parentName:"p"},"Branch: master"),". If you choose the wrong branch, the workflow will be ended."),(0,l.kt)("p",{parentName:"li"},(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167240383-dda05f76-8323-4f4a-b3e7-9db886dbd68d.png",alt:"image"}))),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Then there would be two cases - you can either leave target tag and pervious tag blank or manually input some values")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Target Tag means the target deployment version, while Previous Tag means the latest version as of now. Previous Tag is used for Release Note only - showing the file / commit differences between two tags."))),(0,l.kt)("h3",{id:"tagging"},"Tagging"),(0,l.kt)("p",null,"The naming convention would be following given the actual release tag is ",(0,l.kt)("inlineCode",{parentName:"p"},"0.100.0")),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.0")," (first version of pre-release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.1")," (include bug fix changes on top of the previous version)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0-beta.2"),"(include bug fix changes on top of the previous version)"),(0,l.kt)("li",{parentName:"ul"},"and so on ..."),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.0")," (actual release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.1")," (minor bug fix release)"),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"0.100.2")," (minor bug fix release)")),(0,l.kt)("h3",{id:"case-1-leaving-inputs-blank"},"Case 1: Leaving inputs blank"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"If Previous Tag is blank, then the value will be fetched from ",(0,l.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/latest"},"latest")),(0,l.kt)("li",{parentName:"ul"},"If Target Tag is blank, then the value will be Previous Tag plus one. Example: 0.90.11 (Previous Tag) + 0.0.1 = 0.90.12 (Target Tag)")),(0,l.kt)("h3",{id:"case-2-manually-input"},"Case 2: Manually Input"),(0,l.kt)("p",null,"Why? Sometimes we may mess up in NPM deployment. As NPM doesn't allow us to redeploy to the same tag again, in this case we cannot just use the previous tag + 1. Therefore, we need to use previous tag + 2 instead and we manually configure it."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"After that, click ",(0,l.kt)("inlineCode",{parentName:"li"},"Run workflow")," to start"),(0,l.kt)("li",{parentName:"ul"},"You can see Summary for the overall job status."),(0,l.kt)("li",{parentName:"ul"},"Once ",(0,l.kt)("inlineCode",{parentName:"li"},"release-draft-note")," and ",(0,l.kt)("inlineCode",{parentName:"li"},"release-executables")," is finished, then go to ",(0,l.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases"},"releases"),", edit the draft note and save as draft for time being.",(0,l.kt)("ul",{parentName:"li"},(0,l.kt)("li",{parentName:"ul"},"Example: Adding header, update content if necessary, and click ",(0,l.kt)("inlineCode",{parentName:"li"},"Auto-generate release notes")," to include more info."))),(0,l.kt)("li",{parentName:"ul"},"Once ",(0,l.kt)("inlineCode",{parentName:"li"},"release-docker")," is finished, then test it locally first. You'll be expected to see ",(0,l.kt)("inlineCode",{parentName:"li"},"Upgrade Available")," notification in UI as we haven't published the release note. (the version is retrieved from there)"),(0,l.kt)("li",{parentName:"ul"},"Once everything is finished, then publish the release note and the deployment is considered as DONE.")),(0,l.kt)("h3",{id:"how-does-release-action-work-"},"How does release action work ?"),(0,l.kt)("h4",{id:"validate-branch"},"validate-branch"),(0,l.kt)("p",null,"To check if ",(0,l.kt)("inlineCode",{parentName:"p"},"github.ref")," is master. Otherwise, other branches will be not accepted."),(0,l.kt)("h4",{id:"process-input"},"process-input"),(0,l.kt)("p",null,"To enrich target tag or previous tag if necessary."),(0,l.kt)("h4",{id:"pr-to-master"},"pr-to-master"),(0,l.kt)("p",null,"Automate a PR from develop to master branch so that we know the actual differences between the previous tag and the current tag. We choose master branch for a deployment base."),(0,l.kt)("h4",{id:"release-npm"},"release-npm"),(0,l.kt)("p",null,"Build frontend and backend and release them to NPM. The changes during built such as version bumping will be committed and pushed to a temporary branch and an automated PR will be created and merged to master branch."),(0,l.kt)("p",null,"Note that once you publish with a certain tag, you cannot publish with the same tag again."),(0,l.kt)("h4",{id:"release-draft-note"},"release-draft-note"),(0,l.kt)("p",null,"Generate a draft release note. Some actions need to be done after this step."),(0,l.kt)("h4",{id:"release-docker"},"release-docker"),(0,l.kt)("p",null,"Build docker image and publish it to Docker Hub. It may take around 15 - 30 mins."),(0,l.kt)("h4",{id:"close-issues"},"close-issues"),(0,l.kt)("p",null,"Open issues marked with label ",(0,l.kt)("inlineCode",{parentName:"p"},"Status: Fixed")," and ",(0,l.kt)("inlineCode",{parentName:"p"},"Status: Resolved")," will be closed by bot automatically with comment mentioning the fix is included in which version."),(0,l.kt)("p",null,"Example:"),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/167241574-f8f7061f-c689-444a-b761-0a727974c53f.png",alt:"image"})),(0,l.kt)("h4",{id:"publish-docs"},"publish-docs"),(0,l.kt)("p",null,"Publish Documentations"),(0,l.kt)("h4",{id:"update-sdk-path"},"update-sdk-path"),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"nocodb-sdk")," is used in frontend and backend. However, in develop branch, the value would be ",(0,l.kt)("inlineCode",{parentName:"p"},"file:../nocodb-sdk")," for development purpose (so that the changes done in nocodb-sdk in develop will be included in frontend and backend). During the deployment, the value will be changed to the target tag. This job is to update them back."),(0,l.kt)("h4",{id:"sync-to-develop"},"sync-to-develop"),(0,l.kt)("p",null,"Once the deployment is finished, there would be some new changes being pushed to master branch. This job is to sync the changes back to develop so that both branch won't have any difference."),(0,l.kt)("h2",{id:"daily-builds"},"Daily builds"),(0,l.kt)("h3",{id:"what-are-daily-builds-"},"What are daily builds ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"NocoDB creates every 6 hours from develop branches and publishes as nocodb/nocodb-daily"),(0,l.kt)("li",{parentName:"ul"},"This is so that we can easily try what is in the develop branch easily.")),(0,l.kt)("h3",{id:"docker-images"},"Docker images"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"The docker images will be built and pushed to Docker Hub (See ",(0,l.kt)("a",{parentName:"li",href:"https://hub.docker.com/r/nocodb/nocodb-daily/tags"},"nocodb/nocodb-daily")," for the full list). ")),(0,l.kt)("h2",{id:"timely-builds"},"Timely builds"),(0,l.kt)("h3",{id:"what-are-timely-builds-"},"What are timely builds ?"),(0,l.kt)("p",null,"NocoDB has github actions which creates docker and binaries for each PR! And these can be found as a ",(0,l.kt)("strong",{parentName:"p"},"comment on the last commit")," of the PR. "),(0,l.kt)("p",null,"Example shown below"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Go to a PR and click on the comment."),(0,l.kt)("img",{width:"1111",alt:"Screenshot 2023-01-23 at 15 46 36",src:"https://user-images.githubusercontent.com/5435402/214083736-80062398-3712-430f-9865-86b110090c91.png"})),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("p",{parentName:"li"},"Click on the link to copy the docker image and run it locally."),(0,l.kt)("img",{width:"1231",alt:"Screenshot 2023-01-23 at 15 46 55",src:"https://user-images.githubusercontent.com/5435402/214083755-945d9485-2b9e-4739-8408-068bdf4a84b7.png"}))),(0,l.kt)("p",null,"This is to"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"reduce pull request cycle time"),(0,l.kt)("li",{parentName:"ul"},"allow issue reporters / reviewers to verify the fix without setting up their local machines")),(0,l.kt)("h3",{id:"docker-images-1"},"Docker images"),(0,l.kt)("p",null,"When a non-draft Pull Request is created, reopened or synchronized, a timely build for Docker would be triggered for the changes only included in the following paths."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nocodb-sdk/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nc-gui/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nc-plugin/**")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"packages/nocodb/**"))),(0,l.kt)("p",null,"The docker images will be built and pushed to Docker Hub (See ",(0,l.kt)("a",{parentName:"p",href:"https://hub.docker.com/r/nocodb/nocodb-timely/tags"},"nocodb/nocodb-timely")," for the full list). Once the image is ready, Github bot will add a comment with the command in the pull request. The tag would be ",(0,l.kt)("inlineCode",{parentName:"p"},"-pr---"),"."),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/175012097-240dab05-da93-4c4e-87c1-1c36fb1350bd.png",alt:"image"})),(0,l.kt)("h2",{id:"executables-or-binaries"},"Executables or Binaries"),(0,l.kt)("p",null,"Similarly, we provide a timely build for executables for non-docker users. The source code will be built, packaged as binary files, and pushed to Github (See ",(0,l.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb-timely/releases"},"nocodb/nocodb-timely")," for the full list)."),(0,l.kt)("p",null,"Currently, we only support the following targets:"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-linux-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-macos-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-win-arm64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-linux-x64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-macos-x64")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("inlineCode",{parentName:"li"},"node16-win-x64"))),(0,l.kt)("p",null,"Once the executables are ready, Github bot will add a comment with the commands in the pull request."),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/175012070-f5f3e7b8-6dc5-4d1c-9f7e-654bc5039521.png",alt:"image"})),(0,l.kt)("p",null,"NocoDB creates Docker and Binaries for each PR."),(0,l.kt)("p",null,"This is to"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"reduce pull request cycle time"),(0,l.kt)("li",{parentName:"ul"},"allow issue reporters / reviewers to verify the fix without setting up their local machines")))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3720c009.338a7bf9.js b/packages/noco-docs/dist/assets/js/3720c009.338a7bf9.js new file mode 100644 index 0000000000..5b4d88503d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3720c009.338a7bf9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3751],{76495:(e,t,a)=>{a.r(t),a.d(t,{default:()=>h});var l=a(67294),n=a(86010),r=a(97325);const c=()=>(0,r.I)({id:"theme.tags.tagsPageTitle",message:"Tags",description:"The title of the tag list page"});var s=a(35463),o=a(23702),m=a(91764),g=a(53852);const u={tag:"tag_Nnez"};function i(e){let{letterEntry:t}=e;return l.createElement("article",null,l.createElement("h2",null,t.letter),l.createElement("ul",{className:"padding--none"},t.tags.map((e=>l.createElement("li",{key:e.permalink,className:u.tag},l.createElement(g.Z,e))))),l.createElement("hr",null))}function E(e){let{tags:t}=e;const a=function(e){const t={};return Object.values(e).forEach((e=>{const a=function(e){return e[0].toUpperCase()}(e.label);t[a]??=[],t[a].push(e)})),Object.entries(t).sort(((e,t)=>{let[a]=e,[l]=t;return a.localeCompare(l)})).map((e=>{let[t,a]=e;return{letter:t,tags:a.sort(((e,t)=>e.label.localeCompare(t.label)))}}))}(t);return l.createElement("section",{className:"margin-vert--lg"},a.map((e=>l.createElement(i,{key:e.letter,letterEntry:e}))))}var p=a(33647);function h(e){let{tags:t}=e;const a=c();return l.createElement(s.FG,{className:(0,n.Z)(o.k.wrapper.docsPages,o.k.page.docsTagsListPage)},l.createElement(s.d,{title:a}),l.createElement(p.Z,{tag:"doc_tags_list"}),l.createElement(m.Z,null,l.createElement("div",{className:"container margin-vert--lg"},l.createElement("div",{className:"row"},l.createElement("main",{className:"col col--8 col--offset-2"},l.createElement("h1",null,a),l.createElement(E,{tags:t}))))))}},53852:(e,t,a)=>{a.d(t,{Z:()=>s});var l=a(67294),n=a(86010),r=a(83699);const c={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};function s(e){let{permalink:t,label:a,count:s}=e;return l.createElement(r.Z,{href:t,className:(0,n.Z)(c.tag,s?c.tagWithCount:c.tagRegular)},a,s&&l.createElement("span",null,s))}}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3a7c0cf6.562915c6.js b/packages/noco-docs/dist/assets/js/3a7c0cf6.562915c6.js new file mode 100644 index 0000000000..c525791161 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3a7c0cf6.562915c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2533],{30637:o=>{o.exports=JSON.parse('{"label":"Collaboration","permalink":"/tags/collaboration","allTagsPath":"/tags","count":8,"items":[{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/collaboration/base-collaboration"},{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"},{"id":"collaboration/oss-specific-details","title":"In Open Source","description":"This article explains specifics of User management in OSS.","permalink":"/collaboration/oss-specific-details"},{"id":"bases/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/bases/share-base"},{"id":"collaboration/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/collaboration/share-base"},{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/collaboration/workspace-collaboration"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3aad05b1.104008e1.js b/packages/noco-docs/dist/assets/js/3aad05b1.104008e1.js new file mode 100644 index 0000000000..0308fe7af6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3aad05b1.104008e1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3512],{28445:e=>{e.exports=JSON.parse('{"label":"Account Settings","permalink":"/tags/account-settings","allTagsPath":"/tags","count":3,"items":[{"id":"account-settings/api-tokens","title":"API tokens","description":"This article explains how to create and delete API Tokens.","permalink":"/account-settings/api-tokens"},{"id":"account-settings/oss-specific-details","title":"In Open Source","description":"This article explains Account settings specifics in Open source NocoDB.","permalink":"/account-settings/oss-specific-details"},{"id":"account-settings/profile-page","title":"Profile page","description":"This article explains how to manage your profile page.","permalink":"/account-settings/profile-page"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3ac80ba6.422c9557.js b/packages/noco-docs/dist/assets/js/3ac80ba6.422c9557.js new file mode 100644 index 0000000000..7cddc3b223 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3ac80ba6.422c9557.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3515],{21504:e=>{e.exports=JSON.parse('{"label":"Data Sources","permalink":"/tags/data-sources","allTagsPath":"/tags","count":1,"items":[{"id":"data-source/data-source-overview","title":"Data sources overview","description":"NocoDB Data-Source sync, access control & re-config","permalink":"/data-source/data-source-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/3da8114c.ab71d86c.js b/packages/noco-docs/dist/assets/js/3da8114c.ab71d86c.js new file mode 100644 index 0000000000..d093e15c26 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/3da8114c.ab71d86c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3338],{54021:e=>{e.exports=JSON.parse('{"label":"Workspaces","permalink":"/tags/workspaces","allTagsPath":"/tags","count":5,"items":[{"id":"workspaces/actions-on-workspace","title":"Actions on workspace","description":"This article explains how to rename or delete a workspace.","permalink":"/workspaces/actions-on-workspace"},{"id":"workspaces/create-workspace","title":"Create workspace","description":"Learn how to create a workspace in NocoDB","permalink":"/workspaces/create-workspace"},{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/collaboration/workspace-collaboration"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"},{"id":"workspaces/workspace-overview","title":"Workspace overview","description":"This article briefs the concept of workspaces in NocoDB.","permalink":"/workspaces/workspace-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/408139c4.6b2f2ba2.js b/packages/noco-docs/dist/assets/js/408139c4.6b2f2ba2.js new file mode 100644 index 0000000000..3b511bbce4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/408139c4.6b2f2ba2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8248],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var r=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var i=r.createContext({}),l=function(e){var t=r.useContext(i),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},c=function(e){var t=l(e.components);return r.createElement(i.Provider,{value:t},e.children)},p="mdxType",g={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,o=e.originalType,i=e.parentName,c=u(e,["components","mdxType","originalType","parentName"]),p=l(n),d=a,f=p["".concat(i,".").concat(d)]||p[d]||g[d]||o;return n?r.createElement(f,s(s({ref:t},c),{},{components:n})):r.createElement(f,s({ref:t},c))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=n.length,s=new Array(o);s[0]=d;var u={};for(var i in t)hasOwnProperty.call(t,i)&&(u[i]=t[i]);u.originalType=e,u[p]="string"==typeof e?e:a,s[1]=u;for(var l=2;l{n.r(t),n.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>g,frontMatter:()=>o,metadata:()=>u,toc:()=>l});var r=n(87462),a=(n(67294),n(3905));const o={title:"Languages",description:"Multiple languages on Dashboard!"},s=void 0,u={unversionedId:"setup-and-usages/languages",id:"version-0.109.7/setup-and-usages/languages",title:"Languages",description:"Multiple languages on Dashboard!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/languages",permalink:"/0.109.7/setup-and-usages/languages",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md",tags:[],version:"0.109.7",sidebarPosition:180,frontMatter:{title:"Languages",description:"Multiple languages on Dashboard!"},sidebar:"tutorialSidebar",previous:{title:"Account Settings",permalink:"/0.109.7/setup-and-usages/account-settings"},next:{title:"Expanded Form",permalink:"/0.109.7/setup-and-usages/expanded-form"}},i={},l=[],c={toc:l},p="wrapper";function g(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"NocoDB supports multiple lanuages on dashboard. By default, English will be used. However, if you prefer to display in other languages, you can do the following steps to change the language."),(0,a.kt)("p",null,"Open ",(0,a.kt)("inlineCode",{parentName:"p"},"Project Menu")," (click on project name on left top to access Project menu)"),(0,a.kt)("img",{width:"505",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194849611-7d037906-7c21-4797-8bb4-12edeafe8b7b.png"}),(0,a.kt)("p",null,"and select the one you prefer."),(0,a.kt)("p",null,"If you want to help translate, please check out ",(0,a.kt)("a",{href:"../engineering/translation",target:"_blank"},"i18n"),". If you want to request a new language, please create an issue on ",(0,a.kt)("a",{href:"https://github.com/nocodb/nocodb/issues",target:"_blank"},"Github"),"."))}g.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4145e2b1.0176e1e6.js b/packages/noco-docs/dist/assets/js/4145e2b1.0176e1e6.js new file mode 100644 index 0000000000..adb768720d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4145e2b1.0176e1e6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7530],{66146:e=>{e.exports=JSON.parse('{"label":"Hide","permalink":"/tags/hide","allTagsPath":"/tags","count":1,"items":[{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4248.e34bdfc3.js b/packages/noco-docs/dist/assets/js/4248.e34bdfc3.js new file mode 100644 index 0000000000..09a11767ce --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4248.e34bdfc3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4248],{74248:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});var a=n(67294),o=n(97325),l=n(35463),r=n(91764);function c(){return a.createElement(a.Fragment,null,a.createElement(l.d,{title:(0,o.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(o.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/44655909.b8726063.js b/packages/noco-docs/dist/assets/js/44655909.b8726063.js new file mode 100644 index 0000000000..4220eea987 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/44655909.b8726063.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2406],{89104:e=>{e.exports=JSON.parse('{"label":"Text based types","permalink":"/tags/text-based-types","allTagsPath":"/tags","count":5,"items":[{"id":"fields/field-types/text-based/email","title":"Email","description":"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/email"},{"id":"fields/field-types/text-based/long-text","title":"Long text","description":"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.","permalink":"/fields/field-types/text-based/long-text"},{"id":"fields/field-types/text-based/phonenumber","title":"Phone Number","description":"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.","permalink":"/fields/field-types/text-based/phonenumber"},{"id":"fields/field-types/text-based/single-line-text","title":"Single line text","description":"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.","permalink":"/fields/field-types/text-based/single-line-text"},{"id":"fields/field-types/text-based/url","title":"URL","description":"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/url"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/458ed5bd.2b599050.js b/packages/noco-docs/dist/assets/js/458ed5bd.2b599050.js new file mode 100644 index 0000000000..68576b5fb8 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/458ed5bd.2b599050.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2237],{61774:e=>{e.exports=JSON.parse('{"label":"Dashboard","permalink":"/tags/dashboard","allTagsPath":"/tags","count":1,"items":[{"id":"bases/base-overview","title":"Base overview","description":"This article explains the concept of bases in NocoDB.","permalink":"/bases/base-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/45c1aab2.804e189d.js b/packages/noco-docs/dist/assets/js/45c1aab2.804e189d.js new file mode 100644 index 0000000000..5e2f70a7d3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/45c1aab2.804e189d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4304],{70005:e=>{e.exports=JSON.parse('{"label":"Email","permalink":"/tags/email","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/text-based/email","title":"Email","description":"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/email"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4bab5100.3c691629.js b/packages/noco-docs/dist/assets/js/4bab5100.3c691629.js new file mode 100644 index 0000000000..f9e792ed71 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4bab5100.3c691629.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5207],{3905:(e,a,t)=>{t.d(a,{Zo:()=>c,kt:()=>d});var r=t(67294);function o(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function s(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);a&&(r=r.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,r)}return t}function n(e){for(var a=1;a=0||(o[t]=e[t]);return o}(e,a);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var l=r.createContext({}),b=function(e){var a=r.useContext(l),t=a;return e&&(t="function"==typeof e?e(a):n(n({},a),e)),t},c=function(e){var a=b(e.components);return r.createElement(l.Provider,{value:a},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var a=e.children;return r.createElement(r.Fragment,{},a)}},u=r.forwardRef((function(e,a){var t=e.components,o=e.mdxType,s=e.originalType,l=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=b(t),u=o,d=p["".concat(l,".").concat(u)]||p[u]||m[u]||s;return t?r.createElement(d,n(n({ref:a},c),{},{components:t})):r.createElement(d,n({ref:a},c))}));function d(e,a){var t=arguments,o=a&&a.mdxType;if("string"==typeof e||o){var s=t.length,n=new Array(s);n[0]=u;var i={};for(var l in a)hasOwnProperty.call(a,l)&&(i[l]=a[l]);i.originalType=e,i[p]="string"==typeof e?e:o,n[1]=i;for(var b=2;b{t.r(a),t.d(a,{assets:()=>l,contentTitle:()=>n,default:()=>m,frontMatter:()=>s,metadata:()=>i,toc:()=>b});var r=t(87462),o=(t(67294),t(3905));const s={title:"Base collaboration",description:"Invite team members to work on a base",tags:["Bases","Collaboration","Members","Invite","Roles","Permissions"],keywords:["NocoDB base","base collaboration","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},n=void 0,i={unversionedId:"bases/base-collaboration",id:"bases/base-collaboration",title:"Base collaboration",description:"Invite team members to work on a base",source:"@site/docs/040.bases/050.base-collaboration.md",sourceDirName:"040.bases",slug:"/bases/base-collaboration",permalink:"/bases/base-collaboration",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/050.base-collaboration.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Members",permalink:"/tags/members"},{label:"Invite",permalink:"/tags/invite"},{label:"Roles",permalink:"/tags/roles"},{label:"Permissions",permalink:"/tags/permissions"}],version:"current",sidebarPosition:50,frontMatter:{title:"Base collaboration",description:"Invite team members to work on a base",tags:["Bases","Collaboration","Members","Invite","Roles","Permissions"],keywords:["NocoDB base","base collaboration","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},sidebar:"tutorialSidebar",previous:{title:"Import Airtable to NocoDB",permalink:"/bases/import-base-from-airtable"},next:{title:"Share base",permalink:"/bases/share-base"}},l={},b=[{value:"Related articles",id:"related-articles",level:2}],c={toc:b},p="wrapper";function m(e){let{components:a,...s}=e;return(0,o.kt)(p,(0,r.Z)({},c,s,{components:a,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"A member added to a workspace will carry his assigned role specific permissions to all the base with in workspace. To override member permissions to your base, please follow steps outlined below:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Go to the left sidebar and select ",(0,o.kt)("inlineCode",{parentName:"li"},"Base name")," to access the ",(0,o.kt)("inlineCode",{parentName:"li"},"Base Dashboard.")),(0,o.kt)("li",{parentName:"ol"},"Click on the ",(0,o.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,o.kt)("li",{parentName:"ol"},"Use the dropdown menu to specify the access permissions for the member you wish to collaborate."),(0,o.kt)("li",{parentName:"ol"},"Finalize the process by assigning the desired role to the user.")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:t(60730).Z,width:"2878",height:"1408"})),(0,o.kt)("p",null,"More details about roles & permissions can be found ",(0,o.kt)("a",{parentName:"p",href:"/roles-and-permissions/roles-permissions-overview"},"here"),"."),(0,o.kt)("h2",{id:"related-articles"},"Related articles"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/create-base"},"Create an empty base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}m.isMDXComponent=!0},60730:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/base-collaboration-93b92d0cc8674c0bb061c23b121776af.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4c6b0ee7.d5e33ead.js b/packages/noco-docs/dist/assets/js/4c6b0ee7.d5e33ead.js new file mode 100644 index 0000000000..b256a72fab --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4c6b0ee7.d5e33ead.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6325],{3905:(t,e,n)=>{n.d(e,{Zo:()=>m,kt:()=>k});var a=n(67294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var d=a.createContext({}),p=function(t){var e=a.useContext(d),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},m=function(t){var e=p(t.components);return a.createElement(d.Provider,{value:e},t.children)},N="mdxType",u={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},s=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,d=t.parentName,m=o(t,["components","mdxType","originalType","parentName"]),N=p(n),s=r,k=N["".concat(d,".").concat(s)]||N[s]||u[s]||l;return n?a.createElement(k,i(i({ref:e},m),{},{components:n})):a.createElement(k,i({ref:e},m))}));function k(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=s;var o={};for(var d in e)hasOwnProperty.call(e,d)&&(o[d]=e[d]);o.originalType=t,o[N]="string"==typeof t?t:r,i[1]=o;for(var p=2;p{n.r(e),n.d(e,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var a=n(87462),r=(n(67294),n(3905));const l={title:"Environment variables",description:"Environment Variables for NocoDB!",hide_table_of_contents:!0,tags:["Open Source"],keywords:["NocoDB environment variables","NocoDB env variables","NocoDB envs","NocoDB env"]},i=void 0,o={unversionedId:"getting-started/self-hosted/environment-variables",id:"getting-started/self-hosted/environment-variables",title:"Environment variables",description:"Environment Variables for NocoDB!",source:"@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md",sourceDirName:"020.getting-started/050.self-hosted",slug:"/getting-started/self-hosted/environment-variables",permalink:"/getting-started/self-hosted/environment-variables",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/020.environment-variables.md",tags:[{label:"Open Source",permalink:"/tags/open-source"}],version:"current",sidebarPosition:20,frontMatter:{title:"Environment variables",description:"Environment Variables for NocoDB!",hide_table_of_contents:!0,tags:["Open Source"],keywords:["NocoDB environment variables","NocoDB env variables","NocoDB envs","NocoDB env"]},sidebar:"tutorialSidebar",previous:{title:"Installation",permalink:"/getting-started/self-hosted/installation"},next:{title:"Upgrading",permalink:"/getting-started/self-hosted/upgrading"}},d={},p=[],m={toc:p},N="wrapper";function u(t){let{components:e,...n}=t;return(0,r.kt)(N,(0,a.Z)({},m,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"For production use-cases, it is ",(0,r.kt)("strong",{parentName:"p"},"recommended")," to configure "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_DB"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_AUTH_JWT_SECRET"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_PUBLIC_URL"),", "),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"NC_REDIS_URL"))),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Variable"),(0,r.kt)("th",{parentName:"tr",align:null},"Comments"),(0,r.kt)("th",{parentName:"tr",align:null},"If absent"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,r.kt)("td",{parentName:"tr",align:null},"See our example database URLs ",(0,r.kt)("a",{parentName:"td",href:"https://github.com/nocodb/nocodb#docker"},"here"),"."),(0,r.kt)("td",{parentName:"tr",align:null},"A local SQLite will be created in root folder if ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not provided")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB_JSON"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," and value should be valid knex connection JSON"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB_JSON_FILE"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," and value should be a valid path to knex connection JSON"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DATABASE_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," and value should be in JDBC URL format"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DATABASE_URL_FILE"),(0,r.kt)("td",{parentName:"tr",align:null},"Can be used instead of ",(0,r.kt)("inlineCode",{parentName:"td"},"DATABASE_URL")," and value should be a valid path to file containing JDBC URL format."),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_AUTH_JWT_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"JWT secret used for auth and storing other secrets"),(0,r.kt)("td",{parentName:"tr",align:null},"A random secret will be generated")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"PORT"),(0,r.kt)("td",{parentName:"tr",align:null},"For setting app running port"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"8080"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_DEFAULT"),(0,r.kt)("td",{parentName:"tr",align:null},"Pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"25")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_MAX"),(0,r.kt)("td",{parentName:"tr",align:null},"Maximum allowed pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"1000")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DB_QUERY_LIMIT_MIN"),(0,r.kt)("td",{parentName:"tr",align:null},"Minimum allowed pagination limit"),(0,r.kt)("td",{parentName:"tr",align:null},"1")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_TOOL_DIR"),(0,r.kt)("td",{parentName:"tr",align:null},"App directory to keep metadata and app related files"),(0,r.kt)("td",{parentName:"tr",align:null},"Defaults to current working directory. In docker maps to ",(0,r.kt)("inlineCode",{parentName:"td"},"/usr/app/data/")," for mounting volume.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_PUBLIC_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Used for sending Email invitations"),(0,r.kt)("td",{parentName:"tr",align:null},"Best guess from http request params")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_JWT_EXPIRES_IN"),(0,r.kt)("td",{parentName:"tr",align:null},"JWT token expiry time"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"10h"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_CONNECT_TO_EXTERNAL_DB_DISABLED"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable Project creation with external database"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_INVITE_ONLY_SIGNUP"),(0,r.kt)("td",{parentName:"tr",align:null},"Removed since version 0.99.0 and now it's recommended to use ",(0,r.kt)("a",{parentName:"td",href:"/account-settings/oss-specific-details#enable--disable-signup"},"super admin settings menu"),". Allow users to signup only via invite URL, value should be any non-empty string."),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NUXT_PUBLIC_NC_BACKEND_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom Backend URL"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"http://localhost:8080")," will be used")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_REQUEST_BODY_SIZE"),(0,r.kt)("td",{parentName:"tr",align:null},"Request body size ",(0,r.kt)("a",{parentName:"td",href:"https://expressjs.com/en/resources/middleware/body-parser.html#limit"},"limit")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"1048576"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_EXPORT_MAX_TIMEOUT"),(0,r.kt)("td",{parentName:"tr",align:null},"After NC_EXPORT_MAX_TIMEOUT, CSV gets downloaded in batches"),(0,r.kt)("td",{parentName:"tr",align:null},"Default value 5000(in millisecond) will be used")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_TELE"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable telemetry"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DASHBOARD_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom dashboard URL path"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"/dashboard"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_GOOGLE_CLIENT_ID"),(0,r.kt)("td",{parentName:"tr",align:null},"Google client ID to enable Google authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_GOOGLE_CLIENT_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"Google client secret to enable Google authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MIGRATIONS_DISABLED"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable NocoDB migration"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MIN"),(0,r.kt)("td",{parentName:"tr",align:null},"If set to any non-empty string the default splash screen(initial welcome animation) and matrix screensaver will disable"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SENTRY_DSN"),(0,r.kt)("td",{parentName:"tr",align:null},"For Sentry monitoring"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_REDIS_URL"),(0,r.kt)("td",{parentName:"tr",align:null},"Custom Redis URL. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"redis://:authpassword@127.0.0.1:6380/4")),(0,r.kt)("td",{parentName:"tr",align:null},"Meta data will be stored in memory")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_ERR_REPORT"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable error reporting"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_CACHE"),(0,r.kt)("td",{parentName:"tr",align:null},"To be used only while debugging. On setting this to ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," - meta data be fetched from db instead of redis/cache."),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"false"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_ACCESS_KEY_ID"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 access key id"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_SECRET_ACCESS_KEY"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 secret access key"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_BUCKET"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 bucket"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"AWS_BUCKET_PATH"),(0,r.kt)("td",{parentName:"tr",align:null},"For Litestream - S3 bucket path (like folder within S3 bucket)"),(0,r.kt)("td",{parentName:"tr",align:null},"If Litestream is configured and ",(0,r.kt)("inlineCode",{parentName:"td"},"NC_DB")," is not present. SQLite gets backed up to S3")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_FROM"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - Email sender address"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_HOST"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - SMTP host value"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_PORT"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin - SMTP port value"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_USERNAME"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - SMTP username value for authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_PASSWORD"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - SMTP password value for authentication"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_SECURE"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - To enable secure set value as ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," any other value treated as false"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_SMTP_IGNORE_TLS"),(0,r.kt)("td",{parentName:"tr",align:null},"For SMTP plugin (Optional) - To ignore tls set value as ",(0,r.kt)("inlineCode",{parentName:"td"},"true")," any other value treated as false. For more info visit ",(0,r.kt)("a",{parentName:"td",href:"https://nodemailer.com/smtp/"},"https://nodemailer.com/smtp/")),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_BUCKET_NAME"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS S3 bucket name"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_REGION"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS S3 region"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_ACCESS_KEY"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS access key credential for accessing resource"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_S3_ACCESS_SECRET"),(0,r.kt)("td",{parentName:"tr",align:null},"For S3 storage plugin - AWS access secret credential for accessing resource"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ADMIN_EMAIL"),(0,r.kt)("td",{parentName:"tr",align:null},"For updating/creating super admin with provided email and password"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ATTACHMENT_FIELD_SIZE"),(0,r.kt)("td",{parentName:"tr",align:null},"For setting the attachment field size(in Bytes)"),(0,r.kt)("td",{parentName:"tr",align:null},"Defaults to 20MB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_ADMIN_PASSWORD"),(0,r.kt)("td",{parentName:"tr",align:null},"For updating/creating super admin with provided email and password. Your password should have at least 8 letters with one uppercase, one number and one special letter(Allowed special chars $&+,:;=?@#","|","'.^*()%!_-\" )"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NODE_OPTIONS"),(0,r.kt)("td",{parentName:"tr",align:null},"For passing Node.js ",(0,r.kt)("a",{parentName:"td",href:"https://nodejs.org/api/cli.html#node_optionsoptions"},"options")," to instance"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_MINIMAL_DBS"),(0,r.kt)("td",{parentName:"tr",align:null},"Create a new SQLite file for each project. All the db files are stored in ",(0,r.kt)("inlineCode",{parentName:"td"},"nc_minimal_dbs")," folder in current working directory. (This option restricts project creation on external sources)"),(0,r.kt)("td",{parentName:"tr",align:null})),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_DISABLE_AUDIT"),(0,r.kt)("td",{parentName:"tr",align:null},"Disable Audit Log"),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"false"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"NC_AUTOMATION_LOG_LEVEL"),(0,r.kt)("td",{parentName:"tr",align:null},"Possible Values: ",(0,r.kt)("inlineCode",{parentName:"td"},"OFF"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ERROR"),", ",(0,r.kt)("inlineCode",{parentName:"td"},"ALL"),". See ",(0,r.kt)("a",{parentName:"td",href:"/automation/webhook/create-webhook#call-log"},"Webhooks")," for details."),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OFF"))))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4cd0de40.694c573e.js b/packages/noco-docs/dist/assets/js/4cd0de40.694c573e.js new file mode 100644 index 0000000000..8bb9245e74 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4cd0de40.694c573e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1730],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var a=r(67294);function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function n(e){for(var t=1;t=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}var s=a.createContext({}),d=function(e){var t=a.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):n(n({},t),e)),r},p=function(e){var t=d(e.components);return a.createElement(s.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var r=e.components,l=e.mdxType,o=e.originalType,s=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),c=d(r),m=l,f=c["".concat(s,".").concat(m)]||c[m]||u[m]||o;return r?a.createElement(f,n(n({ref:t},p),{},{components:r})):a.createElement(f,n({ref:t},p))}));function f(e,t){var r=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var o=r.length,n=new Array(o);n[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[c]="string"==typeof e?e:l,n[1]=i;for(var d=2;d{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>n,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>d});var a=r(87462),l=(r(67294),r(3905));const o={title:"Barcode",tags:["Fields","Field types","Custom types","Barcode"]},n=void 0,i={unversionedId:"fields/field-types/custom-types/barcode",id:"fields/field-types/custom-types/barcode",title:"Barcode",description:"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.",source:"@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/barcode",permalink:"/fields/field-types/custom-types/barcode",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/050.barcode.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Barcode",permalink:"/tags/barcode"}],version:"current",sidebarPosition:50,frontMatter:{title:"Barcode",tags:["Fields","Field types","Custom types","Barcode"]},sidebar:"tutorialSidebar",previous:{title:"QR code",permalink:"/fields/field-types/custom-types/QR-code"},next:{title:"Geometry",permalink:"/fields/field-types/custom-types/geometry"}},s={},d=[{value:"Create a barcode field",id:"create-a-barcode-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Supported barcode types",id:"supported-barcode-types",level:3},{value:"Related fields",id:"related-fields",level:2}],p={toc:d},c="wrapper";function u(e){let{components:t,...o}=e;return(0,l.kt)(c,(0,a.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"Barcode")," is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string."),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:r(66907).Z,width:"1266",height:"594"})),(0,l.kt)("p",null,"The following field types are supported for the for reference field:"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Formula"),(0,l.kt)("li",{parentName:"ul"},"Single Line Text"),(0,l.kt)("li",{parentName:"ul"},"Long Text"),(0,l.kt)("li",{parentName:"ul"},"Phone Number"),(0,l.kt)("li",{parentName:"ul"},"URL"),(0,l.kt)("li",{parentName:"ul"},"Email")),(0,l.kt)("h2",{id:"create-a-barcode-field"},"Create a barcode field"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,l.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,l.kt)("li",{parentName:"ol"},"Select the field type as ",(0,l.kt)("inlineCode",{parentName:"li"},"Barcode")," from the dropdown."),(0,l.kt)("li",{parentName:"ol"},"Select the field to be used as the source for the barcode."),(0,l.kt)("li",{parentName:"ol"},"Select the barcode type from the dropdown."),(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,l.kt)("h3",{id:"cell-display"},"Cell display"),(0,l.kt)("p",null,"Cell displays the barcode generated from the source field. Click on the cell to open enlarged view of the QR code."),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:r(30518).Z,width:"948",height:"546"}),(0,l.kt)("br",{parentName:"p"}),"\n",(0,l.kt)("img",{alt:"image",src:r(30986).Z,width:"946",height:"386"})," "),(0,l.kt)("h3",{id:"supported-barcode-types"},"Supported barcode types"),(0,l.kt)("p",null,"NocoDB supports the following barcode types for the barcode field type."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"CODE128 "),(0,l.kt)("li",{parentName:"ul"},"EAN"),(0,l.kt)("li",{parentName:"ul"},"EAN-13"),(0,l.kt)("li",{parentName:"ul"},"EAN-8"),(0,l.kt)("li",{parentName:"ul"},"EAN-5"),(0,l.kt)("li",{parentName:"ul"},"EAN-2"),(0,l.kt)("li",{parentName:"ul"},"UPC (A)"),(0,l.kt)("li",{parentName:"ul"},"CODE39"),(0,l.kt)("li",{parentName:"ul"},"ITF-14"),(0,l.kt)("li",{parentName:"ul"},"MSI"),(0,l.kt)("li",{parentName:"ul"},"Pharma code"),(0,l.kt)("li",{parentName:"ul"},"Coda bar")),(0,l.kt)("h2",{id:"related-fields"},"Related fields"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/custom-types/QR-code"},"QR code"))))}u.isMDXComponent=!0},30518:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/barcode-cell-5e6612ed1460a61d5e51629f7b068d35.png"},30986:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/barcode-expand-29f49619f7b7dd014841681482c8a8af.png"},66907:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/barcode-cfb8c7c7c1b36117936f6faebfe6c05c.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4ed1386c.bd3a0126.js b/packages/noco-docs/dist/assets/js/4ed1386c.bd3a0126.js new file mode 100644 index 0000000000..2eca97fc2b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4ed1386c.bd3a0126.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1753],{3905:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>m});var n=o(67294);function r(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function a(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,n)}return o}function i(e){for(var t=1;t=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}var c=n.createContext({}),s=function(e){var t=n.useContext(c),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},u=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var o=e.components,r=e.mdxType,a=e.originalType,c=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=s(o),h=r,m=p["".concat(c,".").concat(h)]||p[h]||d[h]||a;return o?n.createElement(m,i(i({ref:t},u),{},{components:o})):n.createElement(m,i({ref:t},u))}));function m(e,t){var o=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=o.length,i=new Array(a);i[0]=h;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:r,i[1]=l;for(var s=2;s{o.r(t),o.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var n=o(87462),r=(o(67294),o(3905));const a={title:"FAQs",description:"General FAQs"},i=void 0,l={unversionedId:"FAQs",id:"version-0.109.7/FAQs",title:"FAQs",description:"General FAQs",source:"@site/versioned_docs/version-0.109.7/060.FAQs.md",sourceDirName:".",slug:"/FAQs",permalink:"/0.109.7/FAQs",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/060.FAQs.md",tags:[],version:"0.109.7",sidebarPosition:60,frontMatter:{title:"FAQs",description:"General FAQs"},sidebar:"tutorialSidebar",previous:{title:"i18n translation",permalink:"/0.109.7/engineering/translation"}},c={},s=[{value:"How to upgrade NocoDB ?",id:"how-to-upgrade-nocodb-",level:2},{value:"How to export CSV from the grid view ?",id:"how-to-export-csv-from-the-grid-view-",level:2},{value:"How to share the project with read only access ?",id:"how-to-share-the-project-with-read-only-access-",level:2},{value:"How to check my current NocoDB version ?",id:"how-to-check-my-current-nocodb-version-",level:2},{value:"How to check my Project info ?",id:"how-to-check-my-project-info-",level:2},{value:"What is available in free version ?",id:"what-is-available-in-free-version-",level:2},{value:"What is the difference between Auth Token and API Token ?",id:"what-is-the-difference-between-auth-token-and-api-token-",level:2},{value:"Do we plan to have an Enterprise Edition?",id:"do-we-plan-to-have-an-enterprise-edition",level:2},{value:"How do we decide if a feature is Enterprise or not ?",id:"how-do-we-decide-if-a-feature-is-enterprise-or-not-",level:2},{value:"What are the official socials for NocoDB?",id:"what-are-the-official-socials-for-nocodb",level:2},{value:"Is NocoDB available on the cloud?",id:"is-nocodb-available-on-the-cloud",level:2}],u={toc:s},p="wrapper";function d(e){let{components:t,...o}=e;return(0,r.kt)(p,(0,n.Z)({},u,o,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"how-to-upgrade-nocodb-"},"How to upgrade NocoDB ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Please see ",(0,r.kt)("a",{parentName:"li",href:"https://docs.nocodb.com/getting-started/upgrading"},"here")," ")),(0,r.kt)("h2",{id:"how-to-export-csv-from-the-grid-view-"},"How to export CSV from the grid view ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Available since ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/tag/0.81.1"},"0.81.1"))),(0,r.kt)("h2",{id:"how-to-share-the-project-with-read-only-access-"},"How to share the project with read only access ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Either you can invite by email with 'viewer' access control"),(0,r.kt)("li",{parentName:"ul"},"Share the base with publicly accessible link. Available since ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/releases/tag/0.82.0"},"0.82.0")," ")),(0,r.kt)("h2",{id:"how-to-check-my-current-nocodb-version-"},"How to check my current NocoDB version ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"You can hover the NocoDB icon on the top left corner or check ",(0,r.kt)("inlineCode",{parentName:"li"},"PackageVersion")," in Project info.")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/192435277-1b1715b9-5885-4e15-861f-4f95bb60294b.png",alt:"image"})),(0,r.kt)("h2",{id:"how-to-check-my-project-info-"},"How to check my Project info ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"You can click on top right icon and click ",(0,r.kt)("inlineCode",{parentName:"li"},"Copy Project Info"),".")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/192435381-e01013b1-7f87-4d3f-b443-420e685f8c41.png",alt:"image"})),(0,r.kt)("p",null,"You should see the similar result as below."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"Node: **v16.14.0**\nArch: **arm64**\nPlatform: **darwin**\nDocker: **false**\nDatabase: **mysql2**\nProjectOnRootDB: **true**\nRootDB: **mysql2**\nPackageVersion: **0.97.0**\n")),(0,r.kt)("h2",{id:"what-is-available-in-free-version-"},"What is available in free version ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/orgs/nocodb/projects/13"},"Detailed comparison of NocoDB's generous CE compared to others is here"),"."),(0,r.kt)("li",{parentName:"ul"},"NocoDB has just one version that is free & open source."),(0,r.kt)("li",{parentName:"ul"},"In it you will notice advanced features are all available for free.",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"ACL"),(0,r.kt)("li",{parentName:"ul"},"Collaboration"),(0,r.kt)("li",{parentName:"ul"},"Advanced Views : Form View, Gallery View & Kanban View"),(0,r.kt)("li",{parentName:"ul"},"Share View"),(0,r.kt)("li",{parentName:"ul"},"Embed View "),(0,r.kt)("li",{parentName:"ul"},"Password protected View"),(0,r.kt)("li",{parentName:"ul"},"Automations"),(0,r.kt)("li",{parentName:"ul"},"API Token Support"))),(0,r.kt)("li",{parentName:"ul"},"And we would never move these features from free to an enterprise version of NocoDB."),(0,r.kt)("li",{parentName:"ul"},"There is no limitations to number of projects, rows or columns either.")),(0,r.kt)("h2",{id:"what-is-the-difference-between-auth-token-and-api-token-"},"What is the difference between Auth Token and API Token ?"),(0,r.kt)("p",null,"Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable ",(0,r.kt)("inlineCode",{parentName:"p"},"NC_JWT_EXPIRES_IN"),". If you are passing Auth Token, make sure that the header is called ",(0,r.kt)("inlineCode",{parentName:"p"},"xc-auth"),"."),(0,r.kt)("p",null,"API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called ",(0,r.kt)("inlineCode",{parentName:"p"},"xc-token"),"."),(0,r.kt)("h2",{id:"do-we-plan-to-have-an-enterprise-edition"},"Do we plan to have an Enterprise Edition?"),(0,r.kt)("p",null,"For features that make sense for enterprises like below - yes "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"SSO, SLA, Organisation wide reports and analytics, "),(0,r.kt)("li",{parentName:"ul"},"Advanced Audit or ACL, "),(0,r.kt)("li",{parentName:"ul"},"Bespoke implementations & integrations,"),(0,r.kt)("li",{parentName:"ul"},"A hosted solution.\n")),(0,r.kt)("p",null,"And increasing number of our customers are requesting it. "),(0,r.kt)("h2",{id:"how-do-we-decide-if-a-feature-is-enterprise-or-not-"},"How do we decide if a feature is Enterprise or not ?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Depends on the effort and whether the intended users are enterprises.")),(0,r.kt)("h2",{id:"what-are-the-official-socials-for-nocodb"},"What are the official socials for NocoDB?"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Youtube: ",(0,r.kt)("a",{parentName:"li",href:"https://www.youtube.com/@nocodb"},"https://www.youtube.com/@nocodb")),(0,r.kt)("li",{parentName:"ul"},"Twitter: ",(0,r.kt)("a",{parentName:"li",href:"https://twitter.com/nocodb"},"https://twitter.com/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Discord: ",(0,r.kt)("a",{parentName:"li",href:"http://discord.nocodb.com/"},"http://discord.nocodb.com/")),(0,r.kt)("li",{parentName:"ul"},"GitHub: ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb"},"https://github.com/nocodb/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Community Forums: ",(0,r.kt)("a",{parentName:"li",href:"https://community.nocodb.com/"},"https://community.nocodb.com/")),(0,r.kt)("li",{parentName:"ul"},"LinkedIn: ",(0,r.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nocodb"},"https://www.linkedin.com/company/nocodb")),(0,r.kt)("li",{parentName:"ul"},"Reddit: ",(0,r.kt)("a",{parentName:"li",href:"https://www.reddit.com/r/NocoDB/"},"https://www.reddit.com/r/NocoDB/"))),(0,r.kt)("h2",{id:"is-nocodb-available-on-the-cloud"},"Is NocoDB available on the cloud?"),(0,r.kt)("p",null,"Soon! NocoDB is currently developing cloud infrastructure.\nTo join the upcoming FREE private beta program, ",(0,r.kt)("a",{parentName:"p",href:"https://docs.google.com/forms/d/e/1FAIpQLSfKLe8Rcrq0uo2_jM5W1kbVBbzDiQ3IvlP8Iov61FTekVAvzA/viewform"},"fill out this form here")," and be the first to try it!"))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4efb7b3c.c65f722d.js b/packages/noco-docs/dist/assets/js/4efb7b3c.c65f722d.js new file mode 100644 index 0000000000..c4bda49e21 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4efb7b3c.c65f722d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3755],{3905:(e,A,t)=>{t.d(A,{Zo:()=>C,kt:()=>u});var g=t(67294);function r(e,A,t){return A in e?Object.defineProperty(e,A,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[A]=t,e}function n(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var g=Object.getOwnPropertySymbols(e);A&&(g=g.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,g)}return t}function i(e){for(var A=1;A=0||(r[t]=e[t]);return r}(e,A);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(g=0;g=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var a=g.createContext({}),E=function(e){var A=g.useContext(a),t=A;return e&&(t="function"==typeof e?e(A):i(i({},A),e)),t},C=function(e){var A=E(e.components);return g.createElement(a.Provider,{value:A},e.children)},o="mdxType",c={inlineCode:"code",wrapper:function(e){var A=e.children;return g.createElement(g.Fragment,{},A)}},l=g.forwardRef((function(e,A){var t=e.components,r=e.mdxType,n=e.originalType,a=e.parentName,C=I(e,["components","mdxType","originalType","parentName"]),o=E(t),l=r,u=o["".concat(a,".").concat(l)]||o[l]||c[l]||n;return t?g.createElement(u,i(i({ref:A},C),{},{components:t})):g.createElement(u,i({ref:A},C))}));function u(e,A){var t=arguments,r=A&&A.mdxType;if("string"==typeof e||r){var n=t.length,i=new Array(n);i[0]=l;var I={};for(var a in A)hasOwnProperty.call(A,a)&&(I[a]=A[a]);I.originalType=e,I[o]="string"==typeof e?e:r,i[1]=I;for(var E=2;E{t.r(A),t.d(A,{assets:()=>a,contentTitle:()=>i,default:()=>c,frontMatter:()=>n,metadata:()=>I,toc:()=>E});var g=t(87462),r=(t(67294),t(3905));const n={title:"Architecture overview",description:"Simple overview of NocoDB architecture",tags:["Engineering"],hide_table_of_contents:!0},i=void 0,I={unversionedId:"engineering/architecture",id:"engineering/architecture",title:"Architecture overview",description:"Simple overview of NocoDB architecture",source:"@site/docs/150.engineering/010.architecture.md",sourceDirName:"150.engineering",slug:"/engineering/architecture",permalink:"/engineering/architecture",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/010.architecture.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:10,frontMatter:{title:"Architecture overview",description:"Simple overview of NocoDB architecture",tags:["Engineering"],hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"In Open Source",permalink:"/account-settings/oss-specific-details"},next:{title:"Repository structure",permalink:"/engineering/repository-structure"}},a={},E=[],C={toc:E},o="wrapper";function c(e){let{components:A,...n}=e;return(0,r.kt)(o,(0,g.Z)({},C,n,{components:A,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"By default, if ",(0,r.kt)("inlineCode",{parentName:"p"},"NC_DB")," is not specified, then SQLite will be used to store your metadata. We suggest users to separate the metadata and user data in different databases."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:t(40309).Z,width:"528",height:"615"})),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Project Type"),(0,r.kt)("th",{parentName:"tr",align:null},"Metadata stored in"),(0,r.kt)("th",{parentName:"tr",align:null},"Data stored in"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Create new project"),(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Create new project with External Database"),(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,r.kt)("td",{parentName:"tr",align:null},"External Database")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"Create new project from Excel"),(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,r.kt)("td",{parentName:"tr",align:null},"NC_DB")))))}c.isMDXComponent=!0},40309:(e,A,t)=>{t.d(A,{Z:()=>g});const g="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhAAAAJnCAMAAADx+ZrCAAAC91BMVEUAAABERERCRERCRERDREUyl///gAD/gABNTU1NTU1NTU1XYWxOTk5MTExNTU1MTExMTExNTU2AgIBNTU2AgIFBQUFNTU1NTU1UVFRNTU2AgIBMTExMTExNTU1NTU1MTExMTExLS0xKSkpLTExNTU1MTExNTU2AgIBMTExNTU0AAABOTk+AgICAgICAgIBLS0sAAACAgIBMTEyAgID/gAAAAACAgICAgIAAAACAgICAgICAgICAgIAzmf9MTEz/gABNTU2BgYH9gAMJgMEAAAD/gQEzmf8ymf+AgICAgIAzmP8bgdX/gAAymf//gAAAAACAgIAzmf8ymf8AAAAymf8AAAAAAACAgID/gABLS0v/gAABcLI0mv//gQFNTU00mf+AgID/gAAzmv+AgIAAAAD/gQD/gAD/gAD/gQAzmf8zmf+AgID/gAAymP//gQIAAAA0mv81mv8CcrIAAAAzmf8AbrAymf//gAD/gAAAAAD/fwAAbrAAAABDQ0X/fwD/gABDREUDcbMAb7Azmf8zmf8tlv9DREVDREWBgYGAgICAgIADcrMAcLFYjcFVjsgYGBn///8boeJDREX/gAAzmf9NTU2AgIAAbq//wICZzP8AAAD/mjT/v3/5/f//jBfW7P3x+f//jx54vP//o0ez2f//uXP/r1+93v9drv//5sz/y5b/nTr/lCeRyP//iA/M5v+g0P//9+3/tGf/qlT/hAir1f9Wq///4MD/27f/vHnE4v9zuf9IpP/q9v7/8uT/1av/0aL9/v/s9v+Mxv9ksv///Pn/zp3/xYr/woX/t23/oED/rFjk8v9Op///7Nn/p07C5/j/6dP/48aAwP9ptP9Dof//2LH/ly71+/+l0v89nv/c7/7/yJDg8P+HxP//9Om32/84m///795ttv//+fM3reb/06bS6f+Wy/9owexJtOiHzvEYm9xzxe3/3bvO6/levetTuOme1/Oo3PUhpOO04Pa74/YsqOWAy+8boOESkdIPi8x4yO5LJRe/AAAAkHRSTlMAQH+Av4A0gPvh6wMNtqho8sv6kg4TPx0H2/ZNJ/e/rtJxLV2FUzrs5oqcI4gYrDTEtZtysYvXzHQj8+HBvoFuRTa+8+vMsUhHPi0SoaBJQC6Vhl86C7OklHl47+zd1s1WVlRPKR0Sh/V6cF1AHuo2993c1qZuamZhUCspHuYlCtPFiGRhCaCNfWuPw4n44kKWY0T9AAAfcUlEQVR42uzdv4vacBjH8Ux26L/jfnBw23FzObjhhvY6HF1bOrT/wgOfRYgEQkggMQSMgcRFsyTGCIoOugiCiOP9DTW2nuau7fXHGb5pn9fcrW/U7zd57pFYsd68/li5uP5wcnn5/vritvLpzWeJ/Vc+XWz+929enVdPz67evcV3vLs6O62en796cfL++vaNxP5Vb25PXp09TMBRbVlrGf227g5G6cxWPORdVW+uP0rsn/Ly4/VN9R22VM1w28k8nN5Nhp0VPRY1l+NJsI57tU0j8rc+zs4vL15LrPxeX1yen2HLa7hzf0G/aditt2xsvTt99b7CvzFKrPLiWwt2q9Yd0p9bTeJ+qmCr+oF/V5TS7c0VACftx5MVPYtO0DNkbJye8NdHyXy+zGpQ3YCeW8fStk1cSKw03rx4C9i6T8fRDFsecHotsVJ4c/MW0AL6PfvDxTzuBpPxshn97F/3FOCMkyiDyhUwuvuFAsxuPE/a2fWDnF0/POYptpyOBq6ebBoxH/YxV4FXEhPd9VukPv3ccpoMZsjzHHXW0FquXteNltaYqY6HvNkgmS7pgAVU+cQhuBPAoB9r+pbbcHZnUaNf71nrqW8OFyt6bLUYmv40tHr1vrG7i3BS1/Kb9JWv4oxvMYX2CajT943X7ZGKLUXTYzOi3xOZsa4p2FJH7fU4+6hpoCoxgb34wedD4CrIeLIxv1vQn1vczQ3ZQ0ZxA1oAfCUhsisE9FDUNRwA9qj+57eVj++zRzYAx2jgUmLCOoFDD4wND4BcM+m5mTUZG2/5V4S4boEFHTINAI3ekI5j2GsAOK9ITEwVwKK9SQuAO6RjGrqchLgqgHd3eE+A/pKObdkH8F5iAqpAgWrSV3VA71AROjrwQmLiqUAewEsi2jCAORVlDpxLTDibIMhS0JgSWfCmVJypx98aAsqCoKEByImMkIoU4kxiosmC2AgGABwqlgM+aggnC2LLVCFTsWScSkww90GQAYWK5fDPSvHsg2gDJhVpwidPAe2DqAPygorTbHAQAjoMwobWpKI0R7A5CPEcBqHPYIdUjNDGTOcgxHMYRK2pAwOTjs8cAHqzxkGIJxcEUdAAtLhJx9SMNSANiDgIAeWD2AhTQOlPIzqOaNpXgDQk4iCE9CCI+1tLxQg79Nw6oaEAGAREHISgHgWRMesyAE9rr4f0XJbdtuYBSBOTiIMQVj6IvXEiI6OOakGT/s7K7w1sZFIrK4yDEFg+iJzOuq0pyNiGNVlG9Pui5cQyZsgoWnud3XtxEGLLB/FYJ0gGuxEsOx30kzgwF/RzCzOIk/4gtXcDX4Mk6FCGgxDeU0FsRRNLbzXUw7FORZ3JDW3UMtx+u97uu0ZrpDXkmaocDniqjZZuTSLKcBDlkA/iCZ1Jd54rIyfXwbw76dA3HESJvIfzKIinRc3OcmxO7qbd0Jr36r25FXandxNzvOw0I9rhIEqoAoz3QTwLDqLMKkCdg2CHQcDiINg+CBWIOQi2P2XUgZbJQbBdEDS24dXGHATb3UNEfQA2B8HuL6Z8VwEHwQ5uKhd28YM6/PfHxLO/unbhUbE8/jOm4snNZXSpSF2eyxBQLgjHp+JMHA5CQIdBzKDeUVHubGgchHhyj79HgL6gIix0QONThoByQdAUsK3jJ7GwbCDhY6eI8kHQUAMcN6BjClwHSH2+hxBSPoiNbguA3PbpOPy2DKDV5YspQeWD2BrXZwBst9uk59XsujYAuz7mm0ph5YPYCfSsCafRj8f0PMahnjoAZnrAV9ciyweR/2zfzVNMO/Q3FkFtpABfv4n4WYbg8kHkDbu7SR21lYT+MvrtMR0/TAYqMsqo3l3ywy3xPfka/jjuNzx8pcitfm896Tz5tv6612/JCr7yUn095KedJfFkEFtm/MeDOvGYH3+XyT6I2rMO6vR4UKecfieIvdV2UMd/MKjjbwd1VvyCTJkdBMFvTDEOgj1wAoWDYPklbBwEyy1h4yBYfgkbB8HyS9g4CLY/ZaRwEg6C7Y+dIdCYchBsFwSZKSCnHATbXUytejJ4tpMd3lQGClIqVspL2MTDS9jYj0f5Cl/CdiMxweyDqPESNpYPQi14CduMgxBP7vE3Cl3CBj5lCCgXBPWLWsLWAjQ+doooHwR1lYKWsDk9vocQ0oMgaKyr2yVsKzqO1XYJm6qbfDElpnwQmVWsAVCM+AhL2GJDAaDFK76pFNWjIDJmrXG0JWyNGi9hE1k+iL1xT3u2JWxNvzdQkdF6Y36WIbZ8EDnDsJ8690vYOvQnOvdL2JxUD4f8cEt4T7yGH03mxux+IGugz6fmgp62MKdzfXA/4iX3YzPip52l8DiIx1b+fCAr2PHUVBsNDFdvJz0rXk8DP5iuY6uXtHXXGIy0VPWwo8iD+STix9/l8VQQe9HQDxN3NFPwNGU2cpPQH0b8PkTZ/GoQ+TKC7uFHQu4DoxtsOuAXZEqrghlPbrEDV/A5CLZ3A5eDYHsfgTkHwfZeADoHwfY+AK0hB8HuXbwDjDEHwXY+nQOYcRBsn8QrntxiOa/PoFOxdA5CZBUoVCwFFYmJ66zwrXxnEhPYCVSfiuOrOJGYwF5WgZCKEoL3+grvFZBEVIQoAa/1LYFLQElWdGyrRAEuJSa+i1PAqR95cqvuAKcXEiuFiyrgtcJjNdEMWx5Q5RxK5LaKDc06wuSWpWGjeiuxUnl9coqNhmv5TXoeTd9yG9g4PXktsS/s3bGKwjAYwPFMdejW8V7ARadm6lIodCudi9ChQ2sH6WpxsLtr4BuFIhSs4uJiluJW66Dc4r3A4egznC0ETrgbjpuq32/ICyT8kwwh7RPElDXSM7++/++Hxis/p6xB44CgtkpGumWGrPGRlbvi71vErhTPfELT0kcJQa039TrUZY35seKHfH+5LU/F5283yuK0vF32+YFXxzlruLTjTQl6Jok0doyIPdik69Vim1W8zEteZdvFap1u2IPIcMYSZuFp+bY+GDoWNUw3CtnPwsg1DWo5w4Fu4+nxlciBP5FsL76vEeM++7FnSxM/kAl6eeqbShASZA26BCFB1UDDRCBB7gJgItD3QAAmAgmypiigKBpBqNaDWR/6M+gRhGp9QqAeERKAoC926yAHQRiIwvAsaYOlDQG7KKkKJhAXJhzAe7DhVu++KsQFi7p0ge87w5+ZRwyCGAQxCGIQxCCIQdAHg6ANBkEbDII2fhSExpuRVXjUkgYltB+pIA4vhayu6BjEv0gFkS8lzFG6uVPQhS+tNV6im3Q+m2gPQYJrVOkZxL4kL0SMMfgeE5r7CX07wPaIogBUQNZgFAencWYQ+/JtQ9RSA2iXl2FxuWXIFcbKIztW0DJMwaBkEE/27CZHVSAKoPAdFgUWEAJI+BHQNhgHJL0A4zZ64q5Or/cF9eW1aey8QU8k95uQOz+Bou6yPAvimKapL9LgyRSEz9XRI5U1hQiRdAY0iKX58QwhPXCeghDDvs/Oaw9f1lymIHKiLNQgluZZEG0cx86/4IiCkrhv2Jyw/kMQXulpEEvz0xli6CgkJkkHknwFUSZfgpANNLQaxLJ8yv9IA5Gg8uVRHohaGr26VhqE0iCUBqF+JYgVQFvJ903nYEQt3kwQjWvh+H3TaRG1eDNBZCKORMqijrvKw4aBi+wmF0sSFZncp+N7VOxE9m19OUtwGKzTn9AlmA8iJF4bGsN52nTu8FpWYjGWWu5TgxvIUkMLVUcTsxP1+uaDyIjzZDsWlNMnI0yqjkIso8SM98lwegv3IS5POKxwZfcm6vU9e0MkvgNuQZwHuAYhcqK7Tweg6A9MNqWBSINYgtkg/IJyS9y7WxCWbX8NIhdHdpuCbHsq2Hzg+vFc7cuwIRL1+maCaJsIG4RstoayJO4t5eoahPeO8W/Tuq7DD1Yjddeybdi96ZJrEWaCANPkEgwQc0gHkg5aY1KLB53cp7CGSyXhAM4fC7D6yViCT3nquP676Qzyr/vN++SPqUyq6yPNRS2BXl0rDUJpEEqDUBqE0iCUBqH+0SDUAw1CPdAg/rBLxwIAAAAAg/ytd8+hGGKEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghCD27dg1jSgO4PhbOnULmfIPdCldOjsJERQHxU1BcEsgkASTJVOSduryhB8RBzk5Du6Ww1vuhtMMubvRm1SoBoOSwQz+A0mXetJAXwtt2uqzz/f7DPcXfO939+D9GBgEYmAQiIFBIAYGgRgYBGJgEIiBQSAGBoEYGARiYBCIgUEgBgaBGBgEYmAQiIFBIAYG8Tdepw6SuUTpcv/V/mUpkUsepF4TJFMQr5OlD/t72Ux5N1Y8KhzCzw4LR8XYbjmT3dv/UEpiH5sbxEFir1wE1qQfOsG92vVrfle9D5ywPwFWsbyXOCBoo4JI5U4zsQIsOGrXf7DssdtURl6d/qzujZSmO7ath3kjDiwUYpnTXIrIbTOCSJayu0ew0O75mlKnf6auaH6vDQtHu9lSkkhrA4JIZAoQmRjdgevRv+e5g64xgUghkyByEjyIj6V0VEPYetBHdDlG+kMrjJpIlz4S+QgdRDJ9CABGTaHLptQMADhMy/ftEDiIZBoAAmtEV2NkBQAgXRLCBpErA8DdiK7S6A4AyjkiE1GDuAQAv0NXreMDwCWRiKBBZAHMa8rDtQmQJfIQM4g0wIDyMgBIE2kIGcQpDHXKjz6BUyILIYMowpjypEGRyELEIJIwpFzdDEGa06eIQcTAoHwZECMSeL/znlwtnmIpw5DyNZTjt3J7a+fN1ZudrW0ilixAk/LkynLyfLt1dXW19ZYI5hVAq0H5abQAXhEZbO/MgxBuQMyDCMFQKC+KAY4kQcxHhIADYh6E6UBfp3zofXBMWYLY3hFwQMyDqDVMgJ52Q1ftRusBmI2aLEGQtwIOiCgISt0AwLE8ukqe5QAELqXyBLH9TrwBsQhiLnp5+6q2qiY8Te1HY4hSQYNInZznqzzkz09ShD82iAVXBYBhy+7QZevYrSEAqC6logZxUY0/zR4rq/c4e4pXLwhvbBDsVTfomePR8mLQzR7MBdHVPFGDODuOzyr8zOLHZ4Q7Nohnt5YBkbBVcxv03zSaAzWESGBHhQkbxFn+S4WvL3neRbBBMLyxed+GiNO1p53P9M997kztrgOR9r059iilIgdxzKUHtohjwh8bBMtzrecVrGEYqL6luYpHf81TXM3y1SAcPi98Wa5HI2IHcRGv8Be/IOvBBsGqT21fNdrfr3W2Q8cIei21e+ebNdO/66qtXmA4Yfv7Bc+2ofr2tE4j4geRqs4q/M2qKcITG8RvXE/1AVMGg+lgoE+v6TcbEsRJvLIO8RPCExvES9UbXudWaTZdXbMHVs0a2JruNpvKbcdr1OmzDQvi/KmyDk+fCE9sEEuxqUHkZ5V1mOXJC2EQfFUfK+vwWCUvhEHwVa2sBwbxn8IgfoBBvAgGgUEwMAgMgoFBYBCMjQkCF3UwCEYaJpSvr+ydu4sTURSHp7GyCylk/gGbdUEExVexCKLYKAgWFgp22glWVnarqPwuXFZSDDNIYLYZkkYLkykmmzKBgLswu0NClhDcJIa8Hz4KZ2aT3c34jG7GzMz9muXeamE+7uPcc3IovcF5iKAJcYRSGW4S9VhdRgCFyMbgHrEsE2LOhXhLt6NwizfbtMSEmG8hIglKIxm4QSZCaYndMuZdCMiUbhU+YNZ8KGxRGmfXzvkXAvmSnSavYXZodpp/OubPOATQJkREhfwQDSbGgFRhoVbnXwhAtj5XtiDrmAW6XMhaysl+DUwBwuBXQoiGAN0UQhMNHYYXhACMiJVVm3xflHC4SMX3SSvnNmL4N1IJoG8LUZcg9AipqpraIeORBkK6AoZVqIQ0IXlDCJN3iuXEVnotKuJwMKJr6S3LBuWdr0PXECSUTSGqgAR0ugJ0oDYa2UIQEb0qhIaoo+cZIUxiO6vUYmNdkVP4F1LvIokktVjdifn9LQNCBaIpRA45Uodeh0qGqc5otCtEH/0qbNpeEsIkLyulDWqRfR0vxjJTN1DJxIrxUc1WMrEjZwLwuAWB5CGhkseQdIG2aYLJaLQrhIGvVUiDcg3oekuI0VpfWN3ey69PrG0WP6i/zdYvbq4l9rL1t9NmjWhQXjsh2FeISgMd0rKXC9LMDUcjW4gqMLDPEGWg7EEhbMR/KNQxfvf8vXT6KjfPnApPJwRpAJWv0HI6GkRDT8Jwf5RRgbx1y8hkBOge2zJcKdRZWuRDS9w8w4cWwlMJUQYqpA9ALZM2AJGMRxoAodEdxyFaXhfi8At1lk7yKysnubnmKR8ylZg6Ujlolh1/9vFOpNJVIvSl/YN9yw/2uHuAewe44uDqJEsTXJ/k7Pec+I7wJMfGHDU5bv6P/EI4kKFrV4nQF7YQi7cOsujg5HdcOHnByZnvOe3k/OnzTo47ODeCtwjxoV1WLEKLTIhZY24ZT4/zK/wzbr4xV4hz/DJbIWaOfai0lDjBzTOn+HPnlqc8Q5RbTIi/E8I+tC1zc8zREL98bLrn73oKEPpMCJ+m4Z86Nm0+hI5cT0ONCeFPIaZOkGlBJ6SWaZOKpElfSV3qqTkpRUhDau7P9JkQgRGiCwi5YZeUAQlo1QDkJDS70A7OMCECIwQZCgCEVhtiNYdcDUKddNCro3Fghm0ZARKCkGZPRyMHC6OGBiFlqDnU92fYGSJAQlQEw1QCQgdis1Jv1eztIQVdIPszHhDiIk3DXdI+re0sA2pfR78JrSOhvfv520CDjGa8IQRrwnZoW8ZXFRDEAWkLgNi1Pv/oCXQ04w0hWBO2QzxDDFrEplUmk5gz3olDsCZsrFBnQogka8LGhJi4ZVBXm7BRv94y/CME1lxswrbu22unj4SAvOFSE7atuH/jEH4SAoaSdaEJW1YRfRyY8pUQgB4tzbgJWymq+zpS6TMhTMRImjVhY0I4mrCtz6AJ23rcCMBbhi+FMMnbBdvjJmwq/gZ1rwnb1roSzQfjccuvQlho4w9qkky/VjZlMYXfkxLlTeV1Okl3WS1ERS04r51+FsJGMJf81Q06ZjubLllFncpOxKzYKsrvzAKuolnBFdlRrBLPUjq7TcdsrL7e/CAE7Pnb90LsFfdH44WEacZvMT1IFOLRWEbwVT4E66jzMzMcS4JzwcgIvkyQYT23fkJQM6ZYVz4HQReC9e10EHQhWGdfB0EXgvX+dhB4IbiHX4jbfHnI/TFMCLd5fNttI77cfsz9MUwI13n88JKb54iPlx5O4wMT4j/w/NWlzx/diFB9+vj50qvn3DQwIf4H1x49uf3KDW4/eeT2/cIphAJ3UbwoxF8RXgxznuMmTcJdkvQmFwwWQguc97hDZbiJTO9wwSDMr4Q8uETcp0lXu/Il6X0uGCyEVry4RBy9TGkUbhGl9DIXDL6xd8eqCkJxHMfPcqe2y516gR6g2fUcKBoMxyBoMxB08QWy3eGP0BDXoaEldNEhc6q1SQUxksTh+hj3ZFPQcqku6PEz+ARffshZ/nQgjEpOBOIB7KX+H5Z2xc76PjkQRiUnAiERIFrE+rvFiwhARIz4+mx3jE67khOBCAeQFKb+TmaRAHAEsaLb7iKj/FYSwQCZt3pXE+bKywAwOzncGKjCBAxU7vj6q/lODhRm5fmhJkEgJKkcUIfUscxXLYPlpAegOFVC7Kl4EFRfw1A65pvLSX/G6bLJj1DCWh8xqfpBUHMyHYxluMrcwN76+l/5WztwM7iSx4MpmSNW1SKIm97kAytQisK0sOkxJevn7Mf6Y7F//rbo4SW7SMMISgr+mPQQ22oURGkuzHhuBHeSnbsOvWBPG7GLfeCFa3eXwJ0Rx88EdmehxkHcSEQVh/wAc2NlJMNj8kgZc3jAD0WVsPj3yFQQd1p9qSeQiTaljQzFqTYhQk/qt1CD0SAaTRCNJojGL7t0TAAAAIAwyP6pvdcBMiAEmxCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEGfXXnYUBcIwDH/LKs6EABo5iTaRsDDxAoy30Zu5q/d+Jyi23emZzWwmNLwLkyp/a+MTJeg/5OVaWzwIQygFdGp/gen1rARM7SkEKION1pYCIvJGEF5EXBv6F4igPmEVYgO/JNTaUkBwHEFcaaSC6AVCck/sQo7SnkRrCwERNSYP6Hyuklz3MwgFXEO2lyCi09pSQHQEAV3DTlMvED3HkDGzglgOCPlsn58QbfsFRM0tJPHShFhriwExwP0awlVH8xlEbvBCjtIbVmuLAaELdKkh8uH2AlHFBl8hp6oy60XlokCkhk6dAyRf7kNEl83zPoSntWWA+FR+9qQhu7cCWEE82vX31rvYK4i1FcTackB4g6v/kTss4/JjdiBqZwKR0OlLFZzlgdWXimsmfc0HaIo/TJyM/tImCrSE5gYi46pHlz+A2Ov2DcQbx+8gqqCB4fuEg/5Wv4zfPeYGoiLXblvG+xHEEMdDEZc22TyeMr6OBqtpL/PL+K2wOOEmiaJgozp+d7w7iEwKSB4n3Se8IHLqXA5JtM00rYZLtD1KXVP+uqnA1wKaG4hoq42hMhQXdpa9YmKH/QNEHCmOsdPepiyD0rQNp0NPdKKWBT5AhMSPk27jxBHb4MvBOJSaVhXBiSw1NFDIOlpAMwORUylPDuctuwsRidS/FwHJA0RPbnrstNcShYcwH78QItrB4FkuqZ4gMuLppHEiTIo9WzmcFXOeVobrW9iFBHlCr4pUP7+ZgbgRyA2AEQQjhL2BJ4gdR3bY514M+N4bR5d7gyXVB4iQZDppBHE7wR2EdGU/rfrxse0Zq1WT6ec3MxBnYh2I22AE4cOQE2XhE8RgDCl22stvhyQiHN9uQ9dmt43F/QDhbtlNJ40TDof2DiJXQPZYednhuqV+J2jPt0IxrX5+MwOR4iikPpgRRNdT5did/QARY13stNeyPdSEO+K2or7iuC8QTRXheNNJ44TDzr+DsBeM+1htyjJ8xz9T7hsOiljCnYiZgVDDxjtBTH+h80qyGiqaCURP4GI17V2Ayk1PJLkPUaYXCDBVrumkcWIPjTGpg4W9plVYwq9C4QkC11vGn2nmBiLkIA0bvco9TX3b8873wdSTvMLV98aTpgkv//zaaeWeU40VqXTgoAU0NxCutfo/2a2W0NxAqNh7+h95+0FLaHYg1r60glj7zS4dCwAAAAAM8rfePYdiaIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYISIfbtZURyIwjBc+VlOI4jNDLYgHdFejIzQfTV9MYGsdH8WXu8kDgn5XAypwTDU6fdZiNT65aSOEgiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgsB8PtYf4Xr7BFqr5frt+rZergLQOS6v1+vyGICb1boNggGB0YhgQEBGBAMCY0cGBMZWvxgQruXzC0hIaXMrAxJCELgPopgTQSSmDSIL88kIIjEEgRmCuJRFuNlv37PhiCAS9JAgtmZ2vvVgrWo4Ioj0PCKIzDo/+53lPBxtCCI5jwvi1AfxNBxVBJGcRwRxslYTWrm19u2XqrE2BR4Z6XnIHaIqrTyETl43RX/0xKUyQaydIAj8PYgZEURq+HMLBAGCAJdKEAQIAgSBEYKAIAgIgoAgCAiCgCAICIKA+F9BHC77Z4L4AiZPiNqszDOC8G5yEGfr1E+vFUF4NjmIhfXq8+47QXg1OYiNjTWX/TeC8Gj6ltHYnTInCH+mB/Fud3ImhEPTg9iZKnhkeDQ9iGcTOZdKl6YHEUrpgS3Dp4ggLuMeWDudigjihQnxBUQE8cPGPgnCpYggQqlFEIRHMUF8mnglCIdigjhZJ8+HIgjCn5ggQv3nNln0RSwIwp2oILa3HsZFEIQ3UUEs+m0zH4ogCGeigth0PWgRO4LwRYKYSIsgCFckiBjFUARBeCJB/FMRe4LwRIOIL6J+4ZHhigQRf4+oMy6VvkgQsYrmwNrpjAQRreKHKW94txMEAYIAQYAgQBAgCIwQBARBQBAEfrN3hzYAwDAQA6t2/50bGhD4INLdDOZuBEFUBfGSBLGMxRKCYHbzDgAAAAAAAADw26tDGwliIIiizRePdDE0atJSB2BuYNkRmBsMsjQ5HP/R3u3qyIWws/1AScVLqpRSSiml9L4U4GyS0osyXOGSlJ6U9YzazX1IO7EqYeuwIdv25cVCZI5iVZq130z3pqgrpXfANhjMRlQ4lKn4yToKA6YDOYi7U57s6NAeRpXAJxpQzyKFqG01/ArCGfkst6fUfg2ic4oUvmQxpJyqJVAJwGbwpM6WdHfKEnG8YyLGlIaLUmIUdl87DG34nOvyPIwPoAwdUF+DCCwKVTasgOOrlBbopLTBzkF8AgU4QzpDpCvgIgf0iom0AnZJO8EfzrekD3PM/q8//vp1SEoppZRSSu/sB++2H4HfKCBFAAAAAElFTkSuQmCC"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/4f577b60.1e133094.js b/packages/noco-docs/dist/assets/js/4f577b60.1e133094.js new file mode 100644 index 0000000000..765d5a448f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/4f577b60.1e133094.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2922],{55913:e=>{e.exports=JSON.parse('{"label":"Records","permalink":"/tags/records","allTagsPath":"/tags","count":4,"items":[{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"},{"id":"records/create-record","title":"Create record","description":"Learn how to create a record in NocoDB.","permalink":"/records/create-record"},{"id":"records/expand-record","title":"Expanded record","description":"NocoDB provides Expanded Form to let you edit your data easily","permalink":"/records/expand-record"},{"id":"records/records-overview","title":"Records overview","description":"Learn how to create, import, and manage records in NocoDB.","permalink":"/records/records-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/523749b8.01d4c732.js b/packages/noco-docs/dist/assets/js/523749b8.01d4c732.js new file mode 100644 index 0000000000..9c5b1b3b07 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/523749b8.01d4c732.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9508],{64307:e=>{e.exports=JSON.parse('{"label":"Search","permalink":"/tags/search","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","permalink":"/table-operations/search"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/524f61e0.c5e4a4df.js b/packages/noco-docs/dist/assets/js/524f61e0.c5e4a4df.js new file mode 100644 index 0000000000..5c92163686 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/524f61e0.c5e4a4df.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5150],{84549:e=>{e.exports=JSON.parse('{"label":"Delete","permalink":"/tags/delete","allTagsPath":"/tags","count":7,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"},{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"},{"id":"tables/actions-on-table","title":"Actions on table","description":"Learn how to rename, duplicate, and delete a table in NocoDB.","permalink":"/tables/actions-on-table"},{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","permalink":"/automation/webhook/actions-on-webhook"},{"id":"workspaces/actions-on-workspace","title":"Actions on workspace","description":"This article explains how to rename or delete a workspace.","permalink":"/workspaces/actions-on-workspace"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/525fa7b4.cfbc35bd.js b/packages/noco-docs/dist/assets/js/525fa7b4.cfbc35bd.js new file mode 100644 index 0000000000..a7e01d09f0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/525fa7b4.cfbc35bd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3469],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>m});var l=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,l)}return r}function a(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(l=0;l=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=l.createContext({}),d=function(e){var t=l.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},c=function(e){var t=d(e.components);return l.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},f=l.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),p=d(r),f=n,m=p["".concat(s,".").concat(f)]||p[f]||u[f]||o;return r?l.createElement(m,a(a({ref:t},c),{},{components:r})):l.createElement(m,a({ref:t},c))}));function m(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,a=new Array(o);a[0]=f;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[p]="string"==typeof e?e:n,a[1]=i;for(var d=2;d{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>d});var l=r(87462),n=(r(67294),r(3905));const o={title:"QR code",tags:["Fields","Field types","Custom types","QR code"]},a=void 0,i={unversionedId:"fields/field-types/custom-types/QR-code",id:"fields/field-types/custom-types/QR-code",title:"QR code",description:"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.",source:"@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/QR-code",permalink:"/fields/field-types/custom-types/QR-code",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"QR code",permalink:"/tags/qr-code"}],version:"current",sidebarPosition:40,frontMatter:{title:"QR code",tags:["Fields","Field types","Custom types","QR code"]},sidebar:"tutorialSidebar",previous:{title:"Rating",permalink:"/fields/field-types/custom-types/rating"},next:{title:"Barcode",permalink:"/fields/field-types/custom-types/barcode"}},s={},d=[{value:"Create a QR code field",id:"create-a-qr-code-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Related fields",id:"related-fields",level:2}],c={toc:d},p="wrapper";function u(e){let{components:t,...o}=e;return(0,n.kt)(p,(0,l.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"QR code")," is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string."),(0,n.kt)("p",null,"The following field types are supported for the reference field:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Formula"),(0,n.kt)("li",{parentName:"ul"},"Single Line Text"),(0,n.kt)("li",{parentName:"ul"},"Long Text"),(0,n.kt)("li",{parentName:"ul"},"Phone Number"),(0,n.kt)("li",{parentName:"ul"},"URL"),(0,n.kt)("li",{parentName:"ul"},"Email")),(0,n.kt)("h2",{id:"create-a-qr-code-field"},"Create a QR code field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"QR Code")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"Select the field to be used as the source for the QR code."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:r(18615).Z,width:"1267",height:"578"})),(0,n.kt)("h3",{id:"cell-display"},"Cell display"),(0,n.kt)("p",null,"Cell displays the QR code generated from the source field. Click on the cell to open enlarged view of the QR code."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:r(28661).Z,width:"948",height:"666"}),(0,n.kt)("br",{parentName:"p"}),"\n",(0,n.kt)("img",{alt:"image",src:r(77282).Z,width:"947",height:"704"})," "),(0,n.kt)("h2",{id:"related-fields"},"Related fields"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/custom-types/barcode"},"Barcode"))))}u.isMDXComponent=!0},18615:(e,t,r)=>{r.d(t,{Z:()=>l});const l=r.p+"assets/images/QR-2786114c9e62771d79a0e3f73408dc6e.png"},28661:(e,t,r)=>{r.d(t,{Z:()=>l});const l=r.p+"assets/images/qr-cell-display-4c407736d9529d363e9c5a5894d89064.png"},77282:(e,t,r)=>{r.d(t,{Z:()=>l});const l=r.p+"assets/images/qr-expand-71565f5a001bd474c52fd39577539d73.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/529c2981.677765b3.js b/packages/noco-docs/dist/assets/js/529c2981.677765b3.js new file mode 100644 index 0000000000..c7e92f08b7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/529c2981.677765b3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7152],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>m});var n=a(67294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function r(e){for(var t=1;t=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var s=n.createContext({}),p=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):r(r({},t),e)),a},c=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},k=n.forwardRef((function(e,t){var a=e.components,o=e.mdxType,l=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),d=p(a),k=o,m=d["".concat(s,".").concat(k)]||d[k]||u[k]||l;return a?n.createElement(m,r(r({ref:t},c),{},{components:a})):n.createElement(m,r({ref:t},c))}));function m(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=a.length,r=new Array(l);r[0]=k;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[d]="string"==typeof e?e:o,r[1]=i;for(var p=2;p{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>u,frontMatter:()=>l,metadata:()=>i,toc:()=>p});var n=a(87462),o=(a(67294),a(3905));const l={title:"Webhooks",description:"Webhooks allows user to trigger on certain operations on following database operations"},r=void 0,i={unversionedId:"developer-resources/webhooks",id:"version-0.109.7/developer-resources/webhooks",title:"Webhooks",description:"Webhooks allows user to trigger on certain operations on following database operations",source:"@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md",sourceDirName:"040.developer-resources",slug:"/developer-resources/webhooks",permalink:"/0.109.7/developer-resources/webhooks",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md",tags:[],version:"0.109.7",sidebarPosition:40,frontMatter:{title:"Webhooks",description:"Webhooks allows user to trigger on certain operations on following database operations"},sidebar:"tutorialSidebar",previous:{title:"NocoDB SDK",permalink:"/0.109.7/developer-resources/sdk"},next:{title:"Upload via API",permalink:"/0.109.7/developer-resources/upload-via-api"}},s={},p=[{value:"Overview",id:"overview",level:2},{value:"Open View menu, click on Webhooks",id:"open-view-menu-click-on-webhooks",level:3},{value:"Click Add New Webhook",id:"click-add-new-webhook",level:3},{value:"Configure Webhook",id:"configure-webhook",level:3},{value:"Call Log",id:"call-log",level:2},{value:"Triggers",id:"triggers",level:2},{value:"Applications/services",id:"applicationsservices",level:3},{value:"Accessing Data: Handlebars",id:"accessing-data-handlebars",level:2},{value:"Example",id:"example",level:3},{value:"JSON format",id:"json-format",level:3},{value:"Additional references:",id:"additional-references",level:3},{value:"Discord",id:"discord",level:2},{value:"1. Create WebHook",id:"1-create-webhook",level:3},{value:"2. Install Plugin",id:"2-install-plugin",level:3},{value:"3. Configure",id:"3-configure",level:3},{value:"Slack",id:"slack",level:2},{value:"1. Create WebHook",id:"1-create-webhook-1",level:3},{value:"2. Install Plugin",id:"2-install-plugin-1",level:3},{value:"3. Configure Webhook",id:"3-configure-webhook",level:3},{value:"Microsoft Teams",id:"microsoft-teams",level:2},{value:"1. Create WebHook",id:"1-create-webhook-2",level:3},{value:"2. Install Plugin",id:"2-install-plugin-2",level:3},{value:"3. Configure",id:"3-configure-1",level:3},{value:"Webhook V2",id:"webhook-v2",level:2}],c={toc:p},d="wrapper";function u(e){let{components:t,...a}=e;return(0,o.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"overview"},"Overview"),(0,o.kt)("p",null,"Some types of notifications can be triggered by a webhook after a particular event."),(0,o.kt)("h3",{id:"open-view-menu-click-on-webhooks"},"Open ",(0,o.kt)("inlineCode",{parentName:"h3"},"View menu"),", click on ",(0,o.kt)("inlineCode",{parentName:"h3"},"Webhooks")),(0,o.kt)("img",{width:"442",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194849113-910ddafa-4b05-4492-a7a6-d9259d892eb9.png"}),(0,o.kt)("h3",{id:"click-add-new-webhook"},"Click ",(0,o.kt)("inlineCode",{parentName:"h3"},"Add New Webhook")),(0,o.kt)("img",{width:"686",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194849248-1d0b80c6-f65b-4075-8ebd-af7dc735c2c3.png"}),(0,o.kt)("h3",{id:"configure-webhook"},"Configure Webhook"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"General configurations",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Webhook Name"),(0,o.kt)("li",{parentName:"ul"},"Webhook Trigger"),(0,o.kt)("li",{parentName:"ul"},"Webhook Type"))),(0,o.kt)("li",{parentName:"ul"},"Webhook Type specific configuration : additional configuration details depending on webhook type selected"),(0,o.kt)("li",{parentName:"ul"},"Webhook Conditional Trigger",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Only records meeting the criteria will trigger webhook ")))),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/230288581-c613e591-1c32-4151-a2d1-df2bbf1367fd.png",alt:"Screenshot 2023-04-06 at 11 39 49 AM"})),(0,o.kt)("h2",{id:"call-log"},"Call Log"),(0,o.kt)("p",null,"Call Log allows user to check the call history of the hook. By default, it has been disabled. However, it can be configured by using environment variable ",(0,o.kt)("inlineCode",{parentName:"p"},"NC_AUTOMATION_LOG_LEVEL"),"."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=OFF"),": No logs will be displayed and no history will be inserted to meta database."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=ERROR"),": only error logs will be displayed and history of error logs will be inserted to meta database."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"NC_AUTOMATION_LOG_LEVEL=ALL"),": Both error and success logs will be displayed and history of both types of logs will be inserted to meta database. ",(0,o.kt)("strong",{parentName:"li"},"This option is only available for Enterprise Edition."))),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/228790148-1e3f21c7-9385-413a-843f-b93073ca6bea.png",alt:"image"})),(0,o.kt)("h2",{id:"triggers"},"Triggers"),(0,o.kt)("p",null,"Webhooks allows user to trigger on certain operations on following database operations"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"AFTER INSERT"),(0,o.kt)("li",{parentName:"ul"},"AFTER UPDATE"),(0,o.kt)("li",{parentName:"ul"},"AFTER DELETE")),(0,o.kt)("p",null,"The triggers will trigger asynchronously without blocking the actual operation."),(0,o.kt)("h3",{id:"applicationsservices"},"Applications/services"),(0,o.kt)("table",null,(0,o.kt)("thead",{parentName:"table"},(0,o.kt)("tr",{parentName:"thead"},(0,o.kt)("th",{parentName:"tr",align:null},"Trigger"),(0,o.kt)("th",{parentName:"tr",align:null},"Details"))),(0,o.kt)("tbody",{parentName:"table"},(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Email"),(0,o.kt)("td",{parentName:"tr",align:null},"Send email to certain email addresses")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Slack"),(0,o.kt)("td",{parentName:"tr",align:null},"Notify via Slack channel")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Microsoft Teams"),(0,o.kt)("td",{parentName:"tr",align:null},"Notify via Microsoft Teams channel")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Discord"),(0,o.kt)("td",{parentName:"tr",align:null},"Notify via Discord channel")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Mattermost"),(0,o.kt)("td",{parentName:"tr",align:null},"Notify via Mattermost channel")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Twilio"),(0,o.kt)("td",{parentName:"tr",align:null},"Send SMS to certain mobile numbers")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"Whatsapp Twilio"),(0,o.kt)("td",{parentName:"tr",align:null},"Send Whatsapp messages to numbers using Twilio")),(0,o.kt)("tr",{parentName:"tbody"},(0,o.kt)("td",{parentName:"tr",align:null},"URL"),(0,o.kt)("td",{parentName:"tr",align:null},"Invoke an HTTP API")))),(0,o.kt)("h2",{id:"accessing-data-handlebars"},"Accessing Data: Handlebars"),(0,o.kt)("admonition",{type:"caution"},(0,o.kt)("p",{parentName:"admonition"},"You can access data using handlebars for v1 webhooks only.")),(0,o.kt)("p",null,"The current row data and other details will be available in the hooks payload so the user can use ",(0,o.kt)("a",{parentName:"p",href:"https://handlebarsjs.com/guide/#simple-expressions"},"handlebar syntax")," to use data."),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"We are using ",(0,o.kt)("a",{parentName:"p",href:"https://handlebarsjs.com/"},"Handlebars")," library to parse the payload internally.")),(0,o.kt)("h3",{id:"example"},"Example"),(0,o.kt)("p",null,"For a table with column names (id, title, created_at, updated_at).",(0,o.kt)("br",{parentName:"p"}),"\n","For INSERT/ UPDATE based triggers, use following handlebars to access corresponding ",(0,o.kt)("strong",{parentName:"p"},"data")," fields."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"{{ ",(0,o.kt)("strong",{parentName:"li"},"data"),".id }}"),(0,o.kt)("li",{parentName:"ul"},"{{ ",(0,o.kt)("strong",{parentName:"li"},"data"),".title }}"),(0,o.kt)("li",{parentName:"ul"},"{{ ",(0,o.kt)("strong",{parentName:"li"},"data"),".created_at }}"),(0,o.kt)("li",{parentName:"ul"},"{{ ",(0,o.kt)("strong",{parentName:"li"},"data"),".updated_at }} ")),(0,o.kt)("p",null,"Note that, for Update trigger - all the fields in the ROW will be accessible, not just the field updated.\nFor DELETE based triggers, ",(0,o.kt)("strong",{parentName:"p"},"only")," {{ data.id }} is accessible representing ID of the column deleted."),(0,o.kt)("h3",{id:"json-format"},"JSON format"),(0,o.kt)("p",null,"Use {{ json data }} to dump complete data & user information available in JSON format"),(0,o.kt)("h3",{id:"additional-references"},"Additional references:"),(0,o.kt)("p",null,(0,o.kt)("a",{parentName:"p",href:"https://handlebarsjs.com/guide/"},"Handlebar Guide"),"."),(0,o.kt)("h1",{id:"application-guide"},"Application Guide"),(0,o.kt)("h2",{id:"discord"},"Discord"),(0,o.kt)("h3",{id:"1-create-webhook"},"1. Create WebHook"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"On Discord, open your Server Settings and head into the Integrations tab:"),(0,o.kt)("li",{parentName:"ul"},'Click the "Create Webhook" button to create a new webhook!')),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/155087088-8f9fd762-9ff9-41a6-aed4-0f22add77fe6.png",alt:"Screenshot 2022-02-22 at 1 21 59 PM"})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Choose channel to which this webhook will post to."),(0,o.kt)("li",{parentName:"ul"},"Copy webhook URL")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/155087126-c2cdd7b2-518a-46a5-82a5-aa90fe51a709.png",alt:"Screenshot 2022-02-22 at 1 23 18 PM"})),(0,o.kt)("p",null,"(Sample webhook URL: ",(0,o.kt)("a",{parentName:"p",href:"https://discord.com/api/webhooks/945558283756908644/GNUtiGuzfOky6wZ4ce30XuXc1sbPK3Od7EC-4t6hihh5Fovv6oU9OsdT6mGuoL1QlTzj"},"https://discord.com/api/webhooks/945558283756908644/GNUtiGuzfOky6wZ4ce30XuXc1sbPK3Od7EC-4t6hihh5Fovv6oU9OsdT6mGuoL1QlTzj"),").",(0,o.kt)("br",{parentName:"p"}),"\n","Detailed procedure for discord webhook described ",(0,o.kt)("a",{parentName:"p",href:"https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks"},"here"),"."),(0,o.kt)("h3",{id:"2-install-plugin"},"2. Install Plugin"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Open 'App Store' (under Settings), hover over Discord tile. Click 'Install'.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190066333-04bab4eb-f114-48e5-b3f9-6327cadb1ca7.png",alt:"Screenshot 2022-09-14 at 10 47 59 AM"})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Provide a name of your choice (not to be confused with Discord Channel name)."),(0,o.kt)("li",{parentName:"ul"},"Paste Discord Webhook URL copied from Step (1.) above.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190066365-90e3136b-db24-4514-aa89-c1fb371b33ee.png",alt:"Screenshot 2022-09-14 at 10 52 14 AM"})),(0,o.kt)("h3",{id:"3-configure"},"3. Configure"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Open project and choose a table."),(0,o.kt)("li",{parentName:"ul"},"Click 'More' > 'Webhooks'."),(0,o.kt)("li",{parentName:"ul"},"Click 'Create webhook'"),(0,o.kt)("li",{parentName:"ul"},"Configure webhook",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Title"),": Name of your choice to identify this Webhook."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Event"),": Trigger event. Choose between.",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"After Insert: Trigger event for new ROW insertion."),(0,o.kt)("li",{parentName:"ul"},"After Update: Trigger event for existing ROW updation."),(0,o.kt)("li",{parentName:"ul"},"After Delete: Trigger event for ROW deletion"))),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"On Condition"),": ","[Optional]"," Enable if you wish to associate additional condition/constraint with the trigger configured above."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Notification"),": Select 'Discord'."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Select Discord Channels"),": Select from the drop down list, channel name configured in Step (2). Please click on 'Reload' if drop down list is empty."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Body"),": Message to be posted over Discord channel, via webhooks on trigger of configured event.",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Body can contain plain text &"),(0,o.kt)("li",{parentName:"ul"},"Handlebars {{ }}")))))),(0,o.kt)("h2",{id:"slack"},"Slack"),(0,o.kt)("h3",{id:"1-create-webhook-1"},"1. Create WebHook"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Details to create slack webhook are captured ",(0,o.kt)("a",{parentName:"li",href:"https://api.slack.com/messaging/webhooks"},"here"))),(0,o.kt)("h3",{id:"2-install-plugin-1"},"2. Install Plugin"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Procedure remain same as listed for DISCORD channel configuration above")),(0,o.kt)("h3",{id:"3-configure-webhook"},"3. Configure Webhook"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Procedure remain same as listed for DISCORD channel configuration above")),(0,o.kt)("h2",{id:"microsoft-teams"},"Microsoft Teams"),(0,o.kt)("h3",{id:"1-create-webhook-2"},"1. Create WebHook"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"On Teams, open your channel, click on three-dots menu (far right) and select 'Connectors'")),(0,o.kt)("img",{width:"319",alt:"154971352-6912d53b-cf71-4edd-a319-1c85be85f0c5",src:"https://user-images.githubusercontent.com/86527202/155095745-91abd708-834f-4f0e-a33c-ac362e60af0f.png"}),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Select incoming webhook & click 'Configure'")),(0,o.kt)("img",{width:"442",alt:"154971434-0ced97f7-205a-4e2e-8f88-17092cb7771a",src:"https://user-images.githubusercontent.com/86527202/155095741-b23ad6b2-1276-46e3-8ada-0d0a871115bb.png"}),"- Create webhook, Copy webhook URL ![154971683-db16be7f-4f07-4447-8f2e-ac50e133bef8](https://user-images.githubusercontent.com/86527202/155095733-c339a914-5d78-408c-8f1e-9cd75a7783e8.png)",(0,o.kt)("h3",{id:"2-install-plugin-2"},"2. Install Plugin"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Open 'App Store' (under Settings), hover over 'Microsoft Teams' tile. Click 'Install'.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190066409-03311add-3b36-4521-acf7-dba5ffdef3fb.png",alt:"Screenshot 2022-09-14 at 10 53 22 AM"})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Provide a name of your choice (not to be confused with Teams Channel name)."),(0,o.kt)("li",{parentName:"ul"},"Paste MS Teams Webhook URL copied from Step (1.) above.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190066430-838eaa69-ac2c-49ce-a0eb-d84c97964f8b.png",alt:"Screenshot 2022-09-14 at 10 53 31 AM"})),(0,o.kt)("h3",{id:"3-configure-1"},"3. Configure"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Open project and choose a table."),(0,o.kt)("li",{parentName:"ul"},"Click 'More' > 'Webhooks'."),(0,o.kt)("li",{parentName:"ul"},"Click 'Create webhook'"),(0,o.kt)("li",{parentName:"ul"},"Configure webhook",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Title"),": Name of your choice to identify this Webhook."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Event"),": Trigger event. Choose between.",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"After Insert: Trigger event for new ROW insertion."),(0,o.kt)("li",{parentName:"ul"},"After Update: Trigger event for existing ROW updation."),(0,o.kt)("li",{parentName:"ul"},"After Delete: Trigger event for ROW deletion"))),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"On Condition"),": ","[Optional]"," Enable if you wish to associate additional condition/constraint with the trigger configured above."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Notification"),": Select 'Microsoft Teams'."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Select Teams Channels"),": Select from the drop down list, channel name configured in Step (2). Please click on 'Reload' if drop down list is empty."),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("strong",{parentName:"li"},"Body"),": Message to be posted over Teams channel, via webhooks on trigger of configured event.",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Body can contain plain text &"),(0,o.kt)("li",{parentName:"ul"},"Handlebars {{ }}")))))),(0,o.kt)("h2",{id:"webhook-v2"},"Webhook V2"),(0,o.kt)("p",null,"Webhook v2 is available after v0.106.0. Here's the differences."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Response Payload has been predefined and cannot configure in Body using Handlebars. The payload can be referenced under ",(0,o.kt)("inlineCode",{parentName:"li"},"Sample Payload")," in Hook detail page."),(0,o.kt)("li",{parentName:"ul"},"Support the following bulk operations:",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"AFTER BULK INSERT"),(0,o.kt)("li",{parentName:"ul"},"AFTER BULK UPDATE"),(0,o.kt)("li",{parentName:"ul"},"AFTER BULK DELETE")))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/52df1fbb.ee608d54.js b/packages/noco-docs/dist/assets/js/52df1fbb.ee608d54.js new file mode 100644 index 0000000000..02866c8b57 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/52df1fbb.ee608d54.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8395],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>g});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var p=r.createContext({}),l=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},s=function(e){var t=l(e.components);return r.createElement(p.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,p=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),u=l(n),d=o,g=u["".concat(p,".").concat(d)]||u[d]||m[d]||a;return n?r.createElement(g,i(i({ref:t},s),{},{components:n})):r.createElement(g,i({ref:t},s))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=d;var c={};for(var p in t)hasOwnProperty.call(t,p)&&(c[p]=t[p]);c.originalType=e,c[u]="string"==typeof e?e:o,i[1]=c;for(var l=2;l{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var r=n(87462),o=(n(67294),n(3905));const a={title:"Repository structure",description:"Repository Structure",tags:["Engineering"],hide_table_of_contents:!0},i=void 0,c={unversionedId:"engineering/repository-structure",id:"engineering/repository-structure",title:"Repository structure",description:"Repository Structure",source:"@site/docs/150.engineering/020.repository-structure.md",sourceDirName:"150.engineering",slug:"/engineering/repository-structure",permalink:"/engineering/repository-structure",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/020.repository-structure.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:20,frontMatter:{title:"Repository structure",description:"Repository Structure",tags:["Engineering"],hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Architecture overview",permalink:"/engineering/architecture"},next:{title:"Development setup",permalink:"/engineering/development-setup"}},p={},l=[],s={toc:l},u="wrapper";function m(e){let{components:t,...n}=e;return(0,o.kt)(u,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"We use ",(0,o.kt)("inlineCode",{parentName:"p"},"Lerna")," to manage multi-packages. We have the following ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/tree/master/packages"},"packages"),"."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-cli")," : A CLI to create NocoDB app.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb-sdk"),": API client sdk of nocodb.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-gui"),": NocoDB Frontend.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-lib-gui"),": The build version of ",(0,o.kt)("inlineCode",{parentName:"p"},"nc-gui")," which will be used in ",(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-plugin"),": Plugin template.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/noco-blog"),": NocoDB Blog which will be auto-released to ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/noco-blog"},"nocodb/noco-blog"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/noco-docs"),": NocoDB Documentation which will be auto-released to ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/noco-docs"},"nocodb/noco-docs"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb"),": NocoDB Backend, hosted in ",(0,o.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/nocodb"},"NPM"),"."))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5436f7e6.ae12cb28.js b/packages/noco-docs/dist/assets/js/5436f7e6.ae12cb28.js new file mode 100644 index 0000000000..812ca1db58 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5436f7e6.ae12cb28.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3939],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},f=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=c(n),f=r,m=d["".concat(s,".").concat(f)]||d[f]||u[f]||o;return n?a.createElement(m,i(i({ref:t},p),{},{components:n})):a.createElement(m,i({ref:t},p))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=f;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:r,i[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var a=n(87462),r=(n(67294),n(3905));const o={title:"Upload via API",description:"Upload files locally present or from public remote URL via API",hide_table_of_contents:!0},i=void 0,l={unversionedId:"developer-resources/upload-via-api",id:"version-0.109.7/developer-resources/upload-via-api",title:"Upload via API",description:"Upload files locally present or from public remote URL via API",source:"@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md",sourceDirName:"040.developer-resources",slug:"/developer-resources/upload-via-api",permalink:"/0.109.7/developer-resources/upload-via-api",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md",tags:[],version:"0.109.7",sidebarPosition:50,frontMatter:{title:"Upload via API",description:"Upload files locally present or from public remote URL via API",hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Webhooks",permalink:"/0.109.7/developer-resources/webhooks"},next:{title:"Architecture Overview",permalink:"/0.109.7/engineering/architecture"}},s={},c=[],p={toc:c},d="wrapper";function u(e){let{components:t,...n}=e;return(0,r.kt)(d,(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"Sample code to upload files via API is listed below.\nAssumes ",(0,r.kt)("inlineCode",{parentName:"p"},"http://localhost:8080/")," as the base URL for the API calls."),(0,r.kt)("h1",{id:"upload-local-file"},"Upload local file"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"let axios = require(\"axios\").default;\nlet FormData = require('form-data');\nlet fs = require('fs');\n\n// Configurations\n//\nconst project_id = '';\nconst table_id = '';\nconst xc_token = '';\nconst file_path = '';\n\n\n// Insert Image\n// @param image_path : local file path\n// @return : JSON object to be used in insert record API for attachment field\n//\nasync function insertImage (path) {\n const formData = new FormData();\n formData.append(\"file\", fs.createReadStream(path));\n const data = await axios({\n url: 'http://localhost:8080/api/v1/db/storage/upload',\n data: formData,\n headers:{\n 'Content-Type':`multipart/form-data;`,\n 'xc-auth': xc_token\n },\n method: 'post',\n\n // Optional : storage file path\n params: {\"path\": \"somePath\"}\n });\n return data;\n}\n\n// Insert record with attachment\n// Assumes a table with two columns :\n// 'Title' of type SingleLineText and\n// 'Attachment' of type Attachment\n//\nasync function uploadFileExample() {\n let response = await insertImage(file_path);\n\n let row = {\n \"Title\": \"2\",\n \"Attachment\": response.data\n };\n\n await axios({\n method: 'POST',\n url: `http://localhost:8080/api/v1/db/data/noco/${project_id}/${table_id}`,\n data: row,\n headers: {\n 'xc-auth': xc_token\n }\n });\n}\n\n(async () => {\n await uploadFileExample();\n})();\n")),(0,r.kt)("h1",{id:"upload-via-url"},"Upload via URL"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"let axios = require(\"axios\").default;\nlet FormData = require('form-data');\nlet fs = require('fs');\n\n// Configurations\n//\nconst project_id = '';\nconst table_id = '
';\nconst xc_token = '';\n\n// URL array : URLs of files to be uploaded\nconst URLs = [{ url: '' }, { url: '' }];\n\n// Insert Image\n// @param URLs : [] containing public URL for files to be uploaded\n// @return : JSON object to be used in insert record API for attachment field\n//\nasync function insertImageByURL (URL_array) {\n const data = await axios({\n url: 'http://localhost:8080/api/v1/db/storage/upload-by-url',\n data: URL_array,\n headers: {\n 'xc-auth': xc_token\n },\n method: 'post',\n\n // Optional : storage file path\n params: {\"path\": \"somePath\"}\n });\n return data;\n}\n\n// Insert record with attachment\n// Assumes a table with two columns :\n// 'Title' of type SingleLineText and\n// 'Attachment' of type Attachment\n//\nasync function uploadByUrlExample() {\n let response = await insertImageByURL(URLs);\n\n // Update two columns : Title and Attachment\n let row = {\n \"Title\": \"3\",\n \"Attachment\": response.data\n };\n\n await axios({\n method: 'POST',\n url: `http://localhost:8080/api/v1/db/data/noco/${project_id}/${table_id}`,\n data: row,\n headers: {\n 'xc-auth': xc_auth\n }\n });\n}\n\n(async () => {\n await uploadByUrlExample();\n})();\n")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/55156658.470750cd.js b/packages/noco-docs/dist/assets/js/55156658.470750cd.js new file mode 100644 index 0000000000..5fe251053a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/55156658.470750cd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1802],{80394:e=>{e.exports=JSON.parse('{"label":"Lookup","permalink":"/tags/lookup","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/links-based/lookup","title":"LookUp","description":"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer\'s name and address in the Orders table.","permalink":"/fields/field-types/links-based/lookup"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/55403ccd.7e8b474f.js b/packages/noco-docs/dist/assets/js/55403ccd.7e8b474f.js new file mode 100644 index 0000000000..8e62342336 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/55403ccd.7e8b474f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2650],{3905:(t,e,n)=>{n.d(e,{Zo:()=>o,kt:()=>s});var a=n(67294);function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function i(t){for(var e=1;e=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}var m=a.createContext({}),p=function(t){var e=a.useContext(m),n=e;return t&&(n="function"==typeof t?t(e):i(i({},e),t)),n},o=function(t){var e=p(t.components);return a.createElement(m.Provider,{value:e},t.children)},u="mdxType",k={inlineCode:"code",wrapper:function(t){var e=t.children;return a.createElement(a.Fragment,{},e)}},N=a.forwardRef((function(t,e){var n=t.components,r=t.mdxType,l=t.originalType,m=t.parentName,o=d(t,["components","mdxType","originalType","parentName"]),u=p(n),N=r,s=u["".concat(m,".").concat(N)]||u[N]||k[N]||l;return n?a.createElement(s,i(i({ref:e},o),{},{components:n})):a.createElement(s,i({ref:e},o))}));function s(t,e){var n=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=n.length,i=new Array(l);i[0]=N;var d={};for(var m in e)hasOwnProperty.call(e,m)&&(d[m]=e[m]);d.originalType=t,d[u]="string"==typeof t?t:r,i[1]=d;for(var p=2;p{n.r(e),n.d(e,{assets:()=>m,contentTitle:()=>i,default:()=>k,frontMatter:()=>l,metadata:()=>d,toc:()=>p});var a=n(87462),r=(n(67294),n(3905));const l={title:"Formulas",description:"NocoDB Formulas Syntaxes and Functions"},i=void 0,d={unversionedId:"setup-and-usages/formulas",id:"version-0.109.7/setup-and-usages/formulas",title:"Formulas",description:"NocoDB Formulas Syntaxes and Functions",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/formulas",permalink:"/0.109.7/setup-and-usages/formulas",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md",tags:[],version:"0.109.7",sidebarPosition:90,frontMatter:{title:"Formulas",description:"NocoDB Formulas Syntaxes and Functions"},sidebar:"tutorialSidebar",previous:{title:"Rollup",permalink:"/0.109.7/setup-and-usages/rollup"},next:{title:"Primary Key",permalink:"/0.109.7/setup-and-usages/primary-key"}},m={},p=[{value:"Adding formula column",id:"adding-formula-column",level:2},{value:"1. Click on '+' (Add column)",id:"1-click-on--add-column",level:3},{value:"2. Populate column Name",id:"2-populate-column-name",level:3},{value:"3. Select column Type as 'Formula'",id:"3-select-column-type-as-formula",level:3},{value:"4. Insert required formula",id:"4-insert-required-formula",level:3},{value:"5. Click on 'Save'",id:"5-click-on-save",level:3},{value:"Editing formula column",id:"editing-formula-column",level:2},{value:"Available Formula Features",id:"available-formula-features",level:2},{value:"Numeric Functions",id:"numeric-functions",level:3},{value:"Numeric Operators",id:"numeric-operators",level:3},{value:"String Functions",id:"string-functions",level:3},{value:"Date Functions",id:"date-functions",level:3},{value:"Logical Operators",id:"logical-operators",level:3},{value:"Conditional Expressions",id:"conditional-expressions",level:3}],o={toc:p},u="wrapper";function k(t){let{components:e,...n}=t;return(0,r.kt)(u,(0,a.Z)({},o,n,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"adding-formula-column"},"Adding formula column"),(0,r.kt)("img",{width:"990",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189108950-fba76e31-8ae4-4108-916b-e413c841f451.png"}),(0,r.kt)("h3",{id:"1-click-on--add-column"},"1. Click on '+' (Add column)"),(0,r.kt)("h3",{id:"2-populate-column-name"},"2. Populate column Name"),(0,r.kt)("h3",{id:"3-select-column-type-as-formula"},"3. Select column Type as 'Formula'"),(0,r.kt)("h3",{id:"4-insert-required-formula"},"4. Insert required formula"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"You can use explicit numerical values/ strings as needed, e.g. ",(0,r.kt)("inlineCode",{parentName:"li"},"123")," (numeric) or ",(0,r.kt)("inlineCode",{parentName:"li"},'"123"')," (string)."),(0,r.kt)("li",{parentName:"ul"},"You can reference column names in equation with ",(0,r.kt)("inlineCode",{parentName:"li"},"{}"),", e.g. ",(0,r.kt)("inlineCode",{parentName:"li"},"{column_name}"),", if the column name conflicts with literals"),(0,r.kt)("li",{parentName:"ul"},"Table below lists supported formula & associated syntax"),(0,r.kt)("li",{parentName:"ul"},"Nested formula (formula equation referring to another formula column) is supported")),(0,r.kt)("h3",{id:"5-click-on-save"},"5. Click on 'Save'"),(0,r.kt)("h2",{id:"editing-formula-column"},"Editing formula column"),(0,r.kt)("p",null,"Unlike other column types, formula cells cannot be modified by double-clicking since the value is generated based on the formula. Instead, the vaule can be changed by updating the formula in the column setting."),(0,r.kt)("img",{width:"253",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189109486-4d41f2b7-0a19-46ef-8bb4-a8d1aabd3592.png"}),(0,r.kt)("h2",{id:"available-formula-features"},"Available Formula Features"),(0,r.kt)("h3",{id:"numeric-functions"},"Numeric Functions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ABS")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ABS(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ABS({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Absolute value of the input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ADD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ADD(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ADD({Column1}, {Column2})")),(0,r.kt)("td",{parentName:"tr",align:null},"Sum of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"AVG")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AVG(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AVG({Column1}, {Column2})")),(0,r.kt)("td",{parentName:"tr",align:null},"Average of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"CEILING")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CEILING(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CEILING({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Rounded next largest integer value of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"EXP")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"EXP(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"EXP({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Exponential value of input parameter (",(0,r.kt)("inlineCode",{parentName:"td"},"e^x"),")")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"FLOOR")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"FLOOR(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"FLOOR({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Rounded largest integer less than or equal to input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"INT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"INT(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"INT({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Integer value of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"LOG")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOG([base], value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOG(10, {Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Logarithm of input parameter to the base (default = e) specified")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MAX")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MAX(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MAX({Column1}, {Column2}, {Column3})")),(0,r.kt)("td",{parentName:"tr",align:null},"Maximum value amongst input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MIN")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MIN(value1,[value2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MIN({Column1}, {Column2}, {Column3})")),(0,r.kt)("td",{parentName:"tr",align:null},"Minimum value amongst input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MOD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MOD(value1, value2)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MOD({Column}, 2)")),(0,r.kt)("td",{parentName:"tr",align:null},"Remainder after integer division of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"POWER")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"POWER(base, exponent)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"POWER({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"base")," to the ",(0,r.kt)("inlineCode",{parentName:"td"},"exponent")," power, as in ",(0,r.kt)("inlineCode",{parentName:"td"},"base ^ exponent"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"ROUND")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ROUND(value, precision)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"ROUND({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},"Round input ",(0,r.kt)("inlineCode",{parentName:"td"},"value")," to decimal place specified by ",(0,r.kt)("inlineCode",{parentName:"td"},"precision")," (Nearest integer if ",(0,r.kt)("inlineCode",{parentName:"td"},"precision")," not provided)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SQRT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SQRT(value)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SQRT({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Square root of the input parameter")))),(0,r.kt)("h3",{id:"numeric-operators"},"Numeric Operators"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Operator"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"+")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} + {Column2} + 2")),(0,r.kt)("td",{parentName:"tr",align:null},"Addition of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"-")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} - {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Subtraction of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"*")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} * {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Multiplication of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"/")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} / {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Division of numeric values")))),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"To change the order of arithmetic operation, you can use round bracket parantheses (). ",(0,r.kt)("br",null),"\nExample: ({Column1} + ({Column2} * {Column3}) / (3 - $Column4$ ))")),(0,r.kt)("h3",{id:"string-functions"},"String Functions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"CONCAT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CONCAT(str1, [str2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"CONCAT({Column1}, ' ', {Column2})")),(0,r.kt)("td",{parentName:"tr",align:null},"Concatenated string of input parameters")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"LEFT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LEFT(str1, n)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LEFT({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"n")," characters from the beginning of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"LEN")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LEN(str)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LEN({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Input parameter character length")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"LOWER")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOWER(str)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"LOWER({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Lower case converted string of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"MID")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MID(str, position, [count])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"MID({Column}, 3, 2)")),(0,r.kt)("td",{parentName:"tr",align:null},"Alias for ",(0,r.kt)("inlineCode",{parentName:"td"},"SUBSTR"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"REPEAT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"REPEAT(str, count)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"REPEAT({Column}, 2)")),(0,r.kt)("td",{parentName:"tr",align:null},"Specified copies of the input parameter string concatenated together")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"REPLACE")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"REPLACE(str, srchStr, rplcStr)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"REPLACE({Column}, 'int', 'num')")),(0,r.kt)("td",{parentName:"tr",align:null},"String, after replacing all occurrences of ",(0,r.kt)("inlineCode",{parentName:"td"},"srchStr")," with ",(0,r.kt)("inlineCode",{parentName:"td"},"rplcStr"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"RIGHT")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"RIGHT(str, n)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"RIGHT({Column}, 3)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"n")," characters from the end of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SEARCH")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SEARCH(str, srchStr)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SEARCH({Column}, 'str')")),(0,r.kt)("td",{parentName:"tr",align:null},"Index of ",(0,r.kt)("inlineCode",{parentName:"td"},"srchStr")," specified if found, 0 otherwise")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SUBSTR")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SUBTR(str, position, [count])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SUBSTR({Column}, 3, 2)")),(0,r.kt)("td",{parentName:"tr",align:null},"Substring of length 'count' of input string, from the postition specified")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"TRIM")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"TRIM(str)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"TRIM({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Remove trailing and leading whitespaces from input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"UPPER")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"UPPER(str)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"UPPER({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Upper case converted string of input parameter")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"URL")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"URL(str)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"URL({Column})")),(0,r.kt)("td",{parentName:"tr",align:null},"Convert to a hyperlink if it is a valid URL")))),(0,r.kt)("h3",{id:"date-functions"},"Date Functions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"),(0,r.kt)("th",{parentName:"tr",align:null},"Remark"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"NOW")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"NOW()")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"NOW()")),(0,r.kt)("td",{parentName:"tr",align:null},"2022-05-19 17:20:43"),(0,r.kt)("td",{parentName:"tr",align:null},"Returns the current time and day")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < {DATE_COL}, "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < date, "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If current date is less than {DATE_COL}, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"DATEADD")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATEADD(date \\| datetime, value, ["day" \\| "week" \\| "month" \\| "year"])')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'day')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14. The result is 2022-03-15."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'day')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'week')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-03-21 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'week')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'month')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-04-14 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'month')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(date, 1, 'year')")),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2023-03-14 03:14."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported. Example: ",(0,r.kt)("inlineCode",{parentName:"td"},"DATEADD(DATE_TIME_COL, -1, 'year')"))),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < DATEADD(date,10,\'day\'), "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'IF(NOW() < DATEADD(date,10,\'day\'), "true", "false")')),(0,r.kt)("td",{parentName:"tr",align:null},"If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false."),(0,r.kt)("td",{parentName:"tr",align:null},"DateTime columns and negative values are supported.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"DATETIME_DIFF")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATETIME_DIFF(date, date, ["milliseconds" \\| "ms" \\| "seconds" \\| "s" \\| "minutes" \\| "m" \\| "hours" \\| "h" \\| "days" \\| "d" \\| "weeks" \\| "w" \\| "months" \\| "M" \\| "quarters" \\| "Q" \\| "years" \\| "y"])')),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'DATETIME_DIFF("2022/10/14", "2022/10/15", "second")')),(0,r.kt)("td",{parentName:"tr",align:null},"Supposing {DATE_COL_1} is 2017-08-25 and {DATE_COL_2} is 2011-08-25. The result is 86400."),(0,r.kt)("td",{parentName:"tr",align:null},"Compares two dates and returns the difference in the unit specified. Positive integers indicate the second date being in the past compared to the first and vice versa for negative ones.")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'WEEKDAY(NOW(), "sunday")')),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 1"),(0,r.kt)("td",{parentName:"tr",align:null},"Get the week day of NOW() with the first day set as sunday")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"WEEKDAY")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"WEEKDAY(date, [startDayOfWeek])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"WEEKDAY(NOW())")),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 0"),(0,r.kt)("td",{parentName:"tr",align:null},"Returns the day of the week as an integer between 0 and 6 inclusive starting from Monday by default. You can optionally change the start day of the week by specifying in the second argument")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null}),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},'WEEKDAY(NOW(), "sunday")')),(0,r.kt)("td",{parentName:"tr",align:null},"If today is Monday, it returns 1"),(0,r.kt)("td",{parentName:"tr",align:null},"Get the week day of NOW() with the first day set as sunday")))),(0,r.kt)("h3",{id:"logical-operators"},"Logical Operators"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Operator"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"<")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} < {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Less than")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},">")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} > {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Greater than")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"<=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} <= {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Less than or equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},">=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} >= {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Greater than or equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"==")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} == {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"!=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} != {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Not equal to")))),(0,r.kt)("h3",{id:"conditional-expressions"},"Conditional Expressions"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Name"),(0,r.kt)("th",{parentName:"tr",align:null},"Syntax"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Output"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"IF")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"IF(expr, successCase, elseCase)")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"IF({Column} > 1, Value1, Value2)")),(0,r.kt)("td",{parentName:"tr",align:null},"successCase if ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluates to TRUE, elseCase otherwise")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"SWITCH")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SWITCH(expr, [pattern, value, ..., default])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"SWITCH({Column}, 1, 'One', 2, 'Two', '--')")),(0,r.kt)("td",{parentName:"tr",align:null},"Switch case value based on ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," output")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"AND")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AND(expr1, [expr2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"AND({Column} > 2, {Column} < 10)")),(0,r.kt)("td",{parentName:"tr",align:null},"TRUE if all ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluate to TRUE")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("strong",{parentName:"td"},"OR")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OR(expr1, [expr2,...])")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"OR({Column} > 2, {Column} < 10)")),(0,r.kt)("td",{parentName:"tr",align:null},"TRUE if at least one ",(0,r.kt)("inlineCode",{parentName:"td"},"expr")," evaluates to TRUE")))),(0,r.kt)("p",null,"Logical operators, along with Numerical operators can be used to build conditional ",(0,r.kt)("inlineCode",{parentName:"p"},"expressions"),". "),(0,r.kt)("p",null,"Examples: "),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},'IF({marksSecured} > 80, "GradeA", "GradeB") \n')),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"SWITCH({quarterNumber}, \n 1, 'Jan-Mar',\n 2, 'Apr-Jun',\n 3, 'Jul-Sep',\n 4, 'Oct-Dec',\n 'INVALID'\n)\n")))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/55960ee5.cbec5c8f.js b/packages/noco-docs/dist/assets/js/55960ee5.cbec5c8f.js new file mode 100644 index 0000000000..ea85aa5ca9 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/55960ee5.cbec5c8f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4121],{88070:e=>{e.exports=JSON.parse('[{"label":"Account Settings","permalink":"/tags/account-settings","count":3},{"label":"Api Tokens","permalink":"/tags/api-tokens","count":1},{"label":"Open Source","permalink":"/tags/open-source","count":5},{"label":"Profile","permalink":"/tags/profile","count":1},{"label":"Member","permalink":"/tags/member","count":4},{"label":"Webhook","permalink":"/tags/webhook","count":3},{"label":"Delete","permalink":"/tags/delete","count":7},{"label":"Duplicate","permalink":"/tags/duplicate","count":6},{"label":"Disable","permalink":"/tags/disable","count":1},{"label":"Enable","permalink":"/tags/enable","count":1},{"label":"Create","permalink":"/tags/create","count":6},{"label":"Overview","permalink":"/tags/overview","count":12},{"label":"Bases","permalink":"/tags/bases","count":8},{"label":"Rename","permalink":"/tags/rename","count":5},{"label":"Star","permalink":"/tags/star","count":1},{"label":"Relations","permalink":"/tags/relations","count":1},{"label":"Collaboration","permalink":"/tags/collaboration","count":8},{"label":"Members","permalink":"/tags/members","count":2},{"label":"Invite","permalink":"/tags/invite","count":4},{"label":"Roles","permalink":"/tags/roles","count":3},{"label":"Permissions","permalink":"/tags/permissions","count":3},{"label":"Dashboard","permalink":"/tags/dashboard","count":1},{"label":"Import","permalink":"/tags/import","count":3},{"label":"Share","permalink":"/tags/share","count":5},{"label":"Role","permalink":"/tags/role","count":2},{"label":"Workspace","permalink":"/tags/workspace","count":1},{"label":"Base","permalink":"/tags/base","count":1},{"label":"Views","permalink":"/tags/views","count":9},{"label":"Grid View","permalink":"/tags/grid-view","count":12},{"label":"Form View","permalink":"/tags/form-view","count":4},{"label":"Kanban View","permalink":"/tags/kanban-view","count":10},{"label":"Gallery View","permalink":"/tags/gallery-view","count":10},{"label":"Workspaces","permalink":"/tags/workspaces","count":5},{"label":"Data Sources","permalink":"/tags/data-sources","count":1},{"label":"Engineering","permalink":"/tags/engineering","count":8},{"label":"Fields","permalink":"/tags/fields","count":37},{"label":"Hide","permalink":"/tags/hide","count":1},{"label":"Display value","permalink":"/tags/display-value","count":2},{"label":"Sort","permalink":"/tags/sort","count":2},{"label":"Field types","permalink":"/tags/field-types","count":32},{"label":"Custom types","permalink":"/tags/custom-types","count":8},{"label":"Attachment","permalink":"/tags/attachment","count":1},{"label":"Barcode","permalink":"/tags/barcode","count":1},{"label":"Checkbox","permalink":"/tags/checkbox","count":1},{"label":"Geometry","permalink":"/tags/geometry","count":1},{"label":"JSON","permalink":"/tags/json","count":3},{"label":"QR code","permalink":"/tags/qr-code","count":1},{"label":"Rating","permalink":"/tags/rating","count":1},{"label":"Specific DB type","permalink":"/tags/specific-db-type","count":1},{"label":"Date & Time","permalink":"/tags/date-time","count":5},{"label":"Formula","permalink":"/tags/formula","count":6},{"label":"Links based types","permalink":"/tags/links-based-types","count":3},{"label":"Links","permalink":"/tags/links","count":1},{"label":"Lookup","permalink":"/tags/lookup","count":1},{"label":"Rollup","permalink":"/tags/rollup","count":1},{"label":"Numerical types","permalink":"/tags/numerical-types","count":4},{"label":"Currency","permalink":"/tags/currency","count":1},{"label":"Decimal","permalink":"/tags/decimal","count":1},{"label":"Number","permalink":"/tags/number","count":1},{"label":"Percent","permalink":"/tags/percent","count":1},{"label":"Select based types","permalink":"/tags/select-based-types","count":2},{"label":"Multi select","permalink":"/tags/multi-select","count":1},{"label":"Single select","permalink":"/tags/single-select","count":1},{"label":"Text based types","permalink":"/tags/text-based-types","count":5},{"label":"Email","permalink":"/tags/email","count":1},{"label":"Long text","permalink":"/tags/long-text","count":1},{"label":"Phone number","permalink":"/tags/phone-number","count":1},{"label":"Single line text","permalink":"/tags/single-line-text","count":1},{"label":"URL","permalink":"/tags/url","count":1},{"label":"Multi-fields editor","permalink":"/tags/multi-fields-editor","count":1},{"label":"Productivity hacks","permalink":"/tags/productivity-hacks","count":2},{"label":"Primary Key","permalink":"/tags/primary-key","count":1},{"label":"Getting Started","permalink":"/tags/getting-started","count":1},{"label":"Shortcuts","permalink":"/tags/shortcuts","count":2},{"label":"Records","permalink":"/tags/records","count":4},{"label":"Edit","permalink":"/tags/edit","count":1},{"label":"Expand","permalink":"/tags/expand","count":1},{"label":"Expanded record","permalink":"/tags/expanded-record","count":1},{"label":"Activity feed","permalink":"/tags/activity-feed","count":1},{"label":"Comments","permalink":"/tags/comments","count":1},{"label":"Table details","permalink":"/tags/table-details","count":1},{"label":"Table","permalink":"/tags/table","count":1},{"label":"Table operations","permalink":"/tags/table-operations","count":8},{"label":"Download","permalink":"/tags/download","count":1},{"label":"CSV","permalink":"/tags/csv","count":2},{"label":"XLSX","permalink":"/tags/xlsx","count":2},{"label":"Reorder","permalink":"/tags/reorder","count":1},{"label":"Show/Hide","permalink":"/tags/show-hide","count":1},{"label":"Cover image","permalink":"/tags/cover-image","count":1},{"label":"Filter","permalink":"/tags/filter","count":1},{"label":"Group by","permalink":"/tags/group-by","count":1},{"label":"Row height","permalink":"/tags/row-height","count":1},{"label":"Search","permalink":"/tags/search","count":1},{"label":"Tables","permalink":"/tags/tables","count":5},{"label":"Excel","permalink":"/tags/excel","count":1},{"label":"Form","permalink":"/tags/form","count":1}]')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/576905f1.a8188808.js b/packages/noco-docs/dist/assets/js/576905f1.a8188808.js new file mode 100644 index 0000000000..e141b236de --- /dev/null +++ b/packages/noco-docs/dist/assets/js/576905f1.a8188808.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5772],{3905:(e,n,t)=>{t.d(n,{Zo:()=>p,kt:()=>f});var o=t(67294);function r(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var n=1;n=0||(r[t]=e[t]);return r}(e,n);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var l=o.createContext({}),c=function(e){var n=o.useContext(l),t=n;return e&&(t="function"==typeof e?e(n):i(i({},n),e)),t},p=function(e){var n=c(e.components);return o.createElement(l.Provider,{value:n},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var n=e.children;return o.createElement(o.Fragment,{},n)}},u=o.forwardRef((function(e,n){var t=e.components,r=e.mdxType,a=e.originalType,l=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),d=c(t),u=r,f=d["".concat(l,".").concat(u)]||d[u]||m[u]||a;return t?o.createElement(f,i(i({ref:n},p),{},{components:t})):o.createElement(f,i({ref:n},p))}));function f(e,n){var t=arguments,r=n&&n.mdxType;if("string"==typeof e||r){var a=t.length,i=new Array(a);i[0]=u;var s={};for(var l in n)hasOwnProperty.call(n,l)&&(s[l]=n[l]);s.originalType=e,s[d]="string"==typeof e?e:r,i[1]=s;for(var c=2;c{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>s,toc:()=>c});var o=t(87462),r=(t(67294),t(3905));const a={title:"In Open Source",description:"This article explains specifics of User management in OSS.",tags:["Collaboration","Open Source"],keywords:["Collaboration","Open Source","User management","User permissions","User roles"]},i=void 0,s={unversionedId:"collaboration/oss-specific-details",id:"collaboration/oss-specific-details",title:"In Open Source",description:"This article explains specifics of User management in OSS.",source:"@site/docs/120.collaboration/050.oss-specific-details.md",sourceDirName:"120.collaboration",slug:"/collaboration/oss-specific-details",permalink:"/collaboration/oss-specific-details",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/050.oss-specific-details.md",tags:[{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Open Source",permalink:"/tags/open-source"}],version:"current",sidebarPosition:50,frontMatter:{title:"In Open Source",description:"This article explains specifics of User management in OSS.",tags:["Collaboration","Open Source"],keywords:["Collaboration","Open Source","User management","User permissions","User roles"]},sidebar:"tutorialSidebar",previous:{title:"Share view",permalink:"/collaboration/share-view"},next:{title:"Webhook overview",permalink:"/automation/webhook/webhook-overview"}},l={},c=[{value:"User Management",id:"user-management",level:2},{value:"Organisation Level Permissions:",id:"organisation-level-permissions",level:3},{value:"Base Level Permissions:",id:"base-level-permissions",level:3}],p={toc:c},d="wrapper";function m(e){let{components:n,...t}=e;return(0,r.kt)(d,(0,o.Z)({},p,t,{components:n,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"Open source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces. And hence, the user management on Open source is different from Cloud hosted solutions. This article details the specifics of User management on Open source."),(0,r.kt)("h2",{id:"user-management"},"User Management"),(0,r.kt)("p",null,"Organisation is an workspace equivalent concept in Open-source NocoDB. An organisation can have multiple bases. Permissions within NocoDB are divided into two levels: ",(0,r.kt)("inlineCode",{parentName:"p"},"Organisation level")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"Base level"),"."),(0,r.kt)("h3",{id:"organisation-level-permissions"},"Organisation Level Permissions:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Org Level Creator"),": Allows users to create new bases and access invited bases."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Org Level Viewer"),": Allows users to access invited bases but does not permit the creation of new bases.")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/adf3610d-505d-44a2-9460-c33d23e89c66",alt:"Screenshot 2023-08-22 at 5 01 41 PM"})),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/e32a5739-2b84-45c4-a1a2-d2823448eda7",alt:"Screenshot 2023-08-22 at 5 01 30 PM"})),(0,r.kt)("h3",{id:"base-level-permissions"},"Base Level Permissions:"),(0,r.kt)("p",null,"The permissions at base level in Open source NocoDB remain same as cloud solutions. The base level permissions are summarized below:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Owner"),": The user who created the project. A project can have only one owner. The owner persists until the project exists and the role is non-transferable. The owner has access to carry out any operations within the project, including deleting it."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Creator"),': Has access to carry out any operations within the project except deleting the project and removing the "Owner."'),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Editor"),": Can modify data but cannot modify the schema (add/remove columns, tables, users, and such)."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Commenter"),": Can neither modify data nor schema, can only see data and can mark record-level comments."),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("inlineCode",{parentName:"li"},"Viewer"),": Can only see data.")),(0,r.kt)("p",null,"Please note that the above-mentioned Base Level Permissions are additional to the already defined Organisation Level Permissions."),(0,r.kt)("p",null,"In addition to the previously defined permissions, NocoDB also includes the role of ",(0,r.kt)("inlineCode",{parentName:"p"},"Super Admin"),". The ",(0,r.kt)("inlineCode",{parentName:"p"},"Super Admin")," is the first user to sign up on this NocoDB installation. An organisation can have only one ",(0,r.kt)("inlineCode",{parentName:"p"},"Super Admin")," and this role is non-transferable. The ",(0,r.kt)("inlineCode",{parentName:"p"},"Super Admin"),' will have the equivalent permissions of an "Org Level Creator" and "Owner" for all projects within the organisation.'))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/58354ae8.85a279e2.js b/packages/noco-docs/dist/assets/js/58354ae8.85a279e2.js new file mode 100644 index 0000000000..b301c2a9e5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/58354ae8.85a279e2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3164],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},g=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=c(n),g=o,m=d["".concat(s,".").concat(g)]||d[g]||u[g]||a;return n?r.createElement(m,i(i({ref:t},p),{},{components:n})):r.createElement(m,i({ref:t},p))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=g;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:o,i[1]=l;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>l,toc:()=>c});var r=n(87462),o=(n(67294),n(3905));const a={title:"Development setup",description:"How to set-up your development environment",tags:["Engineering"]},i=void 0,l={unversionedId:"engineering/development-setup",id:"engineering/development-setup",title:"Development setup",description:"How to set-up your development environment",source:"@site/docs/150.engineering/030.development-setup.md",sourceDirName:"150.engineering",slug:"/engineering/development-setup",permalink:"/engineering/development-setup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/030.development-setup.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:30,frontMatter:{title:"Development setup",description:"How to set-up your development environment",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"Repository structure",permalink:"/engineering/repository-structure"},next:{title:"Writing unit tests",permalink:"/engineering/unit-testing"}},s={},c=[{value:"Clone the repo",id:"clone-the-repo",level:2},{value:"Install dependencies",id:"install-dependencies",level:2},{value:"Start Frontend",id:"start-frontend",level:2},{value:"Start Backend",id:"start-backend",level:2},{value:"Enabling CI-CD for Draft PR",id:"enabling-ci-cd-for-draft-pr",level:2},{value:"Accessing CI-CD Failure Screenshots",id:"accessing-ci-cd-failure-screenshots",level:2}],p={toc:c},d="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"clone-the-repo"},"Clone the repo"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\n# change directory to the project root\ncd nocodb\n")),(0,o.kt)("h2",{id:"install-dependencies"},"Install dependencies"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# run from the project root\npnpm i\n")),(0,o.kt)("h2",{id:"start-frontend"},"Start Frontend"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# run from the project root\npnpm start:frontend\n# runs on port 3000\n")),(0,o.kt)("h2",{id:"start-backend"},"Start Backend"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# run from the project root\npnpm start:backend\n# runs on port 8080\n")),(0,o.kt)("p",null,"Any changes made to frontend and backend will be automatically reflected in the browser."),(0,o.kt)("h2",{id:"enabling-ci-cd-for-draft-pr"},"Enabling CI-CD for Draft PR"),(0,o.kt)("p",null,"CI-CD will be triggered on moving a PR from draft state to ",(0,o.kt)("inlineCode",{parentName:"p"},"Ready for review")," state & on pushing changes to ",(0,o.kt)("inlineCode",{parentName:"p"},"Develop"),". To verify CI-CD before requesting for review, add label ",(0,o.kt)("inlineCode",{parentName:"p"},"trigger-CI")," on Draft PR. "),(0,o.kt)("h2",{id:"accessing-ci-cd-failure-screenshots"},"Accessing CI-CD Failure Screenshots"),(0,o.kt)("p",null,"For Playwright tests, screenshots are captured on the tests. These will provide vital clues for debugging possible issues observed in CI-CD. To access screenshots, Open link associated with CI-CD run & click on ",(0,o.kt)("inlineCode",{parentName:"p"},"Artifacts")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/192965070-dc04b952-70fb-4197-b4bd-ca7eda066e60.png",alt:"Screenshot 2022-09-29 at 12 43 37 PM"})))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5af3a857.b1f013c0.js b/packages/noco-docs/dist/assets/js/5af3a857.b1f013c0.js new file mode 100644 index 0000000000..e40b6bbceb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5af3a857.b1f013c0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8838],{3905:(e,t,i)=>{i.d(t,{Zo:()=>m,kt:()=>h});var r=i(67294);function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function n(e){for(var t=1;t=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var s=r.createContext({}),d=function(e){var t=r.useContext(s),i=t;return e&&(i="function"==typeof e?e(t):n(n({},t),e)),i},m=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},c=r.forwardRef((function(e,t){var i=e.components,a=e.mdxType,o=e.originalType,s=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),p=d(i),c=a,h=p["".concat(s,".").concat(c)]||p[c]||f[c]||o;return i?r.createElement(h,n(n({ref:t},m),{},{components:i})):r.createElement(h,n({ref:t},m))}));function h(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=i.length,n=new Array(o);n[0]=c;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:a,n[1]=l;for(var d=2;d{i.r(t),i.d(t,{assets:()=>s,contentTitle:()=>n,default:()=>f,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var r=i(87462),a=(i(67294),i(3905));const o={title:"Form",description:"Learn how to create, import, and manage forms in NocoDB.",tags:["Views","Form"],keywords:["NocoDB form","form view","form builder","form view builder","form view actions","form view operations"]},n=void 0,l={unversionedId:"views/view-types/form",id:"views/view-types/form",title:"Form",description:"Learn how to create, import, and manage forms in NocoDB.",source:"@site/docs/090.views/040.view-types/030.form.md",sourceDirName:"090.views/040.view-types",slug:"/views/view-types/form",permalink:"/views/view-types/form",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/030.form.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Form",permalink:"/tags/form"}],version:"current",sidebarPosition:30,frontMatter:{title:"Form",description:"Learn how to create, import, and manage forms in NocoDB.",tags:["Views","Form"],keywords:["NocoDB form","form view","form builder","form view builder","form view actions","form view operations"]},sidebar:"tutorialSidebar",previous:{title:"Gallery",permalink:"/views/view-types/gallery"},next:{title:"Kanban",permalink:"/views/view-types/kanban"}},s={},d=[{value:"Form View Builder",id:"form-view-builder",level:2},{value:"Form View Actions",id:"form-view-actions",level:2},{value:"Form View Operations",id:"form-view-operations",level:2},{value:"Add Form Title & Description",id:"add-form-title--description",level:3},{value:"Add Fields to the Form",id:"add-fields-to-the-form",level:3},{value:"Change field label & help-text",id:"change-field-label--help-text",level:3},{value:"Mark a Field as Required",id:"mark-a-field-as-required",level:3},{value:"Rearrange Fields Within the Form",id:"rearrange-fields-within-the-form",level:3},{value:"Remove Fields from the Form",id:"remove-fields-from-the-form",level:3},{value:"Add a New Field to the Table",id:"add-a-new-field-to-the-table",level:3},{value:"Form View Settings",id:"form-view-settings",level:3},{value:"Survey Form View",id:"survey-form-view",level:2},{value:"Related articles",id:"related-articles",level:2}],m={toc:d},p="wrapper";function f(e){let{components:t,...o}=e;return(0,a.kt)(p,(0,r.Z)({},m,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"Form View allows you to arrange fields in a form to input data."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"1010-2 Form",src:i(38241).Z,width:"2880",height:"1800"})),(0,a.kt)("h2",{id:"form-view-builder"},"Form View Builder"),(0,a.kt)("p",null,"Form view builder layout can be divided into 3 sections:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Fields Area")," - This is the area where fields available in the tables that are not yet added to the form are listed. "),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Form Area")," - This is the area where fields added to the form are listed."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Form Settings")," - This is the area where you can configure the form view. This mainly consists of actions & customisations that can be performed after a form view is submitted.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Form Builder",src:i(91825).Z,width:"2880",height:"1800"})),(0,a.kt)("h2",{id:"form-view-actions"},"Form View Actions"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/create-view/#create-new-view"},"Create a New Form View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#rename-view"},"Rename an Existing Form View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#duplicate-view"},"Duplicate a Form View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/actions-on-view#delete-view"},"Remove a Form View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/share-view"},"Share a Form View")),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("a",{parentName:"li",href:"/views/views-overview#view-permission-types"},"Lock Form View for Edits"))),(0,a.kt)("h2",{id:"form-view-operations"},"Form View Operations"),(0,a.kt)("h3",{id:"add-form-title--description"},"Add Form Title & Description"),(0,a.kt)("p",null,"In the ",(0,a.kt)("strong",{parentName:"p"},"Form View")," area, click on in input boxes provided for ",(0,a.kt)("strong",{parentName:"p"},"Title")," <1> & ",(0,a.kt)("strong",{parentName:"p"},"Description")," <2> to add/update title & description to the form."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Form Title & Description",src:i(39245).Z,width:"2880",height:"1800"})),(0,a.kt)("h3",{id:"add-fields-to-the-form"},"Add Fields to the Form"),(0,a.kt)("p",null,"To add a field to the form, either"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Drag and drop the field from the ",(0,a.kt)("strong",{parentName:"li"},"Fields Area")," to the ",(0,a.kt)("strong",{parentName:"li"},"Form Area")," at required position"),(0,a.kt)("li",{parentName:"ul"},"Click on the field in the ",(0,a.kt)("strong",{parentName:"li"},"Fields Area")," to add it to the end of the ",(0,a.kt)("strong",{parentName:"li"},"Form Area"))),(0,a.kt)("h3",{id:"change-field-label--help-text"},"Change field label & help-text"),(0,a.kt)("p",null,"To change the field label displayed on the form & add help-text, click on the field in the ",(0,a.kt)("strong",{parentName:"p"},"Form Area")," and update the values in the input boxes provided for ",(0,a.kt)("strong",{parentName:"p"},"Label")," <1> & ",(0,a.kt)("strong",{parentName:"p"},"Help Text")," <2>."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Field Label & Help Text",src:i(94526).Z,width:"2880",height:"1800"})),(0,a.kt)("h3",{id:"mark-a-field-as-required"},"Mark a Field as Required"),(0,a.kt)("p",null,"To mark a field as required, click on the field in the ",(0,a.kt)("strong",{parentName:"p"},"Form Area")," and toggle the ",(0,a.kt)("inlineCode",{parentName:"p"},"Required")," switch."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Required Field",src:i(2453).Z,width:"2880",height:"1800"})),(0,a.kt)("h3",{id:"rearrange-fields-within-the-form"},"Rearrange Fields Within the Form"),(0,a.kt)("p",null,"To rearrange fields within the form, drag and drop the field to the required position."),(0,a.kt)("h3",{id:"remove-fields-from-the-form"},"Remove Fields from the Form"),(0,a.kt)("p",null,"To remove a field from the form, either"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Drag and drop the field from the ",(0,a.kt)("strong",{parentName:"li"},"Form Area")," to the ",(0,a.kt)("strong",{parentName:"li"},"Fields Area")),(0,a.kt)("li",{parentName:"ul"},"Hover over the field in the ",(0,a.kt)("strong",{parentName:"li"},"Form Area")," and click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"hide")," icon")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Hide Field",src:i(12446).Z,width:"2880",height:"1800"})),(0,a.kt)("h3",{id:"add-a-new-field-to-the-table"},"Add a New Field to the Table"),(0,a.kt)("p",null,"To add a new field to the table, "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"+ Add new field to this table")," in the ",(0,a.kt)("strong",{parentName:"li"},"Fields Area")," and "),(0,a.kt)("li",{parentName:"ul"},"Select the field name & type from the dropdown."),(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save Column"))),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Add Field",src:i(75555).Z,width:"2880",height:"1800"})),(0,a.kt)("h3",{id:"form-view-settings"},"Form View Settings"),(0,a.kt)("p",null,"NocoDB allows you to configure the form view to perform various actions after a form is submitted. These actions can be configured in the ",(0,a.kt)("strong",{parentName:"p"},"Form Settings")," area."),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"After Submit Message"),": You can configure a message to display on successful submission of the form."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Show ",(0,a.kt)("inlineCode",{parentName:"strong"},"Submit Another Form")," Button"),": This option when enabled, will display a ",(0,a.kt)("inlineCode",{parentName:"li"},"Submit Another Form")," button after the form is submitted."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Show a Blank form"),": This option when enabled, will display a new blank form 5 seconds after the form is submitted."),(0,a.kt)("li",{parentName:"ol"},(0,a.kt)("strong",{parentName:"li"},"Email me"),": Enable this option to receive an Email after the form is submitted. ")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Form View Settings",src:i(73264).Z,width:"2880",height:"1800"})),(0,a.kt)("h2",{id:"survey-form-view"},"Survey Form View"),(0,a.kt)("p",null,"NocoDB supports a special type of form view called ",(0,a.kt)("inlineCode",{parentName:"p"},"Survey Form View"),". This view is ideal for creating surveys & questionnaires. This view can be enabled by toggling the ",(0,a.kt)("inlineCode",{parentName:"p"},"Survey Mode")," switch when creating ",(0,a.kt)("a",{parentName:"p",href:"/views/share-view#share-form-view-options"},"shared form view"),". "),(0,a.kt)("p",null,"When enabled, "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Form input fields will be displayed one at a time. "),(0,a.kt)("li",{parentName:"ul"},"Users can navigate between fields using the ",(0,a.kt)("inlineCode",{parentName:"li"},"<")," & ",(0,a.kt)("inlineCode",{parentName:"li"},">")," buttons.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"Survey Form View",src:i(12488).Z,width:"2878",height:"1416"})),(0,a.kt)("h2",{id:"related-articles"},"Related articles"),(0,a.kt)("p",null,(0,a.kt)("a",{parentName:"p",href:"/views/view-types/grid"},"Form View"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"/views/view-types/gallery"},"Gallery View"),(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("a",{parentName:"p",href:"/views/view-types/kanban"},"Kanban View")))}f.isMDXComponent=!0},75555:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-add-field-26399d5da0f299a76f045286f4b70690.png"},94526:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-field-label-help-text-aa69425b678df2503add4a96f926e238.png"},91825:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-layout-348a2dba9c9ceafe6911477b7e530283.png"},12446:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-remove-field-efc0f8d307ab234bfea21fa9c467dfd6.png"},2453:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-required-field-62f44205bdd070ef8c4c8d30de181286.png"},73264:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-settings-f765389d102cecdac46b0258b696344f.png"},39245:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-title-description-99d122bea09868f65bd0f6e04e087db4.png"},38241:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/form-view-94e8ab4d97828f668019451e303409c0.png"},12488:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/survey-form-ba422967e0b347d42b4824e8940b064c.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5b61f490.deafe22f.js b/packages/noco-docs/dist/assets/js/5b61f490.deafe22f.js new file mode 100644 index 0000000000..d5ebb30681 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5b61f490.deafe22f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[518],{40809:o=>{o.exports=JSON.parse('{"label":"Expand","permalink":"/tags/expand","allTagsPath":"/tags","count":1,"items":[{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5c9cf4c7.125f1c65.js b/packages/noco-docs/dist/assets/js/5c9cf4c7.125f1c65.js new file mode 100644 index 0000000000..0261697cef --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5c9cf4c7.125f1c65.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5187],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>g});var n=a(67294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var c=n.createContext({}),s=function(e){var t=n.useContext(c),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,o=e.mdxType,r=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),d=s(a),m=o,g=d["".concat(c,".").concat(m)]||d[m]||u[m]||r;return a?n.createElement(g,l(l({ref:t},p),{},{components:a})):n.createElement(g,l({ref:t},p))}));function g(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var r=a.length,l=new Array(r);l[0]=m;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[d]="string"==typeof e?e:o,l[1]=i;for(var s=2;s{a.r(t),a.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>k,frontMatter:()=>r,metadata:()=>i,toc:()=>s});var n=a(87462),o=(a(67294),a(3905));const r={title:"Installation",description:"Simple installation - takes about three minutes!"},l=void 0,i={unversionedId:"getting-started/installation",id:"version-0.109.7/getting-started/installation",title:"Installation",description:"Simple installation - takes about three minutes!",source:"@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md",sourceDirName:"020.getting-started",slug:"/getting-started/installation",permalink:"/0.109.7/getting-started/installation",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/010.installation.md",tags:[],version:"0.109.7",sidebarPosition:10,frontMatter:{title:"Installation",description:"Simple installation - takes about three minutes!"},sidebar:"tutorialSidebar",previous:{title:"Welcome",permalink:"/0.109.7/"},next:{title:"Environment Variables",permalink:"/0.109.7/getting-started/environment-variables"}},c={},s=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Quick try",id:"quick-try",level:2},{value:"Docker",id:"docker",level:3},{value:"Docker Compose",id:"docker-compose",level:3},{value:"NPX",id:"npx",level:3},{value:"Preview:",id:"preview",level:4},{value:"Homebrew",id:"homebrew",level:3},{value:"Executables",id:"executables",level:3},{value:"MacOS (x64)",id:"macos-x64",level:5},{value:"MacOS (arm64)",id:"macos-arm64",level:5},{value:"Linux (x64)",id:"linux-x64",level:5},{value:"Linux (arm64)",id:"linux-arm64",level:5},{value:"Windows (x64)",id:"windows-x64",level:5},{value:"Windows (arm64)",id:"windows-arm64",level:5},{value:"Node Application",id:"node-application",level:3},{value:"AWS ECS (Fargate)",id:"aws-ecs-fargate",level:3},{value:"Create ECS Cluster",id:"create-ecs-cluster",level:4},{value:"Create Log group",id:"create-log-group",level:4},{value:"Create ECS Task Definiton",id:"create-ecs-task-definiton",level:4},{value:"Create ECS Service",id:"create-ecs-service",level:4},{value:"GCP (Cloud Run)",id:"gcp-cloud-run",level:3},{value:"Pull NocoDB Image on Cloud Shell",id:"pull-nocodb-image-on-cloud-shell",level:4},{value:"Deploy NocoDB on Cloud Run",id:"deploy-nocodb-on-cloud-run",level:4},{value:"DigitalOcean (App)",id:"digitalocean-app",level:3},{value:"Create Apps",id:"create-apps",level:4},{value:"Choose Source: Docker Hub",id:"choose-source-docker-hub",level:4},{value:"Choose Source: Repository",id:"choose-source-repository",level:4},{value:"Optional Additional Configurations",id:"optional-additional-configurations",level:4},{value:"Name your web service",id:"name-your-web-service",level:4},{value:"Finalize and Launch",id:"finalize-and-launch",level:4},{value:"Cloudron",id:"cloudron",level:3},{value:"Navigate to App Store",id:"navigate-to-app-store",level:4},{value:"Search NocoDB",id:"search-nocodb",level:4},{value:"Click Install",id:"click-install",level:4},{value:"Configure NocoDB",id:"configure-nocodb",level:4},{value:"Go to My App and Launch NocoDB",id:"go-to-my-app-and-launch-nocodb",level:4},{value:"CapRover",id:"caprover",level:3},{value:"Login and Click One-Click Apps / Databases",id:"login-and-click-one-click-apps--databases",level:4},{value:"Search NocoDB",id:"search-nocodb-1",level:4},{value:"Configure NocoDB and Deploy",id:"configure-nocodb-and-deploy",level:4},{value:"Railway",id:"railway",level:3},{value:"Navigate to Templates",id:"navigate-to-templates",level:4},{value:"Configure NocoDB and Deploy",id:"configure-nocodb-and-deploy-1",level:4},{value:"FreeBSD / FreeNAS / TrueNAS Jail",id:"freebsd--freenas--truenas-jail",level:3},{value:"Sample Demos",id:"sample-demos",level:2},{value:"Code Sandbox",id:"code-sandbox",level:3},{value:"Docker deploying with one command",id:"docker-deploying-with-one-command",level:3},{value:"Using NPX",id:"using-npx",level:3}],p=e=>function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,o.kt)("div",t)},d=p("Tabs"),u=p("TabItem"),m={toc:s},g="wrapper";function k(e){let{components:t,...a}=e;return(0,o.kt)(g,(0,n.Z)({},m,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Simple installation - takes about three minutes!"),(0,o.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"https://www.docker.com/get-started"},"Docker")," or ",(0,o.kt)("a",{parentName:"li",href:"https://nodejs.org/en/download"},"Node.js")," ( > v16.x )\n")),(0,o.kt)("h2",{id:"quick-try"},"Quick try"),(0,o.kt)("h3",{id:"docker"},"Docker"),(0,o.kt)("p",null,"If you are a Docker user, you may try this way!"),(0,o.kt)(d,{mdxType:"Tabs"},(0,o.kt)(u,{value:"sqlite",label:"SQLite",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\nnocodb/nocodb:latest\n'))),(0,o.kt)(u,{value:"mysql",label:"MySQL",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-mysql \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n'))),(0,o.kt)(u,{value:"postgres",label:"Postgres",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-postgres \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="pg://host.docker.internal:5432?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n'))),(0,o.kt)(u,{value:"sqlserver",label:"SQL Server",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d --name nocodb-mssql \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="mssql://host.docker.internal:1433?u=root&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\n')))),(0,o.kt)("admonition",{type:"tip"},(0,o.kt)("p",{parentName:"admonition"},"To persist data in docker you can mount volume at ",(0,o.kt)("inlineCode",{parentName:"p"},"/usr/app/data/")," since 0.10.6. In older version mount at ",(0,o.kt)("inlineCode",{parentName:"p"},"/usr/src/app"),". Otherwise your data will be lost after recreating the container.")),(0,o.kt)("admonition",{type:"tip"},(0,o.kt)("p",{parentName:"admonition"},"If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/issues/1340#issuecomment-1049481043"},"MySQL Docker"),".")),(0,o.kt)("h3",{id:"docker-compose"},"Docker Compose"),(0,o.kt)("p",null,"We provide different docker-compose.yml files under ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/tree/master/docker-compose"},"this directory"),". Here are some examples."),(0,o.kt)(d,{mdxType:"Tabs"},(0,o.kt)(u,{value:"mysql",label:"MySQL",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/mysql\ndocker-compose up -d\n"))),(0,o.kt)(u,{value:"postgres",label:"Postgres",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/pg\ndocker-compose up -d\n"))),(0,o.kt)(u,{value:"sqlserver",label:"SQL Server",mdxType:"TabItem"},(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb\ncd nocodb/docker-compose/mssql\ndocker-compose up -d\n")))),(0,o.kt)("admonition",{type:"tip"},(0,o.kt)("p",{parentName:"admonition"},"To persist data in docker you can mount volume at ",(0,o.kt)("inlineCode",{parentName:"p"},"/usr/app/data/")," since 0.10.6. In older version mount at ",(0,o.kt)("inlineCode",{parentName:"p"},"/usr/src/app"),".")),(0,o.kt)("admonition",{type:"tip"},(0,o.kt)("p",{parentName:"admonition"},"If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/issues/1313#issuecomment-1046625974"},"MySQL Docker Compose"),".")),(0,o.kt)("h3",{id:"npx"},"NPX"),(0,o.kt)("p",null,"You can run below command if you need an interactive configuration."),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"npx create-nocodb-app\n")),(0,o.kt)("h4",{id:"preview"},"Preview:"),(0,o.kt)("img",{width:"587",alt:"image",src:"https://user-images.githubusercontent.com/35857179/161526235-5ee0d592-0105-4a57-aa53-b1048dca6aad.png"}),(0,o.kt)("h3",{id:"homebrew"},"Homebrew"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"brew tap nocodb/nocodb\nbrew install nocodb\nnocodb\n")),(0,o.kt)("h3",{id:"executables"},"Executables"),(0,o.kt)("p",null,"You can download executables directly and run without any extra dependancy. Use the right command based on your platform."),(0,o.kt)("h5",{id:"macos-x64"},"MacOS (x64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/macos-x64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n")),(0,o.kt)("h5",{id:"macos-arm64"},"MacOS (arm64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/macos-arm64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n")),(0,o.kt)("h5",{id:"linux-x64"},"Linux (x64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/linux-x64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n")),(0,o.kt)("h5",{id:"linux-arm64"},"Linux (arm64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"curl http://get.nocodb.com/linux-arm64 -o nocodb -L \\\n && chmod +x nocodb \\\n && ./nocodb\n")),(0,o.kt)("h5",{id:"windows-x64"},"Windows (x64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"iwr http://get.nocodb.com/win-x64.exe\n.\\Noco-win-x64.exe\n")),(0,o.kt)("h5",{id:"windows-arm64"},"Windows (arm64)"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"iwr http://get.nocodb.com/win-arm64.exe\n.\\Noco-win-arm64.exe\n")),(0,o.kt)("h3",{id:"node-application"},"Node Application"),(0,o.kt)("p",null,"We provide a simple NodeJS Application for getting started."),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/nocodb/nocodb-seed\ncd nocodb-seed\nnpm install\nnpm start\n")),(0,o.kt)("h3",{id:"aws-ecs-fargate"},"AWS ECS (Fargate)"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"create-ecs-cluster"},"Create ECS Cluster"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"aws ecs create-cluster \\\n--cluster-name \n")),(0,o.kt)("h4",{id:"create-log-group"},"Create Log group"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"aws logs create-log-group \\\n--log-group-name /ecs//\n")),(0,o.kt)("h4",{id:"create-ecs-task-definiton"},"Create ECS Task Definiton"),(0,o.kt)("p",null," Every time you create it, it will add a new version. If it is not existing, the version will be 1. "),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'aws ecs register-task-definition \\\n--cli-input-json "file://./.json"\n')),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("p",{parentName:"admonition"},"This json file defines the container specification. You can define secrets such as NC_DB and environment variables here.")),(0,o.kt)("p",null," Here's the sample Task Definition"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-json"},'{\n "family": "nocodb-sample-task-def",\n "networkMode": "awsvpc",\n "containerDefinitions": [{\n "name": "",\n "image": "nocodb/nocodb:latest",\n "essential": true,\n "logConfiguration": {\n "logDriver": "awslogs",\n "options": {\n "awslogs-group": "/ecs//",\n "awslogs-region": "",\n "awslogs-stream-prefix": "ecs"\n }\n },\n "secrets": [{\n "name": "",\n "valueFrom": ""\n }],\n "environment": [{\n "name": "",\n "value": ""\n }],\n "portMappings": [{\n "containerPort": 8080,\n "hostPort": 8080,\n "protocol": "tcp"\n }]\n }],\n "requiresCompatibilities": [\n "FARGATE"\n ],\n "cpu": "256",\n "memory": "512",\n "executionRoleArn": "",\n "taskRoleArn": ""\n}\n')),(0,o.kt)("h4",{id:"create-ecs-service"},"Create ECS Service"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'aws ecs create-service \\\n--cluster \\\n--service-name \\\n--task-definition : \\\n--desired-count \\\n--launch-type "FARGATE" \\\n--platform-version \\\n--health-check-grace-period-seconds \\\n--network-configuration "awsvpcConfiguration={subnets=[""], securityGroups=[""], assignPublicIp=ENABLED}" \\\n--load-balancer targetGroupArn=,containerName=,containerPort=\n')),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("p",{parentName:"admonition"},"If your service fails to start, you may check the logs in ECS console or in Cloudwatch. Generally it fails due to the connection between ECS container and NC_DB. Make sure the security groups have the correct inbound and outbound rules.\n"))),(0,o.kt)("h3",{id:"gcp-cloud-run"},"GCP (Cloud Run)"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"pull-nocodb-image-on-cloud-shell"},"Pull NocoDB Image on Cloud Shell"),(0,o.kt)("p",null," Since Cloud Run only supports images from Google Container Registry (GCR) or Artifact Registry, we need to pull NocoDB image, tag it and push it in GCP using Cloud Shell. Here are some sample commands which you can execute in Cloud Shell."),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# pull latest NocoDB image\ndocker pull nocodb/nocodb:latest\n\n# tag the image\ndocker tag nocodb/nocodb:latest gcr.io//nocodb/nocodb:latest\n\n# push the image to GCR\ndocker push gcr.io//nocodb/nocodb:latest\n")),(0,o.kt)("h4",{id:"deploy-nocodb-on-cloud-run"},"Deploy NocoDB on Cloud Run"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"gcloud run deploy --image=gcr.io//nocodb/nocodb:latest \\\n --region=us-central1 \\\n --allow-unauthenticated \\\n --platform=managed \n"))),(0,o.kt)("h3",{id:"digitalocean-app"},"DigitalOcean (App)"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"create-apps"},"Create Apps"),(0,o.kt)("p",null," On Home page, Click on Create icon & Select Apps (Deploy your code)."),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790558-f8fe5580-5a58-412c-9c2e-145587712bf2.png",alt:"Screenshot 2022-02-19 at 12 17 43 PM"})),(0,o.kt)("h4",{id:"choose-source-docker-hub"},"Choose Source: Docker Hub"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790563-b5b6d5b4-0bdc-4718-8cea-0a7ee52f283b.png",alt:"Screenshot 2022-02-19 at 12 22 01 PM"})),(0,o.kt)("h4",{id:"choose-source-repository"},"Choose Source: Repository"),(0,o.kt)("p",null," Configure Source Repository as ",(0,o.kt)("inlineCode",{parentName:"p"},"nocodb/nocodb"),". Optionally you can pick release tag if you are interested in specific NocoDB version."),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790564-1dcb5e33-3a57-471a-a44c-835a410a0cb7.png",alt:"Screenshot 2022-02-19 at 12 23 11 PM"})),(0,o.kt)("h4",{id:"optional-additional-configurations"},"[Optional]"," Additional Configurations"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790565-c0234b2e-ad50-4042-90b6-4f8798f1d585.png",alt:"Screenshot 2022-02-19 at 12 24 44 PM"})),(0,o.kt)("h4",{id:"name-your-web-service"},"Name your web service"),(0,o.kt)("p",null," Pick a name for your NocoDB application. This name will become part of URL subsequently\nPick nearest Region for cloud hosting\n",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790567-a6e65e4e-9aa0-4edb-998e-da8803ad6e23.png",alt:"Screenshot 2022-02-19 at 12 28 11 PM"})),(0,o.kt)("h4",{id:"finalize-and-launch"},"Finalize and Launch"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},"Select hosting plan for your NocoDB application")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},'Click "Launch APP"'),(0,o.kt)("p",{parentName:"li"},(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154790570-62044713-5cca-4d06-82ec-f3cc257218a1.png",alt:"Screenshot 2022-02-19 at 12 29 23 PM"})),(0,o.kt)("p",{parentName:"li"},"Application will be build & URL will be live in a minute! The URL will be something like ",(0,o.kt)("a",{parentName:"p",href:"https://simply-nocodb-rsyir.ondigitalocean.app/"},"https://simply-nocodb-rsyir.ondigitalocean.app/"))))),(0,o.kt)("h3",{id:"cloudron"},"Cloudron"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"navigate-to-app-store"},"Navigate to App Store"),(0,o.kt)("p",null," Log into Cloudron and select App Store"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700146-aae90503-a8fd-4bc5-8397-39f0bc279606.png",alt:"image"})),(0,o.kt)("h4",{id:"search-nocodb"},"Search NocoDB"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700181-b5303919-70b8-4cf8-bebe-7e75aca601f3.png",alt:"image"})),(0,o.kt)("h4",{id:"click-install"},"Click Install"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700192-d702f5c2-2afa-45c5-9823-4ebe9e141b01.png",alt:"image"})),(0,o.kt)("h4",{id:"configure-nocodb"},"Configure NocoDB"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700230-c35e934f-bd93-4948-8f31-935483b30571.png",alt:"image"})),(0,o.kt)("h4",{id:"go-to-my-app-and-launch-nocodb"},"Go to My App and Launch NocoDB"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194700464-50098cb1-bf94-42bb-a63a-cc0aad671913.png",alt:"image"}))),(0,o.kt)("h3",{id:"caprover"},"CapRover"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"login-and-click-one-click-apps--databases"},"Login and Click One-Click Apps / Databases"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701420-7fe5c396-a488-456c-98de-6f2ee1151fc5.png",alt:"image"})),(0,o.kt)("h4",{id:"search-nocodb-1"},"Search NocoDB"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701537-63e7efc5-013b-4ca9-8659-56e9d536e7d0.png",alt:"image"})),(0,o.kt)("h4",{id:"configure-nocodb-and-deploy"},"Configure NocoDB and Deploy"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194701576-19519df5-2aa4-435d-8fc6-7bc684b9cfe1.png",alt:"image"}))),(0,o.kt)("h3",{id:"railway"},"Railway"),(0,o.kt)("details",null,(0,o.kt)("summary",null,"Click to Expand"),(0,o.kt)("h4",{id:"navigate-to-templates"},"Navigate to Templates"),(0,o.kt)("p",null," Go to ",(0,o.kt)("a",{parentName:"p",href:"https://railway.app/templates"},"Templates"),", Search NocoDB and click Deploy"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194702833-1bea22ee-6dfa-4024-ac27-e33fe56e5500.png",alt:"image"})),(0,o.kt)("h4",{id:"configure-nocodb-and-deploy-1"},"Configure NocoDB and Deploy"),(0,o.kt)("p",null," ",(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194702960-149393fe-b00f-4d84-9e54-22cb7616ba44.png",alt:"image"}))),(0,o.kt)("h3",{id:"freebsd--freenas--truenas-jail"},"FreeBSD / FreeNAS / TrueNAS Jail"),(0,o.kt)("p",null,"See ",(0,o.kt)("a",{parentName:"p",href:"https://gist.github.com/Zamana/e9281d736f9e9ce5882c6f4b140a590e"},"here")," provided by ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/Zamana"},"C. R. Zamana"),"."),(0,o.kt)("h2",{id:"sample-demos"},"Sample Demos"),(0,o.kt)("h3",{id:"code-sandbox"},"Code Sandbox"),(0,o.kt)("iframe",{width:"100%",height:"500",src:"https://codesandbox.io/embed/vigorous-firefly-80kq5?hidenavigation=1&theme=dark",title:"Code Sandbox",frameBorder:"0",allow:"clipboard-write"}),(0,o.kt)("h3",{id:"docker-deploying-with-one-command"},"Docker deploying with one command"),(0,o.kt)("iframe",{width:"100%",height:"500",src:"https://www.youtube.com/embed/K-UEecQyiOk",title:"YouTube video player",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0}),(0,o.kt)("h3",{id:"using-npx"},"Using NPX"),(0,o.kt)("iframe",{width:"100%",height:"500",src:"https://www.youtube.com/embed/v6Nn75P1p7I",title:"YouTube video player",frameBorder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0}))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5ccd3149.73f6caf1.js b/packages/noco-docs/dist/assets/js/5ccd3149.73f6caf1.js new file mode 100644 index 0000000000..2ca1d0f15b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5ccd3149.73f6caf1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4033],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>g});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var o=n.createContext({}),p=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},c=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,r=e.originalType,o=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),d=p(a),h=i,g=d["".concat(o,".").concat(h)]||d[h]||u[h]||r;return a?n.createElement(g,l(l({ref:t},c),{},{components:a})):n.createElement(g,l({ref:t},c))}));function g(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=a.length,l=new Array(r);l[0]=h;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[d]="string"==typeof e?e:i,l[1]=s;for(var p=2;p{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>l,default:()=>u,frontMatter:()=>r,metadata:()=>s,toc:()=>p});var n=a(87462),i=(a(67294),a(3905));const r={title:"Playwright E2E Testing",description:"Overview to playwright based e2e tests"},l=void 0,s={unversionedId:"engineering/playwright",id:"version-0.109.7/engineering/playwright",title:"Playwright E2E Testing",description:"Overview to playwright based e2e tests",source:"@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md",sourceDirName:"050.engineering",slug:"/engineering/playwright",permalink:"/0.109.7/engineering/playwright",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/050.playwright.md",tags:[],version:"0.109.7",sidebarPosition:50,frontMatter:{title:"Playwright E2E Testing",description:"Overview to playwright based e2e tests"},sidebar:"tutorialSidebar",previous:{title:"Writing Unit Tests",permalink:"/0.109.7/engineering/unit-testing"},next:{title:"Releases & Builds",permalink:"/0.109.7/engineering/builds-and-releases"}},o={},p=[{value:"How to run tests",id:"how-to-run-tests",level:2},{value:"Run Test Server",id:"run-test-server",level:3},{value:"Running all tests",id:"running-all-tests",level:3},{value:"Running individual tests",id:"running-individual-tests",level:3},{value:"Concepts",id:"concepts",level:2},{value:"Independent tests",id:"independent-tests",level:3},{value:"What to test",id:"what-to-test",level:3},{value:"Playwright",id:"playwright",level:3},{value:"Page Objects",id:"page-objects",level:2},{value:"Writing a test",id:"writing-a-test",level:2},{value:"Create a test suite",id:"create-a-test-suite",level:3},{value:"Create a page object",id:"create-a-page-object",level:3},{value:"Writing an action method",id:"writing-an-action-method",level:3},{value:"Writing an assertion/verification method",id:"writing-an-assertionverification-method",level:3},{value:"Tips to avoid flakiness",id:"tips-to-avoid-flakiness",level:2},{value:"Accessing playwright report in the CI",id:"accessing-playwright-report-in-the-ci",level:2}],c={toc:p},d="wrapper";function u(e){let{components:t,...a}=e;return(0,i.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"how-to-run-tests"},"How to run tests"),(0,i.kt)("p",null,"All the tests reside in ",(0,i.kt)("inlineCode",{parentName:"p"},"tests/playwright")," folder."),(0,i.kt)("p",null,"Make sure to install the dependencies(in the playwright folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm install\nnpx playwright install chromium --with-deps\n")),(0,i.kt)("h3",{id:"run-test-server"},"Run Test Server"),(0,i.kt)("p",null,"Start the backend test server (in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb")," folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm run watch:run:playwright\n")),(0,i.kt)("p",null,"Start the frontend test server (in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nc-gui")," folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"NUXT_PAGE_TRANSITION_DISABLE=true npm run dev\n")),(0,i.kt)("h3",{id:"running-all-tests"},"Running all tests"),(0,i.kt)("p",null,"For selecting db type, rename ",(0,i.kt)("inlineCode",{parentName:"p"},".env.example")," to ",(0,i.kt)("inlineCode",{parentName:"p"},".env")," and set ",(0,i.kt)("inlineCode",{parentName:"p"},"E2E_DEV_DB_TYPE")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"sqlite"),"(default), ",(0,i.kt)("inlineCode",{parentName:"p"},"mysql")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"pg"),"."),(0,i.kt)("p",null,"headless mode(without opening browser):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm run test\n")),(0,i.kt)("p",null,"with browser:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm run test:debug\n")),(0,i.kt)("p",null,"For setting up mysql(sakila):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose -f ./tests/playwright/scripts/docker-compose-mysql-playwright.yml up -d\n")),(0,i.kt)("p",null,"For setting up postgres(sakila):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose -f ./tests/playwright/scripts/docker-compose-playwright-pg.yml \n")),(0,i.kt)("h3",{id:"running-individual-tests"},"Running individual tests"),(0,i.kt)("p",null,"Add ",(0,i.kt)("inlineCode",{parentName:"p"},".only")," to the test you want to run:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"test.only('should login', async ({ page }) => {\n // ...\n})\n")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm run test\n")),(0,i.kt)("h2",{id:"concepts"},"Concepts"),(0,i.kt)("h3",{id:"independent-tests"},"Independent tests"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"All tests are independent of each other."),(0,i.kt)("li",{parentName:"ul"},"Each test starts with a fresh project with a fresh sakila database(option to not use sakila db is also there)."),(0,i.kt)("li",{parentName:"ul"},"Each test creates a new user(email as ",(0,i.kt)("inlineCode",{parentName:"li"},"user@nocodb.com"),") and logs in with that user to the dashboard.")),(0,i.kt)("p",null,"Caveats:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Some stuffs are shared i.e, users, plugins etc. So be catious while writing tests touching that. A fix for this is in the works."),(0,i.kt)("li",{parentName:"ul"},"In test, we prefix email and project with the test id, which will be deleted after the test is done.")),(0,i.kt)("h3",{id:"what-to-test"},"What to test"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"UI verification. This includes verifying the state of the UI element, i.e if the element is visible, if the element has a particular text etc."),(0,i.kt)("li",{parentName:"ul"},"Test should verify all user flow. A test has a default timeout of 60 seconds. If a test is taking more than 60 seconds, it is a sign that the test should be broken down into smaller tests."),(0,i.kt)("li",{parentName:"ul"},"Test should also verify all the side effects the feature(i.e. On adding a new column type, should verify column deletion as well) will have, and also error cases."),(0,i.kt)("li",{parentName:"ul"},"Test name should be descriptive. It should be easy to understand what the test is doing by just reading the test name.")),(0,i.kt)("h3",{id:"playwright"},"Playwright"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Playwright is a nodejs library for automating chromium, firefox and webkit."),(0,i.kt)("li",{parentName:"ul"},"For each test, a new browser context is created. This means that each test runs in a new incognito window."),(0,i.kt)("li",{parentName:"ul"},"For assertion always use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"li"},"@playwright/test")," library. This library provides a lot of useful assertions, which also has retry logic built in.")),(0,i.kt)("h2",{id:"page-objects"},"Page Objects"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Page objects are used to abstract over the components/page. This makes the tests more readable and maintainable."),(0,i.kt)("li",{parentName:"ul"},"All page objects are in ",(0,i.kt)("inlineCode",{parentName:"li"},"tests/playwright/pages")," folder."),(0,i.kt)("li",{parentName:"ul"},"All the test related code should be in page objects."),(0,i.kt)("li",{parentName:"ul"},"Methods should be as thin as possible and its better to have multiple methods than one big method, which improves reusability.")),(0,i.kt)("p",null,"The methods of a page object can be classified into 2 categories:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Actions: Performs an UI actions like click, type, select etc. Is also responsible for waiting for the element to be ready and the action to be performed. This included waiting for API calls to complete."),(0,i.kt)("li",{parentName:"ul"},"Assertions: Asserts the state of the UI element, i.e if the element is visible, if the element has a particular text etc. Use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"li"},"@playwright/test")," and if not use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect.poll")," to wait for the assertion to pass.")),(0,i.kt)("h2",{id:"writing-a-test"},"Writing a test"),(0,i.kt)("p",null,"Let's write a test for testing filter functionality."),(0,i.kt)("p",null,"For simplicity, we will have ",(0,i.kt)("inlineCode",{parentName:"p"},"DashboardPage")," implemented, which will have all the methods related to dashboard page and also its child components like Grid, etc."),(0,i.kt)("h3",{id:"create-a-test-suite"},"Create a test suite"),(0,i.kt)("p",null,"Create a new file ",(0,i.kt)("inlineCode",{parentName:"p"},"filter.spec.ts")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"tests/playwright/tests")," folder and use ",(0,i.kt)("inlineCode",{parentName:"p"},"setup")," method to create a new project and user."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"import { test, expect } from '@playwright/test';\nimport setup, { NcContext } from '../setup';\n\ntest.describe('Filter', () => {\n let context: NcContext;\n\n test.beforeEach(async ({ page }) => {\n context = await setup({ page });\n })\n\n test('should filter', async ({ page }) => {\n // ...\n });\n});\n")),(0,i.kt)("h3",{id:"create-a-page-object"},"Create a page object"),(0,i.kt)("p",null,"Since filter is UI wise scoped to a ",(0,i.kt)("inlineCode",{parentName:"p"},"Toolbar")," , we will add filter page object to ",(0,i.kt)("inlineCode",{parentName:"p"},"ToolbarPage")," page object."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"export class ToolbarPage extends BasePage {\n readonly parent: GridPage | GalleryPage | FormPage | KanbanPage;\n readonly filter: ToolbarFilterPage;\n\n constructor(parent: GridPage | GalleryPage | FormPage | KanbanPage) {\n super(parent.rootPage);\n this.parent = parent;\n this.filter = new ToolbarFilterPage(this);\n }\n}\n")),(0,i.kt)("p",null,"We will create ",(0,i.kt)("inlineCode",{parentName:"p"},"ToolbarFilterPage")," page object, which will have all the methods related to filter."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"export class ToolbarFilterPage extends BasePage {\n readonly toolbar: ToolbarPage;\n\n constructor(toolbar: ToolbarPage) {\n super(toolbar.rootPage);\n this.toolbar = toolbar;\n }\n}\n")),(0,i.kt)("p",null,"Here ",(0,i.kt)("inlineCode",{parentName:"p"},"BasePage")," is an abstract class, which used to enforce structure for all page objects. Thus all page object ",(0,i.kt)("em",{parentName:"p"},"should")," inherit ",(0,i.kt)("inlineCode",{parentName:"p"},"BasePage"),"."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Helper methods like ",(0,i.kt)("inlineCode",{parentName:"li"},"waitForResponse")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"getClipboardText")," (this can be access on any page object, with ",(0,i.kt)("inlineCode",{parentName:"li"},"this.waitForResponse"),")"),(0,i.kt)("li",{parentName:"ul"},"Provides structure for page objects, enforces all Page objects to have ",(0,i.kt)("inlineCode",{parentName:"li"},"rootPage")," property, which is the page object created in the test setup."),(0,i.kt)("li",{parentName:"ul"},"Enforces all pages to have a ",(0,i.kt)("inlineCode",{parentName:"li"},"get")," method which will return the locator of the main container of that page, hence we can have focused dom selection, i.e.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"// This will only select the button inside the container of the concerned page\nawait this.get().querySelector('button').count();\n")),(0,i.kt)("h3",{id:"writing-an-action-method"},"Writing an action method"),(0,i.kt)("p",null,"This a method which will reset/clear all the filters. Since this is an action method, it will also wait for the ",(0,i.kt)("inlineCode",{parentName:"p"},"delete")," filter API to return. Ignoring this API call will cause flakiness in the test, down the line."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"async resetFilter() {\n await this.waitForResponse({\n uiAction: () => this.get().locator('.nc-filter-item-remove-btn').click(),\n httpMethodsToMatch: ['DELETE'],\n requestUrlPathToMatch: '/api/v1/db/meta/filters/',\n });\n}\n")),(0,i.kt)("h3",{id:"writing-an-assertionverification-method"},"Writing an assertion/verification method"),(0,i.kt)("p",null,"Here we use ",(0,i.kt)("inlineCode",{parentName:"p"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"p"},"@playwright/test")," library, which has retry logic built in."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"import { expect } from '@playwright/test';\n\nasync verifyFilter({ title }: { title: string }) {\n await expect(\n this.get().locator(`[data-testid=\"nc-fields-menu-${title}\"]`).locator('input[type=\"checkbox\"]')\n ).toBeChecked();\n}\n")),(0,i.kt)("h2",{id:"tips-to-avoid-flakiness"},"Tips to avoid flakiness"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"If an UI action, causes an API call or the UI state change, then wait for that API call to complete or the UI state to change."),(0,i.kt)("li",{parentName:"ul"},"What to wait out can be situation specific, but in general, is best to wait for the final state to be reached, i.e. in the case of creating filter, while it seems like waiting for the filter API to complete is enough, but after its return the table rows are reloaded and the UI state changes, so its better to wait for the table rows to be reloaded.")),(0,i.kt)("h2",{id:"accessing-playwright-report-in-the-ci"},"Accessing playwright report in the CI"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Open ",(0,i.kt)("inlineCode",{parentName:"li"},"Summary")," tab in the CI workflow in github actions."),(0,i.kt)("li",{parentName:"ul"},"Scroll down to ",(0,i.kt)("inlineCode",{parentName:"li"},"Artifacts")," section."),(0,i.kt)("li",{parentName:"ul"},"Access reports which suffixed with the db type and shard number(corresponding to the CI workerflow name). i.e ",(0,i.kt)("inlineCode",{parentName:"li"},"playwright-report-mysql-2")," is for ",(0,i.kt)("inlineCode",{parentName:"li"},"playwright-mysql-2")," workflow."),(0,i.kt)("li",{parentName:"ul"},"Download it and run ",(0,i.kt)("inlineCode",{parentName:"li"},"npm install -D @playwright/test && npx playwright show-report ./")," inside the downloaded folder.")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5dcc9f57.9467da66.js b/packages/noco-docs/dist/assets/js/5dcc9f57.9467da66.js new file mode 100644 index 0000000000..04d22aa214 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5dcc9f57.9467da66.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7395],{34861:e=>{e.exports=JSON.parse('{"label":"Table operations","permalink":"/tags/table-operations","allTagsPath":"/tags","count":8,"items":[{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","permalink":"/table-operations/filter"},{"id":"table-operations/group-by","title":"Grouping records","description":"Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.","permalink":"/table-operations/group-by"},{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"},{"id":"table-operations/row-height","title":"Row height","description":"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.","permalink":"/table-operations/row-height"},{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","permalink":"/table-operations/search"},{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","permalink":"/table-operations/sort"},{"id":"table-operations/overview","title":"Table operations overview","description":"Learn how to work with filters, sort, group by, and more in NocoDB.","permalink":"/table-operations/overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/5eaf3a75.916d763c.js b/packages/noco-docs/dist/assets/js/5eaf3a75.916d763c.js new file mode 100644 index 0000000000..3d4f648fac --- /dev/null +++ b/packages/noco-docs/dist/assets/js/5eaf3a75.916d763c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1944],{3905:(e,t,a)=>{a.d(t,{Zo:()=>l,kt:()=>m});var r=a(67294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function c(e){for(var t=1;t=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var p=r.createContext({}),i=function(e){var t=r.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):c(c({},t),e)),a},l=function(e){var t=i(e.components);return r.createElement(p.Provider,{value:t},e.children)},k="mdxType",w={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var a=e.components,o=e.mdxType,n=e.originalType,p=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),k=i(a),u=o,m=k["".concat(p,".").concat(u)]||k[u]||w[u]||n;return a?r.createElement(m,c(c({ref:t},l),{},{components:a})):r.createElement(m,c({ref:t},l))}));function m(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=a.length,c=new Array(n);c[0]=u;var s={};for(var p in t)hasOwnProperty.call(t,p)&&(s[p]=t[p]);s.originalType=e,s[k]="string"==typeof e?e:o,c[1]=s;for(var i=2;i{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>c,default:()=>w,frontMatter:()=>n,metadata:()=>s,toc:()=>i});var r=a(87462),o=(a(67294),a(3905));const n={title:"Create workspace",description:"Learn how to create a workspace in NocoDB",tags:["Workspaces","Create"],keywords:["NocoDB workspace","create workspace","workspace context menu","workspace owner","workspace collaboration","workspace actions","default workspace"]},c=void 0,s={unversionedId:"workspaces/create-workspace",id:"workspaces/create-workspace",title:"Create workspace",description:"Learn how to create a workspace in NocoDB",source:"@site/docs/030.workspaces/020.create-workspace.md",sourceDirName:"030.workspaces",slug:"/workspaces/create-workspace",permalink:"/workspaces/create-workspace",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/020.create-workspace.md",tags:[{label:"Workspaces",permalink:"/tags/workspaces"},{label:"Create",permalink:"/tags/create"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create workspace",description:"Learn how to create a workspace in NocoDB",tags:["Workspaces","Create"],keywords:["NocoDB workspace","create workspace","workspace context menu","workspace owner","workspace collaboration","workspace actions","default workspace"]},sidebar:"tutorialSidebar",previous:{title:"Workspace overview",permalink:"/workspaces/workspace-overview"},next:{title:"Workspace collaboration",permalink:"/workspaces/workspace-collaboration"}},p={},i=[{value:"Create a workspace",id:"create-a-workspace",level:2},{value:"Related articles",id:"related-articles",level:2}],l={toc:i},k="wrapper";function w(e){let{components:t,...n}=e;return(0,o.kt)(k,(0,r.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Upon signing up to NocoDB, an initial workspace is automatically generated on your behalf.\nThen you have the ability to either ",(0,o.kt)("a",{parentName:"p",href:"/workspaces/actions-on-workspace#rename-workspace"},"modify its name")," or creating an entirely new workspace."),(0,o.kt)("p",null,"In the following section, lets look at the process of creating your NocoDB workspaces."),(0,o.kt)("h2",{id:"create-a-workspace"},"Create a workspace"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Navigate to the top-left corner of the sidebar and select the ",(0,o.kt)("strong",{parentName:"li"},"Workspace name")," to access the ",(0,o.kt)("strong",{parentName:"li"},"Workspace context menu"),"."),(0,o.kt)("li",{parentName:"ol"},"From the Workspace context menu, opt for the ",(0,o.kt)("strong",{parentName:"li"},"Create workspace")," button."),(0,o.kt)("li",{parentName:"ol"},"Provide a name for the workspace "),(0,o.kt)("li",{parentName:"ol"},"Proceed by clicking the ",(0,o.kt)("strong",{parentName:"li"},"Create Workspace")," button.")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:a(85139).Z,width:"2878",height:"1018"})," "),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:a(82250).Z,width:"2874",height:"1206"})," "),(0,o.kt)("p",null,"When you start a new workspace, you automatically become the owner.\nOnce your workspace is set up, you can ",(0,o.kt)("a",{parentName:"p",href:"/tables/create-table"},"create tables")," and ",(0,o.kt)("a",{parentName:"p",href:"/workspaces/workspace-collaboration"},"invite others")," to join and work together.\nYou can invite as many people as you want, and you can create as many tables as you need in your workspace.\nBut remember, there can only be one owner, and only the owner can delete the workspace. "),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The Open Source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces.")),(0,o.kt)("h2",{id:"related-articles"},"Related articles"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/workspace-overview"},"Workspace overview")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/workspace-collaboration"},"Invite team members to workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#rename-workspace"},"Rename workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#delete-workspace"},"Delete workspace"))))}w.isMDXComponent=!0},82250:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/workspace-create-2-facaf0bb6375e733d61ccdd77894e74b.png"},85139:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/workspace-create-1847b5a89de49a838a9ca1808e3ad934.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/603e048e.0be1f956.js b/packages/noco-docs/dist/assets/js/603e048e.0be1f956.js new file mode 100644 index 0000000000..1fa6801bd3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/603e048e.0be1f956.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7700],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>m});var i=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,i)}return a}function r(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var o=i.createContext({}),p=function(e){var t=i.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):r(r({},t),e)),a},d=function(e){var t=p(e.components);return i.createElement(o.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},y=i.forwardRef((function(e,t){var a=e.components,n=e.mdxType,l=e.originalType,o=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),u=p(a),y=n,m=u["".concat(o,".").concat(y)]||u[y]||c[y]||l;return a?i.createElement(m,r(r({ref:t},d),{},{components:a})):i.createElement(m,r({ref:t},d))}));function m(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var l=a.length,r=new Array(l);r[0]=y;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[u]="string"==typeof e?e:n,r[1]=s;for(var p=2;p{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>r,default:()=>c,frontMatter:()=>l,metadata:()=>s,toc:()=>p});var i=a(87462),n=(a(67294),a(3905));const l={title:"Display value",tags:["Fields","Display Value"],description:"Understanding Display Value in NocoDB!",keywords:["NocoDB display value","display value","display value in nocoDB","display value in nocoDB"]},r="Display Value",s={unversionedId:"fields/display-value",id:"fields/display-value",title:"Display value",description:"Understanding Display Value in NocoDB!",source:"@site/docs/070.fields/030.display-value.md",sourceDirName:"070.fields",slug:"/fields/display-value",permalink:"/fields/display-value",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/030.display-value.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Display Value",permalink:"/tags/display-value"}],version:"current",sidebarPosition:30,frontMatter:{title:"Display value",tags:["Fields","Display Value"],description:"Understanding Display Value in NocoDB!",keywords:["NocoDB display value","display value","display value in nocoDB","display value in nocoDB"]},sidebar:"tutorialSidebar",previous:{title:"Primary key",permalink:"/fields/primary-key"},next:{title:"Single line text",permalink:"/fields/field-types/text-based/single-line-text"}},o={},p=[{value:"Use of Display Value",id:"use-of-display-value",level:2},{value:"Set Display Value",id:"set-display-value",level:2}],d={toc:p},u="wrapper";function c(e){let{components:t,...l}=e;return(0,n.kt)(u,(0,i.Z)({},d,l,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"display-value"},"Display Value"),(0,n.kt)("p",null,"The ",(0,n.kt)("inlineCode",{parentName:"p"},"Display Value"),", as its name suggests, serves as the primary or main value within a record of a table, and it is typically the attribute by which we identify or associate that specific record. While it is advisable for the display value to be linked to a field with unique identifiers, such as a primary key, it's important to note that this uniqueness is not always enforced at the database level."),(0,n.kt)("h2",{id:"use-of-display-value"},"Use of Display Value"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Within a spreadsheet, ",(0,n.kt)("inlineCode",{parentName:"li"},"Display Value")," are always highlighted so that it is easier to recognise what record we are working with."),(0,n.kt)("li",{parentName:"ul"},"And when ",(0,n.kt)("inlineCode",{parentName:"li"},"Links")," are created between two tables - it is the Display Value that appears in ",(0,n.kt)("inlineCode",{parentName:"li"},"Linked records")," modal.")),(0,n.kt)("p",null,"Example:\nDisplay Value highlighted in Actor table\n",(0,n.kt)("img",{alt:"display value",src:a(71368).Z,width:"2876",height:"1388"})),(0,n.kt)("p",null,"Display Value associated when Links field",(0,n.kt)("br",{parentName:"p"}),"\n","The value shown in ",(0,n.kt)("inlineCode",{parentName:"p"},"Link Records")," modal when adding a new link is associated records ",(0,n.kt)("inlineCode",{parentName:"p"},"Display value")," "),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"display value- links field",src:a(73124).Z,width:"2878",height:"1800"})),(0,n.kt)("h2",{id:"set-display-value"},"Set Display Value"),(0,n.kt)("p",null,"Click dropdown icon (\ud83d\udd3d) in the target column. Click ",(0,n.kt)("inlineCode",{parentName:"p"},"Set as Display Value"),". "),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"display value set",src:a(34217).Z,width:"2876",height:"1390"})),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"How is Display Value identified for existing database tables ?"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"It is usually the first column after the primary key which is not a number."),(0,n.kt)("li",{parentName:"ul"},"If there is no column which is not a number then the column adjacent to primary key is chosen.")),(0,n.kt)("p",{parentName:"admonition"},"Can I change the Display Value to another column within tables ?"),(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"Yes, you can use the same way mentioned above to set Display Value."))))}c.isMDXComponent=!0},73124:(e,t,a)=>{a.d(t,{Z:()=>i});const i=a.p+"assets/images/display-value-in-linked-record-a2d5ae449c2be23c1b31d60beb97d063.png"},71368:(e,t,a)=>{a.d(t,{Z:()=>i});const i=a.p+"assets/images/display-value-23916141d8a6d88f998f903210fc12de.png"},34217:(e,t,a)=>{a.d(t,{Z:()=>i});const i=a.p+"assets/images/set-as-display-value-1816fc2bbf6eba7f2d96a43850d5774f.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/60b8b995.fed5c86d.js b/packages/noco-docs/dist/assets/js/60b8b995.fed5c86d.js new file mode 100644 index 0000000000..907b5357c1 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/60b8b995.fed5c86d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3463],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>c});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function l(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var d=r.createContext({}),s=function(e){var t=r.useContext(d),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},p=function(e){var t=s(e.components);return r.createElement(d.Provider,{value:t},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,i=e.originalType,d=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),m=s(a),f=n,c=m["".concat(d,".").concat(f)]||m[f]||u[f]||i;return a?r.createElement(c,l(l({ref:t},p),{},{components:a})):r.createElement(c,l({ref:t},p))}));function c(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=a.length,l=new Array(i);l[0]=f;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[m]="string"==typeof e?e:n,l[1]=o;for(var s=2;s{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>l,default:()=>u,frontMatter:()=>i,metadata:()=>o,toc:()=>s});var r=a(87462),n=(a(67294),a(3905));const i={title:"Duration",tags:["Fields","Field types","Date & Time"]},l=void 0,o={unversionedId:"fields/field-types/date-time-based/duration",id:"fields/field-types/date-time-based/duration",title:"Duration",description:"Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.",source:"@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md",sourceDirName:"070.fields/040.field-types/070.date-time-based",slug:"/fields/field-types/date-time-based/duration",permalink:"/fields/field-types/date-time-based/duration",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/040.duration.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Date & Time",permalink:"/tags/date-time"}],version:"current",sidebarPosition:40,frontMatter:{title:"Duration",tags:["Fields","Field types","Date & Time"]},sidebar:"tutorialSidebar",previous:{title:"Time",permalink:"/fields/field-types/date-time-based/time"},next:{title:"Multi-field editor",permalink:"/fields/multi-fields-editor"}},d={},s=[{value:"Create a duration field",id:"create-a-duration-field",level:2},{value:"Supported duration formats",id:"supported-duration-formats",level:3},{value:"Related fields",id:"related-fields",level:2}],p={toc:s},m="wrapper";function u(e){let{components:t,...i}=e;return(0,n.kt)(m,(0,r.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"Duration")," field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below."),(0,n.kt)("h2",{id:"create-a-duration-field"},"Create a duration field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"Duration")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"Configure ",(0,n.kt)("inlineCode",{parentName:"li"},"Duration Format")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure default value"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:a(60334).Z,width:"1269",height:"645"})),(0,n.kt)("h3",{id:"supported-duration-formats"},"Supported duration formats"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Format"),(0,n.kt)("th",{parentName:"tr",align:null},"Example"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"HH:mm"),(0,n.kt)("td",{parentName:"tr",align:null},"14:20")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"HH:mm:ss"),(0,n.kt)("td",{parentName:"tr",align:null},"12:45:30")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"HH:mm:ss.s"),(0,n.kt)("td",{parentName:"tr",align:null},"12:45:30.5")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"HH:mm.ss.ss"),(0,n.kt)("td",{parentName:"tr",align:null},"12:45.30.50")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"HH:mm.ss.sss"),(0,n.kt)("td",{parentName:"tr",align:null},"12:45.30.500")))),(0,n.kt)("h2",{id:"related-fields"},"Related fields"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date-time"},"DateTime")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date"},"Date")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/time"},"Time"))))}u.isMDXComponent=!0},60334:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/duration-cb2c98c0e3d1318471767cf055e457ce.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/615746d5.b0727925.js b/packages/noco-docs/dist/assets/js/615746d5.b0727925.js new file mode 100644 index 0000000000..a1ac23ffc2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/615746d5.b0727925.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[678],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var r=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function o(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var p=r.createContext({}),s=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=s(e.components);return r.createElement(p.Provider,{value:t},e.children)},c="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},v=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,i=e.originalType,p=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),c=s(n),v=a,m=c["".concat(p,".").concat(v)]||c[v]||d[v]||i;return n?r.createElement(m,o(o({ref:t},u),{},{components:n})):r.createElement(m,o({ref:t},u))}));function m(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=n.length,o=new Array(i);o[0]=v;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[c]="string"==typeof e?e:a,o[1]=l;for(var s=2;s{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=n(87462),a=(n(67294),n(3905));const i={title:"Code Snippets",description:"Code Snippets Examples in different ways"},o=void 0,l={unversionedId:"setup-and-usages/code-snippets",id:"version-0.109.7/setup-and-usages/code-snippets",title:"Code Snippets",description:"Code Snippets Examples in different ways",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/code-snippets",permalink:"/0.109.7/setup-and-usages/code-snippets",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md",tags:[],version:"0.109.7",sidebarPosition:50,frontMatter:{title:"Code Snippets",description:"Code Snippets Examples in different ways"},sidebar:"tutorialSidebar",previous:{title:"Column Types",permalink:"/0.109.7/setup-and-usages/column-types"},next:{title:"Link To Another Record",permalink:"/0.109.7/setup-and-usages/link-to-another-record"}},p={},s=[{value:"Overview",id:"overview",level:2},{value:"Supported Snippet",id:"supported-snippet",level:2},{value:"Shell",id:"shell",level:3},{value:"Javascript",id:"javascript",level:3},{value:"Node",id:"node",level:3},{value:"NocoDB SDK",id:"nocodb-sdk",level:3},{value:"PHP",id:"php",level:3},{value:"Python",id:"python",level:3},{value:"Ruby",id:"ruby",level:3},{value:"Java",id:"java",level:3},{value:"C",id:"c",level:3}],u={toc:s},c="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(c,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"overview"},"Overview"),(0,a.kt)("p",null,"In the table toolbar, click Table name button and click ",(0,a.kt)("inlineCode",{parentName:"p"},"Get API Snippet"),"."),(0,a.kt)("img",{width:"476",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194796042-e80ee8dd-a26f-4b75-a7ff-7cfdab1dcc43.png"}),(0,a.kt)("p",null,"A modal box will be shown with sample code snippet for List API."),(0,a.kt)("img",{width:"1499",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194796072-b521e3eb-4f25-42d9-bdfe-ef2dd22a1efa.png"}),(0,a.kt)("h2",{id:"supported-snippet"},"Supported Snippet"),(0,a.kt)("h3",{id:"shell"},"Shell"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"cURL"),(0,a.kt)("li",{parentName:"ul"},"wget")),(0,a.kt)("h3",{id:"javascript"},"Javascript"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Axios"),(0,a.kt)("li",{parentName:"ul"},"Fetch"),(0,a.kt)("li",{parentName:"ul"},"jQuery"),(0,a.kt)("li",{parentName:"ul"},"XHR")),(0,a.kt)("h3",{id:"node"},"Node"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Axios"),(0,a.kt)("li",{parentName:"ul"},"Fetch"),(0,a.kt)("li",{parentName:"ul"},"Request"),(0,a.kt)("li",{parentName:"ul"},"Native"),(0,a.kt)("li",{parentName:"ul"},"Unirest")),(0,a.kt)("h3",{id:"nocodb-sdk"},"NocoDB SDK"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Javascript"),(0,a.kt)("li",{parentName:"ul"},"Node")),(0,a.kt)("h3",{id:"php"},"PHP"),(0,a.kt)("h3",{id:"python"},"Python"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"http.client"),(0,a.kt)("li",{parentName:"ul"},"request")),(0,a.kt)("h3",{id:"ruby"},"Ruby"),(0,a.kt)("h3",{id:"java"},"Java"),(0,a.kt)("h3",{id:"c"},"C"))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/61a3d417.e35d0317.js b/packages/noco-docs/dist/assets/js/61a3d417.e35d0317.js new file mode 100644 index 0000000000..23bc51495f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/61a3d417.e35d0317.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6591],{3905:(e,t,r)=>{r.d(t,{Zo:()=>w,kt:()=>m});var i=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function o(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=i.createContext({}),s=function(e){var t=i.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},w=function(e){var t=s(e.components);return i.createElement(c.Provider,{value:t},e.children)},p="mdxType",v={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},d=i.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,w=l(e,["components","mdxType","originalType","parentName"]),p=s(r),d=n,m=p["".concat(c,".").concat(d)]||p[d]||v[d]||a;return r?i.createElement(m,o(o({ref:t},w),{},{components:r})):i.createElement(m,o({ref:t},w))}));function m(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,o=new Array(a);o[0]=d;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[p]="string"==typeof e?e:n,o[1]=l;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>v,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var i=r(87462),n=(r(67294),r(3905));const a={title:"Create view",description:"Learn how to create a view in NocoDB.",tags:["Views","Create","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","create view","view administration","view organization"]},o=void 0,l={unversionedId:"views/create-view",id:"views/create-view",title:"Create view",description:"Learn how to create a view in NocoDB.",source:"@site/docs/090.views/020.create-view.md",sourceDirName:"090.views",slug:"/views/create-view",permalink:"/views/create-view",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/020.create-view.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Create",permalink:"/tags/create"},{label:"Grid View",permalink:"/tags/grid-view"},{label:"Form View",permalink:"/tags/form-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Gallery View",permalink:"/tags/gallery-view"}],version:"current",sidebarPosition:20,frontMatter:{title:"Create view",description:"Learn how to create a view in NocoDB.",tags:["Views","Create","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","create view","view administration","view organization"]},sidebar:"tutorialSidebar",previous:{title:"View overview",permalink:"/views/views-overview"},next:{title:"Share view",permalink:"/views/share-view"}},c={},s=[{value:"Create new view",id:"create-new-view",level:2},{value:"Related articles",id:"related-articles",level:3}],w={toc:s},p="wrapper";function v(e){let{components:t,...a}=e;return(0,n.kt)(p,(0,i.Z)({},w,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"create-new-view"},"Create new view"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," on the left sidebar next to ",(0,n.kt)("inlineCode",{parentName:"li"},"table name")," OR click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+ New View")," button below ",(0,n.kt)("inlineCode",{parentName:"li"},"table name"),"."),(0,n.kt)("li",{parentName:"ol"},"Select view type from the dropdown modal."),(0,n.kt)("li",{parentName:"ol"},"Fill view name in the pop-up modal.",(0,n.kt)("ul",{parentName:"li"},(0,n.kt)("li",{parentName:"ul"},"For Kanban view, select the ",(0,n.kt)("inlineCode",{parentName:"li"},"Single select")," field to be used as the Kanban field."))),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Create View")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:r(90547).Z,width:"2876",height:"860"}),"\n",(0,n.kt)("img",{alt:"image",src:r(40758).Z,width:"2878",height:"1412"})),(0,n.kt)("h3",{id:"related-articles"},"Related articles"))}v.isMDXComponent=!0},90547:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/create-view-1-336b23c8d721344a1924560932a8ca6f.png"},40758:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/create-view-2-b1e2ae57004dc07a6bf2fc3e9121f7f9.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/61af7884.c006a056.js b/packages/noco-docs/dist/assets/js/61af7884.c006a056.js new file mode 100644 index 0000000000..910a3629f4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/61af7884.c006a056.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7621],{51261:e=>{e.exports=JSON.parse('{"label":"Form View","permalink":"/tags/form-view","allTagsPath":"/tags","count":4,"items":[{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6233b6dc.8bf0398f.js b/packages/noco-docs/dist/assets/js/6233b6dc.8bf0398f.js new file mode 100644 index 0000000000..434fc461a6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6233b6dc.8bf0398f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7647],{10950:t=>{t.exports=JSON.parse('{"label":"Excel","permalink":"/tags/excel","allTagsPath":"/tags","count":1,"items":[{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6485a1bf.e10c8ea8.js b/packages/noco-docs/dist/assets/js/6485a1bf.e10c8ea8.js new file mode 100644 index 0000000000..982f251f0b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6485a1bf.e10c8ea8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6640],{81067:e=>{e.exports=JSON.parse('{"label":"Multi select","permalink":"/tags/multi-select","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/select-based/multi-select","title":"Multi Select","description":"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/multi-select"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6502d10a.1b9ec360.js b/packages/noco-docs/dist/assets/js/6502d10a.1b9ec360.js new file mode 100644 index 0000000000..f28123300a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6502d10a.1b9ec360.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6078],{92793:e=>{e.exports=JSON.parse('{"label":"Long text","permalink":"/tags/long-text","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/text-based/long-text","title":"Long text","description":"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.","permalink":"/fields/field-types/text-based/long-text"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/654123f4.09f2f089.js b/packages/noco-docs/dist/assets/js/654123f4.09f2f089.js new file mode 100644 index 0000000000..2779f5f439 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/654123f4.09f2f089.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9933],{3905:(e,t,a)=>{a.d(t,{Zo:()=>p,kt:()=>u});var r=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function o(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var s=r.createContext({}),d=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},p=function(e){var t=d(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},y=r.forwardRef((function(e,t){var a=e.components,i=e.mdxType,n=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),c=d(a),y=i,u=c["".concat(s,".").concat(y)]||c[y]||m[y]||n;return a?r.createElement(u,o(o({ref:t},p),{},{components:a})):r.createElement(u,o({ref:t},p))}));function u(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=a.length,o=new Array(n);o[0]=y;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:i,o[1]=l;for(var d=2;d{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>m,frontMatter:()=>n,metadata:()=>l,toc:()=>d});var r=a(87462),i=(a(67294),a(3905));const n={title:"Primary Key",description:"Understanding Primary Key in NocoDB!"},o=void 0,l={unversionedId:"setup-and-usages/primary-key",id:"version-0.109.7/setup-and-usages/primary-key",title:"Primary Key",description:"Understanding Primary Key in NocoDB!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/primary-key",permalink:"/0.109.7/setup-and-usages/primary-key",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md",tags:[],version:"0.109.7",sidebarPosition:100,frontMatter:{title:"Primary Key",description:"Understanding Primary Key in NocoDB!"},sidebar:"tutorialSidebar",previous:{title:"Formulas",permalink:"/0.109.7/setup-and-usages/formulas"},next:{title:"Display Value",permalink:"/0.109.7/setup-and-usages/display-value"}},s={},d=[{value:"What is a Primary Key ?",id:"what-is-a-primary-key-",level:2},{value:"What is the use of Primary Key ?",id:"what-is-the-use-of-primary-key-",level:2},{value:"Primary Key in NocoDB",id:"primary-key-in-nocodb",level:2},{value:"What if Primary Key was missing?",id:"what-if-primary-key-was-missing",level:2},{value:"Example : Primary Key & optional system fields during new table creation",id:"example--primary-key--optional-system-fields-during-new-table-creation",level:4},{value:"Example : Show System Fields",id:"example--show-system-fields",level:4},{value:"Can I change the Primary Key to another column within tables ?",id:"can-i-change-the-primary-key-to-another-column-within-tables-",level:2}],p={toc:d},c="wrapper";function m(e){let{components:t,...a}=e;return(0,i.kt)(c,(0,r.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"what-is-a-primary-key-"},"What is a Primary Key ?"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"A primary key is a special database table column designated to uniquely identify each table record.")),(0,i.kt)("h2",{id:"what-is-the-use-of-primary-key-"},"What is the use of Primary Key ?"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"As it uniquely identifies an individual record of a table, it is used internally by NocoDB for all operations associated with a record")),(0,i.kt)("h2",{id:"primary-key-in-nocodb"},"Primary Key in NocoDB"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Primary Key that gets defined / used in NocoDB depends on how underlying table was created. Summary is captured below")),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"From UI, Create new table / Import from Excel / Import from CSV",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"An ",(0,i.kt)("inlineCode",{parentName:"li"},"ID")," ","[datatype: Integer]"," system field created by default during table creation is used as primary key"),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are inserted by default & can be omitted optionally; these fields can be deleted after table creation"))),(0,i.kt)("li",{parentName:"ol"},"Connect to existing external database",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"Existing ",(0,i.kt)("inlineCode",{parentName:"li"},"primary key")," field defined for a table is retained as is; NocoDB doesn't insert a new ID field"),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are not inserted by default"))),(0,i.kt)("li",{parentName:"ol"},"Import from Airtable",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"Airtable record ID is marked as primary key for imported records, and is mapped to field ",(0,i.kt)("inlineCode",{parentName:"li"},"ncRecordId")," ","[datatype: varchar]"),(0,i.kt)("li",{parentName:"ol"},"If a new record is inserted after migration & if ncRecordId field was omitted during record insertion - auto generated string will be inserted by NocoDB"),(0,i.kt)("li",{parentName:"ol"},"Computed hash value for the entire record is stored in system field ",(0,i.kt)("inlineCode",{parentName:"li"},"ncRecordHash")),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are not inserted by default"))),(0,i.kt)("li",{parentName:"ol"},"Create new table using SDK / API",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"No default primary key field is introduced by NocoDB. It has to be explicitly specified during table creation (using attribute ",(0,i.kt)("inlineCode",{parentName:"li"},"pk: true"),")")))),(0,i.kt)("h2",{id:"what-if-primary-key-was-missing"},"What if Primary Key was missing?"),(0,i.kt)("p",null,"It is possible to have a table without any primary key. "),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"External database table can be created without primary key configuration."),(0,i.kt)("li",{parentName:"ul"},"New table can be created using SDK / API without primary key\nIn such scenario's, new records can be created in NocoDB for this table, but records can't be updated or deleted ","[as there is now way for NocoDB to uniquely identify these records]")),(0,i.kt)("h4",{id:"example--primary-key--optional-system-fields-during-new-table-creation"},"Example : Primary Key & optional system fields during new table creation"),(0,i.kt)("img",{width:"596",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189113679-481bceab-8957-4c5d-a38c-9940f03cfd7e.png"}),(0,i.kt)("h4",{id:"example--show-system-fields"},"Example : Show System Fields"),(0,i.kt)("img",{width:"309",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189113907-871f7ab0-9bb2-4f04-a726-2d9feb56892e.png"}),(0,i.kt)("h2",{id:"can-i-change-the-primary-key-to-another-column-within-tables-"},"Can I change the Primary Key to another column within tables ?"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"You can't update Primary Key from NocoDB UI. You can reconfigure it at database level directly & trigger ",(0,i.kt)("inlineCode",{parentName:"li"},"meta sync")," explicitly.")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/68fa8000.e3336e78.js b/packages/noco-docs/dist/assets/js/68fa8000.e3336e78.js new file mode 100644 index 0000000000..a54c8009e1 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/68fa8000.e3336e78.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7549],{3905:(e,t,i)=>{i.d(t,{Zo:()=>s,kt:()=>u});var r=i(67294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function p(e){for(var t=1;t=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var l=r.createContext({}),a=function(e){var t=r.useContext(l),i=t;return e&&(i="function"==typeof e?e(t):p(p({},t),e)),i},s=function(e){var t=a(e.components);return r.createElement(l.Provider,{value:t},e.children)},d="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},y=r.forwardRef((function(e,t){var i=e.components,n=e.mdxType,o=e.originalType,l=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),d=a(i),y=n,u=d["".concat(l,".").concat(y)]||d[y]||f[y]||o;return i?r.createElement(u,p(p({ref:t},s),{},{components:i})):r.createElement(u,p({ref:t},s))}));function u(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=i.length,p=new Array(o);p[0]=y;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c[d]="string"==typeof e?e:n,p[1]=c;for(var a=2;a{i.r(t),i.d(t,{assets:()=>l,contentTitle:()=>p,default:()=>f,frontMatter:()=>o,metadata:()=>c,toc:()=>a});var r=i(87462),n=(i(67294),i(3905));const o={title:"Specific DB type",tags:["Fields","Field types","Custom types","Specific DB type"]},p=void 0,c={unversionedId:"fields/field-types/custom-types/specific-db-type",id:"fields/field-types/custom-types/specific-db-type",title:"Specific DB type",description:"Create a Specific DB Type field",source:"@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/specific-db-type",permalink:"/fields/field-types/custom-types/specific-db-type",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Specific DB type",permalink:"/tags/specific-db-type"}],version:"current",sidebarPosition:70,frontMatter:{title:"Specific DB type",tags:["Fields","Field types","Custom types","Specific DB type"]},sidebar:"tutorialSidebar",previous:{title:"Geometry",permalink:"/fields/field-types/custom-types/geometry"},next:{title:"JSON",permalink:"/fields/field-types/custom-types/json"}},l={},a=[{value:"Create a Specific DB Type field",id:"create-a-specific-db-type-field",level:2}],s={toc:a},d="wrapper";function f(e){let{components:t,...o}=e;return(0,n.kt)(d,(0,r.Z)({},s,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"create-a-specific-db-type-field"},"Create a Specific DB Type field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"Specific DB Type")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"Provide DB specific data type configurations"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:i(49406).Z,width:"1265",height:"842"})))}f.isMDXComponent=!0},49406:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/specific-db-type-39420b6e61f776e62f66c7bbe8616539.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/69895f00.7e8ef305.js b/packages/noco-docs/dist/assets/js/69895f00.7e8ef305.js new file mode 100644 index 0000000000..e58125ac7a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/69895f00.7e8ef305.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4289],{3905:(e,t,i)=>{i.d(t,{Zo:()=>p,kt:()=>f});var r=i(67294);function l(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function n(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function a(e){for(var t=1;t=0||(l[i]=e[i]);return l}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(l[i]=e[i])}return l}var c=r.createContext({}),s=function(e){var t=r.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},p=function(e){var t=s(e.components);return r.createElement(c.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var i=e.components,l=e.mdxType,n=e.originalType,c=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),d=s(i),u=l,f=d["".concat(c,".").concat(u)]||d[u]||m[u]||n;return i?r.createElement(f,a(a({ref:t},p),{},{components:i})):r.createElement(f,a({ref:t},p))}));function f(e,t){var i=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var n=i.length,a=new Array(n);a[0]=u;var o={};for(var c in t)hasOwnProperty.call(t,c)&&(o[c]=t[c]);o.originalType=e,o[d]="string"==typeof e?e:l,a[1]=o;for(var s=2;s{i.r(t),i.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>m,frontMatter:()=>n,metadata:()=>o,toc:()=>s});var r=i(87462),l=(i(67294),i(3905));const n={title:"Decimal",tags:["Fields","Field types","Numerical types","Decimal"]},a=void 0,o={unversionedId:"fields/field-types/numerical/decimal",id:"fields/field-types/numerical/decimal",title:"Decimal",description:"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.",source:"@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md",sourceDirName:"070.fields/040.field-types/020.numerical",slug:"/fields/field-types/numerical/decimal",permalink:"/fields/field-types/numerical/decimal",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/020.decimal.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Numerical types",permalink:"/tags/numerical-types"},{label:"Decimal",permalink:"/tags/decimal"}],version:"current",sidebarPosition:20,frontMatter:{title:"Decimal",tags:["Fields","Field types","Numerical types","Decimal"]},sidebar:"tutorialSidebar",previous:{title:"Number",permalink:"/fields/field-types/numerical/number"},next:{title:"Percent",permalink:"/fields/field-types/numerical/percent"}},c={},s=[{value:"Create a decimal field",id:"create-a-decimal-field",level:2},{value:"Similar numerical fields",id:"similar-numerical-fields",level:2}],p={toc:s},d="wrapper";function m(e){let{components:t,...n}=e;return(0,l.kt)(d,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"Decimal")," field type is used to store decimal values. Use cases include storing ",(0,l.kt)("inlineCode",{parentName:"p"},"salary"),", ",(0,l.kt)("inlineCode",{parentName:"p"},"price"),", etc. NocoDB supports precision of upto 8 digits."),(0,l.kt)("h2",{id:"create-a-decimal-field"},"Create a decimal field"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,l.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,l.kt)("li",{parentName:"ol"},"Select the field type as ",(0,l.kt)("inlineCode",{parentName:"li"},"Decimal")," from the dropdown."),(0,l.kt)("li",{parentName:"ol"},"Configure ",(0,l.kt)("inlineCode",{parentName:"li"},"Precision"),"- NocoDB supports upto 8 digits of precision."),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:i(53075).Z,width:"1265",height:"610"})),(0,l.kt)("admonition",{type:"info"},(0,l.kt)("ul",{parentName:"admonition"},(0,l.kt)("li",{parentName:"ul"},"Default decimal precision is 1 digit"))),(0,l.kt)("h2",{id:"similar-numerical-fields"},"Similar numerical fields"),(0,l.kt)("p",null,"Following are the other numerical fields available in NocoDB, with some custom add-on features."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/number"},"Number")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/percent"},"Percent")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/currency"},"Currency"))))}m.isMDXComponent=!0},53075:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/decimal-e3bb0ca87ff8e3b13a94dbbb461f56f2.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/69bed9e5.51579de3.js b/packages/noco-docs/dist/assets/js/69bed9e5.51579de3.js new file mode 100644 index 0000000000..ee9f4d07a2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/69bed9e5.51579de3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3869],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>g});var a=r(67294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function n(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var s=a.createContext({}),c=function(e){var t=a.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):n(n({},t),e)),r},p=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},h="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var r=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),h=c(r),u=i,g=h["".concat(s,".").concat(u)]||h[u]||d[u]||o;return r?a.createElement(g,n(n({ref:t},p),{},{components:r})):a.createElement(g,n({ref:t},p))}));function g(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=r.length,n=new Array(o);n[0]=u;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[h]="string"==typeof e?e:i,n[1]=l;for(var c=2;c{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>n,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var a=r(87462),i=(r(67294),r(3905));const o={title:"Row height",tags:["Table operations","Row height","Grid View"],keywords:["table operations","row height"]},n=void 0,l={unversionedId:"table-operations/row-height",id:"table-operations/row-height",title:"Row height",description:"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.",source:"@site/docs/060.table-operations/060.row-height.md",sourceDirName:"060.table-operations",slug:"/table-operations/row-height",permalink:"/table-operations/row-height",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/060.row-height.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Row height",permalink:"/tags/row-height"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:60,frontMatter:{title:"Row height",tags:["Table operations","Row height","Grid View"],keywords:["table operations","row height"]},sidebar:"tutorialSidebar",previous:{title:"Grouping records",permalink:"/table-operations/group-by"},next:{title:"Search",permalink:"/table-operations/search"}},s={},c=[{value:"Short",id:"short",level:3},{value:"Medium",id:"medium",level:3},{value:"Tall",id:"tall",level:3},{value:"Extra",id:"extra",level:3},{value:"Related topics",id:"related-topics",level:3}],p={toc:c},h="wrapper";function d(e){let{components:t,...o}=e;return(0,i.kt)(h,(0,a.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell. "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Row height",src:r(48890).Z,width:"2294",height:"812"})),(0,i.kt)("h3",{id:"short"},"Short"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Short",src:r(5127).Z,width:"2306",height:"1414"})),(0,i.kt)("h3",{id:"medium"},"Medium"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Medium",src:r(3794).Z,width:"2306",height:"1414"})),(0,i.kt)("h3",{id:"tall"},"Tall"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Tall",src:r(12788).Z,width:"2306",height:"1414"})),(0,i.kt)("h3",{id:"extra"},"Extra"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Extra",src:r(73721).Z,width:"2306",height:"1408"})),(0,i.kt)("h3",{id:"related-topics"},"Related topics"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"download"},"Download"))))}d.isMDXComponent=!0},48890:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/row-height-1-b999107b8ea25b026213a6c67498695b.png"},5127:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/row-height-2-422a0b8fac325abb9392cbd5763ee5c7.png"},3794:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/row-height-3-8b665502bcb2cb4bde649e53698161f5.png"},12788:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/row-height-4-6672aa1a7be4bd6075b285f7324c61bc.png"},73721:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/row-height-5-e58d68386f8aa821d5a32c7411ef4ba9.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/69bee932.adf1f8d5.js b/packages/noco-docs/dist/assets/js/69bee932.adf1f8d5.js new file mode 100644 index 0000000000..0777f41608 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/69bee932.adf1f8d5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3454],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>u});var a=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var l=a.createContext({}),d=function(e){var t=a.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=d(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},g=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(r),g=n,u=p["".concat(l,".").concat(g)]||p[g]||m[g]||o;return r?a.createElement(u,i(i({ref:t},c),{},{components:r})):a.createElement(u,i({ref:t},c))}));function u(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=g;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:n,i[1]=s;for(var d=2;d{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>m,frontMatter:()=>o,metadata:()=>s,toc:()=>d});var a=r(87462),n=(r(67294),r(3905));const o={title:"NocoDB terminologies",keywords:["NocoDB terminologies","NocoDB terms","NocoDB keywords"]},i=void 0,s={unversionedId:"getting-started/terminologies",id:"getting-started/terminologies",title:"NocoDB terminologies",description:"To maximize your use of NocoDB, it's beneficial to become familiar with some common terms.",source:"@site/docs/020.getting-started/030.terminologies.md",sourceDirName:"020.getting-started",slug:"/getting-started/terminologies",permalink:"/getting-started/terminologies",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/030.terminologies.md",tags:[],version:"current",sidebarPosition:30,frontMatter:{title:"NocoDB terminologies",keywords:["NocoDB terminologies","NocoDB terms","NocoDB keywords"]},sidebar:"tutorialSidebar",previous:{title:"Quick start",permalink:"/getting-started/quick-start"},next:{title:"Keyboard shortcuts",permalink:"/getting-started/keyboard-shortcuts"}},l={},d=[{value:"Layout",id:"layout",level:2},{value:"Terminologies",id:"terminologies",level:2}],c={toc:d},p="wrapper";function m(e){let{components:t,...o}=e;return(0,n.kt)(p,(0,a.Z)({},c,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"To maximize your use of NocoDB, it's beneficial to become familiar with some common terms."),(0,n.kt)("p",null,"Within this section, we've provided straightforward explanations for keywords and phrases that are relevant to NocoDB's functionality and capabilities. This resource is designed to assist you in gaining a deeper understanding of NocoDB as you embark on the process of setting up workspaces, bases, tables, and various other elements within the platform."),(0,n.kt)("h2",{id:"layout"},"Layout"),(0,n.kt)("p",null,"The layout below shows the main parts of NocoDB's user interface."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:r(7517).Z,width:"2007",height:"1041"})),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"Sidebar"),": This component provides quick access to workspaces, bases, tables, and views, facilitating easy navigation within NocoDB. ")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"Navbar"),": In the Navbar, you'll find essential tools like the Switcher, allowing users to switch between data mode and details mode, and the Share button for collaborative workspace and view sharing.")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"Toolbar"),": The Toolbar equips users with various tools to manage records within tables and views effectively. It includes features for sorting, filtering, and editing data, enhancing your control over information.")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"View Area"),": The central workspace where data can be viewed in multiple formats - Grid, Gallery, Kanban or Form.")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("p",{parentName:"li"},(0,n.kt)("strong",{parentName:"p"},"Footbar"),": A pagination bar for navigating between paginated records. "))),(0,n.kt)("h2",{id:"terminologies"},"Terminologies"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:"right"},"Term"),(0,n.kt)("th",{parentName:"tr",align:"left"},"Description"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Workspace"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A workspace is a collection of one or more bases. It offers collaborative access to bases by enabling you to bring together interconnected tables, views, and various elements into a unified and organized entity")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Base"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A base is a collection of one or more tables, often related and linked to one another. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Project"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Table"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A base is housed in tables, where data is logically arranged into rows and columns. A base can have multiple tables. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Model"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Field"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A field or column in a table is a container for values that share the same data type. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Column"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Record"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A record represents a row in a table. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Row"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"View"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A view defines how data within a table is presented and interacted with. Default view type is the grid view; other supported view types include form, gallery, and kanban views.")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Cell"),(0,n.kt)("td",{parentName:"tr",align:"left"},"A cell represents the space created where a column and a row intersect within a grid-like structure. It serves as the fundamental unit for storing data")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Workspace member"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Workspace member with specific access permissions. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Member")," ",(0,n.kt)("inlineCode",{parentName:"td"},"User"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Workspace Owner"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Member who had created workspace. There can be only one owner for a workspace & ownership is non-transferable")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Base member"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Base member with specific access permissions. Alternative term ",(0,n.kt)("inlineCode",{parentName:"td"},"Member")," ",(0,n.kt)("inlineCode",{parentName:"td"},"User"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Base Owner"),(0,n.kt)("td",{parentName:"tr",align:"left"},"Member who had created base. There can be only one owner for a base & ownership is non-transferable")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:"right"},"Modal"),(0,n.kt)("td",{parentName:"tr",align:"left"},'In the context of user interfaces, a modal is a type of dialog or overlay that appears on top of the main content or interface and requires user interaction before the user can proceed. Modals are often used to gather user input, display alerts, or confirm actions. They typically "block" the rest of the interface until the user dismisses them, making them a focused and attention-grabbing element')))))}m.isMDXComponent=!0},7517:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/layout-overview-e73d351486ff105d59a64cc0d1801f12.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6a0eac6b.55871959.js b/packages/noco-docs/dist/assets/js/6a0eac6b.55871959.js new file mode 100644 index 0000000000..cefd0b2d55 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6a0eac6b.55871959.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4158],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>m});var r=a(67294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function l(e){for(var t=1;t=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var s=r.createContext({}),p=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},d=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var a=e.components,o=e.mdxType,n=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),c=p(a),f=o,m=c["".concat(s,".").concat(f)]||c[f]||u[f]||n;return a?r.createElement(m,l(l({ref:t},d),{},{components:a})):r.createElement(m,l({ref:t},d))}));function m(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=a.length,l=new Array(n);l[0]=f;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[c]="string"==typeof e?e:o,l[1]=i;for(var p=2;p{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>n,metadata:()=>i,toc:()=>p});var r=a(87462),o=(a(67294),a(3905));const n={title:"Download",tags:["Table operations","Download","Gallery View","Kanban View","Grid View","CSV","JSON","XLSX"],keywords:["NocoDB table","download","export","table administration","table organization"]},l=void 0,i={unversionedId:"table-operations/download",id:"table-operations/download",title:"Download",description:"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.",source:"@site/docs/060.table-operations/080.download.md",sourceDirName:"060.table-operations",slug:"/table-operations/download",permalink:"/table-operations/download",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/080.download.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Download",permalink:"/tags/download"},{label:"Gallery View",permalink:"/tags/gallery-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Grid View",permalink:"/tags/grid-view"},{label:"CSV",permalink:"/tags/csv"},{label:"JSON",permalink:"/tags/json"},{label:"XLSX",permalink:"/tags/xlsx"}],version:"current",sidebarPosition:80,frontMatter:{title:"Download",tags:["Table operations","Download","Gallery View","Kanban View","Grid View","CSV","JSON","XLSX"],keywords:["NocoDB table","download","export","table administration","table organization"]},sidebar:"tutorialSidebar",previous:{title:"Search",permalink:"/table-operations/search"},next:{title:"Table details overview",permalink:"/table-details/table-details-overview"}},s={},p=[{value:"Download Data",id:"download-data",level:3},{value:"Related topics",id:"related-topics",level:3}],d={toc:p},c="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(c,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the ",(0,o.kt)("inlineCode",{parentName:"p"},"Filter")," and ",(0,o.kt)("inlineCode",{parentName:"p"},"Sort")," feature to further refine your data."),(0,o.kt)("h3",{id:"download-data"},"Download Data"),(0,o.kt)("p",null,"To export data from NocoDB, follow these steps:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click on the ",(0,o.kt)("inlineCode",{parentName:"li"},"...")," button in the toolbar menu."),(0,o.kt)("li",{parentName:"ol"},"Choose the ",(0,o.kt)("inlineCode",{parentName:"li"},"Download")," option."),(0,o.kt)("li",{parentName:"ol"},"Select the desired file format from the dropdown menu.")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Export",src:a(74586).Z,width:"2376",height:"904"})),(0,o.kt)("h3",{id:"related-topics"},"Related topics"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"search"},"Quick Search"))))}u.isMDXComponent=!0},74586:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/download-7abfaf6c07a06e7669524f44c1832cc3.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6a105426.d17cfd2e.js b/packages/noco-docs/dist/assets/js/6a105426.d17cfd2e.js new file mode 100644 index 0000000000..6015372817 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6a105426.d17cfd2e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7592],{51533:t=>{t.exports=JSON.parse('{"label":"Getting Started","permalink":"/tags/getting-started","allTagsPath":"/tags","count":1,"items":[{"id":"getting-started/keyboard-shortcuts","title":"Keyboard shortcuts","description":"Quick Actions","permalink":"/getting-started/keyboard-shortcuts"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6a2ab9d1.97b9d597.js b/packages/noco-docs/dist/assets/js/6a2ab9d1.97b9d597.js new file mode 100644 index 0000000000..4e3bec2917 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6a2ab9d1.97b9d597.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8537],{40264:e=>{e.exports=JSON.parse('{"label":"Date & Time","permalink":"/tags/date-time","allTagsPath":"/tags","count":5,"items":[{"id":"fields/field-types/date-time-based/date","title":"Date","description":"Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/date"},{"id":"fields/field-types/formula/date-functions","title":"Date functions","description":"| Name | Syntax | Sample | Output | Remark |","permalink":"/fields/field-types/formula/date-functions"},{"id":"fields/field-types/date-time-based/date-time","title":"Date Time","description":"Date Time field type is used to store both date and time values in a single field.","permalink":"/fields/field-types/date-time-based/date-time"},{"id":"fields/field-types/date-time-based/duration","title":"Duration","description":"Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/duration"},{"id":"fields/field-types/date-time-based/time","title":"Time","description":"Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.","permalink":"/fields/field-types/date-time-based/time"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6aee45b4.2c53393f.js b/packages/noco-docs/dist/assets/js/6aee45b4.2c53393f.js new file mode 100644 index 0000000000..a098f4e5ca --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6aee45b4.2c53393f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8535],{61777:e=>{e.exports=JSON.parse('{"label":"Select based types","permalink":"/tags/select-based-types","allTagsPath":"/tags","count":2,"items":[{"id":"fields/field-types/select-based/multi-select","title":"Multi Select","description":"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/multi-select"},{"id":"fields/field-types/select-based/single-select","title":"Single Select","description":"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/single-select"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6d2f78d9.3af71101.js b/packages/noco-docs/dist/assets/js/6d2f78d9.3af71101.js new file mode 100644 index 0000000000..cd3c5fe660 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6d2f78d9.3af71101.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[254],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>y});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=r.createContext({}),p=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},d="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},u=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,l=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),d=p(n),u=o,y=d["".concat(s,".").concat(u)]||d[u]||f[u]||l;return n?r.createElement(y,a(a({ref:t},c),{},{components:n})):r.createElement(y,a({ref:t},c))}));function y(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=n.length,a=new Array(l);a[0]=u;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[d]="string"==typeof e?e:o,a[1]=i;for(var p=2;p{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>f,frontMatter:()=>l,metadata:()=>i,toc:()=>p});var r=n(87462),o=(n(67294),n(3905));const l={title:"JSON",tags:["Fields","Field types","Custom types","JSON"]},a=void 0,i={unversionedId:"fields/field-types/custom-types/json",id:"fields/field-types/custom-types/json",title:"JSON",description:"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.",source:"@site/docs/070.fields/040.field-types/050.custom-types/080.json.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/json",permalink:"/fields/field-types/custom-types/json",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/080.json.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"JSON",permalink:"/tags/json"}],version:"current",sidebarPosition:80,frontMatter:{title:"JSON",tags:["Fields","Field types","Custom types","JSON"]},sidebar:"tutorialSidebar",previous:{title:"Specific DB type",permalink:"/fields/field-types/custom-types/specific-db-type"},next:{title:"Formula",permalink:"/fields/field-types/formula/formula"}},s={},p=[{value:"Create a JSON field",id:"create-a-json-field",level:2},{value:"Cell display",id:"cell-display",level:3}],c={toc:p},d="wrapper";function f(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,r.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,(0,o.kt)("inlineCode",{parentName:"p"},"JSON")," is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs."),(0,o.kt)("h2",{id:"create-a-json-field"},"Create a JSON field"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,o.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,o.kt)("li",{parentName:"ol"},"[",(0,o.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,o.kt)("li",{parentName:"ol"},"Select the field type as ",(0,o.kt)("inlineCode",{parentName:"li"},"JSON")," from the dropdown."),(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,o.kt)("h3",{id:"cell-display"},"Cell display"),(0,o.kt)("p",null,"Cell displays the JSON data stored in the field. Click on expand record icon to open the JSON data in an editor modal."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6f7695df.42d4ccf1.js b/packages/noco-docs/dist/assets/js/6f7695df.42d4ccf1.js new file mode 100644 index 0000000000..df5f0b22d0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6f7695df.42d4ccf1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3011],{3905:(e,a,t)=>{t.d(a,{Zo:()=>c,kt:()=>m});var r=t(67294);function n(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function s(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);a&&(r=r.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,r)}return t}function i(e){for(var a=1;a=0||(n[t]=e[t]);return n}(e,a);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var o=r.createContext({}),b=function(e){var a=r.useContext(o),t=a;return e&&(t="function"==typeof e?e(a):i(i({},a),e)),t},c=function(e){var a=b(e.components);return r.createElement(o.Provider,{value:a},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var a=e.children;return r.createElement(r.Fragment,{},a)}},h=r.forwardRef((function(e,a){var t=e.components,n=e.mdxType,s=e.originalType,o=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),d=b(t),h=n,m=d["".concat(o,".").concat(h)]||d[h]||p[h]||s;return t?r.createElement(m,i(i({ref:a},c),{},{components:t})):r.createElement(m,i({ref:a},c))}));function m(e,a){var t=arguments,n=a&&a.mdxType;if("string"==typeof e||n){var s=t.length,i=new Array(s);i[0]=h;var l={};for(var o in a)hasOwnProperty.call(a,o)&&(l[o]=a[o]);l.originalType=e,l[d]="string"==typeof e?e:n,i[1]=l;for(var b=2;b{t.r(a),t.d(a,{assets:()=>o,contentTitle:()=>i,default:()=>p,frontMatter:()=>s,metadata:()=>l,toc:()=>b});var r=t(87462),n=(t(67294),t(3905));const s={title:"Share base",description:"Procedures to share a base & generating embedded iframe",tags:["Bases","Share","Collaboration"],keywords:["NocoDB base","share base","base collaboration","base actions","base settings"]},i=void 0,l={unversionedId:"bases/share-base",id:"bases/share-base",title:"Share base",description:"Procedures to share a base & generating embedded iframe",source:"@site/docs/040.bases/060.share-base.md",sourceDirName:"040.bases",slug:"/bases/share-base",permalink:"/bases/share-base",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/060.share-base.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Share",permalink:"/tags/share"},{label:"Collaboration",permalink:"/tags/collaboration"}],version:"current",sidebarPosition:60,frontMatter:{title:"Share base",description:"Procedures to share a base & generating embedded iframe",tags:["Bases","Share","Collaboration"],keywords:["NocoDB base","share base","base collaboration","base actions","base settings"]},sidebar:"tutorialSidebar",previous:{title:"Base collaboration",permalink:"/bases/base-collaboration"},next:{title:"Actions on base",permalink:"/bases/actions-on-base"}},o={},b=[{value:"Modify Share base",id:"modify-share-base",level:2},{value:"Disable Share base",id:"disable-share-base",level:2},{value:"Share base Access Permissions",id:"share-base-access-permissions",level:2},{value:"Embeddable Frame",id:"embeddable-frame",level:2},{value:"Embed into application's HTML Body",id:"embed-into-applications-html-body",level:3},{value:"Related articles",id:"related-articles",level:2}],c={toc:b},d="wrapper";function p(e){let{components:a,...s}=e;return(0,n.kt)(d,(0,r.Z)({},c,s,{components:a,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"To share a base, follow the steps below:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Navigate to the top right corner of the top navigation bar and click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Share")," button."),(0,n.kt)("li",{parentName:"ol"},"In the ",(0,n.kt)("inlineCode",{parentName:"li"},"Shared base")," section, toggle the switch to ",(0,n.kt)("inlineCode",{parentName:"li"},"Enable public access")," in order to activate the shared base feature."),(0,n.kt)("li",{parentName:"ol"},"The generated link for the shared base will be displayed above and can be utilized to share this project with others. To copy the URL, simply click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Copy Link")," option.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Share base",src:t(34992).Z,width:"3046",height:"994"})),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Share base",src:t(8558).Z,width:"2874",height:"1790"})),(0,n.kt)("h2",{id:"modify-share-base"},"Modify Share base"),(0,n.kt)("p",null,"Amending the ",(0,n.kt)("inlineCode",{parentName:"p"},"Share base")," setting will render the previously generated ",(0,n.kt)("inlineCode",{parentName:"p"},"Share base")," link invalid and generate a new link in its place.\nHere are the steps to modify it:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Share")," button located in the top right corner of the toolbar."),(0,n.kt)("li",{parentName:"ol"},"Toggle the option labeled ",(0,n.kt)("inlineCode",{parentName:"li"},"Enable public access")," to deactivate the base share."),(0,n.kt)("li",{parentName:"ol"},"Toggle the same option, ",(0,n.kt)("inlineCode",{parentName:"li"},"Enable public access,")," to reactivate the base share, subsequently generating a new link.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Enable public access",src:t(6196).Z,width:"2874",height:"1790"})),(0,n.kt)("h2",{id:"disable-share-base"},"Disable Share base"),(0,n.kt)("p",null,"Disabling ",(0,n.kt)("inlineCode",{parentName:"p"},"Share base")," will render the previously generated ",(0,n.kt)("inlineCode",{parentName:"p"},"Share base")," link invalid\nHere are the steps to disable it:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on the 'Share' button located in the top right corner of the toolbar."),(0,n.kt)("li",{parentName:"ol"},"Toggle the option labeled ",(0,n.kt)("inlineCode",{parentName:"li"},"Enable public access")," to deactivate the base share.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Enable public access",src:t(6196).Z,width:"2874",height:"1790"})),(0,n.kt)("h2",{id:"share-base-access-permissions"},"Share base Access Permissions"),(0,n.kt)("p",null,'The "Shared base" can be configured in two modes:'),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},"Viewer")," - Users with the provided link will have ",(0,n.kt)("strong",{parentName:"li"},"read-only")," access to the base data."),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("strong",{parentName:"li"},"Editor")," - Users with the provided link will have ",(0,n.kt)("strong",{parentName:"li"},"read and write")," access to the base data.")),(0,n.kt)("p",null,"Toggle ",(0,n.kt)("inlineCode",{parentName:"p"},"Enable Editor Access")," button to configure permissions as desired\n",(0,n.kt)("img",{alt:"Share base edit access",src:t(33703).Z,width:"2874",height:"1790"})),(0,n.kt)("h2",{id:"embeddable-frame"},"Embeddable Frame"),(0,n.kt)("p",null,"The NocoDB interface can be seamlessly integrated into existing applications through the utilization of the ",(0,n.kt)("a",{parentName:"p",href:"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"},"HTML IFRAME")," attribute. This feature empowers users to embed the NocoDB interface into their applications, allowing for a unified user experience. To generate the embeddable HTML code, follow these steps:"),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"To Generate Embeddable HTML Code:")),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click the ",(0,n.kt)("inlineCode",{parentName:"li"},"Share")," button located in the top right corner of the toolbar."),(0,n.kt)("li",{parentName:"ol"},"Within the ",(0,n.kt)("inlineCode",{parentName:"li"},"Shared base link")," tab, select the button to copy the ",(0,n.kt)("inlineCode",{parentName:"li"},"Embeddable HTML code")," to your clipboard.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Share base iFrame",src:t(95682).Z,width:"2874",height:"1790"})),(0,n.kt)("p",null,"Example:"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},'\n\n')),(0,n.kt)("h3",{id:"embed-into-applications-html-body"},"Embed into application's HTML Body"),(0,n.kt)("p",null,"Sample code with embedded iframe generated above"),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-html"},'\n\n \n \n \n\n')),(0,n.kt)("h2",{id:"related-articles"},"Related articles"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/create-base"},"Create an empty base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}p.isMDXComponent=!0},34992:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/share-base-1-c3c442ce89c00b2cd26119a2c7360ac5.png"},8558:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/share-base-2-e413c75c905d813681ef53d42bf0ad1b.png"},33703:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/share-base-edit-access-b293bc0349998853d6de8a9784ae9e54.png"},6196:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/share-base-enable-public-access-70567245aad03d619b620d838cbdb21a.png"},95682:(e,a,t)=>{t.d(a,{Z:()=>r});const r=t.p+"assets/images/share-base-iframe-5cf906c782389e1cf39b132cd1ab62ac.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/6fe2a298.b467aef4.js b/packages/noco-docs/dist/assets/js/6fe2a298.b467aef4.js new file mode 100644 index 0000000000..5622004f6c --- /dev/null +++ b/packages/noco-docs/dist/assets/js/6fe2a298.b467aef4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7219],{3905:(e,t,n)=>{n.d(t,{Zo:()=>s,kt:()=>g});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var p=r.createContext({}),l=function(e){var t=r.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},s=function(e){var t=l(e.components);return r.createElement(p.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,p=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),u=l(n),m=o,g=u["".concat(p,".").concat(m)]||u[m]||d[m]||a;return n?r.createElement(g,i(i({ref:t},s),{},{components:n})):r.createElement(g,i({ref:t},s))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=m;var c={};for(var p in t)hasOwnProperty.call(t,p)&&(c[p]=t[p]);c.originalType=e,c[u]="string"==typeof e?e:o,i[1]=c;for(var l=2;l{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>d,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var r=n(87462),o=(n(67294),n(3905));const a={title:"Repository structure",description:"Repository Structure",hide_table_of_contents:!0},i=void 0,c={unversionedId:"engineering/repository-structure",id:"version-0.109.7/engineering/repository-structure",title:"Repository structure",description:"Repository Structure",source:"@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md",sourceDirName:"050.engineering",slug:"/engineering/repository-structure",permalink:"/0.109.7/engineering/repository-structure",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md",tags:[],version:"0.109.7",sidebarPosition:20,frontMatter:{title:"Repository structure",description:"Repository Structure",hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Architecture Overview",permalink:"/0.109.7/engineering/architecture"},next:{title:"Development Setup",permalink:"/0.109.7/engineering/development-setup"}},p={},l=[],s={toc:l},u="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(u,(0,r.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"We use ",(0,o.kt)("inlineCode",{parentName:"p"},"Lerna")," to manage multi-packages. We have the following ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/tree/master/packages"},"packages"),"."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-cli")," : A CLI to create NocoDB app.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb-sdk"),": API client sdk of nocodb.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-gui"),": NocoDB Frontend.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-lib-gui"),": The build version of ",(0,o.kt)("inlineCode",{parentName:"p"},"nc-gui")," which will be used in ",(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nc-plugin"),": Plugin template.")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/noco-blog"),": NocoDB Blog which will be auto-released to ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/noco-blog"},"nocodb/noco-blog"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/noco-docs"),": NocoDB Documentation which will be auto-released to ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/noco-docs"},"nocodb/noco-docs"),".")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("inlineCode",{parentName:"p"},"packages/nocodb"),": NocoDB Backend, hosted in ",(0,o.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/nocodb"},"NPM"),"."))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/70424118.3dfed9c1.js b/packages/noco-docs/dist/assets/js/70424118.3dfed9c1.js new file mode 100644 index 0000000000..237a98129f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/70424118.3dfed9c1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[332],{15231:e=>{e.exports=JSON.parse('{"label":"Engineering","permalink":"/tags/engineering","allTagsPath":"/tags","count":8,"items":[{"id":"engineering/architecture","title":"Architecture overview","description":"Simple overview of NocoDB architecture","permalink":"/engineering/architecture"},{"id":"engineering/development-setup","title":"Development setup","description":"How to set-up your development environment","permalink":"/engineering/development-setup"},{"id":"engineering/translation","title":"i18n translation","description":"Contribute to NocoDB\'s i18n translation","permalink":"/engineering/translation"},{"id":"engineering/playwright","title":"Playwright E2E testing","description":"Overview to playwright based e2e tests","permalink":"/engineering/playwright"},{"id":"engineering/builds-and-releases","title":"Releases & builds","description":"NocoDB creates Docker and Binaries for each PR","permalink":"/engineering/builds-and-releases"},{"id":"engineering/repository-structure","title":"Repository structure","description":"Repository Structure","permalink":"/engineering/repository-structure"},{"id":"engineering/writing-docs","title":"Writing docs","description":"Overview to writing docs","permalink":"/engineering/writing-docs"},{"id":"engineering/unit-testing","title":"Writing unit tests","description":"Overview to Unit Testing","permalink":"/engineering/unit-testing"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/70efa42e.52807f73.js b/packages/noco-docs/dist/assets/js/70efa42e.52807f73.js new file mode 100644 index 0000000000..68cf4c0c36 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/70efa42e.52807f73.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4815],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>f});var l=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,l)}return a}function o(e){for(var t=1;t=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(l=0;l=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var m=l.createContext({}),p=function(e){var t=l.useContext(m),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},s=function(e){var t=p(e.components);return l.createElement(m.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},b=l.forwardRef((function(e,t){var a=e.components,i=e.mdxType,r=e.originalType,m=e.parentName,s=n(e,["components","mdxType","originalType","parentName"]),d=p(a),b=i,f=d["".concat(m,".").concat(b)]||d[b]||c[b]||r;return a?l.createElement(f,o(o({ref:t},s),{},{components:a})):l.createElement(f,o({ref:t},s))}));function f(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=a.length,o=new Array(r);o[0]=b;var n={};for(var m in t)hasOwnProperty.call(t,m)&&(n[m]=t[m]);n.originalType=e,n[d]="string"==typeof e?e:i,o[1]=n;for(var p=2;p{a.r(t),a.d(t,{assets:()=>m,contentTitle:()=>o,default:()=>c,frontMatter:()=>r,metadata:()=>n,toc:()=>p});var l=a(87462),i=(a(67294),a(3905));const r={title:"Create table via import",description:"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.",tags:["Tables","Import"],keywords:["NocoDB table","create table","table administration","table organization","import table","import csv","import excel","import json"]},o=void 0,n={unversionedId:"tables/create-table-via-import",id:"tables/create-table-via-import",title:"Create table via import",description:"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.",source:"@site/docs/050.tables/030.create-table-via-import.md",sourceDirName:"050.tables",slug:"/tables/create-table-via-import",permalink:"/tables/create-table-via-import",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/030.create-table-via-import.md",tags:[{label:"Tables",permalink:"/tags/tables"},{label:"Import",permalink:"/tags/import"}],version:"current",sidebarPosition:30,frontMatter:{title:"Create table via import",description:"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.",tags:["Tables","Import"],keywords:["NocoDB table","create table","table administration","table organization","import table","import csv","import excel","import json"]},sidebar:"tutorialSidebar",previous:{title:"Create empty table",permalink:"/tables/create-table"},next:{title:"Import data into an existing table",permalink:"/tables/import-data-into-existing-table"}},m={},p=[{value:"Import table from CSV / Excel / JSON",id:"import-table-from-csv--excel--json",level:2},{value:"Accessing import modal",id:"accessing-import-modal",level:3},{value:"1. From the base dashboard",id:"1-from-the-base-dashboard",level:4},{value:"2. From the base context menu",id:"2-from-the-base-context-menu",level:4},{value:"Importing file",id:"importing-file",level:3},{value:"1. Upload from local directory",id:"1-upload-from-local-directory",level:4},{value:"2. Upload from URL",id:"2-upload-from-url",level:4},{value:"Import configurations",id:"import-configurations",level:3},{value:"Advanced Settings",id:"advanced-settings",level:3},{value:"Related articles",id:"related-articles",level:2}],s={toc:p},d="wrapper";function c(e){let{components:t,...r}=e;return(0,i.kt)(d,(0,l.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"import-table-from-csv--excel--json"},"Import table from CSV / Excel / JSON"),(0,i.kt)("h3",{id:"accessing-import-modal"},"Accessing import modal"),(0,i.kt)("p",null,"There are two ways to access import modal:"),(0,i.kt)("h4",{id:"1-from-the-base-dashboard"},"1. From the base dashboard"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"import data",src:a(50180).Z,width:"2878",height:"984"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"import from dashboard",src:a(34186).Z,width:"2876",height:"1792"})),(0,i.kt)("h4",{id:"2-from-the-base-context-menu"},"2. From the base context menu"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"import from sidebar",src:a(68474).Z,width:"2876",height:"1442"})),(0,i.kt)("h3",{id:"importing-file"},"Importing file"),(0,i.kt)("p",null,"There are two ways to upload source file:"),(0,i.kt)("h4",{id:"1-upload-from-local-directory"},"1. Upload from local directory"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Upload")," tab from the Quick import modal."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"file upload")," button or drag and drop file to the modal."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"#advance-settings"},"Advance Settings")," (optional)"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button.\n",(0,i.kt)("img",{alt:"image",src:a(65982).Z,width:"2876",height:"1796"}))),(0,i.kt)("h4",{id:"2-upload-from-url"},"2. Upload from URL"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"URL")," tab from the Quick import modal."),(0,i.kt)("li",{parentName:"ol"},"Paste the URL of the file."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"#advance-settings"},"Advance Settings")," (optional)"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button.\n",(0,i.kt)("img",{alt:"image",src:a(88559).Z,width:"2874",height:"1798"}))),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"Multiple files can be imported at once."),(0,i.kt)("li",{parentName:"ul"},"Supported file formats: CSV, Excel, JSON"),(0,i.kt)("li",{parentName:"ul"},"Maximum file size: 5 MB"))),(0,i.kt)("h3",{id:"import-configurations"},"Import configurations"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"Table name")," - defaults to the name of the file; double click to edit (Optional)."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"Field configurations")," (Optional)",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Field name")," - name of the field as identified from import file header; click to edit."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Field type")," - inferred from the data in the field; click to edit."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Options")," - For ",(0,i.kt)("inlineCode",{parentName:"li"},"Single select")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"Multi select")," field types, options identified are listed here; click to edit."))),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("inlineCode",{parentName:"li"},"Remove field")," - Click on delete icon to exclude a field in source file from being imported (Optional)"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button to start importing the file.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(25472).Z,width:"2876",height:"1796"})),(0,i.kt)("h3",{id:"advanced-settings"},"Advanced Settings"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Number of Rows for Datatype Inference"),": Default value is set to 500 rows."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Automatic Field Type Detection"),': Enabled by default. If selected, the system will automatically detect field types. Otherwise, all fields will default to "SingleLineText."'),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Utilize First Row as Headers"),": Enabled by default. If selected, the first row in the spreadsheet will be treated as the header row and its contents will be used as field names."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Import Data"),": Enabled by default. If selected, all data will be imported; otherwise, only the table will be created.")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"By default, the first column will be chosen as Display Value and cannot be deleted.")),(0,i.kt)("h2",{id:"related-articles"},"Related articles"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/create-table"},"Create a new table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/import-data-into-existing-table"},"Import data from Csv/Xlsx into existing table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#rename-table"},"Rename a table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#duplicate-table"},"Duplicate a table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#delete-table"},"Delete a table"))))}c.isMDXComponent=!0},50180:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/base-import-from-dashboard-1-d84f2e26bb351110ca88c3e6e11e95ce.png"},88559:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/import-csv-url-f9d895566bcab33720fd7272125e1a37.png"},65982:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/import-csv-515b6519a0b425cfa1672cd51ec465d6.png"},25472:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/import-stage-2-9b0b9c7805b194f2dbe8017eae3c5d80.png"},34186:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/table-import-from-dashboard-1af1df0615bea827871e9577807395db.png"},68474:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/table-import-from-sidebar-e6bc97c393575998ed411314f7248ff1.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/71540999.a8f685c6.js b/packages/noco-docs/dist/assets/js/71540999.a8f685c6.js new file mode 100644 index 0000000000..d313291e04 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/71540999.a8f685c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8954],{3905:(e,A,t)=>{t.d(A,{Zo:()=>C,kt:()=>u});var r=t(67294);function g(e,A,t){return A in e?Object.defineProperty(e,A,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[A]=t,e}function i(e,A){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);A&&(r=r.filter((function(A){return Object.getOwnPropertyDescriptor(e,A).enumerable}))),t.push.apply(t,r)}return t}function n(e){for(var A=1;A=0||(g[t]=e[t]);return g}(e,A);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(g[t]=e[t])}return g}var a=r.createContext({}),o=function(e){var A=r.useContext(a),t=A;return e&&(t="function"==typeof e?e(A):n(n({},A),e)),t},C=function(e){var A=o(e.components);return r.createElement(a.Provider,{value:A},e.children)},E="mdxType",c={inlineCode:"code",wrapper:function(e){var A=e.children;return r.createElement(r.Fragment,{},A)}},l=r.forwardRef((function(e,A){var t=e.components,g=e.mdxType,i=e.originalType,a=e.parentName,C=I(e,["components","mdxType","originalType","parentName"]),E=o(t),l=g,u=E["".concat(a,".").concat(l)]||E[l]||c[l]||i;return t?r.createElement(u,n(n({ref:A},C),{},{components:t})):r.createElement(u,n({ref:A},C))}));function u(e,A){var t=arguments,g=A&&A.mdxType;if("string"==typeof e||g){var i=t.length,n=new Array(i);n[0]=l;var I={};for(var a in A)hasOwnProperty.call(A,a)&&(I[a]=A[a]);I.originalType=e,I[E]="string"==typeof e?e:g,n[1]=I;for(var o=2;o{t.r(A),t.d(A,{assets:()=>a,contentTitle:()=>n,default:()=>c,frontMatter:()=>i,metadata:()=>I,toc:()=>o});var r=t(87462),g=(t(67294),t(3905));const i={title:"Architecture Overview",description:"Simple overview of NocoDB architecture",hide_table_of_contents:!0},n=void 0,I={unversionedId:"engineering/architecture",id:"version-0.109.7/engineering/architecture",title:"Architecture Overview",description:"Simple overview of NocoDB architecture",source:"@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md",sourceDirName:"050.engineering",slug:"/engineering/architecture",permalink:"/0.109.7/engineering/architecture",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/010.architecture.md",tags:[],version:"0.109.7",sidebarPosition:10,frontMatter:{title:"Architecture Overview",description:"Simple overview of NocoDB architecture",hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Upload via API",permalink:"/0.109.7/developer-resources/upload-via-api"},next:{title:"Repository structure",permalink:"/0.109.7/engineering/repository-structure"}},a={},o=[],C={toc:o},E="wrapper";function c(e){let{components:A,...i}=e;return(0,g.kt)(E,(0,r.Z)({},C,i,{components:A,mdxType:"MDXLayout"}),(0,g.kt)("p",null,"By default, if ",(0,g.kt)("inlineCode",{parentName:"p"},"NC_DB")," is not specified, then SQLite will be used to store your meta data. We suggest users to separate the meta data and user data in different databases."),(0,g.kt)("p",null,(0,g.kt)("img",{alt:"image",src:t(40309).Z,width:"528",height:"615"})),(0,g.kt)("table",null,(0,g.kt)("thead",{parentName:"table"},(0,g.kt)("tr",{parentName:"thead"},(0,g.kt)("th",{parentName:"tr",align:null},"Project Type"),(0,g.kt)("th",{parentName:"tr",align:null},"Metadata stored in"),(0,g.kt)("th",{parentName:"tr",align:null},"Data stored in"))),(0,g.kt)("tbody",{parentName:"table"},(0,g.kt)("tr",{parentName:"tbody"},(0,g.kt)("td",{parentName:"tr",align:null},"Create new project"),(0,g.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,g.kt)("td",{parentName:"tr",align:null},"NC_DB")),(0,g.kt)("tr",{parentName:"tbody"},(0,g.kt)("td",{parentName:"tr",align:null},"Create new project with External Database"),(0,g.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,g.kt)("td",{parentName:"tr",align:null},"External Database")),(0,g.kt)("tr",{parentName:"tbody"},(0,g.kt)("td",{parentName:"tr",align:null},"Create new project from Excel"),(0,g.kt)("td",{parentName:"tr",align:null},"NC_DB"),(0,g.kt)("td",{parentName:"tr",align:null},"NC_DB")))))}c.isMDXComponent=!0},40309:(e,A,t)=>{t.d(A,{Z:()=>r});const r="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAhAAAAJnCAMAAADx+ZrCAAAC91BMVEUAAABERERCRERCRERDREUyl///gAD/gABNTU1NTU1NTU1XYWxOTk5MTExNTU1MTExMTExNTU2AgIBNTU2AgIFBQUFNTU1NTU1UVFRNTU2AgIBMTExMTExNTU1NTU1MTExMTExLS0xKSkpLTExNTU1MTExNTU2AgIBMTExNTU0AAABOTk+AgICAgICAgIBLS0sAAACAgIBMTEyAgID/gAAAAACAgICAgIAAAACAgICAgICAgICAgIAzmf9MTEz/gABNTU2BgYH9gAMJgMEAAAD/gQEzmf8ymf+AgICAgIAzmP8bgdX/gAAymf//gAAAAACAgIAzmf8ymf8AAAAymf8AAAAAAACAgID/gABLS0v/gAABcLI0mv//gQFNTU00mf+AgID/gAAzmv+AgIAAAAD/gQD/gAD/gAD/gQAzmf8zmf+AgID/gAAymP//gQIAAAA0mv81mv8CcrIAAAAzmf8AbrAymf//gAD/gAAAAAD/fwAAbrAAAABDQ0X/fwD/gABDREUDcbMAb7Azmf8zmf8tlv9DREVDREWBgYGAgICAgIADcrMAcLFYjcFVjsgYGBn///8boeJDREX/gAAzmf9NTU2AgIAAbq//wICZzP8AAAD/mjT/v3/5/f//jBfW7P3x+f//jx54vP//o0ez2f//uXP/r1+93v9drv//5sz/y5b/nTr/lCeRyP//iA/M5v+g0P//9+3/tGf/qlT/hAir1f9Wq///4MD/27f/vHnE4v9zuf9IpP/q9v7/8uT/1av/0aL9/v/s9v+Mxv9ksv///Pn/zp3/xYr/woX/t23/oED/rFjk8v9Op///7Nn/p07C5/j/6dP/48aAwP9ptP9Dof//2LH/ly71+/+l0v89nv/c7/7/yJDg8P+HxP//9Om32/84m///795ttv//+fM3reb/06bS6f+Wy/9owexJtOiHzvEYm9xzxe3/3bvO6/levetTuOme1/Oo3PUhpOO04Pa74/YsqOWAy+8boOESkdIPi8x4yO5LJRe/AAAAkHRSTlMAQH+Av4A0gPvh6wMNtqho8sv6kg4TPx0H2/ZNJ/e/rtJxLV2FUzrs5oqcI4gYrDTEtZtysYvXzHQj8+HBvoFuRTa+8+vMsUhHPi0SoaBJQC6Vhl86C7OklHl47+zd1s1WVlRPKR0Sh/V6cF1AHuo2993c1qZuamZhUCspHuYlCtPFiGRhCaCNfWuPw4n44kKWY0T9AAAfcUlEQVR42uzdv4vacBjH8Ux26L/jfnBw23FzObjhhvY6HF1bOrT/wgOfRYgEQkggMQSMgcRFsyTGCIoOugiCiOP9DTW2nuau7fXHGb5pn9fcrW/U7zd57pFYsd68/li5uP5wcnn5/vritvLpzWeJ/Vc+XWz+929enVdPz67evcV3vLs6O62en796cfL++vaNxP5Vb25PXp09TMBRbVlrGf227g5G6cxWPORdVW+uP0rsn/Ly4/VN9R22VM1w28k8nN5Nhp0VPRY1l+NJsI57tU0j8rc+zs4vL15LrPxeX1yen2HLa7hzf0G/aditt2xsvTt99b7CvzFKrPLiWwt2q9Yd0p9bTeJ+qmCr+oF/V5TS7c0VACftx5MVPYtO0DNkbJye8NdHyXy+zGpQ3YCeW8fStk1cSKw03rx4C9i6T8fRDFsecHotsVJ4c/MW0AL6PfvDxTzuBpPxshn97F/3FOCMkyiDyhUwuvuFAsxuPE/a2fWDnF0/POYptpyOBq6ebBoxH/YxV4FXEhPd9VukPv3ccpoMZsjzHHXW0FquXteNltaYqY6HvNkgmS7pgAVU+cQhuBPAoB9r+pbbcHZnUaNf71nrqW8OFyt6bLUYmv40tHr1vrG7i3BS1/Kb9JWv4oxvMYX2CajT943X7ZGKLUXTYzOi3xOZsa4p2FJH7fU4+6hpoCoxgb34wedD4CrIeLIxv1vQn1vczQ3ZQ0ZxA1oAfCUhsisE9FDUNRwA9qj+57eVj++zRzYAx2jgUmLCOoFDD4wND4BcM+m5mTUZG2/5V4S4boEFHTINAI3ekI5j2GsAOK9ITEwVwKK9SQuAO6RjGrqchLgqgHd3eE+A/pKObdkH8F5iAqpAgWrSV3VA71AROjrwQmLiqUAewEsi2jCAORVlDpxLTDibIMhS0JgSWfCmVJypx98aAsqCoKEByImMkIoU4kxiosmC2AgGABwqlgM+aggnC2LLVCFTsWScSkww90GQAYWK5fDPSvHsg2gDJhVpwidPAe2DqAPygorTbHAQAjoMwobWpKI0R7A5CPEcBqHPYIdUjNDGTOcgxHMYRK2pAwOTjs8cAHqzxkGIJxcEUdAAtLhJx9SMNSANiDgIAeWD2AhTQOlPIzqOaNpXgDQk4iCE9CCI+1tLxQg79Nw6oaEAGAREHISgHgWRMesyAE9rr4f0XJbdtuYBSBOTiIMQVj6IvXEiI6OOakGT/s7K7w1sZFIrK4yDEFg+iJzOuq0pyNiGNVlG9Pui5cQyZsgoWnud3XtxEGLLB/FYJ0gGuxEsOx30kzgwF/RzCzOIk/4gtXcDX4Mk6FCGgxDeU0FsRRNLbzXUw7FORZ3JDW3UMtx+u97uu0ZrpDXkmaocDniqjZZuTSLKcBDlkA/iCZ1Jd54rIyfXwbw76dA3HESJvIfzKIinRc3OcmxO7qbd0Jr36r25FXandxNzvOw0I9rhIEqoAoz3QTwLDqLMKkCdg2CHQcDiINg+CBWIOQi2P2XUgZbJQbBdEDS24dXGHATb3UNEfQA2B8HuL6Z8VwEHwQ5uKhd28YM6/PfHxLO/unbhUbE8/jOm4snNZXSpSF2eyxBQLgjHp+JMHA5CQIdBzKDeUVHubGgchHhyj79HgL6gIix0QONThoByQdAUsK3jJ7GwbCDhY6eI8kHQUAMcN6BjClwHSH2+hxBSPoiNbguA3PbpOPy2DKDV5YspQeWD2BrXZwBst9uk59XsujYAuz7mm0ph5YPYCfSsCafRj8f0PMahnjoAZnrAV9ciyweR/2zfzVNMO/Q3FkFtpABfv4n4WYbg8kHkDbu7SR21lYT+MvrtMR0/TAYqMsqo3l3ywy3xPfka/jjuNzx8pcitfm896Tz5tv6612/JCr7yUn095KedJfFkEFtm/MeDOvGYH3+XyT6I2rMO6vR4UKecfieIvdV2UMd/MKjjbwd1VvyCTJkdBMFvTDEOgj1wAoWDYPklbBwEyy1h4yBYfgkbB8HyS9g4CLY/ZaRwEg6C7Y+dIdCYchBsFwSZKSCnHATbXUytejJ4tpMd3lQGClIqVspL2MTDS9jYj0f5Cl/CdiMxweyDqPESNpYPQi14CduMgxBP7vE3Cl3CBj5lCCgXBPWLWsLWAjQ+doooHwR1lYKWsDk9vocQ0oMgaKyr2yVsKzqO1XYJm6qbfDElpnwQmVWsAVCM+AhL2GJDAaDFK76pFNWjIDJmrXG0JWyNGi9hE1k+iL1xT3u2JWxNvzdQkdF6Y36WIbZ8EDnDsJ8690vYOvQnOvdL2JxUD4f8cEt4T7yGH03mxux+IGugz6fmgp62MKdzfXA/4iX3YzPip52l8DiIx1b+fCAr2PHUVBsNDFdvJz0rXk8DP5iuY6uXtHXXGIy0VPWwo8iD+STix9/l8VQQe9HQDxN3NFPwNGU2cpPQH0b8PkTZ/GoQ+TKC7uFHQu4DoxtsOuAXZEqrghlPbrEDV/A5CLZ3A5eDYHsfgTkHwfZeADoHwfY+AK0hB8HuXbwDjDEHwXY+nQOYcRBsn8QrntxiOa/PoFOxdA5CZBUoVCwFFYmJ66zwrXxnEhPYCVSfiuOrOJGYwF5WgZCKEoL3+grvFZBEVIQoAa/1LYFLQElWdGyrRAEuJSa+i1PAqR95cqvuAKcXEiuFiyrgtcJjNdEMWx5Q5RxK5LaKDc06wuSWpWGjeiuxUnl9coqNhmv5TXoeTd9yG9g4PXktsS/s3bGKwjAYwPFMdejW8V7ARadm6lIodCudi9ChQ2sH6WpxsLtr4BuFIhSs4uJiluJW66Dc4r3A4egznC0ETrgbjpuq32/ICyT8kwwh7RPElDXSM7++/++Hxis/p6xB44CgtkpGumWGrPGRlbvi71vErhTPfELT0kcJQa039TrUZY35seKHfH+5LU/F5283yuK0vF32+YFXxzlruLTjTQl6Jok0doyIPdik69Vim1W8zEteZdvFap1u2IPIcMYSZuFp+bY+GDoWNUw3CtnPwsg1DWo5w4Fu4+nxlciBP5FsL76vEeM++7FnSxM/kAl6eeqbShASZA26BCFB1UDDRCBB7gJgItD3QAAmAgmypiigKBpBqNaDWR/6M+gRhGp9QqAeERKAoC926yAHQRiIwvAsaYOlDQG7KKkKJhAXJhzAe7DhVu++KsQFi7p0ge87w5+ZRwyCGAQxCGIQxCCIQdAHg6ANBkEbDII2fhSExpuRVXjUkgYltB+pIA4vhayu6BjEv0gFkS8lzFG6uVPQhS+tNV6im3Q+m2gPQYJrVOkZxL4kL0SMMfgeE5r7CX07wPaIogBUQNZgFAencWYQ+/JtQ9RSA2iXl2FxuWXIFcbKIztW0DJMwaBkEE/27CZHVSAKoPAdFgUWEAJI+BHQNhgHJL0A4zZ64q5Or/cF9eW1aey8QU8k95uQOz+Bou6yPAvimKapL9LgyRSEz9XRI5U1hQiRdAY0iKX58QwhPXCeghDDvs/Oaw9f1lymIHKiLNQgluZZEG0cx86/4IiCkrhv2Jyw/kMQXulpEEvz0xli6CgkJkkHknwFUSZfgpANNLQaxLJ8yv9IA5Gg8uVRHohaGr26VhqE0iCUBqF+JYgVQFvJ903nYEQt3kwQjWvh+H3TaRG1eDNBZCKORMqijrvKw4aBi+wmF0sSFZncp+N7VOxE9m19OUtwGKzTn9AlmA8iJF4bGsN52nTu8FpWYjGWWu5TgxvIUkMLVUcTsxP1+uaDyIjzZDsWlNMnI0yqjkIso8SM98lwegv3IS5POKxwZfcm6vU9e0MkvgNuQZwHuAYhcqK7Tweg6A9MNqWBSINYgtkg/IJyS9y7WxCWbX8NIhdHdpuCbHsq2Hzg+vFc7cuwIRL1+maCaJsIG4RstoayJO4t5eoahPeO8W/Tuq7DD1Yjddeybdi96ZJrEWaCANPkEgwQc0gHkg5aY1KLB53cp7CGSyXhAM4fC7D6yViCT3nquP676Qzyr/vN++SPqUyq6yPNRS2BXl0rDUJpEEqDUBqE0iCUBqH+0SDUAw1CPdAg/rBLxwIAAAAAg/ytd8+hGGKEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghCD27dg1jSgO4PhbOnULmfIPdCldOjsJERQHxU1BcEsgkASTJVOSduryhB8RBzk5Du6Ww1vuhtMMubvRm1SoBoOSwQz+A0mXetJAXwtt2uqzz/f7DPcXfO939+D9GBgEYmAQiIFBIAYGgRgYBGJgEIiBQSAGBoEYGARiYBCIgUEgBgaBGBgEYmAQiIFBIAYG8Tdepw6SuUTpcv/V/mUpkUsepF4TJFMQr5OlD/t72Ux5N1Y8KhzCzw4LR8XYbjmT3dv/UEpiH5sbxEFir1wE1qQfOsG92vVrfle9D5ywPwFWsbyXOCBoo4JI5U4zsQIsOGrXf7DssdtURl6d/qzujZSmO7ath3kjDiwUYpnTXIrIbTOCSJayu0ew0O75mlKnf6auaH6vDQtHu9lSkkhrA4JIZAoQmRjdgevRv+e5g64xgUghkyByEjyIj6V0VEPYetBHdDlG+kMrjJpIlz4S+QgdRDJ9CABGTaHLptQMADhMy/ftEDiIZBoAAmtEV2NkBQAgXRLCBpErA8DdiK7S6A4AyjkiE1GDuAQAv0NXreMDwCWRiKBBZAHMa8rDtQmQJfIQM4g0wIDyMgBIE2kIGcQpDHXKjz6BUyILIYMowpjypEGRyELEIJIwpFzdDEGa06eIQcTAoHwZECMSeL/znlwtnmIpw5DyNZTjt3J7a+fN1ZudrW0ilixAk/LkynLyfLt1dXW19ZYI5hVAq0H5abQAXhEZbO/MgxBuQMyDCMFQKC+KAY4kQcxHhIADYh6E6UBfp3zofXBMWYLY3hFwQMyDqDVMgJ52Q1ftRusBmI2aLEGQtwIOiCgISt0AwLE8ukqe5QAELqXyBLH9TrwBsQhiLnp5+6q2qiY8Te1HY4hSQYNInZznqzzkz09ShD82iAVXBYBhy+7QZevYrSEAqC6logZxUY0/zR4rq/c4e4pXLwhvbBDsVTfomePR8mLQzR7MBdHVPFGDODuOzyr8zOLHZ4Q7Nohnt5YBkbBVcxv03zSaAzWESGBHhQkbxFn+S4WvL3neRbBBMLyxed+GiNO1p53P9M997kztrgOR9r059iilIgdxzKUHtohjwh8bBMtzrecVrGEYqL6luYpHf81TXM3y1SAcPi98Wa5HI2IHcRGv8Be/IOvBBsGqT21fNdrfr3W2Q8cIei21e+ebNdO/66qtXmA4Yfv7Bc+2ofr2tE4j4geRqs4q/M2qKcITG8RvXE/1AVMGg+lgoE+v6TcbEsRJvLIO8RPCExvES9UbXudWaTZdXbMHVs0a2JruNpvKbcdr1OmzDQvi/KmyDk+fCE9sEEuxqUHkZ5V1mOXJC2EQfFUfK+vwWCUvhEHwVa2sBwbxn8IgfoBBvAgGgUEwMAgMgoFBYBCMjQkCF3UwCEYaJpSvr+ydu4sTURSHp7GyCylk/gGbdUEExVexCKLYKAgWFgp22glWVnarqPwuXFZSDDNIYLYZkkYLkykmmzKBgLswu0NClhDcJIa8Hz4KZ2aT3c34jG7GzMz9muXeamE+7uPcc3IovcF5iKAJcYRSGW4S9VhdRgCFyMbgHrEsE2LOhXhLt6NwizfbtMSEmG8hIglKIxm4QSZCaYndMuZdCMiUbhU+YNZ8KGxRGmfXzvkXAvmSnSavYXZodpp/OubPOATQJkREhfwQDSbGgFRhoVbnXwhAtj5XtiDrmAW6XMhaysl+DUwBwuBXQoiGAN0UQhMNHYYXhACMiJVVm3xflHC4SMX3SSvnNmL4N1IJoG8LUZcg9AipqpraIeORBkK6AoZVqIQ0IXlDCJN3iuXEVnotKuJwMKJr6S3LBuWdr0PXECSUTSGqgAR0ugJ0oDYa2UIQEb0qhIaoo+cZIUxiO6vUYmNdkVP4F1LvIokktVjdifn9LQNCBaIpRA45Uodeh0qGqc5otCtEH/0qbNpeEsIkLyulDWqRfR0vxjJTN1DJxIrxUc1WMrEjZwLwuAWB5CGhkseQdIG2aYLJaLQrhIGvVUiDcg3oekuI0VpfWN3ey69PrG0WP6i/zdYvbq4l9rL1t9NmjWhQXjsh2FeISgMd0rKXC9LMDUcjW4gqMLDPEGWg7EEhbMR/KNQxfvf8vXT6KjfPnApPJwRpAJWv0HI6GkRDT8Jwf5RRgbx1y8hkBOge2zJcKdRZWuRDS9w8w4cWwlMJUQYqpA9ALZM2AJGMRxoAodEdxyFaXhfi8At1lk7yKysnubnmKR8ylZg6Ujlolh1/9vFOpNJVIvSl/YN9yw/2uHuAewe44uDqJEsTXJ/k7Pec+I7wJMfGHDU5bv6P/EI4kKFrV4nQF7YQi7cOsujg5HdcOHnByZnvOe3k/OnzTo47ODeCtwjxoV1WLEKLTIhZY24ZT4/zK/wzbr4xV4hz/DJbIWaOfai0lDjBzTOn+HPnlqc8Q5RbTIi/E8I+tC1zc8zREL98bLrn73oKEPpMCJ+m4Z86Nm0+hI5cT0ONCeFPIaZOkGlBJ6SWaZOKpElfSV3qqTkpRUhDau7P9JkQgRGiCwi5YZeUAQlo1QDkJDS70A7OMCECIwQZCgCEVhtiNYdcDUKddNCro3Fghm0ZARKCkGZPRyMHC6OGBiFlqDnU92fYGSJAQlQEw1QCQgdis1Jv1eztIQVdIPszHhDiIk3DXdI+re0sA2pfR78JrSOhvfv520CDjGa8IQRrwnZoW8ZXFRDEAWkLgNi1Pv/oCXQ04w0hWBO2QzxDDFrEplUmk5gz3olDsCZsrFBnQogka8LGhJi4ZVBXm7BRv94y/CME1lxswrbu22unj4SAvOFSE7atuH/jEH4SAoaSdaEJW1YRfRyY8pUQgB4tzbgJWymq+zpS6TMhTMRImjVhY0I4mrCtz6AJ23rcCMBbhi+FMMnbBdvjJmwq/gZ1rwnb1roSzQfjccuvQlho4w9qkky/VjZlMYXfkxLlTeV1Okl3WS1ERS04r51+FsJGMJf81Q06ZjubLllFncpOxKzYKsrvzAKuolnBFdlRrBLPUjq7TcdsrL7e/CAE7Pnb90LsFfdH44WEacZvMT1IFOLRWEbwVT4E66jzMzMcS4JzwcgIvkyQYT23fkJQM6ZYVz4HQReC9e10EHQhWGdfB0EXgvX+dhB4IbiHX4jbfHnI/TFMCLd5fNttI77cfsz9MUwI13n88JKb54iPlx5O4wMT4j/w/NWlzx/diFB9+vj50qvn3DQwIf4H1x49uf3KDW4/eeT2/cIphAJ3UbwoxF8RXgxznuMmTcJdkvQmFwwWQguc97hDZbiJTO9wwSDMr4Q8uETcp0lXu/Il6X0uGCyEVry4RBy9TGkUbhGl9DIXDL6xd8eqCkJxHMfPcqe2y516gR6g2fUcKBoMxyBoMxB08QWy3eGP0BDXoaEldNEhc6q1SQUxksTh+hj3ZFPQcqku6PEz+ARffshZ/nQgjEpOBOIB7KX+H5Z2xc76PjkQRiUnAiERIFrE+rvFiwhARIz4+mx3jE67khOBCAeQFKb+TmaRAHAEsaLb7iKj/FYSwQCZt3pXE+bKywAwOzncGKjCBAxU7vj6q/lODhRm5fmhJkEgJKkcUIfUscxXLYPlpAegOFVC7Kl4EFRfw1A65pvLSX/G6bLJj1DCWh8xqfpBUHMyHYxluMrcwN76+l/5WztwM7iSx4MpmSNW1SKIm97kAytQisK0sOkxJevn7Mf6Y7F//rbo4SW7SMMISgr+mPQQ22oURGkuzHhuBHeSnbsOvWBPG7GLfeCFa3eXwJ0Rx88EdmehxkHcSEQVh/wAc2NlJMNj8kgZc3jAD0WVsPj3yFQQd1p9qSeQiTaljQzFqTYhQk/qt1CD0SAaTRCNJojGL7t0TAAAAIAwyP6pvdcBMiAEmxCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEGfXXnYUBcIwDH/LKs6EABo5iTaRsDDxAoy30Zu5q/d+Jyi23emZzWwmNLwLkyp/a+MTJeg/5OVaWzwIQygFdGp/gen1rARM7SkEKION1pYCIvJGEF5EXBv6F4igPmEVYgO/JNTaUkBwHEFcaaSC6AVCck/sQo7SnkRrCwERNSYP6Hyuklz3MwgFXEO2lyCi09pSQHQEAV3DTlMvED3HkDGzglgOCPlsn58QbfsFRM0tJPHShFhriwExwP0awlVH8xlEbvBCjtIbVmuLAaELdKkh8uH2AlHFBl8hp6oy60XlokCkhk6dAyRf7kNEl83zPoSntWWA+FR+9qQhu7cCWEE82vX31rvYK4i1FcTackB4g6v/kTss4/JjdiBqZwKR0OlLFZzlgdWXimsmfc0HaIo/TJyM/tImCrSE5gYi46pHlz+A2Ov2DcQbx+8gqqCB4fuEg/5Wv4zfPeYGoiLXblvG+xHEEMdDEZc22TyeMr6OBqtpL/PL+K2wOOEmiaJgozp+d7w7iEwKSB4n3Se8IHLqXA5JtM00rYZLtD1KXVP+uqnA1wKaG4hoq42hMhQXdpa9YmKH/QNEHCmOsdPepiyD0rQNp0NPdKKWBT5AhMSPk27jxBHb4MvBOJSaVhXBiSw1NFDIOlpAMwORUylPDuctuwsRidS/FwHJA0RPbnrstNcShYcwH78QItrB4FkuqZ4gMuLppHEiTIo9WzmcFXOeVobrW9iFBHlCr4pUP7+ZgbgRyA2AEQQjhL2BJ4gdR3bY514M+N4bR5d7gyXVB4iQZDppBHE7wR2EdGU/rfrxse0Zq1WT6ec3MxBnYh2I22AE4cOQE2XhE8RgDCl22stvhyQiHN9uQ9dmt43F/QDhbtlNJ40TDof2DiJXQPZYednhuqV+J2jPt0IxrX5+MwOR4iikPpgRRNdT5did/QARY13stNeyPdSEO+K2or7iuC8QTRXheNNJ44TDzr+DsBeM+1htyjJ8xz9T7hsOiljCnYiZgVDDxjtBTH+h80qyGiqaCURP4GI17V2Ayk1PJLkPUaYXCDBVrumkcWIPjTGpg4W9plVYwq9C4QkC11vGn2nmBiLkIA0bvco9TX3b8873wdSTvMLV98aTpgkv//zaaeWeU40VqXTgoAU0NxCutfo/2a2W0NxAqNh7+h95+0FLaHYg1r60glj7zS4dCwAAAAAM8rfePYdiaIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYIRghGCEYISIfbtZURyIwjBc+VlOI4jNDLYgHdFejIzQfTV9MYGsdH8WXu8kDgn5XAypwTDU6fdZiNT65aSOEgiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgoAgCAiCgCAICIKAIAgIgsB8PtYf4Xr7BFqr5frt+rZergLQOS6v1+vyGICb1boNggGB0YhgQEBGBAMCY0cGBMZWvxgQruXzC0hIaXMrAxJCELgPopgTQSSmDSIL88kIIjEEgRmCuJRFuNlv37PhiCAS9JAgtmZ2vvVgrWo4Ioj0PCKIzDo/+53lPBxtCCI5jwvi1AfxNBxVBJGcRwRxslYTWrm19u2XqrE2BR4Z6XnIHaIqrTyETl43RX/0xKUyQaydIAj8PYgZEURq+HMLBAGCAJdKEAQIAgSBEYKAIAgIgoAgCAiCgCAICIKA+F9BHC77Z4L4AiZPiNqszDOC8G5yEGfr1E+vFUF4NjmIhfXq8+47QXg1OYiNjTWX/TeC8Gj6ltHYnTInCH+mB/Fud3ImhEPTg9iZKnhkeDQ9iGcTOZdKl6YHEUrpgS3Dp4ggLuMeWDudigjihQnxBUQE8cPGPgnCpYggQqlFEIRHMUF8mnglCIdigjhZJ8+HIgjCn5ggQv3nNln0RSwIwp2oILa3HsZFEIQ3UUEs+m0zH4ogCGeigth0PWgRO4LwRYKYSIsgCFckiBjFUARBeCJB/FMRe4LwRIOIL6J+4ZHhigQRf4+oMy6VvkgQsYrmwNrpjAQRreKHKW94txMEAYIAQYAgQBAgCIwQBARBQBAEfrN3hzYAwDAQA6t2/50bGhD4INLdDOZuBEFUBfGSBLGMxRKCYHbzDgAAAAAAAADw26tDGwliIIiizRePdDE0atJSB2BuYNkRmBsMsjQ5HP/R3u3qyIWws/1AScVLqpRSSiml9L4U4GyS0osyXOGSlJ6U9YzazX1IO7EqYeuwIdv25cVCZI5iVZq130z3pqgrpXfANhjMRlQ4lKn4yToKA6YDOYi7U57s6NAeRpXAJxpQzyKFqG01/ArCGfkst6fUfg2ic4oUvmQxpJyqJVAJwGbwpM6WdHfKEnG8YyLGlIaLUmIUdl87DG34nOvyPIwPoAwdUF+DCCwKVTasgOOrlBbopLTBzkF8AgU4QzpDpCvgIgf0iom0AnZJO8EfzrekD3PM/q8//vp1SEoppZRSSu/sB++2H4HfKCBFAAAAAElFTkSuQmCC"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/71f80183.0b302a2b.js b/packages/noco-docs/dist/assets/js/71f80183.0b302a2b.js new file mode 100644 index 0000000000..00d34cedba --- /dev/null +++ b/packages/noco-docs/dist/assets/js/71f80183.0b302a2b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[924],{5068:t=>{t.exports=JSON.parse('{"label":"Shortcuts","permalink":"/tags/shortcuts","allTagsPath":"/tags","count":2,"items":[{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","permalink":"/records/actions-on-record"},{"id":"getting-started/keyboard-shortcuts","title":"Keyboard shortcuts","description":"Quick Actions","permalink":"/getting-started/keyboard-shortcuts"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/78ec2f26.d26b0d60.js b/packages/noco-docs/dist/assets/js/78ec2f26.d26b0d60.js new file mode 100644 index 0000000000..8d67a46353 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/78ec2f26.d26b0d60.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2673],{44413:s=>{s.exports=JSON.parse('{"label":"Relations","permalink":"/tags/relations","allTagsPath":"/tags","count":1,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7a733070.7ccc054e.js b/packages/noco-docs/dist/assets/js/7a733070.7ccc054e.js new file mode 100644 index 0000000000..6aed63787e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7a733070.7ccc054e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4223],{46864:e=>{e.exports=JSON.parse('{"label":"Share","permalink":"/tags/share","allTagsPath":"/tags","count":5,"items":[{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"},{"id":"bases/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/bases/share-base"},{"id":"collaboration/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/collaboration/share-base"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7c4b6d90.ae5e11da.js b/packages/noco-docs/dist/assets/js/7c4b6d90.ae5e11da.js new file mode 100644 index 0000000000..6f32f14499 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7c4b6d90.ae5e11da.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5580],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>m});var r=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function l(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},d=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},g=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=c(n),g=i,m=u["".concat(s,".").concat(g)]||u[g]||p[g]||a;return n?r.createElement(m,l(l({ref:t},d),{},{components:n})):r.createElement(m,l({ref:t},d))}));function m(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=n.length,l=new Array(a);l[0]=g;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:i,l[1]=o;for(var c=2;c{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>p,frontMatter:()=>a,metadata:()=>o,toc:()=>c});var r=n(87462),i=(n(67294),n(3905));const a={title:"Writing docs",description:"Overview to writing docs",tags:["Engineering"]},l=void 0,o={unversionedId:"engineering/writing-docs",id:"engineering/writing-docs",title:"Writing docs",description:"Overview to writing docs",source:"@site/docs/150.engineering/080.writing-docs.md",sourceDirName:"150.engineering",slug:"/engineering/writing-docs",permalink:"/engineering/writing-docs",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/080.writing-docs.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:80,frontMatter:{title:"Writing docs",description:"Overview to writing docs",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"i18n translation",permalink:"/engineering/translation"},next:{title:"FAQs",permalink:"/FAQs"}},s={},c=[{value:"Folder Structure",id:"folder-structure",level:2},{value:"File Structure",id:"file-structure",level:2},{value:"Nomenclature",id:"nomenclature",level:2},{value:"Tags",id:"tags",level:2},{value:"Active Tags",id:"active-tags",level:3},{value:"Description",id:"description",level:2},{value:"Images",id:"images",level:2},{value:"Before you commit",id:"before-you-commit",level:2}],d={toc:c},u="wrapper";function p(e){let{components:t,...a}=e;return(0,i.kt)(u,(0,r.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"This article discusses some of the protocol and conventions to be followed while writing docs."),(0,i.kt)("h2",{id:"folder-structure"},"Folder Structure"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Docs follow object-oriented approach. Each folder represents an object and each file represents procedures associated with that object."),(0,i.kt)("li",{parentName:"ul"},"Each folder contains an ",(0,i.kt)("inlineCode",{parentName:"li"},"_category_.json")," file which contains the metadata for that object.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},'{\n "label": "Engineering",\n "collapsible": true,\n "collapsed": true\n}\n')),(0,i.kt)("h2",{id:"file-structure"},"File Structure"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Add following metadata to the top of each file.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"---\ntitle: \"Writing docs\"\ndescription: \"Overview to writing docs\"\ntags: ['Engineering']\nkeywords: ['Engineering', Writing docs', 'Docs conventions']\n---\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"title")," is the title of the article that appears on the sidebar and on the top of the article."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"description")," is the description of the article that appears in search results."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"tags")," are the tags associated with the article. Tags are used to group articles together. For example, all articles with the tag ",(0,i.kt)("inlineCode",{parentName:"li"},"Workspaces")," will be grouped together."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"keywords")," are the keywords associated with the article. Keywords are used to improve search results. For example, if the user searches for ",(0,i.kt)("inlineCode",{parentName:"li"},"Create workspace"),", then the article with the keyword ",(0,i.kt)("inlineCode",{parentName:"li"},"Create workspace")," will be displayed in the search results.")),(0,i.kt)("h2",{id:"nomenclature"},"Nomenclature"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Folder names & file name are ",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"in kebab-case."),(0,i.kt)("li",{parentName:"ul"},"prefix with a number that represents the order in which the folder/file should be displayed in the sidebar."),(0,i.kt)("li",{parentName:"ul"},"prefix number is always a 3-digit number. "),(0,i.kt)("li",{parentName:"ul"},"For example, ",(0,i.kt)("inlineCode",{parentName:"li"},"010.account-settings"),"."))),(0,i.kt)("li",{parentName:"ul"},"Only first letter of the folder/file name is capitalized. Second letter onwards, first letter is capitalized only if it is a proper noun.")),(0,i.kt)("h2",{id:"tags"},"Tags"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"First letter of each tag is capitalized."),(0,i.kt)("li",{parentName:"ul"},"Tags usually are Objects or Actions. Add a tag only if we are sure that the tag will be used in multiple places. Example: 'Create' - we can have ",(0,i.kt)("inlineCode",{parentName:"li"},"Create project"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"Create user"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"Create API token")," etc.")),(0,i.kt)("h3",{id:"active-tags"},"Active Tags"),(0,i.kt)("p",null,"Tags that are currently being used in the docs are listed below. See if you can reuse any of these tags before adding a new tag."),(0,i.kt)("h2",{id:"description"},"Description"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Description should be crisp and to the point. Preferably one line."),(0,i.kt)("li",{parentName:"ul"},"Refer to the description associated with the tag to get an idea of how the description should be."),(0,i.kt)("li",{parentName:"ul"},"Descriptions appear in the search results (when searched by tags). So, it should be descriptive enough to give the user an idea of what the article is about.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Search by tags",src:n(51624).Z,width:"2850",height:"1796"})),(0,i.kt)("h2",{id:"images"},"Images"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Annotated images should be placed in ",(0,i.kt)("inlineCode",{parentName:"li"},"img/v2")," folder."),(0,i.kt)("li",{parentName:"ul"},"For every annotated image, there should be a corresponding unannotated image in the ",(0,i.kt)("inlineCode",{parentName:"li"},"img/v2-unannotated")," folder."),(0,i.kt)("li",{parentName:"ul"},"Images are kept in the same folder structure as the docs."),(0,i.kt)("li",{parentName:"ul"},"Use ",(0,i.kt)("inlineCode",{parentName:"li"},"Skitch")," for annotations.")),(0,i.kt)("h2",{id:"before-you-commit"},"Before you commit"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Use ",(0,i.kt)("inlineCode",{parentName:"li"},"npm run build")," to build the docs."),(0,i.kt)("li",{parentName:"ul"},"Ensure that the build is successful & there are no errors/warnings related to missing links, images, etc.")))}p.isMDXComponent=!0},51624:(e,t,n)=>{n.d(t,{Z:()=>r});const r=n.p+"assets/images/engineering-search-by-tags-9453d5cf2d1534c2f812c7aee697fe43.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7ce1d842.a668998d.js b/packages/noco-docs/dist/assets/js/7ce1d842.a668998d.js new file mode 100644 index 0000000000..25f521c89e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7ce1d842.a668998d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3998],{3905:(e,t,a)=>{a.d(t,{Zo:()=>b,kt:()=>m});var r=a(67294);function n(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function l(e){for(var t=1;t=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var s=r.createContext({}),c=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},b=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},d=r.forwardRef((function(e,t){var a=e.components,n=e.mdxType,o=e.originalType,s=e.parentName,b=i(e,["components","mdxType","originalType","parentName"]),p=c(a),d=n,m=p["".concat(s,".").concat(d)]||p[d]||u[d]||o;return a?r.createElement(m,l(l({ref:t},b),{},{components:a})):r.createElement(m,l({ref:t},b))}));function m(e,t){var a=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=a.length,l=new Array(o);l[0]=d;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[p]="string"==typeof e?e:n,l[1]=i;for(var c=2;c{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var r=a(87462),n=(a(67294),a(3905));const o={title:"Table overview",description:"Learn how to create, import, and manage tables in NocoDB.",tags:["Tables","Overview"],keywords:["NocoDB table","table overview","table administration","table organization"]},l=void 0,i={unversionedId:"tables/table-overview",id:"tables/table-overview",title:"Table overview",description:"Learn how to create, import, and manage tables in NocoDB.",source:"@site/docs/050.tables/010.table-overview.md",sourceDirName:"050.tables",slug:"/tables/table-overview",permalink:"/tables/table-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/010.table-overview.md",tags:[{label:"Tables",permalink:"/tags/tables"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Table overview",description:"Learn how to create, import, and manage tables in NocoDB.",tags:["Tables","Overview"],keywords:["NocoDB table","table overview","table administration","table organization"]},sidebar:"tutorialSidebar",previous:{title:"Actions on base",permalink:"/bases/actions-on-base"},next:{title:"Create empty table",permalink:"/tables/create-table"}},s={},c=[{value:"Related articles",id:"related-articles",level:2}],b={toc:c},p="wrapper";function u(e){let{components:t,...a}=e;return(0,n.kt)(p,(0,r.Z)({},b,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"A base is housed in tables, where data is logically arranged into rows and columns. A table in NocoDB serves as a robust center for managing your data effectively. You have the flexibility to create multiple tables, each catering to distinct sets of data. Moreover, you can link tables to one another to establish relationships between them."),(0,n.kt)("p",null,"Much like traditional spreadsheets, NocoDB tables empower you to carry out tasks such as sorting, filtering, and aggregating your data. What sets NocoDB apart from standard spreadsheets is its ability to present table data in various formats. You can view your data as a conventional grid with rows and columns, a gallery of cards, or even as interactive kanban boards, and then make use of a friendly form to input data."),(0,n.kt)("p",null,"As you delve into this section, you'll gain a deeper understanding of how to leverage NocoDB's tables effectively, equipping you to proficiently organize your own dataset."),(0,n.kt)("h2",{id:"related-articles"},"Related articles"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/create-table"},"Create a new table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/create-table-via-import"},"Create a table using a CSV, Excel or a JSON")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/import-data-into-existing-table"},"Import data from Csv/Xlsx into existing table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#rename-table"},"Rename a table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#duplicate-table"},"Duplicate a table")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/tables/actions-on-table#delete-table"},"Delete a table"))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7d5d7de6.f1090b5b.js b/packages/noco-docs/dist/assets/js/7d5d7de6.f1090b5b.js new file mode 100644 index 0000000000..fd9793b352 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7d5d7de6.f1090b5b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5017],{40108:e=>{e.exports=JSON.parse('{"label":"Rating","permalink":"/tags/rating","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/rating","title":"Rating","description":"The","permalink":"/fields/field-types/custom-types/rating"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7dce83b4.ef1623a1.js b/packages/noco-docs/dist/assets/js/7dce83b4.ef1623a1.js new file mode 100644 index 0000000000..609f6b9f8e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7dce83b4.ef1623a1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1193],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var a=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function i(e){for(var t=1;t=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=a.createContext({}),c=function(e){var t=a.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",h={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},d=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),u=c(r),d=n,f=u["".concat(s,".").concat(d)]||u[d]||h[d]||o;return r?a.createElement(f,i(i({ref:t},p),{},{components:r})):a.createElement(f,i({ref:t},p))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,i=new Array(o);i[0]=d;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[u]="string"==typeof e?e:n,i[1]=l;for(var c=2;c{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>h,frontMatter:()=>o,metadata:()=>l,toc:()=>c});var a=r(87462),n=(r(67294),r(3905));const o={title:"Search",tags:["Table operations","Search","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table search","search table","search records","search"]},i=void 0,l={unversionedId:"table-operations/search",id:"table-operations/search",title:"Search",description:"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.",source:"@site/docs/060.table-operations/070.search.md",sourceDirName:"060.table-operations",slug:"/table-operations/search",permalink:"/table-operations/search",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/070.search.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Search",permalink:"/tags/search"},{label:"Gallery View",permalink:"/tags/gallery-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:70,frontMatter:{title:"Search",tags:["Table operations","Search","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table search","search table","search records","search"]},sidebar:"tutorialSidebar",previous:{title:"Row height",permalink:"/table-operations/row-height"},next:{title:"Download",permalink:"/table-operations/download"}},s={},c=[{value:"Related topics",id:"related-topics",level:3}],p={toc:c},u="wrapper";function h(e){let{components:t,...o}=e;return(0,n.kt)(u,(0,a.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the ",(0,n.kt)("inlineCode",{parentName:"p"},"Filter")," feature to further refine your search results."),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on the ",(0,n.kt)("inlineCode",{parentName:"li"},"Search")," button in the toolbar menu (Optional)"),(0,n.kt)("li",{parentName:"ol"},"Choose the ",(0,n.kt)("inlineCode",{parentName:"li"},"Field")," to search by (Optional)"),(0,n.kt)("li",{parentName:"ol"},"Enter the search term in the search bar.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:r(80649).Z,width:"2304",height:"986"})),(0,n.kt)("h3",{id:"related-topics"},"Related topics"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"download"},"Download"))))}h.isMDXComponent=!0},80649:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/table-search-762c0ea68ae64bfda3aee882a82a326e.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/7e18769a.02a6d094.js b/packages/noco-docs/dist/assets/js/7e18769a.02a6d094.js new file mode 100644 index 0000000000..bb6202882e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/7e18769a.02a6d094.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4177],{3905:(e,t,i)=>{i.d(t,{Zo:()=>p,kt:()=>v});var n=i(67294);function a(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,n)}return i}function r(e){for(var t=1;t=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}var c=n.createContext({}),s=function(e){var t=n.useContext(c),i=t;return e&&(i="function"==typeof e?e(t):r(r({},t),e)),i},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},w=n.forwardRef((function(e,t){var i=e.components,a=e.mdxType,o=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),d=s(i),w=a,v=d["".concat(c,".").concat(w)]||d[w]||m[w]||o;return i?n.createElement(v,r(r({ref:t},p),{},{components:i})):n.createElement(v,r({ref:t},p))}));function v(e,t){var i=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var o=i.length,r=new Array(o);r[0]=w;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[d]="string"==typeof e?e:a,r[1]=l;for(var s=2;s{i.r(t),i.d(t,{assets:()=>c,contentTitle:()=>r,default:()=>m,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var n=i(87462),a=(i(67294),i(3905));const o={title:"Actions on view",description:"Learn how to delete, rename, duplicate a a view in NocoDB.",tags:["Views","Rename","Duplicate","Delete","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","delete view","rename view","duplicate view","view administration","view organization"]},r=void 0,l={unversionedId:"views/actions-on-view",id:"views/actions-on-view",title:"Actions on view",description:"Learn how to delete, rename, duplicate a a view in NocoDB.",source:"@site/docs/090.views/090.actions-on-view.md",sourceDirName:"090.views",slug:"/views/actions-on-view",permalink:"/views/actions-on-view",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/090.actions-on-view.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Rename",permalink:"/tags/rename"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Delete",permalink:"/tags/delete"},{label:"Grid View",permalink:"/tags/grid-view"},{label:"Form View",permalink:"/tags/form-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Gallery View",permalink:"/tags/gallery-view"}],version:"current",sidebarPosition:90,frontMatter:{title:"Actions on view",description:"Learn how to delete, rename, duplicate a a view in NocoDB.",tags:["Views","Rename","Duplicate","Delete","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","delete view","rename view","duplicate view","view administration","view organization"]},sidebar:"tutorialSidebar",previous:{title:"Kanban",permalink:"/views/view-types/kanban"},next:{title:"Data sources overview",permalink:"/data-source/data-source-overview"}},c={},s=[{value:"View context menu",id:"view-context-menu",level:2},{value:"Rename view",id:"rename-view",level:2},{value:"Duplicate view",id:"duplicate-view",level:2},{value:"Delete view",id:"delete-view",level:2}],p={toc:s},d="wrapper";function m(e){let{components:t,...o}=e;return(0,a.kt)(d,(0,n.Z)({},p,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h2",{id:"view-context-menu"},"View context menu"),(0,a.kt)("p",null,"The view context menu provides a set of tools to interact with the view. The view context menu can be accessed by clicking on the ellipsis symbol (",(0,a.kt)("inlineCode",{parentName:"p"},"..."),") located next to view in the left sidebar."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:i(5839).Z,width:"1322",height:"721"})),(0,a.kt)("h2",{id:"rename-view"},"Rename view"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on the ellipsis symbol (",(0,a.kt)("inlineCode",{parentName:"li"},"..."),") next to view name located in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"Rename")," option from the view context menu."),(0,a.kt)("li",{parentName:"ol"},"Enter the desired new view name into the provided field."),(0,a.kt)("li",{parentName:"ol"},"Use ",(0,a.kt)("inlineCode",{parentName:"li"},"Enter")," key to finalize the renaming process.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:i(5839).Z,width:"1322",height:"721"})),(0,a.kt)("h2",{id:"duplicate-view"},"Duplicate view"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on the ellipsis symbol (",(0,a.kt)("inlineCode",{parentName:"li"},"..."),") next to view name located in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"Duplicate")," option from the view context menu."),(0,a.kt)("li",{parentName:"ol"},"Enter the desired new view name into the provided field."),(0,a.kt)("li",{parentName:"ol"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"Duplicate View")," button in the confirmation dialog.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:i(5839).Z,width:"1322",height:"721"}),"\n",(0,a.kt)("img",{alt:"image",src:i(15075).Z,width:"1321",height:"718"})),(0,a.kt)("h2",{id:"delete-view"},"Delete view"),(0,a.kt)("admonition",{type:"danger"},(0,a.kt)("p",{parentName:"admonition"},(0,a.kt)("strong",{parentName:"p"},"This action cannot be undone."))),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on the ellipsis symbol (",(0,a.kt)("inlineCode",{parentName:"li"},"..."),") next to view name located in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"Delete")," option from the view context menu."),(0,a.kt)("li",{parentName:"ol"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"Delete View")," button in the confirmation dialog.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:i(5839).Z,width:"1322",height:"721"}),"\n",(0,a.kt)("img",{alt:"image",src:i(33215).Z,width:"1321",height:"717"})))}m.isMDXComponent=!0},33215:(e,t,i)=>{i.d(t,{Z:()=>n});const n=i.p+"assets/images/delete-view-confirmation-1afddd0d2975dde5d235b6ee04893b59.png"},15075:(e,t,i)=>{i.d(t,{Z:()=>n});const n=i.p+"assets/images/duplicate-confirmation-319dac1b1b6351e9c1da8019160cd854.png"},5839:(e,t,i)=>{i.d(t,{Z:()=>n});const n=i.p+"assets/images/view-context-menu-2aaa116e512e31804a1c471b0af66371.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/81862c4f.a3dbfbec.js b/packages/noco-docs/dist/assets/js/81862c4f.a3dbfbec.js new file mode 100644 index 0000000000..4a5d7afdf4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/81862c4f.a3dbfbec.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1499],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),l=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=l(e.components);return r.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},g=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,u=s(e,["components","mdxType","originalType","parentName"]),p=l(n),g=o,m=p["".concat(c,".").concat(g)]||p[g]||d[g]||a;return n?r.createElement(m,i(i({ref:t},u),{},{components:n})):r.createElement(m,i({ref:t},u))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=g;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[p]="string"==typeof e?e:o,i[1]=s;for(var l=2;l{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>a,metadata:()=>s,toc:()=>l});var r=n(87462),o=(n(67294),n(3905));const a={title:"Accessing APIs",description:"How to access NocoDB APIs with Auth or API token?"},i=void 0,s={unversionedId:"developer-resources/accessing-apis",id:"version-0.109.7/developer-resources/accessing-apis",title:"Accessing APIs",description:"How to access NocoDB APIs with Auth or API token?",source:"@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md",sourceDirName:"040.developer-resources",slug:"/developer-resources/accessing-apis",permalink:"/0.109.7/developer-resources/accessing-apis",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md",tags:[],version:"0.109.7",sidebarPosition:10,frontMatter:{title:"Accessing APIs",description:"How to access NocoDB APIs with Auth or API token?"},sidebar:"tutorialSidebar",previous:{title:"Project settings",permalink:"/0.109.7/setup-and-usages/project-settings"},next:{title:"REST APIs",permalink:"/0.109.7/developer-resources/rest-apis"}},c={},l=[{value:"Auth Token",id:"auth-token",level:2},{value:"API Token",id:"api-token",level:2},{value:"Swagger UI",id:"swagger-ui",level:2}],u={toc:l},p="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(p,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"NocoDB APIs can be authorized by either Auth Token or API Token."),(0,o.kt)("h2",{id:"auth-token"},"Auth Token"),(0,o.kt)("p",null,"Auth Token is a JWT Token generated based on the logged-in user. By default, the token is only valid for 10 hours. However, you can change the value by defining it using environment variable ",(0,o.kt)("inlineCode",{parentName:"p"},"NC_JWT_EXPIRES_IN"),". If you are passing Auth Token, make sure that the header is called ",(0,o.kt)("inlineCode",{parentName:"p"},"xc-auth"),"."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Go to NocoDB Project, click the rightmost button and click ",(0,o.kt)("inlineCode",{parentName:"li"},"Copy Auth Token"),".\n")),(0,o.kt)("img",{width:"357",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856397-b2e194e8-5ca1-420e-8b46-e1345d1d91d3.png"}),(0,o.kt)("h2",{id:"api-token"},"API Token"),(0,o.kt)("p",null,"API tokens allows us to integrate seamlessly with 3rd party apps. See ",(0,o.kt)("a",{parentName:"p",href:"../setup-and-usages/team-and-auth#api-tokens-management"},"API Tokens Management")," for more."),(0,o.kt)("h2",{id:"swagger-ui"},"Swagger UI"),(0,o.kt)("p",null,"You can interact with the API's resources via Swagger UI."),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Go to NocoDB Project, click the rightmost button and click ",(0,o.kt)("inlineCode",{parentName:"li"},"Swagger APIs Doc"),".")),(0,o.kt)("img",{width:"325",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856535-c81bfc2a-8cdd-41aa-8aa6-9c667c972fa4.png"}),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Click ",(0,o.kt)("inlineCode",{parentName:"li"},"Authorize"),", paste the token you copied in above steps and click ",(0,o.kt)("inlineCode",{parentName:"li"},"Authorize")," to save.")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/164874471-29fc1630-ab99-4c25-8ce2-b41e5415e4be.png",alt:"image"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/824dfda1.9af56b1b.js b/packages/noco-docs/dist/assets/js/824dfda1.9af56b1b.js new file mode 100644 index 0000000000..eb69a776dd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/824dfda1.9af56b1b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4570],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var o=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function i(e){for(var t=1;t=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=o.createContext({}),u=function(e){var t=o.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},c=function(e){var t=u(e.components);return o.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,a=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=u(n),m=a,f=p["".concat(l,".").concat(m)]||p[m]||d[m]||r;return n?o.createElement(f,i(i({ref:t},c),{},{components:n})):o.createElement(f,i({ref:t},c))}));function f(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=n.length,i=new Array(r);i[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:a,i[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>d,frontMatter:()=>r,metadata:()=>s,toc:()=>u});var o=n(87462),a=(n(67294),n(3905));const r={title:"Usage Information",description:"Non-sensitive and anonymous usage information"},i=void 0,s={unversionedId:"setup-and-usages/usage-information",id:"version-0.109.7/setup-and-usages/usage-information",title:"Usage Information",description:"Non-sensitive and anonymous usage information",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/usage-information",permalink:"/0.109.7/setup-and-usages/usage-information",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md",tags:[],version:"0.109.7",sidebarPosition:210,frontMatter:{title:"Usage Information",description:"Non-sensitive and anonymous usage information"},sidebar:"tutorialSidebar",previous:{title:"Import Airtable to NocoDB",permalink:"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free"},next:{title:"Links",permalink:"/0.109.7/setup-and-usages/links"}},l={},u=[{value:"Context",id:"context",level:2},{value:"What we collect ?",id:"what-we-collect-",level:2},{value:"What we DO NOT collect ?",id:"what-we-do-not-collect-",level:2},{value:"Opt-out",id:"opt-out",level:2}],c={toc:u},p="wrapper";function d(e){let{components:t,...n}=e;return(0,a.kt)(p,(0,o.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"NocoDB is a fast growing open source project which is UI heavy and we are committed to providing a solution that exceeds the expectations of the users and community.\nWe are also committed to continuing to develop and make NocoDB even better than it is today.\nTo that end, NocoDB contains a feature in which anonymous and otherwise non-sensitive data is collected.\nThis anonymous and non-sensitive data gives a better understanding of how users are interacting and using the product."),(0,a.kt)("h2",{id:"context"},"Context"),(0,a.kt)("p",null,"We will always continue to do hands-on UI/UX testing, surveys, issue tracking and roadmap.\nOtherwise talk with the Community while striving to understand\nand deliver what is being asked for and what is needed, by any means available."),(0,a.kt)("p",null,"However, these above actions alone are often insufficient"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"To maintain an overall picture of the product usage."),(0,a.kt)("li",{parentName:"ul"},"Prioritising the efforts."),(0,a.kt)("li",{parentName:"ul"},"Impact of any breaking changes."),(0,a.kt)("li",{parentName:"ul"},"To understand whether UI improvements are helpful to users.")),(0,a.kt)("h2",{id:"what-we-collect-"},"What we collect ?"),(0,a.kt)("p",null,"We collect actions made on models (project, table, view, sharedView, user, hook, image, sharedBase etc) periodically with :"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"System information (OS, node version, docker or npm)"),(0,a.kt)("li",{parentName:"ul"},"Environment (dev, staging, production)"),(0,a.kt)("li",{parentName:"ul"},"Instance information (Unique machine ID, database type, count of projects and users)"),(0,a.kt)("li",{parentName:"ul"},"Failures.")),(0,a.kt)("p",null,"Our UI Dashboard is a Vuejs-Nuxtjs app. Actions taken on UI with completely anonymized route names are sent as payload."),(0,a.kt)("h2",{id:"what-we-do-not-collect-"},"What we DO NOT collect ?"),(0,a.kt)("p",null,"We do not collect any private or sensitive information, such as:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Personally identifiable information"),(0,a.kt)("li",{parentName:"ul"},"Credential information (endpoints, ports, DB connections, username/password)"),(0,a.kt)("li",{parentName:"ul"},"Database/User data")),(0,a.kt)("h2",{id:"opt-out"},"Opt-out"),(0,a.kt)("p",null,"To disable usage information collection please set following environment variable."),(0,a.kt)("blockquote",null,(0,a.kt)("p",{parentName:"blockquote"},"NC_DISABLE_TELE=true")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/8292.a12213f5.js b/packages/noco-docs/dist/assets/js/8292.a12213f5.js new file mode 100644 index 0000000000..afeedd5f7f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/8292.a12213f5.js @@ -0,0 +1,2 @@ +/*! For license information please see 8292.a12213f5.js.LICENSE.txt */ +(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8292],{45303:(e,t,n)=>{"use strict";t.__esModule=!0,t.default=void 0;var r=a(n(67294)),o=a(n(40895));function a(e){return e&&e.__esModule?e:{default:e}}function i(){return i=Object.assign||function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=a(n(67294)),o=a(n(40895));function a(e){return e&&e.__esModule?e:{default:e}}function i(){return i=Object.assign||function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=a(n(67294)),o=a(n(40895));function a(e){return e&&e.__esModule?e:{default:e}}function i(){return i=Object.assign||function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=a(n(67294)),o=a(n(40895));function a(e){return e&&e.__esModule?e:{default:e}}function i(){return i=Object.assign||function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=a(n(67294)),o=a(n(45697));function a(e){return e&&e.__esModule?e:{default:e}}var i=function(e){var t=e.size,n=void 0===t?24:t,o=e.fill,a=void 0===o?"#000":o,i=e.className,l=e.path;return r.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:n,height:n,viewBox:"0 0 24 24",className:i},r.default.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}),r.default.createElement("path",{fill:a,d:l}))};i.propTypes={size:o.default.number,fill:o.default.string,className:o.default.string,path:o.default.string.isRequired};var l=i;t.default=l},91609:(e,t,n)=>{"use strict";t.__esModule=!0,t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=d();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var a=r?Object.getOwnPropertyDescriptor(e,o):null;a&&(a.get||a.set)?Object.defineProperty(n,o,a):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(n(67294)),o=u(n(45697)),a=n(83824),i=u(n(90183)),l=n(75473),s=n(95756),c=n(46568);function u(e){return e&&e.__esModule?e:{default:e}}function d(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return d=function(){return e},e}function m(){return m=Object.assign||function(e){for(var t=1;t1?(0,c.guessMaxImageWidth)(n.state.dimensions):0,supportsWebp:c.supportsWebp}),t=n.props.getUrl,r=t?t(e):e.src,o=n.props.shouldAutoDownload(function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=l(n(67294)),o=l(n(91609)),a=l(n(64490)),i=l(n(80663));function l(e){return e&&e.__esModule?e:{default:e}}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=function(e){return r.default.createElement(o.default,e)};u.defaultProps=function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;var r=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=s();if(t&&t.has(e))return t.get(e);var n={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(Object.prototype.hasOwnProperty.call(e,o)){var a=r?Object.getOwnPropertyDescriptor(e,o):null;a&&(a.get||a.set)?Object.defineProperty(n,o,a):n[o]=e[o]}n.default=e,t&&t.set(e,n);return n}(n(67294)),o=l(n(45697)),a=l(n(25776)),i=n(75473);function l(e){return e&&e.__esModule?e:{default:e}}function s(){if("function"!=typeof WeakMap)return null;var e=new WeakMap;return s=function(){return e},e}function c(){return c=Object.assign||function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;t.default=function(){for(var e,t=[],n=arguments.length,r=new Array(n),o=0;o1?t.join(" "):t[0],style:e}}},75473:(e,t)=>{"use strict";t.__esModule=!0,t.loadStates=t.icons=void 0;var n="loading",r="loaded",o="error",a={load:"load",loading:n,loaded:r,error:o,noicon:"noicon",offline:"offline"};t.icons=a;var i={initial:"initial",loading:n,loaded:r,error:o};t.loadStates=i},46568:(e,t)=>{"use strict";t.__esModule=!0,t.fallbackParams=t.selectSrc=t.supportsWebp=t.bytesToSize=t.guessMaxImageWidth=t.nativeConnection=t.ssr=void 0;var n="undefined"==typeof window||"ReactSnap"===window.navigator.userAgent;t.ssr=n;var r=!n&&!!window.navigator.connection;t.nativeConnection=r;t.guessMaxImageWidth=function(e,t){if(n)return 0;t||(t=window);var r,o=e.width,a=t.screen,i=a.width,l=a.height,s=document.documentElement,c=t.innerWidth||s.clientWidth,u=t.innerHeight||s.clientHeight,d=t.devicePixelRatio||1;if(i>c){var m=document.getElementsByTagName("body")[0],f=c-o;r=(m.clientHeight>u||m.clientHeight>l)&&f<=15?i-f:o/c*i}else r=o;return r*d};t.bytesToSize=function(e){var t=["Bytes","KB","MB","GB","TB"];if(0===e)return"n/a";var n=parseInt(Math.floor(Math.log(e)/Math.log(1024)),10);return 0===n?e+" "+t[n]:(e/Math.pow(1024,n)).toFixed(1)+" "+t[n]};var o=function(){if(n)return!1;var e=document.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))&&0===e.toDataURL("image/webp").indexOf("data:image/webp")}();t.supportsWebp=o;var a=function(e){return"webp"===e.format||e.src&&e.src.match(/\.webp($|\?.*)/i)};t.selectSrc=function(e){var t,n,r=e.srcSet,o=e.maxImageWidth,i=e.supportsWebp;if(0===r.length)throw new Error("Need at least one item in srcSet");if(i)0===(t=r.filter(a)).length&&(t=r);else if(0===(t=r.filter((function(e){return!a(e)}))).length)throw new Error("Need at least one supported format item in srcSet");var l=t.filter((function(e){return e.width>=o}));return 0===l.length?(l=t,n=Math.max.apply(null,l.map((function(e){return e.width})))):n=Math.min.apply(null,l.map((function(e){return e.width}))),t.filter((function(e){return e.width===n}))[0]};t.fallbackParams=function(e){var t=e.srcSet,r=e.getUrl;if(!n)return{};var o=t.filter((function(e){return!a(e)})),i=o[0];return{nsSrcSet:o.map((function(e){return(r?r(e):e.src)+" "+e.width+"w"})).join(","),nsSrc:r?r(i):i.src,ssr:n}}},64490:(e,t,n)=>{"use strict";t.__esModule=!0,t.default=void 0;var r,o=c(n(45303)),a=c(n(34442)),i=c(n(62266)),l=c(n(6818)),s=n(75473);function c(e){return e&&e.__esModule?e:{default:e}}var u=s.icons.load,d=s.icons.loading,m=s.icons.loaded,f=s.icons.error,p=s.icons.noicon,h=s.icons.offline,v=((r={})[u]=o.default,r[d]=l.default,r[m]=null,r[f]=i.default,r[p]=null,r[h]=a.default,r);t.default=v},95756:(e,t,n)=>{"use strict";t.__esModule=!0,t.xhrLoader=t.imageLoader=t.timeout=t.combineCancel=void 0;var r=n(3646);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}t.combineCancel=function(e,t){if(!t)return e;var n=e.then((function(e){return e}),(function(e){return e}));return n.cancel=function(){e.cancel(),t.cancel()},n};t.timeout=function(e){var t,n=new Promise((function(n){t=setTimeout(n,e)}));return n.cancel=function(){clearTimeout(t),t=void 0},n};var i=function(e){var t=new Image,n=new Promise((function(n,r){t.onload=n,t.onabort=t.onerror=function(){return r({})},t.src=e}));return n.cancel=function(){if(!t)throw new Error("Already canceled");t.onload=t.onabort=t.onerror=void 0,t.src="",t=void 0},n};t.imageLoader=i;t.xhrLoader=function(e,t){var n=new r.UnfetchAbortController,l=n.signal,s=new Promise((function(n,s){return(0,r.unfetch)(e,function(e){for(var t=1;t{"use strict";t.__esModule=!0,t.default=void 0;t.default={placeholder:{backgroundSize:"cover",backgroundRepeat:"no-repeat",position:"relative"},img:{width:"100%",height:"auto",maxWidth:"100%",marginBottom:"-4px"},icon:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",textAlign:"center"},noscript:{position:"absolute",top:0,left:0}}},3646:(e,t)=>{"use strict";t.__esModule=!0,t.unfetch=t.UnfetchAbortController=void 0;t.UnfetchAbortController=function(){var e=this;this.signal={onabort:function(){}},this.abort=function(){return e.signal.onabort()}};t.unfetch=function(e,t){return t=t||{},new Promise((function(n,r){var o=new XMLHttpRequest;for(var a in o.open(t.method||"get",e,!0),t.headers)o.setRequestHeader(a,t.headers[a]);function i(){var e,t=[],n=[],r={};return o.getAllResponseHeaders().replace(/^(.*?):\s*?([\s\S]*?)$/gm,(function(o,a,i){t.push(a=a.toLowerCase()),n.push([a,i]),e=r[a],r[a]=e?e+","+i:i})),{ok:2==(o.status/100|0),status:o.status,statusText:o.statusText,url:o.responseURL,clone:i,text:function(){return Promise.resolve(o.responseText)},json:function(){return Promise.resolve(o.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([o.response]))},headers:{keys:function(){return t},entries:function(){return n},get:function(e){return r[e.toLowerCase()]},has:function(e){return e.toLowerCase()in r}}}}o.withCredentials="include"===t.credentials,o.onload=function(){n(i())},o.onerror=r,t.signal&&(t.signal.onabort=function(){o.onerror=o.onload=void 0,o.abort()}),o.send(t.body)}))}},51065:(e,t,n)=>{"use strict";var r;t.Z=void 0;var o=((r=n(57474))&&r.__esModule?r:{default:r}).default;t.Z=o},3905:(e,t,n)=>{"use strict";n.d(t,{Zo:()=>u,kt:()=>p});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=r.createContext({}),c=function(e){var t=r.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},u=function(e){var t=c(e.components);return r.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(n),f=o,p=d["".concat(s,".").concat(f)]||d[f]||m[f]||a;return n?r.createElement(p,i(i({ref:t},u),{},{components:n})):r.createElement(p,i({ref:t},u))}));function p(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=f;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:o,i[1]=l;for(var c=2;c{"use strict";n.d(t,{Z:()=>s});var r=n(87462),o=n(67294),a=n(51065),i=n(97325);function l(e,t){switch(e){case"noicon":case"loaded":return null;case"loading":return(0,i.I)({id:"theme.IdealImageMessage.loading",message:"Loading...",description:"When the full-scale image is loading"});case"load":{const{pickedSrc:e}=t,{size:n}=e,r=n?` (${function(e){const t=["B","KB","MB","GB","TB"];if(0===e)return"n/a";const n=Math.floor(Math.log(e)/Math.log(1024));return 0===n?`${e} ${t[n]}`:`${(e/1024**n).toFixed(1)} ${t[n]}`}(n)})`:"";return(0,i.I)({id:"theme.IdealImageMessage.load",message:"Click to load{sizeMessage}",description:"To prompt users to load the full image. sizeMessage is a parenthesized size figure."},{sizeMessage:r})}case"offline":return(0,i.I)({id:"theme.IdealImageMessage.offline",message:"Your browser is offline. Image not loaded",description:"When the user is viewing an offline document"});case"error":{const{loadInfo:e}=t;return 404===e?(0,i.I)({id:"theme.IdealImageMessage.404error",message:"404. Image not found",description:"When the image is not found"}):(0,i.I)({id:"theme.IdealImageMessage.error",message:"Error. Click to reload",description:"When the image fails to load for unknown error"})}default:throw new Error(`Wrong icon: ${e}`)}}function s(e){const{img:t,...n}=e;return"string"==typeof t||"default"in t?o.createElement("img",(0,r.Z)({src:"string"==typeof t?t:t.default},n)):o.createElement(a.Z,(0,r.Z)({},n,{height:t.src.height??100,width:t.src.width??100,placeholder:{lqip:t.preSrc},src:t.src.src,srcSet:t.src.images.map((e=>({...e,src:e.path}))),getMessage:l}))}},94776:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>Oe});var r=n(67294),o=n(35463),a=n(43768);const i=r.createContext(null);function l(e){let{children:t,content:n}=e;const o=function(e){return(0,r.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(n);return r.createElement(i.Provider,{value:o},t)}function s(){const e=(0,r.useContext)(i);if(null===e)throw new a.i6("DocProvider");return e}function c(){const{metadata:e,frontMatter:t,assets:n}=s();return r.createElement(o.d,{title:e.title,description:e.description,keywords:t.keywords,image:n.image??t.image})}var u=n(86010),d=n(13488),m=n(87462),f=n(97325),p=n(83699);function h(e){const{permalink:t,title:n,subLabel:o,isNext:a}=e;return r.createElement(p.Z,{className:(0,u.Z)("pagination-nav__link",a?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t},o&&r.createElement("div",{className:"pagination-nav__sublabel"},o),r.createElement("div",{className:"pagination-nav__label"},n))}function v(e){const{previous:t,next:n}=e;return r.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,f.I)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages",description:"The ARIA label for the docs pagination"})},t&&r.createElement(h,(0,m.Z)({},t,{subLabel:r.createElement(f.Z,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc"},"Previous")})),n&&r.createElement(h,(0,m.Z)({},n,{subLabel:r.createElement(f.Z,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc"},"Next"),isNext:!0})))}function g(){const{metadata:e}=s();return r.createElement(v,{previous:e.previous,next:e.next})}var b=n(39962),y=n(89871),E=n(23702),w=n(86409),k=n(58801);const C={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return r.createElement(f.Z,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:r.createElement("b",null,n.label)}},"This is unreleased documentation for {siteTitle} {versionLabel} version.")},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return r.createElement(f.Z,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:r.createElement("b",null,n.label)}},"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.")}};function N(e){const t=C[e.versionMetadata.banner];return r.createElement(t,e)}function _(e){let{versionLabel:t,to:n,onClick:o}=e;return r.createElement(f.Z,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:r.createElement("b",null,r.createElement(p.Z,{to:n,onClick:o},r.createElement(f.Z,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label"},"latest version")))}},"For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).")}function L(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:o}}=(0,b.Z)(),{pluginId:a}=(0,y.gA)({failfast:!0}),{savePreferredVersionName:i}=(0,w.J)(a),{latestDocSuggestion:l,latestVersionSuggestion:s}=(0,y.Jo)(a),c=l??(d=s).docs.find((e=>e.id===d.mainDocId));var d;return r.createElement("div",{className:(0,u.Z)(t,E.k.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert"},r.createElement("div",null,r.createElement(N,{siteTitle:o,versionMetadata:n})),r.createElement("div",{className:"margin-top--md"},r.createElement(_,{versionLabel:s.label,to:c.path,onClick:()=>i(s.name)})))}function O(e){let{className:t}=e;const n=(0,k.E)();return n.banner?r.createElement(L,{className:t,versionMetadata:n}):null}function S(e){let{className:t}=e;const n=(0,k.E)();return n.badge?r.createElement("span",{className:(0,u.Z)(t,E.k.docs.docVersionBadge,"badge badge--secondary")},r.createElement(f.Z,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label}},"Version: {versionLabel}")):null}function T(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n}=e;return r.createElement(f.Z,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:r.createElement("b",null,r.createElement("time",{dateTime:new Date(1e3*t).toISOString()},n))}}," on {date}")}function x(e){let{lastUpdatedBy:t}=e;return r.createElement(f.Z,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:r.createElement("b",null,t)}}," by {user}")}function j(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:n,lastUpdatedBy:o}=e;return r.createElement("span",{className:E.k.common.lastUpdated},r.createElement(f.Z,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t&&n?r.createElement(T,{lastUpdatedAt:t,formattedLastUpdatedAt:n}):"",byUser:o?r.createElement(x,{lastUpdatedBy:o}):""}},"Last updated{atDate}{byUser}"),!1)}const B={iconEdit:"iconEdit_Z9Sw"};function P(e){let{className:t,...n}=e;return r.createElement("svg",(0,m.Z)({fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,u.Z)(B.iconEdit,t),"aria-hidden":"true"},n),r.createElement("g",null,r.createElement("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})))}function M(e){let{editUrl:t}=e;return r.createElement("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:E.k.common.editThisPage},r.createElement(P,null),r.createElement(f.Z,{id:"theme.common.editThisPage",description:"The link label to edit the current page"},"Edit this page"))}var Z=n(53852);const I={tags:"tags_jXut",tag:"tag_QGVx"};function H(e){let{tags:t}=e;return r.createElement(r.Fragment,null,r.createElement("b",null,r.createElement(f.Z,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list"},"Tags:")),r.createElement("ul",{className:(0,u.Z)(I.tags,"padding--none","margin-left--sm")},t.map((e=>{let{label:t,permalink:n}=e;return r.createElement("li",{key:n,className:I.tag},r.createElement(Z.Z,{label:t,permalink:n}))}))))}const A={lastUpdated:"lastUpdated_vwxv"};function z(e){return r.createElement("div",{className:(0,u.Z)(E.k.docs.docFooterTagsRow,"row margin-bottom--sm")},r.createElement("div",{className:"col"},r.createElement(H,e)))}function V(e){let{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:o,formattedLastUpdatedAt:a}=e;return r.createElement("div",{className:(0,u.Z)(E.k.docs.docFooterEditMetaRow,"row")},r.createElement("div",{className:"col"},t&&r.createElement(M,{editUrl:t})),r.createElement("div",{className:(0,u.Z)("col",A.lastUpdated)},(n||o)&&r.createElement(j,{lastUpdatedAt:n,formattedLastUpdatedAt:a,lastUpdatedBy:o})))}function D(){const{metadata:e}=s(),{editUrl:t,lastUpdatedAt:n,formattedLastUpdatedAt:o,lastUpdatedBy:a,tags:i}=e,l=i.length>0,c=!!(t||n||a);return l||c?r.createElement("footer",{className:(0,u.Z)(E.k.docs.docFooter,"docusaurus-mt-lg")},l&&r.createElement(z,{tags:i}),c&&r.createElement(V,{editUrl:t,lastUpdatedAt:n,lastUpdatedBy:a,formattedLastUpdatedAt:o})):null}var R=n(54639),U=n(20107);function W(e){const t=e.map((e=>({...e,parentIndex:-1,children:[]}))),n=Array(7).fill(-1);t.forEach(((e,t)=>{const r=n.slice(2,e.level);e.parentIndex=Math.max(...r),n[e.level]=t}));const r=[];return t.forEach((e=>{const{parentIndex:n,...o}=e;n>=0?t[n].children.push(o):r.push(o)})),r}function q(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:r}=e;return t.flatMap((e=>{const t=q({toc:e.children,minHeadingLevel:n,maxHeadingLevel:r});return function(e){return e.level>=n&&e.level<=r}(e)?[{...e,children:t}]:t}))}function $(e){const t=e.getBoundingClientRect();return t.top===t.bottom?$(e.parentNode):t}function F(e,t){let{anchorTopOffset:n}=t;const r=e.find((e=>$(e).top>=n));if(r){return function(e){return e.top>0&&e.bottom{e.current=t?0:document.querySelector(".navbar").clientHeight}),[t]),e}function Y(e){const t=(0,r.useRef)(void 0),n=G();(0,r.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:r,linkActiveClassName:o,minHeadingLevel:a,maxHeadingLevel:i}=e;function l(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(r),l=function(e){let{minHeadingLevel:t,maxHeadingLevel:n}=e;const r=[];for(let o=t;o<=n;o+=1)r.push(`h${o}.anchor`);return Array.from(document.querySelectorAll(r.join()))}({minHeadingLevel:a,maxHeadingLevel:i}),s=F(l,{anchorTopOffset:n.current}),c=e.find((e=>s&&s.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,n){n?(t.current&&t.current!==e&&t.current.classList.remove(o),e.classList.add(o),t.current=e):e.classList.remove(o)}(e,e===c)}))}return document.addEventListener("scroll",l),document.addEventListener("resize",l),l(),()=>{document.removeEventListener("scroll",l),document.removeEventListener("resize",l)}}),[e,n])}function J(e){let{toc:t,className:n,linkClassName:o,isChild:a}=e;return t.length?r.createElement("ul",{className:a?void 0:n},t.map((e=>r.createElement("li",{key:e.id},r.createElement("a",{href:`#${e.id}`,className:o??void 0,dangerouslySetInnerHTML:{__html:e.value}}),r.createElement(J,{isChild:!0,toc:e.children,className:n,linkClassName:o}))))):null}const K=r.memo(J);function X(e){let{toc:t,className:n="table-of-contents table-of-contents__left-border",linkClassName:o="table-of-contents__link",linkActiveClassName:a,minHeadingLevel:i,maxHeadingLevel:l,...s}=e;const c=(0,U.L)(),u=i??c.tableOfContents.minHeadingLevel,d=l??c.tableOfContents.maxHeadingLevel,f=function(e){let{toc:t,minHeadingLevel:n,maxHeadingLevel:o}=e;return(0,r.useMemo)((()=>q({toc:W(t),minHeadingLevel:n,maxHeadingLevel:o})),[t,n,o])}({toc:t,minHeadingLevel:u,maxHeadingLevel:d});return Y((0,r.useMemo)((()=>{if(o&&a)return{linkClassName:o,linkActiveClassName:a,minHeadingLevel:u,maxHeadingLevel:d}}),[o,a,u,d])),r.createElement(K,(0,m.Z)({toc:f,className:n,linkClassName:o},s))}const Q={tocCollapsibleButton:"tocCollapsibleButton_TO0P",tocCollapsibleButtonExpanded:"tocCollapsibleButtonExpanded_MG3E"};function ee(e){let{collapsed:t,...n}=e;return r.createElement("button",(0,m.Z)({type:"button"},n,{className:(0,u.Z)("clean-btn",Q.tocCollapsibleButton,!t&&Q.tocCollapsibleButtonExpanded,n.className)}),r.createElement(f.Z,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component"},"On this page"))}const te={tocCollapsible:"tocCollapsible_ETCw",tocCollapsibleContent:"tocCollapsibleContent_vkbj",tocCollapsibleExpanded:"tocCollapsibleExpanded_sAul"};function ne(e){let{toc:t,className:n,minHeadingLevel:o,maxHeadingLevel:a}=e;const{collapsed:i,toggleCollapsed:l}=(0,R.u)({initialState:!0});return r.createElement("div",{className:(0,u.Z)(te.tocCollapsible,!i&&te.tocCollapsibleExpanded,n)},r.createElement(ee,{collapsed:i,onClick:l}),r.createElement(R.z,{lazy:!0,className:te.tocCollapsibleContent,collapsed:i},r.createElement(X,{toc:t,minHeadingLevel:o,maxHeadingLevel:a})))}const re={tocMobile:"tocMobile_ITEo"};function oe(){const{toc:e,frontMatter:t}=s();return r.createElement(ne,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,u.Z)(E.k.docs.docTocMobile,re.tocMobile)})}const ae={tableOfContents:"tableOfContents_bqdL",docItemContainer:"docItemContainer_F8PC"},ie="table-of-contents__link toc-highlight",le="table-of-contents__link--active";function se(e){let{className:t,...n}=e;return r.createElement("div",{className:(0,u.Z)(ae.tableOfContents,"thin-scrollbar",t)},r.createElement(X,(0,m.Z)({},n,{linkClassName:ie,linkActiveClassName:le})))}function ce(){const{toc:e,frontMatter:t}=s();return r.createElement(se,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:E.k.docs.docTocDesktop})}var ue=n(13899),de=n(3905),me=n(4308);function fe(e){let{children:t}=e;return r.createElement(de.Zo,{components:me.Z},t)}function pe(e){let{children:t}=e;const n=function(){const{metadata:e,frontMatter:t,contentTitle:n}=s();return t.hide_title||void 0!==n?null:e.title}();return r.createElement("div",{className:(0,u.Z)(E.k.docs.docMarkdown,"markdown")},n&&r.createElement("header",null,r.createElement(ue.Z,{as:"h1"},n)),r.createElement(fe,null,t))}var he=n(78259),ve=n(69003),ge=n(79524);function be(e){return r.createElement("svg",(0,m.Z)({viewBox:"0 0 24 24"},e),r.createElement("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"}))}const ye={breadcrumbHomeIcon:"breadcrumbHomeIcon_YNFT"};function Ee(){const e=(0,ge.Z)("/");return r.createElement("li",{className:"breadcrumbs__item"},r.createElement(p.Z,{"aria-label":(0,f.I)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:"breadcrumbs__link",href:e},r.createElement(be,{className:ye.breadcrumbHomeIcon})))}const we={breadcrumbsContainer:"breadcrumbsContainer_Z_bl"};function ke(e){let{children:t,href:n,isLast:o}=e;const a="breadcrumbs__link";return o?r.createElement("span",{className:a,itemProp:"name"},t):n?r.createElement(p.Z,{className:a,href:n,itemProp:"item"},r.createElement("span",{itemProp:"name"},t)):r.createElement("span",{className:a},t)}function Ce(e){let{children:t,active:n,index:o,addMicrodata:a}=e;return r.createElement("li",(0,m.Z)({},a&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},{className:(0,u.Z)("breadcrumbs__item",{"breadcrumbs__item--active":n})}),t,r.createElement("meta",{itemProp:"position",content:String(o+1)}))}function Ne(){const e=(0,he.s1)(),t=(0,ve.Ns)();return e?r.createElement("nav",{className:(0,u.Z)(E.k.docs.docBreadcrumbs,we.breadcrumbsContainer),"aria-label":(0,f.I)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"})},r.createElement("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList"},t&&r.createElement(Ee,null),e.map(((t,n)=>{const o=n===e.length-1;return r.createElement(Ce,{key:n,active:o,index:n,addMicrodata:!!t.href},r.createElement(ke,{href:t.href,isLast:o},t.label))})))):null}const _e={docItemContainer:"docItemContainer_Djhp",docItemCol:"docItemCol_VOVn"};function Le(e){let{children:t}=e;const n=function(){const{frontMatter:e,toc:t}=s(),n=(0,d.i)(),o=e.hide_table_of_contents,a=!o&&t.length>0;return{hidden:o,mobile:a?r.createElement(oe,null):void 0,desktop:!a||"desktop"!==n&&"ssr"!==n?void 0:r.createElement(ce,null)}}();return r.createElement("div",{className:"row"},r.createElement("div",{className:(0,u.Z)("col",!n.hidden&&_e.docItemCol)},r.createElement(O,null),r.createElement("div",{className:_e.docItemContainer},r.createElement("article",null,r.createElement(Ne,null),r.createElement(S,null),n.mobile,r.createElement(pe,null,t),r.createElement(D,null)),r.createElement(g,null))),n.desktop&&r.createElement("div",{className:"col col--3"},n.desktop))}function Oe(e){const t=`docs-doc-id-${e.content.metadata.unversionedId}`,n=e.content;return r.createElement(l,{content:e.content},r.createElement(o.FG,{className:t},r.createElement(c,null),r.createElement(Le,null,r.createElement(n,null))))}},13899:(e,t,n)=>{"use strict";n.d(t,{Z:()=>u});var r=n(87462),o=n(67294),a=n(86010),i=n(97325),l=n(20107),s=n(83699);const c={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};function u(e){let{as:t,id:n,...u}=e;const{navbar:{hideOnScroll:d}}=(0,l.L)();if("h1"===t||!n)return o.createElement(t,(0,r.Z)({},u,{id:void 0}));const m=(0,i.I)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof u.children?u.children:n});return o.createElement(t,(0,r.Z)({},u,{className:(0,a.Z)("anchor",d?c.anchorWithHideOnScrollNavbar:c.anchorWithStickyNavbar,u.className),id:n}),u.children,o.createElement(s.Z,{className:"hash-link",to:`#${n}`,"aria-label":m,title:m},"\u200b"))}},16528:(e,t,n)=>{"use strict";n.d(t,{Z:()=>he});var r=n(87462),o=n(67294),a=n(31514);var i=n(51048),l=n(86010),s=n(9200),c=n(20107);function u(){const{prism:e}=(0,c.L)(),{colorMode:t}=(0,s.I)(),n=e.theme,r=e.darkTheme||n;return"dark"===t?r:n}var d=n(23702),m=n(87594),f=n.n(m);const p=/title=(?["'])(?.*?)\1/,h=/\{(?<range>[\d,-]+)\}/,v={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}};function g(e,t){const n=e.map((e=>{const{start:n,end:r}=v[e];return`(?:${n}\\s*(${t.flatMap((e=>[e.line,e.block?.start,e.block?.end].filter(Boolean))).join("|")})\\s*${r})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function b(e,t){let n=e.replace(/\n$/,"");const{language:r,magicComments:o,metastring:a}=t;if(a&&h.test(a)){const e=a.match(h).groups.range;if(0===o.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${a}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=o[0].className,r=f()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(r),code:n}}if(void 0===r)return{lineClassNames:{},code:n};const i=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return g(["js","jsBlock"],t);case"jsx":case"tsx":return g(["js","jsBlock","jsx"],t);case"html":return g(["js","jsBlock","html"],t);case"python":case"py":case"bash":return g(["bash"],t);case"markdown":case"md":return g(["html","jsx","bash"],t);default:return g(Object.keys(v),t)}}(r,o),l=n.split("\n"),s=Object.fromEntries(o.map((e=>[e.className,{start:0,range:""}]))),c=Object.fromEntries(o.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),u=Object.fromEntries(o.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),d=Object.fromEntries(o.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let f=0;f<l.length;){const e=l[f].match(i);if(!e){f+=1;continue}const t=e.slice(1).find((e=>void 0!==e));c[t]?s[c[t]].range+=`${f},`:u[t]?s[u[t]].start=f:d[t]&&(s[d[t]].range+=`${s[d[t]].start}-${f-1},`),l.splice(f,1)}n=l.join("\n");const m={};return Object.entries(s).forEach((e=>{let[t,{range:n}]=e;f()(n).forEach((e=>{m[e]??=[],m[e].push(t)}))})),{lineClassNames:m,code:n}}const y={codeBlockContainer:"codeBlockContainer_Ckt0"};function E(e){let{as:t,...n}=e;const a=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[r,o]=e;const a=t[r];a&&"string"==typeof o&&(n[a]=o)})),n}(u());return o.createElement(t,(0,r.Z)({},n,{style:a,className:(0,l.Z)(n.className,y.codeBlockContainer,d.k.common.codeBlock)}))}const w={codeBlockContent:"codeBlockContent_biex",codeBlockTitle:"codeBlockTitle_Ktv7",codeBlock:"codeBlock_bY9V",codeBlockStandalone:"codeBlockStandalone_MEMb",codeBlockLines:"codeBlockLines_e6Vv",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_o6Pm",buttonGroup:"buttonGroup__atx"};function k(e){let{children:t,className:n}=e;return o.createElement(E,{as:"pre",tabIndex:0,className:(0,l.Z)(w.codeBlockStandalone,"thin-scrollbar",n)},o.createElement("code",{className:w.codeBlockLines},t))}var C=n(43768);const N={attributes:!0,characterData:!0,childList:!0,subtree:!0};function _(e,t){const[n,r]=(0,o.useState)(),a=(0,o.useCallback)((()=>{r(e.current?.closest("[role=tabpanel][hidden]"))}),[e,r]);(0,o.useEffect)((()=>{a()}),[a]),function(e,t,n){void 0===n&&(n=N);const r=(0,C.zX)(t),a=(0,C.Ql)(n);(0,o.useEffect)((()=>{const t=new MutationObserver(r);return e&&t.observe(e,a),()=>t.disconnect()}),[e,r,a])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),a())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}const L={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]};var O={Prism:n(87410).Z,theme:L};function S(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(){return T=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},T.apply(this,arguments)}var x=/\r\n|\r|\n/,j=function(e){0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},B=function(e,t){var n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)};function P(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&-1===t.indexOf(r)&&(n[r]=e[r]);return n}var M=function(e){function t(){for(var t=this,n=[],r=arguments.length;r--;)n[r]=arguments[r];e.apply(this,n),S(this,"getThemeDict",(function(e){if(void 0!==t.themeDict&&e.theme===t.prevTheme&&e.language===t.prevLanguage)return t.themeDict;t.prevTheme=e.theme,t.prevLanguage=e.language;var n=e.theme?function(e,t){var n=e.plain,r=Object.create(null),o=e.styles.reduce((function(e,n){var r=n.languages,o=n.style;return r&&!r.includes(t)||n.types.forEach((function(t){var n=T({},e[t],o);e[t]=n})),e}),r);return o.root=n,o.plain=T({},n,{backgroundColor:null}),o}(e.theme,e.language):void 0;return t.themeDict=n})),S(this,"getLineProps",(function(e){var n=e.key,r=e.className,o=e.style,a=T({},P(e,["key","className","style","line"]),{className:"token-line",style:void 0,key:void 0}),i=t.getThemeDict(t.props);return void 0!==i&&(a.style=i.plain),void 0!==o&&(a.style=void 0!==a.style?T({},a.style,o):o),void 0!==n&&(a.key=n),r&&(a.className+=" "+r),a})),S(this,"getStyleForToken",(function(e){var n=e.types,r=e.empty,o=n.length,a=t.getThemeDict(t.props);if(void 0!==a){if(1===o&&"plain"===n[0])return r?{display:"inline-block"}:void 0;if(1===o&&!r)return a[n[0]];var i=r?{display:"inline-block"}:{},l=n.map((function(e){return a[e]}));return Object.assign.apply(Object,[i].concat(l))}})),S(this,"getTokenProps",(function(e){var n=e.key,r=e.className,o=e.style,a=e.token,i=T({},P(e,["key","className","style","token"]),{className:"token "+a.types.join(" "),children:a.content,style:t.getStyleForToken(a),key:void 0});return void 0!==o&&(i.style=void 0!==i.style?T({},i.style,o):o),void 0!==n&&(i.key=n),r&&(i.className+=" "+r),i})),S(this,"tokenize",(function(e,t,n,r){var o={code:t,grammar:n,language:r,tokens:[]};e.hooks.run("before-tokenize",o);var a=o.tokens=e.tokenize(o.code,o.grammar,o.language);return e.hooks.run("after-tokenize",o),a}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.render=function(){var e=this.props,t=e.Prism,n=e.language,r=e.code,o=e.children,a=this.getThemeDict(this.props),i=t.languages[n];return o({tokens:function(e){for(var t=[[]],n=[e],r=[0],o=[e.length],a=0,i=0,l=[],s=[l];i>-1;){for(;(a=r[i]++)<o[i];){var c=void 0,u=t[i],d=n[i][a];if("string"==typeof d?(u=i>0?u:["plain"],c=d):(u=B(u,d.type),d.alias&&(u=B(u,d.alias)),c=d.content),"string"==typeof c){var m=c.split(x),f=m.length;l.push({types:u,content:m[0]});for(var p=1;p<f;p++)j(l),s.push(l=[]),l.push({types:u,content:m[p]})}else i++,t.push(u),n.push(c),r.push(0),o.push(c.length)}i--,t.pop(),n.pop(),r.pop(),o.pop()}return j(l),s}(void 0!==i?this.tokenize(t,r,i,n):[r]),className:"prism-code language-"+n,style:void 0!==a?a.root:{},getLineProps:this.getLineProps,getTokenProps:this.getTokenProps})},t}(o.Component);const Z=M,I={codeLine:"codeLine_lJS_",codeLineNumber:"codeLineNumber_Tfdd",codeLineContent:"codeLineContent_feaV"};function H(e){let{line:t,classNames:n,showLineNumbers:a,getLineProps:i,getTokenProps:s}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const c=i({line:t,className:(0,l.Z)(n,a&&I.codeLine)}),u=t.map(((e,t)=>o.createElement("span",(0,r.Z)({key:t},s({token:e,key:t})))));return o.createElement("span",c,a?o.createElement(o.Fragment,null,o.createElement("span",{className:I.codeLineNumber}),o.createElement("span",{className:I.codeLineContent},u)):u,o.createElement("br",null))}var A=n(97325);function z(e){return o.createElement("svg",(0,r.Z)({viewBox:"0 0 24 24"},e),o.createElement("path",{fill:"currentColor",d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"}))}function V(e){return o.createElement("svg",(0,r.Z)({viewBox:"0 0 24 24"},e),o.createElement("path",{fill:"currentColor",d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}))}const D={copyButtonCopied:"copyButtonCopied_obH4",copyButtonIcons:"copyButtonIcons_eSgA",copyButtonIcon:"copyButtonIcon_y97N",copyButtonSuccessIcon:"copyButtonSuccessIcon_LjdS"};function R(e){let{code:t,className:n}=e;const[r,a]=(0,o.useState)(!1),i=(0,o.useRef)(void 0),s=(0,o.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;if("string"!=typeof e)throw new TypeError(`Expected parameter \`text\` to be a \`string\`, got \`${typeof e}\`.`);const r=document.createElement("textarea"),o=document.activeElement;r.value=e,r.setAttribute("readonly",""),r.style.contain="strict",r.style.position="absolute",r.style.left="-9999px",r.style.fontSize="12pt";const a=document.getSelection(),i=a.rangeCount>0&&a.getRangeAt(0);n.append(r),r.select(),r.selectionStart=0,r.selectionEnd=e.length;let l=!1;try{l=document.execCommand("copy")}catch{}r.remove(),i&&(a.removeAllRanges(),a.addRange(i)),o&&o.focus()}(t),a(!0),i.current=window.setTimeout((()=>{a(!1)}),1e3)}),[t]);return(0,o.useEffect)((()=>()=>window.clearTimeout(i.current)),[]),o.createElement("button",{type:"button","aria-label":r?(0,A.I)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,A.I)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,A.I)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,l.Z)("clean-btn",n,D.copyButton,r&&D.copyButtonCopied),onClick:s},o.createElement("span",{className:D.copyButtonIcons,"aria-hidden":"true"},o.createElement(z,{className:D.copyButtonIcon}),o.createElement(V,{className:D.copyButtonSuccessIcon})))}function U(e){return o.createElement("svg",(0,r.Z)({viewBox:"0 0 24 24"},e),o.createElement("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"}))}const W={wordWrapButtonIcon:"wordWrapButtonIcon_Bwma",wordWrapButtonEnabled:"wordWrapButtonEnabled_EoeP"};function q(e){let{className:t,onClick:n,isEnabled:r}=e;const a=(0,A.I)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return o.createElement("button",{type:"button",onClick:n,className:(0,l.Z)("clean-btn",t,r&&W.wordWrapButtonEnabled),"aria-label":a,title:a},o.createElement(U,{className:W.wordWrapButtonIcon,"aria-hidden":"true"}))}function $(e){let{children:t,className:n="",metastring:a,title:i,showLineNumbers:s,language:d}=e;const{prism:{defaultLanguage:m,magicComments:f}}=(0,c.L)(),h=d??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return t?.replace(/language-/,"")}(n)??m,v=u(),g=function(){const[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(!1),a=(0,o.useRef)(null),i=(0,o.useCallback)((()=>{const n=a.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[a,e]),l=(0,o.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=a.current,n=e>t||a.current.querySelector("code").hasAttribute("style");r(n)}),[a]);return _(a,l),(0,o.useEffect)((()=>{l()}),[e,l]),(0,o.useEffect)((()=>(window.addEventListener("resize",l,{passive:!0}),()=>{window.removeEventListener("resize",l)})),[l]),{codeBlockRef:a,isEnabled:e,isCodeScrollable:n,toggle:i}}(),y=function(e){return e?.match(p)?.groups.title??""}(a)||i,{lineClassNames:k,code:C}=b(t,{metastring:a,language:h,magicComments:f}),N=s??function(e){return Boolean(e?.includes("showLineNumbers"))}(a);return o.createElement(E,{as:"div",className:(0,l.Z)(n,h&&!n.includes(`language-${h}`)&&`language-${h}`)},y&&o.createElement("div",{className:w.codeBlockTitle},y),o.createElement("div",{className:w.codeBlockContent},o.createElement(Z,(0,r.Z)({},O,{theme:v,code:C,language:h??"text"}),(e=>{let{className:t,tokens:n,getLineProps:r,getTokenProps:a}=e;return o.createElement("pre",{tabIndex:0,ref:g.codeBlockRef,className:(0,l.Z)(t,w.codeBlock,"thin-scrollbar")},o.createElement("code",{className:(0,l.Z)(w.codeBlockLines,N&&w.codeBlockLinesWithNumbering)},n.map(((e,t)=>o.createElement(H,{key:t,line:e,getLineProps:r,getTokenProps:a,classNames:k[t],showLineNumbers:N})))))})),o.createElement("div",{className:w.buttonGroup},(g.isEnabled||g.isCodeScrollable)&&o.createElement(q,{className:w.codeButton,onClick:()=>g.toggle(),isEnabled:g.isEnabled}),o.createElement(R,{className:w.codeButton,code:C}))))}function F(e){let{children:t,...n}=e;const a=(0,i.Z)(),l=function(e){return o.Children.toArray(e).some((e=>(0,o.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),s="string"==typeof l?$:k;return o.createElement(s,(0,r.Z)({key:String(a)},n),l)}var G=n(83699);var Y=n(54639);const J={details:"details_lb9f",isBrowser:"isBrowser_bmU9",collapsibleContent:"collapsibleContent_i85q"};function K(e){return!!e&&("SUMMARY"===e.tagName||K(e.parentElement))}function X(e,t){return!!e&&(e===t||X(e.parentElement,t))}function Q(e){let{summary:t,children:n,...a}=e;const s=(0,i.Z)(),c=(0,o.useRef)(null),{collapsed:u,setCollapsed:d}=(0,Y.u)({initialState:!a.open}),[m,f]=(0,o.useState)(a.open),p=o.isValidElement(t)?t:o.createElement("summary",null,t??"Details");return o.createElement("details",(0,r.Z)({},a,{ref:c,open:m,"data-collapsed":u,className:(0,l.Z)(J.details,s&&J.isBrowser,a.className),onMouseDown:e=>{K(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const t=e.target;K(t)&&X(t,c.current)&&(e.preventDefault(),u?(d(!1),f(!0)):d(!0))}}),p,o.createElement(Y.z,{lazy:!1,collapsed:u,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{d(e),f(!e)}},o.createElement("div",{className:J.collapsibleContent},n)))}const ee={details:"details_b_Ee"},te="alert alert--info";function ne(e){let{...t}=e;return o.createElement(Q,(0,r.Z)({},t,{className:(0,l.Z)(te,ee.details,t.className)}))}var re=n(13899);function oe(e){return o.createElement(re.Z,e)}const ae={containsTaskList:"containsTaskList_mC6p"};function ie(e){if(void 0!==e)return(0,l.Z)(e,e?.includes("contains-task-list")&&ae.containsTaskList)}const le={img:"img_ev3q"};const se="admonition_LlT9",ce="admonitionHeading_tbUL",ue="admonitionIcon_kALy",de="admonitionContent_S0QG";const me={note:{infimaClassName:"secondary",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 14 16"},o.createElement("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"}))},label:o.createElement(A.Z,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)"},"note")},tip:{infimaClassName:"success",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 12 16"},o.createElement("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"}))},label:o.createElement(A.Z,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)"},"tip")},danger:{infimaClassName:"danger",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 12 16"},o.createElement("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"}))},label:o.createElement(A.Z,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)"},"danger")},info:{infimaClassName:"info",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 14 16"},o.createElement("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"}))},label:o.createElement(A.Z,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)"},"info")},caution:{infimaClassName:"warning",iconComponent:function(){return o.createElement("svg",{viewBox:"0 0 16 16"},o.createElement("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"}))},label:o.createElement(A.Z,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)"},"caution")}},fe={secondary:"note",important:"info",success:"tip",warning:"danger"};function pe(e){const{mdxAdmonitionTitle:t,rest:n}=function(e){const t=o.Children.toArray(e),n=t.find((e=>o.isValidElement(e)&&"mdxAdmonitionTitle"===e.props?.mdxType)),r=o.createElement(o.Fragment,null,t.filter((e=>e!==n)));return{mdxAdmonitionTitle:n,rest:r}}(e.children);return{...e,title:e.title??t,children:n}}const he={head:function(e){const t=o.Children.map(e.children,(e=>o.isValidElement(e)?function(e){if(e.props?.mdxType&&e.props.originalType){const{mdxType:t,originalType:n,...r}=e.props;return o.createElement(e.props.originalType,r)}return e}(e):e));return o.createElement(a.Z,e,t)},code:function(e){const t=["a","abbr","b","br","button","cite","code","del","dfn","em","i","img","input","ins","kbd","label","object","output","q","ruby","s","small","span","strong","sub","sup","time","u","var","wbr"];return o.Children.toArray(e.children).every((e=>"string"==typeof e&&!e.includes("\n")||(0,o.isValidElement)(e)&&t.includes(e.props?.mdxType)))?o.createElement("code",e):o.createElement(F,e)},a:function(e){return o.createElement(G.Z,e)},pre:function(e){return o.createElement(F,(0,o.isValidElement)(e.children)&&"code"===e.children.props?.originalType?e.children.props:{...e})},details:function(e){const t=o.Children.toArray(e.children),n=t.find((e=>o.isValidElement(e)&&"summary"===e.props?.mdxType)),a=o.createElement(o.Fragment,null,t.filter((e=>e!==n)));return o.createElement(ne,(0,r.Z)({},e,{summary:n}),a)},ul:function(e){return o.createElement("ul",(0,r.Z)({},e,{className:ie(e.className)}))},img:function(e){return o.createElement("img",(0,r.Z)({loading:"lazy"},e,{className:(t=e.className,(0,l.Z)(t,le.img))}));var t},h1:e=>o.createElement(oe,(0,r.Z)({as:"h1"},e)),h2:e=>o.createElement(oe,(0,r.Z)({as:"h2"},e)),h3:e=>o.createElement(oe,(0,r.Z)({as:"h3"},e)),h4:e=>o.createElement(oe,(0,r.Z)({as:"h4"},e)),h5:e=>o.createElement(oe,(0,r.Z)({as:"h5"},e)),h6:e=>o.createElement(oe,(0,r.Z)({as:"h6"},e)),admonition:function(e){const{children:t,type:n,title:r,icon:a}=pe(e),i=function(e){const t=fe[e]??e,n=me[t];return n||(console.warn(`No admonition config found for admonition type "${t}". Using Info as fallback.`),me.info)}(n),s=r??i.label,{iconComponent:c}=i,u=a??o.createElement(c,null);return o.createElement("div",{className:(0,l.Z)(d.k.common.admonition,d.k.common.admonitionType(e.type),"alert",`alert--${i.infimaClassName}`,se)},o.createElement("div",{className:ce},o.createElement("span",{className:ue},u),s),o.createElement("div",{className:de},t))},mermaid:n(23855).Z}},18679:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(67294),o=n(86010);const a={tabItem:"tabItem_Ymn6"};function i(e){let{children:t,hidden:n,className:i}=e;return r.createElement("div",{role:"tabpanel",className:(0,o.Z)(a.tabItem,i),hidden:n},t)}},73992:(e,t,n)=>{"use strict";n.d(t,{Z:()=>w});var r=n(87462),o=n(67294),a=n(86010),i=n(72957),l=n(16550),s=n(75238),c=n(33609),u=n(92560);function d(e){return function(e){return o.Children.map(e,(e=>{if(!e||(0,o.isValidElement)(e)&&function(e){const{props:t}=e;return!!t&&"object"==typeof t&&"value"in t}(e))return e;throw new Error(`Docusaurus error: Bad <Tabs> child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the <Tabs> component should be <TabItem>, and every <TabItem> should have a unique "value" prop.`)}))?.filter(Boolean)??[]}(e).map((e=>{let{props:{value:t,label:n,attributes:r,default:o}}=e;return{value:t,label:n,attributes:r,default:o}}))}function m(e){const{values:t,children:n}=e;return(0,o.useMemo)((()=>{const e=t??d(n);return function(e){const t=(0,c.l)(e,((e,t)=>e.value===t.value));if(t.length>0)throw new Error(`Docusaurus error: Duplicate values "${t.map((e=>e.value)).join(", ")}" found in <Tabs>. Every value needs to be unique.`)}(e),e}),[t,n])}function f(e){let{value:t,tabValues:n}=e;return n.some((e=>e.value===t))}function p(e){let{queryString:t=!1,groupId:n}=e;const r=(0,l.k6)(),a=function(e){let{queryString:t=!1,groupId:n}=e;if("string"==typeof t)return t;if(!1===t)return null;if(!0===t&&!n)throw new Error('Docusaurus error: The <Tabs> component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return n??null}({queryString:t,groupId:n});return[(0,s._X)(a),(0,o.useCallback)((e=>{if(!a)return;const t=new URLSearchParams(r.location.search);t.set(a,e),r.replace({...r.location,search:t.toString()})}),[a,r])]}function h(e){const{defaultValue:t,queryString:n=!1,groupId:r}=e,a=m(e),[i,l]=(0,o.useState)((()=>function(e){let{defaultValue:t,tabValues:n}=e;if(0===n.length)throw new Error("Docusaurus error: the <Tabs> component requires at least one <TabItem> children component");if(t){if(!f({value:t,tabValues:n}))throw new Error(`Docusaurus error: The <Tabs> has a defaultValue "${t}" but none of its children has the corresponding value. Available values are: ${n.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return t}const r=n.find((e=>e.default))??n[0];if(!r)throw new Error("Unexpected error: 0 tabValues");return r.value}({defaultValue:t,tabValues:a}))),[s,c]=p({queryString:n,groupId:r}),[d,h]=function(e){let{groupId:t}=e;const n=function(e){return e?`docusaurus.tab.${e}`:null}(t),[r,a]=(0,u.Nk)(n);return[r,(0,o.useCallback)((e=>{n&&a.set(e)}),[n,a])]}({groupId:r}),v=(()=>{const e=s??d;return f({value:e,tabValues:a})?e:null})();(0,o.useLayoutEffect)((()=>{v&&l(v)}),[v]);return{selectedValue:i,selectValue:(0,o.useCallback)((e=>{if(!f({value:e,tabValues:a}))throw new Error(`Can't select invalid tab value=${e}`);l(e),c(e),h(e)}),[c,h,a]),tabValues:a}}var v=n(51048);const g={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};function b(e){let{className:t,block:n,selectedValue:l,selectValue:s,tabValues:c}=e;const u=[],{blockElementScrollPositionUntilNextRender:d}=(0,i.o5)(),m=e=>{const t=e.currentTarget,n=u.indexOf(t),r=c[n].value;r!==l&&(d(t),s(r))},f=e=>{let t=null;switch(e.key){case"Enter":m(e);break;case"ArrowRight":{const n=u.indexOf(e.currentTarget)+1;t=u[n]??u[0];break}case"ArrowLeft":{const n=u.indexOf(e.currentTarget)-1;t=u[n]??u[u.length-1];break}}t?.focus()};return o.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,a.Z)("tabs",{"tabs--block":n},t)},c.map((e=>{let{value:t,label:n,attributes:i}=e;return o.createElement("li",(0,r.Z)({role:"tab",tabIndex:l===t?0:-1,"aria-selected":l===t,key:t,ref:e=>u.push(e),onKeyDown:f,onClick:m},i,{className:(0,a.Z)("tabs__item",g.tabItem,i?.className,{"tabs__item--active":l===t})}),n??t)})))}function y(e){let{lazy:t,children:n,selectedValue:r}=e;const a=(Array.isArray(n)?n:[n]).filter(Boolean);if(t){const e=a.find((e=>e.props.value===r));return e?(0,o.cloneElement)(e,{className:"margin-top--md"}):null}return o.createElement("div",{className:"margin-top--md"},a.map(((e,t)=>(0,o.cloneElement)(e,{key:t,hidden:e.props.value!==r}))))}function E(e){const t=h(e);return o.createElement("div",{className:(0,a.Z)("tabs-container",g.tabList)},o.createElement(b,(0,r.Z)({},e,t)),o.createElement(y,(0,r.Z)({},e,t)))}function w(e){const t=(0,v.Z)();return o.createElement(E,(0,r.Z)({key:String(t)},e))}},53852:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});var r=n(67294),o=n(86010),a=n(83699);const i={tag:"tag_zVej",tagRegular:"tagRegular_sFm0",tagWithCount:"tagWithCount_h2kH"};function l(e){let{permalink:t,label:n,count:l}=e;return r.createElement(a.Z,{href:t,className:(0,o.Z)(i.tag,l?i.tagWithCount:i.tagRegular)},n,l&&r.createElement("span",null,l))}},58801:(e,t,n)=>{"use strict";n.d(t,{E:()=>l,q:()=>i});var r=n(67294),o=n(43768);const a=r.createContext(null);function i(e){let{children:t,version:n}=e;return r.createElement(a.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(a);if(null===e)throw new o.i6("DocsVersionProvider");return e}},87594:(e,t)=>{function n(e){let t,n=[];for(let r of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(r))n.push(parseInt(r,10));else if(t=r.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,r,o,a]=t;if(r&&a){r=parseInt(r),a=parseInt(a);const e=r<a?1:-1;"-"!==o&&".."!==o&&"\u2025"!==o||(a+=e);for(let t=r;t!==a;t+=e)n.push(t)}}return n}t.default=n,e.exports=n},83824:(e,t,n)=>{"use strict";n.r(t),n.d(t,{Waypoint:()=>N});var r=n(75068),o=!("undefined"==typeof window||!window.document||!window.document.createElement);var a=void 0;function i(){return void 0===a&&(a=function(){if(!o)return!1;if(!window.addEventListener||!window.removeEventListener||!Object.defineProperty)return!1;var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}}),n=function(){};window.addEventListener("testPassiveEventSupport",n,t),window.removeEventListener("testPassiveEventSupport",n,t)}catch(r){}return e}()),a}function l(e){e.handlers===e.nextHandlers&&(e.nextHandlers=e.handlers.slice())}function s(e){this.target=e,this.events={}}s.prototype.getEventHandlers=function(e,t){var n,r=String(e)+" "+String((n=t)?!0===n?100:(n.capture<<0)+(n.passive<<1)+(n.once<<2):0);return this.events[r]||(this.events[r]={handlers:[],handleEvent:void 0},this.events[r].nextHandlers=this.events[r].handlers),this.events[r]},s.prototype.handleEvent=function(e,t,n){var r=this.getEventHandlers(e,t);r.handlers=r.nextHandlers,r.handlers.forEach((function(e){e&&e(n)}))},s.prototype.add=function(e,t,n){var r=this,o=this.getEventHandlers(e,n);l(o),0===o.nextHandlers.length&&(o.handleEvent=this.handleEvent.bind(this,e,n),this.target.addEventListener(e,o.handleEvent,n)),o.nextHandlers.push(t);var a=!0;return function(){if(a){a=!1,l(o);var i=o.nextHandlers.indexOf(t);o.nextHandlers.splice(i,1),0===o.nextHandlers.length&&(r.target&&r.target.removeEventListener(e,o.handleEvent,n),o.handleEvent=void 0)}}};var c="__consolidated_events_handlers__";function u(e,t,n,r){e[c]||(e[c]=new s(e));var o=function(e){if(e)return i()?e:!!e.capture}(r);return e[c].add(t,n,o)}var d=n(67294),m=n(35834);function f(e,t){var n,r=(n=e,!isNaN(parseFloat(n))&&isFinite(n)?parseFloat(n):"px"===n.slice(-2)?parseFloat(n.slice(0,-2)):void 0);if("number"==typeof r)return r;var o=function(e){if("%"===e.slice(-1))return parseFloat(e.slice(0,-1))/100}(e);return"number"==typeof o?o*t:void 0}var p="above",h="inside",v="below",g="invisible";function b(e){return"string"==typeof e.type}var y;var E=[];function w(e){E.push(e),y||(y=setTimeout((function(){var e;for(y=null;e=E.shift();)e()}),0));var t=!0;return function(){if(t){t=!1;var n=E.indexOf(e);-1!==n&&(E.splice(n,1),!E.length&&y&&(clearTimeout(y),y=null))}}}var k="undefined"!=typeof window,C={debug:!1,scrollableAncestor:void 0,children:void 0,topOffset:"0px",bottomOffset:"0px",horizontal:!1,onEnter:function(){},onLeave:function(){},onPositionChange:function(){},fireOnRapidScroll:!0},N=function(e){function t(t){var n;return(n=e.call(this,t)||this).refElement=function(e){n._ref=e},n}(0,r.Z)(t,e);var o=t.prototype;return o.componentDidMount=function(){var e=this;k&&(this.cancelOnNextTick=w((function(){e.cancelOnNextTick=null;var t=e.props,n=t.children;t.debug;!function(e,t){if(e&&!b(e)&&!t)throw new Error("<Waypoint> needs a DOM element to compute boundaries. The child you passed is neither a DOM element (e.g. <div>) nor does it use the innerRef prop.\n\nSee https://goo.gl/LrBNgw for more info.")}(n,e._ref),e._handleScroll=e._handleScroll.bind(e),e.scrollableAncestor=e._findScrollableAncestor(),e.scrollEventListenerUnsubscribe=u(e.scrollableAncestor,"scroll",e._handleScroll,{passive:!0}),e.resizeEventListenerUnsubscribe=u(window,"resize",e._handleScroll,{passive:!0}),e._handleScroll(null)})))},o.componentDidUpdate=function(){var e=this;k&&this.scrollableAncestor&&(this.cancelOnNextTick||(this.cancelOnNextTick=w((function(){e.cancelOnNextTick=null,e._handleScroll(null)}))))},o.componentWillUnmount=function(){k&&(this.scrollEventListenerUnsubscribe&&this.scrollEventListenerUnsubscribe(),this.resizeEventListenerUnsubscribe&&this.resizeEventListenerUnsubscribe(),this.cancelOnNextTick&&this.cancelOnNextTick())},o._findScrollableAncestor=function(){var e=this.props,t=e.horizontal,r=e.scrollableAncestor;if(r)return function(e){return"window"===e?n.g.window:e}(r);for(var o=this._ref;o.parentNode;){if((o=o.parentNode)===document.body)return window;var a=window.getComputedStyle(o),i=(t?a.getPropertyValue("overflow-x"):a.getPropertyValue("overflow-y"))||a.getPropertyValue("overflow");if("auto"===i||"scroll"===i||"overlay"===i)return o}return window},o._handleScroll=function(e){if(this._ref){var t=this._getBounds(),n=function(e){return e.viewportBottom-e.viewportTop==0?g:e.viewportTop<=e.waypointTop&&e.waypointTop<=e.viewportBottom||e.viewportTop<=e.waypointBottom&&e.waypointBottom<=e.viewportBottom||e.waypointTop<=e.viewportTop&&e.viewportBottom<=e.waypointBottom?h:e.viewportBottom<e.waypointTop?v:e.waypointTop<e.viewportTop?p:g}(t),r=this._previousPosition,o=this.props,a=(o.debug,o.onPositionChange),i=o.onEnter,l=o.onLeave,s=o.fireOnRapidScroll;if(this._previousPosition=n,r!==n){var c={currentPosition:n,previousPosition:r,event:e,waypointTop:t.waypointTop,waypointBottom:t.waypointBottom,viewportTop:t.viewportTop,viewportBottom:t.viewportBottom};a.call(this,c),n===h?i.call(this,c):r===h&&l.call(this,c),s&&(r===v&&n===p||r===p&&n===v)&&(i.call(this,{currentPosition:h,previousPosition:r,event:e,waypointTop:t.waypointTop,waypointBottom:t.waypointBottom,viewportTop:t.viewportTop,viewportBottom:t.viewportBottom}),l.call(this,{currentPosition:n,previousPosition:h,event:e,waypointTop:t.waypointTop,waypointBottom:t.waypointBottom,viewportTop:t.viewportTop,viewportBottom:t.viewportBottom}))}}},o._getBounds=function(){var e,t,n=this.props,r=n.horizontal,o=(n.debug,this._ref.getBoundingClientRect()),a=o.left,i=o.top,l=o.right,s=o.bottom,c=r?a:i,u=r?l:s;this.scrollableAncestor===window?(e=r?window.innerWidth:window.innerHeight,t=0):(e=r?this.scrollableAncestor.offsetWidth:this.scrollableAncestor.offsetHeight,t=r?this.scrollableAncestor.getBoundingClientRect().left:this.scrollableAncestor.getBoundingClientRect().top);var d=this.props,m=d.bottomOffset;return{waypointTop:c,waypointBottom:u,viewportTop:t+f(d.topOffset,e),viewportBottom:t+e-f(m,e)}},o.render=function(){var e=this,t=this.props.children;if(!t)return d.createElement("span",{ref:this.refElement,style:{fontSize:0}});if(b(t)||(0,m.isForwardRef)(t)){return d.cloneElement(t,{ref:function(n){e.refElement(n),t.ref&&("function"==typeof t.ref?t.ref(n):t.ref.current=n)}})}return d.cloneElement(t,{innerRef:this.refElement})},t}(d.PureComponent);N.above=p,N.below=v,N.inside=h,N.invisible=g,N.defaultProps=C,N.displayName="Waypoint"},25058:(e,t)=>{"use strict";var n,r=Symbol.for("react.element"),o=Symbol.for("react.portal"),a=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),v=Symbol.for("react.offscreen");function g(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case a:case l:case i:case m:case f:return e;default:switch(e=e&&e.$$typeof){case u:case c:case d:case h:case p:case s:return e;default:return t}}case o:return t}}}n=Symbol.for("react.module.reference"),t.isForwardRef=function(e){return g(e)===d}},35834:(e,t,n)=>{"use strict";e.exports=n(25058)}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/8292.a12213f5.js.LICENSE.txt b/packages/noco-docs/dist/assets/js/8292.a12213f5.js.LICENSE.txt new file mode 100644 index 0000000000..53dcf70ce5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/8292.a12213f5.js.LICENSE.txt @@ -0,0 +1,9 @@ +/** + * @license React + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ diff --git a/packages/noco-docs/dist/assets/js/832fc58a.7ec34339.js b/packages/noco-docs/dist/assets/js/832fc58a.7ec34339.js new file mode 100644 index 0000000000..7ac44e80dd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/832fc58a.7ec34339.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9874],{56038:e=>{e.exports=JSON.parse('{"label":"Comments","permalink":"/tags/comments","allTagsPath":"/tags","count":1,"items":[{"id":"records/expand-record","title":"Expanded record","description":"NocoDB provides Expanded Form to let you edit your data easily","permalink":"/records/expand-record"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/83533542.3cdad65c.js b/packages/noco-docs/dist/assets/js/83533542.3cdad65c.js new file mode 100644 index 0000000000..55c20071dd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/83533542.3cdad65c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3878],{83762:e=>{e.exports=JSON.parse('{"label":"Fields","permalink":"/tags/fields","allTagsPath":"/tags","count":37,"items":[{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"fields/field-types/custom-types/attachment","title":"Attachment","description":"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.","permalink":"/fields/field-types/custom-types/attachment"},{"id":"fields/field-types/custom-types/barcode","title":"Barcode","description":"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/barcode"},{"id":"fields/field-types/custom-types/checkbox","title":"Checkbox","description":"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.","permalink":"/fields/field-types/custom-types/checkbox"},{"id":"fields/field-types/formula/conditional-expressions","title":"Conditional expressions","description":"Conditional expressions","permalink":"/fields/field-types/formula/conditional-expressions"},{"id":"fields/field-types/numerical/currency","title":"Currency","description":"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.","permalink":"/fields/field-types/numerical/currency"},{"id":"fields/field-types/date-time-based/date","title":"Date","description":"Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/date"},{"id":"fields/field-types/formula/date-functions","title":"Date functions","description":"| Name | Syntax | Sample | Output | Remark |","permalink":"/fields/field-types/formula/date-functions"},{"id":"fields/field-types/date-time-based/date-time","title":"Date Time","description":"Date Time field type is used to store both date and time values in a single field.","permalink":"/fields/field-types/date-time-based/date-time"},{"id":"fields/field-types/numerical/decimal","title":"Decimal","description":"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.","permalink":"/fields/field-types/numerical/decimal"},{"id":"fields/display-value","title":"Display value","description":"Understanding Display Value in NocoDB!","permalink":"/fields/display-value"},{"id":"fields/field-types/date-time-based/duration","title":"Duration","description":"Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/duration"},{"id":"fields/field-types/text-based/email","title":"Email","description":"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/email"},{"id":"fields/fields-overview","title":"Fields overview","description":"- Primary Key","permalink":"/fields/fields-overview"},{"id":"fields/field-types/formula/formula","title":"Formula","description":"Create a formula field","permalink":"/fields/field-types/formula/formula"},{"id":"fields/field-types/custom-types/geometry","title":"Geometry","description":"Create a geometry field","permalink":"/fields/field-types/custom-types/geometry"},{"id":"fields/field-types/custom-types/json","title":"JSON","description":"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.","permalink":"/fields/field-types/custom-types/json"},{"id":"fields/field-types/links-based/links","title":"Links","description":"Links field type is used to establish relationship between tables & create links to other records.","permalink":"/fields/field-types/links-based/links"},{"id":"fields/field-types/text-based/long-text","title":"Long text","description":"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.","permalink":"/fields/field-types/text-based/long-text"},{"id":"fields/field-types/links-based/lookup","title":"LookUp","description":"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer\'s name and address in the Orders table.","permalink":"/fields/field-types/links-based/lookup"},{"id":"fields/field-types/select-based/multi-select","title":"Multi Select","description":"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/multi-select"},{"id":"fields/multi-fields-editor","title":"Multi-field editor","description":"Understanding use of multi-field editor in NocoDB!","permalink":"/fields/multi-fields-editor"},{"id":"fields/field-types/numerical/number","title":"Number","description":"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.","permalink":"/fields/field-types/numerical/number"},{"id":"fields/field-types/formula/operators","title":"Numeric and Logical Operators","description":"Numeric operators","permalink":"/fields/field-types/formula/operators"},{"id":"fields/field-types/formula/numeric-functions","title":"Numeric functions","description":"Numeric functions","permalink":"/fields/field-types/formula/numeric-functions"},{"id":"fields/field-types/numerical/percent","title":"Percent","description":"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.","permalink":"/fields/field-types/numerical/percent"},{"id":"fields/field-types/text-based/phonenumber","title":"Phone Number","description":"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.","permalink":"/fields/field-types/text-based/phonenumber"},{"id":"fields/primary-key","title":"Primary key","description":"Understanding Primary Key in NocoDB!","permalink":"/fields/primary-key"},{"id":"fields/field-types/custom-types/QR-code","title":"QR code","description":"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/QR-code"},{"id":"fields/field-types/custom-types/rating","title":"Rating","description":"The","permalink":"/fields/field-types/custom-types/rating"},{"id":"fields/field-types/links-based/rollup","title":"Rollup","description":"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.","permalink":"/fields/field-types/links-based/rollup"},{"id":"fields/field-types/text-based/single-line-text","title":"Single line text","description":"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.","permalink":"/fields/field-types/text-based/single-line-text"},{"id":"fields/field-types/select-based/single-select","title":"Single Select","description":"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/single-select"},{"id":"fields/field-types/custom-types/specific-db-type","title":"Specific DB type","description":"Create a Specific DB Type field","permalink":"/fields/field-types/custom-types/specific-db-type"},{"id":"fields/field-types/formula/string-functions","title":"String functions","description":"String functions","permalink":"/fields/field-types/formula/string-functions"},{"id":"fields/field-types/date-time-based/time","title":"Time","description":"Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.","permalink":"/fields/field-types/date-time-based/time"},{"id":"fields/field-types/text-based/url","title":"URL","description":"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/url"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/8498c216.483f8889.js b/packages/noco-docs/dist/assets/js/8498c216.483f8889.js new file mode 100644 index 0000000000..bc039baf41 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/8498c216.483f8889.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3381],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>m});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function l(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},i=Object.keys(e);for(a=0;a<i.length;a++)n=i[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)n=i[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},g=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(n),g=r,m=p["".concat(s,".").concat(g)]||p[g]||d[g]||i;return n?a.createElement(m,o(o({ref:t},u),{},{components:n})):a.createElement(m,o({ref:t},u))}));function m(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=g;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:r,o[1]=l;for(var c=2;c<i;c++)o[c]=n[c];return a.createElement.apply(null,o)}return a.createElement.apply(null,n)}g.displayName="MDXCreateElement"},62162:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var a=n(87462),r=(n(67294),n(3905));const i={title:"i18n translation",description:"Contribute to NocoDB's i18n translation",tags:["Engineering"]},o=void 0,l={unversionedId:"engineering/translation",id:"engineering/translation",title:"i18n translation",description:"Contribute to NocoDB's i18n translation",source:"@site/docs/150.engineering/070.translation.md",sourceDirName:"150.engineering",slug:"/engineering/translation",permalink:"/engineering/translation",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/070.translation.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:70,frontMatter:{title:"i18n translation",description:"Contribute to NocoDB's i18n translation",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"Releases & builds",permalink:"/engineering/builds-and-releases"},next:{title:"Writing docs",permalink:"/engineering/writing-docs"}},s={},c=[{value:"How to add / edit translations ?",id:"how-to-add--edit-translations-",level:2},{value:"Using Github",id:"using-github",level:3},{value:"Using Crowdin",id:"using-crowdin",level:3},{value:"Reference",id:"reference",level:4},{value:"How to add a new language ?",id:"how-to-add-a-new-language-",level:2},{value:"GitHub changes",id:"github-changes",level:4},{value:"Crowdin changes admin only",id:"crowdin-changes-admin-only",level:4},{value:"String Categories",id:"string-categories",level:2}],u={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"NocoDB supports 30+ foreign languages & community contributions are now simplified via ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com/"},"Crowdin"),".")),(0,r.kt)("h2",{id:"how-to-add--edit-translations-"},"How to add / edit translations ?"),(0,r.kt)("h3",{id:"using-github"},"Using Github"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"For English, make changes directly to ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/blob/develop/packages/nc-gui/lang/en.json"},"en.json")," & commit to ",(0,r.kt)("inlineCode",{parentName:"li"},"develop")),(0,r.kt)("li",{parentName:"ul"},"For any other language, use ",(0,r.kt)("inlineCode",{parentName:"li"},"crowdin")," option.")),(0,r.kt)("h3",{id:"using-crowdin"},"Using Crowdin"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Setup ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com"},"Crowdin")," account"),(0,r.kt)("li",{parentName:"ul"},"Join ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com/project/nocodb"},"NocoDB")," project")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189181511-51b8671e-bee8-45d5-8216-a4a031bc6309.png",alt:"Screenshot 2022-09-08 at 10 26 23 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Click the language that you wish to contribute")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189182132-0eed7d5a-eaa1-43e1-929d-688f375763c1.png",alt:"Screenshot 2022-09-08 at 10 29 56 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Click the ",(0,r.kt)("inlineCode",{parentName:"li"},"Translate")," button; this opens up ",(0,r.kt)("inlineCode",{parentName:"li"},"Crowdin Online Editor"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189182450-999124e8-566c-40af-9d3c-731a11c1b6aa.png",alt:"Screenshot 2022-09-08 at 10 32 17 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Select string in ",(0,r.kt)("inlineCode",{parentName:"li"},"English")," on the left-hand menu bar ","[1]"),(0,r.kt)("li",{parentName:"ul"},"Propose changes ","[2]"),(0,r.kt)("li",{parentName:"ul"},"Save ","[3]","\nNote: Crowdin provides translation recommendation's as in ","[4]",". Click directly if it's apt\n")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189184278-69d688ed-4e5a-4d5a-b629-9f6d10d79346.png",alt:"Screenshot 2022-09-08 at 10 37 38 PM"})),(0,r.kt)("p",null,"A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follow up on remaining integration work items."),(0,r.kt)("h4",{id:"reference"},"Reference"),(0,r.kt)("p",null,"Refer following articles to get additional details about Crowdin Portal usage"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/crowdin-intro/"},"Translator Introduction")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/for-volunteer-translators/"},"Volunteer Translation Introduction")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/online-editor/"},"Online Editor")," ")),(0,r.kt)("h2",{id:"how-to-add-a-new-language-"},"How to add a new language ?"),(0,r.kt)("h4",{id:"github-changes"},"GitHub changes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Update enumeration in ",(0,r.kt)("inlineCode",{parentName:"li"},"enums.ts")," ","[packages/nc-gui/lib/enums.ts]"),(0,r.kt)("li",{parentName:"ul"},"Map JSON path in ",(0,r.kt)("inlineCode",{parentName:"li"},"a.i18n.ts")," ","[packages/nc-gui/plugins/a.i18n.ts]")),(0,r.kt)("h4",{id:"crowdin-changes-admin-only"},"Crowdin changes ","[admin only]"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open ",(0,r.kt)("inlineCode",{parentName:"li"},"NocoDB")," project"),(0,r.kt)("li",{parentName:"ul"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Language")," on the home tab"),(0,r.kt)("li",{parentName:"ul"},"Select target language, ",(0,r.kt)("inlineCode",{parentName:"li"},"Update")),(0,r.kt)("li",{parentName:"ul"},"Update array in ",(0,r.kt)("inlineCode",{parentName:"li"},"tests/playwright/tests/language.spec.ts")," ")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189186570-5c1c7cad-6d3f-4937-ab4d-fa7ebe022cb1.png",alt:"Screenshot 2022-09-08 at 10 52 59 PM"})),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189186632-0b9f5f55-0550-4d8f-a8ae-7e9b9076774e.png",alt:"Screenshot 2022-09-08 at 10 54 04 PM"})),(0,r.kt)("h2",{id:"string-categories"},"String Categories"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"General"),": simple & common tokens (save, cancel, submit, open, close, home, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Objects"),": objects from NocoDB POV (project, table, field, view, page, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Title"),": screen headers (compact) (menu headers, modal headers)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Lables"),": text box/ radio/ field headers (few words) (Labels over textbox, radio buttons, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Activity"),"/ actions: work items (few words) (Create Project, Delete Table, Add Record, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Tooltip"),": additional information associated with work items (usually lengthy) (Additional information provided for activity)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Placeholder"),": placeholders associated with various textboxes (Text placeholders)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Msg"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Info: general/success category for everything"),(0,r.kt)("li",{parentName:"ul"},"Error: warnings & errors"),(0,r.kt)("li",{parentName:"ul"},"Toast: pop-up toast messages")))),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Note: string name should be in camelCase. Use above list as priority order in case of ambiguity.")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/855d76bb.e625ba60.js b/packages/noco-docs/dist/assets/js/855d76bb.e625ba60.js new file mode 100644 index 0000000000..1fbe37e3a6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/855d76bb.e625ba60.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6141],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>v});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var p=n.createContext({}),s=function(e){var t=n.useContext(p),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=s(e.components);return n.createElement(p.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,p=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),d=s(r),m=o,v=d["".concat(p,".").concat(m)]||d[m]||u[m]||a;return r?n.createElement(v,i(i({ref:t},c),{},{components:r})):n.createElement(v,i({ref:t},c))}));function v(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=m;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[d]="string"==typeof e?e:o,i[1]=l;for(var s=2;s<a;s++)i[s]=r[s];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}m.displayName="MDXCreateElement"},58640:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>l,toc:()=>s});var n=r(87462),o=(r(67294),r(3905));const a={title:"NocoDB SDK",description:"NocoDB SDK Overview"},i=void 0,l={unversionedId:"developer-resources/sdk",id:"version-0.109.7/developer-resources/sdk",title:"NocoDB SDK",description:"NocoDB SDK Overview",source:"@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md",sourceDirName:"040.developer-resources",slug:"/developer-resources/sdk",permalink:"/0.109.7/developer-resources/sdk",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md",tags:[],version:"0.109.7",sidebarPosition:30,frontMatter:{title:"NocoDB SDK",description:"NocoDB SDK Overview"},sidebar:"tutorialSidebar",previous:{title:"REST APIs",permalink:"/0.109.7/developer-resources/rest-apis"},next:{title:"Webhooks",permalink:"/0.109.7/developer-resources/webhooks"}},p={},s=[{value:"SDK For Javascript",id:"sdk-for-javascript",level:2},{value:"Install nocodb-sdk",id:"install-nocodb-sdk",level:3},{value:"Import Api",id:"import-api",level:3},{value:"Configure Api",id:"configure-api",level:3},{value:"Example: Auth Token",id:"example-auth-token",level:4},{value:"Example: API Token",id:"example-api-token",level:4},{value:"Call Functions",id:"call-functions",level:3},{value:"Example: Calling API - /api/v1/db/meta/projects/{projectId}/tables",id:"example-calling-api---apiv1dbmetaprojectsprojectidtables",level:4}],c={toc:s},d="wrapper";function u(e){let{components:t,...r}=e;return(0,o.kt)(d,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"We provide SDK for users to integrate with their applications. Currently only SDK for Javascript is supported."),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("p",{parentName:"admonition"},"The NocoDB SDK requires authorization token. If you haven't created one, please check out ",(0,o.kt)("a",{href:"/0.109.7/developer-resources/accessing-apis",target:"_blank"},"Accessing APIs")," for details.")),(0,o.kt)("h2",{id:"sdk-for-javascript"},"SDK For Javascript"),(0,o.kt)("h3",{id:"install-nocodb-sdk"},"Install nocodb-sdk"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"npm i nocodb-sdk\n")),(0,o.kt)("h3",{id:"import-api"},"Import Api"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js"},"import { Api } from 'nocodb-sdk'\n")),(0,o.kt)("h3",{id:"configure-api"},"Configure Api"),(0,o.kt)("p",null,"The Api can be authorizated by either Auth Token or API Token."),(0,o.kt)("h4",{id:"example-auth-token"},"Example: Auth Token"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js"},"const api = new Api({\n baseURL: 'https://<HOST>:<PORT>',\n headers: {\n 'xc-auth': '<AUTH_TOKEN>'\n }\n})\n")),(0,o.kt)("h4",{id:"example-api-token"},"Example: API Token"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js"},"const api = new Api({\n baseURL: 'https://<HOST>:<PORT>',\n headers: {\n 'xc-token': '<API_TOKEN>'\n }\n})\n")),(0,o.kt)("h3",{id:"call-functions"},"Call Functions"),(0,o.kt)("p",null,"Once you have configured ",(0,o.kt)("inlineCode",{parentName:"p"},"api"),", you can call different types of APIs by ",(0,o.kt)("inlineCode",{parentName:"p"},"api.<Tag>.<FunctionName>"),". "),(0,o.kt)("admonition",{type:"note"},(0,o.kt)("p",{parentName:"admonition"},"For Tag and FunctionName, please check out the API table ",(0,o.kt)("a",{href:"/0.109.7/developer-resources/rest-apis",target:"_blank"},"here"),".")),(0,o.kt)("h4",{id:"example-calling-api---apiv1dbmetaprojectsprojectidtables"},"Example: Calling API - /api/v1/db/meta/projects/{projectId}/tables"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js"},"await api.dbTable.create(params)\n")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/86fc9284.a1a65b52.js b/packages/noco-docs/dist/assets/js/86fc9284.a1a65b52.js new file mode 100644 index 0000000000..63b8cfc0e4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/86fc9284.a1a65b52.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[305],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var o=n(67294);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t){if(null==e)return{};var n,o,a=function(e,t){if(null==e)return{};var n,o,a={},r=Object.keys(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o<r.length;o++)n=r[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var s=o.createContext({}),p=function(e){var t=o.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=p(e.components);return o.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,a=e.mdxType,r=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),d=p(n),m=a,h=d["".concat(s,".").concat(m)]||d[m]||u[m]||r;return n?o.createElement(h,l(l({ref:t},c),{},{components:n})):o.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=n.length,l=new Array(r);l[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[d]="string"==typeof e?e:a,l[1]=i;for(var p=2;p<r;p++)l[p]=n[p];return o.createElement.apply(null,l)}return o.createElement.apply(null,n)}m.displayName="MDXCreateElement"},73842:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>r,metadata:()=>i,toc:()=>p});var o=n(87462),a=(n(67294),n(3905));const r={title:"Link To Another Record",description:"Understanding Link To Another Record (LTAR) Columns!"},l=void 0,i={unversionedId:"setup-and-usages/link-to-another-record",id:"version-0.109.7/setup-and-usages/link-to-another-record",title:"Link To Another Record",description:"Understanding Link To Another Record (LTAR) Columns!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/link-to-another-record",permalink:"/0.109.7/setup-and-usages/link-to-another-record",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md",tags:[],version:"0.109.7",sidebarPosition:60,frontMatter:{title:"Link To Another Record",description:"Understanding Link To Another Record (LTAR) Columns!"},sidebar:"tutorialSidebar",previous:{title:"Code Snippets",permalink:"/0.109.7/setup-and-usages/code-snippets"},next:{title:"Lookup",permalink:"/0.109.7/setup-and-usages/lookup"}},s={},p=[{value:"Relationship types:",id:"relationship-types",level:3},{value:"Adding a relationship",id:"adding-a-relationship",level:2},{value:"1. Create column",id:"1-create-column",level:3},{value:"2. Update column name",id:"2-update-column-name",level:3},{value:"3. Select column type",id:"3-select-column-type",level:3},{value:"4. Choose relationship type",id:"4-choose-relationship-type",level:3},{value:"5. Select child table from drop down menu",id:"5-select-child-table-from-drop-down-menu",level:3},{value:"6. Click on 'Save'",id:"6-click-on-save",level:3},{value:"Updating linked records",id:"updating-linked-records",level:2},{value:"1. Open link record tab",id:"1-open-link-record-tab",level:3},{value:"2. Select from the option displayed",id:"2-select-from-the-option-displayed",level:3},{value:"3. Column mapping showing "Has Many" relationship",id:"3-column-mapping-showing-has-many-relationship",level:3},{value:"4. Column mapping for "Belongs to" relationship Automatically updated",id:"4-column-mapping-for-belongs-to-relationship-automatically-updated",level:3}],c={toc:p},d="wrapper";function u(e){let{components:t,...n}=e;return(0,a.kt)(d,(0,o.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h3",{id:"relationship-types"},"Relationship types:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"One to one",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"A Table record in first table is related to only one record of second table."),(0,a.kt)("li",{parentName:"ul"},"Example: Country has a capital city"))),(0,a.kt)("li",{parentName:"ul"},"One to many",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"A Table record in first table is related to more than one record of second table. But second table record maps to only one entry of first table"),(0,a.kt)("li",{parentName:"ul"},"NocoDB refers to this category of relationship as ",(0,a.kt)("strong",{parentName:"li"},"has many")),(0,a.kt)("li",{parentName:"ul"},"For every ",(0,a.kt)("strong",{parentName:"li"},"has many")," relation defined, NocoDB augments ",(0,a.kt)("strong",{parentName:"li"},"belongs to")," relationship column in the other table automatically"),(0,a.kt)("li",{parentName:"ul"},"Example: Country ",(0,a.kt)("strong",{parentName:"li"},"has many")," Cities. (other way mapping > City ",(0,a.kt)("strong",{parentName:"li"},"belongs to")," Country )"))),(0,a.kt)("li",{parentName:"ul"},"Many to many",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"A Table record in first table is related to more than one record of second table; second table record can also map to more than on record of first table."),(0,a.kt)("li",{parentName:"ul"},"NocoDB refers to this category of relationship as ",(0,a.kt)("strong",{parentName:"li"},"many to many")),(0,a.kt)("li",{parentName:"ul"},"For every ",(0,a.kt)("strong",{parentName:"li"},"many to many")," relation defined between tables, NocoDB augments ",(0,a.kt)("strong",{parentName:"li"},"many to many")," relationship column in the other table automatically"),(0,a.kt)("li",{parentName:"ul"},"Example: Film ",(0,a.kt)("strong",{parentName:"li"},"has many")," Actors. Actor ",(0,a.kt)("strong",{parentName:"li"},"has many")," Films (works on many films)")))),(0,a.kt)("p",null,"Further details of relationship types can be found ",(0,a.kt)("a",{parentName:"p",href:"https://afteracademy.com/blog/what-are-the-different-types-of-relationships-in-dbms"},"here")),(0,a.kt)("p",null,"Relationships between table records can be established by using ",(0,a.kt)("strong",{parentName:"p"},"LinkToAnotherRecord")," column type.\nWorkflow details are captured below"),(0,a.kt)("h2",{id:"adding-a-relationship"},"Adding a relationship"),(0,a.kt)("img",{width:"1016",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189105583-20014dd9-e5a6-4f27-b03c-97fad9096b5f.png"}),(0,a.kt)("h3",{id:"1-create-column"},"1. Create column"),(0,a.kt)("p",null,"Click on '+' button at end of column headers"),(0,a.kt)("h3",{id:"2-update-column-name"},"2. Update column name"),(0,a.kt)("p",null,"Input name in the text box provided"),(0,a.kt)("h3",{id:"3-select-column-type"},"3. Select column type"),(0,a.kt)("p",null,'Select Column type as "LinkToAnotherRecord" from the drop-down menu'),(0,a.kt)("h3",{id:"4-choose-relationship-type"},"4. Choose relationship type"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"'Has Many' corresponds to the 'One-to-many' relationships"),(0,a.kt)("li",{parentName:"ul"},"'Many To Many' corresponds to the 'Many-to-many' relationships")),(0,a.kt)("h3",{id:"5-select-child-table-from-drop-down-menu"},"5. Select child table from drop down menu"),(0,a.kt)("h3",{id:"6-click-on-save"},"6. Click on 'Save'"),(0,a.kt)("p",null,"A new column will get created in both the parent table & child table"),(0,a.kt)("h2",{id:"updating-linked-records"},"Updating linked records"),(0,a.kt)("h3",{id:"1-open-link-record-tab"},"1. Open link record tab"),(0,a.kt)("p",null,"Click on the '+' icon in corresponding row - cell"),(0,a.kt)("img",{width:"750",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189106326-90e46156-798d-4a01-a4eb-4e991ce94c03.png"}),(0,a.kt)("h3",{id:"2-select-from-the-option-displayed"},"2. Select from the option displayed"),(0,a.kt)("p",null,"Use 'Filter box' to narrow down on search items\nYou can opt to insert a new record as well, using \"+ New Record\" button"),(0,a.kt)("img",{width:"1014",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189106494-4b49a200-a44f-41ae-8b54-93b18d867a04.png"}),(0,a.kt)("h3",{id:"3-column-mapping-showing-has-many-relationship"},'3. Column mapping showing "Has Many" relationship'),(0,a.kt)("p",null,"Sheet1 'has many' Sheet2"),(0,a.kt)("img",{width:"756",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189106702-3b8d7a50-08f4-4a04-b2cb-16db0cf667b3.png"}),(0,a.kt)("h3",{id:"4-column-mapping-for-belongs-to-relationship-automatically-updated"},'4. Column mapping for "Belongs to" relationship ',"[Automatically updated]"),(0,a.kt)("p",null,"Sheet2 'belongs to' Sheet1"),(0,a.kt)("img",{width:"574",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189106731-59e5bc3c-bcc5-4796-b5b2-d9b5418bfe2b.png"}))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/87e9af65.48fa1223.js b/packages/noco-docs/dist/assets/js/87e9af65.48fa1223.js new file mode 100644 index 0000000000..d0b76cec88 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/87e9af65.48fa1223.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4507],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>f});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),p=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=p(e.components);return n.createElement(c.Provider,{value:t},e.children)},l="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),l=p(r),m=o,f=l["".concat(c,".").concat(m)]||l[m]||u[m]||a;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[l]="string"==typeof e?e:o,i[1]=s;for(var p=2;p<a;p++)i[p]=r[p];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}m.displayName="MDXCreateElement"},16371:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>s,toc:()=>p});var n=r(87462),o=(r(67294),r(3905));const a={title:"Demos",description:"NocoDB Demos",hide_table_of_contents:!0},i=void 0,s={unversionedId:"getting-started/demos",id:"version-0.109.7/getting-started/demos",title:"Demos",description:"NocoDB Demos",source:"@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md",sourceDirName:"020.getting-started",slug:"/getting-started/demos",permalink:"/0.109.7/getting-started/demos",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/040.demos.md",tags:[],version:"0.109.7",sidebarPosition:40,frontMatter:{title:"Demos",description:"NocoDB Demos",hide_table_of_contents:!0},sidebar:"tutorialSidebar",previous:{title:"Upgrading",permalink:"/0.109.7/getting-started/upgrading"},next:{title:"Dashboard",permalink:"/0.109.7/setup-and-usages/dashboard"}},c={},p=[],d={toc:p},l="wrapper";function u(e){let{components:t,...r}=e;return(0,o.kt)(l,(0,n.Z)({},d,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Demos are loading from ",(0,o.kt)("a",{parentName:"p",href:"https://nocodb.com"},"https://nocodb.com")," (please wait)"),(0,o.kt)("iframe",{src:"https://nocodb.com/demos",width:"100%",style:{height:"100vh"}}))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/88cc213e.37ccf1de.js b/packages/noco-docs/dist/assets/js/88cc213e.37ccf1de.js new file mode 100644 index 0000000000..d35ebc8333 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/88cc213e.37ccf1de.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4193],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>u});var n=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function o(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),d=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},c=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",b={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=d(a),m=r,u=p["".concat(s,".").concat(m)]||p[m]||b[m]||l;return a?n.createElement(u,i(i({ref:t},c),{},{components:a})):n.createElement(u,i({ref:t},c))}));function u(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[p]="string"==typeof e?e:r,i[1]=o;for(var d=2;d<l;d++)i[d]=a[d];return n.createElement.apply(null,i)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},46015:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>b,frontMatter:()=>l,metadata:()=>o,toc:()=>d});var n=a(87462),r=(a(67294),a(3905));const l={title:"Share Base",description:"Procedures to share a base & generating embedded iframe"},i=void 0,o={unversionedId:"setup-and-usages/share-base",id:"version-0.109.7/setup-and-usages/share-base",title:"Share Base",description:"Procedures to share a base & generating embedded iframe",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/share-base",permalink:"/0.109.7/setup-and-usages/share-base",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md",tags:[],version:"0.109.7",sidebarPosition:130,frontMatter:{title:"Share Base",description:"Procedures to share a base & generating embedded iframe"},sidebar:"tutorialSidebar",previous:{title:"Sync Schema",permalink:"/0.109.7/setup-and-usages/sync-schema"},next:{title:"Share View",permalink:"/0.109.7/setup-and-usages/share-view"}},s={},d=[{value:"Generate Share base",id:"generate-share-base",level:2},{value:"Modify Share base",id:"modify-share-base",level:2},{value:"Disable Share base",id:"disable-share-base",level:2},{value:"Share base Access Permissions",id:"share-base-access-permissions",level:2},{value:"Embeddable Frame",id:"embeddable-frame",level:2},{value:"Generate embeddable HTML code",id:"generate-embeddable-html-code",level:3},{value:"Embed into application's HTML Body",id:"embed-into-applications-html-body",level:3}],c={toc:d},p="wrapper";function b(e){let{components:t,...a}=e;return(0,r.kt)(p,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"generate-share-base"},"Generate Share base"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open Project "),(0,r.kt)("li",{parentName:"ul"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Invite Team")," button on bottom left tool bar")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/192435607-ee00326e-3890-4478-8260-e5c7c286f03a.png",alt:"image"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Under ",(0,r.kt)("inlineCode",{parentName:"li"},"Shared base link")," tab and toggle from ",(0,r.kt)("inlineCode",{parentName:"li"},"Disabled Share base")," to ",(0,r.kt)("inlineCode",{parentName:"li"},"Anyone with the link"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/192435735-71fc161b-48fc-49e2-94ad-55713932f10a.png",alt:"image"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Share base link generated is displayed over & can be used to share this project to others in the team ","[Selection (2) in the image below]")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/154789725-a1194e30-3101-423a-bd5c-25009c361b96.png",alt:"Screenshot 2022-02-19 at 12 01 58 PM"})),(0,r.kt)("h2",{id:"modify-share-base"},"Modify Share base"),(0,r.kt)("p",null,"Modifying ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," will invalidate the ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," link generated previously and will generate a new link."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open Project base"),(0,r.kt)("li",{parentName:"ul"},"Click on 'Share' button on top right tool bar"),(0,r.kt)("li",{parentName:"ul"},"Click on 'Reload' button on Quick menu (next to Shared base link)")),(0,r.kt)("h2",{id:"disable-share-base"},"Disable Share base"),(0,r.kt)("p",null,"Disabling ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," will invalidate the generated ",(0,r.kt)("inlineCode",{parentName:"p"},"Share base")," link"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open Project base"),(0,r.kt)("li",{parentName:"ul"},"Click on 'Share' button on top right tool bar"),(0,r.kt)("li",{parentName:"ul"},"Under ",(0,r.kt)("inlineCode",{parentName:"li"},"Shared base link")," and toggle from ",(0,r.kt)("inlineCode",{parentName:"li"},"Anyone with the link")," to ",(0,r.kt)("inlineCode",{parentName:"li"},"Disable Share base"))),(0,r.kt)("h2",{id:"share-base-access-permissions"},"Share base Access Permissions"),(0,r.kt)("p",null,"Shared base can be configured as"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Viewer - User with the link will get ",(0,r.kt)("strong",{parentName:"li"},"READ ONLY")," access to the project data."),(0,r.kt)("li",{parentName:"ul"},"Editor - User with the link will get ",(0,r.kt)("strong",{parentName:"li"},"READ & WRITE")," access to the project data.")),(0,r.kt)("h2",{id:"embeddable-frame"},"Embeddable Frame"),(0,r.kt)("p",null,"NocoDB interface can be embedded into existing applications easily by making use of ",(0,r.kt)("a",{parentName:"p",href:"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe"},"HTML IFRAME"),") attribute."),(0,r.kt)("h3",{id:"generate-embeddable-html-code"},"Generate embeddable HTML code"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open Project base"),(0,r.kt)("li",{parentName:"ul"},"Click on 'Share' button on top right tool bar"),(0,r.kt)("li",{parentName:"ul"},"Under 'Shared base link' tab",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Click on button to copy 'Embeddable HTML code'")))),(0,r.kt)("p",null,"Example:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-html"},'<iframe\n class="nc-embed"\n src="https://nocodb-nocodb-rsyir.ondigitalocean.app/dashboard/#/nc/base/e3bba9df-4fc1-4d11-b7ce-41c4a3ad6810?embed"\n frameBorder="0"\n width="100%"\n height="700"\n style="background: transparent; border: 1px solid #ddd"\n>\n</iframe>\n')),(0,r.kt)("h3",{id:"embed-into-applications-html-body"},"Embed into application's HTML Body"),(0,r.kt)("p",null,"Sample code with embedded iframe generated above"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-html"},'<!DOCTYPE html>\n<html>\n <body>\n <iframe\n class="nc-embed"\n src="http://localhost:3000/#/nc/base/7d4b551c-b5e0-41c9-a87b-f3984c21d2c7?embed"\n frameBorder="0"\n width="100%"\n height="700"\n style="background: transparent; "\n ></iframe>\n </body>\n</html>\n')))}b.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/8a8a6f17.6610998b.js b/packages/noco-docs/dist/assets/js/8a8a6f17.6610998b.js new file mode 100644 index 0000000000..d55bb18064 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/8a8a6f17.6610998b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9060],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>f});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),p=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},g=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),c=p(r),g=o,f=c["".concat(s,".").concat(g)]||c[g]||u[g]||a;return r?n.createElement(f,i(i({ref:t},d),{},{components:r})):n.createElement(f,i({ref:t},d))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=g;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:o,i[1]=l;for(var p=2;p<a;p++)i[p]=r[p];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}g.displayName="MDXCreateElement"},82187:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>l,toc:()=>p});var n=r(87462),o=(r(67294),r(3905));const a={title:"Sorting records",tags:["Table operations","Sort","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table","sorting","sort","table administration","table organization"]},i=void 0,l={unversionedId:"table-operations/sort",id:"table-operations/sort",title:"Sorting records",description:"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.",source:"@site/docs/060.table-operations/040.sort.md",sourceDirName:"060.table-operations",slug:"/table-operations/sort",permalink:"/table-operations/sort",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/040.sort.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Sort",permalink:"/tags/sort"},{label:"Gallery View",permalink:"/tags/gallery-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:40,frontMatter:{title:"Sorting records",tags:["Table operations","Sort","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table","sorting","sort","table administration","table organization"]},sidebar:"tutorialSidebar",previous:{title:"Filtering records",permalink:"/table-operations/filter"},next:{title:"Grouping records",permalink:"/table-operations/group-by"}},s={},p=[{value:"Adding or Editing Sort",id:"adding-or-editing-sort",level:3},{value:"Deleting Sort",id:"deleting-sort",level:3},{value:"Related topics",id:"related-topics",level:3}],d={toc:p},c="wrapper";function u(e){let{components:t,...a}=e;return(0,o.kt)(c,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting. "),(0,o.kt)("h3",{id:"adding-or-editing-sort"},"Adding or Editing Sort"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click the ",(0,o.kt)("inlineCode",{parentName:"li"},"Sort")," button in the toolbar menu."),(0,o.kt)("li",{parentName:"ol"},"Choose the ",(0,o.kt)("inlineCode",{parentName:"li"},"Field")," to sort by."),(0,o.kt)("li",{parentName:"ol"},"Configure the sorting ",(0,o.kt)("inlineCode",{parentName:"li"},"Direction")," : ascending or descending")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Sort Field",src:r(34695).Z,width:"2304",height:"1020"})),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Sort Direction",src:r(82965).Z,width:"2306",height:"858"})),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"You can configure multiple fields for subsequent-level sorting.")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Nested Sorting",src:r(76915).Z,width:"2306",height:"940"})),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Field configured at the top will be used for the first-level sorting, followed by subsequent fields in a top-down order")),(0,o.kt)("h3",{id:"deleting-sort"},"Deleting Sort"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Click the ",(0,o.kt)("inlineCode",{parentName:"li"},"Sort")," button in the toolbar.",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"Click on the bin icon to the right of the sort you wish to delete.")))),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Delete Sorting",src:r(13901).Z,width:"2306",height:"940"})),(0,o.kt)("h3",{id:"related-topics"},"Related topics"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"download"},"Download"))))}u.isMDXComponent=!0},34695:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/sort-1-fa0fe0c81f35a773f6c03ae98c05751f.png"},82965:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/sort-2-9b1d1e39e76dca86dbf63d9c4d59f940.png"},76915:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/sort-3-3b0cf33ff1728c5649bcf6de7a5073ff.png"},13901:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/sort-4-124856ebba5f7b4ca9d8cc67ff97a32b.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9040003c.a258d51d.js b/packages/noco-docs/dist/assets/js/9040003c.a258d51d.js new file mode 100644 index 0000000000..aaecf72ef7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9040003c.a258d51d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8511],{3905:(e,o,r)=>{r.d(o,{Zo:()=>m,kt:()=>k});var t=r(67294);function a(e,o,r){return o in e?Object.defineProperty(e,o,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[o]=r,e}function n(e,o){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);o&&(t=t.filter((function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable}))),r.push.apply(r,t)}return r}function i(e){for(var o=1;o<arguments.length;o++){var r=null!=arguments[o]?arguments[o]:{};o%2?n(Object(r),!0).forEach((function(o){a(e,o,r[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))}))}return e}function s(e,o){if(null==e)return{};var r,t,a=function(e,o){if(null==e)return{};var r,t,a={},n=Object.keys(e);for(t=0;t<n.length;t++)r=n[t],o.indexOf(r)>=0||(a[r]=e[r]);return a}(e,o);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(t=0;t<n.length;t++)r=n[t],o.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var l=t.createContext({}),c=function(e){var o=t.useContext(l),r=o;return e&&(r="function"==typeof e?e(o):i(i({},o),e)),r},m=function(e){var o=c(e.components);return t.createElement(l.Provider,{value:o},e.children)},p="mdxType",b={inlineCode:"code",wrapper:function(e){var o=e.children;return t.createElement(t.Fragment,{},o)}},d=t.forwardRef((function(e,o){var r=e.components,a=e.mdxType,n=e.originalType,l=e.parentName,m=s(e,["components","mdxType","originalType","parentName"]),p=c(r),d=a,k=p["".concat(l,".").concat(d)]||p[d]||b[d]||n;return r?t.createElement(k,i(i({ref:o},m),{},{components:r})):t.createElement(k,i({ref:o},m))}));function k(e,o){var r=arguments,a=o&&o.mdxType;if("string"==typeof e||a){var n=r.length,i=new Array(n);i[0]=d;var s={};for(var l in o)hasOwnProperty.call(o,l)&&(s[l]=o[l]);s.originalType=e,s[p]="string"==typeof e?e:a,i[1]=s;for(var c=2;c<n;c++)i[c]=r[c];return t.createElement.apply(null,i)}return t.createElement.apply(null,r)}d.displayName="MDXCreateElement"},68312:(e,o,r)=>{r.r(o),r.d(o,{assets:()=>l,contentTitle:()=>i,default:()=>b,frontMatter:()=>n,metadata:()=>s,toc:()=>c});var t=r(87462),a=(r(67294),r(3905));const n={title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",tags:["Collaboration","Workspaces","Member","Invite","Role"],keywords:["Workspace configuration","Invite members","Member roles","Access permissions","Displaying workspace members","Modifying member roles","Removing workspace members","Workspace collaboration","Team collaboration","Access control","Role-based permissions","Workspace management","User roles","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},i=void 0,s={unversionedId:"collaboration/workspace-collaboration",id:"collaboration/workspace-collaboration",title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",source:"@site/docs/120.collaboration/010.workspace-collaboration.md",sourceDirName:"120.collaboration",slug:"/collaboration/workspace-collaboration",permalink:"/collaboration/workspace-collaboration",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.workspace-collaboration.md",tags:[{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Workspaces",permalink:"/tags/workspaces"},{label:"Member",permalink:"/tags/member"},{label:"Invite",permalink:"/tags/invite"},{label:"Role",permalink:"/tags/role"}],version:"current",sidebarPosition:10,frontMatter:{title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",tags:["Collaboration","Workspaces","Member","Invite","Role"],keywords:["Workspace configuration","Invite members","Member roles","Access permissions","Displaying workspace members","Modifying member roles","Removing workspace members","Workspace collaboration","Team collaboration","Access control","Role-based permissions","Workspace management","User roles","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},sidebar:"tutorialSidebar",previous:{title:"Collaboration overview",permalink:"/collaboration/collaboration-overview"},next:{title:"Base collaboration",permalink:"/collaboration/base-collaboration"}},l={},c=[{value:"Invite members to Workspace",id:"invite-members-to-workspace",level:2},{value:"List Workspace members",id:"list-workspace-members",level:2},{value:"Modify Workspace Member Roles",id:"modify-workspace-member-roles",level:2},{value:"Remove Workspace Members",id:"remove-workspace-members",level:2}],m={toc:c},p="wrapper";function b(e){let{components:o,...n}=e;return(0,a.kt)(p,(0,t.Z)({},m,n,{components:o,mdxType:"MDXLayout"}),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("p",{parentName:"admonition"},"A comprehensive guide regarding roles and permissions can be accessed ",(0,a.kt)("a",{parentName:"p",href:"/roles-and-permissions/roles-permissions-overview"},"here"),".")),(0,a.kt)("h2",{id:"invite-members-to-workspace"},"Invite members to Workspace"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Navigate to the Workspace configuration page by selecting ",(0,a.kt)("inlineCode",{parentName:"li"},"Team & Settings")," in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Access the ",(0,a.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,a.kt)("li",{parentName:"ol"},"Input the email address of the intended member for the invitation."),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Role")," dropdown menu"),(0,a.kt)("li",{parentName:"ol"},"Choose the appropriate access permission for the member from the dropdown menu."),(0,a.kt)("li",{parentName:"ol"},"Conclude the process by selecting the ",(0,a.kt)("inlineCode",{parentName:"li"},"Add Member(s)")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(48954).Z,width:"2874",height:"1574"})),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"You have the capability to invite multiple members simultaneously by entering their email addresses, separated by commas.")),(0,a.kt)("h2",{id:"list-workspace-members"},"List Workspace members"),(0,a.kt)("p",null,"The ",(0,a.kt)("inlineCode",{parentName:"p"},"Members")," tab displays a list of users who have been granted access to the workspace.\n",(0,a.kt)("img",{alt:"image",src:r(45858).Z,width:"2878",height:"1476"})),(0,a.kt)("h2",{id:"modify-workspace-member-roles"},"Modify Workspace Member Roles"),(0,a.kt)("p",null,"You can modify the access permissions of members by following these steps:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Access the dropdown menu."),(0,a.kt)("li",{parentName:"ol"},"Select the desired new role option.\n",(0,a.kt)("img",{alt:"image",src:r(91567).Z,width:"2872",height:"1324"}))),(0,a.kt)("h2",{id:"remove-workspace-members"},"Remove Workspace Members"),(0,a.kt)("p",null,"To remove a member from the workspace, take the following steps:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on the vertical ellipses ",(0,a.kt)("inlineCode",{parentName:"li"},"\u22ee")," to open the context menu."),(0,a.kt)("li",{parentName:"ol"},"Select the ",(0,a.kt)("inlineCode",{parentName:"li"},"Remove User")," option.\n",(0,a.kt)("img",{alt:"image",src:r(37164).Z,width:"2868",height:"1396"}))))}b.isMDXComponent=!0},48954:(e,o,r)=>{r.d(o,{Z:()=>t});const t=r.p+"assets/images/workspace-collaboration-1cd7622b6d7dfbccc5ba759d8cab27c0.png"},45858:(e,o,r)=>{r.d(o,{Z:()=>t});const t=r.p+"assets/images/workspace-members-list-95c31f777544a133c392afe1b25f5d4e.png"},37164:(e,o,r)=>{r.d(o,{Z:()=>t});const t=r.p+"assets/images/workspace-members-remove-2bd587da2b6abe610d1695930cbf3f2b.png"},91567:(e,o,r)=>{r.d(o,{Z:()=>t});const t=r.p+"assets/images/workspace-members-role-change-d44e8f808de738f6ff1f678e4c0e6ec1.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/90e43058.f9839c0b.js b/packages/noco-docs/dist/assets/js/90e43058.f9839c0b.js new file mode 100644 index 0000000000..8b383e2034 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/90e43058.f9839c0b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7023],{3905:(t,e,a)=>{a.d(e,{Zo:()=>m,kt:()=>c});var n=a(67294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function i(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function l(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?i(Object(a),!0).forEach((function(e){r(t,e,a[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))}))}return t}function d(t,e){if(null==t)return{};var a,n,r=function(t,e){if(null==t)return{};var a,n,r={},i=Object.keys(t);for(n=0;n<i.length;n++)a=i[n],e.indexOf(a)>=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)a=i[n],e.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var o=n.createContext({}),p=function(t){var e=n.useContext(o),a=e;return t&&(a="function"==typeof t?t(e):l(l({},e),t)),a},m=function(t){var e=p(t.components);return n.createElement(o.Provider,{value:e},t.children)},k="mdxType",N={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},g=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,i=t.originalType,o=t.parentName,m=d(t,["components","mdxType","originalType","parentName"]),k=p(a),g=r,c=k["".concat(o,".").concat(g)]||k[g]||N[g]||i;return a?n.createElement(c,l(l({ref:e},m),{},{components:a})):n.createElement(c,l({ref:e},m))}));function c(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var i=a.length,l=new Array(i);l[0]=g;var d={};for(var o in e)hasOwnProperty.call(e,o)&&(d[o]=e[o]);d.originalType=t,d[k]="string"==typeof t?t:r,l[1]=d;for(var p=2;p<i;p++)l[p]=a[p];return n.createElement.apply(null,l)}return n.createElement.apply(null,a)}g.displayName="MDXCreateElement"},79613:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>o,contentTitle:()=>l,default:()=>N,frontMatter:()=>i,metadata:()=>d,toc:()=>p});var n=a(87462),r=(a(67294),a(3905));const i={title:"Keyboard Maneuver",description:"Keyboard shortcuts"},l=void 0,d={unversionedId:"setup-and-usages/keyboard-maneuver",id:"version-0.109.7/setup-and-usages/keyboard-maneuver",title:"Keyboard Maneuver",description:"Keyboard shortcuts",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/keyboard-maneuver",permalink:"/0.109.7/setup-and-usages/keyboard-maneuver",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md",tags:[],version:"0.109.7",sidebarPosition:150,frontMatter:{title:"Keyboard Maneuver",description:"Keyboard shortcuts"},sidebar:"tutorialSidebar",previous:{title:"Share View",permalink:"/0.109.7/setup-and-usages/share-view"},next:{title:"Views",permalink:"/0.109.7/setup-and-usages/views"}},o={},p=[{value:"Shortcuts",id:"shortcuts",level:2},{value:"Grid view",id:"grid-view",level:2},{value:"Column type specific",id:"column-type-specific",level:2},{value:"Expanded form",id:"expanded-form",level:2}],m={toc:p},k="wrapper";function N(t){let{components:e,...a}=t;return(0,r.kt)(k,(0,n.Z)({},m,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"shortcuts"},"Shortcuts"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},"t")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Insert new table")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},"r")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Insert new row")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},"c")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Insert new column")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},"f")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Toggle fullscreen mode")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},"i")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Invite a member to team")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"ALT")," ",(0,r.kt)("inlineCode",{parentName:"td"},",")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Open ",(0,r.kt)("inlineCode",{parentName:"td"},"Team & Settings")," menu")))),(0,r.kt)("h2",{id:"grid-view"},"Grid view"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to first record in this column (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to last record in this column (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"C")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Copy cell contents")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Switch cell in focus to EDIT mode; opens modal/picker if cell is associated with one")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Esc")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Exit cell EDIT mode")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Delete")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Clear cell")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Space")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Expand current row")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"General cell navigation")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Tab")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move to next cell horizontally; if on last cell, move to next row beginning")))),(0,r.kt)("h2",{id:"column-type-specific"},"Column type specific"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"center"},"Datatype"),(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Text / Numerical cells"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move cursor to the left / right")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move cursor to the beginning / end")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Single Select"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Select option")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Multi Select"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Select / deselect option")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"DateTime"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Ctrl")," ",(0,r.kt)("inlineCode",{parentName:"td"},";")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Select current date time")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Link"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move between options")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"}),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Link current selection")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Checkbox"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Toggle")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"center"},"Rating"),(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"<0 ~ Max>")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Enter number to toggle rating")))),(0,r.kt)("h2",{id:"expanded-form"},"Expanded form"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Save current expanded form item")))))}N.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9329f711.cef1e022.js b/packages/noco-docs/dist/assets/js/9329f711.cef1e022.js new file mode 100644 index 0000000000..65cfd0029b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9329f711.cef1e022.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[753],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>m});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),s=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},f="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},g=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),f=s(r),g=o,m=f["".concat(c,".").concat(g)]||f[g]||u[g]||i;return r?n.createElement(m,a(a({ref:t},p),{},{components:r})):n.createElement(m,a({ref:t},p))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=g;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[f]="string"==typeof e?e:o,a[1]=l;for(var s=2;s<i;s++)a[s]=r[s];return n.createElement.apply(null,a)}return n.createElement.apply(null,r)}g.displayName="MDXCreateElement"},20980:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>u,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var n=r(87462),o=(r(67294),r(3905));const i={title:"Profile page",description:"This article explains how to manage your profile page.",tags:["Account Settings","Profile","Member"],keywords:["Profile page","Profile settings","Profile name","Profile picture","Profile management","Profile customization","Profile information","Profile details","Profile preferences","Profile options"]},a=void 0,l={unversionedId:"account-settings/profile-page",id:"account-settings/profile-page",title:"Profile page",description:"This article explains how to manage your profile page.",source:"@site/docs/140.account-settings/010.profile-page.md",sourceDirName:"140.account-settings",slug:"/account-settings/profile-page",permalink:"/account-settings/profile-page",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/140.account-settings/010.profile-page.md",tags:[{label:"Account Settings",permalink:"/tags/account-settings"},{label:"Profile",permalink:"/tags/profile"},{label:"Member",permalink:"/tags/member"}],version:"current",sidebarPosition:10,frontMatter:{title:"Profile page",description:"This article explains how to manage your profile page.",tags:["Account Settings","Profile","Member"],keywords:["Profile page","Profile settings","Profile name","Profile picture","Profile management","Profile customization","Profile information","Profile details","Profile preferences","Profile options"]},sidebar:"tutorialSidebar",previous:{title:"Actions on webhook",permalink:"/automation/webhook/actions-on-webhook"},next:{title:"API tokens",permalink:"/account-settings/api-tokens"}},c={},s=[],p={toc:s},f="wrapper";function u(e){let{components:t,...i}=e;return(0,o.kt)(f,(0,n.Z)({},p,i,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"Profile page is the place where you can manage your profile information. To access your profile page,"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"User menu")," in the bottom left corner of the sidebar, "),(0,o.kt)("li",{parentName:"ol"},"Select ",(0,o.kt)("inlineCode",{parentName:"li"},"Account Settings")," from the dropdown"),(0,o.kt)("li",{parentName:"ol"},"Change ",(0,o.kt)("inlineCode",{parentName:"li"},"Profile name")," "),(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"Save")," button to save the changes")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"profile page",src:r(43805).Z,width:"2432",height:"1388"})," "),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"profile page",src:r(73949).Z,width:"2432",height:"1386"})))}u.isMDXComponent=!0},43805:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/account-settings-3f8b281c933be2349ddb19f0fa8660e8.png"},73949:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/profile-page-a57e61bb64613b60a0567d3589307653.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/935f2afb.caa4773a.js b/packages/noco-docs/dist/assets/js/935f2afb.caa4773a.js new file mode 100644 index 0000000000..e661d6a799 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/935f2afb.caa4773a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Latest","banner":null,"badge":true,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Welcome","href":"/","docId":"index"},{"type":"category","label":"Getting Started","collapsible":true,"collapsed":false,"items":[{"type":"link","label":"Quick start","href":"/getting-started/quick-start","docId":"getting-started/quick-start"},{"type":"link","label":"NocoDB terminologies","href":"/getting-started/terminologies","docId":"getting-started/terminologies"},{"type":"link","label":"Keyboard shortcuts","href":"/getting-started/keyboard-shortcuts","docId":"getting-started/keyboard-shortcuts"},{"type":"category","label":"In Open Source","collapsible":true,"collapsed":false,"items":[{"type":"link","label":"Installation","href":"/getting-started/self-hosted/installation","docId":"getting-started/self-hosted/installation"},{"type":"link","label":"Environment variables","href":"/getting-started/self-hosted/environment-variables","docId":"getting-started/self-hosted/environment-variables"},{"type":"link","label":"Upgrading","href":"/getting-started/self-hosted/upgrading","docId":"getting-started/self-hosted/upgrading"}]}]},{"type":"category","label":"Workspaces","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Workspace overview","href":"/workspaces/workspace-overview","docId":"workspaces/workspace-overview"},{"type":"link","label":"Create workspace","href":"/workspaces/create-workspace","docId":"workspaces/create-workspace"},{"type":"link","label":"Workspace collaboration","href":"/workspaces/workspace-collaboration","docId":"workspaces/workspace-collaboration"},{"type":"link","label":"Actions on workspace","href":"/workspaces/actions-on-workspace","docId":"workspaces/actions-on-workspace"}]},{"type":"category","label":"Bases","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Base overview","href":"/bases/base-overview","docId":"bases/base-overview"},{"type":"link","label":"Create base","href":"/bases/create-base","docId":"bases/create-base"},{"type":"link","label":"Import Airtable to NocoDB","href":"/bases/import-base-from-airtable","docId":"bases/import-base-from-airtable"},{"type":"link","label":"Base collaboration","href":"/bases/base-collaboration","docId":"bases/base-collaboration"},{"type":"link","label":"Share base","href":"/bases/share-base","docId":"bases/share-base"},{"type":"link","label":"Actions on base","href":"/bases/actions-on-base","docId":"bases/actions-on-base"}]},{"type":"category","label":"Tables","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Table overview","href":"/tables/table-overview","docId":"tables/table-overview"},{"type":"link","label":"Create empty table","href":"/tables/create-table","docId":"tables/create-table"},{"type":"link","label":"Create table via import","href":"/tables/create-table-via-import","docId":"tables/create-table-via-import"},{"type":"link","label":"Import data into an existing table","href":"/tables/import-data-into-existing-table","docId":"tables/import-data-into-existing-table"},{"type":"link","label":"Actions on table","href":"/tables/actions-on-table","docId":"tables/actions-on-table"}]},{"type":"category","label":"Table operations","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Table operations overview","href":"/table-operations/overview","docId":"table-operations/overview"},{"type":"link","label":"Hide & reorder fields","href":"/table-operations/field-operations","docId":"table-operations/field-operations"},{"type":"link","label":"Filtering records","href":"/table-operations/filter","docId":"table-operations/filter"},{"type":"link","label":"Sorting records","href":"/table-operations/sort","docId":"table-operations/sort"},{"type":"link","label":"Grouping records","href":"/table-operations/group-by","docId":"table-operations/group-by"},{"type":"link","label":"Row height","href":"/table-operations/row-height","docId":"table-operations/row-height"},{"type":"link","label":"Search","href":"/table-operations/search","docId":"table-operations/search"},{"type":"link","label":"Download","href":"/table-operations/download","docId":"table-operations/download"}]},{"type":"category","label":"Table Details","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Table details overview","href":"/table-details/table-details-overview","docId":"table-details/table-details-overview"}]},{"type":"category","label":"Fields","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fields overview","href":"/fields/fields-overview","docId":"fields/fields-overview"},{"type":"link","label":"Primary key","href":"/fields/primary-key","docId":"fields/primary-key"},{"type":"link","label":"Display value","href":"/fields/display-value","docId":"fields/display-value"},{"type":"category","label":"Field types","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Text based","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Single line text","href":"/fields/field-types/text-based/single-line-text","docId":"fields/field-types/text-based/single-line-text"},{"type":"link","label":"Long text","href":"/fields/field-types/text-based/long-text","docId":"fields/field-types/text-based/long-text"},{"type":"link","label":"Email","href":"/fields/field-types/text-based/email","docId":"fields/field-types/text-based/email"},{"type":"link","label":"Phone Number","href":"/fields/field-types/text-based/phonenumber","docId":"fields/field-types/text-based/phonenumber"},{"type":"link","label":"URL","href":"/fields/field-types/text-based/url","docId":"fields/field-types/text-based/url"}]},{"type":"category","label":"Numerical","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Number","href":"/fields/field-types/numerical/number","docId":"fields/field-types/numerical/number"},{"type":"link","label":"Decimal","href":"/fields/field-types/numerical/decimal","docId":"fields/field-types/numerical/decimal"},{"type":"link","label":"Percent","href":"/fields/field-types/numerical/percent","docId":"fields/field-types/numerical/percent"},{"type":"link","label":"Currency","href":"/fields/field-types/numerical/currency","docId":"fields/field-types/numerical/currency"}]},{"type":"category","label":"Select based","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Single Select","href":"/fields/field-types/select-based/single-select","docId":"fields/field-types/select-based/single-select"},{"type":"link","label":"Multi Select","href":"/fields/field-types/select-based/multi-select","docId":"fields/field-types/select-based/multi-select"}]},{"type":"category","label":"Links based","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Links","href":"/fields/field-types/links-based/links","docId":"fields/field-types/links-based/links"},{"type":"link","label":"LookUp","href":"/fields/field-types/links-based/lookup","docId":"fields/field-types/links-based/lookup"},{"type":"link","label":"Rollup","href":"/fields/field-types/links-based/rollup","docId":"fields/field-types/links-based/rollup"}]},{"type":"category","label":"Custom types","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Attachment","href":"/fields/field-types/custom-types/attachment","docId":"fields/field-types/custom-types/attachment"},{"type":"link","label":"Checkbox","href":"/fields/field-types/custom-types/checkbox","docId":"fields/field-types/custom-types/checkbox"},{"type":"link","label":"Rating","href":"/fields/field-types/custom-types/rating","docId":"fields/field-types/custom-types/rating"},{"type":"link","label":"QR code","href":"/fields/field-types/custom-types/QR-code","docId":"fields/field-types/custom-types/QR-code"},{"type":"link","label":"Barcode","href":"/fields/field-types/custom-types/barcode","docId":"fields/field-types/custom-types/barcode"},{"type":"link","label":"Geometry","href":"/fields/field-types/custom-types/geometry","docId":"fields/field-types/custom-types/geometry"},{"type":"link","label":"Specific DB type","href":"/fields/field-types/custom-types/specific-db-type","docId":"fields/field-types/custom-types/specific-db-type"},{"type":"link","label":"JSON","href":"/fields/field-types/custom-types/json","docId":"fields/field-types/custom-types/json"}]},{"type":"category","label":"Formula","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Formula","href":"/fields/field-types/formula/formula","docId":"fields/field-types/formula/formula"},{"type":"link","label":"Numeric and Logical Operators","href":"/fields/field-types/formula/operators","docId":"fields/field-types/formula/operators"},{"type":"link","label":"Numeric functions","href":"/fields/field-types/formula/numeric-functions","docId":"fields/field-types/formula/numeric-functions"},{"type":"link","label":"String functions","href":"/fields/field-types/formula/string-functions","docId":"fields/field-types/formula/string-functions"},{"type":"link","label":"Date functions","href":"/fields/field-types/formula/date-functions","docId":"fields/field-types/formula/date-functions"},{"type":"link","label":"Conditional expressions","href":"/fields/field-types/formula/conditional-expressions","docId":"fields/field-types/formula/conditional-expressions"}]},{"type":"category","label":"Date Time based","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Date Time","href":"/fields/field-types/date-time-based/date-time","docId":"fields/field-types/date-time-based/date-time"},{"type":"link","label":"Date","href":"/fields/field-types/date-time-based/date","docId":"fields/field-types/date-time-based/date"},{"type":"link","label":"Time","href":"/fields/field-types/date-time-based/time","docId":"fields/field-types/date-time-based/time"},{"type":"link","label":"Duration","href":"/fields/field-types/date-time-based/duration","docId":"fields/field-types/date-time-based/duration"}]}]},{"type":"link","label":"Multi-field editor","href":"/fields/multi-fields-editor","docId":"fields/multi-fields-editor"},{"type":"link","label":"Actions on field","href":"/fields/actions-on-field","docId":"fields/actions-on-field"}]},{"type":"category","label":"Records","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Records overview","href":"/records/records-overview","docId":"records/records-overview"},{"type":"link","label":"Create record","href":"/records/create-record","docId":"records/create-record"},{"type":"link","label":"Expanded record","href":"/records/expand-record","docId":"records/expand-record"},{"type":"link","label":"Actions on record","href":"/records/actions-on-record","docId":"records/actions-on-record"}]},{"type":"category","label":"Views","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"View overview","href":"/views/views-overview","docId":"views/views-overview"},{"type":"link","label":"Create view","href":"/views/create-view","docId":"views/create-view"},{"type":"link","label":"Share view","href":"/views/share-view","docId":"views/share-view"},{"type":"category","label":"View types","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Grid","href":"/views/view-types/grid","docId":"views/view-types/grid"},{"type":"link","label":"Gallery","href":"/views/view-types/gallery","docId":"views/view-types/gallery"},{"type":"link","label":"Form","href":"/views/view-types/form","docId":"views/view-types/form"},{"type":"link","label":"Kanban","href":"/views/view-types/kanban","docId":"views/view-types/kanban"}]},{"type":"link","label":"Actions on view","href":"/views/actions-on-view","docId":"views/actions-on-view"}]},{"type":"category","label":"Data sources","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Data sources overview","href":"/data-source/data-source-overview","docId":"data-source/data-source-overview"}]},{"type":"category","label":"Roles and permissions","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Roles & permissions overview","href":"/roles-and-permissions/roles-permissions-overview","docId":"roles-and-permissions/roles-permissions-overview"}]},{"type":"category","label":"Collaboration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Collaboration overview","href":"/collaboration/collaboration-overview","docId":"collaboration/collaboration-overview"},{"type":"link","label":"Workspace collaboration","href":"/collaboration/workspace-collaboration","docId":"collaboration/workspace-collaboration"},{"type":"link","label":"Base collaboration","href":"/collaboration/base-collaboration","docId":"collaboration/base-collaboration"},{"type":"link","label":"Share base","href":"/collaboration/share-base","docId":"collaboration/share-base"},{"type":"link","label":"Share view","href":"/collaboration/share-view","docId":"collaboration/share-view"},{"type":"link","label":"In Open Source","href":"/collaboration/oss-specific-details","docId":"collaboration/oss-specific-details"}]},{"type":"category","label":"Automation","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Webhook","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Webhook overview","href":"/automation/webhook/webhook-overview","docId":"automation/webhook/webhook-overview"},{"type":"link","label":"Create webhook","href":"/automation/webhook/create-webhook","docId":"automation/webhook/create-webhook"},{"type":"link","label":"Actions on webhook","href":"/automation/webhook/actions-on-webhook","docId":"automation/webhook/actions-on-webhook"}]}]},{"type":"category","label":"Account settings","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Profile page","href":"/account-settings/profile-page","docId":"account-settings/profile-page"},{"type":"link","label":"API tokens","href":"/account-settings/api-tokens","docId":"account-settings/api-tokens"},{"type":"link","label":"In Open Source","href":"/account-settings/oss-specific-details","docId":"account-settings/oss-specific-details"}]},{"type":"category","label":"Engineering","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture overview","href":"/engineering/architecture","docId":"engineering/architecture"},{"type":"link","label":"Repository structure","href":"/engineering/repository-structure","docId":"engineering/repository-structure"},{"type":"link","label":"Development setup","href":"/engineering/development-setup","docId":"engineering/development-setup"},{"type":"link","label":"Writing unit tests","href":"/engineering/unit-testing","docId":"engineering/unit-testing"},{"type":"link","label":"Playwright E2E testing","href":"/engineering/playwright","docId":"engineering/playwright"},{"type":"link","label":"Releases & builds","href":"/engineering/builds-and-releases","docId":"engineering/builds-and-releases"},{"type":"link","label":"i18n translation","href":"/engineering/translation","docId":"engineering/translation"},{"type":"link","label":"Writing docs","href":"/engineering/writing-docs","docId":"engineering/writing-docs"}]},{"type":"link","label":"FAQs","href":"/FAQs","docId":"FAQs"}]},"docs":{"account-settings/api-tokens":{"id":"account-settings/api-tokens","title":"API tokens","description":"This article explains how to create and delete API Tokens.","sidebar":"tutorialSidebar"},"account-settings/oss-specific-details":{"id":"account-settings/oss-specific-details","title":"In Open Source","description":"This article explains Account settings specifics in Open source NocoDB.","sidebar":"tutorialSidebar"},"account-settings/profile-page":{"id":"account-settings/profile-page","title":"Profile page","description":"This article explains how to manage your profile page.","sidebar":"tutorialSidebar"},"automation/webhook/actions-on-webhook":{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","sidebar":"tutorialSidebar"},"automation/webhook/create-webhook":{"id":"automation/webhook/create-webhook","title":"Create webhook","description":"Learn how to create a webhook in NocoDB.","sidebar":"tutorialSidebar"},"automation/webhook/webhook-overview":{"id":"automation/webhook/webhook-overview","title":"Webhook overview","description":"You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.","sidebar":"tutorialSidebar"},"bases/actions-on-base":{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","sidebar":"tutorialSidebar"},"bases/base-collaboration":{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","sidebar":"tutorialSidebar"},"bases/base-overview":{"id":"bases/base-overview","title":"Base overview","description":"This article explains the concept of bases in NocoDB.","sidebar":"tutorialSidebar"},"bases/create-base":{"id":"bases/create-base","title":"Create base","description":"Learn how to create a base in NocoDB.","sidebar":"tutorialSidebar"},"bases/import-base-from-airtable":{"id":"bases/import-base-from-airtable","title":"Import Airtable to NocoDB","description":"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes","sidebar":"tutorialSidebar"},"bases/share-base":{"id":"bases/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","sidebar":"tutorialSidebar"},"collaboration/base-collaboration":{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","sidebar":"tutorialSidebar"},"collaboration/collaboration-overview":{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","sidebar":"tutorialSidebar"},"collaboration/oss-specific-details":{"id":"collaboration/oss-specific-details","title":"In Open Source","description":"This article explains specifics of User management in OSS.","sidebar":"tutorialSidebar"},"collaboration/share-base":{"id":"collaboration/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","sidebar":"tutorialSidebar"},"collaboration/share-view":{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","sidebar":"tutorialSidebar"},"collaboration/workspace-collaboration":{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","sidebar":"tutorialSidebar"},"data-source/data-source-overview":{"id":"data-source/data-source-overview","title":"Data sources overview","description":"NocoDB Data-Source sync, access control & re-config","sidebar":"tutorialSidebar"},"engineering/architecture":{"id":"engineering/architecture","title":"Architecture overview","description":"Simple overview of NocoDB architecture","sidebar":"tutorialSidebar"},"engineering/builds-and-releases":{"id":"engineering/builds-and-releases","title":"Releases & builds","description":"NocoDB creates Docker and Binaries for each PR","sidebar":"tutorialSidebar"},"engineering/development-setup":{"id":"engineering/development-setup","title":"Development setup","description":"How to set-up your development environment","sidebar":"tutorialSidebar"},"engineering/playwright":{"id":"engineering/playwright","title":"Playwright E2E testing","description":"Overview to playwright based e2e tests","sidebar":"tutorialSidebar"},"engineering/repository-structure":{"id":"engineering/repository-structure","title":"Repository structure","description":"Repository Structure","sidebar":"tutorialSidebar"},"engineering/translation":{"id":"engineering/translation","title":"i18n translation","description":"Contribute to NocoDB\'s i18n translation","sidebar":"tutorialSidebar"},"engineering/unit-testing":{"id":"engineering/unit-testing","title":"Writing unit tests","description":"Overview to Unit Testing","sidebar":"tutorialSidebar"},"engineering/writing-docs":{"id":"engineering/writing-docs","title":"Writing docs","description":"Overview to writing docs","sidebar":"tutorialSidebar"},"FAQs":{"id":"FAQs","title":"FAQs","description":"General FAQs","sidebar":"tutorialSidebar"},"fields/actions-on-field":{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","sidebar":"tutorialSidebar"},"fields/display-value":{"id":"fields/display-value","title":"Display value","description":"Understanding Display Value in NocoDB!","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/attachment":{"id":"fields/field-types/custom-types/attachment","title":"Attachment","description":"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/barcode":{"id":"fields/field-types/custom-types/barcode","title":"Barcode","description":"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/checkbox":{"id":"fields/field-types/custom-types/checkbox","title":"Checkbox","description":"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/geometry":{"id":"fields/field-types/custom-types/geometry","title":"Geometry","description":"Create a geometry field","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/json":{"id":"fields/field-types/custom-types/json","title":"JSON","description":"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/QR-code":{"id":"fields/field-types/custom-types/QR-code","title":"QR code","description":"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/rating":{"id":"fields/field-types/custom-types/rating","title":"Rating","description":"The","sidebar":"tutorialSidebar"},"fields/field-types/custom-types/specific-db-type":{"id":"fields/field-types/custom-types/specific-db-type","title":"Specific DB type","description":"Create a Specific DB Type field","sidebar":"tutorialSidebar"},"fields/field-types/date-time-based/date":{"id":"fields/field-types/date-time-based/date","title":"Date","description":"Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.","sidebar":"tutorialSidebar"},"fields/field-types/date-time-based/date-time":{"id":"fields/field-types/date-time-based/date-time","title":"Date Time","description":"Date Time field type is used to store both date and time values in a single field.","sidebar":"tutorialSidebar"},"fields/field-types/date-time-based/duration":{"id":"fields/field-types/date-time-based/duration","title":"Duration","description":"Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.","sidebar":"tutorialSidebar"},"fields/field-types/date-time-based/time":{"id":"fields/field-types/date-time-based/time","title":"Time","description":"Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.","sidebar":"tutorialSidebar"},"fields/field-types/formula/conditional-expressions":{"id":"fields/field-types/formula/conditional-expressions","title":"Conditional expressions","description":"Conditional expressions","sidebar":"tutorialSidebar"},"fields/field-types/formula/date-functions":{"id":"fields/field-types/formula/date-functions","title":"Date functions","description":"| Name | Syntax | Sample | Output | Remark |","sidebar":"tutorialSidebar"},"fields/field-types/formula/formula":{"id":"fields/field-types/formula/formula","title":"Formula","description":"Create a formula field","sidebar":"tutorialSidebar"},"fields/field-types/formula/numeric-functions":{"id":"fields/field-types/formula/numeric-functions","title":"Numeric functions","description":"Numeric functions","sidebar":"tutorialSidebar"},"fields/field-types/formula/operators":{"id":"fields/field-types/formula/operators","title":"Numeric and Logical Operators","description":"Numeric operators","sidebar":"tutorialSidebar"},"fields/field-types/formula/string-functions":{"id":"fields/field-types/formula/string-functions","title":"String functions","description":"String functions","sidebar":"tutorialSidebar"},"fields/field-types/links-based/links":{"id":"fields/field-types/links-based/links","title":"Links","description":"Links field type is used to establish relationship between tables & create links to other records.","sidebar":"tutorialSidebar"},"fields/field-types/links-based/lookup":{"id":"fields/field-types/links-based/lookup","title":"LookUp","description":"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer\'s name and address in the Orders table.","sidebar":"tutorialSidebar"},"fields/field-types/links-based/rollup":{"id":"fields/field-types/links-based/rollup","title":"Rollup","description":"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.","sidebar":"tutorialSidebar"},"fields/field-types/numerical/currency":{"id":"fields/field-types/numerical/currency","title":"Currency","description":"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.","sidebar":"tutorialSidebar"},"fields/field-types/numerical/decimal":{"id":"fields/field-types/numerical/decimal","title":"Decimal","description":"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.","sidebar":"tutorialSidebar"},"fields/field-types/numerical/number":{"id":"fields/field-types/numerical/number","title":"Number","description":"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.","sidebar":"tutorialSidebar"},"fields/field-types/numerical/percent":{"id":"fields/field-types/numerical/percent","title":"Percent","description":"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.","sidebar":"tutorialSidebar"},"fields/field-types/select-based/multi-select":{"id":"fields/field-types/select-based/multi-select","title":"Multi Select","description":"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.","sidebar":"tutorialSidebar"},"fields/field-types/select-based/single-select":{"id":"fields/field-types/select-based/single-select","title":"Single Select","description":"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.","sidebar":"tutorialSidebar"},"fields/field-types/text-based/email":{"id":"fields/field-types/text-based/email","title":"Email","description":"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with","sidebar":"tutorialSidebar"},"fields/field-types/text-based/long-text":{"id":"fields/field-types/text-based/long-text","title":"Long text","description":"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.","sidebar":"tutorialSidebar"},"fields/field-types/text-based/phonenumber":{"id":"fields/field-types/text-based/phonenumber","title":"Phone Number","description":"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.","sidebar":"tutorialSidebar"},"fields/field-types/text-based/single-line-text":{"id":"fields/field-types/text-based/single-line-text","title":"Single line text","description":"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.","sidebar":"tutorialSidebar"},"fields/field-types/text-based/url":{"id":"fields/field-types/text-based/url","title":"URL","description":"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with","sidebar":"tutorialSidebar"},"fields/fields-overview":{"id":"fields/fields-overview","title":"Fields overview","description":"- Primary Key","sidebar":"tutorialSidebar"},"fields/multi-fields-editor":{"id":"fields/multi-fields-editor","title":"Multi-field editor","description":"Understanding use of multi-field editor in NocoDB!","sidebar":"tutorialSidebar"},"fields/primary-key":{"id":"fields/primary-key","title":"Primary key","description":"Understanding Primary Key in NocoDB!","sidebar":"tutorialSidebar"},"getting-started/keyboard-shortcuts":{"id":"getting-started/keyboard-shortcuts","title":"Keyboard shortcuts","description":"Quick Actions","sidebar":"tutorialSidebar"},"getting-started/quick-start":{"id":"getting-started/quick-start","title":"Quick start","description":"NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we\'ll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let\'s dive in and unlock the potential of NocoDB for your data management needs.","sidebar":"tutorialSidebar"},"getting-started/self-hosted/environment-variables":{"id":"getting-started/self-hosted/environment-variables","title":"Environment variables","description":"Environment Variables for NocoDB!","sidebar":"tutorialSidebar"},"getting-started/self-hosted/installation":{"id":"getting-started/self-hosted/installation","title":"Installation","description":"Simple installation - takes about three minutes!","sidebar":"tutorialSidebar"},"getting-started/self-hosted/upgrading":{"id":"getting-started/self-hosted/upgrading","title":"Upgrading","description":"Upgrading NocoDB : Docker, Node and Homebrew!","sidebar":"tutorialSidebar"},"getting-started/terminologies":{"id":"getting-started/terminologies","title":"NocoDB terminologies","description":"To maximize your use of NocoDB, it\'s beneficial to become familiar with some common terms.","sidebar":"tutorialSidebar"},"index":{"id":"index","title":"Welcome","description":"NocoDB Documentation","sidebar":"tutorialSidebar"},"records/actions-on-record":{"id":"records/actions-on-record","title":"Actions on record","description":"Keyboard navigation within Grid view","sidebar":"tutorialSidebar"},"records/create-record":{"id":"records/create-record","title":"Create record","description":"Learn how to create a record in NocoDB.","sidebar":"tutorialSidebar"},"records/expand-record":{"id":"records/expand-record","title":"Expanded record","description":"NocoDB provides Expanded Form to let you edit your data easily","sidebar":"tutorialSidebar"},"records/records-overview":{"id":"records/records-overview","title":"Records overview","description":"Learn how to create, import, and manage records in NocoDB.","sidebar":"tutorialSidebar"},"roles-and-permissions/roles-permissions-overview":{"id":"roles-and-permissions/roles-permissions-overview","title":"Roles & permissions overview","description":"Learn about roles and permissions in NocoDB.","sidebar":"tutorialSidebar"},"table-details/table-details-overview":{"id":"table-details/table-details-overview","title":"Table details overview","description":"Table details overview","sidebar":"tutorialSidebar"},"table-operations/download":{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","sidebar":"tutorialSidebar"},"table-operations/field-operations":{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","sidebar":"tutorialSidebar"},"table-operations/filter":{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","sidebar":"tutorialSidebar"},"table-operations/group-by":{"id":"table-operations/group-by","title":"Grouping records","description":"Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.","sidebar":"tutorialSidebar"},"table-operations/overview":{"id":"table-operations/overview","title":"Table operations overview","description":"Learn how to work with filters, sort, group by, and more in NocoDB.","sidebar":"tutorialSidebar"},"table-operations/row-height":{"id":"table-operations/row-height","title":"Row height","description":"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.","sidebar":"tutorialSidebar"},"table-operations/search":{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","sidebar":"tutorialSidebar"},"table-operations/sort":{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","sidebar":"tutorialSidebar"},"tables/actions-on-table":{"id":"tables/actions-on-table","title":"Actions on table","description":"Learn how to rename, duplicate, and delete a table in NocoDB.","sidebar":"tutorialSidebar"},"tables/create-table":{"id":"tables/create-table","title":"Create empty table","description":"Learn how to create a table in NocoDB.","sidebar":"tutorialSidebar"},"tables/create-table-via-import":{"id":"tables/create-table-via-import","title":"Create table via import","description":"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.","sidebar":"tutorialSidebar"},"tables/import-data-into-existing-table":{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","sidebar":"tutorialSidebar"},"tables/table-overview":{"id":"tables/table-overview","title":"Table overview","description":"Learn how to create, import, and manage tables in NocoDB.","sidebar":"tutorialSidebar"},"views/actions-on-view":{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","sidebar":"tutorialSidebar"},"views/create-view":{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","sidebar":"tutorialSidebar"},"views/share-view":{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","sidebar":"tutorialSidebar"},"views/view-types/form":{"id":"views/view-types/form","title":"Form","description":"Learn how to create, import, and manage forms in NocoDB.","sidebar":"tutorialSidebar"},"views/view-types/gallery":{"id":"views/view-types/gallery","title":"Gallery","description":"Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.","sidebar":"tutorialSidebar"},"views/view-types/grid":{"id":"views/view-types/grid","title":"Grid","description":"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.","sidebar":"tutorialSidebar"},"views/view-types/kanban":{"id":"views/view-types/kanban","title":"Kanban","description":"Learn how to use Kanban view in NocoDB.","sidebar":"tutorialSidebar"},"views/views-overview":{"id":"views/views-overview","title":"View overview","description":"Understanding Views in NocoDB!","sidebar":"tutorialSidebar"},"workspaces/actions-on-workspace":{"id":"workspaces/actions-on-workspace","title":"Actions on workspace","description":"This article explains how to rename or delete a workspace.","sidebar":"tutorialSidebar"},"workspaces/create-workspace":{"id":"workspaces/create-workspace","title":"Create workspace","description":"Learn how to create a workspace in NocoDB","sidebar":"tutorialSidebar"},"workspaces/workspace-collaboration":{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","sidebar":"tutorialSidebar"},"workspaces/workspace-overview":{"id":"workspaces/workspace-overview","title":"Workspace overview","description":"This article briefs the concept of workspaces in NocoDB.","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/95677701.7861c777.js b/packages/noco-docs/dist/assets/js/95677701.7861c777.js new file mode 100644 index 0000000000..a994df4df5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/95677701.7861c777.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1174],{44721:o=>{o.exports=JSON.parse('{"label":"Group by","permalink":"/tags/group-by","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/group-by","title":"Grouping records","description":"Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.","permalink":"/table-operations/group-by"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/95a14fd1.4287588d.js b/packages/noco-docs/dist/assets/js/95a14fd1.4287588d.js new file mode 100644 index 0000000000..23acce94a0 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/95a14fd1.4287588d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9518],{3905:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>b});var r=o(67294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function i(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,r)}return o}function a(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?i(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):i(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function l(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var p=r.createContext({}),s=function(e){var t=r.useContext(p),o=t;return e&&(o="function"==typeof e?e(t):a(a({},t),e)),o},u=function(e){var t=s(e.components);return r.createElement(p.Provider,{value:t},e.children)},c="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},g=r.forwardRef((function(e,t){var o=e.components,n=e.mdxType,i=e.originalType,p=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),c=s(o),g=n,b=c["".concat(p,".").concat(g)]||c[g]||d[g]||i;return o?r.createElement(b,a(a({ref:t},u),{},{components:o})):r.createElement(b,a({ref:t},u))}));function b(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=o.length,a=new Array(i);a[0]=g;var l={};for(var p in t)hasOwnProperty.call(t,p)&&(l[p]=t[p]);l.originalType=e,l[c]="string"==typeof e?e:n,a[1]=l;for(var s=2;s<i;s++)a[s]=o[s];return r.createElement.apply(null,a)}return r.createElement.apply(null,o)}g.displayName="MDXCreateElement"},52119:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>p,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>s});var r=o(87462),n=(o(67294),o(3905));const i={title:"Grouping records",tags:["Table operations","Group by","Grid View"],keywords:["NocoDB table group by","group By column","group By","table group by","grouping records","grouping","group by in table"]},a=void 0,l={unversionedId:"table-operations/group-by",id:"table-operations/group-by",title:"Grouping records",description:"Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.",source:"@site/docs/060.table-operations/050.group-by.md",sourceDirName:"060.table-operations",slug:"/table-operations/group-by",permalink:"/table-operations/group-by",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/050.group-by.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Group by",permalink:"/tags/group-by"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:50,frontMatter:{title:"Grouping records",tags:["Table operations","Group by","Grid View"],keywords:["NocoDB table group by","group By column","group By","table group by","grouping records","grouping","group by in table"]},sidebar:"tutorialSidebar",previous:{title:"Sorting records",permalink:"/table-operations/sort"},next:{title:"Row height",permalink:"/table-operations/row-height"}},p={},s=[{value:"Adding or Editing Groups",id:"adding-or-editing-groups",level:3},{value:"Deleting Groups",id:"deleting-groups",level:3},{value:"Related topics",id:"related-topics",level:3}],u={toc:s},c="wrapper";function d(e){let{components:t,...i}=e;return(0,n.kt)(c,(0,r.Z)({},u,i,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Grouping records in NocoDB allows for efficient categorization of data into specific ",(0,n.kt)("inlineCode",{parentName:"p"},"Groups")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"Subgroups.")," NocoDB supports three levels of record segregation, providing a powerful organizational tool."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Group By",src:o(16112).Z,width:"2306",height:"956"})),(0,n.kt)("h3",{id:"adding-or-editing-groups"},"Adding or Editing Groups"),(0,n.kt)("p",null,"To create or modify a grouping in NocoDB, follow these steps:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Group By")," in the toolbar."),(0,n.kt)("li",{parentName:"ol"},"Choose the field by which you want to group the records."),(0,n.kt)("li",{parentName:"ol"},"Optionally, you can sort the groups in ascending or descending order.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Group By",src:o(5182).Z,width:"2306",height:"956"})),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"You can add subgroups with up to three levels to further refine your categorization.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Group By",src:o(64220).Z,width:"2304",height:"1282"})),(0,n.kt)("h3",{id:"deleting-groups"},"Deleting Groups"),(0,n.kt)("p",null,"To remove a grouping in NocoDB, take these actions:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Group By")," in the toolbar."),(0,n.kt)("li",{parentName:"ol"},"Locate the bin icon to the right of the group you wish to delete and click on it.")),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"To disable ",(0,n.kt)("inlineCode",{parentName:"p"},"Group By")," and return to the standard spreadsheet grid view, you must remove all configured groups.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Group By",src:o(1837).Z,width:"2304",height:"1282"})),(0,n.kt)("h3",{id:"related-topics"},"Related topics"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"download"},"Download"))))}d.isMDXComponent=!0},16112:(e,t,o)=>{o.d(t,{Z:()=>r});const r=o.p+"assets/images/group-by-1-9fca54ae46eb7c74e888a44d49416e9c.png"},5182:(e,t,o)=>{o.d(t,{Z:()=>r});const r=o.p+"assets/images/group-by-create-903d7ed5fc17d47bcf49b5c84f201f80.png"},1837:(e,t,o)=>{o.d(t,{Z:()=>r});const r=o.p+"assets/images/group-by-delete-2bb963126a68838d8c7dc51e7cf139bb.png"},64220:(e,t,o)=>{o.d(t,{Z:()=>r});const r=o.p+"assets/images/group-by-nested-68c0f8159f38c76343ee6905c701fd5e.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/985d43d9.74530544.js b/packages/noco-docs/dist/assets/js/985d43d9.74530544.js new file mode 100644 index 0000000000..663331f4aa --- /dev/null +++ b/packages/noco-docs/dist/assets/js/985d43d9.74530544.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1196],{12322:e=>{e.exports=JSON.parse('{"label":"Tables","permalink":"/tags/tables","allTagsPath":"/tags","count":5,"items":[{"id":"tables/actions-on-table","title":"Actions on table","description":"Learn how to rename, duplicate, and delete a table in NocoDB.","permalink":"/tables/actions-on-table"},{"id":"tables/create-table","title":"Create empty table","description":"Learn how to create a table in NocoDB.","permalink":"/tables/create-table"},{"id":"tables/create-table-via-import","title":"Create table via import","description":"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.","permalink":"/tables/create-table-via-import"},{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"},{"id":"tables/table-overview","title":"Table overview","description":"Learn how to create, import, and manage tables in NocoDB.","permalink":"/tables/table-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/98de4c79.996b1d1f.js b/packages/noco-docs/dist/assets/js/98de4c79.996b1d1f.js new file mode 100644 index 0000000000..457dc831bb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/98de4c79.996b1d1f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9893],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>k});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var p=a.createContext({}),m=function(e){var t=a.useContext(p),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},d=function(e){var t=m(e.components);return a.createElement(p.Provider,{value:t},e.children)},u="mdxType",s={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,p=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=m(n),c=r,k=u["".concat(p,".").concat(c)]||u[c]||s[c]||l;return n?a.createElement(k,i(i({ref:t},d),{},{components:n})):a.createElement(k,i({ref:t},d))}));function k(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=c;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[u]="string"==typeof e?e:r,i[1]=o;for(var m=2;m<l;m++)i[m]=n[m];return a.createElement.apply(null,i)}return a.createElement.apply(null,n)}c.displayName="MDXCreateElement"},97481:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>p,contentTitle:()=>i,default:()=>s,frontMatter:()=>l,metadata:()=>o,toc:()=>m});var a=n(87462),r=(n(67294),n(3905));const l={title:"Numeric and Logical Operators",tags:["Fields","Field types","Formula"]},i=void 0,o={unversionedId:"fields/field-types/formula/operators",id:"fields/field-types/formula/operators",title:"Numeric and Logical Operators",description:"Numeric operators",source:"@site/docs/070.fields/040.field-types/060.formula/015.operators.md",sourceDirName:"070.fields/040.field-types/060.formula",slug:"/fields/field-types/formula/operators",permalink:"/fields/field-types/formula/operators",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/060.formula/015.operators.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Formula",permalink:"/tags/formula"}],version:"current",sidebarPosition:15,frontMatter:{title:"Numeric and Logical Operators",tags:["Fields","Field types","Formula"]},sidebar:"tutorialSidebar",previous:{title:"Formula",permalink:"/fields/field-types/formula/formula"},next:{title:"Numeric functions",permalink:"/fields/field-types/formula/numeric-functions"}},p={},m=[{value:"Numeric operators",id:"numeric-operators",level:3},{value:"Logical operators",id:"logical-operators",level:3},{value:"Related Articles",id:"related-articles",level:2}],d={toc:m},u="wrapper";function s(e){let{components:t,...n}=e;return(0,r.kt)(u,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h3",{id:"numeric-operators"},"Numeric operators"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Operator"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"+")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} + {Column2} + 2")),(0,r.kt)("td",{parentName:"tr",align:null},"Addition of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"-")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} - {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Subtraction of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"*")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} * {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Multiplication of numeric values")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"/")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} / {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Division of numeric values")))),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"To change the order of arithmetic operation, you can use round bracket parenthesis ().",(0,r.kt)("br",{parentName:"p"}),"\n","Example: ({Column1} + ({Column2} * {Column3}) / (3 - $Column4$ ))")),(0,r.kt)("h3",{id:"logical-operators"},"Logical operators"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Operator"),(0,r.kt)("th",{parentName:"tr",align:null},"Sample"),(0,r.kt)("th",{parentName:"tr",align:null},"Description"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"<")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} < {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Less than")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},">")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} > {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Greater than")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"<=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} <= {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Less than or equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},">=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} >= {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Greater than or equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"==")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} == {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Equal to")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"!=")),(0,r.kt)("td",{parentName:"tr",align:null},(0,r.kt)("inlineCode",{parentName:"td"},"{Column1} != {Column2}")),(0,r.kt)("td",{parentName:"tr",align:null},"Not equal to")))),(0,r.kt)("h2",{id:"related-articles"},"Related Articles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/numeric-functions"},"Numeric Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/string-functions"},"String Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/date-functions"},"Date Functions")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/formula/conditional-expressions"},"Conditional Expressions"))))}s.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9906c9d3.a8346d13.js b/packages/noco-docs/dist/assets/js/9906c9d3.a8346d13.js new file mode 100644 index 0000000000..b1208f7805 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9906c9d3.a8346d13.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7661],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>g});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function r(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?r(Object(a),!0).forEach((function(t){i(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function s(e,t){if(null==e)return{};var a,n,i=function(e,t){if(null==e)return{};var a,n,i={},r=Object.keys(e);for(n=0;n<r.length;n++)a=r[n],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n<r.length;n++)a=r[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var o=n.createContext({}),p=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},c=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},h=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,r=e.originalType,o=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),d=p(a),h=i,g=d["".concat(o,".").concat(h)]||d[h]||u[h]||r;return a?n.createElement(g,l(l({ref:t},c),{},{components:a})):n.createElement(g,l({ref:t},c))}));function g(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=a.length,l=new Array(r);l[0]=h;var s={};for(var o in t)hasOwnProperty.call(t,o)&&(s[o]=t[o]);s.originalType=e,s[d]="string"==typeof e?e:i,l[1]=s;for(var p=2;p<r;p++)l[p]=a[p];return n.createElement.apply(null,l)}return n.createElement.apply(null,a)}h.displayName="MDXCreateElement"},25300:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>l,default:()=>u,frontMatter:()=>r,metadata:()=>s,toc:()=>p});var n=a(87462),i=(a(67294),a(3905));const r={title:"Playwright E2E testing",description:"Overview to playwright based e2e tests",tags:["Engineering"]},l=void 0,s={unversionedId:"engineering/playwright",id:"engineering/playwright",title:"Playwright E2E testing",description:"Overview to playwright based e2e tests",source:"@site/docs/150.engineering/050.playwright.md",sourceDirName:"150.engineering",slug:"/engineering/playwright",permalink:"/engineering/playwright",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/150.engineering/050.playwright.md",tags:[{label:"Engineering",permalink:"/tags/engineering"}],version:"current",sidebarPosition:50,frontMatter:{title:"Playwright E2E testing",description:"Overview to playwright based e2e tests",tags:["Engineering"]},sidebar:"tutorialSidebar",previous:{title:"Writing unit tests",permalink:"/engineering/unit-testing"},next:{title:"Releases & builds",permalink:"/engineering/builds-and-releases"}},o={},p=[{value:"How to run tests",id:"how-to-run-tests",level:2},{value:"Run Test Server",id:"run-test-server",level:3},{value:"Running all tests",id:"running-all-tests",level:3},{value:"Running individual tests",id:"running-individual-tests",level:3},{value:"Concepts",id:"concepts",level:2},{value:"Independent tests",id:"independent-tests",level:3},{value:"What to test",id:"what-to-test",level:3},{value:"Playwright",id:"playwright",level:3},{value:"Page Objects",id:"page-objects",level:2},{value:"Writing a test",id:"writing-a-test",level:2},{value:"Create a test suite",id:"create-a-test-suite",level:3},{value:"Create a page object",id:"create-a-page-object",level:3},{value:"Writing an action method",id:"writing-an-action-method",level:3},{value:"Writing an assertion/verification method",id:"writing-an-assertionverification-method",level:3},{value:"Tips to avoid flakiness",id:"tips-to-avoid-flakiness",level:2},{value:"Accessing playwright report in the CI",id:"accessing-playwright-report-in-the-ci",level:2}],c={toc:p},d="wrapper";function u(e){let{components:t,...a}=e;return(0,i.kt)(d,(0,n.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"how-to-run-tests"},"How to run tests"),(0,i.kt)("p",null,"All the tests reside in ",(0,i.kt)("inlineCode",{parentName:"p"},"tests/playwright")," folder."),(0,i.kt)("p",null,"Make sure to install the dependencies (in the playwright folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm --filter=playwright install\npnpm exec playwright install --with-deps chromium\n")),(0,i.kt)("h3",{id:"run-test-server"},"Run Test Server"),(0,i.kt)("p",null,"Start the backend test server (in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb")," folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm run watch:run:playwright\n")),(0,i.kt)("p",null,"Start the frontend test server (in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nc-gui")," folder):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"NUXT_PAGE_TRANSITION_DISABLE=true pnpm run dev\n")),(0,i.kt)("h3",{id:"running-all-tests"},"Running all tests"),(0,i.kt)("p",null,"For selecting db type, rename ",(0,i.kt)("inlineCode",{parentName:"p"},".env.example")," to ",(0,i.kt)("inlineCode",{parentName:"p"},".env")," and set ",(0,i.kt)("inlineCode",{parentName:"p"},"E2E_DEV_DB_TYPE")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"sqlite"),"(default), ",(0,i.kt)("inlineCode",{parentName:"p"},"mysql")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"pg"),"."),(0,i.kt)("p",null,"headless mode(without opening browser):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm run test\n")),(0,i.kt)("p",null,"with browser:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm run test:debug\n")),(0,i.kt)("p",null,"For setting up mysql(sakila):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose -f ./tests/playwright/scripts/docker-compose-mysql-playwright.yml up -d\n")),(0,i.kt)("p",null,"For setting up postgres(sakila):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"docker-compose -f ./tests/playwright/scripts/docker-compose-playwright-pg.yml \n")),(0,i.kt)("h3",{id:"running-individual-tests"},"Running individual tests"),(0,i.kt)("p",null,"Add ",(0,i.kt)("inlineCode",{parentName:"p"},".only")," to the test you want to run:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"test.only('should login', async ({ page }) => {\n // ...\n})\n")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"pnpm run test\n")),(0,i.kt)("h2",{id:"concepts"},"Concepts"),(0,i.kt)("h3",{id:"independent-tests"},"Independent tests"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"All tests are independent of each other."),(0,i.kt)("li",{parentName:"ul"},"Each test starts with a fresh project with a fresh sakila database(option to not use sakila db is also there)."),(0,i.kt)("li",{parentName:"ul"},"Each test creates a new user(email as ",(0,i.kt)("inlineCode",{parentName:"li"},"user@nocodb.com"),") and logs in with that user to the dashboard.")),(0,i.kt)("p",null,"Caveats:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Some stuffs are shared i.e, users, plugins etc. So be catious while writing tests touching that. A fix for this is in the works."),(0,i.kt)("li",{parentName:"ul"},"In test, we prefix email and project with the test id, which will be deleted after the test is done.")),(0,i.kt)("h3",{id:"what-to-test"},"What to test"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"UI verification. This includes verifying the state of the UI element, i.e if the element is visible, if the element has a particular text etc."),(0,i.kt)("li",{parentName:"ul"},"Test should verify all user flow. A test has a default timeout of 60 seconds. If a test is taking more than 60 seconds, it is a sign that the test should be broken down into smaller tests."),(0,i.kt)("li",{parentName:"ul"},"Test should also verify all the side effects the feature(i.e. On adding a new field type, should verify field deletion as well) will have, and also error cases."),(0,i.kt)("li",{parentName:"ul"},"Test name should be descriptive. It should be easy to understand what the test is doing by just reading the test name.")),(0,i.kt)("h3",{id:"playwright"},"Playwright"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Playwright is a nodejs library for automating chromium, firefox and webkit."),(0,i.kt)("li",{parentName:"ul"},"For each test, a new browser context is created. This means that each test runs in a new incognito window."),(0,i.kt)("li",{parentName:"ul"},"For assertion always use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"li"},"@playwright/test")," library. This library provides a lot of useful assertions, which also has retry logic built in.")),(0,i.kt)("h2",{id:"page-objects"},"Page Objects"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Page objects are used to abstract over the components/page. This makes the tests more readable and maintainable."),(0,i.kt)("li",{parentName:"ul"},"All page objects are in ",(0,i.kt)("inlineCode",{parentName:"li"},"tests/playwright/pages")," folder."),(0,i.kt)("li",{parentName:"ul"},"All the test related code should be in page objects."),(0,i.kt)("li",{parentName:"ul"},"Methods should be as thin as possible and its better to have multiple methods than one big method, which improves reusability.")),(0,i.kt)("p",null,"The methods of a page object can be classified into 2 categories:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Actions: Performs an UI actions like click, type, select etc. Is also responsible for waiting for the element to be ready and the action to be performed. This included waiting for API calls to complete."),(0,i.kt)("li",{parentName:"ul"},"Assertions: Asserts the state of the UI element, i.e if the element is visible, if the element has a particular text etc. Use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"li"},"@playwright/test")," and if not use ",(0,i.kt)("inlineCode",{parentName:"li"},"expect.poll")," to wait for the assertion to pass.")),(0,i.kt)("h2",{id:"writing-a-test"},"Writing a test"),(0,i.kt)("p",null,"Let's write a test for testing filter functionality."),(0,i.kt)("p",null,"For simplicity, we will have ",(0,i.kt)("inlineCode",{parentName:"p"},"DashboardPage")," implemented, which will have all the methods related to dashboard page and also its child components like Grid, etc."),(0,i.kt)("h3",{id:"create-a-test-suite"},"Create a test suite"),(0,i.kt)("p",null,"Create a new file ",(0,i.kt)("inlineCode",{parentName:"p"},"filter.spec.ts")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"tests/playwright/tests")," folder and use ",(0,i.kt)("inlineCode",{parentName:"p"},"setup")," method to create a new project and user."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"import { test, expect } from '@playwright/test';\nimport setup, { NcContext } from '../setup';\n\ntest.describe('Filter', () => {\n let context: NcContext;\n\n test.beforeEach(async ({ page }) => {\n context = await setup({ page });\n })\n\n test('should filter', async ({ page }) => {\n // ...\n });\n});\n")),(0,i.kt)("h3",{id:"create-a-page-object"},"Create a page object"),(0,i.kt)("p",null,"Since filter is UI wise scoped to a ",(0,i.kt)("inlineCode",{parentName:"p"},"Toolbar")," , we will add filter page object to ",(0,i.kt)("inlineCode",{parentName:"p"},"ToolbarPage")," page object."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"export class ToolbarPage extends BasePage {\n readonly parent: GridPage | GalleryPage | FormPage | KanbanPage;\n readonly filter: ToolbarFilterPage;\n\n constructor(parent: GridPage | GalleryPage | FormPage | KanbanPage) {\n super(parent.rootPage);\n this.parent = parent;\n this.filter = new ToolbarFilterPage(this);\n }\n}\n")),(0,i.kt)("p",null,"We will create ",(0,i.kt)("inlineCode",{parentName:"p"},"ToolbarFilterPage")," page object, which will have all the methods related to filter."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"export class ToolbarFilterPage extends BasePage {\n readonly toolbar: ToolbarPage;\n\n constructor(toolbar: ToolbarPage) {\n super(toolbar.rootPage);\n this.toolbar = toolbar;\n }\n}\n")),(0,i.kt)("p",null,"Here ",(0,i.kt)("inlineCode",{parentName:"p"},"BasePage")," is an abstract class, which used to enforce structure for all page objects. Thus all page object ",(0,i.kt)("em",{parentName:"p"},"should")," inherit ",(0,i.kt)("inlineCode",{parentName:"p"},"BasePage"),"."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Helper methods like ",(0,i.kt)("inlineCode",{parentName:"li"},"waitForResponse")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"getClipboardText")," (this can be access on any page object, with ",(0,i.kt)("inlineCode",{parentName:"li"},"this.waitForResponse"),")"),(0,i.kt)("li",{parentName:"ul"},"Provides structure for page objects, enforces all Page objects to have ",(0,i.kt)("inlineCode",{parentName:"li"},"rootPage")," property, which is the page object created in the test setup."),(0,i.kt)("li",{parentName:"ul"},"Enforces all pages to have a ",(0,i.kt)("inlineCode",{parentName:"li"},"get")," method which will return the locator of the main container of that page, hence we can have focused dom selection, i.e.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"// This will only select the button inside the container of the concerned page\nawait this.get().querySelector('button').count();\n")),(0,i.kt)("h3",{id:"writing-an-action-method"},"Writing an action method"),(0,i.kt)("p",null,"This a method which will reset/clear all the filters. Since this is an action method, it will also wait for the ",(0,i.kt)("inlineCode",{parentName:"p"},"delete")," filter API to return. Ignoring this API call will cause flakiness in the test, down the line."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"async resetFilter() {\n await this.waitForResponse({\n uiAction: async () => await this.get().locator('.nc-filter-item-remove-btn').click(),\n httpMethodsToMatch: ['DELETE'],\n requestUrlPathToMatch: '/api/v1/db/meta/filters/',\n });\n}\n")),(0,i.kt)("h3",{id:"writing-an-assertionverification-method"},"Writing an assertion/verification method"),(0,i.kt)("p",null,"Here we use ",(0,i.kt)("inlineCode",{parentName:"p"},"expect")," from ",(0,i.kt)("inlineCode",{parentName:"p"},"@playwright/test")," library, which has retry logic built in."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-js"},"import { expect } from '@playwright/test';\n\nasync verifyFilter({ title }: { title: string }) {\n await expect(\n this.get().locator(`[data-testid=\"nc-fields-menu-${title}\"]`).locator('input[type=\"checkbox\"]')\n ).toBeChecked();\n}\n")),(0,i.kt)("h2",{id:"tips-to-avoid-flakiness"},"Tips to avoid flakiness"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"If an UI action, causes an API call or the UI state change, then wait for that API call to complete or the UI state to change."),(0,i.kt)("li",{parentName:"ul"},"What to wait out can be situation specific, but in general, is best to wait for the final state to be reached, i.e. in the case of creating filter, while it seems like waiting for the filter API to complete is enough, but after its return the table rows are reloaded and the UI state changes, so its better to wait for the table rows to be reloaded.")),(0,i.kt)("h2",{id:"accessing-playwright-report-in-the-ci"},"Accessing playwright report in the CI"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Open ",(0,i.kt)("inlineCode",{parentName:"li"},"Summary")," tab in the CI workflow in github actions."),(0,i.kt)("li",{parentName:"ul"},"Scroll down to ",(0,i.kt)("inlineCode",{parentName:"li"},"Artifacts")," section."),(0,i.kt)("li",{parentName:"ul"},"Access reports which suffixed with the db type and shard number(corresponding to the CI workerflow name). i.e ",(0,i.kt)("inlineCode",{parentName:"li"},"playwright-report-mysql-2")," is for ",(0,i.kt)("inlineCode",{parentName:"li"},"playwright-mysql-2")," workflow."),(0,i.kt)("li",{parentName:"ul"},"Download it and run ",(0,i.kt)("inlineCode",{parentName:"li"},"pnpm install -D @playwright/test && npx playwright show-report ./")," inside the downloaded folder.")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9995b2be.987e5cba.js b/packages/noco-docs/dist/assets/js/9995b2be.987e5cba.js new file mode 100644 index 0000000000..3e23b1a245 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9995b2be.987e5cba.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9850],{63067:e=>{e.exports=JSON.parse('{"label":"Table","permalink":"/tags/table","allTagsPath":"/tags","count":1,"items":[{"id":"table-details/table-details-overview","title":"Table details overview","description":"Table details overview","permalink":"/table-details/table-details-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/99f674e5.80ca11cd.js b/packages/noco-docs/dist/assets/js/99f674e5.80ca11cd.js new file mode 100644 index 0000000000..b7ba34c2e1 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/99f674e5.80ca11cd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4307],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>u});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?l(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},l=Object.keys(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)n=l[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var d=a.createContext({}),c=function(e){var t=a.useContext(d),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=c(e.components);return a.createElement(d.Provider,{value:t},e.children)},s="mdxType",k={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,l=e.originalType,d=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),s=c(n),m=r,u=s["".concat(d,".").concat(m)]||s[m]||k[m]||l;return n?a.createElement(u,i(i({ref:t},p),{},{components:n})):a.createElement(u,i({ref:t},p))}));function u(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=n.length,i=new Array(l);i[0]=m;var o={};for(var d in t)hasOwnProperty.call(t,d)&&(o[d]=t[d]);o.originalType=e,o[s]="string"==typeof e?e:r,i[1]=o;for(var c=2;c<l;c++)i[c]=n[c];return a.createElement.apply(null,i)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},17813:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>k,frontMatter:()=>l,metadata:()=>o,toc:()=>c});var a=n(87462),r=(n(67294),n(3905));const l={title:"Actions on record",tags:["Records","Delete","Edit","Duplicate","Expand","Shortcuts"],keywords:["NocoDB delete record","delete record","delete row","delete rows"]},i=void 0,o={unversionedId:"records/actions-on-record",id:"records/actions-on-record",title:"Actions on record",description:"Keyboard navigation within Grid view",source:"@site/docs/080.records/070.actions-on-record.md",sourceDirName:"080.records",slug:"/records/actions-on-record",permalink:"/records/actions-on-record",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/070.actions-on-record.md",tags:[{label:"Records",permalink:"/tags/records"},{label:"Delete",permalink:"/tags/delete"},{label:"Edit",permalink:"/tags/edit"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Expand",permalink:"/tags/expand"},{label:"Shortcuts",permalink:"/tags/shortcuts"}],version:"current",sidebarPosition:70,frontMatter:{title:"Actions on record",tags:["Records","Delete","Edit","Duplicate","Expand","Shortcuts"],keywords:["NocoDB delete record","delete record","delete row","delete rows"]},sidebar:"tutorialSidebar",previous:{title:"Expanded record",permalink:"/records/expand-record"},next:{title:"View overview",permalink:"/views/views-overview"}},d={},c=[{value:"Keyboard navigation within Grid view",id:"keyboard-navigation-within-grid-view",level:2},{value:"Keyboard shortcuts for cell navigation",id:"keyboard-shortcuts-for-cell-navigation",level:3},{value:"Update Record",id:"update-record",level:3},{value:"Bulk Update Records",id:"bulk-update-records",level:3},{value:"Delete Record (Single)",id:"delete-record-single",level:3},{value:"Delete Record (Bulk)",id:"delete-record-bulk",level:3}],p={toc:c},s="wrapper";function k(e){let{components:t,...l}=e;return(0,r.kt)(s,(0,a.Z)({},p,l,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"keyboard-navigation-within-grid-view"},"Keyboard navigation within Grid view"),(0,r.kt)("p",null,"A selected cell can be in one of the following states:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Select")," state : A single click on the cell selects the cell. When in this state, arrow keys can be used to navigate to adjacent cells."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Edit")," state : A double click on the cell puts the cell in edit state. Cursor can be moved within the cell using arrow keys.")),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},"Double-click on a cell to put it in edit state directly."),(0,r.kt)("li",{parentName:"ul"},"From Select state, press ",(0,r.kt)("inlineCode",{parentName:"li"},"Enter")," key to enter edit state."),(0,r.kt)("li",{parentName:"ul"},"Press ",(0,r.kt)("inlineCode",{parentName:"li"},"Esc")," key to exit edit state."),(0,r.kt)("li",{parentName:"ul"},"From Edit state, press ",(0,r.kt)("inlineCode",{parentName:"li"},"Enter")," key to save the changes."))),(0,r.kt)("p",null,"Edit state for some cells will be a picker. For example, a cell with ",(0,r.kt)("inlineCode",{parentName:"p"},"Single Select")," field type will have a picker with options to choose from. In such cases, arrow keys can be used to navigate between options."),(0,r.kt)("h3",{id:"keyboard-shortcuts-for-cell-navigation"},"Keyboard shortcuts for cell navigation"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"right"},"Key"),(0,r.kt)("th",{parentName:"tr",align:"left"},"Behaviour"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to first record in this field (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Jump to last record in this field (in same page)")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"C")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Copy cell contents to clipboard")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2318")," ",(0,r.kt)("inlineCode",{parentName:"td"},"V")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Paste clipboard contents to cell")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Enter")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Switch cell in focus to EDIT mode; opens modal/picker if cell is associated with one")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Esc")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Exit cell EDIT mode")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Delete")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Clear cell")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Space")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Expand current record")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"\u2190")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2192")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2191")," ",(0,r.kt)("inlineCode",{parentName:"td"},"\u2193")),(0,r.kt)("td",{parentName:"tr",align:"left"},"General cell navigation : left, right, top, bottom")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"right"},(0,r.kt)("inlineCode",{parentName:"td"},"Tab")),(0,r.kt)("td",{parentName:"tr",align:"left"},"Move to next cell horizontally; if on last cell, move to beginning of next record")))),(0,r.kt)("h3",{id:"update-record"},"Update Record"),(0,r.kt)("p",null,"You can start editing by any of the following methods"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Double-click on cell to edit"),(0,r.kt)("li",{parentName:"ul"},"Click on cell and start typing (this way it will clear the previous content)"),(0,r.kt)("li",{parentName:"ul"},"Click on cell and press enter to start editing")),(0,r.kt)("p",null,"And it will automatically save on blur event or if inactive."),(0,r.kt)("h3",{id:"bulk-update-records"},"Bulk Update Records"),(0,r.kt)("p",null,"You can bulk update records by "),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Selecting multiple records that you wish to update together and then "),(0,r.kt)("li",{parentName:"ol"},"Right-click on the index field area (first column on the grid view) and then select ",(0,r.kt)("inlineCode",{parentName:"li"},"Bulk Update records")," option from the context menu. This will open ",(0,r.kt)("inlineCode",{parentName:"li"},"Bulk update")," modal.")),(0,r.kt)("p",null,"On the bulk update modal,\n3. ",(0,r.kt)("inlineCode",{parentName:"p"},"Fields area")," : Select the fields that you want to update.\n4. ",(0,r.kt)("inlineCode",{parentName:"p"},"Selected fields area")," : Enter the new value for the selected fields.\n5. Click on the ",(0,r.kt)("inlineCode",{parentName:"p"},"Bulk Update all")," button\n6. A confirmation dialog will be displayed. Click on ",(0,r.kt)("inlineCode",{parentName:"p"},"Confirm")," to update the records."),(0,r.kt)("admonition",{type:"danger"},(0,r.kt)("p",{parentName:"admonition"},"This operation cannot be undone.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Bulk Update",src:n(12255).Z,width:"2876",height:"1108"})),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Bulk Update",src:n(63731).Z,width:"2878",height:"1024"})),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"Bulk Update",src:n(12377).Z,width:"2876",height:"954"})),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"You can drag drop required fields from the ",(0,r.kt)("inlineCode",{parentName:"p"},"Fields area")," to the ",(0,r.kt)("inlineCode",{parentName:"p"},"Selected fields area")," & vice versa.",(0,r.kt)("br",{parentName:"p"}),"\n","You can update multiple fields at a time.")),(0,r.kt)("h3",{id:"delete-record-single"},"Delete Record (Single)"),(0,r.kt)("p",null,"Right-click on record and then from the cell context menu, select ",(0,r.kt)("inlineCode",{parentName:"p"},"Delete Row")," option."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"delete row -1",src:n(77977).Z,width:"2308",height:"940"})),(0,r.kt)("h3",{id:"delete-record-bulk"},"Delete Record (Bulk)"),(0,r.kt)("p",null,"Select multiple records by using the checkbox in first column and then ",(0,r.kt)("inlineCode",{parentName:"p"},"Delete Selected Rows")," options from the right click context menu."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"delete row 2",src:n(10463).Z,width:"2306",height:"858"})))}k.isMDXComponent=!0},12255:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/bulk-update-1-abf0bea8ffcee3689a6b4c7bc912a92b.png"},63731:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/bulk-update-2-8ad8314489b9cb76d57cdddddcf2ab85.png"},12377:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/bulk-update-3-e8c66d72a7fdbe1247482ba2021aa0f5.png"},10463:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/delete-row-bulk-70240cbb8e8a5e84e368e9ff11b6e5c0.png"},77977:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/delete-row-2ef2b7c113b757dabf1542106e79f2db.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9a52cc21.55fdaf51.js b/packages/noco-docs/dist/assets/js/9a52cc21.55fdaf51.js new file mode 100644 index 0000000000..88bb815314 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9a52cc21.55fdaf51.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3062],{10804:e=>{e.exports=JSON.parse('{"label":"Numerical types","permalink":"/tags/numerical-types","allTagsPath":"/tags","count":4,"items":[{"id":"fields/field-types/numerical/currency","title":"Currency","description":"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.","permalink":"/fields/field-types/numerical/currency"},{"id":"fields/field-types/numerical/decimal","title":"Decimal","description":"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.","permalink":"/fields/field-types/numerical/decimal"},{"id":"fields/field-types/numerical/number","title":"Number","description":"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.","permalink":"/fields/field-types/numerical/number"},{"id":"fields/field-types/numerical/percent","title":"Percent","description":"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.","permalink":"/fields/field-types/numerical/percent"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9a7e4ef7.aab35289.js b/packages/noco-docs/dist/assets/js/9a7e4ef7.aab35289.js new file mode 100644 index 0000000000..cd7582c7c9 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9a7e4ef7.aab35289.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1961],{20467:e=>{e.exports=JSON.parse('{"label":"Bases","permalink":"/tags/bases","allTagsPath":"/tags","count":8,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"},{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/collaboration/base-collaboration"},{"id":"bases/base-overview","title":"Base overview","description":"This article explains the concept of bases in NocoDB.","permalink":"/bases/base-overview"},{"id":"bases/create-base","title":"Create base","description":"Learn how to create a base in NocoDB.","permalink":"/bases/create-base"},{"id":"bases/import-base-from-airtable","title":"Import Airtable to NocoDB","description":"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes","permalink":"/bases/import-base-from-airtable"},{"id":"bases/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/bases/share-base"},{"id":"collaboration/share-base","title":"Share base","description":"Procedures to share a base & generating embedded iframe","permalink":"/collaboration/share-base"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9aad2067.61e14272.js b/packages/noco-docs/dist/assets/js/9aad2067.61e14272.js new file mode 100644 index 0000000000..88c49f41e9 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9aad2067.61e14272.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4769],{41536:e=>{e.exports=JSON.parse('{"label":"Phone number","permalink":"/tags/phone-number","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/text-based/phonenumber","title":"Phone Number","description":"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.","permalink":"/fields/field-types/text-based/phonenumber"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9c78149d.29a2e4eb.js b/packages/noco-docs/dist/assets/js/9c78149d.29a2e4eb.js new file mode 100644 index 0000000000..14981ffc3d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9c78149d.29a2e4eb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8381],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>g});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var u=r.createContext({}),c=function(e){var t=r.useContext(u),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(u.Provider,{value:t},e.children)},l="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,u=e.parentName,p=s(e,["components","mdxType","originalType","parentName"]),l=c(n),m=o,g=l["".concat(u,".").concat(m)]||l[m]||d[m]||i;return n?r.createElement(g,a(a({ref:t},p),{},{components:n})):r.createElement(g,a({ref:t},p))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,a=new Array(i);a[0]=m;var s={};for(var u in t)hasOwnProperty.call(t,u)&&(s[u]=t[u]);s.originalType=e,s[l]="string"==typeof e?e:o,a[1]=s;for(var c=2;c<i;c++)a[c]=n[c];return r.createElement.apply(null,a)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},51959:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>a,default:()=>d,frontMatter:()=>i,metadata:()=>s,toc:()=>c});var r=n(87462),o=(n(67294),n(3905));const i={title:"Audit",description:"NocoDB provides all the user operation logs under Audit log"},a=void 0,s={unversionedId:"setup-and-usages/audit",id:"version-0.109.7/setup-and-usages/audit",title:"Audit",description:"NocoDB provides all the user operation logs under Audit log",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/audit",permalink:"/0.109.7/setup-and-usages/audit",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md",tags:[],version:"0.109.7",sidebarPosition:250,frontMatter:{title:"Audit",description:"NocoDB provides all the user operation logs under Audit log"},sidebar:"tutorialSidebar",previous:{title:"Data Sources",permalink:"/0.109.7/setup-and-usages/meta-management"},next:{title:"Project settings",permalink:"/0.109.7/setup-and-usages/project-settings"}},u={},c=[{value:"Overview",id:"overview",level:2}],p={toc:c},l="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(l,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"overview"},"Overview"),(0,o.kt)("p",null,"We are keeping all the user operation logs under Audit. To access it, click the down arrow button next to Project Name on the top left side, then select ",(0,o.kt)("inlineCode",{parentName:"p"},"Team & Settings"),"."),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"We can disable audit logs by setting ",(0,o.kt)("inlineCode",{parentName:"p"},"NC_DISABLE_AUDIT")," to ",(0,o.kt)("inlineCode",{parentName:"p"},"true"),".")),(0,o.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,o.kt)("p",null,"Then, under SETTINGS, click ",(0,o.kt)("inlineCode",{parentName:"p"},"Audit"),"."),(0,o.kt)("img",{width:"1399",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194796474-417395db-08d5-45e5-8be4-c30ff0027e45.png"}))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9d4ed5ff.35c99d38.js b/packages/noco-docs/dist/assets/js/9d4ed5ff.35c99d38.js new file mode 100644 index 0000000000..daa7bb2e0d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9d4ed5ff.35c99d38.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4333],{3905:(e,a,t)=>{t.d(a,{Zo:()=>p,kt:()=>y});var i=t(67294);function l(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function n(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);a&&(i=i.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,i)}return t}function s(e){for(var a=1;a<arguments.length;a++){var t=null!=arguments[a]?arguments[a]:{};a%2?n(Object(t),!0).forEach((function(a){l(e,a,t[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):n(Object(t)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))}))}return e}function r(e,a){if(null==e)return{};var t,i,l=function(e,a){if(null==e)return{};var t,i,l={},n=Object.keys(e);for(i=0;i<n.length;i++)t=n[i],a.indexOf(t)>=0||(l[t]=e[t]);return l}(e,a);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(i=0;i<n.length;i++)t=n[i],a.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(l[t]=e[t])}return l}var o=i.createContext({}),u=function(e){var a=i.useContext(o),t=a;return e&&(t="function"==typeof e?e(a):s(s({},a),e)),t},p=function(e){var a=u(e.components);return i.createElement(o.Provider,{value:a},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var a=e.children;return i.createElement(i.Fragment,{},a)}},h=i.forwardRef((function(e,a){var t=e.components,l=e.mdxType,n=e.originalType,o=e.parentName,p=r(e,["components","mdxType","originalType","parentName"]),d=u(t),h=l,y=d["".concat(o,".").concat(h)]||d[h]||c[h]||n;return t?i.createElement(y,s(s({ref:a},p),{},{components:t})):i.createElement(y,s({ref:a},p))}));function y(e,a){var t=arguments,l=a&&a.mdxType;if("string"==typeof e||l){var n=t.length,s=new Array(n);s[0]=h;var r={};for(var o in a)hasOwnProperty.call(a,o)&&(r[o]=a[o]);r.originalType=e,r[d]="string"==typeof e?e:l,s[1]=r;for(var u=2;u<n;u++)s[u]=t[u];return i.createElement.apply(null,s)}return i.createElement.apply(null,t)}h.displayName="MDXCreateElement"},84673:(e,a,t)=>{t.r(a),t.d(a,{assets:()=>o,contentTitle:()=>s,default:()=>c,frontMatter:()=>n,metadata:()=>r,toc:()=>u});var i=t(87462),l=(t(67294),t(3905));const n={title:"Display Value",description:"Understanding Display Value in NocoDB!"},s=void 0,r={unversionedId:"setup-and-usages/display-value",id:"version-0.109.7/setup-and-usages/display-value",title:"Display Value",description:"Understanding Display Value in NocoDB!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/display-value",permalink:"/0.109.7/setup-and-usages/display-value",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md",tags:[],version:"0.109.7",sidebarPosition:110,frontMatter:{title:"Display Value",description:"Understanding Display Value in NocoDB!"},sidebar:"tutorialSidebar",previous:{title:"Primary Key",permalink:"/0.109.7/setup-and-usages/primary-key"},next:{title:"Sync Schema",permalink:"/0.109.7/setup-and-usages/sync-schema"}},o={},u=[{value:"What is a Display Value ?",id:"what-is-a-display-value-",level:2},{value:"What is the use of Display Value ?",id:"what-is-the-use-of-display-value-",level:2},{value:"Example : Display Value highlighted in Actor table",id:"example--display-value-highlighted-in-actor-table",level:4},{value:"Example : Display Value highlighted in Film table",id:"example--display-value-highlighted-in-film-table",level:4},{value:"Example : Display Value associated when LinkToAnotherRecord is created",id:"example--display-value-associated-when-linktoanotherrecord-is-created",level:4},{value:"How to set Display Value ?",id:"how-to-set-display-value-",level:2},{value:"How is Display Value identfied for existing database tables ?",id:"how-is-display-value-identfied-for-existing-database-tables-",level:2},{value:"Can I change the Display Value to another column within tables ?",id:"can-i-change-the-display-value-to-another-column-within-tables-",level:2}],p={toc:u},d="wrapper";function c(e){let{components:a,...t}=e;return(0,l.kt)(d,(0,i.Z)({},p,t,{components:a,mdxType:"MDXLayout"}),(0,l.kt)("h2",{id:"what-is-a-display-value-"},"What is a Display Value ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Display Value as the name stands is the primary or main value within a row of a table that you generally associate that row with."),(0,l.kt)("li",{parentName:"ul"},"It should be usually associated with a column which is uniquely identifiable. However, this uniqueness is not enforced at the database level."),(0,l.kt)("li",{parentName:"ul"},"Before v0.105.0, Display Value was known as Primary Value.")),(0,l.kt)("h2",{id:"what-is-the-use-of-display-value-"},"What is the use of Display Value ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Within a spreadsheet, Display Value are always highlighted so that it is easier to recognise what row we are in."),(0,l.kt)("li",{parentName:"ul"},"And when LinkToAnotherRecord is created between two tables - it is the Display Value that appears in LinkToAnotheRecord column. ")),(0,l.kt)("h4",{id:"example--display-value-highlighted-in-actor-table"},"Example : Display Value highlighted in Actor table"),(0,l.kt)("img",{width:"646",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189114321-58ebaa16-20e2-4615-abda-39417a5df5bf.png"}),(0,l.kt)("h4",{id:"example--display-value-highlighted-in-film-table"},"Example : Display Value highlighted in Film table"),(0,l.kt)("img",{width:"643",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189114462-a7fef0e2-f9ac-4943-98d5-fee9f60a4ab5.png"}),(0,l.kt)("h4",{id:"example--display-value-associated-when-linktoanotherrecord-is-created"},"Example : Display Value associated when LinkToAnotherRecord is created"),(0,l.kt)("img",{width:"311",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189114548-193acc4d-f714-4204-a560-97668db7884c.png"}),(0,l.kt)("h2",{id:"how-to-set-display-value-"},"How to set Display Value ?"),(0,l.kt)("p",null,"Click down arrow in the target column. Click ",(0,l.kt)("inlineCode",{parentName:"p"},"Set as Display Value"),". "),(0,l.kt)("p",null,(0,l.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219339727-dee5fdea-6db7-4a06-9e48-df7113cc63b1.png",alt:"image"})),(0,l.kt)("h2",{id:"how-is-display-value-identfied-for-existing-database-tables-"},"How is Display Value identfied for existing database tables ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"It is usually the first column after the primary key which is not a number. "),(0,l.kt)("li",{parentName:"ul"},"If there is no column which is not a number then the column adjacent to primary key is chosen. ")),(0,l.kt)("h2",{id:"can-i-change-the-display-value-to-another-column-within-tables-"},"Can I change the Display Value to another column within tables ?"),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},"Yes, you can use the same way mentioned above to set Display Value.")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9db0d30f.674a8590.js b/packages/noco-docs/dist/assets/js/9db0d30f.674a8590.js new file mode 100644 index 0000000000..bc0b2c3b8c --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9db0d30f.674a8590.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6090],{54041:o=>{o.exports=JSON.parse('{"label":"Webhook","permalink":"/tags/webhook","allTagsPath":"/tags","count":3,"items":[{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","permalink":"/automation/webhook/actions-on-webhook"},{"id":"automation/webhook/create-webhook","title":"Create webhook","description":"Learn how to create a webhook in NocoDB.","permalink":"/automation/webhook/create-webhook"},{"id":"automation/webhook/webhook-overview","title":"Webhook overview","description":"You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.","permalink":"/automation/webhook/webhook-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9db7fbd6.2ee11895.js b/packages/noco-docs/dist/assets/js/9db7fbd6.2ee11895.js new file mode 100644 index 0000000000..28c22ae877 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9db7fbd6.2ee11895.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[481],{93717:t=>{t.exports=JSON.parse('{"label":"Import","permalink":"/tags/import","allTagsPath":"/tags","count":3,"items":[{"id":"tables/create-table-via-import","title":"Create table via import","description":"Learn how to create a table in NocoDB via import from CSV, Excel or JSON.","permalink":"/tables/create-table-via-import"},{"id":"bases/import-base-from-airtable","title":"Import Airtable to NocoDB","description":"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes","permalink":"/bases/import-base-from-airtable"},{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9dfd9b1b.ab5611b0.js b/packages/noco-docs/dist/assets/js/9dfd9b1b.ab5611b0.js new file mode 100644 index 0000000000..c16b96b221 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9dfd9b1b.ab5611b0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9279],{3905:(e,r,t)=>{t.d(r,{Zo:()=>l,kt:()=>v});var o=t(67294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?a(Object(t),!0).forEach((function(r){n(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function c(e,r){if(null==e)return{};var t,o,n=function(e,r){if(null==e)return{};var t,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)t=a[o],r.indexOf(t)>=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)t=a[o],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var s=o.createContext({}),d=function(e){var r=o.useContext(s),t=r;return e&&(t="function"==typeof e?e(r):i(i({},r),e)),t},l=function(e){var r=d(e.components);return o.createElement(s.Provider,{value:r},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},f=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,l=c(e,["components","mdxType","originalType","parentName"]),p=d(t),f=n,v=p["".concat(s,".").concat(f)]||p[f]||u[f]||a;return t?o.createElement(v,i(i({ref:r},l),{},{components:t})):o.createElement(v,i({ref:r},l))}));function v(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var a=t.length,i=new Array(a);i[0]=f;var c={};for(var s in r)hasOwnProperty.call(r,s)&&(c[s]=r[s]);c.originalType=e,c[p]="string"==typeof e?e:n,i[1]=c;for(var d=2;d<a;d++)i[d]=t[d];return o.createElement.apply(null,i)}return o.createElement.apply(null,t)}f.displayName="MDXCreateElement"},28507:(e,r,t)=>{t.r(r),t.d(r,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>d});var o=t(87462),n=(t(67294),t(3905));const a={title:"Records overview",description:"Learn how to create, import, and manage records in NocoDB.",tags:["Records","Overview"],keywords:["NocoDB record","record overview","record administration","record organization"]},i=void 0,c={unversionedId:"records/records-overview",id:"records/records-overview",title:"Records overview",description:"Learn how to create, import, and manage records in NocoDB.",source:"@site/docs/080.records/010.records-overview.md",sourceDirName:"080.records",slug:"/records/records-overview",permalink:"/records/records-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/080.records/010.records-overview.md",tags:[{label:"Records",permalink:"/tags/records"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Records overview",description:"Learn how to create, import, and manage records in NocoDB.",tags:["Records","Overview"],keywords:["NocoDB record","record overview","record administration","record organization"]},sidebar:"tutorialSidebar",previous:{title:"Actions on field",permalink:"/fields/actions-on-field"},next:{title:"Create record",permalink:"/records/create-record"}},s={},d=[],l={toc:d},p="wrapper";function u(e){let{components:r,...t}=e;return(0,n.kt)(p,(0,o.Z)({},l,t,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Records in NocoDB are fundamental components within a database, serving as individual entries or data points within a table. Each default table in NocoDB is meticulously organized into a structured grid of records, fields (columns), and cells. These records constitute the backbone of data storage and retrieval within NocoDB, encapsulating a diverse range of information types, including text, numerical values, dates, file attachments, and even hyperlinks to other records, either within the same table or across different tables. This versatile approach allows users to create highly customizable databases tailored to their specific data management needs, all centered around the concept of records."),(0,n.kt)("p",null,"In essence, a record can be envisaged as a horizontal collection of data within a NocoDB table, each record representing a distinct piece of information. These records play a pivotal role in organizing, categorizing, and presenting data in a comprehensible and efficient manner, offering users a structured and organized platform for data management. "),(0,n.kt)("p",null,"In this section, we'll explore the various aspects of records in NocoDB, equipping you with the knowledge to effectively manage your own data."))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9e1a113d.f5eca232.js b/packages/noco-docs/dist/assets/js/9e1a113d.f5eca232.js new file mode 100644 index 0000000000..45198322bd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9e1a113d.f5eca232.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6999],{45182:e=>{e.exports=JSON.parse('{"label":"Display value","permalink":"/tags/display-value","allTagsPath":"/tags","count":2,"items":[{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"fields/display-value","title":"Display value","description":"Understanding Display Value in NocoDB!","permalink":"/fields/display-value"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/9e7567e1.5a89169d.js b/packages/noco-docs/dist/assets/js/9e7567e1.5a89169d.js new file mode 100644 index 0000000000..9e5e8f06d6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/9e7567e1.5a89169d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7823],{27737:e=>{e.exports=JSON.parse('{"label":"Rollup","permalink":"/tags/rollup","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/links-based/rollup","title":"Rollup","description":"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.","permalink":"/fields/field-types/links-based/rollup"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a15cb612.c9dd5109.js b/packages/noco-docs/dist/assets/js/a15cb612.c9dd5109.js new file mode 100644 index 0000000000..471d4f0314 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a15cb612.c9dd5109.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9042],{42822:o=>{o.exports=JSON.parse('{"label":"Disable","permalink":"/tags/disable","allTagsPath":"/tags","count":1,"items":[{"id":"automation/webhook/actions-on-webhook","title":"Actions on webhook","description":"Enable/Disable Webhook","permalink":"/automation/webhook/actions-on-webhook"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a18f2535.b5d0af31.js b/packages/noco-docs/dist/assets/js/a18f2535.b5d0af31.js new file mode 100644 index 0000000000..807036f577 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a18f2535.b5d0af31.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6928],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>u});var o=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,o)}return a}function n(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function s(e,t){if(null==e)return{};var a,o,r=function(e,t){if(null==e)return{};var a,o,r={},i=Object.keys(e);for(o=0;o<i.length;o++)a=i[o],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)a=i[o],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var l=o.createContext({}),d=function(e){var t=o.useContext(l),a=t;return e&&(a="function"==typeof e?e(t):n(n({},t),e)),a},c=function(e){var t=d(e.components);return o.createElement(l.Provider,{value:t},e.children)},p="mdxType",w={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},h=o.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=d(a),h=r,u=p["".concat(l,".").concat(h)]||p[h]||w[h]||i;return a?o.createElement(u,n(n({ref:t},c),{},{components:a})):o.createElement(u,n({ref:t},c))}));function u(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,n=new Array(i);n[0]=h;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,n[1]=s;for(var d=2;d<i;d++)n[d]=a[d];return o.createElement.apply(null,n)}return o.createElement.apply(null,a)}h.displayName="MDXCreateElement"},61492:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>l,contentTitle:()=>n,default:()=>w,frontMatter:()=>i,metadata:()=>s,toc:()=>d});var o=a(87462),r=(a(67294),a(3905));const i={title:"Share view",description:"Procedures to share a view",tags:["Views","Share","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","share view","share","share view with password protection","share view with download options"]},n=void 0,s={unversionedId:"collaboration/share-view",id:"collaboration/share-view",title:"Share view",description:"Procedures to share a view",source:"@site/docs/120.collaboration/040.share-view.md",sourceDirName:"120.collaboration",slug:"/collaboration/share-view",permalink:"/collaboration/share-view",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/040.share-view.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Share",permalink:"/tags/share"},{label:"Grid View",permalink:"/tags/grid-view"},{label:"Form View",permalink:"/tags/form-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Gallery View",permalink:"/tags/gallery-view"}],version:"current",sidebarPosition:40,frontMatter:{title:"Share view",description:"Procedures to share a view",tags:["Views","Share","Grid View","Form View","Kanban View","Gallery View"],keywords:["NocoDB view","share view","share","share view with password protection","share view with download options"]},sidebar:"tutorialSidebar",previous:{title:"Share base",permalink:"/collaboration/share-base"},next:{title:"In Open Source",permalink:"/collaboration/oss-specific-details"}},l={},d=[{value:"Generate Share View",id:"generate-share-view",level:2},{value:"Share view options",id:"share-view-options",level:3},{value:"Password protection",id:"password-protection",level:4},{value:"Download options",id:"download-options",level:4},{value:"Share Form View Options",id:"share-form-view-options",level:3},{value:"Access Share View",id:"access-share-view",level:2}],c={toc:d},p="wrapper";function w(e){let{components:t,...i}=e;return(0,r.kt)(p,(0,o.Z)({},c,i,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"generate-share-view"},"Generate Share View"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Share")," button on the top right of the toolbar"),(0,r.kt)("li",{parentName:"ol"},"Toggle ",(0,r.kt)("inlineCode",{parentName:"li"},"Enable public viewing")," to create shared view link"),(0,r.kt)("li",{parentName:"ol"},"Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Copy")," button to copy the link to clipboard")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"share button",src:a(25918).Z,width:"2894",height:"864"})),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"shared view",src:a(67548).Z,width:"2876",height:"1800"})),(0,r.kt)("h3",{id:"share-view-options"},"Share view options"),(0,r.kt)("h4",{id:"password-protection"},"Password protection"),(0,r.kt)("p",null,"You can enable ",(0,r.kt)("inlineCode",{parentName:"p"},"Restrict access with a password")," if you want a password-protected view"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"password protection",src:a(430).Z,width:"2876",height:"1800"})),(0,r.kt)("h4",{id:"download-options"},"Download options"),(0,r.kt)("p",null,"You can toggle ",(0,r.kt)("inlineCode",{parentName:"p"},"Allow Download")," button to enable or disable download CSV/XLSX options in the shared view link"),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"download options",src:a(12649).Z,width:"2876",height:"1800"})),(0,r.kt)("h3",{id:"share-form-view-options"},"Share Form View Options"),(0,r.kt)("p",null,"Form view has additional customizations for shared view. You can enable/disable the following options for shared form view:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Survey mode"),": This option when enabled, will display the form in survey mode."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"RTL Orientation"),": This option when enabled, will display the form in RTL orientation."),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("inlineCode",{parentName:"li"},"Themes"),": You can select a theme for the form from the dropdown.\n",(0,r.kt)("img",{alt:"form view options",src:a(63074).Z,width:"2876",height:"1800"}))),(0,r.kt)("h2",{id:"access-share-view"},"Access Share View"),(0,r.kt)("p",null,"To access the shared view, please follow the steps below:\nClick on the ",(0,r.kt)("inlineCode",{parentName:"p"},"Shared View URL"),". If the URL is password-protected, you will be prompted to enter the password to unlock it. Please input the required password to proceed."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"password modal",src:a(66239).Z,width:"1328",height:"846"})),(0,r.kt)("p",null,"Once the password is successfully entered and authenticated, you will gain access to the shared view.\nIn the event that the URL is not password-protected, you will be directed to the shared view directly, without the need for a password."),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"share-view",src:a(83792).Z,width:"2880",height:"1800"})),(0,r.kt)("p",null,"Users with the shared view link can only view the data and cannot make any changes to the view or its content. Records and fields in the shared view will be updated in real-time as changes are made to the original view. Users accessing shared view can apply filters and sort records as per their requirements."),(0,r.kt)("admonition",{type:"info"},(0,r.kt)("p",{parentName:"admonition"},"Note that, filters & sorts applied to shared view will not be persisted. These filters & sorts will be reset when the shared view is accessed again.")))}w.isMDXComponent=!0},25918:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-button-9751630544eab59c43f368bcbe4aaaae.png"},63074:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-form-d98371a23098e020e611302bcb5ebe40.png"},430:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-modal-2-4bb63f03e7cb528595d3f2f6335fca02.png"},12649:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-modal-3-1202422c5c9bf2b234a5b5ed7a05e805.png"},67548:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-modal-2c40f95aa822fa2830e1f205431a4b4e.png"},66239:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-password-8b55b2f905ed895f6ceddccad842c205.png"},83792:(e,t,a)=>{a.d(t,{Z:()=>o});const o=a.p+"assets/images/share-view-22f8daabd281e5b6199d1e03ab814378.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a43060c8.ee2e4b77.js b/packages/noco-docs/dist/assets/js/a43060c8.ee2e4b77.js new file mode 100644 index 0000000000..35931569dc --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a43060c8.ee2e4b77.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3185],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var a=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t){if(null==e)return{};var n,a,o=function(e,t){if(null==e)return{};var n,a,o={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=a.createContext({}),p=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):l(l({},t),e)),n},c=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,o=e.mdxType,r=e.originalType,s=e.parentName,c=i(e,["components","mdxType","originalType","parentName"]),d=p(n),m=o,h=d["".concat(s,".").concat(m)]||d[m]||u[m]||r;return n?a.createElement(h,l(l({ref:t},c),{},{components:n})):a.createElement(h,l({ref:t},c))}));function h(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var r=n.length,l=new Array(r);l[0]=m;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[d]="string"==typeof e?e:o,l[1]=i;for(var p=2;p<r;p++)l[p]=n[p];return a.createElement.apply(null,l)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},96:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>r,metadata:()=>i,toc:()=>p});var a=n(87462),o=(n(67294),n(3905));const r={title:"Links",description:"Understanding Link Columns!"},l=void 0,i={unversionedId:"setup-and-usages/links",id:"version-0.109.7/setup-and-usages/links",title:"Links",description:"Understanding Link Columns!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/links",permalink:"/0.109.7/setup-and-usages/links",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md",tags:[],version:"0.109.7",sidebarPosition:220,frontMatter:{title:"Links",description:"Understanding Link Columns!"},sidebar:"tutorialSidebar",previous:{title:"Usage Information",permalink:"/0.109.7/setup-and-usages/usage-information"},next:{title:"Team & Auth",permalink:"/0.109.7/setup-and-usages/team-and-auth"}},s={},p=[{value:"Supported relationship types:",id:"supported-relationship-types",level:3},{value:"Adding a relationship",id:"adding-a-relationship",level:2},{value:"Linking records",id:"linking-records",level:2},{value:"1. Open link record tab",id:"1-open-link-record-tab",level:3},{value:"2. Select from the option displayed",id:"2-select-from-the-option-displayed",level:3},{value:"3. Column display for "Has Many" relationship",id:"3-column-display-for-has-many-relationship",level:3},{value:"4. Column display for "Belongs to" relationship Automatically updated",id:"4-column-display-for-belongs-to-relationship-automatically-updated",level:3},{value:"Unlinking records",id:"unlinking-records",level:2},{value:"Link label reconfiguration",id:"link-label-reconfiguration",level:2}],c={toc:p},d="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(d,(0,a.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h3",{id:"supported-relationship-types"},"Supported relationship types:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"One to many",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"A Table record in first table is related to more than one record of second table. But second table record maps to only one entry of first table"),(0,o.kt)("li",{parentName:"ul"},"NocoDB refers to this category of relationship as ",(0,o.kt)("strong",{parentName:"li"},"has many")),(0,o.kt)("li",{parentName:"ul"},"For every ",(0,o.kt)("strong",{parentName:"li"},"has many")," relation defined, NocoDB augments ",(0,o.kt)("strong",{parentName:"li"},"belongs to")," relationship column in the adjacent table automatically"),(0,o.kt)("li",{parentName:"ul"},"Example: Country ",(0,o.kt)("strong",{parentName:"li"},"has many")," Cities. (other way mapping > City ",(0,o.kt)("strong",{parentName:"li"},"belongs to")," Country )"))),(0,o.kt)("li",{parentName:"ul"},"Many to many",(0,o.kt)("ul",{parentName:"li"},(0,o.kt)("li",{parentName:"ul"},"A Table record in first table is related to more than one record of second table; second table record can also map to more than on record of first table."),(0,o.kt)("li",{parentName:"ul"},"NocoDB refers to this category of relationship as ",(0,o.kt)("strong",{parentName:"li"},"many to many")),(0,o.kt)("li",{parentName:"ul"},"For every ",(0,o.kt)("strong",{parentName:"li"},"many to many")," relation defined between tables, NocoDB augments ",(0,o.kt)("strong",{parentName:"li"},"many to many")," relationship column in the other table automatically"),(0,o.kt)("li",{parentName:"ul"},"Example: Film ",(0,o.kt)("strong",{parentName:"li"},"has many")," Actors. Actor ",(0,o.kt)("strong",{parentName:"li"},"has many")," Films (works on many films)")))),(0,o.kt)("p",null,"Further details of relationship types can be found ",(0,o.kt)("a",{parentName:"p",href:"https://afteracademy.com/blog/what-are-the-different-types-of-relationships-in-dbms"},"here")),(0,o.kt)("p",null,"From Release v0.111.0, table records can be connected through relationships using the ",(0,o.kt)("strong",{parentName:"p"},"Links")," column type.\nIt is important to note that, earlier supported column type ",(0,o.kt)("strong",{parentName:"p"},"LinkToAnotherRecord")," for creating relations is considered deprecated. While the old datatype is still supported for backward compatibility, it is no longer possible to create new fields of that type."),(0,o.kt)("p",null,"The main distinction between these two column types lies in how the contents are displayed within the cell when links are established between two tables. With the ",(0,o.kt)("strong",{parentName:"p"},"LinkToAnotherRecord")," column type, the cell displays the ",(0,o.kt)("strong",{parentName:"p"},"Primary value")," of the related records. On the other hand, the ",(0,o.kt)("strong",{parentName:"p"},"Links")," column type only shows the ",(0,o.kt)("strong",{parentName:"p"},"count")," of related records.\nThe decision to switch over to new column type was made to ensure better performance and scalability of the application, more so when the records & the number of records in the related table is large."),(0,o.kt)("p",null,"Child list to display the related records can be accessed by clicking on the link count displayed on the cell.\nExcept for the column type, the following procedures remain same as before "),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Create, update & delete a relationship column, "),(0,o.kt)("li",{parentName:"ul"},"Link & unlink a record, "),(0,o.kt)("li",{parentName:"ul"},"Create a lookup and rollup columns ")),(0,o.kt)("p",null,"Workflow details are captured below."),(0,o.kt)("h2",{id:"adding-a-relationship"},"Adding a relationship"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/b3762fc8-4bba-42ef-8415-41428840ee0e",alt:"Screenshot 2023-06-27 at 11 03 20 AM"})),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Create column\nClick on '+' button at end of column headers")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Update column name\nInput name in the text box provided")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},'Select column type\nSelect Column type as "Links" from the drop-down menu')),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Choose relationship type"))),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"'Has Many' corresponds to the 'One-to-many' relationships"),(0,o.kt)("li",{parentName:"ul"},"'Many To Many' corresponds to the 'Many-to-many' relationships")),(0,o.kt)("ol",{start:5},(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Select child table from drop down menu")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Click on 'Save'\nA new column will get created in both the parent table & child table"))),(0,o.kt)("h2",{id:"linking-records"},"Linking records"),(0,o.kt)("h3",{id:"1-open-link-record-tab"},"1. Open link record tab"),(0,o.kt)("p",null,"Click on the '+' icon in corresponding row - cell\n",(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/96a90a6d-544e-4e43-b6d1-fe1aef784257",alt:"Screenshot 2023-06-27 at 11 06 52 AM"})),(0,o.kt)("h3",{id:"2-select-from-the-option-displayed"},"2. Select from the option displayed"),(0,o.kt)("p",null,"Use 'Filter box' to narrow down on search items.",(0,o.kt)("br",{parentName:"p"}),"\n",'You can opt to insert a new record as well, using "+ New Record" button.',(0,o.kt)("br",{parentName:"p"}),"\n","You can use ",(0,o.kt)("inlineCode",{parentName:"p"},"ALT + Click")," to insert multiple options together. "),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/68246783-8d01-488b-8926-644fca8fa164",alt:"Screenshot 2023-06-27 at 11 08 40 AM"})),(0,o.kt)("h3",{id:"3-column-display-for-has-many-relationship"},'3. Column display for "Has Many" relationship'),(0,o.kt)("p",null,"Country 'has many' City"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/b5bb62b7-37ad-480e-8bf2-d666b775b07a",alt:"Screenshot 2023-06-27 at 11 11 50 AM"})),(0,o.kt)("h3",{id:"4-column-display-for-belongs-to-relationship-automatically-updated"},'4. Column display for "Belongs to" relationship ',"[Automatically updated]"),(0,o.kt)("p",null,"City 'belongs to' Country.",(0,o.kt)("br",{parentName:"p"}),"\n",'Note: Primary value is still used as cell display value for "Belongs to" as it can have only one associated record.'),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/54e9ee75-4af5-49f6-8cd9-275dc53a8915",alt:"Screenshot 2023-06-27 at 11 12 27 AM"})),(0,o.kt)("h2",{id:"unlinking-records"},"Unlinking records"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click on link count to open Child modal"),(0,o.kt)("li",{parentName:"ol"},"Click on Unlink icon against required item")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/dad3cbc7-289d-45a7-9c49-a72264ed36b1",alt:"Screenshot 2023-06-27 at 11 22 00 AM"})),(0,o.kt)("h2",{id:"link-label-reconfiguration"},"Link label reconfiguration"),(0,o.kt)("p",null,"Use column edit menu for ",(0,o.kt)("strong",{parentName:"p"},"Links")," to reconfigure display label"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/1aabdd8c-7102-4917-b0c0-b72e1187b0b7",alt:"Screenshot 2023-06-27 at 11 16 19 AM"})))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a47b7f3a.8d81acfc.js b/packages/noco-docs/dist/assets/js/a47b7f3a.8d81acfc.js new file mode 100644 index 0000000000..b810edf6e2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a47b7f3a.8d81acfc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2550],{3905:(e,t,n)=>{n.d(t,{Zo:()=>l,kt:()=>g});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},o=Object.keys(e);for(a=0;a<o.length;a++)n=o[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a<o.length;a++)n=o[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var c=a.createContext({}),p=function(e){var t=a.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},l=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,c=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),u=p(n),m=r,g=u["".concat(c,".").concat(m)]||u[m]||d[m]||o;return n?a.createElement(g,i(i({ref:t},l),{},{components:n})):a.createElement(g,i({ref:t},l))}));function g(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,i=new Array(o);i[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s[u]="string"==typeof e?e:r,i[1]=s;for(var p=2;p<o;p++)i[p]=n[p];return a.createElement.apply(null,i)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},60406:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>p});var a=n(87462),r=(n(67294),n(3905));const o={title:"Dashboard",description:"Accessing the Dashboard!"},i=void 0,s={unversionedId:"setup-and-usages/dashboard",id:"version-0.109.7/setup-and-usages/dashboard",title:"Dashboard",description:"Accessing the Dashboard!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/dashboard",permalink:"/0.109.7/setup-and-usages/dashboard",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md",tags:[],version:"0.109.7",sidebarPosition:10,frontMatter:{title:"Dashboard",description:"Accessing the Dashboard!"},sidebar:"tutorialSidebar",previous:{title:"Demos",permalink:"/0.109.7/getting-started/demos"},next:{title:"Table Operations",permalink:"/0.109.7/setup-and-usages/table-operations"}},c={},p=[{value:"Setup Your First Super Admin",id:"setup-your-first-super-admin",level:2},{value:"Initialize Your First Project",id:"initialize-your-first-project",level:2},{value:"Connecting to External Database",id:"connecting-to-external-database",level:3}],l={toc:p},u="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(u,(0,a.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"setup-your-first-super-admin"},"Setup Your First Super Admin"),(0,r.kt)("p",null,"Once you have started NocoDB, you can visit the dashboard via ",(0,r.kt)("inlineCode",{parentName:"p"},"example.com"),". You will be redirected to ",(0,r.kt)("inlineCode",{parentName:"p"},"example.com/#/signup"),". "),(0,r.kt)("p",null,"Enter your work email and your password."),(0,r.kt)("img",{width:"1492",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194793294-fa027496-c3c3-44eb-a613-2ba3e3bd26c1.png"}),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("p",{parentName:"admonition"},"Your password has at least 8 letters. No other constraints on case, numbers or special characters.")),(0,r.kt)("h2",{id:"initialize-your-first-project"},"Initialize Your First Project"),(0,r.kt)("p",null,"Once you have logged into NocoDB, you should see ",(0,r.kt)("inlineCode",{parentName:"p"},"My Projects"),"."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/209932699-743ffea2-986f-443f-8198-f56b597de706.png",alt:"Screenshot 2022-12-29 at 2 54 43 PM"})),(0,r.kt)("p",null,"To create a new project, you can click ",(0,r.kt)("inlineCode",{parentName:"p"},"New Project"),". "),(0,r.kt)("p",null,"You need to specify the project name. The data will be stored in ",(0,r.kt)("inlineCode",{parentName:"p"},"NC_DB"),". If it is not specified, a local SQLite will be created and used."),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("p",{parentName:"admonition"},"NC_DB is an environment variable used to store the meta data in the given database.")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/209932936-8fe7334c-1a94-4073-ba19-478efb620808.png",alt:"Screenshot 2022-12-29 at 2 54 57 PM"})),(0,r.kt)("h3",{id:"connecting-to-external-database"},"Connecting to External Database"),(0,r.kt)("p",null,"Click on three-dot menu adjacent to ",(0,r.kt)("inlineCode",{parentName:"p"},"BASES"),". Pick required database option from the menu ",(0,r.kt)("inlineCode",{parentName:"p"},"Connect to new datasource"),". "),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"If you are running NocoDB on Docker and your local DB is running on your host machine, your Host Address would be host.docker.internal instead of localhost.")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/209933294-9327ff16-21db-4aca-bf16-8cea8a1eb415.png",alt:"Screenshot 2022-12-29 at 2 55 39 PM"})),(0,r.kt)("p",null,"Above menu is also accessible from ",(0,r.kt)("inlineCode",{parentName:"p"},"Team & Settings")," > ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),". Click on ",(0,r.kt)("inlineCode",{parentName:"p"},"New")," button to add existing database. "),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219841162-6456c5cf-fd26-4a88-8de6-e8742c043607.png",alt:"image"})),(0,r.kt)("p",null,"You need to specify the project name, API type, and other database parameters."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219841283-1a42f9f6-4677-4e25-8ca9-a060753d1e1e.png",alt:"image"})),(0,r.kt)("p",null,"Currently it supports MySQL, Postgres, MSSQL and SQLite."),(0,r.kt)("p",null,"You can also configure associated SSL & advanced parameters."),(0,r.kt)("img",{width:"689",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189047293-05176c44-e162-495a-a7cd-e02377c1f42c.png"}),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},'You can click Edit Connection JSON and modify SSL settings in "ssl".')),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "client": "pg",\n "connection": {\n "host": "<YOUR_HOST>",\n "port": "5432",\n "user": "<YOUR_DB_USER>",\n "password": "<YOUR_DB_PASSWORD>",\n "database": "<YOUR_DB_NAME>",\n "ssl": {\n "require": true,\n "rejectUnauthorized": false,\n "sslMode": "no-verify"\n }\n }\n}\n')),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},'You can click Edit Connection JSON and specify the schema you want to use in "searchPath".')),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-json"},'{\n "client": "pg",\n "connection": {\n ...\n },\n "searchPath": [ "<YOUR_TARGET_SCHEMA>" ]\n}\n')),(0,r.kt)("p",null,"Click ",(0,r.kt)("inlineCode",{parentName:"p"},"Test Database Connection")," to see if the connection can be established or not. NocoDB creates a new ",(0,r.kt)("strong",{parentName:"p"},"empty database")," with specified parameters if the database doesn't exist."),(0,r.kt)("img",{width:"505",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194793513-feabf14f-1f62-4896-b06d-88548251511a.png"}))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a54c3ef6.d8cc893c.js b/packages/noco-docs/dist/assets/js/a54c3ef6.d8cc893c.js new file mode 100644 index 0000000000..ba018490ea --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a54c3ef6.d8cc893c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5283],{38488:s=>{s.exports=JSON.parse('{"label":"Star","permalink":"/tags/star","allTagsPath":"/tags","count":1,"items":[{"id":"bases/actions-on-base","title":"Actions on base","description":"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.","permalink":"/bases/actions-on-base"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a71ccd0b.d973238c.js b/packages/noco-docs/dist/assets/js/a71ccd0b.d973238c.js new file mode 100644 index 0000000000..ad9fae7078 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a71ccd0b.d973238c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9383],{51259:t=>{t.exports=JSON.parse('{"label":"CSV","permalink":"/tags/csv","allTagsPath":"/tags","count":2,"items":[{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a7294da8.f960e7b6.js b/packages/noco-docs/dist/assets/js/a7294da8.f960e7b6.js new file mode 100644 index 0000000000..0a2507e39f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a7294da8.f960e7b6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3312],{3905:(t,a,e)=>{e.d(a,{Zo:()=>u,kt:()=>o});var n=e(67294);function l(t,a,e){return a in t?Object.defineProperty(t,a,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[a]=e,t}function r(t,a){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);a&&(n=n.filter((function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable}))),e.push.apply(e,n)}return e}function d(t){for(var a=1;a<arguments.length;a++){var e=null!=arguments[a]?arguments[a]:{};a%2?r(Object(e),!0).forEach((function(a){l(t,a,e[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):r(Object(e)).forEach((function(a){Object.defineProperty(t,a,Object.getOwnPropertyDescriptor(e,a))}))}return t}function p(t,a){if(null==t)return{};var e,n,l=function(t,a){if(null==t)return{};var e,n,l={},r=Object.keys(t);for(n=0;n<r.length;n++)e=r[n],a.indexOf(e)>=0||(l[e]=t[e]);return l}(t,a);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(n=0;n<r.length;n++)e=r[n],a.indexOf(e)>=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(l[e]=t[e])}return l}var i=n.createContext({}),m=function(t){var a=n.useContext(i),e=a;return t&&(e="function"==typeof t?t(a):d(d({},a),t)),e},u=function(t){var a=m(t.components);return n.createElement(i.Provider,{value:a},t.children)},N="mdxType",k={inlineCode:"code",wrapper:function(t){var a=t.children;return n.createElement(n.Fragment,{},a)}},g=n.forwardRef((function(t,a){var e=t.components,l=t.mdxType,r=t.originalType,i=t.parentName,u=p(t,["components","mdxType","originalType","parentName"]),N=m(e),g=l,o=N["".concat(i,".").concat(g)]||N[g]||k[g]||r;return e?n.createElement(o,d(d({ref:a},u),{},{components:e})):n.createElement(o,d({ref:a},u))}));function o(t,a){var e=arguments,l=a&&a.mdxType;if("string"==typeof t||l){var r=e.length,d=new Array(r);d[0]=g;var p={};for(var i in a)hasOwnProperty.call(a,i)&&(p[i]=a[i]);p.originalType=t,p[N]="string"==typeof t?t:l,d[1]=p;for(var m=2;m<r;m++)d[m]=e[m];return n.createElement.apply(null,d)}return n.createElement.apply(null,e)}g.displayName="MDXCreateElement"},60707:(t,a,e)=>{e.r(a),e.d(a,{assets:()=>i,contentTitle:()=>d,default:()=>k,frontMatter:()=>r,metadata:()=>p,toc:()=>m});var n=e(87462),l=(e(67294),e(3905));const r={title:"REST APIs",description:"NocoDB REST API Overview"},d=void 0,p={unversionedId:"developer-resources/rest-apis",id:"version-0.109.7/developer-resources/rest-apis",title:"REST APIs",description:"NocoDB REST API Overview",source:"@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md",sourceDirName:"040.developer-resources",slug:"/developer-resources/rest-apis",permalink:"/0.109.7/developer-resources/rest-apis",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md",tags:[],version:"0.109.7",sidebarPosition:20,frontMatter:{title:"REST APIs",description:"NocoDB REST API Overview"},sidebar:"tutorialSidebar",previous:{title:"Accessing APIs",permalink:"/0.109.7/developer-resources/accessing-apis"},next:{title:"NocoDB SDK",permalink:"/0.109.7/developer-resources/sdk"}},i={},m=[{value:"API Overview",id:"api-overview",level:2},{value:"Auth APIs",id:"auth-apis",level:3},{value:"Public APIs",id:"public-apis",level:3},{value:"Data APIs",id:"data-apis",level:3},{value:"Meta APIs",id:"meta-apis",level:3},{value:"Query params",id:"query-params",level:2},{value:"Comparison Operators",id:"comparison-operators",level:2},{value:"Comparison Sub-Operators",id:"comparison-sub-operators",level:2},{value:"Logical Operators",id:"logical-operators",level:2}],u={toc:m},N="wrapper";function k(t){let{components:a,...e}=t;return(0,l.kt)(N,(0,n.Z)({},u,e,{components:a,mdxType:"MDXLayout"}),(0,l.kt)("p",null,"Once you've created the schemas, you can manipulate the data or invoke actions using the REST APIs. We provide several types of APIs for different usages as below."),(0,l.kt)("h2",{id:"api-overview"},"API Overview"),(0,l.kt)("p",null,"Here's the overview of all APIs. For the details, please check out ",(0,l.kt)("a",{href:"https://all-apis.nocodb.com/",target:"_blank"},"NocoDB API Documentation"),". "),(0,l.kt)("p",null,"You may also interact with the API's resources via ",(0,l.kt)("a",{href:"/0.109.7/developer-resources/accessing-apis#swagger-ui",target:"_blank"},"Swagger UI"),"."),(0,l.kt)("admonition",{type:"note"},(0,l.kt)("p",{parentName:"admonition"},"Currently, the default value for {orgs} is ",(0,l.kt)("b",null,"noco"),". Users will be able to change it in the future release.")),(0,l.kt)("h3",{id:"auth-apis"},"Auth APIs"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Category"),(0,l.kt)("th",{parentName:"tr",align:null},"Method"),(0,l.kt)("th",{parentName:"tr",align:null},"Tag"),(0,l.kt)("th",{parentName:"tr",align:null},"Function Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Path"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"signup"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/user/signup")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"signin"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/user/signin")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"me"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/user/me")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"passwordForgot"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/password/forgot")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"passwordChange"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/password/change")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"passwordReset"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/password/reset/{token}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"tokenRefresh"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/token/refresh")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"passwordResetTokenValidate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/token/validate/{token}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Auth"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"emailValidate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/auth/email/validate/{email}")))),(0,l.kt)("h3",{id:"public-apis"},"Public APIs"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Category"),(0,l.kt)("th",{parentName:"tr",align:null},"Method"),(0,l.kt)("th",{parentName:"tr",align:null},"Tag"),(0,l.kt)("th",{parentName:"tr",align:null},"Function Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Path"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedBaseGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-base/{sharedBaseUuid}/meta")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"dataList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/rows")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"dataNestedList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/rows/{rowId}/{relationType}/{columnName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"dataCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/rows")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"csvExport"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/rows/export/{type}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"dataRelationList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/nested/{columnName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedViewMetaGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/meta")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Public"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"public"),(0,l.kt)("td",{parentName:"tr",align:null},"groupedDataList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/public/shared-view/{sharedViewUuid}/group/{columnId}")))),(0,l.kt)("h3",{id:"data-apis"},"Data APIs"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Category"),(0,l.kt)("th",{parentName:"tr",align:null},"Method"),(0,l.kt)("th",{parentName:"tr",align:null},"Tag"),(0,l.kt)("th",{parentName:"tr",align:null},"Function Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Path"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"bulkDelete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"bulkCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"bulkUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"bulkUpdateAll"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/all")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"bulkDeleteAll"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/bulk/{orgs}/{projectName}/{tableName}/all")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"findOne"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/find-one")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"groupBy"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/groupby")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"exist"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}/exist")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"count"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/count")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableRow"),(0,l.kt)("td",{parentName:"tr",align:null},"groupedDataList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/group/{columnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"findOne"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/find-one")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"groupBy"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/groupby")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"exist"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}/exist")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/{rowId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"count"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/count")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Data"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewRow"),(0,l.kt)("td",{parentName:"tr",align:null},"groupedDataList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/data/{orgs}/{projectName}/{tableName}/views/{viewName}/group/{columnId}")))),(0,l.kt)("h3",{id:"meta-apis"},"Meta APIs"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Category"),(0,l.kt)("th",{parentName:"tr",align:null},"Method"),(0,l.kt)("th",{parentName:"tr",align:null},"Tag"),(0,l.kt)("th",{parentName:"tr",align:null},"Function Name"),(0,l.kt)("th",{parentName:"tr",align:null},"Path"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"apiToken"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/api-tokens")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"apiToken"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/api-tokens")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"apiToken"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/api-tokens/{token}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"projectUserList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/users")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"projectUserAdd"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/users")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"projectUserUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/users/{userId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"projectUserRemove"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/users/{userId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"auth"),(0,l.kt)("td",{parentName:"tr",align:null},"projectUserResendInvite"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/users/{userId}/resend-invite")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTable"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/tables")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTable"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/tables")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/columns")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/columns/{columnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/columns/{columnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"primaryColumnSet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/columns/{columnId}/primary")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"get"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/filters")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/filters")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"get"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"childrenRead"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/filters/{filterGroupId}/children")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableSort"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/sorts")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableSort"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/sorts")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableSort"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/sorts/{sortId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableSort"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/sorts/{sortId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableSort"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/sorts/{sortId}/api/v1/db")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/hooks/{hookId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/hooks/{hookId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/hooks")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/hooks")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"test"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/hooks/test")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhook"),(0,l.kt)("td",{parentName:"tr",align:null},"samplePayloadGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/hooks/samplePayload/{operation}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhookFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/hooks/{hookId}/filters")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbTableWebhookFilter"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/hooks/{hookId}/filters")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/views")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"reorder"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/reorder")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"formCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/forms")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"formUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/forms/{formViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"formRead"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/forms/{formViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"formColumnUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/form-columns/{formViewColumnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"galleryCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/galleries")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"galleryUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/galleries/{galleryViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"galleryRead"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/galleries/{galleryViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"kanbanCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/kanbans")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"kanbanUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/kanban/{kanbanViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"kanbanRead"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/kanbans/{kanbanViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"mapCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/maps")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"mapUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/maps/{mapViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"mapRead"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/maps/{mapViewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"gridCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/tables/{tableId}/grids")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"gridColumnsList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/grids/{gridId}/grid-columns")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"gridColumnUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/grid-columns/{columnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"showAllColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/show-all")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbView"),(0,l.kt)("td",{parentName:"tr",align:null},"hideAllColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/hide-all")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/columns")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/columns")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewColumn"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/columns/{columnId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewShare"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/share")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewShare"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/share")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewShare"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/share")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"dbViewShare"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/views/{viewId}/share")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"plugin"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/plugins")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"plugin"),(0,l.kt)("td",{parentName:"tr",align:null},"status"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/plugins/{pluginTitle}/status")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"plugin"),(0,l.kt)("td",{parentName:"tr",align:null},"test"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/plugins/test")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"PATCH"),(0,l.kt)("td",{parentName:"tr",align:null},"plugin"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/plugins/{pluginId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"plugin"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/plugins/{pluginId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"metaGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/info")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"modelVisibilityList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/visibility-rules")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"modelVisibilitySet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/visibility-rules")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"read"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"auditList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/audits")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"metaDiffGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/meta-diff")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"metaDiffSync"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/meta-diff")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedBaseGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/shared")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedBaseDisable"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/shared")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedBaseCreate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/shared")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"project"),(0,l.kt)("td",{parentName:"tr",align:null},"sharedBaseUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/{projectId}/shared")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"storage"),(0,l.kt)("td",{parentName:"tr",align:null},"upload"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/storage/upload")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"storage"),(0,l.kt)("td",{parentName:"tr",align:null},"uploadByUrl"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/storage/upload-by-url")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"commentList"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/audits/comments")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"commentRow"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/audits/comments")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"commentCount"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/audits/comments/count")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"auditRowUpdate"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/audits/update")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"cacheGet"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/cache")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"cacheDelete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/cache")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"testConnection"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/projects/connection/test")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"appInfo"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/db/meta/nocodb/info")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"appVersion"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/version")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"appHealth"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/health")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"utils"),(0,l.kt)("td",{parentName:"tr",align:null},"aggregatedMetaInfo"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/aggregated-meta-info")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"orgUsers"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/users")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"orgUsers"),(0,l.kt)("td",{parentName:"tr",align:null},"add"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/users")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Patch"),(0,l.kt)("td",{parentName:"tr",align:null},"orgUsers"),(0,l.kt)("td",{parentName:"tr",align:null},"update"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/users/{userId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"orgUsers"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/users/{userId}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"orgTokens"),(0,l.kt)("td",{parentName:"tr",align:null},"list"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/tokens")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"orgTokens"),(0,l.kt)("td",{parentName:"tr",align:null},"create"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/tokens")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Delete"),(0,l.kt)("td",{parentName:"tr",align:null},"orgTokens"),(0,l.kt)("td",{parentName:"tr",align:null},"delete"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/tokens/{token}")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Get"),(0,l.kt)("td",{parentName:"tr",align:null},"orgAppSettings"),(0,l.kt)("td",{parentName:"tr",align:null},"get"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/app-settings")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"Meta"),(0,l.kt)("td",{parentName:"tr",align:null},"Post"),(0,l.kt)("td",{parentName:"tr",align:null},"orgAppSettings"),(0,l.kt)("td",{parentName:"tr",align:null},"set"),(0,l.kt)("td",{parentName:"tr",align:null},"/api/v1/app-settings")))),(0,l.kt)("h2",{id:"query-params"},"Query params"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"th"},"Name")),(0,l.kt)("th",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"th"},"Alias")),(0,l.kt)("th",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"th"},"Use case")),(0,l.kt)("th",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"th"},"Default value")),(0,l.kt)("th",{parentName:"tr",align:null},(0,l.kt)("strong",{parentName:"th"},"Example value")))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#comparison-operators"},"where")),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"#comparison-operators"},"w")),(0,l.kt)("td",{parentName:"tr",align:null},"Complicated where conditions"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("inlineCode",{parentName:"td"},"(colName,eq,colValue)~or(colName2,gt,colValue2)")," ",(0,l.kt)("br",null),(0,l.kt)("a",{parentName:"td",href:"#comparison-operators"},"Usage: Comparison operators")," ",(0,l.kt)("br",null),(0,l.kt)("a",{parentName:"td",href:"#logical-operators"},"Usage: Logical operators"))),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"limit"),(0,l.kt)("td",{parentName:"tr",align:null},"l"),(0,l.kt)("td",{parentName:"tr",align:null},"Number of rows to get (SQL limit value)"),(0,l.kt)("td",{parentName:"tr",align:null},"10"),(0,l.kt)("td",{parentName:"tr",align:null},"20")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"offset"),(0,l.kt)("td",{parentName:"tr",align:null},"o"),(0,l.kt)("td",{parentName:"tr",align:null},"Offset for pagination (SQL offset value)"),(0,l.kt)("td",{parentName:"tr",align:null},"0"),(0,l.kt)("td",{parentName:"tr",align:null},"20")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"sort"),(0,l.kt)("td",{parentName:"tr",align:null},"s"),(0,l.kt)("td",{parentName:"tr",align:null},"Sort by column name, Use ",(0,l.kt)("inlineCode",{parentName:"td"},"-")," as prefix for descending sort"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"column_name")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"fields"),(0,l.kt)("td",{parentName:"tr",align:null},"f"),(0,l.kt)("td",{parentName:"tr",align:null},"Required column names in result"),(0,l.kt)("td",{parentName:"tr",align:null},"*"),(0,l.kt)("td",{parentName:"tr",align:null},"column_name1,column_name2")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"shuffle"),(0,l.kt)("td",{parentName:"tr",align:null},"r"),(0,l.kt)("td",{parentName:"tr",align:null},"Shuffle the result for pagination"),(0,l.kt)("td",{parentName:"tr",align:null},"0"),(0,l.kt)("td",{parentName:"tr",align:null},"1 (Only allow 0 or 1. Other values would see it as 0)")))),(0,l.kt)("h2",{id:"comparison-operators"},"Comparison Operators"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Operation"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Example"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"eq"),(0,l.kt)("td",{parentName:"tr",align:null},"equal"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"neq"),(0,l.kt)("td",{parentName:"tr",align:null},"not equal"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,neq,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"not"),(0,l.kt)("td",{parentName:"tr",align:null},"not equal (alias of neq)"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,not,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"gt"),(0,l.kt)("td",{parentName:"tr",align:null},"greater than"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,gt,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"ge"),(0,l.kt)("td",{parentName:"tr",align:null},"greater or equal"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,ge,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"lt"),(0,l.kt)("td",{parentName:"tr",align:null},"less than"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,lt,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"le"),(0,l.kt)("td",{parentName:"tr",align:null},"less or equal"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,le,colValue)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"is"),(0,l.kt)("td",{parentName:"tr",align:null},"is"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,is,true/false/null)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"isnot"),(0,l.kt)("td",{parentName:"tr",align:null},"is not"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isnot,true/false/null)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"in"),(0,l.kt)("td",{parentName:"tr",align:null},"in"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,in,val1,val2,val3,val4)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"btw"),(0,l.kt)("td",{parentName:"tr",align:null},"between"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,btw,val1,val2)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nbtw"),(0,l.kt)("td",{parentName:"tr",align:null},"not between"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,nbtw,val1,val2)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"like"),(0,l.kt)("td",{parentName:"tr",align:null},"like"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,like,%name)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"isWithin"),(0,l.kt)("td",{parentName:"tr",align:null},"is Within (Available in ",(0,l.kt)("inlineCode",{parentName:"td"},"Date")," and ",(0,l.kt)("inlineCode",{parentName:"td"},"DateTime")," only)"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,sub_op)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"allof"),(0,l.kt)("td",{parentName:"tr",align:null},"includes all of"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,allof,val1,val2,...)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"anyof"),(0,l.kt)("td",{parentName:"tr",align:null},"includes any of"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,anyof,val1,val2,...)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nallof"),(0,l.kt)("td",{parentName:"tr",align:null},"does not include all of (includes none or some, but not all of)"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,nallof,val1,val2,...)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nanyof"),(0,l.kt)("td",{parentName:"tr",align:null},"does not include any of (includes none of)"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,nanyof,val1,val2,...)")))),(0,l.kt)("h2",{id:"comparison-sub-operators"},"Comparison Sub-Operators"),(0,l.kt)("p",null,"The following sub-operators are available in ",(0,l.kt)("inlineCode",{parentName:"p"},"Date")," and ",(0,l.kt)("inlineCode",{parentName:"p"},"DateTime")," columns."),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Operation"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Example"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"today"),(0,l.kt)("td",{parentName:"tr",align:null},"today"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,today)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"tomorrow"),(0,l.kt)("td",{parentName:"tr",align:null},"tomorrow"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,tomorrow)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"yesterday"),(0,l.kt)("td",{parentName:"tr",align:null},"yesterday"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,yesterday)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"oneWeekAgo"),(0,l.kt)("td",{parentName:"tr",align:null},"one week ago"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,oneWeekAgo)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"oneWeekFromNow"),(0,l.kt)("td",{parentName:"tr",align:null},"one week from now"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,oneWeekFromNow)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"oneMonthAgo"),(0,l.kt)("td",{parentName:"tr",align:null},"one month ago"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,oneMonthAgo)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"oneMonthFromNow"),(0,l.kt)("td",{parentName:"tr",align:null},"one month from now"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,oneMonthFromNow)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"daysAgo"),(0,l.kt)("td",{parentName:"tr",align:null},"number of days ago"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,daysAgo,10)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"daysFromNow"),(0,l.kt)("td",{parentName:"tr",align:null},"number of days from now"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,daysFromNow,10)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"exactDate"),(0,l.kt)("td",{parentName:"tr",align:null},"exact date"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,eq,exactDate,2022-02-02)")))),(0,l.kt)("p",null,"For ",(0,l.kt)("inlineCode",{parentName:"p"},"isWithin")," in ",(0,l.kt)("inlineCode",{parentName:"p"},"Date")," and ",(0,l.kt)("inlineCode",{parentName:"p"},"DateTime")," columns, the different set of sub-operators are used."),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Operation"),(0,l.kt)("th",{parentName:"tr",align:null},"Meaning"),(0,l.kt)("th",{parentName:"tr",align:null},"Example"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"pastWeek"),(0,l.kt)("td",{parentName:"tr",align:null},"the past week"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,pastWeek)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"pastMonth"),(0,l.kt)("td",{parentName:"tr",align:null},"the past month"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,pastMonth)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"pastYear"),(0,l.kt)("td",{parentName:"tr",align:null},"the past year"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,pastYear)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nextWeek"),(0,l.kt)("td",{parentName:"tr",align:null},"the next week"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,nextWeek)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nextMonth"),(0,l.kt)("td",{parentName:"tr",align:null},"the next month"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,nextMonth)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nextYear"),(0,l.kt)("td",{parentName:"tr",align:null},"the next year"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,nextYear)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"nextNumberOfDays"),(0,l.kt)("td",{parentName:"tr",align:null},"the next number of days"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,nextNumberOfDays,10)")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"pastNumberOfDays"),(0,l.kt)("td",{parentName:"tr",align:null},"the past number of days"),(0,l.kt)("td",{parentName:"tr",align:null},"(colName,isWithin,pastNumberOfDays,10)")))),(0,l.kt)("h2",{id:"logical-operators"},"Logical Operators"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Operation"),(0,l.kt)("th",{parentName:"tr",align:null},"Example"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"~or"),(0,l.kt)("td",{parentName:"tr",align:null},"(checkNumber,eq,JM555205)~or((amount, gt, 200)~and(amount, lt, 2000))")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"~and"),(0,l.kt)("td",{parentName:"tr",align:null},"(checkNumber,eq,JM555205)~and((amount, gt, 200)~and(amount, lt, 2000))")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"~not"),(0,l.kt)("td",{parentName:"tr",align:null},"~not(checkNumber,eq,JM555205)")))))}k.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/a9993c14.d9ac97ff.js b/packages/noco-docs/dist/assets/js/a9993c14.d9ac97ff.js new file mode 100644 index 0000000000..e6036cebd1 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/a9993c14.d9ac97ff.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8750],{86137:e=>{e.exports=JSON.parse('{"label":"Table details","permalink":"/tags/table-details","allTagsPath":"/tags","count":1,"items":[{"id":"table-details/table-details-overview","title":"Table details overview","description":"Table details overview","permalink":"/table-details/table-details-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ab9ce1e1.c031a608.js b/packages/noco-docs/dist/assets/js/ab9ce1e1.c031a608.js new file mode 100644 index 0000000000..7c8b7c8f78 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ab9ce1e1.c031a608.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5919],{4225:e=>{e.exports=JSON.parse('{"label":"Row height","permalink":"/tags/row-height","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/row-height","title":"Row height","description":"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.","permalink":"/table-operations/row-height"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/abbfc25c.85ecd7fa.js b/packages/noco-docs/dist/assets/js/abbfc25c.85ecd7fa.js new file mode 100644 index 0000000000..80fb44910c --- /dev/null +++ b/packages/noco-docs/dist/assets/js/abbfc25c.85ecd7fa.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6713],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>k});var n=l(67294);function i(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function r(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?a(Object(l),!0).forEach((function(t){i(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):a(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function o(e,t){if(null==e)return{};var l,n,i=function(e,t){if(null==e)return{};var l,n,i={},a=Object.keys(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||(i[l]=e[l]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(i[l]=e[l])}return i}var s=n.createContext({}),d=function(e){var t=n.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},p=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var l=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=d(l),c=i,k=u["".concat(s,".").concat(c)]||u[c]||f[c]||a;return l?n.createElement(k,r(r({ref:t},p),{},{components:l})):n.createElement(k,r({ref:t},p))}));function k(e,t){var l=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=l.length,r=new Array(a);r[0]=c;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:i,r[1]=o;for(var d=2;d<a;d++)r[d]=l[d];return n.createElement.apply(null,r)}return n.createElement.apply(null,l)}c.displayName="MDXCreateElement"},59661:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>f,frontMatter:()=>a,metadata:()=>o,toc:()=>d});var n=l(87462),i=(l(67294),l(3905));const a={title:"LookUp",tags:["Fields","Field types","Links based types","Lookup"]},r=void 0,o={unversionedId:"fields/field-types/links-based/lookup",id:"fields/field-types/links-based/lookup",title:"LookUp",description:"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.",source:"@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md",sourceDirName:"070.fields/040.field-types/040.links-based",slug:"/fields/field-types/links-based/lookup",permalink:"/fields/field-types/links-based/lookup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/020.lookup.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Links based types",permalink:"/tags/links-based-types"},{label:"Lookup",permalink:"/tags/lookup"}],version:"current",sidebarPosition:20,frontMatter:{title:"LookUp",tags:["Fields","Field types","Links based types","Lookup"]},sidebar:"tutorialSidebar",previous:{title:"Links",permalink:"/fields/field-types/links-based/links"},next:{title:"Rollup",permalink:"/fields/field-types/links-based/rollup"}},s={},d=[{value:"Create a Lookup Field",id:"create-a-lookup-field",level:2},{value:"Create field",id:"create-field",level:2},{value:"Similar links-based fields",id:"similar-links-based-fields",level:2}],p={toc:d},u="wrapper";function f(e){let{components:t,...a}=e;return(0,i.kt)(u,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Lookup")," fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of ",(0,i.kt)("inlineCode",{parentName:"p"},"Orders")," and a table of ",(0,i.kt)("inlineCode",{parentName:"p"},"Customers"),", you can use a ",(0,i.kt)("inlineCode",{parentName:"p"},"Lookup")," field to display the customer's name and address in the ",(0,i.kt)("inlineCode",{parentName:"p"},"Orders")," table."),(0,i.kt)("h2",{id:"create-a-lookup-field"},"Create a Lookup Field"),(0,i.kt)("h2",{id:"create-field"},"Create field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Lookup")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"Select the link field from the dropdown. This is the field that links the current table to the related table."),(0,i.kt)("li",{parentName:"ol"},"Select the column for display from the dropdown. This is the column that will be displayed in the current table."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:l(9518).Z,width:"1263",height:"631"})),(0,i.kt)("h2",{id:"similar-links-based-fields"},"Similar links-based fields"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/links"},"Links")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/rollup"},"Rollup"))))}f.isMDXComponent=!0},9518:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/lookup-a18b54754608e45dd68371ecceee50a7.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ae730630.2af2cede.js b/packages/noco-docs/dist/assets/js/ae730630.2af2cede.js new file mode 100644 index 0000000000..919d390247 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ae730630.2af2cede.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9707],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>b});var o=r(67294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,o,a=function(e,t){if(null==e)return{};var r,o,a={},n=Object.keys(e);for(o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(o=0;o<n.length;o++)r=n[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var s=o.createContext({}),p=function(e){var t=o.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},c=function(e){var t=p(e.components);return o.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},f=o.forwardRef((function(e,t){var r=e.components,a=e.mdxType,n=e.originalType,s=e.parentName,c=l(e,["components","mdxType","originalType","parentName"]),d=p(r),f=a,b=d["".concat(s,".").concat(f)]||d[f]||u[f]||n;return r?o.createElement(b,i(i({ref:t},c),{},{components:r})):o.createElement(b,i({ref:t},c))}));function b(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var n=r.length,i=new Array(n);i[0]=f;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:a,i[1]=l;for(var p=2;p<n;p++)i[p]=r[p];return o.createElement.apply(null,i)}return o.createElement.apply(null,r)}f.displayName="MDXCreateElement"},90229:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>u,frontMatter:()=>n,metadata:()=>l,toc:()=>p});var o=r(87462),a=(r(67294),r(3905));const n={title:"Table operations overview",description:"Learn how to work with filters, sort, group by, and more in NocoDB.",tags:["Table operations","Overview"],keywords:["NocoDB table operations","table operations overview","table administration","table organization","hide column","show column","filter","sort","group by","record height","quick search","download","hide-field","show-field","field-operations","filter","sort","group-by","row-height","search","download"]},i=void 0,l={unversionedId:"table-operations/overview",id:"table-operations/overview",title:"Table operations overview",description:"Learn how to work with filters, sort, group by, and more in NocoDB.",source:"@site/docs/060.table-operations/010.overview.md",sourceDirName:"060.table-operations",slug:"/table-operations/overview",permalink:"/table-operations/overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/010.overview.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Table operations overview",description:"Learn how to work with filters, sort, group by, and more in NocoDB.",tags:["Table operations","Overview"],keywords:["NocoDB table operations","table operations overview","table administration","table organization","hide column","show column","filter","sort","group by","record height","quick search","download","hide-field","show-field","field-operations","filter","sort","group-by","row-height","search","download"]},sidebar:"tutorialSidebar",previous:{title:"Actions on table",permalink:"/tables/actions-on-table"},next:{title:"Hide & reorder fields",permalink:"/table-operations/field-operations"}},s={},p=[],c={toc:p},d="wrapper";function u(e){let{components:t,...r}=e;return(0,a.kt)(d,(0,o.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"The toolbar provides a set of tools to interact with the data in the table. The toolbar is located at the top of the view area."),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"field-operations"},"Hide fields & reorder")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"filter"},"Filter")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"download"},"Download"))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ae9857c7.492b458b.js b/packages/noco-docs/dist/assets/js/ae9857c7.492b458b.js new file mode 100644 index 0000000000..31c365d801 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ae9857c7.492b458b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6714],{86741:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"0.109.7","label":"0.109.7 - Old UI","banner":"unmaintained","badge":true,"noIndex":false,"className":"docs-version-0.109.7","isLast":false,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Welcome","href":"/0.109.7/","docId":"index"},{"type":"category","label":"Getting Started","collapsible":true,"collapsed":false,"items":[{"type":"link","label":"Installation","href":"/0.109.7/getting-started/installation","docId":"getting-started/installation"},{"type":"link","label":"Environment Variables","href":"/0.109.7/getting-started/environment-variables","docId":"getting-started/environment-variables"},{"type":"link","label":"Upgrading","href":"/0.109.7/getting-started/upgrading","docId":"getting-started/upgrading"},{"type":"link","label":"Demos","href":"/0.109.7/getting-started/demos","docId":"getting-started/demos"}]},{"type":"category","label":"Product","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Dashboard","href":"/0.109.7/setup-and-usages/dashboard","docId":"setup-and-usages/dashboard"},{"type":"link","label":"Table Operations","href":"/0.109.7/setup-and-usages/table-operations","docId":"setup-and-usages/table-operations"},{"type":"link","label":"Column Operations","href":"/0.109.7/setup-and-usages/column-operations","docId":"setup-and-usages/column-operations"},{"type":"link","label":"Column Types","href":"/0.109.7/setup-and-usages/column-types","docId":"setup-and-usages/column-types"},{"type":"link","label":"Code Snippets","href":"/0.109.7/setup-and-usages/code-snippets","docId":"setup-and-usages/code-snippets"},{"type":"link","label":"Link To Another Record","href":"/0.109.7/setup-and-usages/link-to-another-record","docId":"setup-and-usages/link-to-another-record"},{"type":"link","label":"Lookup","href":"/0.109.7/setup-and-usages/lookup","docId":"setup-and-usages/lookup"},{"type":"link","label":"Rollup","href":"/0.109.7/setup-and-usages/rollup","docId":"setup-and-usages/rollup"},{"type":"link","label":"Formulas","href":"/0.109.7/setup-and-usages/formulas","docId":"setup-and-usages/formulas"},{"type":"link","label":"Primary Key","href":"/0.109.7/setup-and-usages/primary-key","docId":"setup-and-usages/primary-key"},{"type":"link","label":"Display Value","href":"/0.109.7/setup-and-usages/display-value","docId":"setup-and-usages/display-value"},{"type":"link","label":"Sync Schema","href":"/0.109.7/setup-and-usages/sync-schema","docId":"setup-and-usages/sync-schema"},{"type":"link","label":"Share Base","href":"/0.109.7/setup-and-usages/share-base","docId":"setup-and-usages/share-base"},{"type":"link","label":"Share View","href":"/0.109.7/setup-and-usages/share-view","docId":"setup-and-usages/share-view"},{"type":"link","label":"Keyboard Maneuver","href":"/0.109.7/setup-and-usages/keyboard-maneuver","docId":"setup-and-usages/keyboard-maneuver"},{"type":"link","label":"Views","href":"/0.109.7/setup-and-usages/views","docId":"setup-and-usages/views"},{"type":"link","label":"Account Settings","href":"/0.109.7/setup-and-usages/account-settings","docId":"setup-and-usages/account-settings"},{"type":"link","label":"Languages","href":"/0.109.7/setup-and-usages/languages","docId":"setup-and-usages/languages"},{"type":"link","label":"Expanded Form","href":"/0.109.7/setup-and-usages/expanded-form","docId":"setup-and-usages/expanded-form"},{"type":"link","label":"Import Airtable to NocoDB","href":"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free","docId":"setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free"},{"type":"link","label":"Usage Information","href":"/0.109.7/setup-and-usages/usage-information","docId":"setup-and-usages/usage-information"},{"type":"link","label":"Links","href":"/0.109.7/setup-and-usages/links","docId":"setup-and-usages/links"},{"type":"link","label":"Team & Auth","href":"/0.109.7/setup-and-usages/team-and-auth","docId":"setup-and-usages/team-and-auth"},{"type":"link","label":"Data Sources","href":"/0.109.7/setup-and-usages/meta-management","docId":"setup-and-usages/meta-management"},{"type":"link","label":"Audit","href":"/0.109.7/setup-and-usages/audit","docId":"setup-and-usages/audit"},{"type":"link","label":"Project settings","href":"/0.109.7/setup-and-usages/project-settings","docId":"setup-and-usages/project-settings"}]},{"type":"category","label":"Developer Resources","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Accessing APIs","href":"/0.109.7/developer-resources/accessing-apis","docId":"developer-resources/accessing-apis"},{"type":"link","label":"REST APIs","href":"/0.109.7/developer-resources/rest-apis","docId":"developer-resources/rest-apis"},{"type":"link","label":"NocoDB SDK","href":"/0.109.7/developer-resources/sdk","docId":"developer-resources/sdk"},{"type":"link","label":"Webhooks","href":"/0.109.7/developer-resources/webhooks","docId":"developer-resources/webhooks"},{"type":"link","label":"Upload via API","href":"/0.109.7/developer-resources/upload-via-api","docId":"developer-resources/upload-via-api"}]},{"type":"category","label":"Engineering","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture Overview","href":"/0.109.7/engineering/architecture","docId":"engineering/architecture"},{"type":"link","label":"Repository structure","href":"/0.109.7/engineering/repository-structure","docId":"engineering/repository-structure"},{"type":"link","label":"Development Setup","href":"/0.109.7/engineering/development-setup","docId":"engineering/development-setup"},{"type":"link","label":"Writing Unit Tests","href":"/0.109.7/engineering/unit-testing","docId":"engineering/unit-testing"},{"type":"link","label":"Playwright E2E Testing","href":"/0.109.7/engineering/playwright","docId":"engineering/playwright"},{"type":"link","label":"Releases & Builds","href":"/0.109.7/engineering/builds-and-releases","docId":"engineering/builds-and-releases"},{"type":"link","label":"i18n translation","href":"/0.109.7/engineering/translation","docId":"engineering/translation"}]},{"type":"link","label":"FAQs","href":"/0.109.7/FAQs","docId":"FAQs"}]},"docs":{"developer-resources/accessing-apis":{"id":"developer-resources/accessing-apis","title":"Accessing APIs","description":"How to access NocoDB APIs with Auth or API token?","sidebar":"tutorialSidebar"},"developer-resources/rest-apis":{"id":"developer-resources/rest-apis","title":"REST APIs","description":"NocoDB REST API Overview","sidebar":"tutorialSidebar"},"developer-resources/sdk":{"id":"developer-resources/sdk","title":"NocoDB SDK","description":"NocoDB SDK Overview","sidebar":"tutorialSidebar"},"developer-resources/upload-via-api":{"id":"developer-resources/upload-via-api","title":"Upload via API","description":"Upload files locally present or from public remote URL via API","sidebar":"tutorialSidebar"},"developer-resources/webhooks":{"id":"developer-resources/webhooks","title":"Webhooks","description":"Webhooks allows user to trigger on certain operations on following database operations","sidebar":"tutorialSidebar"},"engineering/architecture":{"id":"engineering/architecture","title":"Architecture Overview","description":"Simple overview of NocoDB architecture","sidebar":"tutorialSidebar"},"engineering/builds-and-releases":{"id":"engineering/builds-and-releases","title":"Releases & Builds","description":"NocoDB creates Docker and Binaries for each PR","sidebar":"tutorialSidebar"},"engineering/development-setup":{"id":"engineering/development-setup","title":"Development Setup","description":"How to set-up your development environment","sidebar":"tutorialSidebar"},"engineering/playwright":{"id":"engineering/playwright","title":"Playwright E2E Testing","description":"Overview to playwright based e2e tests","sidebar":"tutorialSidebar"},"engineering/repository-structure":{"id":"engineering/repository-structure","title":"Repository structure","description":"Repository Structure","sidebar":"tutorialSidebar"},"engineering/translation":{"id":"engineering/translation","title":"i18n translation","description":"Contribute to NocoDB\'s i18n translation","sidebar":"tutorialSidebar"},"engineering/unit-testing":{"id":"engineering/unit-testing","title":"Writing Unit Tests","description":"Overview to Unit Testing","sidebar":"tutorialSidebar"},"FAQs":{"id":"FAQs","title":"FAQs","description":"General FAQs","sidebar":"tutorialSidebar"},"getting-started/demos":{"id":"getting-started/demos","title":"Demos","description":"NocoDB Demos","sidebar":"tutorialSidebar"},"getting-started/environment-variables":{"id":"getting-started/environment-variables","title":"Environment Variables","description":"Environment Variables for NocoDB!","sidebar":"tutorialSidebar"},"getting-started/installation":{"id":"getting-started/installation","title":"Installation","description":"Simple installation - takes about three minutes!","sidebar":"tutorialSidebar"},"getting-started/upgrading":{"id":"getting-started/upgrading","title":"Upgrading","description":"Upgrading NocoDB : Docker, Node and Homebrew!","sidebar":"tutorialSidebar"},"index":{"id":"index","title":"Welcome","description":"NocoDB Documentation","sidebar":"tutorialSidebar"},"setup-and-usages/account-settings":{"id":"setup-and-usages/account-settings","title":"Account Settings","description":"NocoDB provides Account Settings for managing your account or more for super admin","sidebar":"tutorialSidebar"},"setup-and-usages/audit":{"id":"setup-and-usages/audit","title":"Audit","description":"NocoDB provides all the user operation logs under Audit log","sidebar":"tutorialSidebar"},"setup-and-usages/code-snippets":{"id":"setup-and-usages/code-snippets","title":"Code Snippets","description":"Code Snippets Examples in different ways","sidebar":"tutorialSidebar"},"setup-and-usages/column-operations":{"id":"setup-and-usages/column-operations","title":"Column Operations","description":"Column Operations: Fields, Sort & Filter","sidebar":"tutorialSidebar"},"setup-and-usages/column-types":{"id":"setup-and-usages/column-types","title":"Column Types","description":"NocoDB Column Types Overview","sidebar":"tutorialSidebar"},"setup-and-usages/dashboard":{"id":"setup-and-usages/dashboard","title":"Dashboard","description":"Accessing the Dashboard!","sidebar":"tutorialSidebar"},"setup-and-usages/display-value":{"id":"setup-and-usages/display-value","title":"Display Value","description":"Understanding Display Value in NocoDB!","sidebar":"tutorialSidebar"},"setup-and-usages/expanded-form":{"id":"setup-and-usages/expanded-form","title":"Expanded Form","description":"NocoDB provides Expanded Form to let you edit your data easily","sidebar":"tutorialSidebar"},"setup-and-usages/formulas":{"id":"setup-and-usages/formulas","title":"Formulas","description":"NocoDB Formulas Syntaxes and Functions","sidebar":"tutorialSidebar"},"setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free":{"id":"setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free","title":"Import Airtable to NocoDB","description":"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes","sidebar":"tutorialSidebar"},"setup-and-usages/keyboard-maneuver":{"id":"setup-and-usages/keyboard-maneuver","title":"Keyboard Maneuver","description":"Keyboard shortcuts","sidebar":"tutorialSidebar"},"setup-and-usages/languages":{"id":"setup-and-usages/languages","title":"Languages","description":"Multiple languages on Dashboard!","sidebar":"tutorialSidebar"},"setup-and-usages/link-to-another-record":{"id":"setup-and-usages/link-to-another-record","title":"Link To Another Record","description":"Understanding Link To Another Record (LTAR) Columns!","sidebar":"tutorialSidebar"},"setup-and-usages/links":{"id":"setup-and-usages/links","title":"Links","description":"Understanding Link Columns!","sidebar":"tutorialSidebar"},"setup-and-usages/lookup":{"id":"setup-and-usages/lookup","title":"Lookup","description":"Understanding Lookup Column!","sidebar":"tutorialSidebar"},"setup-and-usages/meta-management":{"id":"setup-and-usages/meta-management","title":"Data Sources","description":"NocoDB Data-Source sync, access control & re-config","sidebar":"tutorialSidebar"},"setup-and-usages/primary-key":{"id":"setup-and-usages/primary-key","title":"Primary Key","description":"Understanding Primary Key in NocoDB!","sidebar":"tutorialSidebar"},"setup-and-usages/project-settings":{"id":"setup-and-usages/project-settings","title":"Project settings","description":"General project configuration options","sidebar":"tutorialSidebar"},"setup-and-usages/rollup":{"id":"setup-and-usages/rollup","title":"Rollup","description":"Understanding Rollup Column!","sidebar":"tutorialSidebar"},"setup-and-usages/share-base":{"id":"setup-and-usages/share-base","title":"Share Base","description":"Procedures to share a base & generating embedded iframe","sidebar":"tutorialSidebar"},"setup-and-usages/share-view":{"id":"setup-and-usages/share-view","title":"Share View","description":"Procedures to share a view","sidebar":"tutorialSidebar"},"setup-and-usages/sync-schema":{"id":"setup-and-usages/sync-schema","title":"Sync Schema","description":"Schema changes made to database from outside NocoDB GUI can be synced","sidebar":"tutorialSidebar"},"setup-and-usages/table-operations":{"id":"setup-and-usages/table-operations","title":"Table Operations","description":"Table Operations: Row, Column, Quick Import, Export & Import","sidebar":"tutorialSidebar"},"setup-and-usages/team-and-auth":{"id":"setup-and-usages/team-and-auth","title":"Team & Auth","description":"Breakdown of roles & permissions for team user management","sidebar":"tutorialSidebar"},"setup-and-usages/usage-information":{"id":"setup-and-usages/usage-information","title":"Usage Information","description":"Non-sensitive and anonymous usage information","sidebar":"tutorialSidebar"},"setup-and-usages/views":{"id":"setup-and-usages/views","title":"Views","description":"Understanding Views in NocoDB!","sidebar":"tutorialSidebar"}}}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b2206ab4.41782673.js b/packages/noco-docs/dist/assets/js/b2206ab4.41782673.js new file mode 100644 index 0000000000..d770af419e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b2206ab4.41782673.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2384],{96212:e=>{e.exports=JSON.parse('{"label":"Primary Key","permalink":"/tags/primary-key","allTagsPath":"/tags","count":1,"items":[{"id":"fields/primary-key","title":"Primary key","description":"Understanding Primary Key in NocoDB!","permalink":"/fields/primary-key"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b22d161b.ce3594ac.js b/packages/noco-docs/dist/assets/js/b22d161b.ce3594ac.js new file mode 100644 index 0000000000..b6518decd7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b22d161b.ce3594ac.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2773],{3905:(e,t,o)=>{o.d(t,{Zo:()=>u,kt:()=>h});var a=o(67294);function n(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function r(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.push.apply(o,a)}return o}function i(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?r(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):r(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function l(e,t){if(null==e)return{};var o,a,n=function(e,t){if(null==e)return{};var o,a,n={},r=Object.keys(e);for(a=0;a<r.length;a++)o=r[a],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)o=r[a],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}var s=a.createContext({}),c=function(e){var t=a.useContext(s),o=t;return e&&(o="function"==typeof e?e(t):i(i({},t),e)),o},u=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var o=e.components,n=e.mdxType,r=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),d=c(o),m=n,h=d["".concat(s,".").concat(m)]||d[m]||p[m]||r;return o?a.createElement(h,i(i({ref:t},u),{},{components:o})):a.createElement(h,i({ref:t},u))}));function h(e,t){var o=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=o.length,i=new Array(r);i[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[d]="string"==typeof e?e:n,i[1]=l;for(var c=2;c<r;c++)i[c]=o[c];return a.createElement.apply(null,i)}return a.createElement.apply(null,o)}m.displayName="MDXCreateElement"},54954:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>p,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var a=o(87462),n=(o(67294),o(3905));const r={title:"Welcome",description:"NocoDB Documentation",slug:"/"},i=void 0,l={unversionedId:"index",id:"index",title:"Welcome",description:"NocoDB Documentation",source:"@site/docs/010.index.md",sourceDirName:".",slug:"/",permalink:"/",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/010.index.md",tags:[],version:"current",sidebarPosition:10,frontMatter:{title:"Welcome",description:"NocoDB Documentation",slug:"/"},sidebar:"tutorialSidebar",next:{title:"Quick start",permalink:"/getting-started/quick-start"}},s={},c=[{value:"Features",id:"features",level:2},{value:"Rich Spreadsheet Interface",id:"rich-spreadsheet-interface",level:3},{value:"App Store for Workflow Automations",id:"app-store-for-workflow-automations",level:3},{value:"Programmatic Access",id:"programmatic-access",level:3},{value:"Sync Schema",id:"sync-schema",level:3},{value:"Audit",id:"audit",level:3},{value:"Why are we building this?",id:"why-are-we-building-this",level:2},{value:"Our Mission",id:"our-mission",level:2},{value:"How can I contribute to NocoDB's development ?",id:"how-can-i-contribute-to-nocodbs-development-",level:2},{value:"Where can I join the NocoDB community?",id:"where-can-i-join-the-nocodb-community",level:2}],u={toc:c},d="wrapper";function p(e){let{components:t,...r}=e;return(0,n.kt)(d,(0,a.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:o(86216).Z,width:"1584",height:"396"})),(0,n.kt)("p",null,"NocoDB is a no-code database platform that allows teams to collaborate and build applications with ease of a familiar and intuitive spreadsheet interface. This allows even non-developers or business users to become software creators."),(0,n.kt)("p",null,"NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface! This allows you to build no-code applications collaboratively with teams. NocoDB currently works with MySQL, PostgreSQL & SQLite (only in Open Source) databases. "),(0,n.kt)("p",null,"Also, NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too."),(0,n.kt)("h2",{id:"features"},"Features"),(0,n.kt)("h3",{id:"rich-spreadsheet-interface"},"Rich Spreadsheet Interface"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Basic Operations: Create, Read, Update and Delete on Tables, Columns, and Records"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Fields Operations: Sort, Filter, Hide / Un-hide Fields"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Multiple Views Types: Grid (By default), Gallery, Form View and Kanban View"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","View Permissions Types: Collaborative Views & Locked Views"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Share Bases / Views: either Public or Private (with Password Protected)"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Variant Cell Types: ID, Links, Lookup, Rollup, SingleLineText, Attachment, Currency, Formula and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Access Control with Roles : Fine-grained Access Control at different levels"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","and more ...")),(0,n.kt)("h3",{id:"app-store-for-workflow-automations"},"App Store for Workflow Automations"),(0,n.kt)("p",null,"We provide different integrations in three main categories. See ",(0,n.kt)("a",{href:"/account-settings/oss-specific-details#app-store",target:"_blank"},"App Store")," for details."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Chat : Slack, Discord, Mattermost, and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Email : AWS SES, SMTP, MailerSend, and etc"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","Storage : AWS S3, Google Cloud Storage, Minio, and etc")),(0,n.kt)("h3",{id:"programmatic-access"},"Programmatic Access"),(0,n.kt)("p",null,"We provide the following ways to let users invoke actions in a programmatic way. You can use a token (either JWT or Social Auth) to sign your requests for authorization to NocoDB."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","REST APIs"),(0,n.kt)("li",{parentName:"ul"},"\u26a1 ","\xa0","NocoDB SDK")),(0,n.kt)("h3",{id:"sync-schema"},"Sync Schema"),(0,n.kt)("p",null,"We allow you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from environment to others. See ",(0,n.kt)("a",{href:"/data-source/data-source-overview#sync-metadata",target:"_blank"},"Sync Schema")," for details."),(0,n.kt)("h3",{id:"audit"},"Audit"),(0,n.kt)("p",null,"We are keeping all the user operation logs under one place. See ",(0,n.kt)("a",{href:"/data-source/data-source-overview#audit-logs",target:"_blank"},"Audit")," for details."),(0,n.kt)("h2",{id:"why-are-we-building-this"},"Why are we building this?"),(0,n.kt)("p",null,"Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by a Billion+ humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings has meant horrible access controls, vendor lockin, data lockin, abrupt price changes & most importantly a glass ceiling on what's possible in the future."),(0,n.kt)("h2",{id:"our-mission"},"Our Mission"),(0,n.kt)("p",null,"Our mission is to provide the most powerful no-code interface for databases which is Open Source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on internet."),(0,n.kt)("h2",{id:"how-can-i-contribute-to-nocodbs-development-"},"How can I contribute to NocoDB's development ?"),(0,n.kt)("p",null,"Please refer to ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/blob/develop/.github/CONTRIBUTING.md"},"here")," for the contribution guidelines."),(0,n.kt)("img",{src:"https://static.scarf.sh/a.png?x-pxid=c12a77cc-855e-4602-8a0f-614b2d0da56a",style:{margin:"0px"}}),(0,n.kt)("h2",{id:"where-can-i-join-the-nocodb-community"},"Where can I join the NocoDB community?"),(0,n.kt)("p",null,"Follow us for daily updates, content, and other activities with our community:"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.youtube.com/@nocodb"},"Youtube")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://twitter.com/nocodb"},"Twitter")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"http://discord.nocodb.com/"},"Discord")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb"},"GitHub")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://community.nocodb.com/"},"Community Forums")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.linkedin.com/company/nocodb"},"LinkedIn")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"https://www.reddit.com/r/NocoDB/"},"Reddit"))))}p.isMDXComponent=!0},86216:(e,t,o)=>{o.d(t,{Z:()=>a});const a=o.p+"assets/images/banner-0a7a485798fc16881259280a1227725d.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b3347e58.e4432810.js b/packages/noco-docs/dist/assets/js/b3347e58.e4432810.js new file mode 100644 index 0000000000..349c389b65 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b3347e58.e4432810.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[345],{12068:e=>{e.exports=JSON.parse('{"label":"Specific DB type","permalink":"/tags/specific-db-type","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/specific-db-type","title":"Specific DB type","description":"Create a Specific DB Type field","permalink":"/fields/field-types/custom-types/specific-db-type"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b444d910.aba4d313.js b/packages/noco-docs/dist/assets/js/b444d910.aba4d313.js new file mode 100644 index 0000000000..6b3b8eea79 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b444d910.aba4d313.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8958],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>f});var r=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=r.createContext({}),u=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},d=function(e){var t=u(e.components);return r.createElement(l.Provider,{value:t},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},m=r.forwardRef((function(e,t){var n=e.components,i=e.mdxType,o=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=u(n),m=i,f=p["".concat(l,".").concat(m)]||p[m]||c[m]||o;return n?r.createElement(f,a(a({ref:t},d),{},{components:n})):r.createElement(f,a({ref:t},d))}));function f(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=n.length,a=new Array(o);a[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:i,a[1]=s;for(var u=2;u<o;u++)a[u]=n[u];return r.createElement.apply(null,a)}return r.createElement.apply(null,n)}m.displayName="MDXCreateElement"},85507:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>c,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var r=n(87462),i=(n(67294),n(3905));const o={title:"Column Operations",description:"Column Operations: Fields, Sort & Filter"},a=void 0,s={unversionedId:"setup-and-usages/column-operations",id:"version-0.109.7/setup-and-usages/column-operations",title:"Column Operations",description:"Column Operations: Fields, Sort & Filter",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/column-operations",permalink:"/0.109.7/setup-and-usages/column-operations",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md",tags:[],version:"0.109.7",sidebarPosition:30,frontMatter:{title:"Column Operations",description:"Column Operations: Fields, Sort & Filter"},sidebar:"tutorialSidebar",previous:{title:"Table Operations",permalink:"/0.109.7/setup-and-usages/table-operations"},next:{title:"Column Types",permalink:"/0.109.7/setup-and-usages/column-types"}},l={},u=[{value:"Fields",id:"fields",level:2},{value:"Re-order Columns",id:"re-order-columns",level:3},{value:"Hide / Unhide Columns",id:"hide--unhide-columns",level:3},{value:"Sort",id:"sort",level:2},{value:"Filter",id:"filter",level:2},{value:"Enable NULL and EMPTY Filters",id:"enable-null-and-empty-filters",level:3},{value:"Supported Filters",id:"supported-filters",level:3}],d={toc:u},p="wrapper";function c(e){let{components:t,...n}=e;return(0,i.kt)(p,(0,r.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"fields"},"Fields"),(0,i.kt)("p",null,"Click ",(0,i.kt)("inlineCode",{parentName:"p"},"Fields")," to control the visibility of a field."),(0,i.kt)("img",{width:"1262",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189098625-8b4930e7-9bb4-4e8f-aa44-d2a28a31abdb.png"}),(0,i.kt)("p",null,"By default, all system fields will be hid. However, you can tick ",(0,i.kt)("inlineCode",{parentName:"p"},"Show system fields")," to make them visible."),(0,i.kt)("img",{width:"1268",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189098684-4fe2ebfc-df00-40fc-8f3c-1d4d14a8fb23.png"}),(0,i.kt)("h3",{id:"re-order-columns"},"Re-order Columns"),(0,i.kt)("p",null,"Column positions can be re-ordered. Open ",(0,i.kt)("inlineCode",{parentName:"p"},"Fields")," menu, and re-order fields as needed by dragging and dropping the ",(0,i.kt)("inlineCode",{parentName:"p"},"drag icon"),"."),(0,i.kt)("img",{width:"358",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189100445-d1a3816e-ddc0-4830-ba0a-a7b65597d264.png"}),(0,i.kt)("h3",{id:"hide--unhide-columns"},"Hide / Unhide Columns"),(0,i.kt)("p",null,"To hide / unhide columns, open ",(0,i.kt)("inlineCode",{parentName:"p"},"Fields")," menu, tick checkbox to keep the column visible, untick checkbox to remove it from the view."),(0,i.kt)("admonition",{type:"tip"},(0,i.kt)("p",{parentName:"admonition"},"You can create different grid views with different fields shown in each view.")),(0,i.kt)("img",{width:"355",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189100701-125b529b-5578-43ad-a707-e8c1738e788c.png"}),(0,i.kt)("h2",{id:"sort"},"Sort"),(0,i.kt)("p",null,"Sorting allows you to order contents alphabetically (A \u2192 Z) / (Z \u2192 A) (OR) in ascending / descending order. NocoDB allows nested sorting. You can choose column fields & order in which to apply nested sorting. Lookup, Formula, Nested Data are also supported in Sorting."),(0,i.kt)("img",{width:"462",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189100830-29b164a2-dd63-41f9-987a-09de53e0a0ec.png"}),(0,i.kt)("img",{width:"473",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189100869-e458814c-ef9b-4d88-8d7c-4e7de0f3b416.png"}),(0,i.kt)("img",{width:"607",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189100945-f2575174-f0d2-48e5-8b89-2d14baa873e5.png"}),(0,i.kt)("h2",{id:"filter"},"Filter"),(0,i.kt)("p",null,"Filters allow you to restrict / organize your data on the view as per your needs. NocoDB allows nested filters. You can choose multiple columns and conditions to apply filter. Between filters, you can opt for either ",(0,i.kt)("inlineCode",{parentName:"p"},"and")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"or")," mode operation. Lookup, Formula, Nested Data are also supported in Filtering."),(0,i.kt)("img",{width:"1011",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189102268-706ba965-e332-4c93-b2d2-ea04f0fabf11.png"}),(0,i.kt)("img",{width:"1021",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189102641-bd4f64b1-21fc-42a0-bbe6-2a019e213eda.png"}),(0,i.kt)("p",null,"You can also group several filters together using Filter Group."),(0,i.kt)("img",{width:"1025",alt:"image",src:"https://user-images.githubusercontent.com/35857179/189102932-aa0e31ef-554f-4e8b-ae0e-2024b7f4d35b.png"}),(0,i.kt)("h3",{id:"enable-null-and-empty-filters"},"Enable NULL and EMPTY Filters"),(0,i.kt)("p",null,"NULL filters (",(0,i.kt)("inlineCode",{parentName:"p"},"is null")," & ",(0,i.kt)("inlineCode",{parentName:"p"},"is not null"),") and EMPTY filters (",(0,i.kt)("inlineCode",{parentName:"p"},"is empty")," & ",(0,i.kt)("inlineCode",{parentName:"p"},"is not empty"),") are hidden by default. If you wish to filter out either one only, you may enable ",(0,i.kt)("inlineCode",{parentName:"p"},"Show NULL and EMPTY Filter")," in Project Settings."),(0,i.kt)("p",null,(0,i.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219009085-0308b2a9-10af-4afe-84b6-df52e42fb1a8.png",alt:"image"})),(0,i.kt)("p",null,"Otherwise, we can use Blank filters to filter out cells with NULL values and EMPTY values. "),(0,i.kt)("h3",{id:"supported-filters"},"Supported Filters"),(0,i.kt)("p",null,"Currently we support different types of filters for corresponding columns. Please refer the below matrix for details."),(0,i.kt)("iframe",{width:"100%",height:"700vh",src:"https://docs.google.com/spreadsheets/d/e/2PACX-1vTpCNKtA-szaXUKJEO5uuSIRnzUOK793MKnyBz9m2rQcwn7HqK19jPHeER-IIRWH9X56J78wfxXZuuv/pubhtml?gid=427284630&single=true&widget=true&headers=false"}))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b6006dd7.ba122014.js b/packages/noco-docs/dist/assets/js/b6006dd7.ba122014.js new file mode 100644 index 0000000000..0b36842c4e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b6006dd7.ba122014.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1676],{81921:i=>{i.exports=JSON.parse('{"label":"Multi-fields editor","permalink":"/tags/multi-fields-editor","allTagsPath":"/tags","count":1,"items":[{"id":"fields/multi-fields-editor","title":"Multi-field editor","description":"Understanding use of multi-field editor in NocoDB!","permalink":"/fields/multi-fields-editor"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b65801cb.8ae108a9.js b/packages/noco-docs/dist/assets/js/b65801cb.8ae108a9.js new file mode 100644 index 0000000000..877de4e2ca --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b65801cb.8ae108a9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[274],{69609:e=>{e.exports=JSON.parse('{"label":"Decimal","permalink":"/tags/decimal","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/numerical/decimal","title":"Decimal","description":"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.","permalink":"/fields/field-types/numerical/decimal"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/b7abf355.d2b6cda7.js b/packages/noco-docs/dist/assets/js/b7abf355.d2b6cda7.js new file mode 100644 index 0000000000..8b963f8585 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/b7abf355.d2b6cda7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3857],{3905:(e,t,r)=>{r.d(t,{Zo:()=>l,kt:()=>w});var a=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t){if(null==e)return{};var r,a,o=function(e,t){if(null==e)return{};var r,a,o={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=a.createContext({}),p=function(e){var t=a.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):s(s({},t),e)),r},l=function(e){var t=p(e.components);return a.createElement(c.Provider,{value:t},e.children)},k="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var r=e.components,o=e.mdxType,n=e.originalType,c=e.parentName,l=i(e,["components","mdxType","originalType","parentName"]),k=p(r),u=o,w=k["".concat(c,".").concat(u)]||k[u]||m[u]||n;return r?a.createElement(w,s(s({ref:t},l),{},{components:r})):a.createElement(w,s({ref:t},l))}));function w(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var n=r.length,s=new Array(n);s[0]=u;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[k]="string"==typeof e?e:o,s[1]=i;for(var p=2;p<n;p++)s[p]=r[p];return a.createElement.apply(null,s)}return a.createElement.apply(null,r)}u.displayName="MDXCreateElement"},17569:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>m,frontMatter:()=>n,metadata:()=>i,toc:()=>p});var a=r(87462),o=(r(67294),r(3905));const n={title:"Workspace overview",description:"This article briefs the concept of workspaces in NocoDB.",tags:["Workspaces","Overview"]},s=void 0,i={unversionedId:"workspaces/workspace-overview",id:"workspaces/workspace-overview",title:"Workspace overview",description:"This article briefs the concept of workspaces in NocoDB.",source:"@site/docs/030.workspaces/010.workspace-overview.md",sourceDirName:"030.workspaces",slug:"/workspaces/workspace-overview",permalink:"/workspaces/workspace-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/010.workspace-overview.md",tags:[{label:"Workspaces",permalink:"/tags/workspaces"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Workspace overview",description:"This article briefs the concept of workspaces in NocoDB.",tags:["Workspaces","Overview"]},sidebar:"tutorialSidebar",previous:{title:"Upgrading",permalink:"/getting-started/self-hosted/upgrading"},next:{title:"Create workspace",permalink:"/workspaces/create-workspace"}},c={},p=[{value:"Workspace context menu",id:"workspace-context-menu",level:3},{value:"Related articles",id:"related-articles",level:2}],l={toc:p},k="wrapper";function m(e){let{components:t,...n}=e;return(0,o.kt)(k,(0,a.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"NocoDB workspaces are a crucial feature for organizing and managing your data effectively:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("strong",{parentName:"p"},"Workspace Isolation"),": Each workspace contains its own set of bases, keeping your data separate and well-organized.")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("strong",{parentName:"p"},"Member Control"),": Workspaces have their own members and permissions, allowing you to control who can access and modify data within each workspace.")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("strong",{parentName:"p"},"Customized Settings"),": Workspaces offer unique settings and billing options, letting you customize configurations to suit specific needs.")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("strong",{parentName:"p"},"Base Association"),": Bases are tied exclusively to one workspace and can't be moved between workspaces, ensuring data integrity.")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},(0,o.kt)("strong",{parentName:"p"},"Member Flexibility"),": Members can be part of multiple workspaces, enabling versatile collaboration across different bases. You can also fine-tune their roles within each workspace."))),(0,o.kt)("p",null,"In summary, NocoDB workspaces streamline data management and member control, providing the flexibility and oversight necessary for various projects and teams."),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"The Open Source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces.")),(0,o.kt)("h3",{id:"workspace-context-menu"},"Workspace context menu"),(0,o.kt)("p",null,"The workspace context menu, conveniently located in the left top of sidebar, provides a list of all the workspaces accessible to you.\nYou can easily switch between different workspaces by simply clicking on the respective workspace name within this menu."),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:r(39415).Z,width:"2878",height:"1018"})),(0,o.kt)("h2",{id:"related-articles"},"Related articles"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/create-workspace"},"Create workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/workspace-collaboration"},"Invite team members to workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/workspace-collaboration#modifying-workspace-member-roles"},"Change role of a team member")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/workspace-collaboration#removing-workspace-members"},"Remove team member from workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#rename-workspace"},"Rename workspace")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#delete-workspace"},"Delete workspace"))))}m.isMDXComponent=!0},39415:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/workspace-context-menu-6c2b64ca701e4c01ed8706bde7426f2d.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ba1d2c5b.4ef702a6.js b/packages/noco-docs/dist/assets/js/ba1d2c5b.4ef702a6.js new file mode 100644 index 0000000000..dbde26d5e5 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ba1d2c5b.4ef702a6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6779],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>u});var r=a(67294);function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function n(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){o(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function l(e,t){if(null==e)return{};var a,r,o=function(e,t){if(null==e)return{};var a,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)>=0||(o[a]=e[a]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(o[a]=e[a])}return o}var s=r.createContext({}),p=function(e){var t=r.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):n(n({},t),e)),a},m=function(e){var t=p(e.components);return r.createElement(s.Provider,{value:t},e.children)},c="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},b=r.forwardRef((function(e,t){var a=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,m=l(e,["components","mdxType","originalType","parentName"]),c=p(a),b=o,u=c["".concat(s,".").concat(b)]||c[b]||d[b]||i;return a?r.createElement(u,n(n({ref:t},m),{},{components:a})):r.createElement(u,n({ref:t},m))}));function u(e,t){var a=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=a.length,n=new Array(i);n[0]=b;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[c]="string"==typeof e?e:o,n[1]=l;for(var p=2;p<i;p++)n[p]=a[p];return r.createElement.apply(null,n)}return r.createElement.apply(null,a)}b.displayName="MDXCreateElement"},80390:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>n,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>p});var r=a(87462),o=(a(67294),a(3905));const i={title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes",tags:["Bases","Import"],keywords:["NocoDB","Airtable","import Airtable","Airtable to NocoDB","Airtable to MySQL","Airtable to Postgres","Airtable to SQLite","Airtable to SQL server"]},n=void 0,l={unversionedId:"bases/import-base-from-airtable",id:"bases/import-base-from-airtable",title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes",source:"@site/docs/040.bases/040.import-base-from-airtable.md",sourceDirName:"040.bases",slug:"/bases/import-base-from-airtable",permalink:"/bases/import-base-from-airtable",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/040.import-base-from-airtable.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Import",permalink:"/tags/import"}],version:"current",sidebarPosition:40,frontMatter:{title:"Import Airtable to NocoDB",description:"A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes",tags:["Bases","Import"],keywords:["NocoDB","Airtable","import Airtable","Airtable to NocoDB","Airtable to MySQL","Airtable to Postgres","Airtable to SQLite","Airtable to SQL server"]},sidebar:"tutorialSidebar",previous:{title:"Create base",permalink:"/bases/create-base"},next:{title:"Base collaboration",permalink:"/bases/base-collaboration"}},s={},p=[{value:"Configuration options",id:"configuration-options",level:3},{value:"Get Airtable Credentials",id:"get-airtable-credentials",level:2},{value:"Create Personal Access Token",id:"create-personal-access-token",level:3},{value:"Retrieve API Key",id:"retrieve-api-key",level:3},{value:"Retrieve Share Base ID / URL",id:"retrieve-share-base-id--url",level:3},{value:"Related articles",id:"related-articles",level:2}],m={toc:p},c="wrapper";function d(e){let{components:t,...i}=e;return(0,o.kt)(c,(0,r.Z)({},m,i,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"NocoDB offers a streamlined process for seamlessly transferring your Airtable database to various database management systems, including MySQL, Postgres and SQLite, in just a matter of minutes. This feature is particularly useful for users who wish to migrate their Airtable database to a more robust and scalable database management system."),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Import from Airtable is in beta version. See ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/nocodb/nocodb/discussions/2122"},"Importing Airtable To NocoDB")," for the migration notes.")),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"To proceed, you must have valid Airtable Credentials. Ensure you have access to the following information from your Airtable account:"),(0,o.kt)("ul",{parentName:"admonition"},(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#retrieve-api-key"},"API key")," or ",(0,o.kt)("a",{parentName:"li",href:"#create-personal-access-token"},"Personal Access Token")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"#retrieve-share-base-id--url"},"Shared Base ID / URL")))),(0,o.kt)("p",null,"Open the ",(0,o.kt)("inlineCode",{parentName:"p"},"Quick Import- AIRTABLE")," modal begin the import process"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Hover over the base name in the left sidebar, click on the ",(0,o.kt)("inlineCode",{parentName:"li"},"...")," icon to open base context menu"),(0,o.kt)("li",{parentName:"ol"},"Select ",(0,o.kt)("inlineCode",{parentName:"li"},"Import Data")," from the base context menu"),(0,o.kt)("li",{parentName:"ol"},"Select ",(0,o.kt)("inlineCode",{parentName:"li"},"Airtable"))),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"import data",src:a(95856).Z,width:"2876",height:"1574"})),(0,o.kt)("p",null,"Alternatively, you can also open the ",(0,o.kt)("inlineCode",{parentName:"p"},"Quick Import- AIRTABLE")," modal from the ",(0,o.kt)("inlineCode",{parentName:"p"},"Base dashboard")),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Go to your Base dashboard, click on ",(0,o.kt)("inlineCode",{parentName:"p"},"Import Data")," ")),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("p",{parentName:"li"},"Select ",(0,o.kt)("inlineCode",{parentName:"p"},"Airtable")),(0,o.kt)("p",{parentName:"li"},(0,o.kt)("img",{alt:"import data",src:a(50180).Z,width:"2878",height:"984"})),(0,o.kt)("p",{parentName:"li"},(0,o.kt)("img",{alt:"import data",src:a(11013).Z,width:"2876",height:"1580"})))),(0,o.kt)("p",null,"Continue with the following steps on ",(0,o.kt)("inlineCode",{parentName:"p"},"Quick Import- AIRTABLE")," modal to complete the import process:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Input ",(0,o.kt)("a",{parentName:"li",href:"#retrieve-api-key"},"API key")," / ",(0,o.kt)("a",{parentName:"li",href:"#create-personal-access-token"},"Personal Access Token")," "),(0,o.kt)("li",{parentName:"ol"},"Input ",(0,o.kt)("a",{parentName:"li",href:"#retrieve-share-base-id--url"},"shared Base ID / URL")," "),(0,o.kt)("li",{parentName:"ol"},"Configure ",(0,o.kt)("a",{parentName:"li",href:"#configuration-options"},"Airtable import options")," (Optional)"),(0,o.kt)("li",{parentName:"ol"},"Click ",(0,o.kt)("inlineCode",{parentName:"li"},"Import"))),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"import data",src:a(89627).Z,width:"2874",height:"1786"})),(0,o.kt)("admonition",{type:"info"},(0,o.kt)("p",{parentName:"admonition"},"Wait until ",(0,o.kt)("inlineCode",{parentName:"p"},"Go To Dashboard")," button is activated on the modal. Import details are captured in log window.")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"import data",src:a(802).Z,width:"2876",height:"1786"})),(0,o.kt)("h3",{id:"configuration-options"},"Configuration options"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Data"),": If you disable this option, only tables and views will be created (schema), excluding actual data records."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Secondary Views"),": If you disable this option, only the primary grid view for each table will be imported, omitting any secondary views."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Rollup Columns"),": If you disable this option, you can skip the import of Rollup columns. "),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Lookup Columns"),": If you disable this option, you can skip the import of Lookup columns. "),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Attachments Columns"),": If you disable this option, you can skip the import of Attachment columns, which typically store file attachments associated with records."),(0,o.kt)("li",{parentName:"ol"},(0,o.kt)("strong",{parentName:"li"},"Import Formula Columns"),": Please be aware that import of formula columns from Airtable is currently not supported.")),(0,o.kt)("h2",{id:"get-airtable-credentials"},"Get Airtable Credentials"),(0,o.kt)("h3",{id:"create-personal-access-token"},"Create Personal Access Token"),(0,o.kt)("p",null,"Here are the steps to generate an Airtable Personal Access Token:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Visit the ",(0,o.kt)("a",{parentName:"li",href:"https://airtable.com/create/tokens"},"Airtable Create Tokens"),' page and click the "Create token" button.'),(0,o.kt)("li",{parentName:"ol"},"Provide a meaningful name for your token in the ",(0,o.kt)("inlineCode",{parentName:"li"},"Token name")," field."),(0,o.kt)("li",{parentName:"ol"},"Choose the necessary access scopes, with a minimum requirement of ",(0,o.kt)("inlineCode",{parentName:"li"},"data.records:read"),"."),(0,o.kt)("li",{parentName:"ol"},"Select the specific Base you wish to access with this token."),(0,o.kt)("li",{parentName:"ol"},"Confirm your choices by clicking the ",(0,o.kt)("inlineCode",{parentName:"li"},"Create token")," button."),(0,o.kt)("li",{parentName:"ol"},"Copy the newly generated ",(0,o.kt)("inlineCode",{parentName:"li"},"Personal Access Token")," for your use.")),(0,o.kt)("p",null,"For detailed information, you can refer to the ",(0,o.kt)("a",{parentName:"p",href:"https://airtable.com/developers/web/guides/personal-access-tokens"},"Airtable Personal Access Token guide"),"."),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:a(14436).Z,width:"2876",height:"1576"})),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:a(85105).Z,width:"2876",height:"1576"})),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"image",src:a(64269).Z,width:"2876",height:"1576"})),(0,o.kt)("h3",{id:"retrieve-api-key"},"Retrieve API Key"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Copy your Airtable API Key from ",(0,o.kt)("a",{parentName:"li",href:"https://airtable.com/create/apikey"},"Airtable create API key")," page\n",(0,o.kt)("img",{alt:"API Key",src:a(45460).Z,width:"2878",height:"996"}))),(0,o.kt)("h3",{id:"retrieve-share-base-id--url"},"Retrieve Share Base ID / URL"),(0,o.kt)("p",null,"See ",(0,o.kt)("a",{parentName:"p",href:"https://support.airtable.com/hc/en-us/articles/205752117-Creating-a-base-share-link-or-a-view-share-link#basesharelink"},"here")," for detailed procedures."),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Open ",(0,o.kt)("inlineCode",{parentName:"li"},"Share")," menu in your Project / Base"),(0,o.kt)("li",{parentName:"ol"},"Open tab ",(0,o.kt)("inlineCode",{parentName:"li"},"Share Publicly")),(0,o.kt)("li",{parentName:"ol"},"Enable ",(0,o.kt)("inlineCode",{parentName:"li"},"Turn on full base access")),(0,o.kt)("li",{parentName:"ol"},"Copy generated shared base URL")),(0,o.kt)("p",null,(0,o.kt)("img",{alt:"Shared base",src:a(42226).Z,width:"2876",height:"1422"})),(0,o.kt)("h2",{id:"related-articles"},"Related articles"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/create-base"},"Create an empty base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}d.isMDXComponent=!0},45460:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/airtable-api-key-877ce3d40ba4f18389ceede7c4fa50bb.png"},42226:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/airtable-share-base-c48341713680e60f512768432df19fec.png"},95856:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-import-airtable-1-cd2ddbebd57b9c068abe45423b77615e.png"},89627:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-import-airtable-2-6de583f3222e87d2fdc8cf337d7d1681.png"},802:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-import-airtable-3-f4b0605c3afdabdf6d54e8ec5504fe5b.png"},50180:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-import-from-dashboard-1-d84f2e26bb351110ca88c3e6e11e95ce.png"},11013:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/base-import-from-dashboard-2-d11037cc3192b2d1de4789cc2e03289f.png"},14436:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/pat-1-b1eb986ad72a1c426ccd1ad338b26ecc.png"},85105:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/pat-2-a3fcb811ed325a6d621f45e17e3aee2f.png"},64269:(e,t,a)=>{a.d(t,{Z:()=>r});const r=a.p+"assets/images/pat-3-fd78b26e00f9f01f395a073e54c465f6.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/bb516362.b1a37d07.js b/packages/noco-docs/dist/assets/js/bb516362.b1a37d07.js new file mode 100644 index 0000000000..f7e612aad8 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/bb516362.b1a37d07.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9721],{3905:(e,t,i)=>{i.d(t,{Zo:()=>d,kt:()=>u});var r=i(67294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function o(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,r)}return i}function a(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?o(Object(i),!0).forEach((function(t){n(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):o(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function s(e,t){if(null==e)return{};var i,r,n=function(e,t){if(null==e)return{};var i,r,n={},o=Object.keys(e);for(r=0;r<o.length;r++)i=o[r],t.indexOf(i)>=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)i=o[r],t.indexOf(i)>=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var l=r.createContext({}),c=function(e){var t=r.useContext(l),i=t;return e&&(i="function"==typeof e?e(t):a(a({},t),e)),i},d=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},p="mdxType",w={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},v=r.forwardRef((function(e,t){var i=e.components,n=e.mdxType,o=e.originalType,l=e.parentName,d=s(e,["components","mdxType","originalType","parentName"]),p=c(i),v=n,u=p["".concat(l,".").concat(v)]||p[v]||w[v]||o;return i?r.createElement(u,a(a({ref:t},d),{},{components:i})):r.createElement(u,a({ref:t},d))}));function u(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=i.length,a=new Array(o);a[0]=v;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:n,a[1]=s;for(var c=2;c<o;c++)a[c]=i[c];return r.createElement.apply(null,a)}return r.createElement.apply(null,i)}v.displayName="MDXCreateElement"},26238:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>w,frontMatter:()=>o,metadata:()=>s,toc:()=>c});var r=i(87462),n=(i(67294),i(3905));const o={title:"View overview",description:"Understanding Views in NocoDB!",tags:["Views","Overview"],keywords:["NocoDB view","view administration","view organization"]},a=void 0,s={unversionedId:"views/views-overview",id:"views/views-overview",title:"View overview",description:"Understanding Views in NocoDB!",source:"@site/docs/090.views/010.views-overview.md",sourceDirName:"090.views",slug:"/views/views-overview",permalink:"/views/views-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/010.views-overview.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"View overview",description:"Understanding Views in NocoDB!",tags:["Views","Overview"],keywords:["NocoDB view","view administration","view organization"]},sidebar:"tutorialSidebar",previous:{title:"Actions on record",permalink:"/records/actions-on-record"},next:{title:"Create view",permalink:"/views/create-view"}},l={},c=[{value:"View Types Supported",id:"view-types-supported",level:2},{value:"View Permission Types",id:"view-permission-types",level:2},{value:"Collaborative Views (default)",id:"collaborative-views-default",level:3},{value:"Locked Views",id:"locked-views",level:3}],d={toc:c},p="wrapper";function w(e){let{components:t,...o}=e;return(0,n.kt)(p,(0,r.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Views within NocoDB not only allow you to tailor the visual presentation to your liking but also provide independent\ncontrol over sorting and filtering of records within each view. Each view maintains its unique configuration for\nfilters, data display, and enabled fields, ensuring that modifications of these configuration does not impact any other view.\nThis feature empowers users to efficiently personalize their data visualization while\nmaintaining the integrity of other views."),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"View represents data from a table. Any updates to records in a view will be reflected in all other views of the same table.")),(0,n.kt)("h2",{id:"view-types-supported"},"View Types Supported"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("a",{parentName:"li",href:"view-types/grid"},"Grid View")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("a",{parentName:"li",href:"view-types/form"},"Form View")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("a",{parentName:"li",href:"view-types/gallery"},"Gallery View")),(0,n.kt)("li",{parentName:"ol"},(0,n.kt)("a",{parentName:"li",href:"view-types/kanban"},"Kanban View"))),(0,n.kt)("h2",{id:"view-permission-types"},"View Permission Types"),(0,n.kt)("p",null,"We can apply permission to each View. By default, views are ",(0,n.kt)("inlineCode",{parentName:"p"},"Collaborative"),". To see or change the view type, expand ",(0,n.kt)("inlineCode",{parentName:"p"},"view-tool-bar-menu")," as shown below."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"locked view",src:i(12085).Z,width:"2320",height:"864"})),(0,n.kt)("h3",{id:"collaborative-views-default"},"Collaborative Views (default)"),(0,n.kt)("p",null,'By default, views are set to "Collaborative," allowing members with edit permissions or higher to modify view configurations. In this mode, all members can read and write data to the view. This is the default mode for all views.'),(0,n.kt)("h3",{id:"locked-views"},"Locked Views"),(0,n.kt)("p",null,'With "Locked Views," no one can edit the view configurations until they are unlocked. In this mode, all members are restricted to reading data from the view and are unable to make any changes to its settings or content. This mode is useful when you want to share a view with others but don\'t want them to make any changes to it.'))}w.isMDXComponent=!0},12085:(e,t,i)=>{i.d(t,{Z:()=>r});const r=i.p+"assets/images/locked-view-98e409b4c0859f73d2d59b6e418d338b.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/bb53f532.b0a38ca1.js b/packages/noco-docs/dist/assets/js/bb53f532.b0a38ca1.js new file mode 100644 index 0000000000..32a45ddb63 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/bb53f532.b0a38ca1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1641],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>m});var i=l(67294);function n(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,i)}return l}function r(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?a(Object(l),!0).forEach((function(t){n(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):a(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function o(e,t){if(null==e)return{};var l,i,n=function(e,t){if(null==e)return{};var l,i,n={},a=Object.keys(e);for(i=0;i<a.length;i++)l=a[i],t.indexOf(l)>=0||(n[l]=e[l]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)l=a[i],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(n[l]=e[l])}return n}var s=i.createContext({}),d=function(e){var t=i.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},p=function(e){var t=d(e.components);return i.createElement(s.Provider,{value:t},e.children)},c="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var l=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),c=d(l),u=n,m=c["".concat(s,".").concat(u)]||c[u]||f[u]||a;return l?i.createElement(m,r(r({ref:t},p),{},{components:l})):i.createElement(m,r({ref:t},p))}));function m(e,t){var l=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=l.length,r=new Array(a);r[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:n,r[1]=o;for(var d=2;d<a;d++)r[d]=l[d];return i.createElement.apply(null,r)}return i.createElement.apply(null,l)}u.displayName="MDXCreateElement"},69619:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>f,frontMatter:()=>a,metadata:()=>o,toc:()=>d});var i=l(87462),n=(l(67294),l(3905));const a={title:"URL",tags:["Fields","Field types","Text based types","URL"]},r=void 0,o={unversionedId:"fields/field-types/text-based/url",id:"fields/field-types/text-based/url",title:"URL",description:"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with",source:"@site/docs/070.fields/040.field-types/010.text-based/050.url.md",sourceDirName:"070.fields/040.field-types/010.text-based",slug:"/fields/field-types/text-based/url",permalink:"/fields/field-types/text-based/url",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/050.url.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Text based types",permalink:"/tags/text-based-types"},{label:"URL",permalink:"/tags/url"}],version:"current",sidebarPosition:50,frontMatter:{title:"URL",tags:["Fields","Field types","Text based types","URL"]},sidebar:"tutorialSidebar",previous:{title:"Phone Number",permalink:"/fields/field-types/text-based/phonenumber"},next:{title:"Number",permalink:"/fields/field-types/numerical/number"}},s={},d=[{value:"Create an <code>URL</code> field",id:"create-an-url-field",level:2},{value:"Similar text based fields",id:"similar-text-based-fields",level:2}],p={toc:d},c="wrapper";function f(e){let{components:t,...a}=e;return(0,n.kt)(c,(0,i.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"URL")," field is text based field custom-built for storing URLs. It is a special type of ",(0,n.kt)("inlineCode",{parentName:"p"},"Single line text")," field with"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Optional validation for URL "),(0,n.kt)("li",{parentName:"ul"},"Cell display as clickable link")),(0,n.kt)("h2",{id:"create-an-url-field"},"Create an ",(0,n.kt)("inlineCode",{parentName:"h2"},"URL")," field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"URL")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Enable validation by toggling the ",(0,n.kt)("inlineCode",{parentName:"li"},"Validate URL")," checkbox."),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:l(77422).Z,width:"1268",height:"543"})),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"Specify default value without quotes."),(0,n.kt)("li",{parentName:"ul"},"Validation only ensures that the value entered is a valid URL. It does not check if the URL exists."))),(0,n.kt)("h2",{id:"similar-text-based-fields"},"Similar text based fields"),(0,n.kt)("p",null,"Following are the other text based fields available in NocoDB, custom-built for specific use cases."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/single-line-text"},"Single line text")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/long-text"},"Long text")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/email"},"Email")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/phonenumber"},"Phone"))))}f.isMDXComponent=!0},77422:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/url-a30d9d3d9ac692682756521452c4f3af.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/bd02e23f.b5382d60.js b/packages/noco-docs/dist/assets/js/bd02e23f.b5382d60.js new file mode 100644 index 0000000000..9b535191dc --- /dev/null +++ b/packages/noco-docs/dist/assets/js/bd02e23f.b5382d60.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2606],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>c});var l=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,l,r=function(e,t){if(null==e)return{};var n,l,r={},a=Object.keys(e);for(l=0;l<a.length;l++)n=a[l],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(l=0;l<a.length;l++)n=a[l],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=l.createContext({}),d=function(e){var t=l.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=d(e.components);return l.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},f=l.forwardRef((function(e,t){var n=e.components,r=e.mdxType,a=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=d(n),f=r,c=u["".concat(s,".").concat(f)]||u[f]||m[f]||a;return n?l.createElement(c,i(i({ref:t},p),{},{components:n})):l.createElement(c,i({ref:t},p))}));function c(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var a=n.length,i=new Array(a);i[0]=f;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:r,i[1]=o;for(var d=2;d<a;d++)i[d]=n[d];return l.createElement.apply(null,i)}return l.createElement.apply(null,n)}f.displayName="MDXCreateElement"},33872:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>m,frontMatter:()=>a,metadata:()=>o,toc:()=>d});var l=n(87462),r=(n(67294),n(3905));const a={title:"Phone Number",tags:["Fields","Field types","Text based types","Phone number"]},i=void 0,o={unversionedId:"fields/field-types/text-based/phonenumber",id:"fields/field-types/text-based/phonenumber",title:"Phone Number",description:"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.",source:"@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md",sourceDirName:"070.fields/040.field-types/010.text-based",slug:"/fields/field-types/text-based/phonenumber",permalink:"/fields/field-types/text-based/phonenumber",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Text based types",permalink:"/tags/text-based-types"},{label:"Phone number",permalink:"/tags/phone-number"}],version:"current",sidebarPosition:40,frontMatter:{title:"Phone Number",tags:["Fields","Field types","Text based types","Phone number"]},sidebar:"tutorialSidebar",previous:{title:"Email",permalink:"/fields/field-types/text-based/email"},next:{title:"URL",permalink:"/fields/field-types/text-based/url"}},s={},d=[{value:"Create a <code>Phone number</code> field",id:"create-a-phone-number-field",level:2},{value:"Similar text based fields",id:"similar-text-based-fields",level:2}],p={toc:d},u="wrapper";function m(e){let{components:t,...a}=e;return(0,r.kt)(u,(0,l.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Phone number")," field is text based field that allows you to store phone numbers. It also allows you to validate the phone number."),(0,r.kt)("h2",{id:"create-a-phone-number-field"},"Create a ",(0,r.kt)("inlineCode",{parentName:"h2"},"Phone number")," field"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,r.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,r.kt)("li",{parentName:"ol"},"Select the field type as ",(0,r.kt)("inlineCode",{parentName:"li"},"Phonenumber")," from the dropdown."),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," Enable validation by toggling the ",(0,r.kt)("inlineCode",{parentName:"li"},"Validate Phonenumber")," checkbox."),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:n(49895).Z,width:"1269",height:"564"})),(0,r.kt)("admonition",{type:"note"},(0,r.kt)("ul",{parentName:"admonition"},(0,r.kt)("li",{parentName:"ul"},"Specify default value without quotes."),(0,r.kt)("li",{parentName:"ul"},"Validation only ensures that the value entered is a valid phone number. It does not check if the phone number exists."))),(0,r.kt)("h2",{id:"similar-text-based-fields"},"Similar text based fields"),(0,r.kt)("p",null,"Following are the other text based fields available in NocoDB, custom-built for specific use cases."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/single-line-text"},"Single line text")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/long-text"},"Long text")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/url"},"URL")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/email"},"Email"))))}m.isMDXComponent=!0},49895:(e,t,n)=>{n.d(t,{Z:()=>l});const l=n.p+"assets/images/phone-32116538485830f7b2d7cf354f047669.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c1501dcb.9f4cc897.js b/packages/noco-docs/dist/assets/js/c1501dcb.9f4cc897.js new file mode 100644 index 0000000000..1ad9d9ab37 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c1501dcb.9f4cc897.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7096],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var a=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function i(e,t){if(null==e)return{};var n,a,o=function(e,t){if(null==e)return{};var n,a,o={},c=Object.keys(e);for(a=0;a<c.length;a++)n=c[a],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(a=0;a<c.length;a++)n=c[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=a.createContext({}),l=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},d=function(e){var t=l(e.components);return a.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},p=a.forwardRef((function(e,t){var n=e.components,o=e.mdxType,c=e.originalType,s=e.parentName,d=i(e,["components","mdxType","originalType","parentName"]),u=l(n),p=o,h=u["".concat(s,".").concat(p)]||u[p]||m[p]||c;return n?a.createElement(h,r(r({ref:t},d),{},{components:n})):a.createElement(h,r({ref:t},d))}));function h(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var c=n.length,r=new Array(c);r[0]=p;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[u]="string"==typeof e?e:o,r[1]=i;for(var l=2;l<c;l++)r[l]=n[l];return a.createElement.apply(null,r)}return a.createElement.apply(null,n)}p.displayName="MDXCreateElement"},36802:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>m,frontMatter:()=>c,metadata:()=>i,toc:()=>l});var a=n(87462),o=(n(67294),n(3905));const c={title:"Sync Schema",description:"Schema changes made to database from outside NocoDB GUI can be synced"},r=void 0,i={unversionedId:"setup-and-usages/sync-schema",id:"version-0.109.7/setup-and-usages/sync-schema",title:"Sync Schema",description:"Schema changes made to database from outside NocoDB GUI can be synced",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/sync-schema",permalink:"/0.109.7/setup-and-usages/sync-schema",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md",tags:[],version:"0.109.7",sidebarPosition:120,frontMatter:{title:"Sync Schema",description:"Schema changes made to database from outside NocoDB GUI can be synced"},sidebar:"tutorialSidebar",previous:{title:"Display Value",permalink:"/0.109.7/setup-and-usages/display-value"},next:{title:"Share Base",permalink:"/0.109.7/setup-and-usages/share-base"}},s={},l=[{value:"How to sync schema changes to NocoDB",id:"how-to-sync-schema-changes-to-nocodb",level:2},{value:"1. From the <code>Project menu</code>, click <code>Team & Settings</code>",id:"1-from-the-project-menu-click-team--settings",level:3},{value:"2. Click <code>Data Source</code> under SETTINGS, click <code>Sync Metadata</code> on the target base",id:"2-click-data-source-under-settings-click-sync-metadata-on-the-target-base",level:3},{value:"3. Changes carried outside GUI, identified by NocoDB are listed under <code>Sync state</code>",id:"3-changes-carried-outside-gui-identified-by-nocodb-are-listed-under-sync-state",level:3},{value:"4. Click <code>Sync Now</code> to complete Schema sync procedure",id:"4-click-sync-now-to-complete-schema-sync-procedure",level:3},{value:"Notes",id:"notes",level:4}],d={toc:l},u="wrapper";function m(e){let{components:t,...n}=e;return(0,o.kt)(u,(0,a.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"how-to-sync-schema-changes-to-nocodb"},"How to sync schema changes to NocoDB"),(0,o.kt)("p",null,"NocoDB allows you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from one environment to other."),(0,o.kt)("p",null,"Below are the steps to sync schema changes."),(0,o.kt)("h3",{id:"1-from-the-project-menu-click-team--settings"},"1. From the ",(0,o.kt)("inlineCode",{parentName:"h3"},"Project menu"),", click ",(0,o.kt)("inlineCode",{parentName:"h3"},"Team & Settings")),(0,o.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,o.kt)("h3",{id:"2-click-data-source-under-settings-click-sync-metadata-on-the-target-base"},"2. Click ",(0,o.kt)("inlineCode",{parentName:"h3"},"Data Source")," under SETTINGS, click ",(0,o.kt)("inlineCode",{parentName:"h3"},"Sync Metadata")," on the target base"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219831352-e6692ba5-5c94-4331-94ce-5796e57f87a1.png",alt:"image"})),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219831634-bbb6f256-45fb-4224-9f82-bc1bed6082db.png",alt:"image"})),(0,o.kt)("h3",{id:"3-changes-carried-outside-gui-identified-by-nocodb-are-listed-under-sync-state"},"3. Changes carried outside GUI, identified by NocoDB are listed under ",(0,o.kt)("inlineCode",{parentName:"h3"},"Sync state")),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"If changes made to the database are not visible, click ",(0,o.kt)("inlineCode",{parentName:"li"},"Reload")),(0,o.kt)("li",{parentName:"ul"},"Identified schema changes are identified for each table in ",(0,o.kt)("inlineCode",{parentName:"li"},"red")),(0,o.kt)("li",{parentName:"ul"},(0,o.kt)("inlineCode",{parentName:"li"},"Sync now")," button gets activated, if Schema changes are identified by NocoDB")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219831855-bcac229c-41b6-4689-b7e1-c3cdfe23a0a1.png",alt:"image"})),(0,o.kt)("h3",{id:"4-click-sync-now-to-complete-schema-sync-procedure"},"4. Click ",(0,o.kt)("inlineCode",{parentName:"h3"},"Sync Now")," to complete Schema sync procedure"),(0,o.kt)("h4",{id:"notes"},"Notes"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Column rename operation will be treated like ",(0,o.kt)("inlineCode",{parentName:"li"},"column delete")," & ",(0,o.kt)("inlineCode",{parentName:"li"},"column create")," operation."),(0,o.kt)("li",{parentName:"ol"},"Only table schema changes identified will be listed under ",(0,o.kt)("inlineCode",{parentName:"li"},"Sync state"),". Any changes to records are automatically synchronized.")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c1a34d6e.d506b0ed.js b/packages/noco-docs/dist/assets/js/c1a34d6e.d506b0ed.js new file mode 100644 index 0000000000..7747839bb3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c1a34d6e.d506b0ed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[636],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>f});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var s=n.createContext({}),p=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},c=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},d="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},y=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,s=e.parentName,c=a(e,["components","mdxType","originalType","parentName"]),d=p(r),y=o,f=d["".concat(s,".").concat(y)]||d[y]||m[y]||i;return r?n.createElement(f,l(l({ref:t},c),{},{components:r})):n.createElement(f,l({ref:t},c))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,l=new Array(i);l[0]=y;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a[d]="string"==typeof e?e:o,l[1]=a;for(var p=2;p<i;p++)l[p]=r[p];return n.createElement.apply(null,l)}return n.createElement.apply(null,r)}y.displayName="MDXCreateElement"},55619:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>m,frontMatter:()=>i,metadata:()=>a,toc:()=>p});var n=r(87462),o=(r(67294),r(3905));const i={title:"Geometry",tags:["Fields","Field types","Custom types","Geometry"]},l=void 0,a={unversionedId:"fields/field-types/custom-types/geometry",id:"fields/field-types/custom-types/geometry",title:"Geometry",description:"Create a geometry field",source:"@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/geometry",permalink:"/fields/field-types/custom-types/geometry",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/060.geometry.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Geometry",permalink:"/tags/geometry"}],version:"current",sidebarPosition:60,frontMatter:{title:"Geometry",tags:["Fields","Field types","Custom types","Geometry"]},sidebar:"tutorialSidebar",previous:{title:"Barcode",permalink:"/fields/field-types/custom-types/barcode"},next:{title:"Specific DB type",permalink:"/fields/field-types/custom-types/specific-db-type"}},s={},p=[{value:"Create a geometry field",id:"create-a-geometry-field",level:2}],c={toc:p},d="wrapper";function m(e){let{components:t,...r}=e;return(0,o.kt)(d,(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"create-a-geometry-field"},"Create a geometry field"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,o.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,o.kt)("li",{parentName:"ol"},"[",(0,o.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,o.kt)("li",{parentName:"ol"},"Select the field type as ",(0,o.kt)("inlineCode",{parentName:"li"},"Geometry")," from the dropdown."),(0,o.kt)("li",{parentName:"ol"},"Click on ",(0,o.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c1dfffdd.4f19eae2.js b/packages/noco-docs/dist/assets/js/c1dfffdd.4f19eae2.js new file mode 100644 index 0000000000..e18b06c1e9 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c1dfffdd.4f19eae2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4166],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>u});var n=l(67294);function i(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function r(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?a(Object(l),!0).forEach((function(t){i(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):a(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function o(e,t){if(null==e)return{};var l,n,i=function(e,t){if(null==e)return{};var l,n,i={},a=Object.keys(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||(i[l]=e[l]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(i[l]=e[l])}return i}var s=n.createContext({}),d=function(e){var t=n.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},p=function(e){var t=d(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var l=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),c=d(l),m=i,u=c["".concat(s,".").concat(m)]||c[m]||f[m]||a;return l?n.createElement(u,r(r({ref:t},p),{},{components:l})):n.createElement(u,r({ref:t},p))}));function u(e,t){var l=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=l.length,r=new Array(a);r[0]=m;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:i,r[1]=o;for(var d=2;d<a;d++)r[d]=l[d];return n.createElement.apply(null,r)}return n.createElement.apply(null,l)}m.displayName="MDXCreateElement"},9933:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>f,frontMatter:()=>a,metadata:()=>o,toc:()=>d});var n=l(87462),i=(l(67294),l(3905));const a={title:"Long text",tags:["Fields","Field types","Text based types","Long text"]},r=void 0,o={unversionedId:"fields/field-types/text-based/long-text",id:"fields/field-types/text-based/long-text",title:"Long text",description:"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.",source:"@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md",sourceDirName:"070.fields/040.field-types/010.text-based",slug:"/fields/field-types/text-based/long-text",permalink:"/fields/field-types/text-based/long-text",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/010.text-based/020.long-text.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Text based types",permalink:"/tags/text-based-types"},{label:"Long text",permalink:"/tags/long-text"}],version:"current",sidebarPosition:20,frontMatter:{title:"Long text",tags:["Fields","Field types","Text based types","Long text"]},sidebar:"tutorialSidebar",previous:{title:"Single line text",permalink:"/fields/field-types/text-based/single-line-text"},next:{title:"Email",permalink:"/fields/field-types/text-based/email"}},s={},d=[{value:"Create a <code>Long Text</code> field",id:"create-a-long-text-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Similar text based fields",id:"similar-text-based-fields",level:2}],p={toc:d},c="wrapper";function f(e){let{components:t,...a}=e;return(0,i.kt)(c,(0,n.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Long Text")," field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc."),(0,i.kt)("h2",{id:"create-a-long-text-field"},"Create a ",(0,i.kt)("inlineCode",{parentName:"h2"},"Long Text")," field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Long text")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:l(31881).Z,width:"1266",height:"634"})),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"Specify default value without quotes."),(0,i.kt)("li",{parentName:"ul"},"Use ",(0,i.kt)("inlineCode",{parentName:"li"},"Enter")," key to add new line."))),(0,i.kt)("h3",{id:"cell-display"},"Cell display"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Long Text")," field is displayed as a single line text field in the table view. Click on the expand icon in the cell to view the full text."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:l(22057).Z,width:"1390",height:"515"}),"\n",(0,i.kt)("img",{alt:"image",src:l(87565).Z,width:"885",height:"760"})),(0,i.kt)("h2",{id:"similar-text-based-fields"},"Similar text based fields"),(0,i.kt)("p",null,"Following are the other text based fields available in NocoDB, custom-built for specific use cases."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/single-line-text"},"Single line text")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/url"},"URL")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/email"},"Email")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/text-based/phonenumber"},"Phone"))))}f.isMDXComponent=!0},87565:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/long-text-expand-2-09cce09ec85355082b79054a189abb37.png"},22057:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/long-text-expand-d15b69ace110a10185959d52b19bce63.png"},31881:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/long-text-e19ae68198be92a063059023ef7effd0.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c2accac3.e9fa7af1.js b/packages/noco-docs/dist/assets/js/c2accac3.e9fa7af1.js new file mode 100644 index 0000000000..f28c657e8b --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c2accac3.e9fa7af1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2874],{78942:e=>{e.exports=JSON.parse('{"label":"Percent","permalink":"/tags/percent","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/numerical/percent","title":"Percent","description":"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.","permalink":"/fields/field-types/numerical/percent"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c3d0dca5.a4a03632.js b/packages/noco-docs/dist/assets/js/c3d0dca5.a4a03632.js new file mode 100644 index 0000000000..5302f2e685 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c3d0dca5.a4a03632.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8221],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>k});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function o(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?o(Object(a),!0).forEach((function(t){i(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):o(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function r(e,t){if(null==e)return{};var a,n,i=function(e,t){if(null==e)return{};var a,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)a=o[n],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)a=o[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var s=n.createContext({}),c=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},d=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,o=e.originalType,s=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),u=c(a),m=i,k=u["".concat(s,".").concat(m)]||u[m]||p[m]||o;return a?n.createElement(k,l(l({ref:t},d),{},{components:a})):n.createElement(k,l({ref:t},d))}));function k(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var o=a.length,l=new Array(o);l[0]=m;var r={};for(var s in t)hasOwnProperty.call(t,s)&&(r[s]=t[s]);r.originalType=e,r[u]="string"==typeof e?e:i,l[1]=r;for(var c=2;c<o;c++)l[c]=a[c];return n.createElement.apply(null,l)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},85445:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>p,frontMatter:()=>o,metadata:()=>r,toc:()=>c});var n=a(87462),i=(a(67294),a(3905));const o={title:"Data sources overview",description:"NocoDB Data-Source sync, access control & re-config",tags:["Data Sources","Overview"]},l=void 0,r={unversionedId:"data-source/data-source-overview",id:"data-source/data-source-overview",title:"Data sources overview",description:"NocoDB Data-Source sync, access control & re-config",source:"@site/docs/100.data-source/010.data-source-overview.md",sourceDirName:"100.data-source",slug:"/data-source/data-source-overview",permalink:"/data-source/data-source-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/100.data-source/010.data-source-overview.md",tags:[{label:"Data Sources",permalink:"/tags/data-sources"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Data sources overview",description:"NocoDB Data-Source sync, access control & re-config",tags:["Data Sources","Overview"]},sidebar:"tutorialSidebar",previous:{title:"Actions on view",permalink:"/views/actions-on-view"},next:{title:"Roles & permissions overview",permalink:"/roles-and-permissions/roles-permissions-overview"}},s={},c=[{value:"Overview",id:"overview",level:2},{value:"Accessing <code>Data Sources</code>",id:"accessing-data-sources",level:2},{value:"Sync Metadata",id:"sync-metadata",level:2},{value:"UI Access Control",id:"ui-access-control",level:2},{value:"Audit logs",id:"audit-logs",level:2},{value:"Relations",id:"relations",level:2},{value:"Junction table names within Relations",id:"junction-table-names-within-relations",level:3},{value:"Edit external database configuration parameters",id:"edit-external-database-configuration-parameters",level:2},{value:"Unlink data source",id:"unlink-data-source",level:2},{value:"Data source visibility",id:"data-source-visibility",level:2}],d={toc:c},u="wrapper";function p(e){let{components:t,...o}=e;return(0,i.kt)(u,(0,n.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"overview"},"Overview"),(0,i.kt)("p",null,"NocoDB allows you to connect to external data sources and get a unified spreadsheet view of your data. Activities related to external data sources can be managed from ",(0,i.kt)("inlineCode",{parentName:"p"},"Data Sources")," tab in ",(0,i.kt)("inlineCode",{parentName:"p"},"Base dashboard"),"."),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Data Sources")," tab includes following functionalities"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Connect/manage external data source"),(0,i.kt)("li",{parentName:"ol"},"UI Access Control"),(0,i.kt)("li",{parentName:"ol"},"Relations"),(0,i.kt)("li",{parentName:"ol"},"Audit logs")),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Currently only one external data source can be added per project.")),(0,i.kt)("h2",{id:"accessing-data-sources"},"Accessing ",(0,i.kt)("inlineCode",{parentName:"h2"},"Data Sources")),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"data source",src:a(84886).Z,width:"2876",height:"928"})),(0,i.kt)("h2",{id:"sync-metadata"},"Sync Metadata"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Sync Metadata")," button listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to sync metadata for"),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Reload")," button to refresh Sync state."),(0,i.kt)("li",{parentName:"ol"},"Any changes to the metadata identified will be listed in the ",(0,i.kt)("inlineCode",{parentName:"li"},"Sync State")," column"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Sync Now")," button to sync the metadata changes")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"sync metadata",src:a(33135).Z,width:"2876",height:"928"}),"\n",(0,i.kt)("img",{alt:"sync metadata",src:a(27312).Z,width:"2880",height:"1800"})),(0,i.kt)("p",null,"After the sync is complete, you can see the updated state in the ",(0,i.kt)("inlineCode",{parentName:"p"},"Sync State")," column. Sync modal also marks ",(0,i.kt)("inlineCode",{parentName:"p"},"Tables metadata is in Sync")," in the header."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"post sync",src:a(12724).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"ui-access-control"},"UI Access Control"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"UI ACL")," button listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to manage UI access control for"),(0,i.kt)("li",{parentName:"ol"},"On the UI ACL modal, you can see the list of tables available in the data source as rows & roles available as columns. Toggle checkboxes to enable/disable access to tables for specific roles."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save")," button to save the changes")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"ui acl",src:a(28835).Z,width:"2876",height:"928"}),"\n",(0,i.kt)("img",{alt:"ui acl",src:a(35781).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"audit-logs"},"Audit logs"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Audit")," button listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to access Audit logs for")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"audit",src:a(87482).Z,width:"2876",height:"928"}),"\n",(0,i.kt)("img",{alt:"audit logs",src:a(7356).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"relations"},"Relations"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Relations")," button listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to access ERD (Relations view) for")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"relations",src:a(21414).Z,width:"2876",height:"928"}),"\n",(0,i.kt)("img",{parentName:"p",src:"https://github.com/nocodb/nocodb/assets/86527202/c3775d27-f75d-4263-8903-dd66427de4b4",alt:"relations"})),(0,i.kt)("h3",{id:"junction-table-names-within-relations"},"Junction table names within Relations"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Enable ",(0,i.kt)("inlineCode",{parentName:"li"},"Show M2M Tables")," within ",(0,i.kt)("inlineCode",{parentName:"li"},"Project Settings")," menu"),(0,i.kt)("li",{parentName:"ul"},"Double-click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Show Columns")," to see additional checkboxes get enabled.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Enabling which you should be able to see junction tables and their table names.")))),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(46024).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"edit-external-database-configuration-parameters"},"Edit external database configuration parameters"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Edit")," icon listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to access ERD (Relations view) for\nGo to ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources"),", click ",(0,i.kt)("inlineCode",{parentName:"li"},"Edit")," icon, you can re-configure database credentials.",(0,i.kt)("br",{parentName:"li"}),"Please make sure database configuration parameters are valid. Any incorrect parameters could lead to schema loss!\n")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"relations",src:a(65879).Z,width:"2876",height:"928"}),"\n",(0,i.kt)("img",{alt:"edit db config",src:a(47588).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"unlink-data-source"},"Unlink data source"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete")," icon listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Actions")," column for the data source that you wish to Unlink")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"datasource unlink",src:a(26937).Z,width:"2876",height:"928"})),(0,i.kt)("h2",{id:"data-source-visibility"},"Data source visibility"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Access Base context menu by clicking on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Base")," name in the left sidebar"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Data Sources")," tab"),(0,i.kt)("li",{parentName:"ol"},"Toggle radio button listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Visibility")," column for the data source that you wish to hide/un-hide")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"datasource visibility",src:a(88285).Z,width:"2876",height:"928"})))}p.isMDXComponent=!0},7356:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/audit-logs-c781137e1b06c22923d2da20ca02fcf0.png"},87482:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/audit-8486b02fd5d59268886ab05c697bd747.png"},33135:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-2-85c6555101f32ed24b6ad18937e62f96.png"},28835:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-3-702f8672d11868999be1db2082089c6d.png"},21414:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-4-0d1aded7e8c2f19c54cbd3b1ae404194.png"},65879:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-edit-c8839805c570f2eaef08012a94f31246.png"},27312:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-meta-sync-04cd020f9b20939911dab34bb2a85820.png"},12724:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-post-sync-82f4dc6812378d0f4b119efaa7761735.png"},26937:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-unlink-517f290e2d4be67315dd4336bd699ce4.png"},88285:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-visibility-4c2aa0d95c0280597aac2754392abaae.png"},84886:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/data-source-a136125c9bc5031ada9df69ba6484d5a.png"},47588:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/edit-base-9071d099ef7f2dcb99604c31f0ab60f8.png"},46024:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/junction-table-28270cb936c6107d21e68edaaed04913.png"},35781:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/ui-acl-52e141d26e976acba3a9e8591c59ea18.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c42aaec2.c3eaeb58.js b/packages/noco-docs/dist/assets/js/c42aaec2.c3eaeb58.js new file mode 100644 index 0000000000..d01f0221fd --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c42aaec2.c3eaeb58.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[92],{30780:e=>{e.exports=JSON.parse('{"label":"Permissions","permalink":"/tags/permissions","allTagsPath":"/tags","count":3,"items":[{"id":"bases/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/bases/base-collaboration"},{"id":"roles-and-permissions/roles-permissions-overview","title":"Roles & permissions overview","description":"Learn about roles and permissions in NocoDB.","permalink":"/roles-and-permissions/roles-permissions-overview"},{"id":"workspaces/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/workspaces/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c76e097b.23e4c250.js b/packages/noco-docs/dist/assets/js/c76e097b.23e4c250.js new file mode 100644 index 0000000000..5896294407 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c76e097b.23e4c250.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1461],{3905:(e,t,r)=>{r.d(t,{Zo:()=>s,kt:()=>g});var a=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t){if(null==e)return{};var r,a,n=function(e,t){if(null==e)return{};var r,a,n={},i=Object.keys(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)r=i[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var p=a.createContext({}),m=function(e){var t=a.useContext(p),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},s=function(e){var t=m(e.components);return a.createElement(p.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},k=a.forwardRef((function(e,t){var r=e.components,n=e.mdxType,i=e.originalType,p=e.parentName,s=o(e,["components","mdxType","originalType","parentName"]),d=m(r),k=n,g=d["".concat(p,".").concat(k)]||d[k]||c[k]||i;return r?a.createElement(g,l(l({ref:t},s),{},{components:r})):a.createElement(g,l({ref:t},s))}));function g(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var i=r.length,l=new Array(i);l[0]=k;var o={};for(var p in t)hasOwnProperty.call(t,p)&&(o[p]=t[p]);o.originalType=e,o[d]="string"==typeof e?e:n,l[1]=o;for(var m=2;m<i;m++)l[m]=r[m];return a.createElement.apply(null,l)}return a.createElement.apply(null,r)}k.displayName="MDXCreateElement"},48496:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>p,contentTitle:()=>l,default:()=>c,frontMatter:()=>i,metadata:()=>o,toc:()=>m});var a=r(87462),n=(r(67294),r(3905));const i={title:"Roles & permissions overview",description:"Learn about roles and permissions in NocoDB.",tags:["Roles","Permissions","Overview"]},l=void 0,o={unversionedId:"roles-and-permissions/roles-permissions-overview",id:"roles-and-permissions/roles-permissions-overview",title:"Roles & permissions overview",description:"Learn about roles and permissions in NocoDB.",source:"@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md",sourceDirName:"110.roles-and-permissions",slug:"/roles-and-permissions/roles-permissions-overview",permalink:"/roles-and-permissions/roles-permissions-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/110.roles-and-permissions/010.roles-permissions-overview.md",tags:[{label:"Roles",permalink:"/tags/roles"},{label:"Permissions",permalink:"/tags/permissions"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Roles & permissions overview",description:"Learn about roles and permissions in NocoDB.",tags:["Roles","Permissions","Overview"]},sidebar:"tutorialSidebar",previous:{title:"Data sources overview",permalink:"/data-source/data-source-overview"},next:{title:"Collaboration overview",permalink:"/collaboration/collaboration-overview"}},p={},m=[{value:"Roles",id:"roles",level:2},{value:"Workspace level permissions",id:"workspace-level-permissions",level:3},{value:"Base level permissions",id:"base-level-permissions",level:3},{value:"Collaboration",id:"collaboration",level:4},{value:"Table & view operations",id:"table--view-operations",level:4},{value:"Record operations",id:"record-operations",level:4},{value:"Automations & advanced",id:"automations--advanced",level:4}],s={toc:m},d="wrapper";function c(e){let{components:t,...r}=e;return(0,n.kt)(d,(0,a.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"In NocoDB, we have roles that determine what people can do in a Workspace or Base. "),(0,n.kt)("p",null,"You can give a member one of these roles: "),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},"Creator "),(0,n.kt)("li",{parentName:"ul"},"Editor"),(0,n.kt)("li",{parentName:"ul"},"Commenter "),(0,n.kt)("li",{parentName:"ul"},"Viewer ")),(0,n.kt)("admonition",{type:"info"},(0,n.kt)("p",{parentName:"admonition"},"Role for a member, if assigned at base level carry precedence over workspace level role.")),(0,n.kt)("p",null,"When inviting a user, their role designation is initially assigned but can be modified later. Our role system\noperates incrementally, with higher-level roles encompassing all privileges of lower-level roles.\nThis hierarchy offers flexibility in permissions and fosters a transparent organizational structure\nin workspace or base management."),(0,n.kt)("h2",{id:"roles"},"Roles"),(0,n.kt)("p",null,'Roles serve as the basis for user privileges in NocoDB. They are associated with members at two levels:\nWorkspace and Base. When a member is invited to a Workspace with a specific role, like an "Editor," they\nautomatically have that role in all Bases within that Workspace. However, project owners or creators can customize\npermissions at the project level to align with specific needs. This dual-level role assignment system\nensures adaptable user permissions and access management in NocoDB.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"Owner"),': When a member creates a new Workspace or Base, they automatically become the Workspace or Base "Owner."\n\\This role grants exclusive privileges, including the authority to delete the Workspace or Base.\nThe "Owner" role\'s privileges are non-transferable, ensuring ownership and control integrity.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"Creator"),': The "Creator" role shares all privileges with an "Owner," except for deleting the workspace or base.\n"Creators" have full administrative rights, except for deletion authority, which remains exclusive to the "Owner."\nThis ensures balanced workspace or base management.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"Editor"),': An "Editor" can create and edit records but cannot modify the project schema,\nlike adding tables or columns. They strike a balance between data input and schema management.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"Commenter"),': The "Commenter" role cannot add or edit records but can provide comments on existing records\n, facilitating communication and feedback.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"Viewer"),': "Viewers" can only access records and associated comments, without the ability to contribute\nor make changes, ensuring controlled access for informational purposes.'),(0,n.kt)("p",null,(0,n.kt)("strong",{parentName:"p"},"No Access"),": This role, applied exclusively at the base level, revokes project access for the designated user,\nensuring robust security and access management."),(0,n.kt)("h3",{id:"workspace-level-permissions"},"Workspace level permissions"),(0,n.kt)("p",null,"The individual who creates the workspace is automatically designated as a Workspace owner.\nA workspace can have only one Owner. Access to bases within that workspace is granted to members based on their roles\nwithin the parent workspace. When a member becomes part of a workspace, the role at the workspace level is\nautomatically applied to them for all bases in that workspace, unless a specific exception is configured\nto override at base level."),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Task"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Owner"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Creator"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Editor"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Viewer"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Invite member to workspace"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Manage member access to workspace"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Remove member access from workspace"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"View members in workspace"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Delete Workspace"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Billing & upgrade options"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Create a new base"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Access existing bases at assigned roles"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")))),(0,n.kt)("h3",{id:"base-level-permissions"},"Base level permissions"),(0,n.kt)("h4",{id:"collaboration"},"Collaboration"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Task"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Owner"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Creator"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Editor"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Viewer"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Invite members to base at or below your role"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Manage members access to base"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Remove member access from a base"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"View members in a base"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Share base"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Share view"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})))),(0,n.kt)("h4",{id:"table--view-operations"},"Table & view operations"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Task"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Owner"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Creator"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Editor"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Viewer"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete table"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete fields"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete views"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Hide / un-hide / reorder fields"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete sort"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete filters"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete group-by"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")))),(0,n.kt)("h4",{id:"record-operations"},"Record operations"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Task"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Owner"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Creator"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Editor"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Viewer"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete record"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"View & add comment on a record"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"View record"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")))),(0,n.kt)("h4",{id:"automations--advanced"},"Automations & advanced"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Task"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Owner"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Creator"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Editor"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,n.kt)("th",{parentName:"tr",align:"center"},"Viewer"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"Add / modify / delete Webhook"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"}),(0,n.kt)("td",{parentName:"tr",align:"center"})),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"ERD (Project & Table relations)"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"API Snippet"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},"API Token"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f"),(0,n.kt)("td",{parentName:"tr",align:"center"},"\u2714\ufe0f")))))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c7dc53b4.01f863c3.js b/packages/noco-docs/dist/assets/js/c7dc53b4.01f863c3.js new file mode 100644 index 0000000000..a3b8291f1e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c7dc53b4.01f863c3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4513],{54830:e=>{e.exports=JSON.parse('{"label":"Single select","permalink":"/tags/single-select","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/select-based/single-select","title":"Single Select","description":"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/single-select"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/c93390fb.5b109333.js b/packages/noco-docs/dist/assets/js/c93390fb.5b109333.js new file mode 100644 index 0000000000..70e34cb8ab --- /dev/null +++ b/packages/noco-docs/dist/assets/js/c93390fb.5b109333.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4660],{83256:e=>{e.exports=JSON.parse('{"label":"Links based types","permalink":"/tags/links-based-types","allTagsPath":"/tags","count":3,"items":[{"id":"fields/field-types/links-based/links","title":"Links","description":"Links field type is used to establish relationship between tables & create links to other records.","permalink":"/fields/field-types/links-based/links"},{"id":"fields/field-types/links-based/lookup","title":"LookUp","description":"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer\'s name and address in the Orders table.","permalink":"/fields/field-types/links-based/lookup"},{"id":"fields/field-types/links-based/rollup","title":"Rollup","description":"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.","permalink":"/fields/field-types/links-based/rollup"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/cc44517e.04005ed9.js b/packages/noco-docs/dist/assets/js/cc44517e.04005ed9.js new file mode 100644 index 0000000000..7c8f9f9e9a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/cc44517e.04005ed9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1949],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>g});var a=n(67294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){r(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function l(e,t){if(null==e)return{};var n,a,r=function(e,t){if(null==e)return{};var n,a,r={},i=Object.keys(e);for(a=0;a<i.length;a++)n=i[a],t.indexOf(n)>=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(a=0;a<i.length;a++)n=i[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var s=a.createContext({}),c=function(e){var t=a.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},u=function(e){var t=c(e.components);return a.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,u=l(e,["components","mdxType","originalType","parentName"]),p=c(n),m=r,g=p["".concat(s,".").concat(m)]||p[m]||d[m]||i;return n?a.createElement(g,o(o({ref:t},u),{},{components:n})):a.createElement(g,o({ref:t},u))}));function g(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=n.length,o=new Array(i);o[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:r,o[1]=l;for(var c=2;c<i;c++)o[c]=n[c];return a.createElement.apply(null,o)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},93124:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>l,toc:()=>c});var a=n(87462),r=(n(67294),n(3905));const i={title:"i18n translation",description:"Contribute to NocoDB's i18n translation"},o=void 0,l={unversionedId:"engineering/translation",id:"version-0.109.7/engineering/translation",title:"i18n translation",description:"Contribute to NocoDB's i18n translation",source:"@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md",sourceDirName:"050.engineering",slug:"/engineering/translation",permalink:"/0.109.7/engineering/translation",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/070.translation.md",tags:[],version:"0.109.7",sidebarPosition:70,frontMatter:{title:"i18n translation",description:"Contribute to NocoDB's i18n translation"},sidebar:"tutorialSidebar",previous:{title:"Releases & Builds",permalink:"/0.109.7/engineering/builds-and-releases"},next:{title:"FAQs",permalink:"/0.109.7/FAQs"}},s={},c=[{value:"How to add / edit translations ?",id:"how-to-add--edit-translations-",level:2},{value:"Using Github",id:"using-github",level:3},{value:"Using Crowdin",id:"using-crowdin",level:3},{value:"Reference",id:"reference",level:4},{value:"How to add a new language ?",id:"how-to-add-a-new-language-",level:2},{value:"GitHub changes",id:"github-changes",level:4},{value:"Crowdin changes admin only",id:"crowdin-changes-admin-only",level:4},{value:"String Categories",id:"string-categories",level:2}],u={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,a.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"NocoDB supports 30+ foreign languages & community contributions are now simplified via ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com/"},"Crowdin"),".")),(0,r.kt)("h2",{id:"how-to-add--edit-translations-"},"How to add / edit translations ?"),(0,r.kt)("h3",{id:"using-github"},"Using Github"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"For English, make changes directly to ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/nocodb/nocodb/blob/develop/packages/nc-gui/lang/en.json"},"en.json")," & commit to ",(0,r.kt)("inlineCode",{parentName:"li"},"develop")),(0,r.kt)("li",{parentName:"ul"},"For any other language, use ",(0,r.kt)("inlineCode",{parentName:"li"},"crowdin")," option.")),(0,r.kt)("h3",{id:"using-crowdin"},"Using Crowdin"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Setup ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com"},"Crowdin")," account"),(0,r.kt)("li",{parentName:"ul"},"Join ",(0,r.kt)("a",{parentName:"li",href:"https://crowdin.com/project/nocodb"},"NocoDB")," project")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189181511-51b8671e-bee8-45d5-8216-a4a031bc6309.png",alt:"Screenshot 2022-09-08 at 10 26 23 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Click the language that you wish to contribute")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189182132-0eed7d5a-eaa1-43e1-929d-688f375763c1.png",alt:"Screenshot 2022-09-08 at 10 29 56 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Click the ",(0,r.kt)("inlineCode",{parentName:"li"},"Translate")," button; this opens up ",(0,r.kt)("inlineCode",{parentName:"li"},"Crowdin Online Editor"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189182450-999124e8-566c-40af-9d3c-731a11c1b6aa.png",alt:"Screenshot 2022-09-08 at 10 32 17 PM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Select string in ",(0,r.kt)("inlineCode",{parentName:"li"},"English")," on the left-hand menu bar ","[1]"),(0,r.kt)("li",{parentName:"ul"},"Propose changes ","[2]"),(0,r.kt)("li",{parentName:"ul"},"Save ","[3]","\nNote: Crowdin provides translation recommendation's as in ","[4]",". Click directly if it's apt\n")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189184278-69d688ed-4e5a-4d5a-b629-9f6d10d79346.png",alt:"Screenshot 2022-09-08 at 10 37 38 PM"})),(0,r.kt)("p",null,"A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follow up on remaining integration work items."),(0,r.kt)("h4",{id:"reference"},"Reference"),(0,r.kt)("p",null,"Refer following articles to get additional details about Crowdin Portal usage"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/crowdin-intro/"},"Translator Introduction")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/for-volunteer-translators/"},"Volunteer Translation Introduction")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://support.crowdin.com/online-editor/"},"Online Editor")," ")),(0,r.kt)("h2",{id:"how-to-add-a-new-language-"},"How to add a new language ?"),(0,r.kt)("h4",{id:"github-changes"},"GitHub changes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Update enumeration in ",(0,r.kt)("inlineCode",{parentName:"li"},"enums.ts")," ","[packages/nc-gui/lib/enums.ts]"),(0,r.kt)("li",{parentName:"ul"},"Map JSON path in ",(0,r.kt)("inlineCode",{parentName:"li"},"a.i18n.ts")," ","[packages/nc-gui/plugins/a.i18n.ts]")),(0,r.kt)("h4",{id:"crowdin-changes-admin-only"},"Crowdin changes ","[admin only]"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open ",(0,r.kt)("inlineCode",{parentName:"li"},"NocoDB")," project"),(0,r.kt)("li",{parentName:"ul"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Language")," on the home tab"),(0,r.kt)("li",{parentName:"ul"},"Select target language, ",(0,r.kt)("inlineCode",{parentName:"li"},"Update")),(0,r.kt)("li",{parentName:"ul"},"Update array in ",(0,r.kt)("inlineCode",{parentName:"li"},"tests/playwright/tests/language.spec.ts")," ")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189186570-5c1c7cad-6d3f-4937-ab4d-fa7ebe022cb1.png",alt:"Screenshot 2022-09-08 at 10 52 59 PM"})),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189186632-0b9f5f55-0550-4d8f-a8ae-7e9b9076774e.png",alt:"Screenshot 2022-09-08 at 10 54 04 PM"})),(0,r.kt)("h2",{id:"string-categories"},"String Categories"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"General"),": simple & common tokens (save, cancel, submit, open, close, home, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Objects"),": objects from NocoDB POV (project, table, field, column, view, page, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Title"),": screen headers (compact) (menu headers, modal headers)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Lables"),": text box/ radio/ field headers (few words) (Labels over textbox, radio buttons, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Activity"),"/ actions: work items (few words) (Create Project, Delete Table, Add Row, and such)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Tooltip"),": additional information associated with work items (usually lengthy) (Additional information provided for activity)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Placeholder"),": placeholders associated with various textboxes (Text placeholders)"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"Msg"),(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Info: general/success category for everything"),(0,r.kt)("li",{parentName:"ul"},"Error: warnings & errors"),(0,r.kt)("li",{parentName:"ul"},"Toast: pop-up toast messages")))),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Note: string name should be in camelCase. Use above list as priority order in case of ambiguity.")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/cc9fede1.611038ee.js b/packages/noco-docs/dist/assets/js/cc9fede1.611038ee.js new file mode 100644 index 0000000000..4e039ca37a --- /dev/null +++ b/packages/noco-docs/dist/assets/js/cc9fede1.611038ee.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5228],{10958:e=>{e.exports=JSON.parse('{"label":"Download","permalink":"/tags/download","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/cd3c4207.9d8849c5.js b/packages/noco-docs/dist/assets/js/cd3c4207.9d8849c5.js new file mode 100644 index 0000000000..430f1fb825 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/cd3c4207.9d8849c5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[485],{3905:(e,t,l)=>{l.d(t,{Zo:()=>d,kt:()=>m});var n=l(67294);function a(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function r(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function i(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?r(Object(l),!0).forEach((function(t){a(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):r(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function o(e,t){if(null==e)return{};var l,n,a=function(e,t){if(null==e)return{};var l,n,a={},r=Object.keys(e);for(n=0;n<r.length;n++)l=r[n],t.indexOf(l)>=0||(a[l]=e[l]);return a}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n<r.length;n++)l=r[n],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(a[l]=e[l])}return a}var s=n.createContext({}),p=function(e){var t=n.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):i(i({},t),e)),l},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var l=e.components,a=e.mdxType,r=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=p(l),f=a,m=u["".concat(s,".").concat(f)]||u[f]||c[f]||r;return l?n.createElement(m,i(i({ref:t},d),{},{components:l})):n.createElement(m,i({ref:t},d))}));function m(e,t){var l=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var r=l.length,i=new Array(r);i[0]=f;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:a,i[1]=o;for(var p=2;p<r;p++)i[p]=l[p];return n.createElement.apply(null,i)}return n.createElement.apply(null,l)}f.displayName="MDXCreateElement"},67047:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>i,default:()=>c,frontMatter:()=>r,metadata:()=>o,toc:()=>p});var n=l(87462),a=(l(67294),l(3905));const r={title:"Rollup",tags:["Fields","Field types","Links based types","Rollup"]},i=void 0,o={unversionedId:"fields/field-types/links-based/rollup",id:"fields/field-types/links-based/rollup",title:"Rollup",description:"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.",source:"@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md",sourceDirName:"070.fields/040.field-types/040.links-based",slug:"/fields/field-types/links-based/rollup",permalink:"/fields/field-types/links-based/rollup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/040.links-based/030.rollup.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Links based types",permalink:"/tags/links-based-types"},{label:"Rollup",permalink:"/tags/rollup"}],version:"current",sidebarPosition:30,frontMatter:{title:"Rollup",tags:["Fields","Field types","Links based types","Rollup"]},sidebar:"tutorialSidebar",previous:{title:"LookUp",permalink:"/fields/field-types/links-based/lookup"},next:{title:"Attachment",permalink:"/fields/field-types/custom-types/attachment"}},s={},p=[{value:"Create a Rollup Field",id:"create-a-rollup-field",level:2},{value:"Aggregation Functions",id:"aggregation-functions",level:3},{value:"Similar links-based fields",id:"similar-links-based-fields",level:2}],d={toc:p},u="wrapper";function c(e){let{components:t,...r}=e;return(0,a.kt)(u,(0,n.Z)({},d,r,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"Rollup")," fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data."),(0,a.kt)("h2",{id:"create-a-rollup-field"},"Create a Rollup Field"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,a.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,a.kt)("li",{parentName:"ol"},"Select the field type as ",(0,a.kt)("inlineCode",{parentName:"li"},"Lookup")," from the dropdown."),(0,a.kt)("li",{parentName:"ol"},"Select the link field from the dropdown. This is the field that links the current table to the related table."),(0,a.kt)("li",{parentName:"ol"},"Select the column for display from the dropdown. This is the column that will be displayed in the current table."),(0,a.kt)("li",{parentName:"ol"},"Select the aggregation function from the dropdown. This is the function that will be used to aggregate the data."),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:l(70306).Z,width:"1266",height:"712"})),(0,a.kt)("h3",{id:"aggregation-functions"},"Aggregation Functions"),(0,a.kt)("p",null,"NocoDB supports the following aggregation functions:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Count"),(0,a.kt)("li",{parentName:"ul"},"Minimum"),(0,a.kt)("li",{parentName:"ul"},"Maximum"),(0,a.kt)("li",{parentName:"ul"},"Average"),(0,a.kt)("li",{parentName:"ul"},"Sum"),(0,a.kt)("li",{parentName:"ul"},"Count Distinct"),(0,a.kt)("li",{parentName:"ul"},"Sum Distinct"),(0,a.kt)("li",{parentName:"ul"},"Average Distinct")),(0,a.kt)("h2",{id:"similar-links-based-fields"},"Similar links-based fields"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/links"},"Links")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/fields/field-types/links-based/lookup"},"Lookup"))))}c.isMDXComponent=!0},70306:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/rollup-da7090504e4ad62550d4f92115a10282.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/cd725ea4.d30f312a.js b/packages/noco-docs/dist/assets/js/cd725ea4.d30f312a.js new file mode 100644 index 0000000000..d06eaee956 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/cd725ea4.d30f312a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[800],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>g});var l=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,l)}return n}function a(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function u(e,t){if(null==e)return{};var n,l,o=function(e,t){if(null==e)return{};var n,l,o={},r=Object.keys(e);for(l=0;l<r.length;l++)n=r[l],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(l=0;l<r.length;l++)n=r[l],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var i=l.createContext({}),p=function(e){var t=l.useContext(i),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=p(e.components);return l.createElement(i.Provider,{value:t},e.children)},s="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},m=l.forwardRef((function(e,t){var n=e.components,o=e.mdxType,r=e.originalType,i=e.parentName,c=u(e,["components","mdxType","originalType","parentName"]),s=p(n),m=o,g=s["".concat(i,".").concat(m)]||s[m]||d[m]||r;return n?l.createElement(g,a(a({ref:t},c),{},{components:n})):l.createElement(g,a({ref:t},c))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var r=n.length,a=new Array(r);a[0]=m;var u={};for(var i in t)hasOwnProperty.call(t,i)&&(u[i]=t[i]);u.originalType=e,u[s]="string"==typeof e?e:o,a[1]=u;for(var p=2;p<r;p++)a[p]=n[p];return l.createElement.apply(null,a)}return l.createElement.apply(null,n)}m.displayName="MDXCreateElement"},87956:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>i,contentTitle:()=>a,default:()=>d,frontMatter:()=>r,metadata:()=>u,toc:()=>p});var l=n(87462),o=(n(67294),n(3905));const r={title:"Rollup",description:"Understanding Rollup Column!"},a=void 0,u={unversionedId:"setup-and-usages/rollup",id:"version-0.109.7/setup-and-usages/rollup",title:"Rollup",description:"Understanding Rollup Column!",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/rollup",permalink:"/0.109.7/setup-and-usages/rollup",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md",tags:[],version:"0.109.7",sidebarPosition:80,frontMatter:{title:"Rollup",description:"Understanding Rollup Column!"},sidebar:"tutorialSidebar",previous:{title:"Lookup",permalink:"/0.109.7/setup-and-usages/lookup"},next:{title:"Formulas",permalink:"/0.109.7/setup-and-usages/formulas"}},i={},p=[{value:"Rollup",id:"rollup",level:2},{value:"RollUp AGGREGATION functions supported",id:"rollup-aggregation-functions-supported",level:3},{value:"Adding a rollup column",id:"adding-a-rollup-column",level:2},{value:"1. Add new column",id:"1-add-new-column",level:4},{value:"2. Feed column name",id:"2-feed-column-name",level:4},{value:"3. Select Column type as 'Rollup'",id:"3-select-column-type-as-rollup",level:4},{value:"4. Choose Child Table",id:"4-choose-child-table",level:4},{value:"5. Choose on \u200bChild column",id:"5-choose-on-child-column",level:4},{value:"6. Select \u200bAggregate function",id:"6-select-aggregate-function",level:4},{value:"7. Click on Save",id:"7-click-on-save",level:4}],c={toc:p},s="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(s,(0,l.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"rollup"},"Rollup"),(0,o.kt)("p",null,"Sample Organization structure:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"5 Departments, each department has a team name & associated team code"),(0,o.kt)("li",{parentName:"ul"},"5 employees working at different Departments"),(0,o.kt)("li",{parentName:"ul"},"Teams ",(0,o.kt)("strong",{parentName:"li"},"has many")," Employees : relationship has been defined")),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189296162-536185f1-31ed-40df-b668-deed7ad630aa.png",alt:"Screenshot 2022-09-09 at 12 57 32 PM"})),(0,o.kt)("h3",{id:"rollup-aggregation-functions-supported"},"RollUp AGGREGATION functions supported"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Count"),(0,o.kt)("li",{parentName:"ul"},"Minimum"),(0,o.kt)("li",{parentName:"ul"},"Maximum"),(0,o.kt)("li",{parentName:"ul"},"Average"),(0,o.kt)("li",{parentName:"ul"},"Sum"),(0,o.kt)("li",{parentName:"ul"},"Count Distinct"),(0,o.kt)("li",{parentName:"ul"},"Sum Distinct"),(0,o.kt)("li",{parentName:"ul"},"Average Distinct")),(0,o.kt)("p",null,"Now, we can explore how to extract employee count information per team using ",(0,o.kt)("strong",{parentName:"p"},'"ROLLUP"')," columns"),(0,o.kt)("h2",{id:"adding-a-rollup-column"},"Adding a rollup column"),(0,o.kt)("h4",{id:"1-add-new-column"},"1. Add new column"),(0,o.kt)("p",null,"Click on '+' icon to the left of column headers in Departments table"),(0,o.kt)("h4",{id:"2-feed-column-name"},"2. Feed column name"),(0,o.kt)("h4",{id:"3-select-column-type-as-rollup"},"3. Select Column type as 'Rollup'"),(0,o.kt)("h4",{id:"4-choose-child-table"},"4. Choose Child Table"),(0,o.kt)("p",null,"Table Employee in our example"),(0,o.kt)("h4",{id:"5-choose-on-child-column"},"5. Choose on \u200bChild column"),(0,o.kt)("p",null,"Pick appropriate column for aggreagation"),(0,o.kt)("h4",{id:"6-select-aggregate-function"},"6. Select \u200bAggregate function"),(0,o.kt)("p",null,'Aggregate function will be "count" in our case'),(0,o.kt)("h4",{id:"7-click-on-save"},"7. Click on Save"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189297619-4d5c815b-6c97-41fa-978e-9b645448e508.png",alt:"Screenshot 2022-09-09 at 1 03 49 PM"})),(0,o.kt)("p",null,"Column ",(0,o.kt)("inlineCode",{parentName:"p"},"Employee Count")," is populated with appropriate information"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/194856842-e35a6424-fb95-4805-8efa-a559563e4b71.png",alt:"image"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ce2b01b6.1206b276.js b/packages/noco-docs/dist/assets/js/ce2b01b6.1206b276.js new file mode 100644 index 0000000000..34be841f3d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ce2b01b6.1206b276.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[211],{83769:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d01bd8c5.e0aecdfc.js b/packages/noco-docs/dist/assets/js/d01bd8c5.e0aecdfc.js new file mode 100644 index 0000000000..a143f95e24 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d01bd8c5.e0aecdfc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8820],{3905:(e,t,n)=>{n.d(t,{Zo:()=>u,kt:()=>g});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function a(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),p=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):s(s({},t),e)),n},u=function(e){var t=p(e.components);return r.createElement(c.Provider,{value:t},e.children)},l="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,i=e.originalType,c=e.parentName,u=a(e,["components","mdxType","originalType","parentName"]),l=p(n),f=o,g=l["".concat(c,".").concat(f)]||l[f]||d[f]||i;return n?r.createElement(g,s(s({ref:t},u),{},{components:n})):r.createElement(g,s({ref:t},u))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=n.length,s=new Array(i);s[0]=f;var a={};for(var c in t)hasOwnProperty.call(t,c)&&(a[c]=t[c]);a.originalType=e,a[l]="string"==typeof e?e:o,s[1]=a;for(var p=2;p<i;p++)s[p]=n[p];return r.createElement.apply(null,s)}return r.createElement.apply(null,n)}f.displayName="MDXCreateElement"},98962:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>s,default:()=>d,frontMatter:()=>i,metadata:()=>a,toc:()=>p});var r=n(87462),o=(n(67294),n(3905));const i={title:"Project settings",description:"General project configuration options"},s=void 0,a={unversionedId:"setup-and-usages/project-settings",id:"version-0.109.7/setup-and-usages/project-settings",title:"Project settings",description:"General project configuration options",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/project-settings",permalink:"/0.109.7/setup-and-usages/project-settings",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md",tags:[],version:"0.109.7",sidebarPosition:260,frontMatter:{title:"Project settings",description:"General project configuration options"},sidebar:"tutorialSidebar",previous:{title:"Audit",permalink:"/0.109.7/setup-and-usages/audit"},next:{title:"Accessing APIs",permalink:"/0.109.7/developer-resources/accessing-apis"}},c={},p=[{value:"Overview",id:"overview",level:2}],u={toc:p},l="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(l,(0,r.Z)({},u,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"overview"},"Overview"),(0,o.kt)("p",null,"Generic project configuration options are retained under ",(0,o.kt)("inlineCode",{parentName:"p"},"Project Settings")," menu. To access it, click the down arrow button next to Project Name on the top left side, then select ",(0,o.kt)("inlineCode",{parentName:"p"},"Team & Settings"),"."),(0,o.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,o.kt)("p",null,"Then, under SETTINGS, click ",(0,o.kt)("inlineCode",{parentName:"p"},"Project Settings"),"."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219830971-9518fa21-a45c-4d49-af3f-2f933d779ecd.png",alt:"image"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d12c5626.5d2428c6.js b/packages/noco-docs/dist/assets/js/d12c5626.5d2428c6.js new file mode 100644 index 0000000000..65ce080917 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d12c5626.5d2428c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1609],{1208:t=>{t.exports=JSON.parse('{"label":"XLSX","permalink":"/tags/xlsx","allTagsPath":"/tags","count":2,"items":[{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d3abb5b7.640f0573.js b/packages/noco-docs/dist/assets/js/d3abb5b7.640f0573.js new file mode 100644 index 0000000000..0666f99b7d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d3abb5b7.640f0573.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3447],{85920:e=>{e.exports=JSON.parse('{"label":"Grid View","permalink":"/tags/grid-view","allTagsPath":"/tags","count":12,"items":[{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","permalink":"/table-operations/filter"},{"id":"views/view-types/grid","title":"Grid","description":"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.","permalink":"/views/view-types/grid"},{"id":"table-operations/group-by","title":"Grouping records","description":"Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.","permalink":"/table-operations/group-by"},{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"},{"id":"table-operations/row-height","title":"Row height","description":"NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.","permalink":"/table-operations/row-height"},{"id":"table-operations/search","title":"Search","description":"NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.","permalink":"/table-operations/search"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"},{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","permalink":"/table-operations/sort"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d427e024.48b2c64a.js b/packages/noco-docs/dist/assets/js/d427e024.48b2c64a.js new file mode 100644 index 0000000000..bfe086b65f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d427e024.48b2c64a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5413],{3905:(e,t,a)=>{a.d(t,{Zo:()=>u,kt:()=>g});var n=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function c(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},i=Object.keys(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),l=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},u=function(e){var t=l(e.components);return n.createElement(s.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),p=l(a),m=r,g=p["".concat(s,".").concat(m)]||p[m]||d[m]||i;return a?n.createElement(g,o(o({ref:t},u),{},{components:a})):n.createElement(g,o({ref:t},u))}));function g(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,o=new Array(i);o[0]=m;var c={};for(var s in t)hasOwnProperty.call(t,s)&&(c[s]=t[s]);c.originalType=e,c[p]="string"==typeof e?e:r,o[1]=c;for(var l=2;l<i;l++)o[l]=a[l];return n.createElement.apply(null,o)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},6314:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>s,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>c,toc:()=>l});var n=a(87462),r=(a(67294),a(3905));const i={title:"Data Sources",description:"NocoDB Data-Source sync, access control & re-config"},o=void 0,c={unversionedId:"setup-and-usages/meta-management",id:"version-0.109.7/setup-and-usages/meta-management",title:"Data Sources",description:"NocoDB Data-Source sync, access control & re-config",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/meta-management",permalink:"/0.109.7/setup-and-usages/meta-management",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md",tags:[],version:"0.109.7",sidebarPosition:240,frontMatter:{title:"Data Sources",description:"NocoDB Data-Source sync, access control & re-config"},sidebar:"tutorialSidebar",previous:{title:"Team & Auth",permalink:"/0.109.7/setup-and-usages/team-and-auth"},next:{title:"Audit",permalink:"/0.109.7/setup-and-usages/audit"}},s={},l=[{value:"Overview",id:"overview",level:2},{value:"Accessing Data Sources",id:"accessing-data-sources",level:2},{value:"Sync Metadata",id:"sync-metadata",level:2},{value:"UI Access Control",id:"ui-access-control",level:2},{value:"ERD",id:"erd",level:2},{value:"Junction table names within ERD",id:"junction-table-names-within-erd",level:3},{value:"Edit external database configuration parameters",id:"edit-external-database-configuration-parameters",level:2},{value:"Unlink data source",id:"unlink-data-source",level:2},{value:"Data source visibility",id:"data-source-visibility",level:2}],u={toc:l},p="wrapper";function d(e){let{components:t,...a}=e;return(0,r.kt)(p,(0,n.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"overview"},"Overview"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources")," sub-menu includes "),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Database Metadata"),(0,r.kt)("li",{parentName:"ul"},"UI Access Control"),(0,r.kt)("li",{parentName:"ul"},"ERD"),(0,r.kt)("li",{parentName:"ul"},"Add/Remove new data source"),(0,r.kt)("li",{parentName:"ul"},"Edit existing data source configuration"),(0,r.kt)("li",{parentName:"ul"},"Edit data source visibility options ")),(0,r.kt)("p",null,"Note that, currently only one external data source can be added per project."),(0,r.kt)("h2",{id:"accessing-data-sources"},"Accessing Data Sources"),(0,r.kt)("p",null,"To access it, click the down arrow button next to Project Name on the top left side, then select ",(0,r.kt)("inlineCode",{parentName:"p"},"Team & Settings")," and clicking ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),"."),(0,r.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219833316-1fb234f0-583f-4ab8-b8d7-a6e249e7cd97.png",alt:"image"})),(0,r.kt)("h2",{id:"sync-metadata"},"Sync Metadata"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", click ",(0,r.kt)("inlineCode",{parentName:"p"},"Sync Metadata"),", you can see your metadata sync status. If it is out of sync, you can sync the schema. See ",(0,r.kt)("a",{parentName:"p",href:"/0.109.7/setup-and-usages/sync-schema"},"Sync Schema")," for more."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219833485-3bcaa6ec-88bc-47cc-b938-5abb4835dc31.png",alt:"image"})),(0,r.kt)("h2",{id:"ui-access-control"},"UI Access Control"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", click ",(0,r.kt)("inlineCode",{parentName:"p"},"UI ACL"),", you can control the access to each table by roles. "),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219833072-20e9f4ad-fd1c-4e96-9112-6edda1447ec6.png",alt:"image"})),(0,r.kt)("h2",{id:"erd"},"ERD"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", click ",(0,r.kt)("inlineCode",{parentName:"p"},"ERD"),", you can see the ERD of your database."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219832288-f6266544-a259-4667-95d9-0e5ce7ac5d27.png",alt:"image"})),(0,r.kt)("h3",{id:"junction-table-names-within-erd"},"Junction table names within ERD"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Enable ",(0,r.kt)("inlineCode",{parentName:"li"},"Show M2M Tables")," within ",(0,r.kt)("inlineCode",{parentName:"li"},"Project Settings")," menu"),(0,r.kt)("li",{parentName:"ul"},"Double click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Show Columns")," to see additional checkboxes get enabled.",(0,r.kt)("ul",{parentName:"li"},(0,r.kt)("li",{parentName:"ul"},"Enabling which you should be able to see junction tables and their table names.")))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219832436-9c1311c3-854c-4b31-9c94-8035dfba2a2b.png",alt:"image"})),(0,r.kt)("h2",{id:"edit-external-database-configuration-parameters"},"Edit external database configuration parameters"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", click ",(0,r.kt)("inlineCode",{parentName:"p"},"Edit"),", you can re-configure database credentials.",(0,r.kt)("br",{parentName:"p"}),"\n","Please make sure database configuration parameters are valid. Any incorrect parameters could lead to schema loss!"),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219832592-14209cbf-d980-4e14-9a59-bda1b778a74e.png",alt:"image"})),(0,r.kt)("h2",{id:"unlink-data-source"},"Unlink data source"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", click ",(0,r.kt)("inlineCode",{parentName:"p"},"Delete")," against the data source that you wish to un-link."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219832810-a3e9ed88-f732-4f30-9228-ff782be0b9d6.png",alt:"image"})),(0,r.kt)("h2",{id:"data-source-visibility"},"Data source visibility"),(0,r.kt)("p",null,"Go to ",(0,r.kt)("inlineCode",{parentName:"p"},"Data Sources"),", toggle ",(0,r.kt)("inlineCode",{parentName:"p"},"Radio-button")," against the data source that you wish to hide/un-hide."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219832914-f485099c-423f-4df8-bf00-b509288efe6d.png",alt:"image"})))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d5451361.2c2752cf.js b/packages/noco-docs/dist/assets/js/d5451361.2c2752cf.js new file mode 100644 index 0000000000..94e78525a3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d5451361.2c2752cf.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1205],{69033:e=>{e.exports=JSON.parse('{"label":"Profile","permalink":"/tags/profile","allTagsPath":"/tags","count":1,"items":[{"id":"account-settings/profile-page","title":"Profile page","description":"This article explains how to manage your profile page.","permalink":"/account-settings/profile-page"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d69d4db4.b43b4016.js b/packages/noco-docs/dist/assets/js/d69d4db4.b43b4016.js new file mode 100644 index 0000000000..388e5cf683 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d69d4db4.b43b4016.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[333],{29497:e=>{e.exports=JSON.parse('{"label":"Reorder","permalink":"/tags/reorder","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d767d123.08a3b65d.js b/packages/noco-docs/dist/assets/js/d767d123.08a3b65d.js new file mode 100644 index 0000000000..56d9ab93ba --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d767d123.08a3b65d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4743],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>h});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function s(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?s(Object(a),!0).forEach((function(t){i(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):s(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function o(e,t){if(null==e)return{};var a,n,i=function(e,t){if(null==e)return{};var a,n,i={},s=Object.keys(e);for(n=0;n<s.length;n++)a=s[n],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n<s.length;n++)a=s[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var r=n.createContext({}),p=function(e){var t=n.useContext(r),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},c=function(e){var t=p(e.components);return n.createElement(r.Provider,{value:t},e.children)},d="mdxType",b={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,s=e.originalType,r=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=p(a),m=i,h=d["".concat(r,".").concat(m)]||d[m]||b[m]||s;return a?n.createElement(h,l(l({ref:t},c),{},{components:a})):n.createElement(h,l({ref:t},c))}));function h(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var s=a.length,l=new Array(s);l[0]=m;var o={};for(var r in t)hasOwnProperty.call(t,r)&&(o[r]=t[r]);o.originalType=e,o[d]="string"==typeof e?e:i,l[1]=o;for(var p=2;p<s;p++)l[p]=a[p];return n.createElement.apply(null,l)}return n.createElement.apply(null,a)}m.displayName="MDXCreateElement"},54004:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>r,contentTitle:()=>l,default:()=>b,frontMatter:()=>s,metadata:()=>o,toc:()=>p});var n=a(87462),i=(a(67294),a(3905));const s={title:"Actions on base",description:"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.",tags:["Bases","Rename","Duplicate","Delete","Star","Relations"],keywords:["NocoDB base","base rename","base duplicate","base delete","base star","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},l=void 0,o={unversionedId:"bases/actions-on-base",id:"bases/actions-on-base",title:"Actions on base",description:"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.",source:"@site/docs/040.bases/070.actions-on-base.md",sourceDirName:"040.bases",slug:"/bases/actions-on-base",permalink:"/bases/actions-on-base",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/070.actions-on-base.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Rename",permalink:"/tags/rename"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Delete",permalink:"/tags/delete"},{label:"Star",permalink:"/tags/star"},{label:"Relations",permalink:"/tags/relations"}],version:"current",sidebarPosition:70,frontMatter:{title:"Actions on base",description:"Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.",tags:["Bases","Rename","Duplicate","Delete","Star","Relations"],keywords:["NocoDB base","base rename","base duplicate","base delete","base star","base context menu","base owner","base collaboration","base actions","base settings","base administration","base organization"]},sidebar:"tutorialSidebar",previous:{title:"Share base",permalink:"/bases/share-base"},next:{title:"Table overview",permalink:"/tables/table-overview"}},r={},p=[{value:"Base context menu",id:"base-context-menu",level:2},{value:"Rename base",id:"rename-base",level:2},{value:"Star base",id:"star-base",level:2},{value:"Remove a base from starred list",id:"remove-a-base-from-starred-list",level:3},{value:"Duplicate base",id:"duplicate-base",level:2},{value:"Delete base",id:"delete-base",level:2},{value:"Developer features",id:"developer-features",level:2},{value:"Base settings",id:"base-settings",level:3},{value:"REST APIs",id:"rest-apis",level:3},{value:"Relations",id:"relations",level:3},{value:"Related articles",id:"related-articles",level:2}],c={toc:p},d="wrapper";function b(e){let{components:t,...s}=e;return(0,i.kt)(d,(0,n.Z)({},c,s,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"base-context-menu"},"Base context menu"),(0,i.kt)("p",null,"The base context menu offers a selection of swift actions that can be executed on a base. To access this menu, click on the ellipsis symbol (",(0,i.kt)("inlineCode",{parentName:"p"},"..."),") located adjacent to the base name within the left sidebar.\n",(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("h2",{id:"rename-base"},"Rename base"),(0,i.kt)("p",null,"To modify the name of a base, you can easily do so by following these steps:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Rename")," option."),(0,i.kt)("li",{parentName:"ol"},"Input the new name for the base directly within the field provided and then press the ",(0,i.kt)("inlineCode",{parentName:"li"},"Enter")," key to confirm and save the updated name.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base rename",src:a(27757).Z,width:"2876",height:"970"})),(0,i.kt)("h2",{id:"star-base"},"Star base"),(0,i.kt)("p",null,"You can star a base by following simple steps below:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Add to Starred")," option."),(0,i.kt)("li",{parentName:"ol"},'Subsequently, the designated base will be placed into the "Starred" section, conveniently positioned within the left sidebar.')),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base starred",src:a(76692).Z,width:"2878",height:"1022"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Starred base will appear in both ",(0,i.kt)("inlineCode",{parentName:"p"},"Starred")," section and ",(0,i.kt)("inlineCode",{parentName:"p"},"All Bases")," section on the left sidebar.")),(0,i.kt)("h3",{id:"remove-a-base-from-starred-list"},"Remove a base from starred list"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Remove from Starred")," option."),(0,i.kt)("li",{parentName:"ol"},"Subsequently, the designated base will be removed from the ",(0,i.kt)("inlineCode",{parentName:"li"},"Starred")," section.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(14507).Z,width:"2878",height:"1414"})),(0,i.kt)("h2",{id:"duplicate-base"},"Duplicate base"),(0,i.kt)("p",null,"To duplicate a base, you can follow these straightforward steps:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Duplicate")," option."),(0,i.kt)("li",{parentName:"ol"},"Optionally, you can configure the duplication process with the following choices:\na) ",(0,i.kt)("inlineCode",{parentName:"li"},"Include data"),": You have the flexibility to choose whether to duplicate the base with or without its data.\nb) ",(0,i.kt)("inlineCode",{parentName:"li"},"Include views"),": You can decide whether to duplicate the base with or without its views."),(0,i.kt)("li",{parentName:"ol"},"Click the ",(0,i.kt)("inlineCode",{parentName:"li"},"Confirm")," button in the confirmation modal that pops up."),(0,i.kt)("li",{parentName:"ol"},"A new base will be created, mirroring the original base's schema and data/views based on the configurations specified in step 3.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(44358).Z,width:"2876",height:"1008"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"A duplicate base will be generated within the same workspace as the original base."),(0,i.kt)("li",{parentName:"ul"},"The duplicated base will be suffixed with ",(0,i.kt)("inlineCode",{parentName:"li"}," Copy")," in its name."),(0,i.kt)("li",{parentName:"ul"},"You will be designated as the ",(0,i.kt)("inlineCode",{parentName:"li"},"base owner")," upon the duplication of the base."),(0,i.kt)("li",{parentName:"ul"},"Existing base members will not be transferred to the duplicated base."))),(0,i.kt)("h2",{id:"delete-base"},"Delete base"),(0,i.kt)("p",null,"If you determine that a base is no longer necessary, you have the option to permanently remove it from your workspace. Deleting a base will delete all the tables and data associated with it."),(0,i.kt)("admonition",{type:"danger"},(0,i.kt)("p",{parentName:"admonition"},(0,i.kt)("strong",{parentName:"p"},"This action cannot be undone."))),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Only ",(0,i.kt)("strong",{parentName:"p"},"base owner")," can delete a workspace.")),(0,i.kt)("p",null,"To delete a base:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete")," option."),(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete base")," button on the confirmation dialog box.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base delete",src:a(75495).Z,width:"2876",height:"1156"})),(0,i.kt)("h2",{id:"developer-features"},"Developer features"),(0,i.kt)("h3",{id:"base-settings"},"Base settings"),(0,i.kt)("p",null,"Some general configurations are available for you to modify within the base settings."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Show M2M tables"),": Toggle this option to display/hide M2M tables within the left sidebar. Many-to-many relation is supported via a junction table & is hidden by default."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Show NULL in cells"),": Toggle this option to display/hide NULL values within the cells of the table. This helps differentiate against cells holding EMPTY string."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Show NULL & Empty in Filters"),": Enable 'additional' filters to differentiate fields containing NULL & Empty Strings. Default support for Blank treats both NULL & Empty strings alike.")),(0,i.kt)("p",null,"To configure base settings, you can follow these steps:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Settings")," option.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"bsae settings",src:a(1432).Z,width:"2876",height:"1146"})),(0,i.kt)("h3",{id:"rest-apis"},"REST APIs"),(0,i.kt)("p",null,"NocoDB provides a Swagger UI for each base. To access the Swagger UI, follow these steps:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"REST APIs")," option.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"swagger",src:a(96501).Z,width:"2874",height:"1746"})),(0,i.kt)("h3",{id:"relations"},"Relations"),(0,i.kt)("p",null,"NocoDB provides a visual representation of the relations between tables within a base. To access the relations diagram, follow these steps:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Initiate the base context menu by clicking on the ellipses ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," located next to the base name within the left sidebar."),(0,i.kt)("li",{parentName:"ol"},"In the dropdown menu that appears, choose the ",(0,i.kt)("inlineCode",{parentName:"li"},"Relations")," option.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base context menu",src:a(22743).Z,width:"2876",height:"1412"})),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"base relations",src:a(27688).Z,width:"2876",height:"1796"})),(0,i.kt)("h2",{id:"related-articles"},"Related articles"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/create-base"},"Create an empty base")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}b.isMDXComponent=!0},22743:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-context-menu-cc34dd7848044be500746b6e4855a535.png"},75495:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-delete-84305d1f43b929d0a95a9e291dc98327.png"},44358:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-duplicate-bb986db4421e157d466819cf8482a502.png"},27688:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-relations-bea924dc05a2e6fd0c5b27372e8a9e2c.png"},14507:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-remove-from-starred-2850121608f7a1225bbf8b8369259a26.png"},27757:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-rename-0fec27c17c50903fa633604dd921a617.png"},1432:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-settings-0d3389f235cef4d4fc1b5b673ea3c204.png"},76692:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-starred-0847b6638b1ed750ffd5ee5f9b3c4aad.png"},96501:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/base-swagger-66b41d2cd5d5e0a8f51ff026b6cfab85.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d96af704.04e6c2f5.js b/packages/noco-docs/dist/assets/js/d96af704.04e6c2f5.js new file mode 100644 index 0000000000..f74047c8f4 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d96af704.04e6c2f5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2582],{30004:e=>{e.exports=JSON.parse('{"label":"Show/Hide","permalink":"/tags/show-hide","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/d9e65f56.2ea8d2e6.js b/packages/noco-docs/dist/assets/js/d9e65f56.2ea8d2e6.js new file mode 100644 index 0000000000..a137c7a9a8 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/d9e65f56.2ea8d2e6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8379],{42899:e=>{e.exports=JSON.parse('{"label":"Api Tokens","permalink":"/tags/api-tokens","allTagsPath":"/tags","count":1,"items":[{"id":"account-settings/api-tokens","title":"API tokens","description":"This article explains how to create and delete API Tokens.","permalink":"/account-settings/api-tokens"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/da4f93ee.cbba1ab0.js b/packages/noco-docs/dist/assets/js/da4f93ee.cbba1ab0.js new file mode 100644 index 0000000000..6c5d78b514 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/da4f93ee.cbba1ab0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4882],{3905:(e,t,i)=>{i.d(t,{Zo:()=>c,kt:()=>m});var l=i(67294);function n(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function a(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),i.push.apply(i,l)}return i}function d(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?a(Object(i),!0).forEach((function(t){n(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):a(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function o(e,t){if(null==e)return{};var i,l,n=function(e,t){if(null==e)return{};var i,l,n={},a=Object.keys(e);for(l=0;l<a.length;l++)i=a[l],t.indexOf(i)>=0||(n[i]=e[i]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(l=0;l<a.length;l++)i=a[l],t.indexOf(i)>=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}var r=l.createContext({}),s=function(e){var t=l.useContext(r),i=t;return e&&(i="function"==typeof e?e(t):d(d({},t),e)),i},c=function(e){var t=s(e.components);return l.createElement(r.Provider,{value:t},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},f=l.forwardRef((function(e,t){var i=e.components,n=e.mdxType,a=e.originalType,r=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),p=s(i),f=n,m=p["".concat(r,".").concat(f)]||p[f]||u[f]||a;return i?l.createElement(m,d(d({ref:t},c),{},{components:i})):l.createElement(m,d({ref:t},c))}));function m(e,t){var i=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=i.length,d=new Array(a);d[0]=f;var o={};for(var r in t)hasOwnProperty.call(t,r)&&(o[r]=t[r]);o.originalType=e,o[p]="string"==typeof e?e:n,d[1]=o;for(var s=2;s<a;s++)d[s]=i[s];return l.createElement.apply(null,d)}return l.createElement.apply(null,i)}f.displayName="MDXCreateElement"},47221:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>r,contentTitle:()=>d,default:()=>u,frontMatter:()=>a,metadata:()=>o,toc:()=>s});var l=i(87462),n=(i(67294),i(3905));const a={title:"Multi-field editor",description:"Understanding use of multi-field editor in NocoDB!",tags:["Fields","Multi-fields editor","Productivity hacks"],keywords:["NocoDB fields editor","fields editor","fields editor in nocoDB","fields editor in nocoDB"]},d=void 0,o={unversionedId:"fields/multi-fields-editor",id:"fields/multi-fields-editor",title:"Multi-field editor",description:"Understanding use of multi-field editor in NocoDB!",source:"@site/docs/070.fields/050.multi-fields-editor.md",sourceDirName:"070.fields",slug:"/fields/multi-fields-editor",permalink:"/fields/multi-fields-editor",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/050.multi-fields-editor.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Multi-fields editor",permalink:"/tags/multi-fields-editor"},{label:"Productivity hacks",permalink:"/tags/productivity-hacks"}],version:"current",sidebarPosition:50,frontMatter:{title:"Multi-field editor",description:"Understanding use of multi-field editor in NocoDB!",tags:["Fields","Multi-fields editor","Productivity hacks"],keywords:["NocoDB fields editor","fields editor","fields editor in nocoDB","fields editor in nocoDB"]},sidebar:"tutorialSidebar",previous:{title:"Duration",permalink:"/fields/field-types/date-time-based/duration"},next:{title:"Actions on field",permalink:"/fields/actions-on-field"}},r={},s=[{value:"Accessing the Multi-Field Editor",id:"accessing-the-multi-field-editor",level:2},{value:"Adding fields",id:"adding-fields",level:2},{value:"Editing fields",id:"editing-fields",level:2},{value:"Deleting fields",id:"deleting-fields",level:2},{value:"Reordering fields",id:"reordering-fields",level:2},{value:"Show / Hide fields",id:"show--hide-fields",level:2}],c={toc:s},p="wrapper";function u(e){let{components:t,...a}=e;return(0,n.kt)(p,(0,l.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"NocoDB offers a handy tool for easily managing the fields within a table. With this tool, you can add, modify, rename, arrange, or hide fields efficiently. It's particularly useful when creating a new table structure or making changes to an existing one."),(0,n.kt)("h2",{id:"accessing-the-multi-field-editor"},"Accessing the Multi-Field Editor"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Navigate to the table you wish to edit"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Details")," in the navbar"),(0,n.kt)("li",{parentName:"ol"},"Select ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields")," tab")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Access",src:i(9458).Z,width:"2880",height:"1874"})),(0,n.kt)("h2",{id:"adding-fields"},"Adding fields"),(0,n.kt)("p",null,"On the Multi-field editor page, "),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Add Field")," button to add a new field."),(0,n.kt)("li",{parentName:"ol"},"Enter the field name and select the field type; configure default value (optional)."),(0,n.kt)("li",{parentName:"ol"},"Field will be added to the end of the list. You can reorder the fields as needed. You can add / update multiple fields in one go & save all at once."),(0,n.kt)("li",{parentName:"ol"},"Click ",(0,n.kt)("inlineCode",{parentName:"li"},"Save changes")," button to save the changes.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Add field",src:i(73928).Z,width:"2880",height:"1800"})),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"You can add / update/ delete multiple fields & save changes in one go."),(0,n.kt)("li",{parentName:"ul"},"Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Restore")," to discard edits to a particular field. Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Reset")," to discard all active changes on multi-field editor."))),(0,n.kt)("h2",{id:"editing-fields"},"Editing fields"),(0,n.kt)("p",null,"On the Multi-field editor page,"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on the field you wish to edit."),(0,n.kt)("li",{parentName:"ol"},"Make the necessary changes in the ",(0,n.kt)("inlineCode",{parentName:"li"},"Edit Field")," modal. You can update the field name, type, default value, and other attributes."),(0,n.kt)("li",{parentName:"ol"},"Updates to the field are recorded in the fields list view. You can add / update multiple fields in one go & save all at once."),(0,n.kt)("li",{parentName:"ol"},"Click ",(0,n.kt)("inlineCode",{parentName:"li"},"Save changes")," button to save the changes.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Edit field",src:i(88138).Z,width:"2880",height:"1800"})),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"You can add / update/ delete multiple fields & save changes in one go. "),(0,n.kt)("li",{parentName:"ul"},"Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Restore")," to discard edits to a particular field. Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Reset")," to discard all active changes on multi-field editor."))),(0,n.kt)("h2",{id:"deleting-fields"},"Deleting fields"),(0,n.kt)("p",null,"On the Multi-field editor page,"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Hover over the field you wish to delete, select ",(0,n.kt)("inlineCode",{parentName:"li"},"...")," icon to open context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Delete")," option to delete the field."),(0,n.kt)("li",{parentName:"ol"},"Deletions in the table are recorded in the fields list view. You can delete multiple fields in one go & save all at once."),(0,n.kt)("li",{parentName:"ol"},"Click ",(0,n.kt)("inlineCode",{parentName:"li"},"Save changes")," button to save the changes.")),(0,n.kt)("p",null,"After all the changes are made, click ",(0,n.kt)("inlineCode",{parentName:"p"},"Save changes")," button to save the changes."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Delete field",src:i(80884).Z,width:"2880",height:"1800"})),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"You can add / update/ delete multiple fields & save changes in one go."),(0,n.kt)("li",{parentName:"ul"},"Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Restore")," to discard edits to a particular field. Use ",(0,n.kt)("inlineCode",{parentName:"li"},"Reset")," to discard all active changes on multi-field editor."))),(0,n.kt)("h2",{id:"reordering-fields"},"Reordering fields"),(0,n.kt)("p",null,"On the Multi-field editor page, use ",(0,n.kt)("inlineCode",{parentName:"p"},"drag-drop")," handle to drag and drop the fields to reorder them."),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"The changes will only be saved when you click ",(0,n.kt)("inlineCode",{parentName:"p"},"Save changes")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Reorder fields",src:i(34411).Z,width:"2880",height:"1800"})),(0,n.kt)("h2",{id:"show--hide-fields"},"Show / Hide fields"),(0,n.kt)("p",null,"On the Multi-field editor page, use the ",(0,n.kt)("inlineCode",{parentName:"p"},"toggle")," button next to the fields to show or hide them."),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("p",{parentName:"admonition"},"The changes will only be saved when you click ",(0,n.kt)("inlineCode",{parentName:"p"},"Save changes")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Show / Hide fields",src:i(64651).Z,width:"2880",height:"1800"})))}u.isMDXComponent=!0},9458:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-1-032b8644d896ccd06472a3dbdf335c7f.png"},73928:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-2-32a839ed9117843e3405f9f74d2b0d69.png"},88138:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-3-821415bc38b70b7c92bd9b8fac9a377f.png"},80884:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-4-a14d5c9b87c37429d161a93a236c66ea.png"},64651:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-6-b33d2e2179328483dfd8b116afdf8328.png"},34411:(e,t,i)=>{i.d(t,{Z:()=>l});const l=i.p+"assets/images/editor-7-2b64de97ac28d7b5818629d900f04947.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/dc1c5b3c.37aae50a.js b/packages/noco-docs/dist/assets/js/dc1c5b3c.37aae50a.js new file mode 100644 index 0000000000..a1b186f229 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/dc1c5b3c.37aae50a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1576],{50742:t=>{t.exports=JSON.parse('{"label":"JSON","permalink":"/tags/json","allTagsPath":"/tags","count":3,"items":[{"id":"table-operations/download","title":"Download","description":"NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.","permalink":"/table-operations/download"},{"id":"tables/import-data-into-existing-table","title":"Import data into an existing table","description":"Learn how to import data into an existing table in NocoDB.","permalink":"/tables/import-data-into-existing-table"},{"id":"fields/field-types/custom-types/json","title":"JSON","description":"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.","permalink":"/fields/field-types/custom-types/json"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ded49de4.21c12063.js b/packages/noco-docs/dist/assets/js/ded49de4.21c12063.js new file mode 100644 index 0000000000..f1e12429e7 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ded49de4.21c12063.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9868],{3905:(e,t,a)=>{a.d(t,{Zo:()=>m,kt:()=>c});var n=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function i(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function d(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var o=n.createContext({}),p=function(e){var t=n.useContext(o),a=t;return e&&(a="function"==typeof e?e(t):i(i({},t),e)),a},m=function(e){var t=p(e.components);return n.createElement(o.Provider,{value:t},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,l=e.originalType,o=e.parentName,m=d(e,["components","mdxType","originalType","parentName"]),s=p(a),f=r,c=s["".concat(o,".").concat(f)]||s[f]||u[f]||l;return a?n.createElement(c,i(i({ref:t},m),{},{components:a})):n.createElement(c,i({ref:t},m))}));function c(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var l=a.length,i=new Array(l);i[0]=f;var d={};for(var o in t)hasOwnProperty.call(t,o)&&(d[o]=t[o]);d.originalType=e,d[s]="string"==typeof e?e:r,i[1]=d;for(var p=2;p<l;p++)i[p]=a[p];return n.createElement.apply(null,i)}return n.createElement.apply(null,a)}f.displayName="MDXCreateElement"},34654:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>i,default:()=>u,frontMatter:()=>l,metadata:()=>d,toc:()=>p});var n=a(87462),r=(a(67294),a(3905));const l={title:"Date Time",tags:["Fields","Field types","Date & Time"]},i=void 0,d={unversionedId:"fields/field-types/date-time-based/date-time",id:"fields/field-types/date-time-based/date-time",title:"Date Time",description:"Date Time field type is used to store both date and time values in a single field.",source:"@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md",sourceDirName:"070.fields/040.field-types/070.date-time-based",slug:"/fields/field-types/date-time-based/date-time",permalink:"/fields/field-types/date-time-based/date-time",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Date & Time",permalink:"/tags/date-time"}],version:"current",sidebarPosition:10,frontMatter:{title:"Date Time",tags:["Fields","Field types","Date & Time"]},sidebar:"tutorialSidebar",previous:{title:"Conditional expressions",permalink:"/fields/field-types/formula/conditional-expressions"},next:{title:"Date",permalink:"/fields/field-types/date-time-based/date"}},o={},p=[{value:"Create a date time field",id:"create-a-date-time-field",level:2},{value:"Supported date formats",id:"supported-date-formats",level:3},{value:"Supported time formats",id:"supported-time-formats",level:3},{value:"Related fields",id:"related-fields",level:2}],m={toc:p},s="wrapper";function u(e){let{components:t,...l}=e;return(0,r.kt)(s,(0,n.Z)({},m,l,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"Date Time")," field type is used to store both date and time values in a single field."),(0,r.kt)("h2",{id:"create-a-date-time-field"},"Create a date time field"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,r.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,r.kt)("li",{parentName:"ol"},"Select the field type as ",(0,r.kt)("inlineCode",{parentName:"li"},"DateTime")," from the dropdown."),(0,r.kt)("li",{parentName:"ol"},"Configure ",(0,r.kt)("inlineCode",{parentName:"li"},"Date Format")),(0,r.kt)("li",{parentName:"ol"},"Configure ",(0,r.kt)("inlineCode",{parentName:"li"},"Time Format")),(0,r.kt)("li",{parentName:"ol"},"[",(0,r.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure default value"),(0,r.kt)("li",{parentName:"ol"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:a(40278).Z,width:"1268",height:"681"})),(0,r.kt)("h3",{id:"supported-date-formats"},"Supported date formats"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Format"),(0,r.kt)("th",{parentName:"tr",align:null},"Example"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"YYYY-MM-DD"),(0,r.kt)("td",{parentName:"tr",align:null},"2023-09-22")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"YYYY/MM/DD"),(0,r.kt)("td",{parentName:"tr",align:null},"2023/09/22")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DD-MM-YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"22-09-2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"MM-DD-YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"09-22-2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DD/MM/YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"22/09/2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"MM/DD/YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"09/22/2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"DD MM YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"22 09 2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"MM DD YYYY"),(0,r.kt)("td",{parentName:"tr",align:null},"09 22 2023")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"YYYY MM DD"),(0,r.kt)("td",{parentName:"tr",align:null},"2023 09 22")))),(0,r.kt)("h3",{id:"supported-time-formats"},"Supported time formats"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:null},"Format"),(0,r.kt)("th",{parentName:"tr",align:null},"Example"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"HH:mm:ss"),(0,r.kt)("td",{parentName:"tr",align:null},"12:45:30")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:null},"HH:mm"),(0,r.kt)("td",{parentName:"tr",align:null},"14:20")))),(0,r.kt)("h2",{id:"related-fields"},"Related fields"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/date"},"Date")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/time"},"Time")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/fields/field-types/date-time-based/duration"},"Duration"))))}u.isMDXComponent=!0},40278:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/datetime-a8439dd8500ad12059dc56b8598a75fd.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/df203c0f.fb9780e2.js b/packages/noco-docs/dist/assets/js/df203c0f.fb9780e2.js new file mode 100644 index 0000000000..c0331eedee --- /dev/null +++ b/packages/noco-docs/dist/assets/js/df203c0f.fb9780e2.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9924],{99385:(e,t,l)=>{l.r(t),l.d(t,{default:()=>w});var a=l(67294),n=l(86010),r=l(83699),o=l(39962);const s=["zero","one","two","few","many","other"];function c(e){return s.filter((t=>e.includes(t)))}const i={locale:"en",pluralForms:c(["one","other"]),select:e=>1===e?"one":"other"};function u(){const{i18n:{currentLocale:e}}=(0,o.Z)();return(0,a.useMemo)((()=>{try{return function(e){const t=new Intl.PluralRules(e);return{locale:e,pluralForms:c(t.resolvedOptions().pluralCategories),select:e=>t.select(e)}}(e)}catch(t){return console.error(`Failed to use Intl.PluralRules for locale "${e}".\nDocusaurus will fallback to the default (English) implementation.\nError: ${t.message}\n`),i}}),[e])}function g(){const e=u();return{selectMessage:(t,l)=>function(e,t,l){const a=e.split("|");if(1===a.length)return a[0];a.length>l.pluralForms.length&&console.error(`For locale=${l.locale}, a maximum of ${l.pluralForms.length} plural forms are expected (${l.pluralForms.join(",")}), but the message contains ${a.length}: ${e}`);const n=l.select(t),r=l.pluralForms.indexOf(n);return a[Math.min(r,a.length-1)]}(l,t,e)}}var m=l(35463),d=l(23702),p=l(97325),h=l(91764),f=l(33647);function E(e){let{doc:t}=e;return a.createElement("article",{className:"margin-vert--lg"},a.createElement(r.Z,{to:t.permalink},a.createElement("h2",null,t.title)),t.description&&a.createElement("p",null,t.description))}function w(e){let{tag:t}=e;const l=function(){const{selectMessage:e}=g();return t=>e(t,(0,p.I)({id:"theme.docs.tagDocListPageTitle.nDocsTagged",description:'Pluralized label for "{count} docs tagged". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One doc tagged|{count} docs tagged"},{count:t}))}(),o=(0,p.I)({id:"theme.docs.tagDocListPageTitle",description:"The title of the page for a docs tag",message:'{nDocsTagged} with "{tagName}"'},{nDocsTagged:l(t.count),tagName:t.label});return a.createElement(m.FG,{className:(0,n.Z)(d.k.wrapper.docsPages,d.k.page.docsTagDocListPage)},a.createElement(m.d,{title:o}),a.createElement(f.Z,{tag:"doc_tag_doc_list"}),a.createElement(h.Z,null,a.createElement("div",{className:"container margin-vert--lg"},a.createElement("div",{className:"row"},a.createElement("main",{className:"col col--8 col--offset-2"},a.createElement("header",{className:"margin-bottom--xl"},a.createElement("h1",null,o),a.createElement(r.Z,{href:t.allTagsPath},a.createElement(p.Z,{id:"theme.tags.tagsPageLink",description:"The label of the link targeting the tag list page"},"View All Tags"))),a.createElement("section",{className:"margin-vert--lg"},t.items.map((e=>a.createElement(E,{key:e.id,doc:e})))))))))}}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/df59b4b5.ff304573.js b/packages/noco-docs/dist/assets/js/df59b4b5.ff304573.js new file mode 100644 index 0000000000..fa61f81147 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/df59b4b5.ff304573.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3914],{36756:e=>{e.exports=JSON.parse('{"label":"Single line text","permalink":"/tags/single-line-text","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/text-based/single-line-text","title":"Single line text","description":"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.","permalink":"/fields/field-types/text-based/single-line-text"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e12d67b0.8b3e506d.js b/packages/noco-docs/dist/assets/js/e12d67b0.8b3e506d.js new file mode 100644 index 0000000000..bf86a80a84 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e12d67b0.8b3e506d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9554],{61359:e=>{e.exports=JSON.parse('{"label":"Views","permalink":"/tags/views","allTagsPath":"/tags","count":9,"items":[{"id":"views/actions-on-view","title":"Actions on view","description":"Learn how to delete, rename, duplicate a a view in NocoDB.","permalink":"/views/actions-on-view"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"views/view-types/form","title":"Form","description":"Learn how to create, import, and manage forms in NocoDB.","permalink":"/views/view-types/form"},{"id":"views/view-types/gallery","title":"Gallery","description":"Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.","permalink":"/views/view-types/gallery"},{"id":"views/view-types/grid","title":"Grid","description":"Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.","permalink":"/views/view-types/grid"},{"id":"views/view-types/kanban","title":"Kanban","description":"Learn how to use Kanban view in NocoDB.","permalink":"/views/view-types/kanban"},{"id":"collaboration/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/collaboration/share-view"},{"id":"views/share-view","title":"Share view","description":"Procedures to share a view","permalink":"/views/share-view"},{"id":"views/views-overview","title":"View overview","description":"Understanding Views in NocoDB!","permalink":"/views/views-overview"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e28b0c4f.752cc726.js b/packages/noco-docs/dist/assets/js/e28b0c4f.752cc726.js new file mode 100644 index 0000000000..ea5ff0ff89 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e28b0c4f.752cc726.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8880],{3905:(e,t,n)=>{n.d(t,{Zo:()=>p,kt:()=>m});var r=n(67294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?a(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function l(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var c=r.createContext({}),d=function(e){var t=r.useContext(c),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=d(e.components);return r.createElement(c.Provider,{value:t},e.children)},s="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},g=r.forwardRef((function(e,t){var n=e.components,o=e.mdxType,a=e.originalType,c=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),s=d(n),g=o,m=s["".concat(c,".").concat(g)]||s[g]||u[g]||a;return n?r.createElement(m,i(i({ref:t},p),{},{components:n})):r.createElement(m,i({ref:t},p))}));function m(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=n.length,i=new Array(a);i[0]=g;var l={};for(var c in t)hasOwnProperty.call(t,c)&&(l[c]=t[c]);l.originalType=e,l[s]="string"==typeof e?e:o,i[1]=l;for(var d=2;d<a;d++)i[d]=n[d];return r.createElement.apply(null,i)}return r.createElement.apply(null,n)}g.displayName="MDXCreateElement"},85216:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>l,toc:()=>d});var r=n(87462),o=(n(67294),n(3905));const a={title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!"},i=void 0,l={unversionedId:"getting-started/upgrading",id:"version-0.109.7/getting-started/upgrading",title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!",source:"@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md",sourceDirName:"020.getting-started",slug:"/getting-started/upgrading",permalink:"/0.109.7/getting-started/upgrading",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md",tags:[],version:"0.109.7",sidebarPosition:30,frontMatter:{title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!"},sidebar:"tutorialSidebar",previous:{title:"Environment Variables",permalink:"/0.109.7/getting-started/environment-variables"},next:{title:"Demos",permalink:"/0.109.7/getting-started/demos"}},c={},d=[{value:"Docker",id:"docker",level:2},{value:"Find, Stop & Delete NocoDB Docker Container",id:"find-stop--delete-nocodb-docker-container",level:3},{value:"Find & Remove NocoDB Docker Image",id:"find--remove-nocodb-docker-image",level:3},{value:"Pull the latest NocoDB image with same environment variables",id:"pull-the-latest-nocodb-image-with-same-environment-variables",level:3},{value:"Example: Docker Upgrade",id:"example-docker-upgrade",level:3},{value:"Node",id:"node",level:2},{value:"Uninstall NocoDB package",id:"uninstall-nocodb-package",level:4},{value:"Install NocoDB package",id:"install-nocodb-package",level:4},{value:"Homebrew",id:"homebrew",level:2}],p={toc:d},s="wrapper";function u(e){let{components:t,...n}=e;return(0,o.kt)(s,(0,r.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"By default, if ",(0,o.kt)("inlineCode",{parentName:"p"},"NC_DB")," is not specified upon ",(0,o.kt)("a",{parentName:"p",href:"/0.109.7/getting-started/installation"},"installation"),", then SQLite will be used to store metadata. We suggest users to separate the metadata and user data in different databases as pictured in our ",(0,o.kt)("a",{parentName:"p",href:"/engineering/architecture"},"architecture"),". "),(0,o.kt)("h2",{id:"docker"},"Docker"),(0,o.kt)("h3",{id:"find-stop--delete-nocodb-docker-container"},"Find, Stop & Delete NocoDB Docker Container"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# find NocoDB container ID\ndocker ps\n# stop NocoDB container\ndocker stop <YOUR_CONTAINER_ID>\n# delete NocoDB container\ndocker rm <YOUR_CONTAINER_ID>\n")),(0,o.kt)("p",null,"Note: Deleting your docker container without setting ",(0,o.kt)("inlineCode",{parentName:"p"},"NC_DB")," or mounting to a persistent volume for a default SQLite database will result in losing your data. See examples below."),(0,o.kt)("h3",{id:"find--remove-nocodb-docker-image"},"Find & Remove NocoDB Docker Image"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# find NocoDB image\ndocker images\n# delete NocoDB image\ndocker rmi <YOUR_IMAGE_ID>\n")),(0,o.kt)("h3",{id:"pull-the-latest-nocodb-image-with-same-environment-variables"},"Pull the latest NocoDB image with same environment variables"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d -p 8080:8080 \\\n -e NC_DB="<YOUR_NC_DB_URL>" \\\n -e NC_AUTH_JWT_SECRET="<YOUR_NC_AUTH_JWT_SECRET_IF_GIVEN>" \\\n nocodb/nocodb:latest\n')),(0,o.kt)("p",null,"Updating nocodb docker container is similar to updating ",(0,o.kt)("a",{parentName:"p",href:"https://www.whitesourcesoftware.com/free-developer-tools/blog/update-docker-images/"},"any other docker containers"),"."),(0,o.kt)("h3",{id:"example-docker-upgrade"},"Example: Docker Upgrade"),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/5435402/133578984-53c6b96b-3e8b-4a96-b6c2-36f3c09ffdde.png",alt:"Screen Shot 2021-09-16 at 09 23 07"})),(0,o.kt)("h2",{id:"node"},"Node"),(0,o.kt)("p",null,"Updating docker container is similar to updating a npm package."),(0,o.kt)("p",null,"From your root folder "),(0,o.kt)("h4",{id:"uninstall-nocodb-package"},"Uninstall NocoDB package"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"npm uninstall nocodb\n")),(0,o.kt)("h4",{id:"install-nocodb-package"},"Install NocoDB package"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"npm install --save nocodb\n")),(0,o.kt)("h2",{id:"homebrew"},"Homebrew"),(0,o.kt)("p",null,"Run following commands to upgrade Homebrew Nocodb version."),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-bash"},"# Update the local homebrew formulas\nbrew update\n# Upgrade nocodb package\nbrew upgrade nocodb\n")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e302cfc9.07f9e979.js b/packages/noco-docs/dist/assets/js/e302cfc9.07f9e979.js new file mode 100644 index 0000000000..f2dce542d1 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e302cfc9.07f9e979.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1313],{3905:(e,t,a)=>{a.d(t,{Zo:()=>c,kt:()=>h});var n=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function s(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){i(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function o(e,t){if(null==e)return{};var a,n,i=function(e,t){if(null==e)return{};var a,n,i={},l=Object.keys(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)a=l[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var r=n.createContext({}),p=function(e){var t=n.useContext(r),a=t;return e&&(a="function"==typeof e?e(t):s(s({},t),e)),a},c=function(e){var t=p(e.components);return n.createElement(r.Provider,{value:t},e.children)},m="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var a=e.components,i=e.mdxType,l=e.originalType,r=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),m=p(a),u=i,h=m["".concat(r,".").concat(u)]||m[u]||d[u]||l;return a?n.createElement(h,s(s({ref:t},c),{},{components:a})):n.createElement(h,s({ref:t},c))}));function h(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var l=a.length,s=new Array(l);s[0]=u;var o={};for(var r in t)hasOwnProperty.call(t,r)&&(o[r]=t[r]);o.originalType=e,o[m]="string"==typeof e?e:i,s[1]=o;for(var p=2;p<l;p++)s[p]=a[p];return n.createElement.apply(null,s)}return n.createElement.apply(null,a)}u.displayName="MDXCreateElement"},10847:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>r,contentTitle:()=>s,default:()=>b,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var n=a(87462),i=(a(67294),a(3905));const l={title:"Table details overview",description:"Table details overview",tags:["Table details","Table","Overview"],keywords:["table details","table overview","table"]},s=void 0,o={unversionedId:"table-details/table-details-overview",id:"table-details/table-details-overview",title:"Table details overview",description:"Table details overview",source:"@site/docs/065.table-details/table-details-overview.md",sourceDirName:"065.table-details",slug:"/table-details/table-details-overview",permalink:"/table-details/table-details-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/065.table-details/table-details-overview.md",tags:[{label:"Table details",permalink:"/tags/table-details"},{label:"Table",permalink:"/tags/table"},{label:"Overview",permalink:"/tags/overview"}],version:"current",frontMatter:{title:"Table details overview",description:"Table details overview",tags:["Table details","Table","Overview"],keywords:["table details","table overview","table"]},sidebar:"tutorialSidebar",previous:{title:"Download",permalink:"/table-operations/download"},next:{title:"Fields overview",permalink:"/fields/fields-overview"}},r={},p=[{value:"Fields",id:"fields",level:2},{value:"Relations",id:"relations",level:2},{value:"API Snippet",id:"api-snippet",level:2},{value:"Sample snippets",id:"sample-snippets",level:3},{value:"Supported Snippet",id:"supported-snippet",level:2},{value:"Shell",id:"shell",level:3},{value:"Javascript",id:"javascript",level:3},{value:"Node",id:"node",level:3},{value:"NocoDB SDK",id:"nocodb-sdk",level:3},{value:"PHP",id:"php",level:3},{value:"Python",id:"python",level:3},{value:"Ruby",id:"ruby",level:3},{value:"Java",id:"java",level:3},{value:"C",id:"c",level:3},{value:"Webhook",id:"webhook",level:2}],c=e=>function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,i.kt)("div",t)},m=c("Tabs"),d=c("TabItem"),u={toc:p},h="wrapper";function b(e){let{components:t,...l}=e;return(0,i.kt)(h,(0,n.Z)({},u,l,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Table Details")," section houses various tools & utilities to manage & work with your table schema & data. This essentially is a place for 'Creators' to build & manage their tables quickly. ",(0,i.kt)("inlineCode",{parentName:"p"},"Details")," section is accessible using the ",(0,i.kt)("inlineCode",{parentName:"p"},"Data-Details")," toggle switcher in the top navbar. "),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(6922).Z,width:"2876",height:"208"})),(0,i.kt)("p",null,"This section is divided into 4 parts:"),(0,i.kt)("h2",{id:"fields"},"Fields"),(0,i.kt)("p",null,"Fields is a multi-field table schema editor that allows you to add, edit, delete and reorder fields quickly & easily from one place. Additional details about multi-field editor can be found ",(0,i.kt)("a",{parentName:"p",href:"/fields/multi-fields-editor"},"here")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(75263).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"relations"},"Relations"),(0,i.kt)("p",null,"Relations are vital for managing data connections in a database. In a complex schema, it's essential to have a clear understanding of these connections because they:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Maintain data accuracy."),(0,i.kt)("li",{parentName:"ol"},"Enhance query efficiency."),(0,i.kt)("li",{parentName:"ol"},"Aid in logical schema design."),(0,i.kt)("li",{parentName:"ol"},"Support data analysis."),(0,i.kt)("li",{parentName:"ol"},"Enable proper application development.")),(0,i.kt)("p",null,"Visualizing these relations through an Entity Relationship Diagram (ERD) simplifies their comprehension and management, especially as the database grows in complexity."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(27292).Z,width:"2880",height:"1800"})),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("p",{parentName:"admonition"},"You can drag drop the tables to rearrange them in the diagram. Note that, such reordering will not persist across sessions.")),(0,i.kt)("h2",{id:"api-snippet"},"API Snippet"),(0,i.kt)("p",null,"NocoDB provides programmatic access to your data via REST APIs. API snippets in NocoDB offer ready-made code examples in various programming languages, simplifying the process of integrating your data with external applications. These snippets save time and effort by providing a quick and easy reference for developers, enabling them to interact with your NocoDB database programmatically without the need to write code from scratch."),(0,i.kt)("p",null,"A quick snippet for different scripts & languages is listed in this section."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(54504).Z,width:"2880",height:"1800"})),(0,i.kt)("h3",{id:"sample-snippets"},"Sample snippets"),(0,i.kt)(m,{mdxType:"Tabs"},(0,i.kt)(d,{value:"Shell",label:"Shell",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"curl --request GET \\\n --url 'http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=' \\\n --header 'xc-auth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU'\n"))),(0,i.kt)(d,{value:"Javascript",label:"Javascript",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"import axios from \"axios\";\n\nconst options = {\n method: 'GET',\n url: 'http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer',\n params: {offset: '0', limit: '25', where: ''},\n headers: {\n 'xc-auth': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU'\n }\n};\n\naxios.request(options).then(function (response) {\n console.log(response.data);\n}).catch(function (error) {\n console.error(error);\n});\n"))),(0,i.kt)(d,{value:"Node",label:"Node",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"var axios = require(\"axios\").default;\n\nvar options = {\n method: 'GET',\n url: 'http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer',\n params: {offset: '0', limit: '25', where: ''},\n headers: {\n 'xc-auth': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU'\n }\n};\n\naxios.request(options).then(function (response) {\n console.log(response.data);\n}).catch(function (error) {\n console.error(error);\n});\n"))),(0,i.kt)(d,{value:"NocoDB SDK",label:"NocoDB SDK",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'import { Api } from "nocodb-sdk";\nconst api = new Api({\n baseURL: "http://localhost:8080",\n headers: {\n "xc-auth": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU"\n }\n})\n\napi.dbViewRow.list(\n "noco",\n "ExternalDB",\n "Customer",\n "Customer", {\n "offset": 0,\n "limit": 25,\n "where": ""\n}).then(function (data) {\n console.log(data);\n}).catch(function (error) {\n console.error(error);\n});\n'))),(0,i.kt)(d,{value:"PHP",label:"PHP",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'<?php\n\n$curl = curl_init();\n\ncurl_setopt_array($curl, [\n CURLOPT_PORT => "8080",\n CURLOPT_URL => "http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=",\n CURLOPT_RETURNTRANSFER => true,\n CURLOPT_ENCODING => "",\n CURLOPT_MAXREDIRS => 10,\n CURLOPT_TIMEOUT => 30,\n CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,\n CURLOPT_CUSTOMREQUEST => "GET",\n CURLOPT_HTTPHEADER => [\n "xc-auth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU"\n ],\n]);\n\n$response = curl_exec($curl);\n$err = curl_error($curl);\n\ncurl_close($curl);\n\nif ($err) {\n echo "cURL Error #:" . $err;\n} else {\n echo $response;\n}\n'))),(0,i.kt)(d,{value:"Python",label:"Python",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'import http.client\n\nconn = http.client.HTTPConnection("localhost:8080")\n\nheaders = { \'xc-auth\': "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU" }\n\nconn.request("GET", "/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=", headers=headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode("utf-8"))\n'))),(0,i.kt)(d,{value:"Ruby",label:"Ruby",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"require 'uri'\nrequire 'net/http'\n\nurl = URI(\"http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=\")\n\nhttp = Net::HTTP.new(url.host, url.port)\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"xc-auth\"] = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU'\n\nresponse = http.request(request)\nputs response.read_body\n"))),(0,i.kt)(d,{value:"Java",label:"Java",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'HttpResponse<String> response = Unirest.get("http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=")\n .header("xc-auth", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU")\n .asString();\n'))),(0,i.kt)(d,{value:"C",label:"C",mdxType:"TabItem"},(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'CURL *hnd = curl_easy_init();\n\ncurl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");\ncurl_easy_setopt(hnd, CURLOPT_URL, "http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=");\n\nstruct curl_slist *headers = NULL;\nheaders = curl_slist_append(headers, "xc-auth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU");\ncurl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);\n\nCURLcode ret = curl_easy_perform(hnd);\n')))),(0,i.kt)("h2",{id:"supported-snippet"},"Supported Snippet"),(0,i.kt)("h3",{id:"shell"},"Shell"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"cURL"),(0,i.kt)("li",{parentName:"ul"},"wget")),(0,i.kt)("h3",{id:"javascript"},"Javascript"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Axios"),(0,i.kt)("li",{parentName:"ul"},"Fetch"),(0,i.kt)("li",{parentName:"ul"},"jQuery"),(0,i.kt)("li",{parentName:"ul"},"XHR")),(0,i.kt)("h3",{id:"node"},"Node"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Axios"),(0,i.kt)("li",{parentName:"ul"},"Fetch"),(0,i.kt)("li",{parentName:"ul"},"Request"),(0,i.kt)("li",{parentName:"ul"},"Native"),(0,i.kt)("li",{parentName:"ul"},"Unirest")),(0,i.kt)("h3",{id:"nocodb-sdk"},"NocoDB SDK"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Javascript"),(0,i.kt)("li",{parentName:"ul"},"Node")),(0,i.kt)("h3",{id:"php"},"PHP"),(0,i.kt)("h3",{id:"python"},"Python"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"http.client"),(0,i.kt)("li",{parentName:"ul"},"request")),(0,i.kt)("h3",{id:"ruby"},"Ruby"),(0,i.kt)("h3",{id:"java"},"Java"),(0,i.kt)("h3",{id:"c"},"C"),(0,i.kt)("h2",{id:"webhook"},"Webhook"),(0,i.kt)("p",null,"Webhooks are essential for real-time communication and automation between NocoDB and external systems. They serve several crucial purposes:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Instant Notifications:")," Webhooks enable immediate notifications when there are changes in your NocoDB database. This real-time information can be crucial for timely responses to important events, such as new data entries, updates, or deletions.")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Automation:")," They facilitate the automation of processes by triggering actions in external systems based on database events. For example, you can automate tasks like sending emails, updating spreadsheets, or syncing data with other applications in response to changes in NocoDB.")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Integration:")," Webhooks allow you to seamlessly integrate NocoDB with other tools and services, enhancing the overall functionality of your database. This integration can streamline workflows, improve data consistency, and reduce manual data entry.")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Bulk Operations:")," NocoDB's support for webhooks in bulk endpoints makes it efficient to handle multiple records simultaneously. This is especially useful when dealing with large datasets or when you need to perform batch operations in external systems."))),(0,i.kt)("p",null,"In summary, webhooks in NocoDB empower you to create dynamic, responsive, and interconnected workflows by keeping external systems in sync with your database's activities."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(70700).Z,width:"2880",height:"1800"})),(0,i.kt)("p",null,"Note that, Webhooks currently are specific for associated table. Additional procedural details about webhooks can be found ",(0,i.kt)("a",{parentName:"p",href:"/automation/webhook/webhook-overview"},"here")))}b.isMDXComponent=!0},54504:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/details-api-snippet-78906ef3b2248845b8955eed84a3031e.png"},75263:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/details-field-editor-6b80e39a53b09c20af27e53b9777ea9a.png"},27292:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/details-relations-0716794b3e749928f581e2a2f78931a3.png"},6922:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/details-tab-8aeca1f70ead223a641ead51b82e97f5.png"},70700:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/details-webhook-834a408cf5a6b9d711ac6ab63a1eaa4a.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e3120721.c79fbff1.js b/packages/noco-docs/dist/assets/js/e3120721.c79fbff1.js new file mode 100644 index 0000000000..5ff65e1ab2 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e3120721.c79fbff1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1120],{23388:o=>{o.exports=JSON.parse('{"label":"Filter","permalink":"/tags/filter","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/filter","title":"Filtering records","description":"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.","permalink":"/table-operations/filter"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e4367861.52093635.js b/packages/noco-docs/dist/assets/js/e4367861.52093635.js new file mode 100644 index 0000000000..4e60979711 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e4367861.52093635.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6263],{3905:(e,t,a)=>{a.d(t,{Zo:()=>s,kt:()=>b});var l=a(67294);function i(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function n(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);t&&(l=l.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,l)}return a}function o(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?n(Object(a),!0).forEach((function(t){i(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):n(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function r(e,t){if(null==e)return{};var a,l,i=function(e,t){if(null==e)return{};var a,l,i={},n=Object.keys(e);for(l=0;l<n.length;l++)a=n[l],t.indexOf(a)>=0||(i[a]=e[a]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(l=0;l<n.length;l++)a=n[l],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(i[a]=e[a])}return i}var p=l.createContext({}),m=function(e){var t=l.useContext(p),a=t;return e&&(a="function"==typeof e?e(t):o(o({},t),e)),a},s=function(e){var t=m(e.components);return l.createElement(p.Provider,{value:t},e.children)},d="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return l.createElement(l.Fragment,{},t)}},u=l.forwardRef((function(e,t){var a=e.components,i=e.mdxType,n=e.originalType,p=e.parentName,s=r(e,["components","mdxType","originalType","parentName"]),d=m(a),u=i,b=d["".concat(p,".").concat(u)]||d[u]||c[u]||n;return a?l.createElement(b,o(o({ref:t},s),{},{components:a})):l.createElement(b,o({ref:t},s))}));function b(e,t){var a=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=a.length,o=new Array(n);o[0]=u;var r={};for(var p in t)hasOwnProperty.call(t,p)&&(r[p]=t[p]);r.originalType=e,r[d]="string"==typeof e?e:i,o[1]=r;for(var m=2;m<n;m++)o[m]=a[m];return l.createElement.apply(null,o)}return l.createElement.apply(null,a)}u.displayName="MDXCreateElement"},37634:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>p,contentTitle:()=>o,default:()=>c,frontMatter:()=>n,metadata:()=>r,toc:()=>m});var l=a(87462),i=(a(67294),a(3905));const n={title:"Import data into an existing table",description:"Learn how to import data into an existing table in NocoDB.",tags:["Tables","Import","CSV","Excel","XLSX","JSON"],keywords:["NocoDB table","import data into table","import data from csv","import data from excel","import data from xlsx"]},o=void 0,r={unversionedId:"tables/import-data-into-existing-table",id:"tables/import-data-into-existing-table",title:"Import data into an existing table",description:"Learn how to import data into an existing table in NocoDB.",source:"@site/docs/050.tables/040.import-data-into-existing-table.md",sourceDirName:"050.tables",slug:"/tables/import-data-into-existing-table",permalink:"/tables/import-data-into-existing-table",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/050.tables/040.import-data-into-existing-table.md",tags:[{label:"Tables",permalink:"/tags/tables"},{label:"Import",permalink:"/tags/import"},{label:"CSV",permalink:"/tags/csv"},{label:"Excel",permalink:"/tags/excel"},{label:"XLSX",permalink:"/tags/xlsx"},{label:"JSON",permalink:"/tags/json"}],version:"current",sidebarPosition:40,frontMatter:{title:"Import data into an existing table",description:"Learn how to import data into an existing table in NocoDB.",tags:["Tables","Import","CSV","Excel","XLSX","JSON"],keywords:["NocoDB table","import data into table","import data from csv","import data from excel","import data from xlsx"]},sidebar:"tutorialSidebar",previous:{title:"Create table via import",permalink:"/tables/create-table-via-import"},next:{title:"Actions on table",permalink:"/tables/actions-on-table"}},p={},m=[{value:"Import data from CSV / Excel",id:"import-data-from-csv--excel",level:2},{value:"Accessing import modal",id:"accessing-import-modal",level:3},{value:"Importing file data",id:"importing-file-data",level:3},{value:"1. Upload from local directory",id:"1-upload-from-local-directory",level:4},{value:"2. Upload from URL",id:"2-upload-from-url",level:4},{value:"Field mapping",id:"field-mapping",level:3},{value:"Advance settings",id:"advance-settings",level:3},{value:"Related articles",id:"related-articles",level:2}],s={toc:m},d="wrapper";function c(e){let{components:t,...n}=e;return(0,i.kt)(d,(0,l.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"import-data-from-csv--excel"},"Import data from CSV / Excel"),(0,i.kt)("h3",{id:"accessing-import-modal"},"Accessing import modal"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"...")," context menu from the toolbar."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Upload")," button."),(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Upload CSV")," / ",(0,i.kt)("inlineCode",{parentName:"li"},"Upload Excel")," option. ")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(98876).Z,width:"2896",height:"940"})),(0,i.kt)("h3",{id:"importing-file-data"},"Importing file data"),(0,i.kt)("p",null,"There are two ways to upload source file:"),(0,i.kt)("h4",{id:"1-upload-from-local-directory"},"1. Upload from local directory"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"Upload")," tab from the Quick import modal."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"file upload")," button or drag and drop file to the modal."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"#advance-settings"},"Advance Settings")," (optional)"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button. ")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(16329).Z,width:"2876",height:"1798"})),(0,i.kt)("h4",{id:"2-upload-from-url"},"2. Upload from URL"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Select ",(0,i.kt)("inlineCode",{parentName:"li"},"URL")," tab from the Quick import modal."),(0,i.kt)("li",{parentName:"ol"},"Paste the URL of the file."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"#advance-settings"},"Advance Settings")," (optional)"),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(3891).Z,width:"2876",height:"1796"})),(0,i.kt)("h3",{id:"field-mapping"},"Field mapping"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Table Name")," (Optional)"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Defaults to the name of the file; double-click to edit."))),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Mapping Columns")," (Optional)"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Existing field names are listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Source column"),", while new columns identified from the import file are listed under ",(0,i.kt)("inlineCode",{parentName:"li"},"Destination column"),"."),(0,i.kt)("li",{parentName:"ul"},"NocoDB automatically maps destination field names based on the source field names."),(0,i.kt)("li",{parentName:"ul"},"You can reconfigure the mapping by utilizing the dropdown menu that appears when you click on the destination field."))),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Exclude Columns")," (Optional)"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"A checkbox is provided to exclude a field from being imported."))),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("strong",{parentName:"p"},"Initiate Import")),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"Import")," button to commence the file import process.")))),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:a(93229).Z,width:"2872",height:"1800"})),(0,i.kt)("h3",{id:"advance-settings"},"Advance settings"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"# of rows to parse to infer datatype")," - defaults to 500 rows."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Utilize First Row as Headers"),"**`: Enabled by default. If selected, the first row in the spreadsheet will be treated as the header row and its contents will be used as field names.")),(0,i.kt)("h2",{id:"related-articles"},"Related articles"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/create-table"},"Create a new table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/create-table-via-import"},"Create a table using a CSV, Excel or a JSON")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#rename-table"},"Rename a table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#duplicate-table"},"Duplicate a table")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/tables/actions-on-table#delete-table"},"Delete a table"))))}c.isMDXComponent=!0},98876:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/upload-csv-1-5060880a942894e2cf7d72a27b048520.png"},16329:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/upload-csv-2-8d2bf537b779871fcd91d482507b6ec2.png"},93229:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/upload-csv-3-2b437b676c7ea55dfc099c630c62bc32.png"},3891:(e,t,a)=>{a.d(t,{Z:()=>l});const l=a.p+"assets/images/upload-csv-url-e91498d1e314587238b1379f73bee6b1.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e4e12989.d9cb26c6.js b/packages/noco-docs/dist/assets/js/e4e12989.d9cb26c6.js new file mode 100644 index 0000000000..8beea459a3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e4e12989.d9cb26c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8e3],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>k});var a=n(67294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function o(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?r(Object(n),!0).forEach((function(t){i(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function s(e,t){if(null==e)return{};var n,a,i=function(e,t){if(null==e)return{};var n,a,i={},r=Object.keys(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)n=r[a],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var l=a.createContext({}),p=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):o(o({},t),e)),n},c=function(e){var t=p(e.components);return a.createElement(l.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},m=a.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),u=p(n),m=i,k=u["".concat(l,".").concat(m)]||u[m]||d[m]||r;return n?a.createElement(k,o(o({ref:t},c),{},{components:n})):a.createElement(k,o({ref:t},c))}));function k(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,o=new Array(r);o[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[u]="string"==typeof e?e:i,o[1]=s;for(var p=2;p<r;p++)o[p]=n[p];return a.createElement.apply(null,o)}return a.createElement.apply(null,n)}m.displayName="MDXCreateElement"},86301:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>d,frontMatter:()=>r,metadata:()=>s,toc:()=>p});var a=n(87462),i=(n(67294),n(3905));const r={title:"Writing Unit Tests",description:"Overview to Unit Testing"},o=void 0,s={unversionedId:"engineering/unit-testing",id:"version-0.109.7/engineering/unit-testing",title:"Writing Unit Tests",description:"Overview to Unit Testing",source:"@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md",sourceDirName:"050.engineering",slug:"/engineering/unit-testing",permalink:"/0.109.7/engineering/unit-testing",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md",tags:[],version:"0.109.7",sidebarPosition:40,frontMatter:{title:"Writing Unit Tests",description:"Overview to Unit Testing"},sidebar:"tutorialSidebar",previous:{title:"Development Setup",permalink:"/0.109.7/engineering/development-setup"},next:{title:"Playwright E2E Testing",permalink:"/0.109.7/engineering/playwright"}},l={},p=[{value:"Unit Tests",id:"unit-tests",level:2},{value:"Pre-requisites",id:"pre-requisites",level:3},{value:"Setup",id:"setup",level:3},{value:"Run Tests",id:"run-tests",level:3},{value:"Folder Structure",id:"folder-structure",level:3},{value:"Factory Pattern",id:"factory-pattern",level:3},{value:"Walk through of writing a Unit Test",id:"walk-through-of-writing-a-unit-test",level:3},{value:"Configure test",id:"configure-test",level:4},{value:"Test case",id:"test-case",level:4},{value:"Integrating the New Test Suite",id:"integrating-the-new-test-suite",level:4},{value:"Seeding Sample DB (Sakila)",id:"seeding-sample-db-sakila",level:3}],c={toc:p},u="wrapper";function d(e){let{components:t,...n}=e;return(0,i.kt)(u,(0,a.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"unit-tests"},"Unit Tests"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"All individual unit tests are independent of each other. We don't use any shared state between tests."),(0,i.kt)("li",{parentName:"ul"},"Test environment includes ",(0,i.kt)("inlineCode",{parentName:"li"},"sakila")," sample database and any change to it by a test is reverted before running other tests."),(0,i.kt)("li",{parentName:"ul"},"While running unit tests, it tries to connect to mysql server running on ",(0,i.kt)("inlineCode",{parentName:"li"},"localhost:3306")," with username ",(0,i.kt)("inlineCode",{parentName:"li"},"root")," and password ",(0,i.kt)("inlineCode",{parentName:"li"},"password")," (which can be configured) and if not found, it will use ",(0,i.kt)("inlineCode",{parentName:"li"},"sqlite")," as a fallback, hence no requirement of any sql server to run tests.")),(0,i.kt)("h3",{id:"pre-requisites"},"Pre-requisites"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"MySQL is preferred - however tests can fallback on SQLite too")),(0,i.kt)("h3",{id:"setup"},"Setup"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd packages/nocodb\n\nnpm install\n\n# add a .env file\ncp tests/unit/.env.sample tests/unit/.env\n\n# open .env file\nopen tests/unit/.env\n")),(0,i.kt)("p",null,"Configure the following variables"),(0,i.kt)("blockquote",null,(0,i.kt)("p",{parentName:"blockquote"},"DB_HOST : host\nDB_PORT : port\nDB_USER : username\nDB_PASSWORD : password")),(0,i.kt)("h3",{id:"run-tests"},"Run Tests"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm run test:unit\n")),(0,i.kt)("h3",{id:"folder-structure"},"Folder Structure"),(0,i.kt)("p",null,"The root folder for unit tests is ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"rest")," folder contains all the test suites for rest apis."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"model")," folder contains all the test suites for models."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"factory")," folder contains all the helper functions to create test data."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"init")," folder contains helper functions to configure test environment."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"index.test.ts")," is the root test suite file which imports all the test suites."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"TestDbMngr.ts")," is a helper class to manage test databases (i.e. creating, dropping, etc.).")),(0,i.kt)("h3",{id:"factory-pattern"},"Factory Pattern"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Use factories for create/update/delete data. No data should be directly create/updated/deleted in the test."),(0,i.kt)("li",{parentName:"ul"},"While writing a factory make sure that it can be used with as less parameters as possible and use default values for other parameters."),(0,i.kt)("li",{parentName:"ul"},"Use named parameters for factories.",(0,i.kt)("pre",{parentName:"li"},(0,i.kt)("code",{parentName:"pre",className:"language-ts"},"createUser({ email, password})\n"))),(0,i.kt)("li",{parentName:"ul"},"Use one file per factory.")),(0,i.kt)("h3",{id:"walk-through-of-writing-a-unit-test"},"Walk through of writing a Unit Test"),(0,i.kt)("p",null,"We will create an ",(0,i.kt)("inlineCode",{parentName:"p"},"Table")," test suite as an example."),(0,i.kt)("h4",{id:"configure-test"},"Configure test"),(0,i.kt)("p",null,"We will configure ",(0,i.kt)("inlineCode",{parentName:"p"},"beforeEach")," which is called before each test is executed. We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"init")," function from ",(0,i.kt)("inlineCode",{parentName:"p"},"nocodb/packages/nocodb/tests/unit/init/index.ts"),", which is a helper function which configures the test environment(i.e resetting state, etc.)."),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"init")," does the following things -"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"It initializes a ",(0,i.kt)("inlineCode",{parentName:"li"},"Noco")," instance(reused in all tests)."),(0,i.kt)("li",{parentName:"ul"},"Restores ",(0,i.kt)("inlineCode",{parentName:"li"},"meta")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"sakila")," database to its initial state."),(0,i.kt)("li",{parentName:"ul"},"Creates the root user."),(0,i.kt)("li",{parentName:"ul"},"Returns ",(0,i.kt)("inlineCode",{parentName:"li"},"context")," which has ",(0,i.kt)("inlineCode",{parentName:"li"},"auth token")," for the created user, node server instance(",(0,i.kt)("inlineCode",{parentName:"li"},"app"),"), and ",(0,i.kt)("inlineCode",{parentName:"li"},"dbConfig"),".")),(0,i.kt)("p",null,"We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"createProject")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"createProject")," factories to create a project and a table."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"let context;\n\nbeforeEach(async function () {\n context = await init();\n\n project = await createProject(context);\n table = await createTable(context, project);\n});\n")),(0,i.kt)("h4",{id:"test-case"},"Test case"),(0,i.kt)("p",null,"We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"it")," function to create a test case. We will use ",(0,i.kt)("inlineCode",{parentName:"p"},"supertest")," to make a request to the server. We use ",(0,i.kt)("inlineCode",{parentName:"p"},"expect"),"(",(0,i.kt)("inlineCode",{parentName:"p"},"chai"),") to assert the response."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"it('Get table list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/meta/projects/${project.id}/tables`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list).to.be.an('array').not.empty;\n});\n")),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("p",{parentName:"admonition"},"We can also run individual test by using ",(0,i.kt)("inlineCode",{parentName:"p"},".only")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"describe")," or ",(0,i.kt)("inlineCode",{parentName:"p"},"it")," function and the running the test command.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"it.only('Get table list', async () => {\n")),(0,i.kt)("h4",{id:"integrating-the-new-test-suite"},"Integrating the New Test Suite"),(0,i.kt)("p",null,"We create a new file ",(0,i.kt)("inlineCode",{parentName:"p"},"table.test.ts")," in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/rest/tests")," directory."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"import 'mocha';\nimport request from 'supertest';\nimport init from '../../init';\nimport { createTable, getAllTables } from '../../factory/table';\nimport { createProject } from '../../factory/project';\nimport { defaultColumns } from '../../factory/column';\nimport Model from '../../../../src/lib/models/Model';\nimport { expect } from 'chai';\n\nfunction tableTest() {\n let context;\n let project;\n let table;\n\n beforeEach(async function () {\n context = await init();\n\n project = await createProject(context);\n table = await createTable(context, project);\n });\n\n it('Get table list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/meta/projects/${project.id}/tables`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list).to.be.an('array').not.empty;\n });\n}\n\nexport default function () {\n describe('Table', tableTests);\n}\n")),(0,i.kt)("p",null,"We can then import the ",(0,i.kt)("inlineCode",{parentName:"p"},"Table")," test suite to ",(0,i.kt)("inlineCode",{parentName:"p"},"Rest")," test suite in ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/rest/index.test.ts")," file(",(0,i.kt)("inlineCode",{parentName:"p"},"Rest")," test suite is imported in the root test suite file which is ",(0,i.kt)("inlineCode",{parentName:"p"},"packages/nocodb/tests/unit/index.test.ts"),")."),(0,i.kt)("h3",{id:"seeding-sample-db-sakila"},"Seeding Sample DB (Sakila)"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-typescript"},"\nfunction tableTest() {\n let context;\n let sakilaProject: Project;\n let customerTable: Model;\n\n beforeEach(async function () {\n context = await init();\n \n /******* Start : Seeding sample database **********/\n sakilaProject = await createSakilaProject(context);\n /******* End : Seeding sample database **********/\n \n customerTable = await getTable({project: sakilaProject, name: 'customer'})\n });\n\n it('Get table data list', async function () {\n const response = await request(context.app)\n .get(`/api/v1/db/data/noco/${sakilaProject.id}/${customerTable.id}`)\n .set('xc-auth', context.token)\n .send({})\n .expect(200);\n\n expect(response.body.list[0]['FirstName']).to.equal('MARY');\n });\n}\n")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e55064b4.f0e9f017.js b/packages/noco-docs/dist/assets/js/e55064b4.f0e9f017.js new file mode 100644 index 0000000000..4f295b2a62 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e55064b4.f0e9f017.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4341],{3905:(t,e,a)=>{a.d(e,{Zo:()=>u,kt:()=>o});var n=a(67294);function l(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function r(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?r(Object(a),!0).forEach((function(e){l(t,e,a[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))}))}return t}function p(t,e){if(null==t)return{};var a,n,l=function(t,e){if(null==t)return{};var a,n,l={},r=Object.keys(t);for(n=0;n<r.length;n++)a=r[n],e.indexOf(a)>=0||(l[a]=t[a]);return l}(t,e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);for(n=0;n<r.length;n++)a=r[n],e.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(l[a]=t[a])}return l}var d=n.createContext({}),m=function(t){var e=n.useContext(d),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},u=function(t){var e=m(t.components);return n.createElement(d.Provider,{value:e},t.children)},N="mdxType",k={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},g=n.forwardRef((function(t,e){var a=t.components,l=t.mdxType,r=t.originalType,d=t.parentName,u=p(t,["components","mdxType","originalType","parentName"]),N=m(a),g=l,o=N["".concat(d,".").concat(g)]||N[g]||k[g]||r;return a?n.createElement(o,i(i({ref:e},u),{},{components:a})):n.createElement(o,i({ref:e},u))}));function o(t,e){var a=arguments,l=e&&e.mdxType;if("string"==typeof t||l){var r=a.length,i=new Array(r);i[0]=g;var p={};for(var d in e)hasOwnProperty.call(e,d)&&(p[d]=e[d]);p.originalType=t,p[N]="string"==typeof t?t:l,i[1]=p;for(var m=2;m<r;m++)i[m]=a[m];return n.createElement.apply(null,i)}return n.createElement.apply(null,a)}g.displayName="MDXCreateElement"},73412:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>d,contentTitle:()=>i,default:()=>k,frontMatter:()=>r,metadata:()=>p,toc:()=>m});var n=a(87462),l=(a(67294),a(3905));const r={title:"Currency",tags:["Fields","Field types","Numerical types","Currency"]},i=void 0,p={unversionedId:"fields/field-types/numerical/currency",id:"fields/field-types/numerical/currency",title:"Currency",description:"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.",source:"@site/docs/070.fields/040.field-types/020.numerical/040.currency.md",sourceDirName:"070.fields/040.field-types/020.numerical",slug:"/fields/field-types/numerical/currency",permalink:"/fields/field-types/numerical/currency",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/040.currency.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Numerical types",permalink:"/tags/numerical-types"},{label:"Currency",permalink:"/tags/currency"}],version:"current",sidebarPosition:40,frontMatter:{title:"Currency",tags:["Fields","Field types","Numerical types","Currency"]},sidebar:"tutorialSidebar",previous:{title:"Percent",permalink:"/fields/field-types/numerical/percent"},next:{title:"Single Select",permalink:"/fields/field-types/select-based/single-select"}},d={},m=[{value:"Create field",id:"create-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Supported locales",id:"supported-locales",level:3},{value:"Supported currencies",id:"supported-currencies",level:3},{value:"Similar numerical fields",id:"similar-numerical-fields",level:2}],u={toc:m},N="wrapper";function k(t){let{components:e,...r}=t;return(0,l.kt)(N,(0,n.Z)({},u,r,{components:e,mdxType:"MDXLayout"}),(0,l.kt)("p",null,(0,l.kt)("inlineCode",{parentName:"p"},"Currency")," field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display."),(0,l.kt)("h2",{id:"create-field"},"Create field"),(0,l.kt)("ol",null,(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,l.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,l.kt)("li",{parentName:"ol"},"Select the field type as ",(0,l.kt)("inlineCode",{parentName:"li"},"Currency")," from the dropdown."),(0,l.kt)("li",{parentName:"ol"},"Configure ",(0,l.kt)("inlineCode",{parentName:"li"},"Currency Locale")," : defaults to ",(0,l.kt)("inlineCode",{parentName:"li"},"en-US")),(0,l.kt)("li",{parentName:"ol"},"Configure ",(0,l.kt)("inlineCode",{parentName:"li"},"Currency Symbol")," : defaults to ",(0,l.kt)("inlineCode",{parentName:"li"},"$")),(0,l.kt)("li",{parentName:"ol"},"[",(0,l.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,l.kt)("li",{parentName:"ol"},"Click on ",(0,l.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(72746).Z,width:"1267",height:"586"})),(0,l.kt)("h3",{id:"cell-display"},"Cell display"),(0,l.kt)("p",null,(0,l.kt)("img",{alt:"image",src:a(17296).Z,width:"1087",height:"523"})),(0,l.kt)("h3",{id:"supported-locales"},"Supported locales"),(0,l.kt)("p",null,(0,l.kt)("a",{parentName:"p",href:"https://www.npmjs.com/package/locale-codes#locale-list"},"https://www.npmjs.com/package/locale-codes#locale-list")),(0,l.kt)("admonition",{type:"note"},(0,l.kt)("p",{parentName:"admonition"},"NocoDB adheres to ISO639-1 standard for locale codes.")),(0,l.kt)("h3",{id:"supported-currencies"},"Supported currencies"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null}),(0,l.kt)("th",{parentName:"tr",align:null}),(0,l.kt)("th",{parentName:"tr",align:null}),(0,l.kt)("th",{parentName:"tr",align:null}),(0,l.kt)("th",{parentName:"tr",align:null}),(0,l.kt)("th",{parentName:"tr",align:null}))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"AED"),(0,l.kt)("td",{parentName:"tr",align:null},"AFN"),(0,l.kt)("td",{parentName:"tr",align:null},"ALL"),(0,l.kt)("td",{parentName:"tr",align:null},"AMD"),(0,l.kt)("td",{parentName:"tr",align:null},"ANG"),(0,l.kt)("td",{parentName:"tr",align:null},"AOA")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"ARS"),(0,l.kt)("td",{parentName:"tr",align:null},"AUD"),(0,l.kt)("td",{parentName:"tr",align:null},"AWG"),(0,l.kt)("td",{parentName:"tr",align:null},"AZN"),(0,l.kt)("td",{parentName:"tr",align:null},"BAM"),(0,l.kt)("td",{parentName:"tr",align:null},"BBD")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"BDT"),(0,l.kt)("td",{parentName:"tr",align:null},"BGN"),(0,l.kt)("td",{parentName:"tr",align:null},"BHD"),(0,l.kt)("td",{parentName:"tr",align:null},"BIF"),(0,l.kt)("td",{parentName:"tr",align:null},"BMD"),(0,l.kt)("td",{parentName:"tr",align:null},"BND")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"BOB"),(0,l.kt)("td",{parentName:"tr",align:null},"BOV"),(0,l.kt)("td",{parentName:"tr",align:null},"BRL"),(0,l.kt)("td",{parentName:"tr",align:null},"BSD"),(0,l.kt)("td",{parentName:"tr",align:null},"BTN"),(0,l.kt)("td",{parentName:"tr",align:null},"BWP")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"BYR"),(0,l.kt)("td",{parentName:"tr",align:null},"BZD"),(0,l.kt)("td",{parentName:"tr",align:null},"CAD"),(0,l.kt)("td",{parentName:"tr",align:null},"CDF"),(0,l.kt)("td",{parentName:"tr",align:null},"CHE"),(0,l.kt)("td",{parentName:"tr",align:null},"CHF")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"CHW"),(0,l.kt)("td",{parentName:"tr",align:null},"CLF"),(0,l.kt)("td",{parentName:"tr",align:null},"CLP"),(0,l.kt)("td",{parentName:"tr",align:null},"CNY"),(0,l.kt)("td",{parentName:"tr",align:null},"COP"),(0,l.kt)("td",{parentName:"tr",align:null},"COU")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"CRC"),(0,l.kt)("td",{parentName:"tr",align:null},"CUP"),(0,l.kt)("td",{parentName:"tr",align:null},"CVE"),(0,l.kt)("td",{parentName:"tr",align:null},"CYP"),(0,l.kt)("td",{parentName:"tr",align:null},"CZK"),(0,l.kt)("td",{parentName:"tr",align:null},"DJF")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"DKK"),(0,l.kt)("td",{parentName:"tr",align:null},"DOP"),(0,l.kt)("td",{parentName:"tr",align:null},"DZD"),(0,l.kt)("td",{parentName:"tr",align:null},"EEK"),(0,l.kt)("td",{parentName:"tr",align:null},"EGP"),(0,l.kt)("td",{parentName:"tr",align:null},"ERN")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"ETB"),(0,l.kt)("td",{parentName:"tr",align:null},"EUR"),(0,l.kt)("td",{parentName:"tr",align:null},"FJD"),(0,l.kt)("td",{parentName:"tr",align:null},"FKP"),(0,l.kt)("td",{parentName:"tr",align:null},"GBP"),(0,l.kt)("td",{parentName:"tr",align:null},"GEL")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"GHC"),(0,l.kt)("td",{parentName:"tr",align:null},"GIP"),(0,l.kt)("td",{parentName:"tr",align:null},"GMD"),(0,l.kt)("td",{parentName:"tr",align:null},"GNF"),(0,l.kt)("td",{parentName:"tr",align:null},"GTQ"),(0,l.kt)("td",{parentName:"tr",align:null},"GYD")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"HKD"),(0,l.kt)("td",{parentName:"tr",align:null},"HNL"),(0,l.kt)("td",{parentName:"tr",align:null},"HRK"),(0,l.kt)("td",{parentName:"tr",align:null},"HTG"),(0,l.kt)("td",{parentName:"tr",align:null},"HUF"),(0,l.kt)("td",{parentName:"tr",align:null},"IDR")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"ILS"),(0,l.kt)("td",{parentName:"tr",align:null},"INR"),(0,l.kt)("td",{parentName:"tr",align:null},"IQD"),(0,l.kt)("td",{parentName:"tr",align:null},"IRR"),(0,l.kt)("td",{parentName:"tr",align:null},"ISK"),(0,l.kt)("td",{parentName:"tr",align:null},"JMD")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"JOD"),(0,l.kt)("td",{parentName:"tr",align:null},"JPY"),(0,l.kt)("td",{parentName:"tr",align:null},"KES"),(0,l.kt)("td",{parentName:"tr",align:null},"KGS"),(0,l.kt)("td",{parentName:"tr",align:null},"KHR"),(0,l.kt)("td",{parentName:"tr",align:null},"KMF")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"KPW"),(0,l.kt)("td",{parentName:"tr",align:null},"KRW"),(0,l.kt)("td",{parentName:"tr",align:null},"KWD"),(0,l.kt)("td",{parentName:"tr",align:null},"KYD"),(0,l.kt)("td",{parentName:"tr",align:null},"KZT"),(0,l.kt)("td",{parentName:"tr",align:null},"LAK")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"LBP"),(0,l.kt)("td",{parentName:"tr",align:null},"LKR"),(0,l.kt)("td",{parentName:"tr",align:null},"LRD"),(0,l.kt)("td",{parentName:"tr",align:null},"LSL"),(0,l.kt)("td",{parentName:"tr",align:null},"LTL"),(0,l.kt)("td",{parentName:"tr",align:null},"LVL")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"LYD"),(0,l.kt)("td",{parentName:"tr",align:null},"MAD"),(0,l.kt)("td",{parentName:"tr",align:null},"MDL"),(0,l.kt)("td",{parentName:"tr",align:null},"MGA"),(0,l.kt)("td",{parentName:"tr",align:null},"MKD"),(0,l.kt)("td",{parentName:"tr",align:null},"MMK")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"MNT"),(0,l.kt)("td",{parentName:"tr",align:null},"MOP"),(0,l.kt)("td",{parentName:"tr",align:null},"MRO"),(0,l.kt)("td",{parentName:"tr",align:null},"MTL"),(0,l.kt)("td",{parentName:"tr",align:null},"MUR"),(0,l.kt)("td",{parentName:"tr",align:null},"MVR")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"MWK"),(0,l.kt)("td",{parentName:"tr",align:null},"MXN"),(0,l.kt)("td",{parentName:"tr",align:null},"MXV"),(0,l.kt)("td",{parentName:"tr",align:null},"MYR"),(0,l.kt)("td",{parentName:"tr",align:null},"MZN"),(0,l.kt)("td",{parentName:"tr",align:null},"NAD")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"NGN"),(0,l.kt)("td",{parentName:"tr",align:null},"NIO"),(0,l.kt)("td",{parentName:"tr",align:null},"NOK"),(0,l.kt)("td",{parentName:"tr",align:null},"NPR"),(0,l.kt)("td",{parentName:"tr",align:null},"NZD"),(0,l.kt)("td",{parentName:"tr",align:null},"OMR")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"PAB"),(0,l.kt)("td",{parentName:"tr",align:null},"PEN"),(0,l.kt)("td",{parentName:"tr",align:null},"PGK"),(0,l.kt)("td",{parentName:"tr",align:null},"PHP"),(0,l.kt)("td",{parentName:"tr",align:null},"PKR"),(0,l.kt)("td",{parentName:"tr",align:null},"PLN")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"PYG"),(0,l.kt)("td",{parentName:"tr",align:null},"QAR"),(0,l.kt)("td",{parentName:"tr",align:null},"ROL"),(0,l.kt)("td",{parentName:"tr",align:null},"RON"),(0,l.kt)("td",{parentName:"tr",align:null},"RSD"),(0,l.kt)("td",{parentName:"tr",align:null},"RUB")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"RWF"),(0,l.kt)("td",{parentName:"tr",align:null},"SAR"),(0,l.kt)("td",{parentName:"tr",align:null},"SBD"),(0,l.kt)("td",{parentName:"tr",align:null},"SCR"),(0,l.kt)("td",{parentName:"tr",align:null},"SDD"),(0,l.kt)("td",{parentName:"tr",align:null},"SEK")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"SGD"),(0,l.kt)("td",{parentName:"tr",align:null},"SHP"),(0,l.kt)("td",{parentName:"tr",align:null},"SIT"),(0,l.kt)("td",{parentName:"tr",align:null},"SKK"),(0,l.kt)("td",{parentName:"tr",align:null},"SLL"),(0,l.kt)("td",{parentName:"tr",align:null},"SOS")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"SRD"),(0,l.kt)("td",{parentName:"tr",align:null},"STD"),(0,l.kt)("td",{parentName:"tr",align:null},"SYP"),(0,l.kt)("td",{parentName:"tr",align:null},"SZL"),(0,l.kt)("td",{parentName:"tr",align:null},"THB"),(0,l.kt)("td",{parentName:"tr",align:null},"TJS")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"TMM"),(0,l.kt)("td",{parentName:"tr",align:null},"TND"),(0,l.kt)("td",{parentName:"tr",align:null},"TOP"),(0,l.kt)("td",{parentName:"tr",align:null},"TRY"),(0,l.kt)("td",{parentName:"tr",align:null},"TTD"),(0,l.kt)("td",{parentName:"tr",align:null},"TWD")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"TZS"),(0,l.kt)("td",{parentName:"tr",align:null},"UAH"),(0,l.kt)("td",{parentName:"tr",align:null},"UGX"),(0,l.kt)("td",{parentName:"tr",align:null},"USD"),(0,l.kt)("td",{parentName:"tr",align:null},"USN"),(0,l.kt)("td",{parentName:"tr",align:null},"USS")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"UYU"),(0,l.kt)("td",{parentName:"tr",align:null},"UZS"),(0,l.kt)("td",{parentName:"tr",align:null},"VEB"),(0,l.kt)("td",{parentName:"tr",align:null},"VND"),(0,l.kt)("td",{parentName:"tr",align:null},"VUV"),(0,l.kt)("td",{parentName:"tr",align:null},"WST")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"XAF"),(0,l.kt)("td",{parentName:"tr",align:null},"XAG"),(0,l.kt)("td",{parentName:"tr",align:null},"XAU"),(0,l.kt)("td",{parentName:"tr",align:null},"XBA"),(0,l.kt)("td",{parentName:"tr",align:null},"XBB"),(0,l.kt)("td",{parentName:"tr",align:null},"XBC")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"XBD"),(0,l.kt)("td",{parentName:"tr",align:null},"XCD"),(0,l.kt)("td",{parentName:"tr",align:null},"XDR"),(0,l.kt)("td",{parentName:"tr",align:null},"XFO"),(0,l.kt)("td",{parentName:"tr",align:null},"XFU"),(0,l.kt)("td",{parentName:"tr",align:null},"XOF")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"XPD"),(0,l.kt)("td",{parentName:"tr",align:null},"XPF"),(0,l.kt)("td",{parentName:"tr",align:null},"XPT"),(0,l.kt)("td",{parentName:"tr",align:null},"XTS"),(0,l.kt)("td",{parentName:"tr",align:null},"XXX"),(0,l.kt)("td",{parentName:"tr",align:null},"YER")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},"ZAR"),(0,l.kt)("td",{parentName:"tr",align:null},"ZMK"),(0,l.kt)("td",{parentName:"tr",align:null},"ZWD"),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null})))),(0,l.kt)("h2",{id:"similar-numerical-fields"},"Similar numerical fields"),(0,l.kt)("p",null,"Following are the other numerical fields available in NocoDB, with some custom add-on features."),(0,l.kt)("ul",null,(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/number"},"Number")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/decimal"},"Decimal")),(0,l.kt)("li",{parentName:"ul"},(0,l.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/percent"},"Percent"))))}k.isMDXComponent=!0},17296:(t,e,a)=>{a.d(e,{Z:()=>n});const n=a.p+"assets/images/currency-cell-display-d3e0309151ff2bb7cc72a48861a565bd.png"},72746:(t,e,a)=>{a.d(e,{Z:()=>n});const n=a.p+"assets/images/currency-593bbfd7821dee235c349581f898acef.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e56fdc78.daaabb90.js b/packages/noco-docs/dist/assets/js/e56fdc78.daaabb90.js new file mode 100644 index 0000000000..73f1fd043d --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e56fdc78.daaabb90.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9069],{3905:(e,n,o)=>{o.d(n,{Zo:()=>s,kt:()=>g});var a=o(67294);function t(e,n,o){return n in e?Object.defineProperty(e,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[n]=o,e}function r(e,n){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);n&&(a=a.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),o.push.apply(o,a)}return o}function d(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?r(Object(o),!0).forEach((function(n){t(e,n,o[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):r(Object(o)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))}))}return e}function c(e,n){if(null==e)return{};var o,a,t=function(e,n){if(null==e)return{};var o,a,t={},r=Object.keys(e);for(a=0;a<r.length;a++)o=r[a],n.indexOf(o)>=0||(t[o]=e[o]);return t}(e,n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(a=0;a<r.length;a++)o=r[a],n.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(t[o]=e[o])}return t}var l=a.createContext({}),i=function(e){var n=a.useContext(l),o=n;return e&&(o="function"==typeof e?e(n):d(d({},n),e)),o},s=function(e){var n=i(e.components);return a.createElement(l.Provider,{value:n},e.children)},p="mdxType",u={inlineCode:"code",wrapper:function(e){var n=e.children;return a.createElement(a.Fragment,{},n)}},b=a.forwardRef((function(e,n){var o=e.components,t=e.mdxType,r=e.originalType,l=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),p=i(o),b=t,g=p["".concat(l,".").concat(b)]||p[b]||u[b]||r;return o?a.createElement(g,d(d({ref:n},s),{},{components:o})):a.createElement(g,d({ref:n},s))}));function g(e,n){var o=arguments,t=n&&n.mdxType;if("string"==typeof e||t){var r=o.length,d=new Array(r);d[0]=b;var c={};for(var l in n)hasOwnProperty.call(n,l)&&(c[l]=n[l]);c.originalType=e,c[p]="string"==typeof e?e:t,d[1]=c;for(var i=2;i<r;i++)d[i]=o[i];return a.createElement.apply(null,d)}return a.createElement.apply(null,o)}b.displayName="MDXCreateElement"},89e3:(e,n,o)=>{o.r(n),o.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>u,frontMatter:()=>r,metadata:()=>c,toc:()=>i});var a=o(87462),t=(o(67294),o(3905));const r={title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!",tags:["Open Source"],keywords:["NocoDB upgrade","upgrade NocoDB","upgrade nocodb"]},d=void 0,c={unversionedId:"getting-started/self-hosted/upgrading",id:"getting-started/self-hosted/upgrading",title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!",source:"@site/docs/020.getting-started/050.self-hosted/030.upgrading.md",sourceDirName:"020.getting-started/050.self-hosted",slug:"/getting-started/self-hosted/upgrading",permalink:"/getting-started/self-hosted/upgrading",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/020.getting-started/050.self-hosted/030.upgrading.md",tags:[{label:"Open Source",permalink:"/tags/open-source"}],version:"current",sidebarPosition:30,frontMatter:{title:"Upgrading",description:"Upgrading NocoDB : Docker, Node and Homebrew!",tags:["Open Source"],keywords:["NocoDB upgrade","upgrade NocoDB","upgrade nocodb"]},sidebar:"tutorialSidebar",previous:{title:"Environment variables",permalink:"/getting-started/self-hosted/environment-variables"},next:{title:"Workspace overview",permalink:"/workspaces/workspace-overview"}},l={},i=[{value:"Docker",id:"docker",level:2},{value:"Find, Stop & Delete NocoDB Docker Container",id:"find-stop--delete-nocodb-docker-container",level:3},{value:"Find & Remove NocoDB Docker Image",id:"find--remove-nocodb-docker-image",level:3},{value:"Pull the latest NocoDB image with same environment variables",id:"pull-the-latest-nocodb-image-with-same-environment-variables",level:3},{value:"Example: Docker Upgrade",id:"example-docker-upgrade",level:3},{value:"Node",id:"node",level:2},{value:"Uninstall NocoDB package",id:"uninstall-nocodb-package",level:4},{value:"Install NocoDB package",id:"install-nocodb-package",level:4},{value:"Homebrew",id:"homebrew",level:2}],s={toc:i},p="wrapper";function u(e){let{components:n,...o}=e;return(0,t.kt)(p,(0,a.Z)({},s,o,{components:n,mdxType:"MDXLayout"}),(0,t.kt)("p",null,"By default, if ",(0,t.kt)("inlineCode",{parentName:"p"},"NC_DB")," is not specified upon ",(0,t.kt)("a",{parentName:"p",href:"/getting-started/self-hosted/installation"},"installation"),", then SQLite will be used to store metadata. We suggest users to separate the metadata and user data in different databases as pictured in our ",(0,t.kt)("a",{parentName:"p",href:"/engineering/architecture"},"architecture"),". "),(0,t.kt)("h2",{id:"docker"},"Docker"),(0,t.kt)("h3",{id:"find-stop--delete-nocodb-docker-container"},"Find, Stop & Delete NocoDB Docker Container"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},"# find NocoDB container ID\ndocker ps\n# stop NocoDB container\ndocker stop <YOUR_CONTAINER_ID>\n# delete NocoDB container\ndocker rm <YOUR_CONTAINER_ID>\n")),(0,t.kt)("p",null,"Note: Deleting your docker container without setting ",(0,t.kt)("inlineCode",{parentName:"p"},"NC_DB")," or mounting to a persistent volume for a default SQLite database will result in losing your data. See examples below."),(0,t.kt)("h3",{id:"find--remove-nocodb-docker-image"},"Find & Remove NocoDB Docker Image"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},"# find NocoDB image\ndocker images\n# delete NocoDB image\ndocker rmi <YOUR_IMAGE_ID>\n")),(0,t.kt)("h3",{id:"pull-the-latest-nocodb-image-with-same-environment-variables"},"Pull the latest NocoDB image with same environment variables"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},'docker run -d -p 8080:8080 \\\n -e NC_DB="<YOUR_NC_DB_URL>" \\\n -e NC_AUTH_JWT_SECRET="<YOUR_NC_AUTH_JWT_SECRET_IF_GIVEN>" \\\n nocodb/nocodb:latest\n')),(0,t.kt)("p",null,"Updating NocoDB docker container is similar to updating ",(0,t.kt)("a",{parentName:"p",href:"https://www.whitesourcesoftware.com/free-developer-tools/blog/update-docker-images/"},"any other docker containers"),"."),(0,t.kt)("h3",{id:"example-docker-upgrade"},"Example: Docker Upgrade"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},'# Previous docker run\n#\nterminal % docker run -d --name myNocoDB \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:0.111.0\nUnable to find image \'nocodb/nocodb:0.111.0\' locally\n0.111.0: Pulling from nocodb/nocodb\nad3fa0ea069c: Pull complete \ne43b9156e769: Pull complete \nc1bee0da1504: Pull complete \nadf78ab024d9: Pull complete \ncd8000d2c16a: Pull complete \nDigest: sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4\nStatus: Downloaded newer image for nocodb/nocodb:0.111.0\nafdc8edd1005c93e1df8f90d02e46430ea7b5c5610a2bf9ba105238d6c4d927b\n\n\n# Find, stop and delete NocoDB docker container\n#\nterminal % docker ps\nCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\nafdc8edd1005 nocodb/nocodb:0.111.0 "/usr/bin/dumb-init \u2026" 18 seconds ago Up 18 seconds 0.0.0.0:8080->8080/tcp myNocoDB\n0202041b3607 postgres:14.7 "docker-entrypoint.s\u2026" 2 days ago Up 8 hours (healthy) 0.0.0.0:5432->5432/tcp scripts_pg147_1\n\nterminal % docker stop afdc8edd1005\nafdc8edd1005\n\nterminal % docker rm afdc8edd1005\nafdc8edd1005\n\n\n# Find and remove NocoDB docker image\n#\nterminal % docker images\nREPOSITORY TAG IMAGE ID CREATED SIZE\nnocodb/nocodb 0.111.0 34609411e87c 5 weeks ago 132MB\nmysql 8.0 6a0560a40914 7 weeks ago 599MB\npostgres 14.7 2075a95c7b3b 4 months ago 358MB\n\nterminal % docker rmi 34609411e87c\nUntagged: nocodb/nocodb:0.111.0\nUntagged: nocodb/nocodb@sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4\nDeleted: sha256:3bfxxxx38e682742cbxxxx535b3503af45e931fb9bd15f46eca7d33cf4c54d72\nDeleted: sha256:952152b5da42ae057c6688a04xxxx72e1a2f91825956f5c7e35f91d5b285d4d8\nDeleted: sha256:3155197577xxxx673675ed1bce761714a24d7803f70a905740f7d4c248cxxxxx\n\n\n# Pull & run the latest NocoDB image with same environment variables as before\n#\nterminal % docker run -d --name myNocoDB \\\n-v "$(pwd)"/nocodb:/usr/app/data/ \\\n-p 8080:8080 \\\n-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \\\n-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \\\nnocodb/nocodb:latest\nUnable to find image \'nocodb/nocodb:latest\' locally\nlatest: Pulling from nocodb/nocodb\nad3fa0ea069c: Pull complete \ne43b9156e769: Pull complete \nc1bee0da1504: Pull complete \nadf78ab024d9: Pull complete \n28ce4fc94e48: Pull complete \nDigest: sha256:5c6df5ff0eb1278e1dbfe684af630a743ca73dfec8c30cab3bae9c1d0d640287\nStatus: Downloaded newer image for nocodb/nocodb:latest\nae793a04b75f2f3ee78abbaef09891396a884ec83320151a266326195649a058\n\n\n')),(0,t.kt)("h2",{id:"node"},"Node"),(0,t.kt)("p",null,"Updating docker container is similar to updating a npm package."),(0,t.kt)("p",null,"From your root folder "),(0,t.kt)("h4",{id:"uninstall-nocodb-package"},"Uninstall NocoDB package"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},"npm uninstall nocodb\n")),(0,t.kt)("h4",{id:"install-nocodb-package"},"Install NocoDB package"),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},"npm install --save nocodb\n")),(0,t.kt)("h2",{id:"homebrew"},"Homebrew"),(0,t.kt)("p",null,"Run following commands to upgrade Homebrew Nocodb version."),(0,t.kt)("pre",null,(0,t.kt)("code",{parentName:"pre",className:"language-bash"},"# Update the local homebrew formulas\nbrew update\n# Upgrade nocodb package\nbrew upgrade nocodb\n")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e5a54c1b.717bc03d.js b/packages/noco-docs/dist/assets/js/e5a54c1b.717bc03d.js new file mode 100644 index 0000000000..ae01378f22 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e5a54c1b.717bc03d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7283],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(67294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var s=n.createContext({}),c=function(e){var t=n.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=c(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,i=e.mdxType,l=e.originalType,s=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),u=c(r),d=i,f=u["".concat(s,".").concat(d)]||u[d]||m[d]||l;return r?n.createElement(f,a(a({ref:t},p),{},{components:r})):n.createElement(f,a({ref:t},p))}));function f(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var l=r.length,a=new Array(l);a[0]=d;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:i,a[1]=o;for(var c=2;c<l;c++)a[c]=r[c];return n.createElement.apply(null,a)}return n.createElement.apply(null,r)}d.displayName="MDXCreateElement"},39110:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>m,frontMatter:()=>l,metadata:()=>o,toc:()=>c});var n=r(87462),i=(r(67294),r(3905));const l={title:"Number",tags:["Fields","Field types","Numerical types","Number"]},a=void 0,o={unversionedId:"fields/field-types/numerical/number",id:"fields/field-types/numerical/number",title:"Number",description:"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.",source:"@site/docs/070.fields/040.field-types/020.numerical/010.number.md",sourceDirName:"070.fields/040.field-types/020.numerical",slug:"/fields/field-types/numerical/number",permalink:"/fields/field-types/numerical/number",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/020.numerical/010.number.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Numerical types",permalink:"/tags/numerical-types"},{label:"Number",permalink:"/tags/number"}],version:"current",sidebarPosition:10,frontMatter:{title:"Number",tags:["Fields","Field types","Numerical types","Number"]},sidebar:"tutorialSidebar",previous:{title:"URL",permalink:"/fields/field-types/text-based/url"},next:{title:"Decimal",permalink:"/fields/field-types/numerical/decimal"}},s={},c=[{value:"Create a number field",id:"create-a-number-field",level:2},{value:"Similar numerical fields",id:"similar-numerical-fields",level:2}],p={toc:c},u="wrapper";function m(e){let{components:t,...l}=e;return(0,i.kt)(u,(0,n.Z)({},p,l,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"Number")," field type is used to store numerical values. Use cases include storing ",(0,i.kt)("inlineCode",{parentName:"p"},"age"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"salary"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"price"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"quantity"),", etc."),(0,i.kt)("h2",{id:"create-a-number-field"},"Create a number field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Number")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:r(67604).Z,width:"1266",height:"549"})),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"This field type can hold both positive and negative numbers."),(0,i.kt)("li",{parentName:"ul"},"Supported range (JavaScript): -9007199254740991 to 9007199254740991"))),(0,i.kt)("h2",{id:"similar-numerical-fields"},"Similar numerical fields"),(0,i.kt)("p",null,"Following are the other numerical fields available in NocoDB, with some custom add-on features."),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/decimal"},"Decimal")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/percent"},"Percent")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/numerical/currency"},"Currency"))))}m.isMDXComponent=!0},67604:(e,t,r)=>{r.d(t,{Z:()=>n});const n=r.p+"assets/images/number-0cef1c4d333a56e19e4f34872d1c6b04.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e631982f.bf2deaa3.js b/packages/noco-docs/dist/assets/js/e631982f.bf2deaa3.js new file mode 100644 index 0000000000..42fda60dd9 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e631982f.bf2deaa3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5055],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>f});var n=r(67294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var d=n.createContext({}),s=function(e){var t=n.useContext(d),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(d.Provider,{value:t},e.children)},l="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,d=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),l=s(r),m=o,f=l["".concat(d,".").concat(m)]||l[m]||u[m]||a;return r?n.createElement(f,i(i({ref:t},p),{},{components:r})):n.createElement(f,i({ref:t},p))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,i=new Array(a);i[0]=m;var c={};for(var d in t)hasOwnProperty.call(t,d)&&(c[d]=t[d]);c.originalType=e,c[l]="string"==typeof e?e:o,i[1]=c;for(var s=2;s<a;s++)i[s]=r[s];return n.createElement.apply(null,i)}return n.createElement.apply(null,r)}m.displayName="MDXCreateElement"},12957:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>s});var n=r(87462),o=(r(67294),r(3905));const a={title:"Expanded Form",description:"NocoDB provides Expanded Form to let you edit your data easily"},i=void 0,c={unversionedId:"setup-and-usages/expanded-form",id:"version-0.109.7/setup-and-usages/expanded-form",title:"Expanded Form",description:"NocoDB provides Expanded Form to let you edit your data easily",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/expanded-form",permalink:"/0.109.7/setup-and-usages/expanded-form",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md",tags:[],version:"0.109.7",sidebarPosition:190,frontMatter:{title:"Expanded Form",description:"NocoDB provides Expanded Form to let you edit your data easily"},sidebar:"tutorialSidebar",previous:{title:"Languages",permalink:"/0.109.7/setup-and-usages/languages"},next:{title:"Import Airtable to NocoDB",permalink:"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free"}},d={},s=[{value:"Overview",id:"overview",level:2},{value:"Expanding a Record",id:"expanding-a-record",level:2},{value:"Activity Feed",id:"activity-feed",level:2},{value:"Copy Record URL",id:"copy-record-url",level:2},{value:"Save Button Option",id:"save-button-option",level:2}],p={toc:s},l="wrapper";function u(e){let{components:t,...r}=e;return(0,o.kt)(l,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h2",{id:"overview"},"Overview"),(0,o.kt)("p",null,"Expanded Form allows you to edit a row data in a form. It also shows the activity feed such as user comments or revision history. It can be also shared by others by copying the record URL."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203273340-987b1242-9c78-4195-9ca2-3d3c49c7bccf.png",alt:"image"})),(0,o.kt)("h2",{id:"expanding-a-record"},"Expanding a Record"),(0,o.kt)("p",null,"In a grid view, we can hover a row record and a doulbe arrow will be shown. By clicking it, the expanded form will be opened."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203274054-d20dc12b-7da8-4e6b-a144-19859b3c1c9c.png",alt:"image"})),(0,o.kt)("p",null,"Alternatively, we can highlight a cell and press the space bar. The expanded form for the correpsonding row will be opened."),(0,o.kt)("h2",{id:"activity-feed"},"Activity Feed"),(0,o.kt)("p",null,"In an expanded form, we can click ",(0,o.kt)("inlineCode",{parentName:"p"},"Toggle Comment View")," button to show the activity feed where we can optionally filter out comments only."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203275800-c8bc93f1-2a99-4766-8b81-70208c5675ca.png",alt:"image"})),(0,o.kt)("h2",{id:"copy-record-url"},"Copy Record URL"),(0,o.kt)("p",null,"In an expanded form, we can click ",(0,o.kt)("inlineCode",{parentName:"p"},"Copy Record URL")," to share the record form to other authorized users."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203276149-bc97c70a-8bbf-48b4-a3fb-dd437c9405d3.png",alt:"image"})),(0,o.kt)("h2",{id:"save-button-option"},"Save Button Option"),(0,o.kt)("p",null,"By default, when we save the form, the expanded form will be closed, i.e. ",(0,o.kt)("inlineCode",{parentName:"p"},"Save & Exit"),". However, if we prefer not to close the form even after saving, we can choose ",(0,o.kt)("inlineCode",{parentName:"p"},"Save & Stay")," mode instead. This is useful when you are editing a long form and you want to save it from time to time."),(0,o.kt)("p",null,(0,o.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/203276349-5d5c68d6-4523-41ae-8e23-312d2f6e9caa.png",alt:"image"})))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e68614dc.ce504158.js b/packages/noco-docs/dist/assets/js/e68614dc.ce504158.js new file mode 100644 index 0000000000..195bddd6ba --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e68614dc.ce504158.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[771],{3905:(e,t,l)=>{l.d(t,{Zo:()=>c,kt:()=>u});var n=l(67294);function a(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function i(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function o(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?i(Object(l),!0).forEach((function(t){a(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):i(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function r(e,t){if(null==e)return{};var l,n,a=function(e,t){if(null==e)return{};var l,n,a={},i=Object.keys(e);for(n=0;n<i.length;n++)l=i[n],t.indexOf(l)>=0||(a[l]=e[l]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)l=i[n],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(a[l]=e[l])}return a}var d=n.createContext({}),p=function(e){var t=n.useContext(d),l=t;return e&&(l="function"==typeof e?e(t):o(o({},t),e)),l},c=function(e){var t=p(e.components);return n.createElement(d.Provider,{value:t},e.children)},s="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var l=e.components,a=e.mdxType,i=e.originalType,d=e.parentName,c=r(e,["components","mdxType","originalType","parentName"]),s=p(l),f=a,u=s["".concat(d,".").concat(f)]||s[f]||m[f]||i;return l?n.createElement(u,o(o({ref:t},c),{},{components:l})):n.createElement(u,o({ref:t},c))}));function u(e,t){var l=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var i=l.length,o=new Array(i);o[0]=f;var r={};for(var d in t)hasOwnProperty.call(t,d)&&(r[d]=t[d]);r.originalType=e,r[s]="string"==typeof e?e:a,o[1]=r;for(var p=2;p<i;p++)o[p]=l[p];return n.createElement.apply(null,o)}return n.createElement.apply(null,l)}f.displayName="MDXCreateElement"},19809:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>i,metadata:()=>r,toc:()=>p});var n=l(87462),a=(l(67294),l(3905));const i={title:"Attachment",tags:["Fields","Field types","Custom types","Attachment"]},o=void 0,r={unversionedId:"fields/field-types/custom-types/attachment",id:"fields/field-types/custom-types/attachment",title:"Attachment",description:"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.",source:"@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/attachment",permalink:"/fields/field-types/custom-types/attachment",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/010.attachment.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Attachment",permalink:"/tags/attachment"}],version:"current",sidebarPosition:10,frontMatter:{title:"Attachment",tags:["Fields","Field types","Custom types","Attachment"]},sidebar:"tutorialSidebar",previous:{title:"Rollup",permalink:"/fields/field-types/links-based/rollup"},next:{title:"Checkbox",permalink:"/fields/field-types/custom-types/checkbox"}},d={},p=[{value:"Create an Attachment field",id:"create-an-attachment-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Upload files",id:"upload-files",level:3},{value:"Expand modal",id:"expand-modal",level:2},{value:"Attach file(s)",id:"attach-files",level:3},{value:"Delete file",id:"delete-file",level:3},{value:"Download file",id:"download-file",level:3},{value:"Bulk Download file(s)",id:"bulk-download-files",level:3},{value:"Rename file",id:"rename-file",level:3}],c={toc:p},s="wrapper";function m(e){let{components:t,...i}=e;return(0,a.kt)(s,(0,n.Z)({},c,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single ",(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," field record."),(0,a.kt)("h2",{id:"create-an-attachment-field"},"Create an Attachment field"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,a.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,a.kt)("li",{parentName:"ol"},"[",(0,a.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,a.kt)("li",{parentName:"ol"},"Select the field type as ",(0,a.kt)("inlineCode",{parentName:"li"},"Attachment")," from the dropdown."),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:l(37829).Z,width:"1269",height:"493"})),(0,a.kt)("h3",{id:"cell-display"},"Cell display"),(0,a.kt)("p",null,"The cell display for ",(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," field is either a clickable preview if file is an image in recognizable format or a file-type icon.",(0,a.kt)("br",{parentName:"p"}),"\n",(0,a.kt)("img",{alt:"image",src:l(76250).Z,width:"1266",height:"687"})),(0,a.kt)("h3",{id:"upload-files"},"Upload files"),(0,a.kt)("p",null,"To upload files to an ",(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," field, "),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on the ",(0,a.kt)("inlineCode",{parentName:"li"},"+")," icon in the cell, choose the file to upload and click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Upload")," button. OR"),(0,a.kt)("li",{parentName:"ul"},"Drag drop the file to the cell. OR"),(0,a.kt)("li",{parentName:"ul"},"Click on expand icon ",(0,a.kt)("inlineCode",{parentName:"li"},"<>"),", choose the file to upload or drag-drop file; click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Upload")," button.")),(0,a.kt)("h2",{id:"expand-modal"},"Expand modal"),(0,a.kt)("p",null,"Expand modal for ",(0,a.kt)("inlineCode",{parentName:"p"},"Attachment")," field displays the list of files uploaded to the field. You can also upload files from the expand modal. To access expand modal, click on the expand icon ",(0,a.kt)("inlineCode",{parentName:"p"},"<>")," in the cell."),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:l(5135).Z,width:"1527",height:"638"})),(0,a.kt)("p",null,"Expand modal supports the following actions:"),(0,a.kt)("h3",{id:"attach-files"},"Attach file(s)"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Attach file(s)")," button <1>"),(0,a.kt)("li",{parentName:"ul"},"Choose the file(s) to upload")),(0,a.kt)("h3",{id:"delete-file"},"Delete file"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"x")," icon <2> to the top left of the image card to delete the file")),(0,a.kt)("h3",{id:"download-file"},"Download file"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Download")," button <5> to download the file")),(0,a.kt)("h3",{id:"bulk-download-files"},"Bulk Download file(s)"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Select the files by clicking on the checkbox <3> to the top left of the image card"),(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Bulk Download")," button <4> to download the selected files")),(0,a.kt)("h3",{id:"rename-file"},"Rename file"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Rename")," button <5> to rename the file"),(0,a.kt)("li",{parentName:"ul"},"Enter the new name in the input field"),(0,a.kt)("li",{parentName:"ul"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Rename")," button to save the new name")),(0,a.kt)("admonition",{type:"note"},(0,a.kt)("p",{parentName:"admonition"},"Rename file only renames the file in NocoDB display (expand record & tool tip on hover). It does not rename the file in the storage.")))}m.isMDXComponent=!0},76250:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/attachment-cell-63aeff518251334ef9ebdd018c752b1b.png"},5135:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/attachment-expand-bf0a44f3b002a3efa120b55211ac4d3c.png"},37829:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/attachment-07fc09954116d2fc22ef8e2f25b41688.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e68e0fff.ebde1054.js b/packages/noco-docs/dist/assets/js/e68e0fff.ebde1054.js new file mode 100644 index 0000000000..3c31086330 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e68e0fff.ebde1054.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6859],{27048:e=>{e.exports=JSON.parse('{"label":"Cover image","permalink":"/tags/cover-image","allTagsPath":"/tags","count":1,"items":[{"id":"table-operations/field-operations","title":"Hide & reorder fields","description":"Learn how to hide and reorder fields in NocoDB.","permalink":"/table-operations/field-operations"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/e8cbe097.b5426eca.js b/packages/noco-docs/dist/assets/js/e8cbe097.b5426eca.js new file mode 100644 index 0000000000..d016fe5003 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/e8cbe097.b5426eca.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1635],{73637:e=>{e.exports=JSON.parse('{"label":"Field types","permalink":"/tags/field-types","allTagsPath":"/tags","count":32,"items":[{"id":"fields/field-types/custom-types/attachment","title":"Attachment","description":"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.","permalink":"/fields/field-types/custom-types/attachment"},{"id":"fields/field-types/custom-types/barcode","title":"Barcode","description":"Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/barcode"},{"id":"fields/field-types/custom-types/checkbox","title":"Checkbox","description":"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.","permalink":"/fields/field-types/custom-types/checkbox"},{"id":"fields/field-types/formula/conditional-expressions","title":"Conditional expressions","description":"Conditional expressions","permalink":"/fields/field-types/formula/conditional-expressions"},{"id":"fields/field-types/numerical/currency","title":"Currency","description":"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.","permalink":"/fields/field-types/numerical/currency"},{"id":"fields/field-types/date-time-based/date","title":"Date","description":"Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/date"},{"id":"fields/field-types/formula/date-functions","title":"Date functions","description":"| Name | Syntax | Sample | Output | Remark |","permalink":"/fields/field-types/formula/date-functions"},{"id":"fields/field-types/date-time-based/date-time","title":"Date Time","description":"Date Time field type is used to store both date and time values in a single field.","permalink":"/fields/field-types/date-time-based/date-time"},{"id":"fields/field-types/numerical/decimal","title":"Decimal","description":"Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.","permalink":"/fields/field-types/numerical/decimal"},{"id":"fields/field-types/date-time-based/duration","title":"Duration","description":"Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.","permalink":"/fields/field-types/date-time-based/duration"},{"id":"fields/field-types/text-based/email","title":"Email","description":"Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/email"},{"id":"fields/field-types/formula/formula","title":"Formula","description":"Create a formula field","permalink":"/fields/field-types/formula/formula"},{"id":"fields/field-types/custom-types/geometry","title":"Geometry","description":"Create a geometry field","permalink":"/fields/field-types/custom-types/geometry"},{"id":"fields/field-types/custom-types/json","title":"JSON","description":"JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.","permalink":"/fields/field-types/custom-types/json"},{"id":"fields/field-types/links-based/links","title":"Links","description":"Links field type is used to establish relationship between tables & create links to other records.","permalink":"/fields/field-types/links-based/links"},{"id":"fields/field-types/text-based/long-text","title":"Long text","description":"Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.","permalink":"/fields/field-types/text-based/long-text"},{"id":"fields/field-types/links-based/lookup","title":"LookUp","description":"Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer\'s name and address in the Orders table.","permalink":"/fields/field-types/links-based/lookup"},{"id":"fields/field-types/select-based/multi-select","title":"Multi Select","description":"Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/multi-select"},{"id":"fields/field-types/numerical/number","title":"Number","description":"Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.","permalink":"/fields/field-types/numerical/number"},{"id":"fields/field-types/formula/operators","title":"Numeric and Logical Operators","description":"Numeric operators","permalink":"/fields/field-types/formula/operators"},{"id":"fields/field-types/formula/numeric-functions","title":"Numeric functions","description":"Numeric functions","permalink":"/fields/field-types/formula/numeric-functions"},{"id":"fields/field-types/numerical/percent","title":"Percent","description":"Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.","permalink":"/fields/field-types/numerical/percent"},{"id":"fields/field-types/text-based/phonenumber","title":"Phone Number","description":"Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.","permalink":"/fields/field-types/text-based/phonenumber"},{"id":"fields/field-types/custom-types/QR-code","title":"QR code","description":"QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.","permalink":"/fields/field-types/custom-types/QR-code"},{"id":"fields/field-types/custom-types/rating","title":"Rating","description":"The","permalink":"/fields/field-types/custom-types/rating"},{"id":"fields/field-types/links-based/rollup","title":"Rollup","description":"Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.","permalink":"/fields/field-types/links-based/rollup"},{"id":"fields/field-types/text-based/single-line-text","title":"Single line text","description":"Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.","permalink":"/fields/field-types/text-based/single-line-text"},{"id":"fields/field-types/select-based/single-select","title":"Single Select","description":"Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.","permalink":"/fields/field-types/select-based/single-select"},{"id":"fields/field-types/custom-types/specific-db-type","title":"Specific DB type","description":"Create a Specific DB Type field","permalink":"/fields/field-types/custom-types/specific-db-type"},{"id":"fields/field-types/formula/string-functions","title":"String functions","description":"String functions","permalink":"/fields/field-types/formula/string-functions"},{"id":"fields/field-types/date-time-based/time","title":"Time","description":"Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.","permalink":"/fields/field-types/date-time-based/time"},{"id":"fields/field-types/text-based/url","title":"URL","description":"URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with","permalink":"/fields/field-types/text-based/url"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/eb689018.e9e2a71b.js b/packages/noco-docs/dist/assets/js/eb689018.e9e2a71b.js new file mode 100644 index 0000000000..8da3b10b5e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/eb689018.e9e2a71b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[4851],{3905:(e,a,t)=>{t.d(a,{Zo:()=>b,kt:()=>h});var s=t(67294);function r(e,a,t){return a in e?Object.defineProperty(e,a,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[a]=t,e}function n(e,a){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);a&&(s=s.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),t.push.apply(t,s)}return t}function o(e){for(var a=1;a<arguments.length;a++){var t=null!=arguments[a]?arguments[a]:{};a%2?n(Object(t),!0).forEach((function(a){r(e,a,t[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):n(Object(t)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))}))}return e}function i(e,a){if(null==e)return{};var t,s,r=function(e,a){if(null==e)return{};var t,s,r={},n=Object.keys(e);for(s=0;s<n.length;s++)t=n[s],a.indexOf(t)>=0||(r[t]=e[t]);return r}(e,a);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(s=0;s<n.length;s++)t=n[s],a.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(r[t]=e[t])}return r}var l=s.createContext({}),c=function(e){var a=s.useContext(l),t=a;return e&&(t="function"==typeof e?e(a):o(o({},a),e)),t},b=function(e){var a=c(e.components);return s.createElement(l.Provider,{value:a},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var a=e.children;return s.createElement(s.Fragment,{},a)}},m=s.forwardRef((function(e,a){var t=e.components,r=e.mdxType,n=e.originalType,l=e.parentName,b=i(e,["components","mdxType","originalType","parentName"]),p=c(t),m=r,h=p["".concat(l,".").concat(m)]||p[m]||d[m]||n;return t?s.createElement(h,o(o({ref:a},b),{},{components:t})):s.createElement(h,o({ref:a},b))}));function h(e,a){var t=arguments,r=a&&a.mdxType;if("string"==typeof e||r){var n=t.length,o=new Array(n);o[0]=m;var i={};for(var l in a)hasOwnProperty.call(a,l)&&(i[l]=a[l]);i.originalType=e,i[p]="string"==typeof e?e:r,o[1]=i;for(var c=2;c<n;c++)o[c]=t[c];return s.createElement.apply(null,o)}return s.createElement.apply(null,t)}m.displayName="MDXCreateElement"},91431:(e,a,t)=>{t.r(a),t.d(a,{assets:()=>l,contentTitle:()=>o,default:()=>d,frontMatter:()=>n,metadata:()=>i,toc:()=>c});var s=t(87462),r=(t(67294),t(3905));const n={title:"Base overview",description:"This article explains the concept of bases in NocoDB.",tags:["Bases","Overview","Dashboard"],keywords:["NocoDB base","base overview","base dashboard","base collaboration","base actions","delete base","base management","base administration","base settings","base organization"]},o=void 0,i={unversionedId:"bases/base-overview",id:"bases/base-overview",title:"Base overview",description:"This article explains the concept of bases in NocoDB.",source:"@site/docs/040.bases/010.base-overview.md",sourceDirName:"040.bases",slug:"/bases/base-overview",permalink:"/bases/base-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/040.bases/010.base-overview.md",tags:[{label:"Bases",permalink:"/tags/bases"},{label:"Overview",permalink:"/tags/overview"},{label:"Dashboard",permalink:"/tags/dashboard"}],version:"current",sidebarPosition:10,frontMatter:{title:"Base overview",description:"This article explains the concept of bases in NocoDB.",tags:["Bases","Overview","Dashboard"],keywords:["NocoDB base","base overview","base dashboard","base collaboration","base actions","delete base","base management","base administration","base settings","base organization"]},sidebar:"tutorialSidebar",previous:{title:"Actions on workspace",permalink:"/workspaces/actions-on-workspace"},next:{title:"Create base",permalink:"/bases/create-base"}},l={},c=[{value:"Base Dashboard",id:"base-dashboard",level:2},{value:"Related articles",id:"related-articles",level:2}],b={toc:c},p="wrapper";function d(e){let{components:a,...n}=e;return(0,r.kt)(p,(0,s.Z)({},b,n,{components:a,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"In NocoDB, bases are the foundational elements that encompass tables, views, forms, and webhooks,\nproviding a structured framework for data organization and collaborative work.\nIt's essential to understand that each base is inherently tied to a specific workspace and cannot be transferred between\ndifferent workspaces. The creator of a base is designated as the 'base owner,' and this ownership status is\nnon-transferable, conferring exclusive authority over the base, including the ability to delete it."),(0,r.kt)("p",null,"Bases also come with their unique set of members and access permissions, which take precedence over any permissions set at the workspace level.\nThis fine-grained control allows for tailored collaboration and data management within each base.\nImportantly, there are no restrictions on the number of members you can invite to a base, fostering open teamwork.\nSimilarly, you have the freedom to create as many tables as needed within a single base,\noffering the scalability required to accommodate diverse datasets and projects. "),(0,r.kt)("h2",{id:"base-dashboard"},"Base Dashboard"),(0,r.kt)("p",null,"The Base Dashboard serves as the primary landing page for a base, offering users a concise summary of its contents and functionality.\nThis central hub provides users with swift access to essential features such as base settings and collaboration tools.\nTo access the Base Dashboard, simply click on the base name located in the left sidebar. "),(0,r.kt)("p",null,(0,r.kt)("img",{alt:"image",src:t(38548).Z,width:"2874",height:"1572"})),(0,r.kt)("p",null,"The Base Dashboard is organized into three key sections, each serving a distinct purpose:"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},(0,r.kt)("strong",{parentName:"p"},"Table List"),": This section provides a comprehensive list of all tables within the base,\nincluding those sourced from external data repositories. Users can conveniently access a specific table by clicking\non its name. Tables originating from external sources are clearly highlighted in the list for easy identification.")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},(0,r.kt)("strong",{parentName:"p"},"Base Members"),": In this section, users can view a roster of members associated with the base, along with their\nrespective permission levels. It's worth noting that members who are part of the workspace automatically inherit\naccess permissions at the base level. However, the base owner retains the ability to adjust these permissions,\neither increasing or decreasing them. Further details on collaboration management can be found in the dedicated\n",(0,r.kt)("a",{parentName:"p",href:"base-collaboration"},"Base Collaborations")," section.")),(0,r.kt)("li",{parentName:"ol"},(0,r.kt)("p",{parentName:"li"},(0,r.kt)("strong",{parentName:"p"},"Data Sources"),": NocoDB offers the functionality to connect with external data sources and seamlessly\nintegrate them as native tables. This section provides a listing of connected data sources, setting the stage\nfor additional details on this feature, which will be covered in the forthcoming ",(0,r.kt)("a",{parentName:"p",href:"/data-source/data-source-overview"},"Data Sources")," section.\nThis feature empowers users to work with external data as effortlessly as with in-house data tables, enhancing the versatility\nand scope of data management within the base."))),(0,r.kt)("h2",{id:"related-articles"},"Related articles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/base-overview"},"Base overview")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/create-base"},"Create an empty base")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/import-base-from-airtable"},"Import base from Airtable")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/base-collaboration"},"Invite team members to work on a base")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/share-base"},"Share base publicly")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/actions-on-base#rename-base"},"Rename base")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/actions-on-base#duplicate-base"},"Duplicate base")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/actions-on-base#star-base"},"Bookmark base")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"/bases/actions-on-base#delete-base"},"Delete base"))))}d.isMDXComponent=!0},38548:(e,a,t)=>{t.d(a,{Z:()=>s});const s=t.p+"assets/images/base-dashboard-40e8017a6e324432c160ae8fa388abc5.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ebb99180.c91c6436.js b/packages/noco-docs/dist/assets/js/ebb99180.c91c6436.js new file mode 100644 index 0000000000..6860df977f --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ebb99180.c91c6436.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[346],{3905:(e,t,r)=>{r.d(t,{Zo:()=>c,kt:()=>v});var a=r(67294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t){if(null==e)return{};var r,a,i=function(e,t){if(null==e)return{};var r,a,i={},l=Object.keys(e);for(a=0;a<l.length;a++)r=l[a],t.indexOf(r)>=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)r=l[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var s=a.createContext({}),p=function(e){var t=a.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):n(n({},t),e)),r},c=function(e){var t=p(e.components);return a.createElement(s.Provider,{value:t},e.children)},d="mdxType",y={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},w=a.forwardRef((function(e,t){var r=e.components,i=e.mdxType,l=e.originalType,s=e.parentName,c=o(e,["components","mdxType","originalType","parentName"]),d=p(r),w=i,v=d["".concat(s,".").concat(w)]||d[w]||y[w]||l;return r?a.createElement(v,n(n({ref:t},c),{},{components:r})):a.createElement(v,n({ref:t},c))}));function v(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var l=r.length,n=new Array(l);n[0]=w;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[d]="string"==typeof e?e:i,n[1]=o;for(var p=2;p<l;p++)n[p]=r[p];return a.createElement.apply(null,n)}return a.createElement.apply(null,r)}w.displayName="MDXCreateElement"},61669:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>n,default:()=>y,frontMatter:()=>l,metadata:()=>o,toc:()=>p});var a=r(87462),i=(r(67294),r(3905));const l={title:"Gallery",tags:["Views","Gallery View"],keywords:["NocoDB gallery view","gallery view","gallery"]},n=void 0,o={unversionedId:"views/view-types/gallery",id:"views/view-types/gallery",title:"Gallery",description:"Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.",source:"@site/docs/090.views/040.view-types/020.gallery.md",sourceDirName:"090.views/040.view-types",slug:"/views/view-types/gallery",permalink:"/views/view-types/gallery",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/090.views/040.view-types/020.gallery.md",tags:[{label:"Views",permalink:"/tags/views"},{label:"Gallery View",permalink:"/tags/gallery-view"}],version:"current",sidebarPosition:20,frontMatter:{title:"Gallery",tags:["Views","Gallery View"],keywords:["NocoDB gallery view","gallery view","gallery"]},sidebar:"tutorialSidebar",previous:{title:"Grid",permalink:"/views/view-types/grid"},next:{title:"Form",permalink:"/views/view-types/form"}},s={},p=[{value:"Gallery View Actions",id:"gallery-view-actions",level:2},{value:"Gallery View Operations",id:"gallery-view-operations",level:2},{value:"Gallery View Record Operations",id:"gallery-view-record-operations",level:2},{value:"Related articles",id:"related-articles",level:2}],c={toc:p},d="wrapper";function y(e){let{components:t,...l}=e;return(0,i.kt)(d,(0,a.Z)({},c,l,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"1010-2 Gallery",src:r(81216).Z,width:"2880",height:"1800"})),(0,i.kt)("h2",{id:"gallery-view-actions"},"Gallery View Actions"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/create-view/#create-new-view"},"Create a New Gallery View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#rename-view"},"Rename an Existing Gallery View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#duplicate-view"},"Duplicate a Gallery View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/actions-on-view#delete-view"},"Remove a Gallery View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/share-view"},"Share a Gallery View")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/views/views-overview#view-permission-types"},"Lock Gallery View for Edits"))),(0,i.kt)("h2",{id:"gallery-view-operations"},"Gallery View Operations"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#rearranging-fields"},"Rearrange Fields Within the Gallery")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#showhide-fields"},"Show or Hide Fields Within the Gallery")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/filter"},"Apply Filters to Display Specific Records on the Gallery")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/sort"},"Sort Records on the Gallery by One or More Criteria")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/search"},"Perform Quick Searches for Specific Data Within Fields")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/download#download-data"},"Export Data to CSV or Excel Format")),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("a",{parentName:"li",href:"/table-operations/field-operations#change-cover-field-gallerykanban-view"},"Change Cover Image")," ")),(0,i.kt)("h2",{id:"gallery-view-record-operations"},"Gallery View Record Operations"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Add a New Record to the Gallery"),": Currently it is not possible to insert a new record directly on the gallery view. However, you can add a new record to the table, and it will be displayed on the gallery view."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Edit an Existing Record on the Gallery"),": Click on the card on the gallery view to open the record in the expanded record view. You can edit the record in the form view and save it."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Delete a Single Record from the Gallery"),": Click on the card on the gallery view to open the record in the expanded record view. You can delete the record in the form view by using the expanded record context menu."),(0,i.kt)("li",{parentName:"ol"},(0,i.kt)("strong",{parentName:"li"},"Delete Multiple Records in Bulk from the Gallery"),": Currently it is not possible to delete multiple records in bulk directly on the gallery view. However, you can delete multiple records in bulk from the grid view & it will be reflected on the gallery view.")),(0,i.kt)("h2",{id:"related-articles"},"Related articles"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"/views/view-types/grid"},"Grid View"),(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("a",{parentName:"p",href:"/views/view-types/form"},"Form View"),(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("a",{parentName:"p",href:"/views/view-types/kanban"},"Kanban View")))}y.isMDXComponent=!0},81216:(e,t,r)=>{r.d(t,{Z:()=>a});const a=r.p+"assets/images/gallery-45f0b39f541ab7afc2a5b7d44f010406.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ec134df3.1f274f12.js b/packages/noco-docs/dist/assets/js/ec134df3.1f274f12.js new file mode 100644 index 0000000000..fdd4a4b1fc --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ec134df3.1f274f12.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5921],{3905:(e,t,l)=>{l.d(t,{Zo:()=>d,kt:()=>m});var n=l(67294);function i(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,n)}return l}function r(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?a(Object(l),!0).forEach((function(t){i(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):a(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function o(e,t){if(null==e)return{};var l,n,i=function(e,t){if(null==e)return{};var l,n,i={},a=Object.keys(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||(i[l]=e[l]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)l=a[n],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(i[l]=e[l])}return i}var s=n.createContext({}),p=function(e){var t=n.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):r(r({},t),e)),l},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},c="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},u=n.forwardRef((function(e,t){var l=e.components,i=e.mdxType,a=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),c=p(l),u=i,m=c["".concat(s,".").concat(u)]||c[u]||f[u]||a;return l?n.createElement(m,r(r({ref:t},d),{},{components:l})):n.createElement(m,r({ref:t},d))}));function m(e,t){var l=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var a=l.length,r=new Array(a);r[0]=u;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[c]="string"==typeof e?e:i,r[1]=o;for(var p=2;p<a;p++)r[p]=l[p];return n.createElement.apply(null,r)}return n.createElement.apply(null,l)}u.displayName="MDXCreateElement"},90279:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>f,frontMatter:()=>a,metadata:()=>o,toc:()=>p});var n=l(87462),i=(l(67294),l(3905));const a={title:"Rating",tags:["Fields","Field types","Custom types","Rating"]},r=void 0,o={unversionedId:"fields/field-types/custom-types/rating",id:"fields/field-types/custom-types/rating",title:"Rating",description:"The",source:"@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/rating",permalink:"/fields/field-types/custom-types/rating",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/030.rating.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Rating",permalink:"/tags/rating"}],version:"current",sidebarPosition:30,frontMatter:{title:"Rating",tags:["Fields","Field types","Custom types","Rating"]},sidebar:"tutorialSidebar",previous:{title:"Checkbox",permalink:"/fields/field-types/custom-types/checkbox"},next:{title:"QR code",permalink:"/fields/field-types/custom-types/QR-code"}},s={},p=[{value:"Create a checkbox field",id:"create-a-checkbox-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Setting value for the field",id:"setting-value-for-the-field",level:3},{value:"Unsetting value for the field",id:"unsetting-value-for-the-field",level:3},{value:"Supported icons",id:"supported-icons",level:3},{value:"Related fields",id:"related-fields",level:2}],d={toc:p},c="wrapper";function f(e){let{components:t,...a}=e;return(0,i.kt)(c,(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"The "),(0,i.kt)("h2",{id:"create-a-checkbox-field"},"Create a checkbox field"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,i.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,i.kt)("li",{parentName:"ol"},"Select the field type as ",(0,i.kt)("inlineCode",{parentName:"li"},"Rating")," from the dropdown."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Select icon for the field; defaults to ",(0,i.kt)("inlineCode",{parentName:"li"},"star")," icon."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Configure max count for the field; defaults to ",(0,i.kt)("inlineCode",{parentName:"li"},"5"),"."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Select color for the field; defaults to ",(0,i.kt)("inlineCode",{parentName:"li"},"grey"),"."),(0,i.kt)("li",{parentName:"ol"},"[",(0,i.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,i.kt)("li",{parentName:"ol"},"Click on ",(0,i.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"image",src:l(66990).Z,width:"1267",height:"645"})),(0,i.kt)("h3",{id:"cell-display"},"Cell display"),(0,i.kt)("p",null,"Cell displays the ratings in the color & icon selected for the field.",(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("img",{alt:"image",src:l(23237).Z,width:"1264",height:"593"})),(0,i.kt)("h3",{id:"setting-value-for-the-field"},"Setting value for the field"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"nth")," rating icon to set the rating value for the field as ",(0,i.kt)("inlineCode",{parentName:"li"},"n"),"."),(0,i.kt)("li",{parentName:"ul"},"Key in the rating value in the cell to set the rating value for the field."),(0,i.kt)("li",{parentName:"ul"},"Paste the rating value in the cell to set the rating value for the field.")),(0,i.kt)("h3",{id:"unsetting-value-for-the-field"},"Unsetting value for the field"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Click on the ",(0,i.kt)("inlineCode",{parentName:"li"},"nth")," rating icon again to set the rating value for the field as ",(0,i.kt)("inlineCode",{parentName:"li"},"0"),"."),(0,i.kt)("li",{parentName:"ul"},"Key in ",(0,i.kt)("inlineCode",{parentName:"li"},"0")," in the cell to set the rating value for the field as ",(0,i.kt)("inlineCode",{parentName:"li"},"0"),"."),(0,i.kt)("li",{parentName:"ul"},"Key in ",(0,i.kt)("inlineCode",{parentName:"li"},"Delete")," to set the rating value for the field as ",(0,i.kt)("inlineCode",{parentName:"li"},"0"),".")),(0,i.kt)("h3",{id:"supported-icons"},"Supported icons"),(0,i.kt)("p",null,"NocoDB supports the following icons for the rating field type.",(0,i.kt)("br",{parentName:"p"}),"\n",(0,i.kt)("img",{alt:"image",src:l(56057).Z,width:"400",height:"445"})),(0,i.kt)("h2",{id:"related-fields"},"Related fields"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/fields/field-types/custom-types/checkbox"},"Checkbox"))))}f.isMDXComponent=!0},23237:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/rating-cell-ab9000c7aa5624758b22f06f59b5495e.png"},56057:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/rating-icon-06378f121f8364a58ce1b0da016f6b12.png"},66990:(e,t,l)=>{l.d(t,{Z:()=>n});const n=l.p+"assets/images/rating-e00623f8051d56ee1eb07b9d3f3bf916.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ec135315.aecf4cd4.js b/packages/noco-docs/dist/assets/js/ec135315.aecf4cd4.js new file mode 100644 index 0000000000..fd36d56afa --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ec135315.aecf4cd4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[6125],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>u});var a=r(67294);function i(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){if(null==e)return{};var r,a,i=function(e,t){if(null==e)return{};var r,a,i={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var d=a.createContext({}),s=function(e){var t=a.useContext(d),r=t;return e&&(r="function"==typeof e?e(t):o(o({},t),e)),r},p=function(e){var t=s(e.components);return a.createElement(d.Provider,{value:t},e.children)},y="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},c=a.forwardRef((function(e,t){var r=e.components,i=e.mdxType,n=e.originalType,d=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),y=s(r),c=i,u=y["".concat(d,".").concat(c)]||y[c]||m[c]||n;return r?a.createElement(u,o(o({ref:t},p),{},{components:r})):a.createElement(u,o({ref:t},p))}));function u(e,t){var r=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var n=r.length,o=new Array(n);o[0]=c;var l={};for(var d in t)hasOwnProperty.call(t,d)&&(l[d]=t[d]);l.originalType=e,l[y]="string"==typeof e?e:i,o[1]=l;for(var s=2;s<n;s++)o[s]=r[s];return a.createElement.apply(null,o)}return a.createElement.apply(null,r)}c.displayName="MDXCreateElement"},16033:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>n,metadata:()=>l,toc:()=>s});var a=r(87462),i=(r(67294),r(3905));const n={title:"Primary key",description:"Understanding Primary Key in NocoDB!",tags:["Fields","Primary Key"],keywords:["NocoDB primary key","primary key","primary key in NocoDB","primary key in database"]},o="Primary Key",l={unversionedId:"fields/primary-key",id:"fields/primary-key",title:"Primary key",description:"Understanding Primary Key in NocoDB!",source:"@site/docs/070.fields/020.primary-key.md",sourceDirName:"070.fields",slug:"/fields/primary-key",permalink:"/fields/primary-key",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/020.primary-key.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Primary Key",permalink:"/tags/primary-key"}],version:"current",sidebarPosition:20,frontMatter:{title:"Primary key",description:"Understanding Primary Key in NocoDB!",tags:["Fields","Primary Key"],keywords:["NocoDB primary key","primary key","primary key in NocoDB","primary key in database"]},sidebar:"tutorialSidebar",previous:{title:"Fields overview",permalink:"/fields/fields-overview"},next:{title:"Display value",permalink:"/fields/display-value"}},d={},s=[{value:"Use of Primary Key",id:"use-of-primary-key",level:2},{value:"Primary Key in NocoDB",id:"primary-key-in-nocodb",level:2}],p={toc:s},y="wrapper";function m(e){let{components:t,...r}=e;return(0,i.kt)(y,(0,a.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"primary-key"},"Primary Key"),(0,i.kt)("p",null,"A primary key is a special database table column designated to uniquely identify each table record."),(0,i.kt)("h2",{id:"use-of-primary-key"},"Use of Primary Key"),(0,i.kt)("p",null,"As it uniquely identifies an individual record of a table, it is used internally by NocoDB for all operations associated with a record"),(0,i.kt)("h2",{id:"primary-key-in-nocodb"},"Primary Key in NocoDB"),(0,i.kt)("p",null,"Primary Key that gets defined / used in NocoDB depends on how underlying table was created. Summary is captured below"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"From UI, Create new table / Import from Excel / Import from CSV",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"An ",(0,i.kt)("inlineCode",{parentName:"li"},"ID")," ","[datatype: Integer]"," system field created by default during table creation is used as primary key"),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are inserted by default & can be omitted optionally; these fields can be deleted after table creation"))),(0,i.kt)("li",{parentName:"ol"},"Connect to existing external database",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"Existing ",(0,i.kt)("inlineCode",{parentName:"li"},"primary key")," field defined for a table is retained as is; NocoDB doesn't insert a new ID field"),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are not inserted by default"))),(0,i.kt)("li",{parentName:"ol"},"Import from Airtable",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"Airtable record ID is marked as primary key for imported records, and is mapped to field ",(0,i.kt)("inlineCode",{parentName:"li"},"ncRecordId")," ","[datatype: varchar]"),(0,i.kt)("li",{parentName:"ol"},"If a new record is inserted after migration & if ncRecordId field was omitted during record insertion - auto generated string will be inserted by NocoDB"),(0,i.kt)("li",{parentName:"ol"},"Computed hash value for the entire record is stored in system field ",(0,i.kt)("inlineCode",{parentName:"li"},"ncRecordHash")),(0,i.kt)("li",{parentName:"ol"},"Additional system fields ",(0,i.kt)("inlineCode",{parentName:"li"},"created-at"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"updated-at")," are not inserted by default"))),(0,i.kt)("li",{parentName:"ol"},"Create new table using SDK / API",(0,i.kt)("ol",{parentName:"li"},(0,i.kt)("li",{parentName:"ol"},"No default primary key field is introduced by NocoDB. It has to be explicitly specified during table creation (using attribute ",(0,i.kt)("inlineCode",{parentName:"li"},"pk: true"),")")))),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},(0,i.kt)("strong",{parentName:"p"},"What if Primary Key was missing?")," "),(0,i.kt)("p",{parentName:"admonition"},"It is possible to have a table without any primary key."),(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},"External database table can be created without primary key configuration.")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},"New table can be created using SDK / API without primary key "),(0,i.kt)("p",{parentName:"li"},"In such scenario's, new records can be created in NocoDB for this table, but records can't be updated or deleted as there is no way for NocoDB to uniquely identify these records")))),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},(0,i.kt)("strong",{parentName:"p"},"Can I change the Primary Key to another column within tables?")," "),(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"You can't update Primary Key from NocoDB UI. You can reconfigure it at database level directly & trigger ",(0,i.kt)("inlineCode",{parentName:"li"},"meta sync")," explicitly."))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ed0a57e3.d0105ecb.js b/packages/noco-docs/dist/assets/js/ed0a57e3.d0105ecb.js new file mode 100644 index 0000000000..4b9acce66e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ed0a57e3.d0105ecb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[8690],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>m});var o=l(67294);function n(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function r(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,o)}return l}function a(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?r(Object(l),!0).forEach((function(t){n(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):r(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function i(e,t){if(null==e)return{};var l,o,n=function(e,t){if(null==e)return{};var l,o,n={},r=Object.keys(e);for(o=0;o<r.length;o++)l=r[o],t.indexOf(l)>=0||(n[l]=e[l]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o<r.length;o++)l=r[o],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(n[l]=e[l])}return n}var s=o.createContext({}),c=function(e){var t=o.useContext(s),l=t;return e&&(l="function"==typeof e?e(t):a(a({},t),e)),l},p=function(e){var t=c(e.components);return o.createElement(s.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},f=o.forwardRef((function(e,t){var l=e.components,n=e.mdxType,r=e.originalType,s=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),d=c(l),f=n,m=d["".concat(s,".").concat(f)]||d[f]||u[f]||r;return l?o.createElement(m,a(a({ref:t},p),{},{components:l})):o.createElement(m,a({ref:t},p))}));function m(e,t){var l=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var r=l.length,a=new Array(r);a[0]=f;var i={};for(var s in t)hasOwnProperty.call(t,s)&&(i[s]=t[s]);i.originalType=e,i[d]="string"==typeof e?e:n,a[1]=i;for(var c=2;c<r;c++)a[c]=l[c];return o.createElement.apply(null,a)}return o.createElement.apply(null,l)}f.displayName="MDXCreateElement"},67123:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>u,frontMatter:()=>r,metadata:()=>i,toc:()=>c});var o=l(87462),n=(l(67294),l(3905));const r={title:"Checkbox",tags:["Fields","Field types","Custom types","Checkbox"]},a=void 0,i={unversionedId:"fields/field-types/custom-types/checkbox",id:"fields/field-types/custom-types/checkbox",title:"Checkbox",description:"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.",source:"@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md",sourceDirName:"070.fields/040.field-types/050.custom-types",slug:"/fields/field-types/custom-types/checkbox",permalink:"/fields/field-types/custom-types/checkbox",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Field types",permalink:"/tags/field-types"},{label:"Custom types",permalink:"/tags/custom-types"},{label:"Checkbox",permalink:"/tags/checkbox"}],version:"current",sidebarPosition:20,frontMatter:{title:"Checkbox",tags:["Fields","Field types","Custom types","Checkbox"]},sidebar:"tutorialSidebar",previous:{title:"Attachment",permalink:"/fields/field-types/custom-types/attachment"},next:{title:"Rating",permalink:"/fields/field-types/custom-types/rating"}},s={},c=[{value:"Create a checkbox field",id:"create-a-checkbox-field",level:2},{value:"Cell display",id:"cell-display",level:3},{value:"Supported icons",id:"supported-icons",level:3},{value:"Related fields",id:"related-fields",level:2}],p={toc:c},d="wrapper";function u(e){let{components:t,...r}=e;return(0,n.kt)(d,(0,o.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value."),(0,n.kt)("h2",{id:"create-a-checkbox-field"},"Create a checkbox field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"+")," icon to the right of ",(0,n.kt)("inlineCode",{parentName:"li"},"Fields header")),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," On the dropdown modal, enter the field name."),(0,n.kt)("li",{parentName:"ol"},"Select the field type as ",(0,n.kt)("inlineCode",{parentName:"li"},"Checkbox")," from the dropdown."),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Select icon for the field; defaults to ",(0,n.kt)("inlineCode",{parentName:"li"},"check")," icon."),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Select color for the field; defaults to ",(0,n.kt)("inlineCode",{parentName:"li"},"grey"),"."),(0,n.kt)("li",{parentName:"ol"},"[",(0,n.kt)("strong",{parentName:"li"},"Optional"),"]"," Set default value for the field."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"image",src:l(97391).Z,width:"1270",height:"645"})),(0,n.kt)("h3",{id:"cell-display"},"Cell display"),(0,n.kt)("p",null,"Cell displays the icon in the color selected for the field. A true value will be represented by a checked icon or a filled icon",(0,n.kt)("br",{parentName:"p"}),"\n",(0,n.kt)("img",{alt:"image",src:l(69854).Z,width:"1268",height:"513"})),(0,n.kt)("h3",{id:"supported-icons"},"Supported icons"),(0,n.kt)("p",null,"NocoDB supports the following icons for the checkbox field type.",(0,n.kt)("br",{parentName:"p"}),"\n",(0,n.kt)("img",{alt:"image",src:l(37922).Z,width:"401",height:"479"})),(0,n.kt)("h2",{id:"related-fields"},"Related fields"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"/fields/field-types/custom-types/rating"},"Rating"))))}u.isMDXComponent=!0},69854:(e,t,l)=>{l.d(t,{Z:()=>o});const o=l.p+"assets/images/attachment-cell-display-d0e036b051275db64f5a516ad8c604b5.png"},37922:(e,t,l)=>{l.d(t,{Z:()=>o});const o=l.p+"assets/images/checkbox-icon-50a0b9c5edbae35ca181d433419c943c.png"},97391:(e,t,l)=>{l.d(t,{Z:()=>o});const o=l.p+"assets/images/checkbox-8420bfd3b3068af0665f7d29b884936a.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f0eb83f3.c613762a.js b/packages/noco-docs/dist/assets/js/f0eb83f3.c613762a.js new file mode 100644 index 0000000000..3f0177fdba --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f0eb83f3.c613762a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2862],{3905:(t,e,a)=>{a.d(e,{Zo:()=>k,kt:()=>N});var n=a(67294);function r(t,e,a){return e in t?Object.defineProperty(t,e,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[e]=a,t}function l(t,e){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),a.push.apply(a,n)}return a}function i(t){for(var e=1;e<arguments.length;e++){var a=null!=arguments[e]?arguments[e]:{};e%2?l(Object(a),!0).forEach((function(e){r(t,e,a[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))}))}return t}function m(t,e){if(null==t)return{};var a,n,r=function(t,e){if(null==t)return{};var a,n,r={},l=Object.keys(t);for(n=0;n<l.length;n++)a=l[n],e.indexOf(a)>=0||(r[a]=t[a]);return r}(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(n=0;n<l.length;n++)a=l[n],e.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(t,a)&&(r[a]=t[a])}return r}var p=n.createContext({}),d=function(t){var e=n.useContext(p),a=e;return t&&(a="function"==typeof t?t(e):i(i({},e),t)),a},k=function(t){var e=d(t.components);return n.createElement(p.Provider,{value:e},t.children)},c="mdxType",o={inlineCode:"code",wrapper:function(t){var e=t.children;return n.createElement(n.Fragment,{},e)}},g=n.forwardRef((function(t,e){var a=t.components,r=t.mdxType,l=t.originalType,p=t.parentName,k=m(t,["components","mdxType","originalType","parentName"]),c=d(a),g=r,N=c["".concat(p,".").concat(g)]||c[g]||o[g]||l;return a?n.createElement(N,i(i({ref:e},k),{},{components:a})):n.createElement(N,i({ref:e},k))}));function N(t,e){var a=arguments,r=e&&e.mdxType;if("string"==typeof t||r){var l=a.length,i=new Array(l);i[0]=g;var m={};for(var p in e)hasOwnProperty.call(e,p)&&(m[p]=e[p]);m.originalType=t,m[c]="string"==typeof t?t:r,i[1]=m;for(var d=2;d<l;d++)i[d]=a[d];return n.createElement.apply(null,i)}return n.createElement.apply(null,a)}g.displayName="MDXCreateElement"},76908:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>p,contentTitle:()=>i,default:()=>o,frontMatter:()=>l,metadata:()=>m,toc:()=>d});var n=a(87462),r=(a(67294),a(3905));const l={title:"Team & Auth",description:"Breakdown of roles & permissions for team user management"},i=void 0,m={unversionedId:"setup-and-usages/team-and-auth",id:"version-0.109.7/setup-and-usages/team-and-auth",title:"Team & Auth",description:"Breakdown of roles & permissions for team user management",source:"@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md",sourceDirName:"030.setup-and-usages",slug:"/setup-and-usages/team-and-auth",permalink:"/0.109.7/setup-and-usages/team-and-auth",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md",tags:[],version:"0.109.7",sidebarPosition:230,frontMatter:{title:"Team & Auth",description:"Breakdown of roles & permissions for team user management"},sidebar:"tutorialSidebar",previous:{title:"Links",permalink:"/0.109.7/setup-and-usages/links"},next:{title:"Data Sources",permalink:"/0.109.7/setup-and-usages/meta-management"}},p={},d=[{value:"Accessing Team & Auth",id:"accessing-team--auth",level:2},{value:"User Management",id:"user-management",level:2},{value:"How to Add a User",id:"how-to-add-a-user",level:3},{value:"How to Update user permissions",id:"how-to-update-user-permissions",level:3},{value:"User Role Permissions",id:"user-role-permissions",level:3},{value:"Advanced Options & Configurations",id:"advanced-options--configurations",level:3},{value:"Schema Options",id:"schema-options",level:3},{value:"Record Options",id:"record-options",level:3},{value:"Comments",id:"comments",level:3},{value:"Views",id:"views",level:3},{value:"Project Generals",id:"project-generals",level:3},{value:"API Tokens Management",id:"api-tokens-management",level:2}],k={toc:d},c="wrapper";function o(t){let{components:e,...a}=t;return(0,r.kt)(c,(0,n.Z)({},k,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h2",{id:"accessing-team--auth"},"Accessing Team & Auth"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Team & Settings")," from the ",(0,r.kt)("inlineCode",{parentName:"li"},"Project Menu")," "),(0,r.kt)("li",{parentName:"ul"},"Access ",(0,r.kt)("inlineCode",{parentName:"li"},"Team & Auth")," under ",(0,r.kt)("inlineCode",{parentName:"li"},"Settings"))),(0,r.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,r.kt)("h2",{id:"user-management"},"User Management"),(0,r.kt)("h3",{id:"how-to-add-a-user"},"How to Add a User"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Go to ",(0,r.kt)("inlineCode",{parentName:"li"},"Team & Auth"),", click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Invite Team"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219830800-481f372f-86b1-4e2f-865d-3fb7c10663f7.png",alt:"image"})),(0,r.kt)("ol",{start:2},(0,r.kt)("li",{parentName:"ol"},"Enter the user's ",(0,r.kt)("inlineCode",{parentName:"li"},"E-mail"),". Select ",(0,r.kt)("inlineCode",{parentName:"li"},"User Role"),", and Click ",(0,r.kt)("inlineCode",{parentName:"li"},"Invite"),".")),(0,r.kt)("admonition",{type:"tip"},(0,r.kt)("p",{parentName:"admonition"},"You can add multiple comma (,) seperated emails")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189817152-83fca866-7713-49ee-8068-d3eba1311353.png",alt:"Screenshot 2022-09-13 at 10 54 39 AM"})),(0,r.kt)("p",null,"If you do not have an SMTP sender configured, make sure to copy the invite link and manually send it to your collaborator."),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/189817156-f3dab634-dc25-4f9b-8126-865187aae254.png",alt:"Screenshot 2022-09-13 at 10 54 22 AM"})),(0,r.kt)("h3",{id:"how-to-update-user-permissions"},"How to Update user permissions"),(0,r.kt)("ol",null,(0,r.kt)("li",{parentName:"ol"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"Edit")," <1> menu to assign a different role to existing user"),(0,r.kt)("li",{parentName:"ol"},"Use ",(0,r.kt)("inlineCode",{parentName:"li"},"Delete")," <2> menu to remove a user from accessing current project")),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219830858-be7a4656-9f3b-440c-9a79-165f919223d7.png",alt:"image"})),(0,r.kt)("hr",null),(0,r.kt)("h3",{id:"user-role-permissions"},"User Role Permissions"),(0,r.kt)("h3",{id:"advanced-options--configurations"},"Advanced Options & Configurations"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Audit"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"App Store"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Team & Auth"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Project Metadata"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"New user: Add Owner"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"New user: Add Creator"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"New user: Add Editor"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"New user: Add Commenter"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"New user: Add Viewer"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"View existing users"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Preview mode"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")))),(0,r.kt)("h3",{id:"schema-options"},"Schema Options"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Add table"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Delete table"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Modify table"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Add column"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Delete column"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Modify column"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")))),(0,r.kt)("h3",{id:"record-options"},"Record Options"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Add row"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Delete row"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Modify row/ cell"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Expand row"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Right click on cell (add/edit row)"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"View table data (cell) contents"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")))),(0,r.kt)("h3",{id:"comments"},"Comments"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"View comments from others"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Add comments"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")))),(0,r.kt)("h3",{id:"views"},"Views"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Create new view"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Share view"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u274c")))),(0,r.kt)("h3",{id:"project-generals"},"Project Generals"),(0,r.kt)("table",null,(0,r.kt)("thead",{parentName:"table"},(0,r.kt)("tr",{parentName:"thead"},(0,r.kt)("th",{parentName:"tr",align:"left"},"\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Owner ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Creator ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Editor ","\xa0"," ","\xa0"),(0,r.kt)("th",{parentName:"tr",align:"center"},"Commenter"),(0,r.kt)("th",{parentName:"tr",align:"center"},"\xa0"," ","\xa0"," Viewer ","\xa0"," ","\xa0"))),(0,r.kt)("tbody",{parentName:"table"},(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Created views access"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Filter fields/ Column"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Filter fields/ Query"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Sort fields"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Theme"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Auth token"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Project Info"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")),(0,r.kt)("tr",{parentName:"tbody"},(0,r.kt)("td",{parentName:"tr",align:"left"},"Swagger API"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705"),(0,r.kt)("td",{parentName:"tr",align:"center"},"\u2705")))),(0,r.kt)("h2",{id:"api-tokens-management"},"API Tokens Management"),(0,r.kt)("p",null,"NocoDB allows creating API tokens which allow it to be integrated seamlessly with 3rd party apps. API Token is a Nano ID with a length of 40. If you are passing API Token, make sure that the header is called ",(0,r.kt)("inlineCode",{parentName:"p"},"xc-token"),"."),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Open ",(0,r.kt)("inlineCode",{parentName:"li"},"Project Menu"),", click on ",(0,r.kt)("inlineCode",{parentName:"li"},"Team & Settings"))),(0,r.kt)("img",{width:"322",alt:"image",src:"https://user-images.githubusercontent.com/35857179/194856648-67936db0-ee4d-4060-be3d-af9f86ef8fc6.png"}),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Click ",(0,r.kt)("inlineCode",{parentName:"p"},"API Tokens Management")," tab under ",(0,r.kt)("inlineCode",{parentName:"p"},"Team & Auth")," section")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("p",{parentName:"li"},"Click Add New Token"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/35857179/219835108-037127bd-4bf6-4d96-b691-139bd141631c.png",alt:"image"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Type an recognizable name for your token and click ",(0,r.kt)("inlineCode",{parentName:"li"},"Generate"))),(0,r.kt)("p",null,(0,r.kt)("img",{parentName:"p",src:"https://user-images.githubusercontent.com/86527202/190062801-db3fab83-7974-4dfe-9c83-bf0d8a7dba1e.png",alt:"Screenshot 2022-09-14 at 10 20 10 AM"})),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Copy API token to your clipboard; use action menu to the right of token list")))}o.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f4472a32.eac69fa1.js b/packages/noco-docs/dist/assets/js/f4472a32.eac69fa1.js new file mode 100644 index 0000000000..a1c5ae6298 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f4472a32.eac69fa1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9123],{90399:t=>{t.exports=JSON.parse('{"label":"Attachment","permalink":"/tags/attachment","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/custom-types/attachment","title":"Attachment","description":"Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.","permalink":"/fields/field-types/custom-types/attachment"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f472468a.4d5c753c.js b/packages/noco-docs/dist/assets/js/f472468a.4d5c753c.js new file mode 100644 index 0000000000..1627857a78 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f472468a.4d5c753c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9214],{90290:s=>{s.exports=JSON.parse('{"label":"Links","permalink":"/tags/links","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/links-based/links","title":"Links","description":"Links field type is used to establish relationship between tables & create links to other records.","permalink":"/fields/field-types/links-based/links"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f58fbde1.3093f817.js b/packages/noco-docs/dist/assets/js/f58fbde1.3093f817.js new file mode 100644 index 0000000000..9c8cca7245 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f58fbde1.3093f817.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9415],{35701:e=>{e.exports=JSON.parse('{"label":"Activity feed","permalink":"/tags/activity-feed","allTagsPath":"/tags","count":1,"items":[{"id":"records/expand-record","title":"Expanded record","description":"NocoDB provides Expanded Form to let you edit your data easily","permalink":"/records/expand-record"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f6aad64f.d7381bfa.js b/packages/noco-docs/dist/assets/js/f6aad64f.d7381bfa.js new file mode 100644 index 0000000000..03a8906076 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f6aad64f.d7381bfa.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[853],{63825:e=>{e.exports=JSON.parse('{"label":"Open Source","permalink":"/tags/open-source","allTagsPath":"/tags","count":5,"items":[{"id":"getting-started/self-hosted/environment-variables","title":"Environment variables","description":"Environment Variables for NocoDB!","permalink":"/getting-started/self-hosted/environment-variables"},{"id":"account-settings/oss-specific-details","title":"In Open Source","description":"This article explains Account settings specifics in Open source NocoDB.","permalink":"/account-settings/oss-specific-details"},{"id":"collaboration/oss-specific-details","title":"In Open Source","description":"This article explains specifics of User management in OSS.","permalink":"/collaboration/oss-specific-details"},{"id":"getting-started/self-hosted/installation","title":"Installation","description":"Simple installation - takes about three minutes!","permalink":"/getting-started/self-hosted/installation"},{"id":"getting-started/self-hosted/upgrading","title":"Upgrading","description":"Upgrading NocoDB : Docker, Node and Homebrew!","permalink":"/getting-started/self-hosted/upgrading"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f7d905ba.21346cba.js b/packages/noco-docs/dist/assets/js/f7d905ba.21346cba.js new file mode 100644 index 0000000000..66166b5cfb --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f7d905ba.21346cba.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7746],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>g});var i=r(67294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t){if(null==e)return{};var r,i,n=function(e,t){if(null==e)return{};var r,i,n={},o=Object.keys(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)r=o[i],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=i.createContext({}),p=function(e){var t=i.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):l(l({},t),e)),r},d=function(e){var t=p(e.components);return i.createElement(s.Provider,{value:t},e.children)},c="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},f=i.forwardRef((function(e,t){var r=e.components,n=e.mdxType,o=e.originalType,s=e.parentName,d=a(e,["components","mdxType","originalType","parentName"]),c=p(r),f=n,g=c["".concat(s,".").concat(f)]||c[f]||u[f]||o;return r?i.createElement(g,l(l({ref:t},d),{},{components:r})):i.createElement(g,l({ref:t},d))}));function g(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var o=r.length,l=new Array(o);l[0]=f;var a={};for(var s in t)hasOwnProperty.call(t,s)&&(a[s]=t[s]);a.originalType=e,a[c]="string"==typeof e?e:n,l[1]=a;for(var p=2;p<o;p++)l[p]=r[p];return i.createElement.apply(null,l)}return i.createElement.apply(null,r)}f.displayName="MDXCreateElement"},67268:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>s,contentTitle:()=>l,default:()=>u,frontMatter:()=>o,metadata:()=>a,toc:()=>p});var i=r(87462),n=(r(67294),r(3905));const o={title:"Filtering records",tags:["Table operations","Filter","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table operations","table operations overview","table administration","table organization","hide column","show column","filter","sort","group by","row height","quick search","download","hide-field","show-field","field-operations","filter","sort","group-by","row-height","search","download"]},l=void 0,a={unversionedId:"table-operations/filter",id:"table-operations/filter",title:"Filtering records",description:"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.",source:"@site/docs/060.table-operations/030.filter.md",sourceDirName:"060.table-operations",slug:"/table-operations/filter",permalink:"/table-operations/filter",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/060.table-operations/030.filter.md",tags:[{label:"Table operations",permalink:"/tags/table-operations"},{label:"Filter",permalink:"/tags/filter"},{label:"Gallery View",permalink:"/tags/gallery-view"},{label:"Kanban View",permalink:"/tags/kanban-view"},{label:"Grid View",permalink:"/tags/grid-view"}],version:"current",sidebarPosition:30,frontMatter:{title:"Filtering records",tags:["Table operations","Filter","Gallery View","Kanban View","Grid View"],keywords:["NocoDB table operations","table operations overview","table administration","table organization","hide column","show column","filter","sort","group by","row height","quick search","download","hide-field","show-field","field-operations","filter","sort","group-by","row-height","search","download"]},sidebar:"tutorialSidebar",previous:{title:"Hide & reorder fields",permalink:"/table-operations/field-operations"},next:{title:"Sorting records",permalink:"/table-operations/sort"}},s={},p=[{value:"Adding or Editing Filters",id:"adding-or-editing-filters",level:3},{value:"Deleting Filters",id:"deleting-filters",level:3},{value:"Grouping Filters",id:"grouping-filters",level:3},{value:"Enabling NULL and EMPTY Filters",id:"enabling-null-and-empty-filters",level:2},{value:"Supported Filters",id:"supported-filters",level:3},{value:"Related topics",id:"related-topics",level:3}],d={toc:p},c="wrapper";function u(e){let{components:t,...o}=e;return(0,n.kt)(c,(0,i.Z)({},d,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between ",(0,n.kt)("inlineCode",{parentName:"p"},"and")," or ",(0,n.kt)("inlineCode",{parentName:"p"},"or")," mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data."),(0,n.kt)("h3",{id:"adding-or-editing-filters"},"Adding or Editing Filters"),(0,n.kt)("p",null,"To add or edit a filter, simply click the ",(0,n.kt)("inlineCode",{parentName:"p"},"Filter")," button in the toolbar and select either ",(0,n.kt)("inlineCode",{parentName:"p"},"Add filter")," or ",(0,n.kt)("inlineCode",{parentName:"p"},"Add filter group"),"."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Add Filter",src:r(53351).Z,width:"2300",height:"610"})),(0,n.kt)("p",null,"Configure the filter by specifying the ",(0,n.kt)("inlineCode",{parentName:"p"},"Field,")," ",(0,n.kt)("inlineCode",{parentName:"p"},"Operation,")," and ",(0,n.kt)("inlineCode",{parentName:"p"},"Value")," (if applicable)."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Filter Configuration",src:r(48918).Z,width:"2298",height:"800"})),(0,n.kt)("p",null,"You can combine multiple filter conditions using either ",(0,n.kt)("inlineCode",{parentName:"p"},"And")," or ",(0,n.kt)("inlineCode",{parentName:"p"},"Or")," mode of operation."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Nested Filters",src:r(39041).Z,width:"2296",height:"1056"})),(0,n.kt)("h3",{id:"deleting-filters"},"Deleting Filters"),(0,n.kt)("p",null,"To remove a filter, click on the bin icon located to the right of the respective filter."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Delete Filter",src:r(20395).Z,width:"2296",height:"1056"})),(0,n.kt)("h3",{id:"grouping-filters"},"Grouping Filters"),(0,n.kt)("p",null,"You also have the option to group multiple filters together using a Filter Group."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Grouped Filters",src:r(67680).Z,width:"2298",height:"1268"})),(0,n.kt)("h2",{id:"enabling-null-and-empty-filters"},"Enabling NULL and EMPTY Filters"),(0,n.kt)("p",null,"By default, NULL filters (",(0,n.kt)("inlineCode",{parentName:"p"},"is null")," & ",(0,n.kt)("inlineCode",{parentName:"p"},"is not null"),") and EMPTY filters (",(0,n.kt)("inlineCode",{parentName:"p"},"is empty")," & ",(0,n.kt)("inlineCode",{parentName:"p"},"is not empty"),") are hidden. If you wish to filter out either of these explicitly, you can enable ",(0,n.kt)("inlineCode",{parentName:"p"},"Show NULL and EMPTY Filter")," in ",(0,n.kt)("a",{parentName:"p",href:"/bases/actions-on-base#base-settings"},"Project settings"),"."),(0,n.kt)("p",null,"Before enabling ",(0,n.kt)("inlineCode",{parentName:"p"},"Show NULL and EMPTY Filter"),":"),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Show isBlank",src:r(58888).Z,width:"2300",height:"1028"})),(0,n.kt)("p",null,"Once enabled, you can use the ",(0,n.kt)("inlineCode",{parentName:"p"},"is null")," & ",(0,n.kt)("inlineCode",{parentName:"p"},"is empty")," filters to filter out cells with NULL or EMPTY values."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Show NULL and EMPTY Filter",src:r(18198).Z,width:"2300",height:"1112"})),(0,n.kt)("p",null,"Alternatively, you can use Blank filters to filter out cells with NULL or EMPTY values."),(0,n.kt)("h3",{id:"supported-filters"},"Supported Filters"),(0,n.kt)("p",null,"NocoDB currently supports various types of filters for corresponding columns. Please refer to the matrix below for detailed information."),(0,n.kt)("p",null,(0,n.kt)("a",{parentName:"p",href:"https://docs.google.com/spreadsheets/d/e/2PACX-1vTpCNKtA-szaXUKJEO5uuSIRnzUOK793MKnyBz9m2rQcwn7HqK19jPHeER-IIRWH9X56J78wfxXZuuv/pubhtml?gid=427284630&single=true&widget=true&headers=false"},"Filter Matrix")),(0,n.kt)("h3",{id:"related-topics"},"Related topics"),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"field-operations"},"Field operations")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"sort"},"Sort")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"group-by"},"GroupBy")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"row-height"},"Row height")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"search"},"Quick Search")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("a",{parentName:"li",href:"download"},"Download"))))}u.isMDXComponent=!0},53351:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-1-6d82d6adaa0df9338b4c29b6376de557.png"},48918:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-2-51019e4c6061e78b8b3df002cf6db8f5.png"},39041:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-3-f6db70222f513a250bf4b0bd36e3c158.png"},67680:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-4-058ba55633cb86f5b1a5431c1ee8766d.png"},20395:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-5-e2ea016b369c57c5787ec7c4259f7fc6.png"},58888:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-is-blank-93b9ad8f1a235a7a0c0e198c076a7caf.png"},18198:(e,t,r)=>{r.d(t,{Z:()=>i});const i=r.p+"assets/images/filter-is-null-empty-1341b5cc9439c361df4992106ff00ad6.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f9241299.ae0ff57f.js b/packages/noco-docs/dist/assets/js/f9241299.ae0ff57f.js new file mode 100644 index 0000000000..fe3b72b184 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f9241299.ae0ff57f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[3521],{3905:(e,o,r)=>{r.d(o,{Zo:()=>p,kt:()=>v});var a=r(67294);function t(e,o,r){return o in e?Object.defineProperty(e,o,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[o]=r,e}function n(e,o){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);o&&(a=a.filter((function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable}))),r.push.apply(r,a)}return r}function i(e){for(var o=1;o<arguments.length;o++){var r=null!=arguments[o]?arguments[o]:{};o%2?n(Object(r),!0).forEach((function(o){t(e,o,r[o])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(r,o))}))}return e}function l(e,o){if(null==e)return{};var r,a,t=function(e,o){if(null==e)return{};var r,a,t={},n=Object.keys(e);for(a=0;a<n.length;a++)r=n[a],o.indexOf(r)>=0||(t[r]=e[r]);return t}(e,o);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)r=n[a],o.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(t[r]=e[r])}return t}var s=a.createContext({}),c=function(e){var o=a.useContext(s),r=o;return e&&(r="function"==typeof e?e(o):i(i({},o),e)),r},p=function(e){var o=c(e.components);return a.createElement(s.Provider,{value:o},e.children)},b="mdxType",m={inlineCode:"code",wrapper:function(e){var o=e.children;return a.createElement(a.Fragment,{},o)}},u=a.forwardRef((function(e,o){var r=e.components,t=e.mdxType,n=e.originalType,s=e.parentName,p=l(e,["components","mdxType","originalType","parentName"]),b=c(r),u=t,v=b["".concat(s,".").concat(u)]||b[u]||m[u]||n;return r?a.createElement(v,i(i({ref:o},p),{},{components:r})):a.createElement(v,i({ref:o},p))}));function v(e,o){var r=arguments,t=o&&o.mdxType;if("string"==typeof e||t){var n=r.length,i=new Array(n);i[0]=u;var l={};for(var s in o)hasOwnProperty.call(o,s)&&(l[s]=o[s]);l.originalType=e,l[b]="string"==typeof e?e:t,i[1]=l;for(var c=2;c<n;c++)i[c]=r[c];return a.createElement.apply(null,i)}return a.createElement.apply(null,r)}u.displayName="MDXCreateElement"},67452:(e,o,r)=>{r.r(o),r.d(o,{assets:()=>s,contentTitle:()=>i,default:()=>m,frontMatter:()=>n,metadata:()=>l,toc:()=>c});var a=r(87462),t=(r(67294),r(3905));const n={title:"Collaboration overview",description:"This article explains various collaboration features that NocoDB offers.",tags:["Collaboration","Workspace","Base","Share","Member","Overview"],keywords:["Collaboration overview","Workspace collaboration","Base collaboration","Share base","Share view","Team collaboration","Workspace management","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},i=void 0,l={unversionedId:"collaboration/collaboration-overview",id:"collaboration/collaboration-overview",title:"Collaboration overview",description:"This article explains various collaboration features that NocoDB offers.",source:"@site/docs/120.collaboration/010.collaboration-overview.md",sourceDirName:"120.collaboration",slug:"/collaboration/collaboration-overview",permalink:"/collaboration/collaboration-overview",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/120.collaboration/010.collaboration-overview.md",tags:[{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Workspace",permalink:"/tags/workspace"},{label:"Base",permalink:"/tags/base"},{label:"Share",permalink:"/tags/share"},{label:"Member",permalink:"/tags/member"},{label:"Overview",permalink:"/tags/overview"}],version:"current",sidebarPosition:10,frontMatter:{title:"Collaboration overview",description:"This article explains various collaboration features that NocoDB offers.",tags:["Collaboration","Workspace","Base","Share","Member","Overview"],keywords:["Collaboration overview","Workspace collaboration","Base collaboration","Share base","Share view","Team collaboration","Workspace management","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},sidebar:"tutorialSidebar",previous:{title:"Roles & permissions overview",permalink:"/roles-and-permissions/roles-permissions-overview"},next:{title:"Workspace collaboration",permalink:"/collaboration/workspace-collaboration"}},s={},c=[],p={toc:c},b="wrapper";function m(e){let{components:o,...r}=e;return(0,t.kt)(b,(0,a.Z)({},p,r,{components:o,mdxType:"MDXLayout"}),(0,t.kt)("p",null,"At NocoDB, our passion lies in promoting teamwork, and it's a significant factor contributing to our popularity. Through NocoDB's collaborative functionalities, you have the ability to foster effective task distribution and team communication by extending invitations to others for seamless cooperation."),(0,t.kt)("p",null,"In this segment, we'll discuss various collaboration features that NocoDB offers."),(0,t.kt)("p",null,(0,t.kt)("a",{parentName:"p",href:"workspace-collaboration"},"Workspace collaboration"),(0,t.kt)("br",{parentName:"p"}),"\n",(0,t.kt)("a",{parentName:"p",href:"base-collaboration"},"Base collaboration"),(0,t.kt)("br",{parentName:"p"}),"\n",(0,t.kt)("a",{parentName:"p",href:"share-base"},"Share base"),(0,t.kt)("br",{parentName:"p"}),"\n",(0,t.kt)("a",{parentName:"p",href:"share-view"},"Share view")))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/f9538193.fde8c993.js b/packages/noco-docs/dist/assets/js/f9538193.fde8c993.js new file mode 100644 index 0000000000..02ecb66cae --- /dev/null +++ b/packages/noco-docs/dist/assets/js/f9538193.fde8c993.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[7235],{96482:e=>{e.exports=JSON.parse('{"label":"Currency","permalink":"/tags/currency","allTagsPath":"/tags","count":1,"items":[{"id":"fields/field-types/numerical/currency","title":"Currency","description":"Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.","permalink":"/fields/field-types/numerical/currency"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/fb12fd2d.359aef93.js b/packages/noco-docs/dist/assets/js/fb12fd2d.359aef93.js new file mode 100644 index 0000000000..a391eb2eb6 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/fb12fd2d.359aef93.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1416],{82648:e=>{e.exports=JSON.parse('{"label":"Sort","permalink":"/tags/sort","allTagsPath":"/tags","count":2,"items":[{"id":"fields/actions-on-field","title":"Actions on field","description":"Fields context menu","permalink":"/fields/actions-on-field"},{"id":"table-operations/sort","title":"Sorting records","description":"Sorting enables you to arrange your data alphabetically (A \u2192 Z) or (Z \u2192 A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.","permalink":"/table-operations/sort"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/fb5c685c.3e14ad22.js b/packages/noco-docs/dist/assets/js/fb5c685c.3e14ad22.js new file mode 100644 index 0000000000..837c8e59c3 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/fb5c685c.3e14ad22.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1067],{86841:e=>{e.exports=JSON.parse('{"label":"Create","permalink":"/tags/create","allTagsPath":"/tags","count":6,"items":[{"id":"bases/create-base","title":"Create base","description":"Learn how to create a base in NocoDB.","permalink":"/bases/create-base"},{"id":"tables/create-table","title":"Create empty table","description":"Learn how to create a table in NocoDB.","permalink":"/tables/create-table"},{"id":"records/create-record","title":"Create record","description":"Learn how to create a record in NocoDB.","permalink":"/records/create-record"},{"id":"views/create-view","title":"Create view","description":"Learn how to create a view in NocoDB.","permalink":"/views/create-view"},{"id":"automation/webhook/create-webhook","title":"Create webhook","description":"Learn how to create a webhook in NocoDB.","permalink":"/automation/webhook/create-webhook"},{"id":"workspaces/create-workspace","title":"Create workspace","description":"Learn how to create a workspace in NocoDB","permalink":"/workspaces/create-workspace"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/fb60c522.4e5cf648.js b/packages/noco-docs/dist/assets/js/fb60c522.4e5cf648.js new file mode 100644 index 0000000000..2c58f1c2fe --- /dev/null +++ b/packages/noco-docs/dist/assets/js/fb60c522.4e5cf648.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[5407],{3905:(e,t,l)=>{l.d(t,{Zo:()=>p,kt:()=>m});var i=l(67294);function n(e,t,l){return t in e?Object.defineProperty(e,t,{value:l,enumerable:!0,configurable:!0,writable:!0}):e[t]=l,e}function a(e,t){var l=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),l.push.apply(l,i)}return l}function o(e){for(var t=1;t<arguments.length;t++){var l=null!=arguments[t]?arguments[t]:{};t%2?a(Object(l),!0).forEach((function(t){n(e,t,l[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(l)):a(Object(l)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(l,t))}))}return e}function d(e,t){if(null==e)return{};var l,i,n=function(e,t){if(null==e)return{};var l,i,n={},a=Object.keys(e);for(i=0;i<a.length;i++)l=a[i],t.indexOf(l)>=0||(n[l]=e[l]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)l=a[i],t.indexOf(l)>=0||Object.prototype.propertyIsEnumerable.call(e,l)&&(n[l]=e[l])}return n}var r=i.createContext({}),s=function(e){var t=i.useContext(r),l=t;return e&&(l="function"==typeof e?e(t):o(o({},t),e)),l},p=function(e){var t=s(e.components);return i.createElement(r.Provider,{value:t},e.children)},c="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},u=i.forwardRef((function(e,t){var l=e.components,n=e.mdxType,a=e.originalType,r=e.parentName,p=d(e,["components","mdxType","originalType","parentName"]),c=s(l),u=n,m=c["".concat(r,".").concat(u)]||c[u]||f[u]||a;return l?i.createElement(m,o(o({ref:t},p),{},{components:l})):i.createElement(m,o({ref:t},p))}));function m(e,t){var l=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=l.length,o=new Array(a);o[0]=u;var d={};for(var r in t)hasOwnProperty.call(t,r)&&(d[r]=t[r]);d.originalType=e,d[c]="string"==typeof e?e:n,o[1]=d;for(var s=2;s<a;s++)o[s]=l[s];return i.createElement.apply(null,o)}return i.createElement.apply(null,l)}u.displayName="MDXCreateElement"},94065:(e,t,l)=>{l.r(t),l.d(t,{assets:()=>r,contentTitle:()=>o,default:()=>f,frontMatter:()=>a,metadata:()=>d,toc:()=>s});var i=l(87462),n=(l(67294),l(3905));const a={title:"Actions on field",tags:["Fields","Rename","Delete","Duplicate","Hide","Display value","Sort"],keywords:["NocoDB fields","fields overview","field administration","field organization"]},o=void 0,d={unversionedId:"fields/actions-on-field",id:"fields/actions-on-field",title:"Actions on field",description:"Fields context menu",source:"@site/docs/070.fields/060.actions-on-field.md",sourceDirName:"070.fields",slug:"/fields/actions-on-field",permalink:"/fields/actions-on-field",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/070.fields/060.actions-on-field.md",tags:[{label:"Fields",permalink:"/tags/fields"},{label:"Rename",permalink:"/tags/rename"},{label:"Delete",permalink:"/tags/delete"},{label:"Duplicate",permalink:"/tags/duplicate"},{label:"Hide",permalink:"/tags/hide"},{label:"Display value",permalink:"/tags/display-value"},{label:"Sort",permalink:"/tags/sort"}],version:"current",sidebarPosition:60,frontMatter:{title:"Actions on field",tags:["Fields","Rename","Delete","Duplicate","Hide","Display value","Sort"],keywords:["NocoDB fields","fields overview","field administration","field organization"]},sidebar:"tutorialSidebar",previous:{title:"Multi-field editor",permalink:"/fields/multi-fields-editor"},next:{title:"Records overview",permalink:"/records/records-overview"}},r={},s=[{value:"Fields context menu",id:"fields-context-menu",level:2},{value:"Edit",id:"edit",level:3},{value:"Rename field",id:"rename-field",level:4},{value:"Change field type",id:"change-field-type",level:4},{value:"Change default value",id:"change-default-value",level:4},{value:"Change field width",id:"change-field-width",level:3},{value:"Hide field",id:"hide-field",level:3},{value:"Set as Display value",id:"set-as-display-value",level:3},{value:"Sort Ascending",id:"sort-ascending",level:3},{value:"Sort Descending",id:"sort-descending",level:3},{value:"Duplicate field",id:"duplicate-field",level:3},{value:"Insert after a field",id:"insert-after-a-field",level:3},{value:"Insert before a field",id:"insert-before-a-field",level:3},{value:"Delete field",id:"delete-field",level:3}],p={toc:s},c="wrapper";function f(e){let{components:t,...a}=e;return(0,n.kt)(c,(0,i.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h2",{id:"fields-context-menu"},"Fields context menu"),(0,n.kt)("p",null,"Fields context menu can be accessed by clicking on the dropdown icon (\ud83d\udd3d) next to the field name.",(0,n.kt)("br",{parentName:"p"}),"\n",(0,n.kt)("img",{alt:"Fields context menu",src:l(49781).Z,width:"2878",height:"1196"})),(0,n.kt)("h3",{id:"edit"},"Edit"),(0,n.kt)("h4",{id:"rename-field"},"Rename field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Edit")," option."),(0,n.kt)("li",{parentName:"ol"},"Enter new field name as required in the ",(0,n.kt)("inlineCode",{parentName:"li"},"Column Name")," field."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Rename field",src:l(76970).Z,width:"2362",height:"1106"})),(0,n.kt)("h4",{id:"change-field-type"},"Change field type"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Edit")," option."),(0,n.kt)("li",{parentName:"ol"},"Select new field type from the ",(0,n.kt)("inlineCode",{parentName:"li"},"Column Type")," dropdown."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Change field type",src:l(84420).Z,width:"2362",height:"1106"})),(0,n.kt)("h4",{id:"change-default-value"},"Change default value"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Edit")," option."),(0,n.kt)("li",{parentName:"ol"},"Enter new default value in the ",(0,n.kt)("inlineCode",{parentName:"li"},"Default Value")," field. To disable, click on ",(0,n.kt)("inlineCode",{parentName:"li"},"x")," icon."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Save Column")," button.")),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Change default value",src:l(76325).Z,width:"2362",height:"1106"})),(0,n.kt)("h3",{id:"change-field-width"},"Change field width"),(0,n.kt)("p",null,"To adjust the width of the field, hover over the field edge and drag to adjust the width."),(0,n.kt)("p",null,(0,n.kt)("img",{alt:"Change field width",src:l(54906).Z,width:"2360",height:"860"})),(0,n.kt)("h3",{id:"hide-field"},"Hide field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Hide Field")," option ")),(0,n.kt)("admonition",{type:"note"},(0,n.kt)("ul",{parentName:"admonition"},(0,n.kt)("li",{parentName:"ul"},"Hidden fields are not visible in the table view, but will still be accessible for Formulas, Sort, Filter, etc."),(0,n.kt)("li",{parentName:"ul"},"To un hide a field, use ",(0,n.kt)("inlineCode",{parentName:"li"},"Toolbar > Fields")," menu"),(0,n.kt)("li",{parentName:"ul"},"Fields can also be marked as hidden from ",(0,n.kt)("inlineCode",{parentName:"li"},"Toolbar > Fields")," menu"))),(0,n.kt)("h3",{id:"set-as-display-value"},"Set as Display value"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Set as Display Value")," option.")),(0,n.kt)("p",null,"Refer to ",(0,n.kt)("a",{parentName:"p",href:"/fields/display-value"},"Display Value")," for more details."),(0,n.kt)("h3",{id:"sort-ascending"},"Sort Ascending"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Sort Ascending")," option.")),(0,n.kt)("h3",{id:"sort-descending"},"Sort Descending"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Sort Descending")," option.")),(0,n.kt)("h3",{id:"duplicate-field"},"Duplicate field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Duplicate")," option.")),(0,n.kt)("p",null,"Duplicated field sans the data will be created with suffix ",(0,n.kt)("inlineCode",{parentName:"p"},"_copy")," in its name & will be placed to the right of the original field."),(0,n.kt)("h3",{id:"insert-after-a-field"},"Insert after a field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Insert after")," option.")),(0,n.kt)("p",null,"New field will be created to the right of the original field."),(0,n.kt)("h3",{id:"insert-before-a-field"},"Insert before a field"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu"),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("inlineCode",{parentName:"li"},"Insert before")," option.")),(0,n.kt)("p",null,"New field will be created to the left of the original field."),(0,n.kt)("h3",{id:"delete-field"},"Delete field"),(0,n.kt)("admonition",{type:"danger"},(0,n.kt)("p",{parentName:"admonition"},(0,n.kt)("strong",{parentName:"p"},"This action cannot be undone."))),(0,n.kt)("p",null,"To delete a field, follow the steps below:"),(0,n.kt)("ol",null,(0,n.kt)("li",{parentName:"ol"},"Open the field context menu by clicking on dropdown icon (\ud83d\udd3d) ."),(0,n.kt)("li",{parentName:"ol"},"Click on ",(0,n.kt)("strong",{parentName:"li"},"Delete"),"."),(0,n.kt)("li",{parentName:"ol"},"Confirm the deletion by clicking on ",(0,n.kt)("strong",{parentName:"li"},"Delete Field")," on the confirmation modal.")))}f.isMDXComponent=!0},49781:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/fields-context-menu-4f9a5bab8a49e95e5f9f38263099f817.png"},76970:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/fields-edit-2-c4397fd6767bb55f5c93a6ccb533a036.png"},84420:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/fields-edit-3-29f474ae3de21b74e08f117c6e43a1ea.png"},76325:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/fields-edit-4-4ce76b407ae0704a235bbb602afde349.png"},54906:(e,t,l)=>{l.d(t,{Z:()=>i});const i=l.p+"assets/images/fields-width-b843c90fee1c762db57dd39a37c931cf.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/fc37d7fe.d2d08899.js b/packages/noco-docs/dist/assets/js/fc37d7fe.d2d08899.js new file mode 100644 index 0000000000..ac6a3c3b31 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/fc37d7fe.d2d08899.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[9485],{8673:o=>{o.exports=JSON.parse('{"label":"Member","permalink":"/tags/member","allTagsPath":"/tags","count":4,"items":[{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/collaboration/base-collaboration"},{"id":"collaboration/collaboration-overview","title":"Collaboration overview","description":"This article explains various collaboration features that NocoDB offers.","permalink":"/collaboration/collaboration-overview"},{"id":"account-settings/profile-page","title":"Profile page","description":"This article explains how to manage your profile page.","permalink":"/account-settings/profile-page"},{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/collaboration/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/fe112e79.c0c43df6.js b/packages/noco-docs/dist/assets/js/fe112e79.c0c43df6.js new file mode 100644 index 0000000000..c55d851cec --- /dev/null +++ b/packages/noco-docs/dist/assets/js/fe112e79.c0c43df6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[2776],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var o=r(67294);function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t){if(null==e)return{};var r,o,a=function(e,t){if(null==e)return{};var r,o,a={},s=Object.keys(e);for(o=0;o<s.length;o++)r=s[o],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)r=s[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}var l=o.createContext({}),c=function(e){var t=o.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):n(n({},t),e)),r},p=function(e){var t=c(e.components);return o.createElement(l.Provider,{value:t},e.children)},m="mdxType",k={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},b=o.forwardRef((function(e,t){var r=e.components,a=e.mdxType,s=e.originalType,l=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),m=c(r),b=a,d=m["".concat(l,".").concat(b)]||m[b]||k[b]||s;return r?o.createElement(d,n(n({ref:t},p),{},{components:r})):o.createElement(d,n({ref:t},p))}));function d(e,t){var r=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var s=r.length,n=new Array(s);n[0]=b;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[m]="string"==typeof e?e:a,n[1]=i;for(var c=2;c<s;c++)n[c]=r[c];return o.createElement.apply(null,n)}return o.createElement.apply(null,r)}b.displayName="MDXCreateElement"},57117:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>n,default:()=>k,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var o=r(87462),a=(r(67294),r(3905));const s={title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",tags:["Workspaces","Collaboration","Members","Invite","Roles","Permissions"],keywords:["Workspace configuration","Invite members","Member roles","Access permissions","Displaying workspace members","Modifying member roles","Removing workspace members","Workspace collaboration","Team collaboration","Access control","Role-based permissions","Workspace management","User roles","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},n=void 0,i={unversionedId:"workspaces/workspace-collaboration",id:"workspaces/workspace-collaboration",title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",source:"@site/docs/030.workspaces/030.workspace-collaboration.md",sourceDirName:"030.workspaces",slug:"/workspaces/workspace-collaboration",permalink:"/workspaces/workspace-collaboration",draft:!1,editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/docs/030.workspaces/030.workspace-collaboration.md",tags:[{label:"Workspaces",permalink:"/tags/workspaces"},{label:"Collaboration",permalink:"/tags/collaboration"},{label:"Members",permalink:"/tags/members"},{label:"Invite",permalink:"/tags/invite"},{label:"Roles",permalink:"/tags/roles"},{label:"Permissions",permalink:"/tags/permissions"}],version:"current",sidebarPosition:30,frontMatter:{title:"Workspace collaboration",description:"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.",tags:["Workspaces","Collaboration","Members","Invite","Roles","Permissions"],keywords:["Workspace configuration","Invite members","Member roles","Access permissions","Displaying workspace members","Modifying member roles","Removing workspace members","Workspace collaboration","Team collaboration","Access control","Role-based permissions","Workspace management","User roles","Workspace settings","Workspace administration","Member invitation","User access","Member management","Workspace teamwork","Workspace organization"]},sidebar:"tutorialSidebar",previous:{title:"Create workspace",permalink:"/workspaces/create-workspace"},next:{title:"Actions on workspace",permalink:"/workspaces/actions-on-workspace"}},l={},c=[{value:"Invite members to Workspace",id:"invite-members-to-workspace",level:2},{value:"List Workspace members",id:"list-workspace-members",level:2},{value:"Modify Workspace Member Roles",id:"modify-workspace-member-roles",level:2},{value:"Remove Workspace Members",id:"remove-workspace-members",level:2},{value:"Related articles",id:"related-articles",level:2}],p={toc:c},m="wrapper";function k(e){let{components:t,...s}=e;return(0,a.kt)(m,(0,o.Z)({},p,s,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("p",null,"Next logical step after creating a workspace is to invite members to it. In this section, we will guide you through the process of inviting members to your workspace.\nA comprehensive guide regarding roles and permissions can be accessed ",(0,a.kt)("a",{parentName:"p",href:"/roles-and-permissions/roles-permissions-overview"},"here"),"."),(0,a.kt)("h2",{id:"invite-members-to-workspace"},"Invite members to Workspace"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Navigate to the Workspace configuration page by selecting ",(0,a.kt)("inlineCode",{parentName:"li"},"Team & Settings")," in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Access the ",(0,a.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,a.kt)("li",{parentName:"ol"},"Input the email address of the intended member for the invitation."),(0,a.kt)("li",{parentName:"ol"},"Click on ",(0,a.kt)("inlineCode",{parentName:"li"},"Role")," dropdown menu"),(0,a.kt)("li",{parentName:"ol"},"Choose the appropriate access permission for the member from the dropdown menu."),(0,a.kt)("li",{parentName:"ol"},"Conclude the process by selecting the ",(0,a.kt)("inlineCode",{parentName:"li"},"Add Member(s)")," button.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(48954).Z,width:"2874",height:"1574"})," "),(0,a.kt)("admonition",{type:"tip"},(0,a.kt)("p",{parentName:"admonition"},"You can invite multiple members simultaneously by entering their email addresses, separated by commas.")),(0,a.kt)("h2",{id:"list-workspace-members"},"List Workspace members"),(0,a.kt)("p",null,"The ",(0,a.kt)("inlineCode",{parentName:"p"},"Members")," tab in ",(0,a.kt)("inlineCode",{parentName:"p"},"Team & Settings")," displays a list of users who have been granted access to the workspace."),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Navigate to the Workspace configuration page by selecting ",(0,a.kt)("inlineCode",{parentName:"li"},"Team & Settings")," in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Access the ",(0,a.kt)("inlineCode",{parentName:"li"},"Members")," tab.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(45858).Z,width:"2878",height:"1476"})),(0,a.kt)("h2",{id:"modify-workspace-member-roles"},"Modify Workspace Member Roles"),(0,a.kt)("p",null,"You can modify the access permissions of members by following these steps:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Navigate to the Workspace configuration page by selecting ",(0,a.kt)("inlineCode",{parentName:"li"},"Team & Settings")," in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Access the ",(0,a.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,a.kt)("li",{parentName:"ol"},"Access the dropdown menu."),(0,a.kt)("li",{parentName:"ol"},"Select the desired new role option.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(91567).Z,width:"2872",height:"1324"})),(0,a.kt)("h2",{id:"remove-workspace-members"},"Remove Workspace Members"),(0,a.kt)("p",null,"To remove a member from the workspace, take the following steps:"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Navigate to the Workspace configuration page by selecting ",(0,a.kt)("inlineCode",{parentName:"li"},"Team & Settings")," in the left sidebar."),(0,a.kt)("li",{parentName:"ol"},"Access the ",(0,a.kt)("inlineCode",{parentName:"li"},"Members")," tab."),(0,a.kt)("li",{parentName:"ol"},"Click on the vertical ellipses ",(0,a.kt)("inlineCode",{parentName:"li"},"\u22ee")," to open the context menu."),(0,a.kt)("li",{parentName:"ol"},"Select the ",(0,a.kt)("inlineCode",{parentName:"li"},"Remove User")," option.")),(0,a.kt)("p",null,(0,a.kt)("img",{alt:"image",src:r(37164).Z,width:"2868",height:"1396"})),(0,a.kt)("h2",{id:"related-articles"},"Related articles"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/workspaces/workspace-overview"},"Workspace overview")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/workspaces/create-workspace"},"Create workspace")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#rename-workspace"},"Rename workspace")),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("a",{parentName:"li",href:"/workspaces/actions-on-workspace#delete-workspace"},"Delete workspace"))))}k.isMDXComponent=!0},48954:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/workspace-collaboration-1cd7622b6d7dfbccc5ba759d8cab27c0.png"},45858:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/workspace-members-list-95c31f777544a133c392afe1b25f5d4e.png"},37164:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/workspace-members-remove-2bd587da2b6abe610d1695930cbf3f2b.png"},91567:(e,t,r)=>{r.d(t,{Z:()=>o});const o=r.p+"assets/images/workspace-members-role-change-d44e8f808de738f6ff1f678e4c0e6ec1.png"}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/ffd85642.22af644c.js b/packages/noco-docs/dist/assets/js/ffd85642.22af644c.js new file mode 100644 index 0000000000..1b7d82333e --- /dev/null +++ b/packages/noco-docs/dist/assets/js/ffd85642.22af644c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[1705],{89326:o=>{o.exports=JSON.parse('{"label":"Role","permalink":"/tags/role","allTagsPath":"/tags","count":2,"items":[{"id":"collaboration/base-collaboration","title":"Base collaboration","description":"Invite team members to work on a base","permalink":"/collaboration/base-collaboration"},{"id":"collaboration/workspace-collaboration","title":"Workspace collaboration","description":"This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.","permalink":"/collaboration/workspace-collaboration"}]}')}}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/main.a5718638.js b/packages/noco-docs/dist/assets/js/main.a5718638.js new file mode 100644 index 0000000000..0aed2f4891 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/main.a5718638.js @@ -0,0 +1,2 @@ +/*! For license information please see main.a5718638.js.LICENSE.txt */ +(self.webpackChunknoco_docs=self.webpackChunknoco_docs||[]).push([[179],{50997:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(67294),a=n(87462),o=n(68356),i=n.n(o),s=n(16887);const l={"006c1c22":[()=>n.e(1015).then(n.t.bind(n,40992,19)),"~docs/default/tag-tags-geometry-c6f.json",40992],"00aa88f5":[()=>n.e(1185).then(n.bind(n,28350)),"@site/docs/140.account-settings/030.oss-specific-details.md",28350],"013b8728":[()=>n.e(1371).then(n.t.bind(n,68542,19)),"~docs/default/tag-tags-productivity-hacks-06f.json",68542],"016441e2":[()=>n.e(8673).then(n.t.bind(n,65290,19)),"~docs/default/tag-tags-base-fdd.json",65290],"01865ba3":[()=>n.e(43).then(n.bind(n,71661)),"@site/docs/020.getting-started/020.quick-start.md",71661],"023320c3":[()=>n.e(1484).then(n.bind(n,9014)),"@site/docs/140.account-settings/020.api-tokens.md",9014],"037e2c34":[()=>n.e(7820).then(n.bind(n,16779)),"@site/docs/120.collaboration/030.share-base.md",16779],"03af2c79":[()=>n.e(6570).then(n.t.bind(n,52806,19)),"~docs/default/tag-tags-qr-code-af6.json",52806],"052736b6":[()=>n.e(7657).then(n.bind(n,76947)),"@site/docs/130.automation/020.webhook/040.actions-on-webhook.md",76947],"052c7f5b":[()=>n.e(3595).then(n.t.bind(n,88739,19)),"~docs/default/tag-tags-number-1d2.json",88739],"0834b429":[()=>n.e(1305).then(n.bind(n,5439)),"@site/docs/150.engineering/060.builds-and-releases.md",5439],"0908b333":[()=>n.e(6187).then(n.bind(n,50388)),"@site/docs/090.views/040.view-types/010.grid.md",50388],"0938fe36":[()=>n.e(7075).then(n.t.bind(n,36171,19)),"~docs/default/tag-tags-expanded-record-87b.json",36171],"09ceb1a0":[()=>n.e(4936).then(n.bind(n,51719)),"@site/versioned_docs/version-0.109.7/050.engineering/030.development-setup.md",51719],"0a7c5cbc":[()=>n.e(809).then(n.bind(n,30495)),"@site/docs/070.fields/040.field-types/060.formula/010.formula.md",30495],"0ac1e38e":[()=>n.e(5305).then(n.bind(n,59934)),"@site/docs/070.fields/040.field-types/060.formula/030.string-functions.md",59934],"0bd8cdc6":[()=>n.e(5707).then(n.t.bind(n,93713,19)),"~docs/default/tag-tags-roles-236.json",93713],"0c130525":[()=>n.e(604).then(n.bind(n,37456)),"@site/versioned_docs/version-0.109.7/020.getting-started/020.environment-variables.md",37456],"0cab3fcc":[()=>n.e(3479).then(n.bind(n,14503)),"@site/docs/130.automation/020.webhook/020.create-webhook.md",14503],"0d8de604":[()=>n.e(2092).then(n.t.bind(n,34398,19)),"~docs/default/tag-tags-custom-types-2ab.json",34398],"0ecc5e11":[()=>n.e(117).then(n.bind(n,98369)),"@site/docs/020.getting-started/040.keyboard-shortcuts.md",98369],"0f4f52c0":[()=>n.e(5822).then(n.bind(n,92005)),"@site/docs/050.tables/060.actions-on-table.md",92005],"0f6b8098":[()=>n.e(6157).then(n.bind(n,32934)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/020.table-operations.md",32934],"105fb6bf":[()=>n.e(5408).then(n.t.bind(n,93163,19)),"~docs/default/tag-tags-url-4e5.json",93163],"10779e77":[()=>n.e(1990).then(n.bind(n,40695)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/140.share-view.md",40695],"10b0edf0":[()=>n.e(8946).then(n.t.bind(n,27046,19)),"~docs/default/tag-tags-checkbox-bb0.json",27046],"11d84c26":[()=>n.e(5336).then(n.bind(n,45896)),"@site/docs/070.fields/040.field-types/010.text-based/030.email.md",45896],"14095bfc":[()=>n.e(5922).then(n.bind(n,98184)),"@site/docs/070.fields/040.field-types/030.select-based/010.single-select.md",98184],"147f12f7":[()=>n.e(4918).then(n.t.bind(n,28123,19)),"~docs/default/tag-tags-rename-649.json",28123],"14d6025d":[()=>n.e(7539).then(n.bind(n,76561)),"@site/docs/070.fields/040.field-types/070.date-time-based/020.date.md",76561],"16d5baaf":[()=>n.e(65).then(n.bind(n,11560)),"@site/docs/070.fields/040.field-types/040.links-based/010.links.md",11560],"177ad845":[()=>n.e(8252).then(n.t.bind(n,2035,19)),"~docs/default/tag-tags-formula-732.json",2035],17896441:[()=>Promise.all([n.e(532),n.e(8292),n.e(7918)]).then(n.bind(n,94776)),"@theme/DocItem",94776],"17a7e1f3":[()=>n.e(4493).then(n.t.bind(n,75085,19)),"~docs/default/tag-tags-form-53b.json",75085],"181f370e":[()=>n.e(6786).then(n.t.bind(n,48513,19)),"~docs/default/tag-tags-barcode-e70.json",48513],"18c96d41":[()=>n.e(9449).then(n.bind(n,6458)),"@site/docs/070.fields/040.field-types/060.formula/050.conditional-expressions.md",6458],"1970c274":[()=>n.e(1140).then(n.bind(n,43292)),"@site/docs/090.views/040.view-types/040.kanban.md",43292],"1b14dca8":[()=>n.e(5404).then(n.bind(n,22831)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/170.account-settings.md",22831],"1b3738fb":[()=>n.e(8149).then(n.bind(n,90806)),"@site/docs/150.engineering/040.unit-testing.md",90806],"1be78505":[()=>Promise.all([n.e(532),n.e(9514)]).then(n.bind(n,81299)),"@theme/DocPage",81299],"1c2ab191":[()=>n.e(5518).then(n.t.bind(n,84031,19)),"~docs/default/tag-tags-overview-08f.json",84031],"1e403fb7":[()=>n.e(4796).then(n.bind(n,86461)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/160.views.md",86461],"1e898359":[()=>n.e(8704).then(n.bind(n,99544)),"@site/versioned_docs/version-0.109.7/010.index.md",99544],"20e10381":[()=>n.e(405).then(n.bind(n,37577)),"@site/docs/990.FAQs.md",37577],"2226a1e9":[()=>n.e(9552).then(n.bind(n,76013)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/070.lookup.md",76013],"224f2b0f":[()=>n.e(2562).then(n.bind(n,84961)),"@site/docs/070.fields/040.field-types/060.formula/020.numeric-functions.md",84961],22580739:[()=>n.e(1796).then(n.bind(n,70629)),"@site/docs/060.table-operations/020.field-operations.md",70629],"22aab9a3":[()=>n.e(6907).then(n.bind(n,82255)),"@site/docs/070.fields/040.field-types/010.text-based/010.single-line-text.md",82255],23371042:[()=>n.e(5375).then(n.t.bind(n,67337,19)),"~docs/default/tag-tags-members-c98.json",67337],"25ad7bcb":[()=>n.e(8789).then(n.bind(n,35837)),"@site/docs/120.collaboration/020.base-collaboration.md",35837],"276e2b0f":[()=>n.e(2439).then(n.t.bind(n,41962,19)),"~docs/default/tag-tags-edit-81a.json",41962],"278121a5":[()=>n.e(2556).then(n.bind(n,28117)),"@site/docs/080.records/030.expand-record.md",28117],"27b20541":[()=>n.e(3238).then(n.t.bind(n,47090,19)),"~docs/default/tag-tags-gallery-view-170.json",47090],"2888903d":[()=>n.e(3259).then(n.bind(n,69357)),"@site/docs/080.records/020.create-record.md",69357],"2a1ace55":[()=>n.e(4829).then(n.bind(n,12484)),"@site/docs/020.getting-started/050.self-hosted/010.installation.md",12484],"2a42d1d2":[()=>n.e(2636).then(n.bind(n,7212)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/200.import-airtable-to-sql-database-within-a-minute-for-free.md",7212],"2b263996":[()=>n.e(403).then(n.bind(n,81360)),"@site/docs/130.automation/020.webhook/010.webhook-overview.md",81360],"2bb712de":[()=>n.e(1771).then(n.bind(n,49826)),"@site/docs/090.views/025.share-view.md",49826],"2c8a1eac":[()=>n.e(5631).then(n.t.bind(n,71411,19)),"~docs/default/tag-tags-kanban-view-4dc.json",71411],"2cbe0325":[()=>n.e(1245).then(n.bind(n,53499)),"@site/docs/070.fields/040.field-types/070.date-time-based/030.time.md",53499],"2d5bd7a1":[()=>n.e(7666).then(n.t.bind(n,18972,19)),"~docs/default/tag-tags-duplicate-74f.json",18972],"2d8eea4e":[()=>n.e(5837).then(n.t.bind(n,65804,19)),"~docs/default/tag-tags-invite-e9c.json",65804],"2eb4ec02":[()=>n.e(1876).then(n.bind(n,75509)),"@site/docs/040.bases/020.create-base.md",75509],"2fa98934":[()=>n.e(5084).then(n.t.bind(n,849,19)),"~docs/default/tag-tags-workspace-6ef.json",849],"300d0b41":[()=>n.e(2534).then(n.t.bind(n,48717,19)),"~docs/default/tag-tags-enable-429.json",48717],"310a23cf":[()=>n.e(1878).then(n.bind(n,29518)),"@site/docs/070.fields/010.fields-overview.md",29518],"319e5695":[()=>n.e(9542).then(n.bind(n,9607)),"@site/docs/030.workspaces/040.actions-on-workspace.md",9607],"31befc1e":[()=>n.e(6799).then(n.bind(n,35958)),"@site/docs/070.fields/040.field-types/060.formula/040.date-functions.md",35958],"31f9cd1a":[()=>n.e(7130).then(n.bind(n,59269)),"@site/docs/070.fields/040.field-types/020.numerical/030.percent.md",59269],"32e0f401":[()=>n.e(9789).then(n.bind(n,54093)),"@site/docs/050.tables/020.create-table.md",54093],"34b71ab6":[()=>n.e(4364).then(n.bind(n,47445)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/040.column-types.md",47445],"35af5afe":[()=>n.e(1179).then(n.bind(n,88161)),"@site/docs/070.fields/040.field-types/030.select-based/020.multi-select.md",88161],"3615d78a":[()=>n.e(3590).then(n.bind(n,75124)),"@site/versioned_docs/version-0.109.7/050.engineering/060.builds-and-releases.md",75124],"3720c009":[()=>Promise.all([n.e(532),n.e(3751)]).then(n.bind(n,76495)),"@theme/DocTagsListPage",76495],"3a7c0cf6":[()=>n.e(2533).then(n.t.bind(n,30637,19)),"~docs/default/tag-tags-collaboration-e59.json",30637],"3aad05b1":[()=>n.e(3512).then(n.t.bind(n,28445,19)),"~docs/default/tag-tags-account-settings-aab.json",28445],"3ac80ba6":[()=>n.e(3515).then(n.t.bind(n,21504,19)),"~docs/default/tag-tags-data-sources-eaa.json",21504],"3da8114c":[()=>n.e(3338).then(n.t.bind(n,54021,19)),"~docs/default/tag-tags-workspaces-5c0.json",54021],"408139c4":[()=>n.e(8248).then(n.bind(n,96262)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/180.languages.md",96262],"4145e2b1":[()=>n.e(7530).then(n.t.bind(n,66146,19)),"~docs/default/tag-tags-hide-1ea.json",66146],44655909:[()=>n.e(2406).then(n.t.bind(n,89104,19)),"~docs/default/tag-tags-text-based-types-00e.json",89104],"458ed5bd":[()=>n.e(2237).then(n.t.bind(n,61774,19)),"~docs/default/tag-tags-dashboard-5a9.json",61774],"45c1aab2":[()=>n.e(4304).then(n.t.bind(n,70005,19)),"~docs/default/tag-tags-email-e39.json",70005],"4bab5100":[()=>n.e(5207).then(n.bind(n,73414)),"@site/docs/040.bases/050.base-collaboration.md",73414],"4c6b0ee7":[()=>n.e(6325).then(n.bind(n,74653)),"@site/docs/020.getting-started/050.self-hosted/020.environment-variables.md",74653],"4cd0de40":[()=>n.e(1730).then(n.bind(n,5848)),"@site/docs/070.fields/040.field-types/050.custom-types/050.barcode.md",5848],"4ed1386c":[()=>n.e(1753).then(n.bind(n,23868)),"@site/versioned_docs/version-0.109.7/060.FAQs.md",23868],"4efb7b3c":[()=>n.e(3755).then(n.bind(n,1106)),"@site/docs/150.engineering/010.architecture.md",1106],"4f577b60":[()=>n.e(2922).then(n.t.bind(n,55913,19)),"~docs/default/tag-tags-records-b8e.json",55913],"523749b8":[()=>n.e(9508).then(n.t.bind(n,64307,19)),"~docs/default/tag-tags-search-b34.json",64307],"524f61e0":[()=>n.e(5150).then(n.t.bind(n,84549,19)),"~docs/default/tag-tags-delete-7ef.json",84549],"525fa7b4":[()=>n.e(3469).then(n.bind(n,694)),"@site/docs/070.fields/040.field-types/050.custom-types/040.QR-code.md",694],"529c2981":[()=>n.e(7152).then(n.bind(n,46494)),"@site/versioned_docs/version-0.109.7/040.developer-resources/040.webhooks.md",46494],"52df1fbb":[()=>n.e(8395).then(n.bind(n,57549)),"@site/docs/150.engineering/020.repository-structure.md",57549],"5436f7e6":[()=>n.e(3939).then(n.bind(n,26869)),"@site/versioned_docs/version-0.109.7/040.developer-resources/050.upload-via-api.md",26869],55156658:[()=>n.e(1802).then(n.t.bind(n,80394,19)),"~docs/default/tag-tags-lookup-6f6.json",80394],"55403ccd":[()=>n.e(2650).then(n.bind(n,91059)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/090.formulas.md",91059],"55960ee5":[()=>n.e(4121).then(n.t.bind(n,88070,19)),"~docs/default/tags-list-current-prop-15a.json",88070],"576905f1":[()=>n.e(5772).then(n.bind(n,27072)),"@site/docs/120.collaboration/050.oss-specific-details.md",27072],"58354ae8":[()=>n.e(3164).then(n.bind(n,83679)),"@site/docs/150.engineering/030.development-setup.md",83679],"5af3a857":[()=>n.e(8838).then(n.bind(n,80131)),"@site/docs/090.views/040.view-types/030.form.md",80131],"5b61f490":[()=>n.e(518).then(n.t.bind(n,40809,19)),"~docs/default/tag-tags-expand-158.json",40809],"5c9cf4c7":[()=>n.e(5187).then(n.bind(n,21984)),"@site/versioned_docs/version-0.109.7/020.getting-started/010.installation.md",21984],"5ccd3149":[()=>n.e(4033).then(n.bind(n,43452)),"@site/versioned_docs/version-0.109.7/050.engineering/050.playwright.md",43452],"5dcc9f57":[()=>n.e(7395).then(n.t.bind(n,34861,19)),"~docs/default/tag-tags-table-operations-01a.json",34861],"5eaf3a75":[()=>n.e(1944).then(n.bind(n,49571)),"@site/docs/030.workspaces/020.create-workspace.md",49571],"603e048e":[()=>n.e(7700).then(n.bind(n,57742)),"@site/docs/070.fields/030.display-value.md",57742],"60b8b995":[()=>n.e(3463).then(n.bind(n,47611)),"@site/docs/070.fields/040.field-types/070.date-time-based/040.duration.md",47611],"615746d5":[()=>n.e(678).then(n.bind(n,79584)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/050.code-snippets.md",79584],"61a3d417":[()=>n.e(6591).then(n.bind(n,35713)),"@site/docs/090.views/020.create-view.md",35713],"61af7884":[()=>n.e(7621).then(n.t.bind(n,51261,19)),"~docs/default/tag-tags-form-view-94e.json",51261],"6233b6dc":[()=>n.e(7647).then(n.t.bind(n,10950,19)),"~docs/default/tag-tags-excel-813.json",10950],"6485a1bf":[()=>n.e(6640).then(n.t.bind(n,81067,19)),"~docs/default/tag-tags-multi-select-0c8.json",81067],"6502d10a":[()=>n.e(6078).then(n.t.bind(n,92793,19)),"~docs/default/tag-tags-long-text-c05.json",92793],"654123f4":[()=>n.e(9933).then(n.bind(n,49893)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/100.primary-key.md",49893],"68fa8000":[()=>n.e(7549).then(n.bind(n,83407)),"@site/docs/070.fields/040.field-types/050.custom-types/070.specific-db-type.md",83407],"69895f00":[()=>n.e(4289).then(n.bind(n,37087)),"@site/docs/070.fields/040.field-types/020.numerical/020.decimal.md",37087],"69bed9e5":[()=>n.e(3869).then(n.bind(n,99300)),"@site/docs/060.table-operations/060.row-height.md",99300],"69bee932":[()=>n.e(3454).then(n.bind(n,55286)),"@site/docs/020.getting-started/030.terminologies.md",55286],"6a0eac6b":[()=>n.e(4158).then(n.bind(n,18637)),"@site/docs/060.table-operations/080.download.md",18637],"6a105426":[()=>n.e(7592).then(n.t.bind(n,51533,19)),"~docs/default/tag-tags-getting-started-564.json",51533],"6a2ab9d1":[()=>n.e(8537).then(n.t.bind(n,40264,19)),"~docs/default/tag-tags-date-time-e33.json",40264],"6aee45b4":[()=>n.e(8535).then(n.t.bind(n,61777,19)),"~docs/default/tag-tags-select-based-types-ed9.json",61777],"6d2f78d9":[()=>n.e(254).then(n.bind(n,78688)),"@site/docs/070.fields/040.field-types/050.custom-types/080.json.md",78688],"6f7695df":[()=>n.e(3011).then(n.bind(n,29486)),"@site/docs/040.bases/060.share-base.md",29486],"6fe2a298":[()=>n.e(7219).then(n.bind(n,13773)),"@site/versioned_docs/version-0.109.7/050.engineering/020.repository-structure.md",13773],70424118:[()=>n.e(332).then(n.t.bind(n,15231,19)),"~docs/default/tag-tags-engineering-fa4.json",15231],"70efa42e":[()=>n.e(4815).then(n.bind(n,53683)),"@site/docs/050.tables/030.create-table-via-import.md",53683],71540999:[()=>n.e(8954).then(n.bind(n,98336)),"@site/versioned_docs/version-0.109.7/050.engineering/010.architecture.md",98336],"71f80183":[()=>n.e(924).then(n.t.bind(n,5068,19)),"~docs/default/tag-tags-shortcuts-33c.json",5068],"78ec2f26":[()=>n.e(2673).then(n.t.bind(n,44413,19)),"~docs/default/tag-tags-relations-887.json",44413],"7a733070":[()=>n.e(4223).then(n.t.bind(n,46864,19)),"~docs/default/tag-tags-share-2bf.json",46864],"7c4b6d90":[()=>n.e(5580).then(n.bind(n,2891)),"@site/docs/150.engineering/080.writing-docs.md",2891],"7ce1d842":[()=>n.e(3998).then(n.bind(n,32723)),"@site/docs/050.tables/010.table-overview.md",32723],"7d5d7de6":[()=>n.e(5017).then(n.t.bind(n,40108,19)),"~docs/default/tag-tags-rating-b67.json",40108],"7dce83b4":[()=>n.e(1193).then(n.bind(n,77848)),"@site/docs/060.table-operations/070.search.md",77848],"7e18769a":[()=>n.e(4177).then(n.bind(n,18329)),"@site/docs/090.views/090.actions-on-view.md",18329],"81862c4f":[()=>n.e(1499).then(n.bind(n,14919)),"@site/versioned_docs/version-0.109.7/040.developer-resources/010.accessing-apis.md",14919],"824dfda1":[()=>n.e(4570).then(n.bind(n,89138)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/210.usage-information.md",89138],"832fc58a":[()=>n.e(9874).then(n.t.bind(n,56038,19)),"~docs/default/tag-tags-comments-65d.json",56038],83533542:[()=>n.e(3878).then(n.t.bind(n,83762,19)),"~docs/default/tag-tags-fields-8d7.json",83762],"8498c216":[()=>n.e(3381).then(n.bind(n,62162)),"@site/docs/150.engineering/070.translation.md",62162],"855d76bb":[()=>n.e(6141).then(n.bind(n,58640)),"@site/versioned_docs/version-0.109.7/040.developer-resources/030.sdk.md",58640],"86fc9284":[()=>n.e(305).then(n.bind(n,73842)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/060.link-to-another-record.md",73842],"87e9af65":[()=>n.e(4507).then(n.bind(n,16371)),"@site/versioned_docs/version-0.109.7/020.getting-started/040.demos.md",16371],"88cc213e":[()=>n.e(4193).then(n.bind(n,46015)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/130.share-base.md",46015],"8a8a6f17":[()=>n.e(9060).then(n.bind(n,82187)),"@site/docs/060.table-operations/040.sort.md",82187],"9040003c":[()=>n.e(8511).then(n.bind(n,68312)),"@site/docs/120.collaboration/010.workspace-collaboration.md",68312],"90e43058":[()=>n.e(7023).then(n.bind(n,79613)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/150.keyboard-maneuver.md",79613],"9329f711":[()=>n.e(753).then(n.bind(n,20980)),"@site/docs/140.account-settings/010.profile-page.md",20980],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],95677701:[()=>n.e(1174).then(n.t.bind(n,44721,19)),"~docs/default/tag-tags-group-by-a64.json",44721],"95a14fd1":[()=>n.e(9518).then(n.bind(n,52119)),"@site/docs/060.table-operations/050.group-by.md",52119],"985d43d9":[()=>n.e(1196).then(n.t.bind(n,12322,19)),"~docs/default/tag-tags-tables-709.json",12322],"98de4c79":[()=>n.e(9893).then(n.bind(n,97481)),"@site/docs/070.fields/040.field-types/060.formula/015.operators.md",97481],"9906c9d3":[()=>n.e(7661).then(n.bind(n,25300)),"@site/docs/150.engineering/050.playwright.md",25300],"9995b2be":[()=>n.e(9850).then(n.t.bind(n,63067,19)),"~docs/default/tag-tags-table-e12.json",63067],"99f674e5":[()=>n.e(4307).then(n.bind(n,17813)),"@site/docs/080.records/070.actions-on-record.md",17813],"9a52cc21":[()=>n.e(3062).then(n.t.bind(n,10804,19)),"~docs/default/tag-tags-numerical-types-03c.json",10804],"9a7e4ef7":[()=>n.e(1961).then(n.t.bind(n,20467,19)),"~docs/default/tag-tags-bases-eae.json",20467],"9aad2067":[()=>n.e(4769).then(n.t.bind(n,41536,19)),"~docs/default/tag-tags-phone-number-f26.json",41536],"9c78149d":[()=>n.e(8381).then(n.bind(n,51959)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/250.audit.md",51959],"9d4ed5ff":[()=>n.e(4333).then(n.bind(n,84673)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/110.display-value.md",84673],"9db0d30f":[()=>n.e(6090).then(n.t.bind(n,54041,19)),"~docs/default/tag-tags-webhook-2b4.json",54041],"9db7fbd6":[()=>n.e(481).then(n.t.bind(n,93717,19)),"~docs/default/tag-tags-import-be6.json",93717],"9dfd9b1b":[()=>n.e(9279).then(n.bind(n,28507)),"@site/docs/080.records/010.records-overview.md",28507],"9e1a113d":[()=>n.e(6999).then(n.t.bind(n,45182,19)),"~docs/default/tag-tags-display-value-bc0.json",45182],"9e7567e1":[()=>n.e(7823).then(n.t.bind(n,27737,19)),"~docs/default/tag-tags-rollup-019.json",27737],a15cb612:[()=>n.e(9042).then(n.t.bind(n,42822,19)),"~docs/default/tag-tags-disable-39c.json",42822],a18f2535:[()=>n.e(6928).then(n.bind(n,61492)),"@site/docs/120.collaboration/040.share-view.md",61492],a43060c8:[()=>n.e(3185).then(n.bind(n,96)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/220.links.md",96],a47b7f3a:[()=>n.e(2550).then(n.bind(n,60406)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/010.dashboard.md",60406],a54c3ef6:[()=>n.e(5283).then(n.t.bind(n,38488,19)),"~docs/default/tag-tags-star-298.json",38488],a71ccd0b:[()=>n.e(9383).then(n.t.bind(n,51259,19)),"~docs/default/tag-tags-csv-1df.json",51259],a7294da8:[()=>n.e(3312).then(n.bind(n,60707)),"@site/versioned_docs/version-0.109.7/040.developer-resources/020.rest-apis.md",60707],a9993c14:[()=>n.e(8750).then(n.t.bind(n,86137,19)),"~docs/default/tag-tags-table-details-781.json",86137],ab9ce1e1:[()=>n.e(5919).then(n.t.bind(n,4225,19)),"~docs/default/tag-tags-row-height-0cb.json",4225],abbfc25c:[()=>n.e(6713).then(n.bind(n,59661)),"@site/docs/070.fields/040.field-types/040.links-based/020.lookup.md",59661],ae730630:[()=>n.e(9707).then(n.bind(n,90229)),"@site/docs/060.table-operations/010.overview.md",90229],ae9857c7:[()=>n.e(6714).then(n.t.bind(n,86741,19)),"~docs/default/version-0-109-7-metadata-prop-007.json",86741],b2206ab4:[()=>n.e(2384).then(n.t.bind(n,96212,19)),"~docs/default/tag-tags-primary-key-b79.json",96212],b22d161b:[()=>n.e(2773).then(n.bind(n,54954)),"@site/docs/010.index.md",54954],b3347e58:[()=>n.e(345).then(n.t.bind(n,12068,19)),"~docs/default/tag-tags-specific-db-type-32a.json",12068],b444d910:[()=>n.e(8958).then(n.bind(n,85507)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/030.column-operations.md",85507],b6006dd7:[()=>n.e(1676).then(n.t.bind(n,81921,19)),"~docs/default/tag-tags-multi-fields-editor-8da.json",81921],b65801cb:[()=>n.e(274).then(n.t.bind(n,69609,19)),"~docs/default/tag-tags-decimal-575.json",69609],b7abf355:[()=>n.e(3857).then(n.bind(n,17569)),"@site/docs/030.workspaces/010.workspace-overview.md",17569],ba1d2c5b:[()=>n.e(6779).then(n.bind(n,80390)),"@site/docs/040.bases/040.import-base-from-airtable.md",80390],bb516362:[()=>n.e(9721).then(n.bind(n,26238)),"@site/docs/090.views/010.views-overview.md",26238],bb53f532:[()=>n.e(1641).then(n.bind(n,69619)),"@site/docs/070.fields/040.field-types/010.text-based/050.url.md",69619],bd02e23f:[()=>n.e(2606).then(n.bind(n,33872)),"@site/docs/070.fields/040.field-types/010.text-based/040.phonenumber.md",33872],c1501dcb:[()=>n.e(7096).then(n.bind(n,36802)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/120.sync-schema.md",36802],c1a34d6e:[()=>n.e(636).then(n.bind(n,55619)),"@site/docs/070.fields/040.field-types/050.custom-types/060.geometry.md",55619],c1dfffdd:[()=>n.e(4166).then(n.bind(n,9933)),"@site/docs/070.fields/040.field-types/010.text-based/020.long-text.md",9933],c2accac3:[()=>n.e(2874).then(n.t.bind(n,78942,19)),"~docs/default/tag-tags-percent-363.json",78942],c3d0dca5:[()=>n.e(8221).then(n.bind(n,85445)),"@site/docs/100.data-source/010.data-source-overview.md",85445],c42aaec2:[()=>n.e(92).then(n.t.bind(n,30780,19)),"~docs/default/tag-tags-permissions-6c8.json",30780],c76e097b:[()=>n.e(1461).then(n.bind(n,48496)),"@site/docs/110.roles-and-permissions/010.roles-permissions-overview.md",48496],c7dc53b4:[()=>n.e(4513).then(n.t.bind(n,54830,19)),"~docs/default/tag-tags-single-select-bec.json",54830],c93390fb:[()=>n.e(4660).then(n.t.bind(n,83256,19)),"~docs/default/tag-tags-links-based-types-1b0.json",83256],cc44517e:[()=>n.e(1949).then(n.bind(n,93124)),"@site/versioned_docs/version-0.109.7/050.engineering/070.translation.md",93124],cc9fede1:[()=>n.e(5228).then(n.t.bind(n,10958,19)),"~docs/default/tag-tags-download-e65.json",10958],cd3c4207:[()=>n.e(485).then(n.bind(n,67047)),"@site/docs/070.fields/040.field-types/040.links-based/030.rollup.md",67047],cd725ea4:[()=>n.e(800).then(n.bind(n,87956)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/080.rollup.md",87956],ce2b01b6:[()=>n.e(211).then(n.t.bind(n,83769,19)),"/Users/navi/practice/nocodb/packages/noco-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",83769],d01bd8c5:[()=>n.e(8820).then(n.bind(n,98962)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/260.project-settings.md",98962],d12c5626:[()=>n.e(1609).then(n.t.bind(n,1208,19)),"~docs/default/tag-tags-xlsx-3b0.json",1208],d3abb5b7:[()=>n.e(3447).then(n.t.bind(n,85920,19)),"~docs/default/tag-tags-grid-view-58b.json",85920],d427e024:[()=>n.e(5413).then(n.bind(n,6314)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/240.meta-management.md",6314],d5451361:[()=>n.e(1205).then(n.t.bind(n,69033,19)),"~docs/default/tag-tags-profile-4e1.json",69033],d69d4db4:[()=>n.e(333).then(n.t.bind(n,29497,19)),"~docs/default/tag-tags-reorder-7e5.json",29497],d767d123:[()=>n.e(4743).then(n.bind(n,54004)),"@site/docs/040.bases/070.actions-on-base.md",54004],d96af704:[()=>n.e(2582).then(n.t.bind(n,30004,19)),"~docs/default/tag-tags-show-hide-a0d.json",30004],d9e65f56:[()=>n.e(8379).then(n.t.bind(n,42899,19)),"~docs/default/tag-tags-api-tokens-bbe.json",42899],da4f93ee:[()=>n.e(4882).then(n.bind(n,47221)),"@site/docs/070.fields/050.multi-fields-editor.md",47221],dc1c5b3c:[()=>n.e(1576).then(n.t.bind(n,50742,19)),"~docs/default/tag-tags-json-a8a.json",50742],ded49de4:[()=>n.e(9868).then(n.bind(n,34654)),"@site/docs/070.fields/040.field-types/070.date-time-based/010.date-time.md",34654],df203c0f:[()=>n.e(9924).then(n.bind(n,99385)),"@theme/DocTagDocListPage",99385],df59b4b5:[()=>n.e(3914).then(n.t.bind(n,36756,19)),"~docs/default/tag-tags-single-line-text-64e.json",36756],e12d67b0:[()=>n.e(9554).then(n.t.bind(n,61359,19)),"~docs/default/tag-tags-views-e28.json",61359],e28b0c4f:[()=>n.e(8880).then(n.bind(n,85216)),"@site/versioned_docs/version-0.109.7/020.getting-started/030.upgrading.md",85216],e302cfc9:[()=>n.e(1313).then(n.bind(n,10847)),"@site/docs/065.table-details/table-details-overview.md",10847],e3120721:[()=>n.e(1120).then(n.t.bind(n,23388,19)),"~docs/default/tag-tags-filter-2d5.json",23388],e4367861:[()=>n.e(6263).then(n.bind(n,37634)),"@site/docs/050.tables/040.import-data-into-existing-table.md",37634],e4e12989:[()=>n.e(8e3).then(n.bind(n,86301)),"@site/versioned_docs/version-0.109.7/050.engineering/040.unit-testing.md",86301],e55064b4:[()=>n.e(4341).then(n.bind(n,73412)),"@site/docs/070.fields/040.field-types/020.numerical/040.currency.md",73412],e56fdc78:[()=>n.e(9069).then(n.bind(n,89e3)),"@site/docs/020.getting-started/050.self-hosted/030.upgrading.md",89e3],e5a54c1b:[()=>n.e(7283).then(n.bind(n,39110)),"@site/docs/070.fields/040.field-types/020.numerical/010.number.md",39110],e631982f:[()=>n.e(5055).then(n.bind(n,12957)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/190.expanded-form.md",12957],e68614dc:[()=>n.e(771).then(n.bind(n,19809)),"@site/docs/070.fields/040.field-types/050.custom-types/010.attachment.md",19809],e68e0fff:[()=>n.e(6859).then(n.t.bind(n,27048,19)),"~docs/default/tag-tags-cover-image-028.json",27048],e8cbe097:[()=>n.e(1635).then(n.t.bind(n,73637,19)),"~docs/default/tag-tags-field-types-c13.json",73637],eb689018:[()=>n.e(4851).then(n.bind(n,91431)),"@site/docs/040.bases/010.base-overview.md",91431],ebb99180:[()=>n.e(346).then(n.bind(n,61669)),"@site/docs/090.views/040.view-types/020.gallery.md",61669],ec134df3:[()=>n.e(5921).then(n.bind(n,90279)),"@site/docs/070.fields/040.field-types/050.custom-types/030.rating.md",90279],ec135315:[()=>n.e(6125).then(n.bind(n,16033)),"@site/docs/070.fields/020.primary-key.md",16033],ed0a57e3:[()=>n.e(8690).then(n.bind(n,67123)),"@site/docs/070.fields/040.field-types/050.custom-types/020.checkbox.md",67123],f0eb83f3:[()=>n.e(2862).then(n.bind(n,76908)),"@site/versioned_docs/version-0.109.7/030.setup-and-usages/230.team-and-auth.md",76908],f4472a32:[()=>n.e(9123).then(n.t.bind(n,90399,19)),"~docs/default/tag-tags-attachment-9e2.json",90399],f472468a:[()=>n.e(9214).then(n.t.bind(n,90290,19)),"~docs/default/tag-tags-links-d71.json",90290],f58fbde1:[()=>n.e(9415).then(n.t.bind(n,35701,19)),"~docs/default/tag-tags-activity-feed-ccc.json",35701],f6aad64f:[()=>n.e(853).then(n.t.bind(n,63825,19)),"~docs/default/tag-tags-open-source-031.json",63825],f7d905ba:[()=>n.e(7746).then(n.bind(n,67268)),"@site/docs/060.table-operations/030.filter.md",67268],f9241299:[()=>n.e(3521).then(n.bind(n,67452)),"@site/docs/120.collaboration/010.collaboration-overview.md",67452],f9538193:[()=>n.e(7235).then(n.t.bind(n,96482,19)),"~docs/default/tag-tags-currency-68c.json",96482],fb12fd2d:[()=>n.e(1416).then(n.t.bind(n,82648,19)),"~docs/default/tag-tags-sort-d14.json",82648],fb5c685c:[()=>n.e(1067).then(n.t.bind(n,86841,19)),"~docs/default/tag-tags-create-2ad.json",86841],fb60c522:[()=>n.e(5407).then(n.bind(n,94065)),"@site/docs/070.fields/060.actions-on-field.md",94065],fc37d7fe:[()=>n.e(9485).then(n.t.bind(n,8673,19)),"~docs/default/tag-tags-member-3b6.json",8673],fe112e79:[()=>n.e(2776).then(n.bind(n,57117)),"@site/docs/030.workspaces/030.workspace-collaboration.md",57117],ffd85642:[()=>n.e(1705).then(n.t.bind(n,89326,19)),"~docs/default/tag-tags-role-c53.json",89326]};function c(e){let{error:t,retry:n,pastDelay:a}=e;return t?r.createElement("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"}},r.createElement("p",null,String(t)),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},"Retry"))):a?r.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"}},r.createElement("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb"},r.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"8"},r.createElement("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"}))))):null}var u=n(5304),d=n(69656);function p(e,t){if("*"===e)return i()({loading:c,loader:()=>n.e(4248).then(n.bind(n,74248)),modules:["@theme/NotFound"],webpack:()=>[74248],render(e,t){const n=e.default;return r.createElement(d.z,{value:{plugin:{name:"native",id:"default"}}},r.createElement(n,t))}});const o=s[`${e}-${t}`],p={},f=[],m=[],g=(0,u.Z)(o);return Object.entries(g).forEach((e=>{let[t,n]=e;const r=l[n];r&&(p[t]=r[0],f.push(r[1]),m.push(r[2]))})),i().Map({loading:c,loader:p,modules:f,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(o));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let o=i;const s=n.split(".");s.slice(0,-1).forEach((e=>{o=o[e]})),o[s[s.length-1]]=a}));const s=i.__comp;delete i.__comp;const l=i.__context;return delete i.__context,r.createElement(d.z,{value:l},r.createElement(s,(0,a.Z)({},i,n)))}})}const f=[{path:"/tags",component:p("/tags","ba5"),exact:!0},{path:"/tags/account-settings",component:p("/tags/account-settings","f4d"),exact:!0},{path:"/tags/activity-feed",component:p("/tags/activity-feed","433"),exact:!0},{path:"/tags/api-tokens",component:p("/tags/api-tokens","b9c"),exact:!0},{path:"/tags/attachment",component:p("/tags/attachment","cc3"),exact:!0},{path:"/tags/barcode",component:p("/tags/barcode","969"),exact:!0},{path:"/tags/base",component:p("/tags/base","e91"),exact:!0},{path:"/tags/bases",component:p("/tags/bases","264"),exact:!0},{path:"/tags/checkbox",component:p("/tags/checkbox","9bd"),exact:!0},{path:"/tags/collaboration",component:p("/tags/collaboration","327"),exact:!0},{path:"/tags/comments",component:p("/tags/comments","667"),exact:!0},{path:"/tags/cover-image",component:p("/tags/cover-image","911"),exact:!0},{path:"/tags/create",component:p("/tags/create","d20"),exact:!0},{path:"/tags/csv",component:p("/tags/csv","f99"),exact:!0},{path:"/tags/currency",component:p("/tags/currency","903"),exact:!0},{path:"/tags/custom-types",component:p("/tags/custom-types","4f9"),exact:!0},{path:"/tags/dashboard",component:p("/tags/dashboard","51e"),exact:!0},{path:"/tags/data-sources",component:p("/tags/data-sources","a71"),exact:!0},{path:"/tags/date-time",component:p("/tags/date-time","3dd"),exact:!0},{path:"/tags/decimal",component:p("/tags/decimal","516"),exact:!0},{path:"/tags/delete",component:p("/tags/delete","df8"),exact:!0},{path:"/tags/disable",component:p("/tags/disable","3a5"),exact:!0},{path:"/tags/display-value",component:p("/tags/display-value","a0a"),exact:!0},{path:"/tags/download",component:p("/tags/download","25e"),exact:!0},{path:"/tags/duplicate",component:p("/tags/duplicate","d65"),exact:!0},{path:"/tags/edit",component:p("/tags/edit","4bb"),exact:!0},{path:"/tags/email",component:p("/tags/email","1ad"),exact:!0},{path:"/tags/enable",component:p("/tags/enable","6f0"),exact:!0},{path:"/tags/engineering",component:p("/tags/engineering","253"),exact:!0},{path:"/tags/excel",component:p("/tags/excel","b34"),exact:!0},{path:"/tags/expand",component:p("/tags/expand","4b0"),exact:!0},{path:"/tags/expanded-record",component:p("/tags/expanded-record","3a7"),exact:!0},{path:"/tags/field-types",component:p("/tags/field-types","efa"),exact:!0},{path:"/tags/fields",component:p("/tags/fields","13b"),exact:!0},{path:"/tags/filter",component:p("/tags/filter","084"),exact:!0},{path:"/tags/form",component:p("/tags/form","6e5"),exact:!0},{path:"/tags/form-view",component:p("/tags/form-view","89e"),exact:!0},{path:"/tags/formula",component:p("/tags/formula","374"),exact:!0},{path:"/tags/gallery-view",component:p("/tags/gallery-view","68d"),exact:!0},{path:"/tags/geometry",component:p("/tags/geometry","321"),exact:!0},{path:"/tags/getting-started",component:p("/tags/getting-started","f7a"),exact:!0},{path:"/tags/grid-view",component:p("/tags/grid-view","86f"),exact:!0},{path:"/tags/group-by",component:p("/tags/group-by","117"),exact:!0},{path:"/tags/hide",component:p("/tags/hide","42e"),exact:!0},{path:"/tags/import",component:p("/tags/import","0bc"),exact:!0},{path:"/tags/invite",component:p("/tags/invite","67f"),exact:!0},{path:"/tags/json",component:p("/tags/json","bc1"),exact:!0},{path:"/tags/kanban-view",component:p("/tags/kanban-view","59c"),exact:!0},{path:"/tags/links",component:p("/tags/links","439"),exact:!0},{path:"/tags/links-based-types",component:p("/tags/links-based-types","2a3"),exact:!0},{path:"/tags/long-text",component:p("/tags/long-text","8aa"),exact:!0},{path:"/tags/lookup",component:p("/tags/lookup","f78"),exact:!0},{path:"/tags/member",component:p("/tags/member","8d9"),exact:!0},{path:"/tags/members",component:p("/tags/members","1e3"),exact:!0},{path:"/tags/multi-fields-editor",component:p("/tags/multi-fields-editor","969"),exact:!0},{path:"/tags/multi-select",component:p("/tags/multi-select","211"),exact:!0},{path:"/tags/number",component:p("/tags/number","037"),exact:!0},{path:"/tags/numerical-types",component:p("/tags/numerical-types","64b"),exact:!0},{path:"/tags/open-source",component:p("/tags/open-source","412"),exact:!0},{path:"/tags/overview",component:p("/tags/overview","a96"),exact:!0},{path:"/tags/percent",component:p("/tags/percent","80c"),exact:!0},{path:"/tags/permissions",component:p("/tags/permissions","c4b"),exact:!0},{path:"/tags/phone-number",component:p("/tags/phone-number","e06"),exact:!0},{path:"/tags/primary-key",component:p("/tags/primary-key","77b"),exact:!0},{path:"/tags/productivity-hacks",component:p("/tags/productivity-hacks","24f"),exact:!0},{path:"/tags/profile",component:p("/tags/profile","8cd"),exact:!0},{path:"/tags/qr-code",component:p("/tags/qr-code","01b"),exact:!0},{path:"/tags/rating",component:p("/tags/rating","c91"),exact:!0},{path:"/tags/records",component:p("/tags/records","1ec"),exact:!0},{path:"/tags/relations",component:p("/tags/relations","db2"),exact:!0},{path:"/tags/rename",component:p("/tags/rename","177"),exact:!0},{path:"/tags/reorder",component:p("/tags/reorder","c16"),exact:!0},{path:"/tags/role",component:p("/tags/role","eb5"),exact:!0},{path:"/tags/roles",component:p("/tags/roles","1d2"),exact:!0},{path:"/tags/rollup",component:p("/tags/rollup","3a6"),exact:!0},{path:"/tags/row-height",component:p("/tags/row-height","bfd"),exact:!0},{path:"/tags/search",component:p("/tags/search","835"),exact:!0},{path:"/tags/select-based-types",component:p("/tags/select-based-types","a85"),exact:!0},{path:"/tags/share",component:p("/tags/share","ed2"),exact:!0},{path:"/tags/shortcuts",component:p("/tags/shortcuts","1b1"),exact:!0},{path:"/tags/show-hide",component:p("/tags/show-hide","8e8"),exact:!0},{path:"/tags/single-line-text",component:p("/tags/single-line-text","c01"),exact:!0},{path:"/tags/single-select",component:p("/tags/single-select","3c8"),exact:!0},{path:"/tags/sort",component:p("/tags/sort","39c"),exact:!0},{path:"/tags/specific-db-type",component:p("/tags/specific-db-type","8f0"),exact:!0},{path:"/tags/star",component:p("/tags/star","7be"),exact:!0},{path:"/tags/table",component:p("/tags/table","9a4"),exact:!0},{path:"/tags/table-details",component:p("/tags/table-details","944"),exact:!0},{path:"/tags/table-operations",component:p("/tags/table-operations","39e"),exact:!0},{path:"/tags/tables",component:p("/tags/tables","055"),exact:!0},{path:"/tags/text-based-types",component:p("/tags/text-based-types","131"),exact:!0},{path:"/tags/url",component:p("/tags/url","a95"),exact:!0},{path:"/tags/views",component:p("/tags/views","2bd"),exact:!0},{path:"/tags/webhook",component:p("/tags/webhook","9d9"),exact:!0},{path:"/tags/workspace",component:p("/tags/workspace","9ce"),exact:!0},{path:"/tags/workspaces",component:p("/tags/workspaces","99b"),exact:!0},{path:"/tags/xlsx",component:p("/tags/xlsx","1fd"),exact:!0},{path:"/0.109.7",component:p("/0.109.7","8a5"),routes:[{path:"/0.109.7/",component:p("/0.109.7/","eab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/developer-resources/accessing-apis",component:p("/0.109.7/developer-resources/accessing-apis","238"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/developer-resources/rest-apis",component:p("/0.109.7/developer-resources/rest-apis","06e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/developer-resources/sdk",component:p("/0.109.7/developer-resources/sdk","9da"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/developer-resources/upload-via-api",component:p("/0.109.7/developer-resources/upload-via-api","ae3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/developer-resources/webhooks",component:p("/0.109.7/developer-resources/webhooks","93d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/architecture",component:p("/0.109.7/engineering/architecture","a78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/builds-and-releases",component:p("/0.109.7/engineering/builds-and-releases","107"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/development-setup",component:p("/0.109.7/engineering/development-setup","9b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/playwright",component:p("/0.109.7/engineering/playwright","b87"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/repository-structure",component:p("/0.109.7/engineering/repository-structure","6f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/translation",component:p("/0.109.7/engineering/translation","02f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/engineering/unit-testing",component:p("/0.109.7/engineering/unit-testing","d31"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/FAQs",component:p("/0.109.7/FAQs","79f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/getting-started/demos",component:p("/0.109.7/getting-started/demos","8e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/getting-started/environment-variables",component:p("/0.109.7/getting-started/environment-variables","bea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/getting-started/installation",component:p("/0.109.7/getting-started/installation","af5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/getting-started/upgrading",component:p("/0.109.7/getting-started/upgrading","5e6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/account-settings",component:p("/0.109.7/setup-and-usages/account-settings","72e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/audit",component:p("/0.109.7/setup-and-usages/audit","492"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/code-snippets",component:p("/0.109.7/setup-and-usages/code-snippets","e68"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/column-operations",component:p("/0.109.7/setup-and-usages/column-operations","b69"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/column-types",component:p("/0.109.7/setup-and-usages/column-types","a5e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/dashboard",component:p("/0.109.7/setup-and-usages/dashboard","ee2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/display-value",component:p("/0.109.7/setup-and-usages/display-value","a30"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/expanded-form",component:p("/0.109.7/setup-and-usages/expanded-form","b88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/formulas",component:p("/0.109.7/setup-and-usages/formulas","bd0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free",component:p("/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free","371"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/keyboard-maneuver",component:p("/0.109.7/setup-and-usages/keyboard-maneuver","881"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/languages",component:p("/0.109.7/setup-and-usages/languages","b49"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/link-to-another-record",component:p("/0.109.7/setup-and-usages/link-to-another-record","6c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/links",component:p("/0.109.7/setup-and-usages/links","0dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/lookup",component:p("/0.109.7/setup-and-usages/lookup","96d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/meta-management",component:p("/0.109.7/setup-and-usages/meta-management","254"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/primary-key",component:p("/0.109.7/setup-and-usages/primary-key","0c4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/project-settings",component:p("/0.109.7/setup-and-usages/project-settings","dc0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/rollup",component:p("/0.109.7/setup-and-usages/rollup","64f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/share-base",component:p("/0.109.7/setup-and-usages/share-base","29d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/share-view",component:p("/0.109.7/setup-and-usages/share-view","ec1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/sync-schema",component:p("/0.109.7/setup-and-usages/sync-schema","852"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/table-operations",component:p("/0.109.7/setup-and-usages/table-operations","364"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/team-and-auth",component:p("/0.109.7/setup-and-usages/team-and-auth","b5f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/usage-information",component:p("/0.109.7/setup-and-usages/usage-information","b21"),exact:!0,sidebar:"tutorialSidebar"},{path:"/0.109.7/setup-and-usages/views",component:p("/0.109.7/setup-and-usages/views","303"),exact:!0,sidebar:"tutorialSidebar"}]},{path:"/",component:p("/","ad1"),routes:[{path:"/",component:p("/","f1a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/account-settings/api-tokens",component:p("/account-settings/api-tokens","fe5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/account-settings/oss-specific-details",component:p("/account-settings/oss-specific-details","95b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/account-settings/profile-page",component:p("/account-settings/profile-page","6de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/automation/webhook/actions-on-webhook",component:p("/automation/webhook/actions-on-webhook","ec5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/automation/webhook/create-webhook",component:p("/automation/webhook/create-webhook","7f4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/automation/webhook/webhook-overview",component:p("/automation/webhook/webhook-overview","bdc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/actions-on-base",component:p("/bases/actions-on-base","d6b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/base-collaboration",component:p("/bases/base-collaboration","1d1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/base-overview",component:p("/bases/base-overview","305"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/create-base",component:p("/bases/create-base","b75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/import-base-from-airtable",component:p("/bases/import-base-from-airtable","e12"),exact:!0,sidebar:"tutorialSidebar"},{path:"/bases/share-base",component:p("/bases/share-base","626"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/base-collaboration",component:p("/collaboration/base-collaboration","dab"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/collaboration-overview",component:p("/collaboration/collaboration-overview","d7f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/oss-specific-details",component:p("/collaboration/oss-specific-details","43a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/share-base",component:p("/collaboration/share-base","1db"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/share-view",component:p("/collaboration/share-view","ef9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/collaboration/workspace-collaboration",component:p("/collaboration/workspace-collaboration","952"),exact:!0,sidebar:"tutorialSidebar"},{path:"/data-source/data-source-overview",component:p("/data-source/data-source-overview","0c7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/architecture",component:p("/engineering/architecture","5c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/builds-and-releases",component:p("/engineering/builds-and-releases","bb9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/development-setup",component:p("/engineering/development-setup","27a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/playwright",component:p("/engineering/playwright","09d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/repository-structure",component:p("/engineering/repository-structure","6fc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/translation",component:p("/engineering/translation","2dd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/unit-testing",component:p("/engineering/unit-testing","24a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/engineering/writing-docs",component:p("/engineering/writing-docs","4f2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/FAQs",component:p("/FAQs","828"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/actions-on-field",component:p("/fields/actions-on-field","f17"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/display-value",component:p("/fields/display-value","828"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/attachment",component:p("/fields/field-types/custom-types/attachment","06c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/barcode",component:p("/fields/field-types/custom-types/barcode","e35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/checkbox",component:p("/fields/field-types/custom-types/checkbox","d59"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/geometry",component:p("/fields/field-types/custom-types/geometry","1a2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/json",component:p("/fields/field-types/custom-types/json","bea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/QR-code",component:p("/fields/field-types/custom-types/QR-code","4e4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/rating",component:p("/fields/field-types/custom-types/rating","2ad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/custom-types/specific-db-type",component:p("/fields/field-types/custom-types/specific-db-type","0cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/date-time-based/date",component:p("/fields/field-types/date-time-based/date","725"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/date-time-based/date-time",component:p("/fields/field-types/date-time-based/date-time","836"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/date-time-based/duration",component:p("/fields/field-types/date-time-based/duration","94e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/date-time-based/time",component:p("/fields/field-types/date-time-based/time","d3c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/conditional-expressions",component:p("/fields/field-types/formula/conditional-expressions","5af"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/date-functions",component:p("/fields/field-types/formula/date-functions","798"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/formula",component:p("/fields/field-types/formula/formula","576"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/numeric-functions",component:p("/fields/field-types/formula/numeric-functions","556"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/operators",component:p("/fields/field-types/formula/operators","d96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/formula/string-functions",component:p("/fields/field-types/formula/string-functions","b5c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/links-based/links",component:p("/fields/field-types/links-based/links","487"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/links-based/lookup",component:p("/fields/field-types/links-based/lookup","861"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/links-based/rollup",component:p("/fields/field-types/links-based/rollup","1f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/numerical/currency",component:p("/fields/field-types/numerical/currency","91a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/numerical/decimal",component:p("/fields/field-types/numerical/decimal","8cc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/numerical/number",component:p("/fields/field-types/numerical/number","d91"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/numerical/percent",component:p("/fields/field-types/numerical/percent","243"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/select-based/multi-select",component:p("/fields/field-types/select-based/multi-select","626"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/select-based/single-select",component:p("/fields/field-types/select-based/single-select","e33"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/text-based/email",component:p("/fields/field-types/text-based/email","938"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/text-based/long-text",component:p("/fields/field-types/text-based/long-text","e24"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/text-based/phonenumber",component:p("/fields/field-types/text-based/phonenumber","a44"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/text-based/single-line-text",component:p("/fields/field-types/text-based/single-line-text","99f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/field-types/text-based/url",component:p("/fields/field-types/text-based/url","64a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/fields-overview",component:p("/fields/fields-overview","78a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/multi-fields-editor",component:p("/fields/multi-fields-editor","6e1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/fields/primary-key",component:p("/fields/primary-key","40d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/keyboard-shortcuts",component:p("/getting-started/keyboard-shortcuts","323"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/quick-start",component:p("/getting-started/quick-start","92c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/self-hosted/environment-variables",component:p("/getting-started/self-hosted/environment-variables","60e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/self-hosted/installation",component:p("/getting-started/self-hosted/installation","972"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/self-hosted/upgrading",component:p("/getting-started/self-hosted/upgrading","bfd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/getting-started/terminologies",component:p("/getting-started/terminologies","b1a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/records/actions-on-record",component:p("/records/actions-on-record","632"),exact:!0,sidebar:"tutorialSidebar"},{path:"/records/create-record",component:p("/records/create-record","945"),exact:!0,sidebar:"tutorialSidebar"},{path:"/records/expand-record",component:p("/records/expand-record","72d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/records/records-overview",component:p("/records/records-overview","150"),exact:!0,sidebar:"tutorialSidebar"},{path:"/roles-and-permissions/roles-permissions-overview",component:p("/roles-and-permissions/roles-permissions-overview","57d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-details/table-details-overview",component:p("/table-details/table-details-overview","ae5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/download",component:p("/table-operations/download","8d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/field-operations",component:p("/table-operations/field-operations","c3d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/filter",component:p("/table-operations/filter","96c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/group-by",component:p("/table-operations/group-by","893"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/overview",component:p("/table-operations/overview","bd0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/row-height",component:p("/table-operations/row-height","3c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/search",component:p("/table-operations/search","ed7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/table-operations/sort",component:p("/table-operations/sort","209"),exact:!0,sidebar:"tutorialSidebar"},{path:"/tables/actions-on-table",component:p("/tables/actions-on-table","05d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/tables/create-table",component:p("/tables/create-table","b64"),exact:!0,sidebar:"tutorialSidebar"},{path:"/tables/create-table-via-import",component:p("/tables/create-table-via-import","e6f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/tables/import-data-into-existing-table",component:p("/tables/import-data-into-existing-table","d91"),exact:!0,sidebar:"tutorialSidebar"},{path:"/tables/table-overview",component:p("/tables/table-overview","046"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/actions-on-view",component:p("/views/actions-on-view","17e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/create-view",component:p("/views/create-view","2b3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/share-view",component:p("/views/share-view","97d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/view-types/form",component:p("/views/view-types/form","252"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/view-types/gallery",component:p("/views/view-types/gallery","004"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/view-types/grid",component:p("/views/view-types/grid","c46"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/view-types/kanban",component:p("/views/view-types/kanban","b3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/views/views-overview",component:p("/views/views-overview","ba9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/workspaces/actions-on-workspace",component:p("/workspaces/actions-on-workspace","cb7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/workspaces/create-workspace",component:p("/workspaces/create-workspace","d20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/workspaces/workspace-collaboration",component:p("/workspaces/workspace-collaboration","dd4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/workspaces/workspace-overview",component:p("/workspaces/workspace-overview","34e"),exact:!0,sidebar:"tutorialSidebar"}]},{path:"*",component:p("*")}]},88121:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,t:()=>o});var r=n(67294);const a=r.createContext(!1);function o(e){let{children:t}=e;const[n,o]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{o(!0)}),[]),r.createElement(a.Provider,{value:n},t)}},49717:(e,t,n)=>{"use strict";var r=n(67294),a=n(73935),o=n(73727),i=n(70405),s=n(36136);const l=[n(30984),n(82251),n(79957),n(93878),n(98269),n(13538)];var c=n(50997),u=n(16550),d=n(18790);function p(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var f=n(87462),m=n(31514),g=n(39962),b=n(79524),h=n(20107),v=n(35463),y=n(40626),w=n(78181),k=n(60246),_=n(63905),S=n(33647);function E(){const{i18n:{defaultLocale:e,localeConfigs:t}}=(0,g.Z)(),n=(0,y.l)();return r.createElement(m.Z,null,Object.entries(t).map((e=>{let[t,{htmlLang:a}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:a})})),r.createElement("link",{rel:"alternate",href:n.createUrl({locale:e,fullyQualified:!0}),hrefLang:"x-default"}))}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,g.Z)(),a=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,g.Z)(),{pathname:r}=(0,u.TH)();return e+(0,_.applyTrailingSlash)((0,b.Z)(r),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:a;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:o}),r.createElement("link",{rel:"canonical",href:o}))}function C(){const{i18n:{currentLocale:e}}=(0,g.Z)(),{metadata:t,image:n}=(0,h.L)();return r.createElement(r.Fragment,null,r.createElement(m.Z,null,r.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),r.createElement("body",{className:w.h})),n&&r.createElement(v.d,{image:n}),r.createElement(x,null),r.createElement(E,null),r.createElement(S.Z,{tag:k.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,f.Z)({key:t},e))))))}const T=new Map;function L(e){if(T.has(e.pathname))return{...e,pathname:T.get(e.pathname)};if((0,d.f)(c.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return T.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return T.set(e.pathname,t),{...e,pathname:t}}var A=n(88121),O=n(80694);function R(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const a=l.map((t=>{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>a.forEach((e=>e?.()))}const N=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,r.useLayoutEffect)((()=>{a!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,a=t.hash===n.hash,o=t.search===n.search;if(r&&a&&!o)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:a}),R("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function P(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(c.Z,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class I extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=s.Z.canUseDOM?R("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=R("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),P(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return r.createElement(N,{previousLocation:this.previousLocation,location:t},r.createElement(u.AW,{location:t,render:()=>e}))}}const D=I,M="__docusaurus-base-url-issue-banner-container",j="__docusaurus-base-url-issue-banner",F="__docusaurus-base-url-issue-banner-suggestion-container",z="__DOCUSAURUS_INSERT_BASEURL_BANNER";function B(e){return`\nwindow['${z}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${z}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${M}');\n if (!bannerContainer) {\n return;\n }\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="${j}" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseUrl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">${e}</span> ${"/"===e?" (default value)":""}</p>\n <p>We suggest trying baseUrl = <span id="${F}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n var suggestionContainer = document.getElementById('${F}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function U(){const{siteConfig:{baseUrl:e}}=(0,g.Z)();return(0,r.useLayoutEffect)((()=>{window[z]=!1}),[]),r.createElement(r.Fragment,null,!s.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,B(e))),r.createElement("div",{id:M}))}function $(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,g.Z)(),{pathname:n}=(0,u.TH)();return t&&n===e?r.createElement(U,null):null}function q(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:a,localeConfigs:o}}=(0,g.Z)(),i=(0,b.Z)(e),{htmlLang:s,direction:l}=o[a];return r.createElement(m.Z,null,r.createElement("html",{lang:s,dir:l}),r.createElement("title",null,t),r.createElement("meta",{property:"og:title",content:t}),r.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&r.createElement("meta",{name:"robots",content:"noindex, nofollow"}),e&&r.createElement("link",{rel:"icon",href:i}))}var H=n(73256),G=n(51048);function Z(){const e=(0,G.Z)();return r.createElement(m.Z,null,r.createElement("html",{"data-has-hydrated":e}))}function V(){const e=(0,d.H)(c.Z),t=(0,u.TH)();return r.createElement(H.Z,null,r.createElement(O.M,null,r.createElement(A.t,null,r.createElement(p,null,r.createElement(q,null),r.createElement(C,null),r.createElement($,null),r.createElement(D,{location:L(t)},e)),r.createElement(Z,null))))}var W=n(16887);const Q=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const a=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;a?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var Y=n(5304);const K=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!J()&&!X.has(e)&&!K.has(e))(e))return!1;K.add(e);const t=(0,d.f)(c.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(W).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Y.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Q(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),P(e))},te=Object.freeze(ee);if(s.Z.canUseDOM){window.docusaurus=te;const e=a.hydrate;P(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(o.VK,null,r.createElement(V,null))),document.getElementById("__docusaurus"))}))}},80694:(e,t,n)=>{"use strict";n.d(t,{_:()=>u,M:()=>d});var r=n(67294),a=n(36809);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/","versions":[{"name":"current","label":"Latest","isLast":true,"path":"/","mainDocId":"index","docs":[{"id":"account-settings/api-tokens","path":"/account-settings/api-tokens","sidebar":"tutorialSidebar"},{"id":"account-settings/oss-specific-details","path":"/account-settings/oss-specific-details","sidebar":"tutorialSidebar"},{"id":"account-settings/profile-page","path":"/account-settings/profile-page","sidebar":"tutorialSidebar"},{"id":"automation/webhook/actions-on-webhook","path":"/automation/webhook/actions-on-webhook","sidebar":"tutorialSidebar"},{"id":"automation/webhook/create-webhook","path":"/automation/webhook/create-webhook","sidebar":"tutorialSidebar"},{"id":"automation/webhook/webhook-overview","path":"/automation/webhook/webhook-overview","sidebar":"tutorialSidebar"},{"id":"bases/actions-on-base","path":"/bases/actions-on-base","sidebar":"tutorialSidebar"},{"id":"bases/base-collaboration","path":"/bases/base-collaboration","sidebar":"tutorialSidebar"},{"id":"bases/base-overview","path":"/bases/base-overview","sidebar":"tutorialSidebar"},{"id":"bases/create-base","path":"/bases/create-base","sidebar":"tutorialSidebar"},{"id":"bases/import-base-from-airtable","path":"/bases/import-base-from-airtable","sidebar":"tutorialSidebar"},{"id":"bases/share-base","path":"/bases/share-base","sidebar":"tutorialSidebar"},{"id":"collaboration/base-collaboration","path":"/collaboration/base-collaboration","sidebar":"tutorialSidebar"},{"id":"collaboration/collaboration-overview","path":"/collaboration/collaboration-overview","sidebar":"tutorialSidebar"},{"id":"collaboration/oss-specific-details","path":"/collaboration/oss-specific-details","sidebar":"tutorialSidebar"},{"id":"collaboration/share-base","path":"/collaboration/share-base","sidebar":"tutorialSidebar"},{"id":"collaboration/share-view","path":"/collaboration/share-view","sidebar":"tutorialSidebar"},{"id":"collaboration/workspace-collaboration","path":"/collaboration/workspace-collaboration","sidebar":"tutorialSidebar"},{"id":"data-source/data-source-overview","path":"/data-source/data-source-overview","sidebar":"tutorialSidebar"},{"id":"engineering/architecture","path":"/engineering/architecture","sidebar":"tutorialSidebar"},{"id":"engineering/builds-and-releases","path":"/engineering/builds-and-releases","sidebar":"tutorialSidebar"},{"id":"engineering/development-setup","path":"/engineering/development-setup","sidebar":"tutorialSidebar"},{"id":"engineering/playwright","path":"/engineering/playwright","sidebar":"tutorialSidebar"},{"id":"engineering/repository-structure","path":"/engineering/repository-structure","sidebar":"tutorialSidebar"},{"id":"engineering/translation","path":"/engineering/translation","sidebar":"tutorialSidebar"},{"id":"engineering/unit-testing","path":"/engineering/unit-testing","sidebar":"tutorialSidebar"},{"id":"engineering/writing-docs","path":"/engineering/writing-docs","sidebar":"tutorialSidebar"},{"id":"FAQs","path":"/FAQs","sidebar":"tutorialSidebar"},{"id":"fields/actions-on-field","path":"/fields/actions-on-field","sidebar":"tutorialSidebar"},{"id":"fields/display-value","path":"/fields/display-value","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/attachment","path":"/fields/field-types/custom-types/attachment","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/barcode","path":"/fields/field-types/custom-types/barcode","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/checkbox","path":"/fields/field-types/custom-types/checkbox","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/geometry","path":"/fields/field-types/custom-types/geometry","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/json","path":"/fields/field-types/custom-types/json","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/QR-code","path":"/fields/field-types/custom-types/QR-code","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/rating","path":"/fields/field-types/custom-types/rating","sidebar":"tutorialSidebar"},{"id":"fields/field-types/custom-types/specific-db-type","path":"/fields/field-types/custom-types/specific-db-type","sidebar":"tutorialSidebar"},{"id":"fields/field-types/date-time-based/date","path":"/fields/field-types/date-time-based/date","sidebar":"tutorialSidebar"},{"id":"fields/field-types/date-time-based/date-time","path":"/fields/field-types/date-time-based/date-time","sidebar":"tutorialSidebar"},{"id":"fields/field-types/date-time-based/duration","path":"/fields/field-types/date-time-based/duration","sidebar":"tutorialSidebar"},{"id":"fields/field-types/date-time-based/time","path":"/fields/field-types/date-time-based/time","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/conditional-expressions","path":"/fields/field-types/formula/conditional-expressions","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/date-functions","path":"/fields/field-types/formula/date-functions","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/formula","path":"/fields/field-types/formula/formula","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/numeric-functions","path":"/fields/field-types/formula/numeric-functions","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/operators","path":"/fields/field-types/formula/operators","sidebar":"tutorialSidebar"},{"id":"fields/field-types/formula/string-functions","path":"/fields/field-types/formula/string-functions","sidebar":"tutorialSidebar"},{"id":"fields/field-types/links-based/links","path":"/fields/field-types/links-based/links","sidebar":"tutorialSidebar"},{"id":"fields/field-types/links-based/lookup","path":"/fields/field-types/links-based/lookup","sidebar":"tutorialSidebar"},{"id":"fields/field-types/links-based/rollup","path":"/fields/field-types/links-based/rollup","sidebar":"tutorialSidebar"},{"id":"fields/field-types/numerical/currency","path":"/fields/field-types/numerical/currency","sidebar":"tutorialSidebar"},{"id":"fields/field-types/numerical/decimal","path":"/fields/field-types/numerical/decimal","sidebar":"tutorialSidebar"},{"id":"fields/field-types/numerical/number","path":"/fields/field-types/numerical/number","sidebar":"tutorialSidebar"},{"id":"fields/field-types/numerical/percent","path":"/fields/field-types/numerical/percent","sidebar":"tutorialSidebar"},{"id":"fields/field-types/select-based/multi-select","path":"/fields/field-types/select-based/multi-select","sidebar":"tutorialSidebar"},{"id":"fields/field-types/select-based/single-select","path":"/fields/field-types/select-based/single-select","sidebar":"tutorialSidebar"},{"id":"fields/field-types/text-based/email","path":"/fields/field-types/text-based/email","sidebar":"tutorialSidebar"},{"id":"fields/field-types/text-based/long-text","path":"/fields/field-types/text-based/long-text","sidebar":"tutorialSidebar"},{"id":"fields/field-types/text-based/phonenumber","path":"/fields/field-types/text-based/phonenumber","sidebar":"tutorialSidebar"},{"id":"fields/field-types/text-based/single-line-text","path":"/fields/field-types/text-based/single-line-text","sidebar":"tutorialSidebar"},{"id":"fields/field-types/text-based/url","path":"/fields/field-types/text-based/url","sidebar":"tutorialSidebar"},{"id":"fields/fields-overview","path":"/fields/fields-overview","sidebar":"tutorialSidebar"},{"id":"fields/multi-fields-editor","path":"/fields/multi-fields-editor","sidebar":"tutorialSidebar"},{"id":"fields/primary-key","path":"/fields/primary-key","sidebar":"tutorialSidebar"},{"id":"getting-started/keyboard-shortcuts","path":"/getting-started/keyboard-shortcuts","sidebar":"tutorialSidebar"},{"id":"getting-started/quick-start","path":"/getting-started/quick-start","sidebar":"tutorialSidebar"},{"id":"getting-started/self-hosted/environment-variables","path":"/getting-started/self-hosted/environment-variables","sidebar":"tutorialSidebar"},{"id":"getting-started/self-hosted/installation","path":"/getting-started/self-hosted/installation","sidebar":"tutorialSidebar"},{"id":"getting-started/self-hosted/upgrading","path":"/getting-started/self-hosted/upgrading","sidebar":"tutorialSidebar"},{"id":"getting-started/terminologies","path":"/getting-started/terminologies","sidebar":"tutorialSidebar"},{"id":"index","path":"/","sidebar":"tutorialSidebar"},{"id":"records/actions-on-record","path":"/records/actions-on-record","sidebar":"tutorialSidebar"},{"id":"records/create-record","path":"/records/create-record","sidebar":"tutorialSidebar"},{"id":"records/expand-record","path":"/records/expand-record","sidebar":"tutorialSidebar"},{"id":"records/records-overview","path":"/records/records-overview","sidebar":"tutorialSidebar"},{"id":"roles-and-permissions/roles-permissions-overview","path":"/roles-and-permissions/roles-permissions-overview","sidebar":"tutorialSidebar"},{"id":"table-details/table-details-overview","path":"/table-details/table-details-overview","sidebar":"tutorialSidebar"},{"id":"table-operations/download","path":"/table-operations/download","sidebar":"tutorialSidebar"},{"id":"table-operations/field-operations","path":"/table-operations/field-operations","sidebar":"tutorialSidebar"},{"id":"table-operations/filter","path":"/table-operations/filter","sidebar":"tutorialSidebar"},{"id":"table-operations/group-by","path":"/table-operations/group-by","sidebar":"tutorialSidebar"},{"id":"table-operations/overview","path":"/table-operations/overview","sidebar":"tutorialSidebar"},{"id":"table-operations/row-height","path":"/table-operations/row-height","sidebar":"tutorialSidebar"},{"id":"table-operations/search","path":"/table-operations/search","sidebar":"tutorialSidebar"},{"id":"table-operations/sort","path":"/table-operations/sort","sidebar":"tutorialSidebar"},{"id":"tables/actions-on-table","path":"/tables/actions-on-table","sidebar":"tutorialSidebar"},{"id":"tables/create-table","path":"/tables/create-table","sidebar":"tutorialSidebar"},{"id":"tables/create-table-via-import","path":"/tables/create-table-via-import","sidebar":"tutorialSidebar"},{"id":"tables/import-data-into-existing-table","path":"/tables/import-data-into-existing-table","sidebar":"tutorialSidebar"},{"id":"tables/table-overview","path":"/tables/table-overview","sidebar":"tutorialSidebar"},{"id":"views/actions-on-view","path":"/views/actions-on-view","sidebar":"tutorialSidebar"},{"id":"views/create-view","path":"/views/create-view","sidebar":"tutorialSidebar"},{"id":"views/share-view","path":"/views/share-view","sidebar":"tutorialSidebar"},{"id":"views/view-types/form","path":"/views/view-types/form","sidebar":"tutorialSidebar"},{"id":"views/view-types/gallery","path":"/views/view-types/gallery","sidebar":"tutorialSidebar"},{"id":"views/view-types/grid","path":"/views/view-types/grid","sidebar":"tutorialSidebar"},{"id":"views/view-types/kanban","path":"/views/view-types/kanban","sidebar":"tutorialSidebar"},{"id":"views/views-overview","path":"/views/views-overview","sidebar":"tutorialSidebar"},{"id":"workspaces/actions-on-workspace","path":"/workspaces/actions-on-workspace","sidebar":"tutorialSidebar"},{"id":"workspaces/create-workspace","path":"/workspaces/create-workspace","sidebar":"tutorialSidebar"},{"id":"workspaces/workspace-collaboration","path":"/workspaces/workspace-collaboration","sidebar":"tutorialSidebar"},{"id":"workspaces/workspace-overview","path":"/workspaces/workspace-overview","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/","label":"index"}}}},{"name":"0.109.7","label":"0.109.7 - Old UI","isLast":false,"path":"/0.109.7","mainDocId":"index","docs":[{"id":"developer-resources/accessing-apis","path":"/0.109.7/developer-resources/accessing-apis","sidebar":"tutorialSidebar"},{"id":"developer-resources/rest-apis","path":"/0.109.7/developer-resources/rest-apis","sidebar":"tutorialSidebar"},{"id":"developer-resources/sdk","path":"/0.109.7/developer-resources/sdk","sidebar":"tutorialSidebar"},{"id":"developer-resources/upload-via-api","path":"/0.109.7/developer-resources/upload-via-api","sidebar":"tutorialSidebar"},{"id":"developer-resources/webhooks","path":"/0.109.7/developer-resources/webhooks","sidebar":"tutorialSidebar"},{"id":"engineering/architecture","path":"/0.109.7/engineering/architecture","sidebar":"tutorialSidebar"},{"id":"engineering/builds-and-releases","path":"/0.109.7/engineering/builds-and-releases","sidebar":"tutorialSidebar"},{"id":"engineering/development-setup","path":"/0.109.7/engineering/development-setup","sidebar":"tutorialSidebar"},{"id":"engineering/playwright","path":"/0.109.7/engineering/playwright","sidebar":"tutorialSidebar"},{"id":"engineering/repository-structure","path":"/0.109.7/engineering/repository-structure","sidebar":"tutorialSidebar"},{"id":"engineering/translation","path":"/0.109.7/engineering/translation","sidebar":"tutorialSidebar"},{"id":"engineering/unit-testing","path":"/0.109.7/engineering/unit-testing","sidebar":"tutorialSidebar"},{"id":"FAQs","path":"/0.109.7/FAQs","sidebar":"tutorialSidebar"},{"id":"getting-started/demos","path":"/0.109.7/getting-started/demos","sidebar":"tutorialSidebar"},{"id":"getting-started/environment-variables","path":"/0.109.7/getting-started/environment-variables","sidebar":"tutorialSidebar"},{"id":"getting-started/installation","path":"/0.109.7/getting-started/installation","sidebar":"tutorialSidebar"},{"id":"getting-started/upgrading","path":"/0.109.7/getting-started/upgrading","sidebar":"tutorialSidebar"},{"id":"index","path":"/0.109.7/","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/account-settings","path":"/0.109.7/setup-and-usages/account-settings","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/audit","path":"/0.109.7/setup-and-usages/audit","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/code-snippets","path":"/0.109.7/setup-and-usages/code-snippets","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/column-operations","path":"/0.109.7/setup-and-usages/column-operations","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/column-types","path":"/0.109.7/setup-and-usages/column-types","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/dashboard","path":"/0.109.7/setup-and-usages/dashboard","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/display-value","path":"/0.109.7/setup-and-usages/display-value","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/expanded-form","path":"/0.109.7/setup-and-usages/expanded-form","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/formulas","path":"/0.109.7/setup-and-usages/formulas","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free","path":"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/keyboard-maneuver","path":"/0.109.7/setup-and-usages/keyboard-maneuver","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/languages","path":"/0.109.7/setup-and-usages/languages","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/link-to-another-record","path":"/0.109.7/setup-and-usages/link-to-another-record","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/links","path":"/0.109.7/setup-and-usages/links","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/lookup","path":"/0.109.7/setup-and-usages/lookup","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/meta-management","path":"/0.109.7/setup-and-usages/meta-management","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/primary-key","path":"/0.109.7/setup-and-usages/primary-key","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/project-settings","path":"/0.109.7/setup-and-usages/project-settings","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/rollup","path":"/0.109.7/setup-and-usages/rollup","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/share-base","path":"/0.109.7/setup-and-usages/share-base","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/share-view","path":"/0.109.7/setup-and-usages/share-view","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/sync-schema","path":"/0.109.7/setup-and-usages/sync-schema","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/table-operations","path":"/0.109.7/setup-and-usages/table-operations","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/team-and-auth","path":"/0.109.7/setup-and-usages/team-and-auth","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/usage-information","path":"/0.109.7/setup-and-usages/usage-information","sidebar":"tutorialSidebar"},{"id":"setup-and-usages/views","path":"/0.109.7/setup-and-usages/views","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/0.109.7/","label":"version-0.109.7/index"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(57529);const l=JSON.parse('{"docusaurusVersion":"2.4.3","siteVersion":"1.1.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.4.3"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.4.3"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.4.3"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.4.3"},"docusaurus-plugin-sass":{"type":"package","name":"docusaurus-plugin-sass","version":"0.2.5"},"docusaurus-plugin-image-zoom":{"type":"package","name":"plugin-image-zoom","version":"1.1.0"},"docusaurus-plugin-ideal-image":{"type":"package","name":"@docusaurus/plugin-ideal-image","version":"2.4.3"}}}'),c={siteConfig:a.default,siteMetadata:l,globalData:o,i18n:i,codeTranslations:s},u=r.createContext(c);function d(e){let{children:t}=e;return r.createElement(u.Provider,{value:c},t)}},73256:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(67294),a=n(36136),o=n(31514),i=n(63905),s=n(91764);function l(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"}},r.createElement("h1",{style:{fontSize:"3rem"}},"This page crashed"),r.createElement("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"}},"Try again"),r.createElement(c,{error:t}))}function c(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{style:{whiteSpace:"pre-wrap"}},n)}function u(e){let{error:t,tryAgain:n}=e;return r.createElement(p,{fallback:()=>r.createElement(l,{error:t,tryAgain:n})},r.createElement(o.Z,null,r.createElement("title",null,"Page Error")),r.createElement(s.Z,null,r.createElement(l,{error:t,tryAgain:n})))}const d=e=>r.createElement(u,e);class p extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??d)(e)}return e??null}}},36136:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},31514:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(67294),a=n(70405);function o(e){return r.createElement(a.ql,e)}},83699:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(87462),a=n(67294),o=n(73727),i=n(63905),s=n(39962),l=n(2735),c=n(36136);const u=a.createContext({collectLink:()=>{}});var d=n(79524);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:g,"data-noBrokenLinkCheck":b,autoAddBaseUrl:h=!0,...v}=e;const{siteConfig:{trailingSlash:y,baseUrl:w}}=(0,s.Z)(),{withBaseUrl:k}=(0,d.C)(),_=(0,a.useContext)(u),S=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>S.current));const E=p||f;const x=(0,l.Z)(E),C=E?.replace("pathname://","");let T=void 0!==C?(L=C,h&&(e=>e.startsWith("/"))(L)?k(L):L):void 0;var L;T&&x&&(T=(0,i.applyTrailingSlash)(T,{trailingSlash:y,baseUrl:w}));const A=(0,a.useRef)(!1),O=n?o.OL:o.rU,R=c.Z.canUseIntersectionObserver,N=(0,a.useRef)(),P=()=>{A.current||null==T||(window.docusaurus.preload(T),A.current=!0)};(0,a.useEffect)((()=>(!R&&x&&null!=T&&window.docusaurus.prefetch(T),()=>{R&&N.current&&N.current.disconnect()})),[N,T,R,x]);const I=T?.startsWith("#")??!1,D=!T||!x||I;return D||b||_.collectLink(T),D?a.createElement("a",(0,r.Z)({ref:S,href:T},E&&!x&&{target:"_blank",rel:"noopener noreferrer"},v)):a.createElement(O,(0,r.Z)({},v,{onMouseEnter:P,onTouchStart:P,innerRef:e=>{S.current=e,R&&e&&x&&(N.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(N.current.unobserve(e),N.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),N.current.observe(e))},to:T},n&&{isActive:g,activeClassName:m}))}const f=a.forwardRef(p)},23855:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=()=>null},97325:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l,I:()=>s});var r=n(67294);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var o=n(57529);function i(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return o[t??n]??n??t}function s(e,t){let{message:n,id:r}=e;return a(i({message:n,id:r}),t)}function l(e){let{children:t,id:n,values:o}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal <Translate> children",t),new Error("The Docusaurus <Translate> component only accept simple string values");const s=i({message:t,id:n});return r.createElement(r.Fragment,null,a(s,o))}},6875:(e,t,n)=>{"use strict";n.d(t,{m:()=>r});const r="default"},2735:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>a,b:()=>r})},79524:(e,t,n)=>{"use strict";n.d(t,{C:()=>i,Z:()=>s});var r=n(67294),a=n(39962),o=n(2735);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,a.Z)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:a=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,o.b)(n))return n;if(a)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const s=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+s:s}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},39962:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(67294),a=n(80694);function o(){return(0,r.useContext)(a._)}},51048:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(67294),a=n(88121);function o(){return(0,r.useContext)(a._)}},5304:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function a(e){const t={};return function e(n,a){Object.entries(n).forEach((n=>{let[o,i]=n;const s=a?`${a}.${o}`:o;r(i)?e(i,s):t[s]=i}))}(e),t}},69656:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,z:()=>o});var r=n(67294);const a=r.createContext(null);function o(e){let{children:t,value:n}=e;const o=r.useContext(a),i=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:o,value:n})),[o,n]);return r.createElement(a.Provider,{value:i},t)}},89871:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>g,gA:()=>p,_r:()=>u,Jo:()=>b,zh:()=>d,yW:()=>m,gB:()=>f});var r=n(16550),a=n(39962),o=n(6875);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.Z)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const s=e=>e.versions.find((e=>e.isLast));function l(e,t){const n=function(e,t){const n=s(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.LX)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),a=n?.docs.find((e=>!!(0,r.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:a,alternateDocVersions:a?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(a.id):{}}}const c={},u=()=>i("docusaurus-plugin-content-docs")??c,d=e=>function(e,t,n){void 0===t&&(t=o.m),void 0===n&&(n={});const r=i(e),a=r?.[t];if(!a&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return a}("docusaurus-plugin-content-docs",e,{failfast:!0});function p(e){void 0===e&&(e={});const t=u(),{pathname:n}=(0,r.TH)();return function(e,t,n){void 0===n&&(n={});const a=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.LX)(t,{path:n.path,exact:!1,strict:!1})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return o}(t,n,e)}function f(e){return d(e).versions}function m(e){const t=d(e);return s(t)}function g(e){const t=d(e),{pathname:n}=(0,r.TH)();return l(t,n)}function b(e){const t=d(e),{pathname:n}=(0,r.TH)();return function(e,t){const n=s(e);return{latestDocSuggestion:l(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},79957:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(74865),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{a().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){a().done()}}},82251:(e,t,n)=>{"use strict";n.r(t);var r=n(87410),a=n(36809);!function(e){const{themeConfig:{prism:t}}=a.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(6726)(`./prism-${e}`)})),delete globalThis.Prism}(r.Z)},14082:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(67294);const a={iconExternalLink:"iconExternalLink_nPIU"};function o(e){let{width:t=13.5,height:n=13.5}=e;return r.createElement("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:a.iconExternalLink},r.createElement("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"}))}},91764:(e,t,n)=>{"use strict";n.d(t,{Z:()=>dt});var r=n(67294),a=n(86010),o=n(73256),i=n(35463),s=n(87462),l=n(16550),c=n(97325),u=n(43266);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,l.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,u.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,c.I)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function g(e){const t=e.children??m,{containerRef:n,onClick:a}=f();return r.createElement("div",{ref:n,role:"region","aria-label":m},r.createElement("a",(0,s.Z)({},e,{href:`#${d}`,onClick:a}),t))}var b=n(23702),h=n(78181);const v={skipToContent:"skipToContent_fXgn"};function y(){return r.createElement(g,{className:v.skipToContent})}var w=n(20107),k=n(65830);function _(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:i,...l}=e;return r.createElement("svg",(0,s.Z)({viewBox:"0 0 15 15",width:t,height:n},l),r.createElement("g",{stroke:a,strokeWidth:o},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const S={closeButton:"closeButton_CVFx"};function E(e){return r.createElement("button",(0,s.Z)({type:"button","aria-label":(0,c.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,a.Z)("clean-btn close",S.closeButton,e.className)}),r.createElement(_,{width:14,height:14,strokeWidth:3.1}))}const x={content:"content_knG7"};function C(e){const{announcementBar:t}=(0,w.L)(),{content:n}=t;return r.createElement("div",(0,s.Z)({},e,{className:(0,a.Z)(x.content,e.className),dangerouslySetInnerHTML:{__html:n}}))}const T={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function L(){const{announcementBar:e}=(0,w.L)(),{isActive:t,close:n}=(0,k.nT)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return r.createElement("div",{className:T.announcementBar,style:{backgroundColor:a,color:o},role:"banner"},i&&r.createElement("div",{className:T.announcementBarPlaceholder}),r.createElement(C,{className:T.announcementBarContent}),i&&r.createElement(E,{onClick:n,className:T.announcementBarClose}))}var A=n(60735),O=n(72957);var R=n(43768),N=n(53086);const P=r.createContext(null);function I(e){let{children:t}=e;const n=function(){const e=(0,A.e)(),t=(0,N.HY)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,R.D9)(o);return(0,r.useEffect)((()=>{o&&!i&&a(!0)}),[o,i]),(0,r.useEffect)((()=>{o?e.shown||a(!0):a(!1)}),[e.shown,o]),(0,r.useMemo)((()=>[n,a]),[n])}();return r.createElement(P.Provider,{value:n},t)}function D(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function M(){const e=(0,r.useContext)(P);if(!e)throw new R.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,N.HY)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:D(o)})),[a,o,t])}function j(e){let{header:t,primaryMenu:n,secondaryMenu:o}=e;const{shown:i}=M();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,a.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i})},r.createElement("div",{className:"navbar-sidebar__item menu"},n),r.createElement("div",{className:"navbar-sidebar__item menu"},o)))}var F=n(9200),z=n(51048);function B(e){return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"}))}function U(e){return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"}))}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:o,onChange:i}=e;const s=(0,z.Z)(),l=(0,c.I)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===o?(0,c.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,a.Z)($.toggle,t)},r.createElement("button",{className:(0,a.Z)("clean-btn",$.toggleButton,!s&&$.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===o?"light":"dark"),disabled:!s,title:l,"aria-label":l,"aria-live":"polite"},r.createElement(B,{className:(0,a.Z)($.toggleIcon,$.lightToggleIcon)}),r.createElement(U,{className:(0,a.Z)($.toggleIcon,$.darkToggleIcon)})))}const H=r.memo(q),G={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function Z(e){let{className:t}=e;const n=(0,w.L)().navbar.style,a=(0,w.L)().colorMode.disableSwitch,{colorMode:o,setColorMode:i}=(0,F.I)();return a?null:r.createElement(H,{className:t,buttonClassName:"dark"===n?G.darkNavbarColorModeToggle:void 0,value:o,onChange:i})}var V=n(96811);function W(){return r.createElement(V.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Q(){const e=(0,A.e)();return r.createElement("button",{type:"button","aria-label":(0,c.I)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle()},r.createElement(_,{color:"var(--ifm-color-emphasis-600)"}))}function Y(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(W,null),r.createElement(Z,{className:"margin-right--md"}),r.createElement(Q,null))}var K=n(83699),X=n(79524),J=n(2735);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(14082);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:i,html:l,isDropdownLink:c,prependBaseUrlToHref:u,...d}=e;const p=(0,X.Z)(a),f=(0,X.Z)(t),m=(0,X.Z)(o,{forcePrependBaseUrl:!0}),g=i&&o&&!(0,J.Z)(o),b=l?{dangerouslySetInnerHTML:{__html:l}}:{children:r.createElement(r.Fragment,null,i,g&&r.createElement(te.Z,c&&{width:12,height:12}))};return o?r.createElement(K.Z,(0,s.Z)({href:u?m:o},d,b)):r.createElement(K.Z,(0,s.Z)({to:p,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(f)},d,b))}function re(e){let{className:t,isDropdownItem:n=!1,...o}=e;const i=r.createElement(ne,(0,s.Z)({className:(0,a.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},o));return n?r.createElement("li",null,i):i}function ae(e){let{className:t,isDropdownItem:n,...o}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ne,(0,s.Z)({className:(0,a.Z)("menu__link",t)},o)))}function oe(e){let{mobile:t=!1,position:n,...a}=e;const o=t?ae:re;return r.createElement(o,(0,s.Z)({},a,{activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var ie=n(54639),se=n(69003),le=n(39962);function ce(e,t){return e.some((e=>function(e,t){return!!(0,se.Mg)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:o,onClick:i,...l}=e;const c=(0,r.useRef)(null),[u,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),r.createElement("div",{ref:c,className:(0,a.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u})},r.createElement(ne,(0,s.Z)({"aria-haspopup":"true","aria-expanded":u,role:"button",href:l.to?void 0:"#",className:(0,a.Z)("navbar__link",o)},l,{onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!u))}}),l.children??l.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,t)=>r.createElement(Ee,(0,s.Z)({isDropdownItem:!0,activeClassName:"dropdown__link--active"},e,{key:t}))))))}function de(e){let{items:t,className:n,position:o,onClick:i,...c}=e;const u=function(){const{siteConfig:{baseUrl:e}}=(0,le.Z)(),{pathname:t}=(0,l.TH)();return t.replace(e,"/")}(),d=ce(t,u),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[u,d,m]),r.createElement("li",{className:(0,a.Z)("menu__list-item",{"menu__list-item--collapsed":p})},r.createElement(ne,(0,s.Z)({role:"button",className:(0,a.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},c,{onClick:e=>{e.preventDefault(),f()}}),c.children??c.label),r.createElement(ie.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:p},t.map(((e,t)=>r.createElement(Ee,(0,s.Z)({mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active"},e,{key:t}))))))}function pe(e){let{mobile:t=!1,...n}=e;const a=t?de:ue;return r.createElement(a,n)}var fe=n(40626);function me(e){let{width:t=20,height:n=20,...a}=e;return r.createElement("svg",(0,s.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},a),r.createElement("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"}))}const ge="iconLanguage_nlXk";var be=n(23855);const he={searchBox:"searchBox_ZlJk"};function ve(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,a.Z)(n,he.searchBox)},t)}var ye=n(89871),we=n(78259);var ke=n(86409);const _e=e=>e.docs.find((t=>t.id===e.mainDocId));const Se={default:oe,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,...o}=e;const{i18n:{currentLocale:i,locales:u,localeConfigs:d}}=(0,le.Z)(),p=(0,fe.l)(),{search:f,hash:m}=(0,l.TH)(),g=[...n,...u.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...a],b=t?(0,c.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return r.createElement(pe,(0,s.Z)({},o,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(me,{className:ge}),b),items:g}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(ve,{className:n},r.createElement(be.Z,null))},dropdown:pe,html:function(e){let{value:t,className:n,mobile:o=!1,isDropdownItem:i=!1}=e;const s=i?"li":"div";return r.createElement(s,{className:(0,a.Z)({navbar__item:!o&&!i,"menu__list-item":o},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ye.Iw)(a),l=(0,we.vY)(t,a);return null===l?null:r.createElement(oe,(0,s.Z)({exact:!0},o,{isActive:()=>i?.path===l.path||!!i?.sidebar&&i.sidebar===l.sidebar,label:n??l.id,to:l.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,ye.Iw)(a),l=(0,we.oz)(t,a).link;if(!l)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(oe,(0,s.Z)({exact:!0},o,{isActive:()=>i?.sidebar===t,label:n??l.label,to:l.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const i=(0,we.lO)(a)[0],l=t??i.label,c=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return r.createElement(oe,(0,s.Z)({},o,{label:l,to:c}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:i,...u}=e;const{search:d,hash:p}=(0,l.TH)(),f=(0,ye.Iw)(n),m=(0,ye.gB)(n),{savePreferredVersionName:g}=(0,ke.J)(n),b=[...o,...m.map((e=>{const t=f.alternateDocVersions[e.name]??_e(e);return{label:e.label,to:`${t.path}${d}${p}`,isActive:()=>e===f.activeVersion,onClick:()=>g(e.name)}})),...i],h=(0,we.lO)(n)[0],v=t&&b.length>1?(0,c.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):h.label,y=t&&b.length>1?void 0:_e(h).path;return b.length<=1?r.createElement(oe,(0,s.Z)({},u,{mobile:t,label:v,to:y,isActive:a?()=>!1:void 0})):r.createElement(pe,(0,s.Z)({},u,{mobile:t,label:v,to:y,items:b,isActive:a?()=>!1:void 0}))}};function Ee(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Se[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(o,n)}function xe(){const e=(0,A.e)(),t=(0,w.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(Ee,(0,s.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function Ce(e){return r.createElement("button",(0,s.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(c.Z,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"},"\u2190 Back to main menu"))}function Te(){const e=0===(0,w.L)().navbar.items.length,t=M();return r.createElement(r.Fragment,null,!e&&r.createElement(Ce,{onClick:()=>t.hide()}),t.content)}function Le(){const e=(0,A.e)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?r.createElement(j,{header:r.createElement(Y,null),primaryMenu:r.createElement(xe,null),secondaryMenu:r.createElement(Te,null)}):null}const Ae={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Oe(e){return r.createElement("div",(0,s.Z)({role:"presentation"},e,{className:(0,a.Z)("navbar-sidebar__backdrop",e.className)}))}function Re(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,w.L)(),i=(0,A.e)(),{navbarRef:s,isNavbarVisible:l}=function(e){const[t,n]=(0,r.useState)(e),a=(0,r.useRef)(!1),o=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(o.current=e.getBoundingClientRect().height)}),[]);return(0,O.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i<o.current)return void n(!0);if(a.current)return void(a.current=!1);const s=r?.scrollY,l=document.documentElement.scrollHeight-o.current,c=window.innerHeight;s&&i>=s?n(!1):i+c<l&&n(!0)})),(0,u.S)((t=>{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return a.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return r.createElement("nav",{ref:s,"aria-label":(0,c.I)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,a.Z)("navbar","navbar--fixed-top",n&&[Ae.navbarHideable,!l&&Ae.navbarHidden],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown})},t,r.createElement(Oe,{onClick:i.toggle}),r.createElement(Le,null))}var Ne=n(63905);const Pe={errorBoundaryError:"errorBoundaryError_a6uf"};function Ie(e){return r.createElement("button",(0,s.Z)({type:"button"},e),r.createElement(c.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error"},"Try again"))}function De(e){let{error:t}=e;const n=(0,Ne.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{className:Pe.errorBoundaryError},n)}class Me extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const je="right";function Fe(e){let{width:t=30,height:n=30,className:a,...o}=e;return r.createElement("svg",(0,s.Z)({className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},o),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function ze(){const{toggle:e,shown:t}=(0,A.e)();return r.createElement("button",{onClick:e,"aria-label":(0,c.I)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button"},r.createElement(Fe,null))}const Be={colorModeToggle:"colorModeToggle_DEke"};function Ue(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Me,{key:t,onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t})},r.createElement(Ee,e)))))}function $e(e){let{left:t,right:n}=e;return r.createElement("div",{className:"navbar__inner"},r.createElement("div",{className:"navbar__items"},t),r.createElement("div",{className:"navbar__items navbar__items--right"},n))}function qe(){const e=(0,A.e)(),t=(0,w.L)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??je)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return r.createElement($e,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(ze,null),r.createElement(W,null),r.createElement(Ue,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Ue,{items:a}),r.createElement(Z,{className:Be.colorModeToggle}),!o&&r.createElement(ve,null,r.createElement(be.Z,null)))})}function He(){return r.createElement(Re,null,r.createElement(qe,null))}function Ge(e){let{item:t}=e;const{to:n,href:a,label:o,prependBaseUrlToHref:i,...l}=t,c=(0,X.Z)(n),u=(0,X.Z)(a,{forcePrependBaseUrl:!0});return r.createElement(K.Z,(0,s.Z)({className:"footer__link-item"},a?{href:i?u:a}:{to:c},l),o,a&&!(0,J.Z)(a)&&r.createElement(te.Z,null))}function Ze(e){let{item:t}=e;return t.html?r.createElement("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement("li",{key:t.href??t.to,className:"footer__item"},r.createElement(Ge,{item:t}))}function Ve(e){let{column:t}=e;return r.createElement("div",{className:"col footer__col"},r.createElement("div",{className:"footer__title"},t.title),r.createElement("ul",{className:"footer__items clean-list"},t.items.map(((e,t)=>r.createElement(Ze,{key:t,item:e})))))}function We(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(Ve,{key:t,column:e}))))}function Qe(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function Ye(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement(Ge,{item:t})}function Ke(e){let{links:t}=e;return r.createElement("div",{className:"footer__links text--center"},r.createElement("div",{className:"footer__links"},t.map(((e,n)=>r.createElement(r.Fragment,{key:n},r.createElement(Ye,{item:e}),t.length!==n+1&&r.createElement(Qe,null))))))}function Xe(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(We,{columns:t}):r.createElement(Ke,{links:t})}var Je=n(7909);const et={footerLogoLink:"footerLogoLink_BH7S"};function tt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.C)(),o={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Je.Z,{className:(0,a.Z)("footer__logo",t.className),alt:t.alt,sources:o,width:t.width,height:t.height,style:t.style})}function nt(e){let{logo:t}=e;return t.href?r.createElement(K.Z,{href:t.href,className:et.footerLogoLink,target:t.target},r.createElement(tt,{logo:t})):r.createElement(tt,{logo:t})}function rt(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function at(e){let{style:t,links:n,logo:o,copyright:i}=e;return r.createElement("footer",{className:(0,a.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(o||i)&&r.createElement("div",{className:"footer__bottom text--center"},o&&r.createElement("div",{className:"margin-bottom--sm"},o),i)))}function ot(){const{footer:e}=(0,w.L)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return r.createElement(at,{style:o,links:n&&n.length>0&&r.createElement(Xe,{links:n}),logo:a&&r.createElement(nt,{logo:a}),copyright:t&&r.createElement(rt,{copyright:t})})}const it=r.memo(ot),st=(0,R.Qc)([F.S,k.pl,O.OC,ke.L5,i.VC,function(e){let{children:t}=e;return r.createElement(N.n2,null,r.createElement(A.M,null,r.createElement(I,null,t)))}]);function lt(e){let{children:t}=e;return r.createElement(st,null,t)}function ct(e){let{error:t,tryAgain:n}=e;return r.createElement("main",{className:"container margin-vert--xl"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col col--6 col--offset-3"},r.createElement("h1",{className:"hero__title"},r.createElement(c.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("div",{className:"margin-vert--lg"},r.createElement(Ie,{onClick:n,className:"button button--primary shadow--lw"})),r.createElement("hr",null),r.createElement("div",{className:"margin-vert--md"},r.createElement(De,{error:t})))))}const ut={mainWrapper:"mainWrapper_z2l0"};function dt(e){const{children:t,noFooter:n,wrapperClassName:s,title:l,description:c}=e;return(0,h.t)(),r.createElement(lt,null,r.createElement(i.d,{title:l,description:c}),r.createElement(y,null),r.createElement(L,null),r.createElement(He,null),r.createElement("div",{id:d,className:(0,a.Z)(b.k.wrapper.main,ut.mainWrapper,s)},r.createElement(o.Z,{fallback:e=>r.createElement(ct,e)},t)),!n&&r.createElement(it,null))}},96811:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(87462),a=n(67294),o=n(83699),i=n(79524),s=n(39962),l=n(20107),c=n(7909);function u(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},s=a.createElement(c.Z,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?a.createElement("div",{className:r},s):s}function d(e){const{siteConfig:{title:t}}=(0,s.Z)(),{navbar:{title:n,logo:c}}=(0,l.L)(),{imageClassName:d,titleClassName:p,...f}=e,m=(0,i.Z)(c?.href||"/"),g=n?"":t,b=c?.alt??g;return a.createElement(o.Z,(0,r.Z)({to:m},f,c?.target&&{target:c.target}),c&&a.createElement(u,{logo:c,alt:b,imageClassName:d}),null!=n&&a.createElement("b",{className:p},n))}},33647:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(67294),a=n(31514);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return r.createElement(a.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),o&&r.createElement("meta",{name:"docusaurus_tag",content:o}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),o&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:o}))}},7909:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(87462),a=n(67294),o=n(86010),i=n(51048),s=n(9200);const l={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function c(e){const t=(0,i.Z)(),{colorMode:n}=(0,s.I)(),{sources:c,className:u,alt:d,...p}=e,f=t?"dark"===n?["dark"]:["light"]:["light","dark"];return a.createElement(a.Fragment,null,f.map((e=>a.createElement("img",(0,r.Z)({key:e,src:c[e],alt:d,className:(0,o.Z)(l.themedImage,l[`themedImage--${e}`],u)},p)))))}},54639:(e,t,n)=>{"use strict";n.d(t,{u:()=>l,z:()=>b});var r=n(87462),a=n(67294),o=n(36136),i=n(58986);const s="ease-in-out";function l(e){let{initialState:t}=e;const[n,r]=(0,a.useState)(t??!1),o=(0,a.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:o}}const c={display:"none",overflow:"hidden",height:"0px"},u={display:"block",overflow:"visible",height:"auto"};function d(e,t){const n=t?c:u;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function p(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const o=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=r?.duration??function(e){if((0,i.n)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${r?.easing??s}`,height:`${t}px`}}function l(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return d(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(l(),requestAnimationFrame((()=>{e.style.height=c.height,e.style.overflow=c.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{l()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,r])}function f(e){if(!o.Z.canUseDOM)return e?c:u}function m(e){let{as:t="div",collapsed:n,children:r,animation:o,onCollapseTransitionEnd:i,className:s,disableSSRStyle:l}=e;const c=(0,a.useRef)(null);return p({collapsibleRef:c,collapsed:n,animation:o}),a.createElement(t,{ref:c,style:l?void 0:f(n),onTransitionEnd:e=>{"height"===e.propertyName&&(d(c.current,n),i?.(n))},className:s},r)}function g(e){let{collapsed:t,...n}=e;const[o,i]=(0,a.useState)(!t),[s,l]=(0,a.useState)(t);return(0,a.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,a.useLayoutEffect)((()=>{o&&l(t)}),[o,t]),o?a.createElement(m,(0,r.Z)({},n,{collapsed:s})):null}function b(e){let{lazy:t,...n}=e;const r=t?g:m;return a.createElement(r,n)}},65830:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>f});var r=n(67294),a=n(51048),o=n(92560),i=n(43768),s=n(20107);const l=(0,o.WA)("docusaurus.announcement.dismiss"),c=(0,o.WA)("docusaurus.announcement.id"),u=()=>"true"===l.get(),d=e=>l.set(String(e)),p=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.L)(),t=(0,a.Z)(),[n,o]=(0,r.useState)((()=>!!t&&u()));(0,r.useEffect)((()=>{o(u())}),[]);const i=(0,r.useCallback)((()=>{d(!0),o(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=c.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;c.set(t),r&&d(!1),!r&&u()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(p.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(p);if(!e)throw new i.i6("AnnouncementBarProvider");return e}},9200:(e,t,n)=>{"use strict";n.d(t,{I:()=>b,S:()=>g});var r=n(67294),a=n(36136),o=n(43768),i=n(92560),s=n(20107);const l=r.createContext(void 0),c="theme",u=(0,i.WA)(c),d={light:"light",dark:"dark"},p=e=>e===d.dark?d.dark:d.light,f=e=>a.Z.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),m=e=>{u.set(p(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.L)(),[a,o]=(0,r.useState)(f(e));(0,r.useEffect)((()=>{t&&u.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(o(t),a&&m(t)):(o(n?window.matchMedia("(prefers-color-scheme: dark)").matches?d.dark:d.light:e),u.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(a))}),[a]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==c)return;const t=u.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const l=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||l.current?l.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:a,setColorMode:i,get isDarkTheme(){return a===d.dark},setLightTheme(){i(d.light)},setDarkTheme(){i(d.dark)}})),[a,i])}();return r.createElement(l.Provider,{value:n},t)}function b(){const e=(0,r.useContext)(l);if(null==e)throw new o.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},86409:(e,t,n)=>{"use strict";n.d(t,{J:()=>v,L5:()=>b});var r=n(67294),a=n(89871),o=n(6875),i=n(20107),s=n(78259),l=n(43768),c=n(92560);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,c.WA)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.WA)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.WA)(u(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const f=r.createContext(null);function m(){const e=(0,a._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,s]=(0,r.useState)((()=>p(n)));(0,r.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=m();return r.createElement(f.Provider,{value:n},t)}function b(e){let{children:t}=e;return s.cE?r.createElement(g,null,t):r.createElement(r.Fragment,null,t)}function h(){const e=(0,r.useContext)(f);if(!e)throw new l.i6("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=o.m);const t=(0,a.zh)(e),[n,i]=h(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},84432:(e,t,n)=>{"use strict";n.d(t,{V:()=>l,b:()=>s});var r=n(67294),a=n(43768);const o=Symbol("EmptyContext"),i=r.createContext(o);function s(e){let{children:t,name:n,items:a}=e;const o=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return r.createElement(i.Provider,{value:o},t)}function l(){const e=(0,r.useContext)(i);if(e===o)throw new a.i6("DocsSidebarProvider");return e}},60735:(e,t,n)=>{"use strict";n.d(t,{M:()=>d,e:()=>p});var r=n(67294),a=n(53086),o=n(13488),i=n(75238),s=n(20107),l=n(43768);const c=r.createContext(void 0);function u(){const e=function(){const e=(0,a.HY)(),{items:t}=(0,s.L)().navbar;return 0===t.length&&!e.component}(),t=(0,o.i)(),n=!e&&"mobile"===t,[l,c]=(0,r.useState)(!1);(0,i.Rb)((()=>{if(l)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:l})),[e,n,u,l])}function d(e){let{children:t}=e;const n=u();return r.createElement(c.Provider,{value:n},t)}function p(){const e=r.useContext(c);if(void 0===e)throw new l.i6("NavbarMobileSidebarProvider");return e}},53086:(e,t,n)=>{"use strict";n.d(t,{HY:()=>s,Zo:()=>l,n2:()=>i});var r=n(67294),a=n(43768);const o=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(o.Provider,{value:n},t)}function s(){const e=(0,r.useContext)(o);if(!e)throw new a.i6("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){let{component:t,props:n}=e;const i=(0,r.useContext)(o);if(!i)throw new a.i6("NavbarSecondaryMenuContentProvider");const[,s]=i,l=(0,a.Ql)(n);return(0,r.useEffect)((()=>{s({component:t,props:l})}),[s,t,l]),(0,r.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},78181:(e,t,n)=>{"use strict";n.d(t,{h:()=>a,t:()=>o});var r=n(67294);const a="navigation-with-keyboard";function o(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},13488:(e,t,n)=>{"use strict";n.d(t,{i:()=>c});var r=n(67294),a=n(36136);const o={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(){return a.Z.canUseDOM?window.innerWidth>i?o.desktop:o.mobile:o.ssr}const l=!1;function c(){const[e,t]=(0,r.useState)((()=>l?"ssr":s()));return(0,r.useEffect)((()=>{function e(){t(s())}const n=l?window.setTimeout(e,1e3):void 0;return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(n)}}),[]),e}},23702:(e,t,n)=>{"use strict";n.d(t,{k:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},58986:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{n:()=>r})},78259:(e,t,n)=>{"use strict";n.d(t,{Wl:()=>p,_F:()=>g,cE:()=>d,hI:()=>k,lO:()=>v,oz:()=>y,s1:()=>h,vY:()=>w});var r=n(67294),a=n(16550),o=n(18790),i=n(89871),s=n(86409),l=n(84432),c=n(33609),u=n(69003);const d=!!i._r;function p(e){if(e.href)return e.href;for(const t of e.items){if("link"===t.type)return t.href;if("category"===t.type){const e=p(t);if(e)return e}}}const f=(e,t)=>void 0!==e&&(0,u.Mg)(e,t),m=(e,t)=>e.some((e=>g(e,t)));function g(e,t){return"link"===e.type?f(e.href,t):"category"===e.type&&(f(e.href,t)||m(e.items,t))}function b(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const a=[];return function e(t){for(const o of t)if("category"===o.type&&((0,u.Mg)(o.href,n)||e(o.items))||"link"===o.type&&(0,u.Mg)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function h(){const e=(0,l.V)(),{pathname:t}=(0,a.TH)(),n=(0,i.gA)()?.pluginData.breadcrumbs;return!1!==n&&e?b({sidebarItems:e.items,pathname:t}):null}function v(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,s.J)(e),a=(0,i.yW)(e);return(0,r.useMemo)((()=>(0,c.j)([t,n,a].filter(Boolean))),[t,n,a])}function y(e,t){const n=v(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function w(e,t){const n=v(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,c.j)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function k(e){let{route:t,versionMetadata:n}=e;const r=(0,a.TH)(),i=t.routes,s=i.find((e=>(0,a.LX)(r.pathname,e)));if(!s)return null;const l=s.sidebar,c=l?n.docsSidebars[l]:void 0;return{docElement:(0,o.H)(i),sidebarName:l,sidebarItems:c}}},75238:(e,t,n)=>{"use strict";n.d(t,{Rb:()=>s,_X:()=>l});var r=n(67294),a=n(16550),o=n(61688),i=n(43768);function s(e){!function(e){const t=(0,a.k6)(),n=(0,i.zX)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function l(e){return function(e){const t=(0,a.k6)();return(0,o.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}},33609:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function a(e){return Array.from(new Set(e))}n.d(t,{j:()=>a,l:()=>r})},35463:(e,t,n)=>{"use strict";n.d(t,{FG:()=>p,d:()=>u,VC:()=>f});var r=n(67294),a=n(86010),o=n(31514),i=n(69656);function s(){const e=r.useContext(i._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var l=n(79524),c=n(39962);function u(e){let{title:t,description:n,keywords:a,image:i,children:s}=e;const u=function(e){const{siteConfig:t}=(0,c.Z)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,l.C)(),p=i?d(i,{absolute:!0}):void 0;return r.createElement(o.Z,null,t&&r.createElement("title",null,u),t&&r.createElement("meta",{property:"og:title",content:u}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),a&&r.createElement("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),p&&r.createElement("meta",{property:"og:image",content:p}),p&&r.createElement("meta",{name:"twitter:image",content:p}),s)}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),s=(0,a.Z)(i,t);return r.createElement(d.Provider,{value:s},r.createElement(o.Z,null,r.createElement("html",{className:s})),n)}function f(e){let{children:t}=e;const n=s(),o=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(p,{className:(0,a.Z)(o,i)},t)}},43768:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>c,Ql:()=>l,i6:()=>s,zX:()=>o});var r=n(67294);const a=n(36136).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function o(e){const t=(0,r.useRef)(e);return a((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return a((()=>{t.current=e})),t.current}class s extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?<name>\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function l(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function c(e){return t=>{let{children:n}=t;return r.createElement(r.Fragment,null,e.reduceRight(((e,t)=>r.createElement(t,null,e)),n))}}},69003:(e,t,n)=>{"use strict";n.d(t,{Mg:()=>i,Ns:()=>s});var r=n(67294),a=n(50997),o=n(39962);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,o.Z)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function a(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(a).flatMap((e=>e.routes??[])))}(n)}({routes:a.Z,baseUrl:e})),[e])}},72957:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>f,OC:()=>l,RF:()=>d,o5:()=>p});var r=n(67294),a=n(36136),o=n(51048),i=n(43768);const s=r.createContext(void 0);function l(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return r.createElement(s.Provider,{value:n},t)}function c(){const e=(0,r.useContext)(s);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const u=()=>a.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=c(),a=(0,r.useRef)(u()),o=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();o(e,a.current),a.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[o,n,...t])}function p(){const e=c(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),a=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,r.useLayoutEffect)((()=>{queueMicrotask((()=>n.current?.()))})),{blockElementScrollPositionUntilNextRender:a}}function f(){const e=(0,r.useRef)(null),t=(0,o.Z)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const a=document.documentElement.scrollTop;(n&&a>e||!n&&a<e)&&(t=requestAnimationFrame(r),window.scrollTo(0,Math.floor(.85*(a-e))+e))}(),()=>t&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},60246:(e,t,n)=>{"use strict";n.d(t,{HX:()=>r,os:()=>a});n(39962);const r="default";function a(e,t){return`docs-${e}-${t}`}},92560:(e,t,n)=>{"use strict";n.d(t,{Nk:()=>d,WA:()=>u});var r=n(67294),a=n(61688);const o="localStorage";function i(e){let{key:t,oldValue:n,newValue:r,storage:a}=e;if(n===r)return;const o=document.createEvent("StorageEvent");o.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,a),window.dispatchEvent(o)}function s(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,l||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),l=!0),null}var t}let l=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function u(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const n=s(t?.persistence);return null===n?c:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),i({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),i({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}function d(e,t){const n=(0,r.useRef)((()=>null===e?c:u(e,t))).current(),o=(0,r.useCallback)((e=>"undefined"==typeof window?()=>{}:n.listen(e)),[n]);return[(0,a.useSyncExternalStore)(o,(()=>"undefined"==typeof window?null:n.get()),(()=>null)),n]}},40626:(e,t,n)=>{"use strict";n.d(t,{l:()=>i});var r=n(39962),a=n(16550),o=n(63905);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:s}}=(0,r.Z)(),{pathname:l}=(0,a.TH)(),c=(0,o.applyTrailingSlash)(l,{trailingSlash:n,baseUrl:e}),u=s===i?e:e.replace(`/${s}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},43266:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(67294),a=n(16550),o=n(43768);function i(e){const t=(0,a.TH)(),n=(0,o.D9)(t),i=(0,o.zX)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},20107:(e,t,n)=>{"use strict";n.d(t,{L:()=>a});var r=n(39962);function a(){return(0,r.Z)().siteConfig.themeConfig}},84136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[a]=e.split(/[#?]/),o="/"===a||a===r?a:(i=a,n?function(e){return e.endsWith("/")?e:`${e}/`}(i):function(e){return e.endsWith("/")?e.slice(0,-1):e}(i));var i;return e.replace(a,o)}},15806:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},63905:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var a=n(84136);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}});var o=n(15806);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return o.getErrorCausalChain}})},13538:(e,t,n)=>{"use strict";let r;if(n.r(t),n.d(t,{onRouteDidUpdate:()=>a}),n(36136).Z.canUseDOM){const{init:e,push:t}=n(17316);r=t,e()}function a(e){let{location:t,previousLocation:n}=e;t.pathname===n?.pathname&&t.hash===n?.hash||r({event:"$pageview",$current_url:t.pathname,hash:t.hash})}},86010:(e,t,n)=>{"use strict";function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=r(e[t]))&&(a&&(a+=" "),a+=n);else for(t in e)e[t]&&(a&&(a+=" "),a+=t);return a}n.d(t,{Z:()=>a});const a=function(){for(var e,t,n=0,a="";n<arguments.length;)(e=arguments[n++])&&(t=r(e))&&(a&&(a+=" "),a+=t);return a}},99318:(e,t,n)=>{"use strict";n.d(t,{lX:()=>w,q_:()=>C,ob:()=>f,PP:()=>L,Ep:()=>p});var r=n(87462);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r<a;n+=1,r+=1)e[n]=e[r];e.pop()}const i=function(e,t){void 0===t&&(t="");var n,r=e&&e.split("/")||[],i=t&&t.split("/")||[],s=e&&a(e),l=t&&a(t),c=s||l;if(e&&a(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var u=i[i.length-1];n="."===u||".."===u||""===u}else n=!1;for(var d=0,p=i.length;p>=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var s=n(38776);function l(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.Z)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.forEach((function(e){return e.apply(void 0,n)}))}}}var g=!("undefined"==typeof window||!window.document||!window.document.createElement);function b(e,t){t(window.confirm(e))}var h="popstate",v="hashchange";function y(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),g||(0,s.Z)(!1);var t,n=window.history,a=(-1===(t=window.navigator.userAgent).indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone"))&&window.history&&"pushState"in window.history,o=!(-1===window.navigator.userAgent.indexOf("Trident")),i=e,c=i.forceRefresh,w=void 0!==c&&c,k=i.getUserConfirmation,_=void 0===k?b:k,S=i.keyLength,E=void 0===S?6:S,x=e.basename?d(l(e.basename)):"";function C(e){var t=e||{},n=t.key,r=t.state,a=window.location,o=a.pathname+a.search+a.hash;return x&&(o=u(o,x)),f(o,r,n)}function T(){return Math.random().toString(36).substr(2,E)}var L=m();function A(e){(0,r.Z)(U,e),U.length=n.length,L.notifyListeners(U.location,U.action)}function O(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||P(C(e.state))}function R(){P(C(y()))}var N=!1;function P(e){if(N)N=!1,A();else{L.confirmTransitionTo(e,"POP",_,(function(t){t?A({action:"POP",location:e}):function(e){var t=U.location,n=D.indexOf(t.key);-1===n&&(n=0);var r=D.indexOf(e.key);-1===r&&(r=0);var a=n-r;a&&(N=!0,j(a))}(e)}))}}var I=C(y()),D=[I.key];function M(e){return x+p(e)}function j(e){n.go(e)}var F=0;function z(e){1===(F+=e)&&1===e?(window.addEventListener(h,O),o&&window.addEventListener(v,R)):0===F&&(window.removeEventListener(h,O),o&&window.removeEventListener(v,R))}var B=!1;var U={length:n.length,action:"POP",location:I,createHref:M,push:function(e,t){var r="PUSH",o=f(e,t,T(),U.location);L.confirmTransitionTo(o,r,_,(function(e){if(e){var t=M(o),i=o.key,s=o.state;if(a)if(n.pushState({key:i,state:s},null,t),w)window.location.href=t;else{var l=D.indexOf(U.location.key),c=D.slice(0,l+1);c.push(o.key),D=c,A({action:r,location:o})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",o=f(e,t,T(),U.location);L.confirmTransitionTo(o,r,_,(function(e){if(e){var t=M(o),i=o.key,s=o.state;if(a)if(n.replaceState({key:i,state:s},null,t),w)window.location.replace(t);else{var l=D.indexOf(U.location.key);-1!==l&&(D[l]=o.key),A({action:r,location:o})}else window.location.replace(t)}}))},go:j,goBack:function(){j(-1)},goForward:function(){j(1)},block:function(e){void 0===e&&(e=!1);var t=L.setPrompt(e);return B||(z(1),B=!0),function(){return B&&(B=!1,z(-1)),t()}},listen:function(e){var t=L.appendListener(e);return z(1),function(){z(-1),t()}}};return U}var k="hashchange",_={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+c(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:c,decodePath:l},slash:{encodePath:l,decodePath:l}};function S(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function E(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function x(e){window.location.replace(S(window.location.href)+"#"+e)}function C(e){void 0===e&&(e={}),g||(0,s.Z)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),a=n.getUserConfirmation,o=void 0===a?b:a,i=n.hashType,c=void 0===i?"slash":i,h=e.basename?d(l(e.basename)):"",v=_[c],y=v.encodePath,w=v.decodePath;function C(){var e=w(E());return h&&(e=u(e,h)),f(e)}var T=m();function L(e){(0,r.Z)(B,e),B.length=t.length,T.notifyListeners(B.location,B.action)}var A=!1,O=null;function R(){var e,t,n=E(),r=y(n);if(n!==r)x(r);else{var a=C(),i=B.location;if(!A&&(t=a,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(O===p(a))return;O=null,function(e){if(A)A=!1,L();else{var t="POP";T.confirmTransitionTo(e,t,o,(function(n){n?L({action:t,location:e}):function(e){var t=B.location,n=D.lastIndexOf(p(t));-1===n&&(n=0);var r=D.lastIndexOf(p(e));-1===r&&(r=0);var a=n-r;a&&(A=!0,M(a))}(e)}))}}(a)}}var N=E(),P=y(N);N!==P&&x(P);var I=C(),D=[p(I)];function M(e){t.go(e)}var j=0;function F(e){1===(j+=e)&&1===e?window.addEventListener(k,R):0===j&&window.removeEventListener(k,R)}var z=!1;var B={length:t.length,action:"POP",location:I,createHref:function(e){var t=document.querySelector("base"),n="";return t&&t.getAttribute("href")&&(n=S(window.location.href)),n+"#"+y(h+p(e))},push:function(e,t){var n="PUSH",r=f(e,void 0,void 0,B.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=y(h+t);if(E()!==a){O=t,function(e){window.location.hash=e}(a);var o=D.lastIndexOf(p(B.location)),i=D.slice(0,o+1);i.push(t),D=i,L({action:n,location:r})}else L()}}))},replace:function(e,t){var n="REPLACE",r=f(e,void 0,void 0,B.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=y(h+t);E()!==a&&(O=t,x(a));var o=D.indexOf(p(B.location));-1!==o&&(D[o]=t),L({action:n,location:r})}}))},go:M,goBack:function(){M(-1)},goForward:function(){M(1)},block:function(e){void 0===e&&(e=!1);var t=T.setPrompt(e);return z||(F(1),z=!0),function(){return z&&(z=!1,F(-1)),t()}},listen:function(e){var t=T.appendListener(e);return F(1),function(){F(-1),t()}}};return B}function T(e,t,n){return Math.min(Math.max(e,t),n)}function L(e){void 0===e&&(e={});var t=e,n=t.getUserConfirmation,a=t.initialEntries,o=void 0===a?["/"]:a,i=t.initialIndex,s=void 0===i?0:i,l=t.keyLength,c=void 0===l?6:l,u=m();function d(e){(0,r.Z)(w,e),w.length=w.entries.length,u.notifyListeners(w.location,w.action)}function g(){return Math.random().toString(36).substr(2,c)}var b=T(s,0,o.length-1),h=o.map((function(e){return f(e,void 0,"string"==typeof e?g():e.key||g())})),v=p;function y(e){var t=T(w.index+e,0,w.entries.length-1),r=w.entries[t];u.confirmTransitionTo(r,"POP",n,(function(e){e?d({action:"POP",location:r,index:t}):d()}))}var w={length:h.length,action:"POP",location:h[b],index:b,entries:h,createHref:v,push:function(e,t){var r="PUSH",a=f(e,t,g(),w.location);u.confirmTransitionTo(a,r,n,(function(e){if(e){var t=w.index+1,n=w.entries.slice(0);n.length>t?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=f(e,t,g(),w.location);u.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=w.index+e;return t>=0&&t<w.entries.length},block:function(e){return void 0===e&&(e=!1),u.setPrompt(e)},listen:function(e){return u.appendListener(e)}};return w}},8679:(e,t,n)=>{"use strict";var r=n(59864),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||a}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=l(t),g=l(n),b=0;b<i.length;++b){var h=i[b];if(!(o[h]||r&&r[h]||g&&g[h]||s&&s[h])){var v=p(n,h);try{c(t,h,v)}catch(y){}}}}return t}},41143:e=>{"use strict";e.exports=function(e,t,n,r,a,o,i,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,a,o,i,s],u=0;(l=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},5826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},93878:(e,t,n)=>{"use strict";n.r(t)},30984:(e,t,n)=>{"use strict";n.r(t)},17316:(e,t,n)=>{"use strict";n.r(t),n.d(t,{init:()=>x,push:()=>C});var r,a,o,i=Object.create,s=Object.defineProperty,l=Object.getOwnPropertyDescriptor,c=Object.getOwnPropertyNames,u=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty,p=(r=(e,t)=>{var r=NaN,a="[object Symbol]",o=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt,u="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,d="object"==typeof self&&self&&self.Object===Object&&self,p=u||d||Function("return this")(),f=Object.prototype.toString,m=Math.max,g=Math.min,b=function(){return p.Date.now()};function h(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function v(e){if("number"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&f.call(e)==a}(e))return r;if(h(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=h(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(o,"");var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):i.test(e)?r:+e}t.exports=function(e,t,n){var r,a,o,i,s,l,c=0,u=!1,d=!1,p=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function f(t){var n=r,o=a;return r=a=void 0,c=t,i=e.apply(o,n)}function y(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=o}function w(){var e=b();if(y(e))return k(e);s=setTimeout(w,function(e){var n=t-(e-l);return d?g(n,o-(e-c)):n}(e))}function k(e){return s=void 0,p&&r?f(e):(r=a=void 0,i)}function _(){var e=b(),n=y(e);if(r=arguments,a=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(w,t),u?f(e):i}(l);if(d)return s=setTimeout(w,t),f(l)}return void 0===s&&(s=setTimeout(w,t)),i}return t=v(t)||0,h(n)&&(u=!!n.leading,o=(d="maxWait"in n)?m(v(n.maxWait)||0,t):o,p="trailing"in n?!!n.trailing:p),_.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=a=s=void 0},_.flush=function(){return void 0===s?i:k(b())},_}},()=>(a||r((a={exports:{}}).exports,a),a.exports)),f=((e,t,n)=>(n=null!=e?i(u(e)):{},((e,t,n,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let a of c(t))!d.call(e,a)&&a!==n&&s(e,a,{get:()=>t[a],enumerable:!(r=l(t,a))||r.enumerable});return e})(!t&&e&&e.__esModule?n:s(n,"default",{value:e,enumerable:!0}),e)))(p()),m=new Uint8Array(16);function g(){if(!o&&!(o=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return o(m)}var b=[];for(let T=0;T<256;++T)b.push((T+256).toString(16).slice(1));var h={randomUUID:typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};var v,y,w=function(e,t,n){if(h.randomUUID&&!t&&!e)return h.randomUUID();let r=(e=e||{}).random||(e.rng||g)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){n=n||0;for(let e=0;e<16;++e)t[n+e]=r[e];return t}return function(e,t=0){return b[e[t+0]]+b[e[t+1]]+b[e[t+2]]+b[e[t+3]]+"-"+b[e[t+4]]+b[e[t+5]]+"-"+b[e[t+6]]+b[e[t+7]]+"-"+b[e[t+8]]+b[e[t+9]]+"-"+b[e[t+10]]+b[e[t+11]]+b[e[t+12]]+b[e[t+13]]+b[e[t+14]]+b[e[t+15]]}(r)},k=3e3,_=1e4,S=window.location.hostname?.replace(/\.nocodb\.com$/,""),E=class{constructor(){this.queue=[],this.processQueue=(0,f.default)((()=>{let e=this.queue.splice(0,this.queue.length);this.batchProcessor?.(e)}),k,{maxWait:_}),this.batchProcessor=async e=>{!function(e){let t=new XMLHttpRequest,n="https://nocodb.com/api/v1/tele";t.open("POST",n),t.setRequestHeader("Content-Type","application/json;charset=UTF-8"),t.send(JSON.stringify({clientId:v||window.ncClientId,events:e}))}(e)}}enqueueEvent(e){this.queue.push({created_at:Date.now(),...e,subdomain:S}),this.processQueue()}};function x(e={}){k=+e.debounceTime||k,_=+e.maxWaitTime||_,v=window.ncClientId=window.localStorage.getItem("nc_id");let t=document.createElement("iframe");return t.style.display="none",t.style.height="1px",t.style.width="1px",t.setAttribute("src","https://nocodb.com/client.html"),window.onmessage=function(e){("https://nocodb.com"===e.origin||"https://www.nocodb.com"===e.origin)&&e.data&&(v=window.ncClientId=e.data,window.localStorage.setItem("nc_id",e.data),document.body.removeChild(t))},t.onload=function(){t.contentWindow?.postMessage("client_id","https://nocodb.com")},y=new E,v||(v=window.ncClientId=w(),window.localStorage.setItem("nc_id",v)),y}function C(e){y||(y=new E),y?.enqueueEvent({created_at:Date.now(),...e})}},74865:function(e,t,n){var r,a;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function a(e,t,n){return e<t?t:e>n?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),c=o.querySelector(r.barSelector),u=r.speed,d=r.easing;return o.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),l(c,i(e,u,d)),1===e?(l(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){l(o,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*a(Math.random()*t,.1,.95)),t=a(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var a,i=t.querySelector(r.barSelector),s=e?"-100":o(n.status||0),c=document.querySelector(r.parent);return l(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),l=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},27418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(a){return!1}}()?Object.assign:function(e,a){for(var o,i,s=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),l=1;l<arguments.length;l++){for(var c in o=Object(arguments[l]))n.call(o,c)&&(s[c]=o[c]);if(t){i=t(o);for(var u=0;u<i.length;u++)r.call(o,i[u])&&(s[i[u]]=o[i[u]])}}return s}},14779:(e,t,n)=>{var r=n(5826);e.exports=f,e.exports.parse=o,e.exports.compile=function(e,t){return s(o(e,t),t)},e.exports.tokensToFunction=s,e.exports.tokensToRegExp=p;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,s="",u=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],p=n[1],f=n.index;if(s+=e.slice(i,f),i=f+d.length,p)s+=p[1];else{var m=e[i],g=n[2],b=n[3],h=n[4],v=n[5],y=n[6],w=n[7];s&&(r.push(s),s="");var k=null!=g&&null!=m&&m!==g,_="+"===y||"*"===y,S="?"===y||"*"===y,E=n[2]||u,x=h||v;r.push({name:b||o++,prefix:g||"",delimiter:E,optional:S,repeat:_,partial:k,asterisk:!!w,pattern:x?c(x):w?".*":"[^"+l(E)+"]+?"})}}return i<e.length&&(s+=e.substr(i)),s&&r.push(s),r}function i(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function s(e,t){for(var n=new Array(e.length),a=0;a<e.length;a++)"object"==typeof e[a]&&(n[a]=new RegExp("^(?:"+e[a].pattern+")$",d(t)));return function(t,a){for(var o="",s=t||{},l=(a||{}).pretty?i:encodeURIComponent,c=0;c<e.length;c++){var u=e[c];if("string"!=typeof u){var d,p=s[u.name];if(null==p){if(u.optional){u.partial&&(o+=u.prefix);continue}throw new TypeError('Expected "'+u.name+'" to be defined')}if(r(p)){if(!u.repeat)throw new TypeError('Expected "'+u.name+'" to not repeat, but received `'+JSON.stringify(p)+"`");if(0===p.length){if(u.optional)continue;throw new TypeError('Expected "'+u.name+'" to not be empty')}for(var f=0;f<p.length;f++){if(d=l(p[f]),!n[c].test(d))throw new TypeError('Expected all "'+u.name+'" to match "'+u.pattern+'", but received `'+JSON.stringify(d)+"`");o+=(0===f?u.prefix:u.delimiter)+d}}else{if(d=u.asterisk?encodeURI(p).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):l(p),!n[c].test(d))throw new TypeError('Expected "'+u.name+'" to match "'+u.pattern+'", but received "'+d+'"');o+=u.prefix+d}}else o+=u}return o}}function l(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function c(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function u(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function p(e,t,n){r(t)||(n=t||n,t=[]);for(var a=(n=n||{}).strict,o=!1!==n.end,i="",s=0;s<e.length;s++){var c=e[s];if("string"==typeof c)i+=l(c);else{var p=l(c.prefix),f="(?:"+c.pattern+")";t.push(c),c.repeat&&(f+="(?:"+p+f+")*"),i+=f=c.optional?c.partial?p+"("+f+")?":"(?:"+p+"("+f+"))?":p+"("+f+")"}}var m=l(n.delimiter||"/"),g=i.slice(-m.length)===m;return a||(i=(g?i.slice(0,-m.length):i)+"(?:"+m+"(?=$))?"),i+=o?"$":a&&g?"":"(?="+m+"|$)",u(new RegExp("^"+i,d(n)),t)}function f(e,t,n){return r(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)t.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return u(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],a=0;a<e.length;a++)r.push(f(e[a],t,n).source);return u(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return p(o(e,n),t,n)}(e,t,n)}},98269:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>p});var r=n(36809),a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(e){return"IMG"===e.tagName},i=function(e){return e&&1===e.nodeType},s=function(e){return".svg"===(e.currentSrc||e.src).substr(-4).toLowerCase()},l=function(e){try{return Array.isArray(e)?e.filter(o):function(e){return NodeList.prototype.isPrototypeOf(e)}(e)?[].slice.call(e).filter(o):i(e)?[e].filter(o):"string"==typeof e?[].slice.call(document.querySelectorAll(e)).filter(o):[]}catch(t){throw new TypeError("The provided selector is invalid.\nExpects a CSS selector, a Node element, a NodeList or an array.\nSee: https://github.com/francoischalifour/medium-zoom")}},c=function(e,t){var n=a({bubbles:!1,cancelable:!1,detail:void 0},t);if("function"==typeof window.CustomEvent)return new CustomEvent(e,n);var r=document.createEvent("CustomEvent");return r.initCustomEvent(e,n.bubbles,n.cancelable,n.detail),r};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===n&&r.firstChild?r.insertBefore(a,r.firstChild):r.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}(".medium-zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s;will-change:opacity}.medium-zoom--opened .medium-zoom-overlay{cursor:pointer;cursor:zoom-out;opacity:1}.medium-zoom-image{cursor:pointer;cursor:zoom-in;transition:transform .3s cubic-bezier(.2,0,.2,1)!important}.medium-zoom-image--hidden{visibility:hidden}.medium-zoom-image--opened{position:relative;cursor:pointer;cursor:zoom-out;will-change:transform}");const u=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=window.Promise||function(e){function t(){}e(t,t)},o=function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];var r=t.reduce((function(e,t){return[].concat(e,l(t))}),[]);return r.filter((function(e){return-1===f.indexOf(e)})).forEach((function(e){f.push(e),e.classList.add("medium-zoom-image")})),m.forEach((function(e){var t=e.type,n=e.listener,a=e.options;r.forEach((function(e){e.addEventListener(t,n,a)}))})),w},u=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).target,t=function(){var e={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},t=void 0,n=void 0;if(h.container)if(h.container instanceof Object)t=(e=a({},e,h.container)).width-e.left-e.right-2*h.margin,n=e.height-e.top-e.bottom-2*h.margin;else{var r=(i(h.container)?h.container:document.querySelector(h.container)).getBoundingClientRect(),o=r.width,l=r.height,c=r.left,u=r.top;e=a({},e,{width:o,height:l,left:c,top:u})}t=t||e.width-2*h.margin,n=n||e.height-2*h.margin;var d=v.zoomedHd||v.original,p=s(d)?t:d.naturalWidth||t,f=s(d)?n:d.naturalHeight||n,m=d.getBoundingClientRect(),g=m.top,b=m.left,y=m.width,w=m.height,k=Math.min(Math.max(y,p),t)/y,_=Math.min(Math.max(w,f),n)/w,S=Math.min(k,_),E="scale("+S+") translate3d("+((t-y)/2-b+h.margin+e.left)/S+"px, "+((n-w)/2-g+h.margin+e.top)/S+"px, 0)";v.zoomed.style.transform=E,v.zoomedHd&&(v.zoomedHd.style.transform=E)};return new r((function(n){if(e&&-1===f.indexOf(e))n(w);else{if(v.zoomed)n(w);else{if(e)v.original=e;else{if(!(f.length>0))return void n(w);var r=f;v.original=r[0]}if(v.original.dispatchEvent(c("medium-zoom:open",{detail:{zoom:w}})),b=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,g=!0,v.zoomed=function(e){var t=e.getBoundingClientRect(),n=t.top,r=t.left,a=t.width,o=t.height,i=e.cloneNode(),s=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,l=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;return i.removeAttribute("id"),i.style.position="absolute",i.style.top=n+s+"px",i.style.left=r+l+"px",i.style.width=a+"px",i.style.height=o+"px",i.style.transform="",i}(v.original),document.body.appendChild(y),h.template){var a=i(h.template)?h.template:document.querySelector(h.template);v.template=document.createElement("div"),v.template.appendChild(a.content.cloneNode(!0)),document.body.appendChild(v.template)}if(v.original.parentElement&&"PICTURE"===v.original.parentElement.tagName&&v.original.currentSrc&&(v.zoomed.src=v.original.currentSrc),document.body.appendChild(v.zoomed),window.requestAnimationFrame((function(){document.body.classList.add("medium-zoom--opened")})),v.original.classList.add("medium-zoom-image--hidden"),v.zoomed.classList.add("medium-zoom-image--opened"),v.zoomed.addEventListener("click",d),v.zoomed.addEventListener("transitionend",(function e(){g=!1,v.zoomed.removeEventListener("transitionend",e),v.original.dispatchEvent(c("medium-zoom:opened",{detail:{zoom:w}})),n(w)})),v.original.getAttribute("data-zoom-src")){v.zoomedHd=v.zoomed.cloneNode(),v.zoomedHd.removeAttribute("srcset"),v.zoomedHd.removeAttribute("sizes"),v.zoomedHd.removeAttribute("loading"),v.zoomedHd.src=v.zoomed.getAttribute("data-zoom-src"),v.zoomedHd.onerror=function(){clearInterval(o),console.warn("Unable to reach the zoom image target "+v.zoomedHd.src),v.zoomedHd=null,t()};var o=setInterval((function(){v.zoomedHd.complete&&(clearInterval(o),v.zoomedHd.classList.add("medium-zoom-image--opened"),v.zoomedHd.addEventListener("click",d),document.body.appendChild(v.zoomedHd),t())}),10)}else if(v.original.hasAttribute("srcset")){v.zoomedHd=v.zoomed.cloneNode(),v.zoomedHd.removeAttribute("sizes"),v.zoomedHd.removeAttribute("loading");var s=v.zoomedHd.addEventListener("load",(function(){v.zoomedHd.removeEventListener("load",s),v.zoomedHd.classList.add("medium-zoom-image--opened"),v.zoomedHd.addEventListener("click",d),document.body.appendChild(v.zoomedHd),t()}))}else t()}}}))},d=function(){return new r((function(e){if(!g&&v.original){g=!0,document.body.classList.remove("medium-zoom--opened"),v.zoomed.style.transform="",v.zoomedHd&&(v.zoomedHd.style.transform=""),v.template&&(v.template.style.transition="opacity 150ms",v.template.style.opacity=0),v.original.dispatchEvent(c("medium-zoom:close",{detail:{zoom:w}})),v.zoomed.addEventListener("transitionend",(function t(){v.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(v.zoomed),v.zoomedHd&&document.body.removeChild(v.zoomedHd),document.body.removeChild(y),v.zoomed.classList.remove("medium-zoom-image--opened"),v.template&&document.body.removeChild(v.template),g=!1,v.zoomed.removeEventListener("transitionend",t),v.original.dispatchEvent(c("medium-zoom:closed",{detail:{zoom:w}})),v.original=null,v.zoomed=null,v.zoomedHd=null,v.template=null,e(w)}))}else e(w)}))},p=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).target;return v.original?d():u({target:e})},f=[],m=[],g=!1,b=0,h=n,v={original:null,zoomed:null,zoomedHd:null,template:null};"[object Object]"===Object.prototype.toString.call(t)?h=t:(t||"string"==typeof t)&&o(t);var y=function(e){var t=document.createElement("div");return t.classList.add("medium-zoom-overlay"),t.style.background=e,t}((h=a({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},h)).background);document.addEventListener("click",(function(e){var t=e.target;t!==y?-1!==f.indexOf(t)&&p({target:t}):d()})),document.addEventListener("keyup",(function(e){var t=e.key||e.keyCode;"Escape"!==t&&"Esc"!==t&&27!==t||d()})),document.addEventListener("scroll",(function(){if(!g&&v.original){var e=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(b-e)>h.scrollOffset&&setTimeout(d,150)}})),window.addEventListener("resize",d);var w={open:u,close:d,toggle:p,update:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e;if(e.background&&(y.style.background=e.background),e.container&&e.container instanceof Object&&(t.container=a({},h.container,e.container)),e.template){var n=i(e.template)?e.template:document.querySelector(e.template);t.template=n}return h=a({},h,t),f.forEach((function(e){e.dispatchEvent(c("medium-zoom:update",{detail:{zoom:w}}))})),w},clone:function(){return e(a({},h,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}))},attach:o,detach:function(){for(var e=arguments.length,t=Array(e),n=0;n<e;n++)t[n]=arguments[n];v.zoomed&&d();var r=t.length>0?t.reduce((function(e,t){return[].concat(e,l(t))}),[]):f;return r.forEach((function(e){e.classList.remove("medium-zoom-image"),e.dispatchEvent(c("medium-zoom:detach",{detail:{zoom:w}}))})),f=f.filter((function(e){return-1===r.indexOf(e)})),w},on:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return f.forEach((function(r){r.addEventListener("medium-zoom:"+e,t,n)})),m.push({type:"medium-zoom:"+e,listener:t,options:n}),w},off:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return f.forEach((function(r){r.removeEventListener("medium-zoom:"+e,t,n)})),m=m.filter((function(n){return!(n.type==="medium-zoom:"+e&&n.listener.toString()===t.toString())})),w},getOptions:function(){return h},getImages:function(){return f},getZoomedImage:function(){return v.original}};return w},{themeConfig:d}=r.default,p=function(){if("undefined"==typeof window)return null;const{zoomSelector:e=".markdown img"}=d,{imageZoom:{selector:t=e,options:n}={}}=d;return setTimeout((()=>{u(t,n)}),1e3),{onRouteUpdate({location:e,previousLocation:r}){e&&e.hash&&e.hash.length||r&&e.pathname!==r.pathname&&setTimeout((()=>{u(t,n)}),1e3)}}}()},87410:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof a?new a(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(t,n){var a,o;switch(n=n||{},r.util.type(t)){case"Object":if(o=r.util.objId(t),n[o])return n[o];for(var i in a={},n[o]=a,t)t.hasOwnProperty(i)&&(a[i]=e(t[i],n));return a;case"Array":return o=r.util.objId(t),n[o]?n[o]:(a=[],n[o]=a,t.forEach((function(t,r){a[r]=e(t,n)})),a);default:return t}},getLanguage:function(t){for(;t;){var n=e.exec(t.className);if(n)return n[1].toLowerCase();t=t.parentElement}return"none"},setLanguage:function(t,n){t.className=t.className.replace(RegExp(e,"gi"),""),t.classList.add("language-"+n)},isActive:function(e,t,n){for(var r="no-"+t;e;){var a=e.classList;if(a.contains(t))return!0;if(a.contains(r))return!1;e=e.parentElement}return!!n}},languages:{plain:n,plaintext:n,text:n,txt:n,extend:function(e,t){var n=r.util.clone(r.languages[e]);for(var a in t)n[a]=t[a];return n},insertBefore:function(e,t,n,a){var o=(a=a||r.languages)[e],i={};for(var s in o)if(o.hasOwnProperty(s)){if(s==t)for(var l in n)n.hasOwnProperty(l)&&(i[l]=n[l]);n.hasOwnProperty(s)||(i[s]=o[s])}var c=a[e];return a[e]=i,r.languages.DFS(r.languages,(function(t,n){n===c&&t!=e&&(this[t]=i)})),i},DFS:function e(t,n,a,o){o=o||{};var i=r.util.objId;for(var s in t)if(t.hasOwnProperty(s)){n.call(t,s,t[s],a||s);var l=t[s],c=r.util.type(l);"Object"!==c||o[i(l)]?"Array"!==c||o[i(l)]||(o[i(l)]=!0,e(l,n,s,o)):(o[i(l)]=!0,e(l,n,null,o))}}},plugins:{},highlight:function(e,t,n){var o={code:e,grammar:t,language:n};return r.hooks.run("before-tokenize",o),o.tokens=r.tokenize(o.code,o.grammar),r.hooks.run("after-tokenize",o),a.stringify(r.util.encode(o.tokens),o.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var a=new s;return l(a,a.head,e),i(e,a,t,a.head,0),function(e){var t=[],n=e.head.next;for(;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var a,o=0;a=n[o++];)a(t)}},Token:a};function a(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function o(e,t,n,r){e.lastIndex=t;var a=e.exec(n);if(a&&r&&a[1]){var o=a[1].length;a.index+=o,a[0]=a[0].slice(o)}return a}function i(e,t,n,s,u,d){for(var p in n)if(n.hasOwnProperty(p)&&n[p]){var f=n[p];f=Array.isArray(f)?f:[f];for(var m=0;m<f.length;++m){if(d&&d.cause==p+","+m)return;var g=f[m],b=g.inside,h=!!g.lookbehind,v=!!g.greedy,y=g.alias;if(v&&!g.pattern.global){var w=g.pattern.toString().match(/[imsuy]*$/)[0];g.pattern=RegExp(g.pattern.source,w+"g")}for(var k=g.pattern||g,_=s.next,S=u;_!==t.tail&&!(d&&S>=d.reach);S+=_.value.length,_=_.next){var E=_.value;if(t.length>e.length)return;if(!(E instanceof a)){var x,C=1;if(v){if(!(x=o(k,S,e,h))||x.index>=e.length)break;var T=x.index,L=x.index+x[0].length,A=S;for(A+=_.value.length;T>=A;)A+=(_=_.next).value.length;if(S=A-=_.value.length,_.value instanceof a)continue;for(var O=_;O!==t.tail&&(A<L||"string"==typeof O.value);O=O.next)C++,A+=O.value.length;C--,E=e.slice(S,A),x.index-=S}else if(!(x=o(k,0,E,h)))continue;T=x.index;var R=x[0],N=E.slice(0,T),P=E.slice(T+R.length),I=S+E.length;d&&I>d.reach&&(d.reach=I);var D=_.prev;if(N&&(D=l(t,D,N),S+=N.length),c(t,D,C),_=l(t,D,new a(p,b?r.tokenize(R,b):R,y,R)),P&&l(t,_,P),C>1){var M={cause:p+","+m,reach:I};i(e,t,n,_.prev,S,M),d&&M.reach>d.reach&&(d.reach=M.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function l(e,t,n){var r=t.next,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function c(e,t,n){for(var r=t.next,a=0;a<n&&r!==e.tail;a++)r=r.next;t.next=r,r.prev=t,e.length-=a}return a.stringify=function e(t,n){if("string"==typeof t)return t;if(Array.isArray(t)){var a="";return t.forEach((function(t){a+=e(t,n)})),a}var o={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(o.classes,i):o.classes.push(i)),r.hooks.run("wrap",o);var s="";for(var l in o.attributes)s+=" "+l+'="'+(o.attributes[l]||"").replace(/"/g,""")+'"';return"<"+o.tag+' class="'+o.classes.join(" ")+'"'+s+">"+o.content+"</"+o.tag+">"},r}(),a=r;r.default=r,a.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.languages.markup.doctype.inside["internal-subset"].inside=a.languages.markup,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var o={};o[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",o)}}),Object.defineProperty(a.languages.markup.tag,"addAttribute",{value:function(e,t){a.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:a.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,a.languages.xml=a.languages.extend("markup",{}),a.languages.ssml=a.languages.xml,a.languages.atom=a.languages.xml,a.languages.rss=a.languages.xml,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=r.variable[1].inside,i=0;i<a.length;i++)o[a[i]]=e.languages.bash[a[i]];e.languages.shell=e.languages.bash}(a),a.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.c=a.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),a.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),a.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},a.languages.c.string],char:a.languages.c.char,comment:a.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:a.languages.c}}}}),a.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete a.languages.c.boolean,function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(a),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}(a),function(e){var t,n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+n.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[n,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var r={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},a={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:a,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:a})}(a),a.languages.javascript=a.languages.extend("clike",{"class-name":[a.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,a.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:a.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:a.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:a.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),a.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),a.languages.markup&&(a.languages.markup.tag.addInlined("script","javascript"),a.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),a.languages.js=a.languages.javascript,function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(a),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<value>>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<key>>/g,(function(){return"(?:"+a+"|"+o+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(o),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(a),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),o=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+o+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+o+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var a=t[n];if("code"===a.type){var o=a.content[1],i=a.content[3];if(o&&i&&"code-language"===o.type&&"code-block"===i.type&&"string"==typeof o.content){var s=o.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),l="language-"+(s=(/[a-z][\w-]*/i.exec(s)||[""])[0].toLowerCase());i.alias?"string"==typeof i.alias?i.alias=[i.alias,l]:i.alias.push(l):i.alias=[l]}}else e(a.content)}}(e.tokens)})),e.hooks.add("wrap",(function(t){if("code-block"===t.type){for(var n="",r=0,a=t.classes.length;r<a;r++){var o=t.classes[r],c=/language-(.+)/.exec(o);if(c){n=c[1];break}}var u,d=e.languages[n];if(d)t.content=e.highlight((u=t.content,u.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;if("#"===(t=t.toLowerCase())[0])return n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),l(n);var r=s[t];return r||e}))),d,n);else if(n&&"none"!==n&&e.plugins.autoloader){var p="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random());t.attributes.id=p,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(p);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))}))}}}));var i=RegExp(e.languages.markup.tag.pattern.source,"gi"),s={amp:"&",lt:"<",gt:">",quot:'"'},l=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(a),a.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:a.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},a.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n<t.length;){var r=t[n++];if("keyword"===r.type&&"mutation"===r.content){var a=[];if(d(["definition-mutation","punctuation"])&&"("===u(1).content){n+=2;var o=p(/^\($/,/^\)$/);if(-1===o)continue;for(;n<o;n++){var i=u(0);"variable"===i.type&&(f(i,"variable-input"),a.push(i.content))}n=o+1}if(d(["punctuation","property-query"])&&"{"===u(0).content&&(n++,f(u(0),"property-mutation"),a.length>0)){var s=p(/^\{$/,/^\}$/);if(-1===s)continue;for(var l=n;l<s;l++){var c=t[l];"variable"===c.type&&a.indexOf(c.content)>=0&&f(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=u(n+t);if(!r||r.type!==e[n])return!1}return!0}function p(e,r){for(var a=1,o=n;o<t.length;o++){var i=t[o],s=i.content;if("punctuation"===i.type&&"string"==typeof s)if(e.test(s))a++;else if(r.test(s)&&0===--a)return o}return-1}function f(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),a.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,a=r.inside["interpolation-punctuation"],o=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function s(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function l(t,n,r){var a={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",a),a.tokens=e.tokenize(a.code,a.grammar),e.hooks.run("after-tokenize",a),a.tokens}function c(t){var n={};n["interpolation-punctuation"]=a;var o=e.tokenize(t,n);if(3===o.length){var i=[1,1];i.push.apply(i,l(o[1],e.languages.javascript,"javascript")),o.splice.apply(o,i)}return new e.Token("interpolation",o,r.alias,t)}function u(t,n,r){var a=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),i=0,u={},d=l(a.map((function(e){if("string"==typeof e)return e;for(var n,a=e.content;-1!==t.indexOf(n=s(i++,r)););return u[n]=a,n})).join(""),n,r),p=Object.keys(u);return i=0,function e(t){for(var n=0;n<t.length;n++){if(i>=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var a=p[i],o="string"==typeof r?r:r.content,s=o.indexOf(a);if(-1!==s){++i;var l=o.substring(0,s),d=c(u[a]),f=o.substring(s+a.length),m=[];if(l&&m.push(l),m.push(d),f){var g=[f];e(g),m.push.apply(m,g)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var b=r.content;Array.isArray(b)?e(b):e([b])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,a=n.length;r<a;r++){var o=n[r];if("string"!=typeof o){var i=o.content;if(Array.isArray(i))if("template-string"===o.type){var s=i[1];if(3===i.length&&"string"!=typeof s&&"embedded-code"===s.type){var l=p(s),c=s.alias,d=Array.isArray(c)?c[0]:c,f=e.languages[d];if(!f)continue;i[1]=u(l,f,d)}}else t(i);else"string"!=typeof i&&t([i])}}}(t.tokens)}))}(a),function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(a),function(e){function t(e,t){return RegExp(e.replace(/<ID>/g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?<ID>/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r<n.length;r++){var a=n[r],o=e.languages.javascript[a];"RegExp"===e.util.type(o)&&(o=e.languages.javascript[a]={pattern:o});var i=o.inside||{};o.inside=i,i["maybe-class-name"]=/^[A-Z][\s\S]*/}}(a),function(e){var t=e.util.clone(e.languages.javascript),n=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,r=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,a=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function o(e,t){return e=e.replace(/<S>/g,(function(){return n})).replace(/<BRACES>/g,(function(){return r})).replace(/<SPREAD>/g,(function(){return a})),RegExp(e,t)}a=o(a).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=o(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:o(/<SPREAD>/.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var i=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(i).join(""):""},s=function(t){for(var n=[],r=0;r<t.length;r++){var a=t[r],o=!1;if("string"!=typeof a&&("tag"===a.type&&a.content[0]&&"tag"===a.content[0].type?"</"===a.content[0].content[0].content?n.length>0&&n[n.length-1].tagName===i(a.content[0].content[1])&&n.pop():"/>"===a.content[a.content.length-1].content||n.push({tagName:i(a.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===a.type&&"{"===a.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===a.type&&"}"===a.content?n[n.length-1].openedBraces--:o=!0),(o||"string"==typeof a)&&n.length>0&&0===n[n.length-1].openedBraces){var l=i(a);r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(l+=i(t[r+1]),t.splice(r+1,1)),r>0&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(l=i(t[r-1])+l,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",l,null,l)}a.content&&"string"!=typeof a.content&&s(a.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||s(e.tokens)}))}(a),function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],a=[];/^\w+$/.test(n)||a.push(/\w+/.exec(n)[0]),"diff"===n&&a.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:a,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(a),a.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m},a.languages.go=a.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),a.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete a.languages.go["class-name"],function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,s=i.length;-1!==n.code.indexOf(a=t(r,s));)++s;return i[s]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(s){for(var l=0;l<s.length&&!(a>=o.length);l++){var c=s[l];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=o[a],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var g=p.substring(0,m),b=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),h=p.substring(m+f.length),v=[];g&&v.push.apply(v,i([g])),v.push(b),h&&v.push.apply(v,i([h])),"string"==typeof c?s.splice.apply(s,[l,1].concat(v)):c.content=v}}else c.content&&i(c.content)}return s}(n.tokens)}}}})}(a),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:false|true)\b/,block:{pattern:/^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")})),e.languages.hbs=e.languages.handlebars}(a),a.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},a.languages.webmanifest=a.languages.json,a.languages.less=a.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),a.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),a.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},a.languages.objectivec=a.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete a.languages.objectivec["class-name"],a.languages.objc=a.languages.objectivec,a.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/},a.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},a.languages.python["string-interpolation"].inside.interpolation.inside.rest=a.languages.python,a.languages.py=a.languages.python,a.languages.reason=a.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),a.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete a.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(a),a.languages.scss=a.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),a.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),a.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),a.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),a.languages.scss.atrule.inside.rest=a.languages.scss,function(e){var t={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},n={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},r={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:n,punctuation:/[{}()\[\];:,]/};r.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:r}},r.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:r}},e.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:r}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:r}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:r}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:r.interpolation}},rest:r}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:r.interpolation,comment:r.comment,punctuation:/[{},]/}},func:r.func,string:r.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:r.interpolation,punctuation:/[{}()\[\];:.]/}}(a),function(e){var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"];var n=e.languages.tsx.tag;n.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+n.pattern.source+")",n.pattern.flags),n.lookbehind=!0}(a),a.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/};const o=a},29901:e=>{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to <a href="https://webplatform.github.io/docs/">WebPlatform.org documentation</a>. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (<code>.comment</code> can become <code>.namespace--comment</code>) or replace them with your defined ones (like <code>.editor__comment</code>). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the <code>highlightAll</code> and <code>highlightAllUnder</code> methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},2885:(e,t,n)=>{const r=n(29901),a=n(39642),o=new Set;function i(e){void 0===e?e=Object.keys(r.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...o,...Object.keys(Prism.languages)];a(r,e,t).load((e=>{if(!(e in r.languages))return void(i.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(16500).resolve(t)],delete Prism.languages[e],n(16500)(t),o.add(e)}))}i.silent=!1,e.exports=i},6726:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6726},16500:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=16500},39642:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function r(e){var n={},r=[];function a(r,o){if(!(r in n)){o.push(r);var i=o.indexOf(r);if(i<o.length-1)throw new Error("Circular dependency: "+o.slice(i).join(" -> "));var s={},l=e[r];if(l){function c(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in s))for(var i in a(t,o),s[t]=!0,n[t])s[i]=!0}t(l.require,c),t(l.optional,c),t(l.modify,c)}n[r]=s,o.pop()}}return function(e){var t=n[e];return t||(a(e,r),t=n[e]),t}}function a(e){for(var t in e)return!0;return!1}return function(o,i,s){var l=function(e){var t={};for(var n in e){var r=e[n];for(var a in r)if("meta"!=a){var o=r[a];t[a]="string"==typeof o?{title:o}:o}}return t}(o),c=function(e){var n;return function(r){if(r in e)return r;if(!n)for(var a in n={},e){var o=e[a];t(o&&o.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+a+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+a+" because it is a component.");n[t]=a}))}return n[r]||r}}(l);i=i.map(c),s=(s||[]).map(c);var u=n(i),d=n(s);i.forEach((function e(n){var r=l[n];t(r&&r.require,(function(t){t in d||(u[t]=!0,e(t))}))}));for(var p,f=r(l),m=u;a(m);){for(var g in p={},m){var b=l[g];t(b&&b.modify,(function(e){e in d&&(p[e]=!0)}))}for(var h in d)if(!(h in u))for(var v in f(h))if(v in u){p[h]=!0;break}for(var y in m=p)u[y]=!0}var w={getIds:function(){var e=[];return w.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,r,a){var o=a?a.series:void 0,i=a?a.parallel:e,s={},l={};function c(e){if(e in s)return s[e];l[e]=!0;var a,u=[];for(var d in t(e))d in n&&u.push(d);if(0===u.length)a=r(e);else{var p=i(u.map((function(e){var t=c(e);return delete l[e],t})));o?a=o(p,(function(){return r(e)})):r(e)}return s[e]=a}for(var u in n)c(u);var d=[];for(var p in l)d.push(s[p]);return i(d)}(f,u,t,n)}};return w}}();e.exports=t},92703:(e,t,n)=>{"use strict";var r=n(50414);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:a};return n.PropTypes=n,n}},45697:(e,t,n)=>{e.exports=n(92703)()},50414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},64448:(e,t,n)=>{"use strict";var r=n(67294),a=n(27418),o=n(63840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(i(227));var s=new Set,l={};function c(e,t){u(e,t),u(e+"Capture",t)}function u(e,t){for(l[e]=t,e=0;e<t.length;e++)s.add(t[e])}var d=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,f=Object.prototype.hasOwnProperty,m={},g={};function b(e,t,n,r,a,o,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var h={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){h[e]=new b(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];h[t]=new b(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){h[e]=new b(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){h[e]=new b(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){h[e]=new b(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){h[e]=new b(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){h[e]=new b(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){h[e]=new b(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){h[e]=new b(e,5,!1,e.toLowerCase(),null,!1,!1)}));var v=/[\-:]([a-z])/g;function y(e){return e[1].toUpperCase()}function w(e,t,n,r){var a=h.hasOwnProperty(t)?h[t]:null;(null!==a?0===a.type:!r&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,a,r)&&(n=null),r||null===a?function(e){return!!f.call(g,e)||!f.call(m,e)&&(p.test(e)?g[e]=!0:(m[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=null===n?3!==a.type&&"":n:(t=a.attributeName,r=a.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(a=a.type)||4===a&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(v,y);h[t]=new b(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(v,y);h[t]=new b(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(v,y);h[t]=new b(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){h[e]=new b(e,1,!1,e.toLowerCase(),null,!1,!1)})),h.xlinkHref=new b("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){h[e]=new b(e,1,!1,e.toLowerCase(),null,!0,!0)}));var k=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,_=60103,S=60106,E=60107,x=60108,C=60114,T=60109,L=60110,A=60112,O=60113,R=60120,N=60115,P=60116,I=60121,D=60128,M=60129,j=60130,F=60131;if("function"==typeof Symbol&&Symbol.for){var z=Symbol.for;_=z("react.element"),S=z("react.portal"),E=z("react.fragment"),x=z("react.strict_mode"),C=z("react.profiler"),T=z("react.provider"),L=z("react.context"),A=z("react.forward_ref"),O=z("react.suspense"),R=z("react.suspense_list"),N=z("react.memo"),P=z("react.lazy"),I=z("react.block"),z("react.scope"),D=z("react.opaque.id"),M=z("react.debug_trace_mode"),j=z("react.offscreen"),F=z("react.legacy_hidden")}var B,U="function"==typeof Symbol&&Symbol.iterator;function $(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=U&&e[U]||e["@@iterator"])?e:null}function q(e){if(void 0===B)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);B=t&&t[1]||""}return"\n"+B+e}var H=!1;function G(e,t){if(!e||H)return"";H=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(l){var r=l}Reflect.construct(e,[],t)}else{try{t.call()}catch(l){r=l}e.call(t.prototype)}else{try{throw Error()}catch(l){r=l}e()}}catch(l){if(l&&r&&"string"==typeof l.stack){for(var a=l.stack.split("\n"),o=r.stack.split("\n"),i=a.length-1,s=o.length-1;1<=i&&0<=s&&a[i]!==o[s];)s--;for(;1<=i&&0<=s;i--,s--)if(a[i]!==o[s]){if(1!==i||1!==s)do{if(i--,0>--s||a[i]!==o[s])return"\n"+a[i].replace(" at new "," at ")}while(1<=i&&0<=s);break}}}finally{H=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?q(e):""}function Z(e){switch(e.tag){case 5:return q(e.type);case 16:return q("Lazy");case 13:return q("Suspense");case 19:return q("SuspenseList");case 0:case 2:case 15:return e=G(e.type,!1);case 11:return e=G(e.type.render,!1);case 22:return e=G(e.type._render,!1);case 1:return e=G(e.type,!0);default:return""}}function V(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case E:return"Fragment";case S:return"Portal";case C:return"Profiler";case x:return"StrictMode";case O:return"Suspense";case R:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case L:return(e.displayName||"Context")+".Consumer";case T:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case N:return V(e.type);case I:return V(e._render);case P:t=e._payload,e=e._init;try{return V(e(t))}catch(n){}}return null}function W(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Q(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function Y(e){e._valueTracker||(e._valueTracker=function(e){var t=Q(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var a=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(e){r=""+e,o.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function K(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Q(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function X(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function J(e,t){var n=t.checked;return a({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=W(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&w(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=W(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ae(e,t.type,n):t.hasOwnProperty("defaultValue")&&ae(e,t.type,W(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ae(e,t,n){"number"===t&&X(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function oe(e,t){return e=a({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function ie(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+W(n),t=null,a=0;a<e.length;a++){if(e[a].value===n)return e[a].selected=!0,void(r&&(e[a].defaultSelected=!0));null!==t||e[a].disabled||(t=e[a])}null!==t&&(t.selected=!0)}}function se(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return a({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function le(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:W(n)}}function ce(e,t){var n=W(t.value),r=W(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ue(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var de={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg"};function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function fe(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var me,ge,be=(ge=function(e,t){if(e.namespaceURI!==de.svg||"innerHTML"in e)e.innerHTML=t;else{for((me=me||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=me.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ge(e,t)}))}:ge);function he(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ve={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ye=["Webkit","ms","Moz","O"];function we(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ve.hasOwnProperty(e)&&ve[e]?(""+t).trim():t+"px"}function ke(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),a=we(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}Object.keys(ve).forEach((function(e){ye.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ve[t]=ve[e]}))}));var _e=a({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Se(e,t){if(t){if(_e[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function Ee(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Ce=null,Te=null,Le=null;function Ae(e){if(e=na(e)){if("function"!=typeof Ce)throw Error(i(280));var t=e.stateNode;t&&(t=aa(t),Ce(e.stateNode,e.type,t))}}function Oe(e){Te?Le?Le.push(e):Le=[e]:Te=e}function Re(){if(Te){var e=Te,t=Le;if(Le=Te=null,Ae(e),t)for(e=0;e<t.length;e++)Ae(t[e])}}function Ne(e,t){return e(t)}function Pe(e,t,n,r,a){return e(t,n,r,a)}function Ie(){}var De=Ne,Me=!1,je=!1;function Fe(){null===Te&&null===Le||(Ie(),Re())}function ze(e,t){var n=e.stateNode;if(null===n)return null;var r=aa(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Be=!1;if(d)try{var Ue={};Object.defineProperty(Ue,"passive",{get:function(){Be=!0}}),window.addEventListener("test",Ue,Ue),window.removeEventListener("test",Ue,Ue)}catch(ge){Be=!1}function $e(e,t,n,r,a,o,i,s,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(u){this.onError(u)}}var qe=!1,He=null,Ge=!1,Ze=null,Ve={onError:function(e){qe=!0,He=e}};function We(e,t,n,r,a,o,i,s,l){qe=!1,He=null,$e.apply(Ve,arguments)}function Qe(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Ye(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ke(e){if(Qe(e)!==e)throw Error(i(188))}function Xe(e){if(e=function(e){var t=e.alternate;if(!t){if(null===(t=Qe(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(null===a)break;var o=a.alternate;if(null===o){if(null!==(r=a.return)){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return Ke(a),e;if(o===r)return Ke(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var s=!1,l=a.child;l;){if(l===n){s=!0,n=a,r=o;break}if(l===r){s=!0,r=a,n=o;break}l=l.sibling}if(!s){for(l=o.child;l;){if(l===n){s=!0,n=o,r=a;break}if(l===r){s=!0,r=o,n=a;break}l=l.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e),!e)return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Je(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var et,tt,nt,rt,at=!1,ot=[],it=null,st=null,lt=null,ct=new Map,ut=new Map,dt=[],pt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function ft(e,t,n,r,a){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:a,targetContainers:[r]}}function mt(e,t){switch(e){case"focusin":case"focusout":it=null;break;case"dragenter":case"dragleave":st=null;break;case"mouseover":case"mouseout":lt=null;break;case"pointerover":case"pointerout":ct.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":ut.delete(t.pointerId)}}function gt(e,t,n,r,a,o){return null===e||e.nativeEvent!==o?(e=ft(t,n,r,a,o),null!==t&&(null!==(t=na(t))&&tt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==a&&-1===t.indexOf(a)&&t.push(a),e)}function bt(e){var t=ta(e.target);if(null!==t){var n=Qe(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Ye(n)))return e.blockedOn=t,void rt(e.lanePriority,(function(){o.unstable_runWithPriority(e.priority,(function(){nt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function ht(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Xt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=na(n))&&tt(t),e.blockedOn=n,!1;t.shift()}return!0}function vt(e,t,n){ht(e)&&n.delete(t)}function yt(){for(at=!1;0<ot.length;){var e=ot[0];if(null!==e.blockedOn){null!==(e=na(e.blockedOn))&&et(e);break}for(var t=e.targetContainers;0<t.length;){var n=Xt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&ot.shift()}null!==it&&ht(it)&&(it=null),null!==st&&ht(st)&&(st=null),null!==lt&&ht(lt)&&(lt=null),ct.forEach(vt),ut.forEach(vt)}function wt(e,t){e.blockedOn===t&&(e.blockedOn=null,at||(at=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,yt)))}function kt(e){function t(t){return wt(t,e)}if(0<ot.length){wt(ot[0],e);for(var n=1;n<ot.length;n++){var r=ot[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==it&&wt(it,e),null!==st&&wt(st,e),null!==lt&&wt(lt,e),ct.forEach(t),ut.forEach(t),n=0;n<dt.length;n++)(r=dt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<dt.length&&null===(n=dt[0]).blockedOn;)bt(n),null===n.blockedOn&&dt.shift()}function _t(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var St={animationend:_t("Animation","AnimationEnd"),animationiteration:_t("Animation","AnimationIteration"),animationstart:_t("Animation","AnimationStart"),transitionend:_t("Transition","TransitionEnd")},Et={},xt={};function Ct(e){if(Et[e])return Et[e];if(!St[e])return e;var t,n=St[e];for(t in n)if(n.hasOwnProperty(t)&&t in xt)return Et[e]=n[t];return e}d&&(xt=document.createElement("div").style,"AnimationEvent"in window||(delete St.animationend.animation,delete St.animationiteration.animation,delete St.animationstart.animation),"TransitionEvent"in window||delete St.transitionend.transition);var Tt=Ct("animationend"),Lt=Ct("animationiteration"),At=Ct("animationstart"),Ot=Ct("transitionend"),Rt=new Map,Nt=new Map,Pt=["abort","abort",Tt,"animationEnd",Lt,"animationIteration",At,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Ot,"transitionEnd","waiting","waiting"];function It(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],a=e[n+1];a="on"+(a[0].toUpperCase()+a.slice(1)),Nt.set(r,t),Rt.set(r,a),c(a,[r])}}(0,o.unstable_now)();var Dt=8;function Mt(e){if(0!=(1&e))return Dt=15,1;if(0!=(2&e))return Dt=14,2;if(0!=(4&e))return Dt=13,4;var t=24&e;return 0!==t?(Dt=12,t):0!=(32&e)?(Dt=11,32):0!==(t=192&e)?(Dt=10,t):0!=(256&e)?(Dt=9,256):0!==(t=3584&e)?(Dt=8,t):0!=(4096&e)?(Dt=7,4096):0!==(t=4186112&e)?(Dt=6,t):0!==(t=62914560&e)?(Dt=5,t):67108864&e?(Dt=4,67108864):0!=(134217728&e)?(Dt=3,134217728):0!==(t=805306368&e)?(Dt=2,t):0!=(1073741824&e)?(Dt=1,1073741824):(Dt=8,e)}function jt(e,t){var n=e.pendingLanes;if(0===n)return Dt=0;var r=0,a=0,o=e.expiredLanes,i=e.suspendedLanes,s=e.pingedLanes;if(0!==o)r=o,a=Dt=15;else if(0!==(o=134217727&n)){var l=o&~i;0!==l?(r=Mt(l),a=Dt):0!==(s&=o)&&(r=Mt(s),a=Dt)}else 0!==(o=n&~i)?(r=Mt(o),a=Dt):0!==s&&(r=Mt(s),a=Dt);if(0===r)return 0;if(r=n&((0>(r=31-qt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&0==(t&i)){if(Mt(t),a<=Dt)return t;Dt=a}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)a=1<<(n=31-qt(t)),r|=e[n],t&=~a;return r}function Ft(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function zt(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Bt(24&~t))?zt(10,t):e;case 10:return 0===(e=Bt(192&~t))?zt(8,t):e;case 8:return 0===(e=Bt(3584&~t))&&(0===(e=Bt(4186112&~t))&&(e=512)),e;case 2:return 0===(t=Bt(805306368&~t))&&(t=268435456),t}throw Error(i(358,e))}function Bt(e){return e&-e}function Ut(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function $t(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-qt(t)]=n}var qt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Ht(e)/Gt|0)|0},Ht=Math.log,Gt=Math.LN2;var Zt=o.unstable_UserBlockingPriority,Vt=o.unstable_runWithPriority,Wt=!0;function Qt(e,t,n,r){Me||Ie();var a=Kt,o=Me;Me=!0;try{Pe(a,e,t,n,r)}finally{(Me=o)||Fe()}}function Yt(e,t,n,r){Vt(Zt,Kt.bind(null,e,t,n,r))}function Kt(e,t,n,r){var a;if(Wt)if((a=0==(4&t))&&0<ot.length&&-1<pt.indexOf(e))e=ft(null,e,t,n,r),ot.push(e);else{var o=Xt(e,t,n,r);if(null===o)a&&mt(e,r);else{if(a){if(-1<pt.indexOf(e))return e=ft(o,e,t,n,r),void ot.push(e);if(function(e,t,n,r,a){switch(t){case"focusin":return it=gt(it,e,t,n,r,a),!0;case"dragenter":return st=gt(st,e,t,n,r,a),!0;case"mouseover":return lt=gt(lt,e,t,n,r,a),!0;case"pointerover":var o=a.pointerId;return ct.set(o,gt(ct.get(o)||null,e,t,n,r,a)),!0;case"gotpointercapture":return o=a.pointerId,ut.set(o,gt(ut.get(o)||null,e,t,n,r,a)),!0}return!1}(o,e,t,n,r))return;mt(e,r)}Ir(e,t,r,null,n)}}}function Xt(e,t,n,r){var a=xe(r);if(null!==(a=ta(a))){var o=Qe(a);if(null===o)a=null;else{var i=o.tag;if(13===i){if(null!==(a=Ye(o)))return a;a=null}else if(3===i){if(o.stateNode.hydrate)return 3===o.tag?o.stateNode.containerInfo:null;a=null}else o!==a&&(a=null)}}return Ir(e,t,r,a,n),null}var Jt=null,en=null,tn=null;function nn(){if(tn)return tn;var e,t,n=en,r=n.length,a="value"in Jt?Jt.value:Jt.textContent,o=a.length;for(e=0;e<r&&n[e]===a[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===a[o-t];t++);return tn=a.slice(e,1<t?1-t:void 0)}function rn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function an(){return!0}function on(){return!1}function sn(e){function t(t,n,r,a,o){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=a,this.target=o,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(a):a[i]);return this.isDefaultPrevented=(null!=a.defaultPrevented?a.defaultPrevented:!1===a.returnValue)?an:on,this.isPropagationStopped=on,this}return a(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=an)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=an)},persist:function(){},isPersistent:an}),t}var ln,cn,un,dn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},pn=sn(dn),fn=a({},dn,{view:0,detail:0}),mn=sn(fn),gn=a({},fn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Tn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==un&&(un&&"mousemove"===e.type?(ln=e.screenX-un.screenX,cn=e.screenY-un.screenY):cn=ln=0,un=e),ln)},movementY:function(e){return"movementY"in e?e.movementY:cn}}),bn=sn(gn),hn=sn(a({},gn,{dataTransfer:0})),vn=sn(a({},fn,{relatedTarget:0})),yn=sn(a({},dn,{animationName:0,elapsedTime:0,pseudoElement:0})),wn=a({},dn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),kn=sn(wn),_n=sn(a({},dn,{data:0})),Sn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},En={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},xn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Cn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=xn[e])&&!!t[e]}function Tn(){return Cn}var Ln=a({},fn,{key:function(e){if(e.key){var t=Sn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=rn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?En[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Tn,charCode:function(e){return"keypress"===e.type?rn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?rn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),An=sn(Ln),On=sn(a({},gn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Rn=sn(a({},fn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Tn})),Nn=sn(a({},dn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Pn=a({},gn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),In=sn(Pn),Dn=[9,13,27,32],Mn=d&&"CompositionEvent"in window,jn=null;d&&"documentMode"in document&&(jn=document.documentMode);var Fn=d&&"TextEvent"in window&&!jn,zn=d&&(!Mn||jn&&8<jn&&11>=jn),Bn=String.fromCharCode(32),Un=!1;function $n(e,t){switch(e){case"keyup":return-1!==Dn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function qn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Hn=!1;var Gn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Zn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Gn[e.type]:"textarea"===t}function Vn(e,t,n,r){Oe(r),0<(t=Mr(t,"onChange")).length&&(n=new pn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Wn=null,Qn=null;function Yn(e){Lr(e,0)}function Kn(e){if(K(ra(e)))return e}function Xn(e,t){if("change"===e)return t}var Jn=!1;if(d){var er;if(d){var tr="oninput"in document;if(!tr){var nr=document.createElement("div");nr.setAttribute("oninput","return;"),tr="function"==typeof nr.oninput}er=tr}else er=!1;Jn=er&&(!document.documentMode||9<document.documentMode)}function rr(){Wn&&(Wn.detachEvent("onpropertychange",ar),Qn=Wn=null)}function ar(e){if("value"===e.propertyName&&Kn(Qn)){var t=[];if(Vn(t,Qn,e,xe(e)),e=Yn,Me)e(t);else{Me=!0;try{Ne(e,t)}finally{Me=!1,Fe()}}}}function or(e,t,n){"focusin"===e?(rr(),Qn=n,(Wn=t).attachEvent("onpropertychange",ar)):"focusout"===e&&rr()}function ir(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Kn(Qn)}function sr(e,t){if("click"===e)return Kn(t)}function lr(e,t){if("input"===e||"change"===e)return Kn(t)}var cr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},ur=Object.prototype.hasOwnProperty;function dr(e,t){if(cr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!ur.call(t,n[r])||!cr(e[n[r]],t[n[r]]))return!1;return!0}function pr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function fr(e,t){var n,r=pr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=pr(r)}}function mr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?mr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function gr(){for(var e=window,t=X();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=X((e=t.contentWindow).document)}return t}function br(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var hr=d&&"documentMode"in document&&11>=document.documentMode,vr=null,yr=null,wr=null,kr=!1;function _r(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;kr||null==vr||vr!==X(r)||("selectionStart"in(r=vr)&&br(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},wr&&dr(wr,r)||(wr=r,0<(r=Mr(yr,"onSelect")).length&&(t=new pn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=vr)))}It("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),It("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),It(Pt,2);for(var Sr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),Er=0;Er<Sr.length;Er++)Nt.set(Sr[Er],0);u("onMouseEnter",["mouseout","mouseover"]),u("onMouseLeave",["mouseout","mouseover"]),u("onPointerEnter",["pointerout","pointerover"]),u("onPointerLeave",["pointerout","pointerover"]),c("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),c("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),c("onBeforeInput",["compositionend","keypress","textInput","paste"]),c("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),c("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var xr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Cr=new Set("cancel close invalid load scroll toggle".split(" ").concat(xr));function Tr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,a,o,s,l,c){if(We.apply(this,arguments),qe){if(!qe)throw Error(i(198));var u=He;qe=!1,He=null,Ge||(Ge=!0,Ze=u)}}(r,t,void 0,e),e.currentTarget=null}function Lr(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var o=void 0;if(t)for(var i=r.length-1;0<=i;i--){var s=r[i],l=s.instance,c=s.currentTarget;if(s=s.listener,l!==o&&a.isPropagationStopped())break e;Tr(a,s,c),o=l}else for(i=0;i<r.length;i++){if(l=(s=r[i]).instance,c=s.currentTarget,s=s.listener,l!==o&&a.isPropagationStopped())break e;Tr(a,s,c),o=l}}}if(Ge)throw e=Ze,Ge=!1,Ze=null,e}function Ar(e,t){var n=oa(t),r=e+"__bubble";n.has(r)||(Pr(t,e,2,!1),n.add(r))}var Or="_reactListening"+Math.random().toString(36).slice(2);function Rr(e){e[Or]||(e[Or]=!0,s.forEach((function(t){Cr.has(t)||Nr(t,!1,e,null),Nr(t,!0,e,null)})))}function Nr(e,t,n,r){var a=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,o=n;if("selectionchange"===e&&9!==n.nodeType&&(o=n.ownerDocument),null!==r&&!t&&Cr.has(e)){if("scroll"!==e)return;a|=2,o=r}var i=oa(o),s=e+"__"+(t?"capture":"bubble");i.has(s)||(t&&(a|=4),Pr(o,e,a,t),i.add(s))}function Pr(e,t,n,r){var a=Nt.get(t);switch(void 0===a?2:a){case 0:a=Qt;break;case 1:a=Yt;break;default:a=Kt}n=a.bind(null,t,n,e),a=void 0,!Be||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(a=!0),r?void 0!==a?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):void 0!==a?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Ir(e,t,n,r,a){var o=r;if(0==(1&t)&&0==(2&t)&&null!==r)e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var s=r.stateNode.containerInfo;if(s===a||8===s.nodeType&&s.parentNode===a)break;if(4===i)for(i=r.return;null!==i;){var l=i.tag;if((3===l||4===l)&&((l=i.stateNode.containerInfo)===a||8===l.nodeType&&l.parentNode===a))return;i=i.return}for(;null!==s;){if(null===(i=ta(s)))return;if(5===(l=i.tag)||6===l){r=o=i;continue e}s=s.parentNode}}r=r.return}!function(e,t,n){if(je)return e(t,n);je=!0;try{return De(e,t,n)}finally{je=!1,Fe()}}((function(){var r=o,a=xe(n),i=[];e:{var s=Rt.get(e);if(void 0!==s){var l=pn,c=e;switch(e){case"keypress":if(0===rn(n))break e;case"keydown":case"keyup":l=An;break;case"focusin":c="focus",l=vn;break;case"focusout":c="blur",l=vn;break;case"beforeblur":case"afterblur":l=vn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=bn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=hn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=Rn;break;case Tt:case Lt:case At:l=yn;break;case Ot:l=Nn;break;case"scroll":l=mn;break;case"wheel":l=In;break;case"copy":case"cut":case"paste":l=kn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=On}var u=0!=(4&t),d=!u&&"scroll"===e,p=u?null!==s?s+"Capture":null:s;u=[];for(var f,m=r;null!==m;){var g=(f=m).stateNode;if(5===f.tag&&null!==g&&(f=g,null!==p&&(null!=(g=ze(m,p))&&u.push(Dr(m,g,f)))),d)break;m=m.return}0<u.length&&(s=new l(s,c,null,n,a),i.push({event:s,listeners:u}))}}if(0==(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(s="mouseover"===e||"pointerover"===e)||0!=(16&t)||!(c=n.relatedTarget||n.fromElement)||!ta(c)&&!c[Jr])&&(l||s)&&(s=a.window===a?a:(s=a.ownerDocument)?s.defaultView||s.parentWindow:window,l?(l=r,null!==(c=(c=n.relatedTarget||n.toElement)?ta(c):null)&&(c!==(d=Qe(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=r),l!==c)){if(u=bn,g="onMouseLeave",p="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(u=On,g="onPointerLeave",p="onPointerEnter",m="pointer"),d=null==l?s:ra(l),f=null==c?s:ra(c),(s=new u(g,m+"leave",l,n,a)).target=d,s.relatedTarget=f,g=null,ta(a)===r&&((u=new u(p,m+"enter",c,n,a)).target=f,u.relatedTarget=d,g=u),d=g,l&&c)e:{for(p=c,m=0,f=u=l;f;f=jr(f))m++;for(f=0,g=p;g;g=jr(g))f++;for(;0<m-f;)u=jr(u),m--;for(;0<f-m;)p=jr(p),f--;for(;m--;){if(u===p||null!==p&&u===p.alternate)break e;u=jr(u),p=jr(p)}u=null}else u=null;null!==l&&Fr(i,s,l,u,!1),null!==c&&null!==d&&Fr(i,d,c,u,!0)}if("select"===(l=(s=r?ra(r):window).nodeName&&s.nodeName.toLowerCase())||"input"===l&&"file"===s.type)var b=Xn;else if(Zn(s))if(Jn)b=lr;else{b=ir;var h=or}else(l=s.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===s.type||"radio"===s.type)&&(b=sr);switch(b&&(b=b(e,r))?Vn(i,b,n,a):(h&&h(e,s,r),"focusout"===e&&(h=s._wrapperState)&&h.controlled&&"number"===s.type&&ae(s,"number",s.value)),h=r?ra(r):window,e){case"focusin":(Zn(h)||"true"===h.contentEditable)&&(vr=h,yr=r,wr=null);break;case"focusout":wr=yr=vr=null;break;case"mousedown":kr=!0;break;case"contextmenu":case"mouseup":case"dragend":kr=!1,_r(i,n,a);break;case"selectionchange":if(hr)break;case"keydown":case"keyup":_r(i,n,a)}var v;if(Mn)e:{switch(e){case"compositionstart":var y="onCompositionStart";break e;case"compositionend":y="onCompositionEnd";break e;case"compositionupdate":y="onCompositionUpdate";break e}y=void 0}else Hn?$n(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(zn&&"ko"!==n.locale&&(Hn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Hn&&(v=nn()):(en="value"in(Jt=a)?Jt.value:Jt.textContent,Hn=!0)),0<(h=Mr(r,y)).length&&(y=new _n(y,e,null,n,a),i.push({event:y,listeners:h}),v?y.data=v:null!==(v=qn(n))&&(y.data=v))),(v=Fn?function(e,t){switch(e){case"compositionend":return qn(t);case"keypress":return 32!==t.which?null:(Un=!0,Bn);case"textInput":return(e=t.data)===Bn&&Un?null:e;default:return null}}(e,n):function(e,t){if(Hn)return"compositionend"===e||!Mn&&$n(e,t)?(e=nn(),tn=en=Jt=null,Hn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return zn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=Mr(r,"onBeforeInput")).length&&(a=new _n("onBeforeInput","beforeinput",null,n,a),i.push({event:a,listeners:r}),a.data=v))}Lr(i,t)}))}function Dr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Mr(e,t){for(var n=t+"Capture",r=[];null!==e;){var a=e,o=a.stateNode;5===a.tag&&null!==o&&(a=o,null!=(o=ze(e,n))&&r.unshift(Dr(e,o,a)),null!=(o=ze(e,t))&&r.push(Dr(e,o,a))),e=e.return}return r}function jr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Fr(e,t,n,r,a){for(var o=t._reactName,i=[];null!==n&&n!==r;){var s=n,l=s.alternate,c=s.stateNode;if(null!==l&&l===r)break;5===s.tag&&null!==c&&(s=c,a?null!=(l=ze(n,o))&&i.unshift(Dr(n,l,s)):a||null!=(l=ze(n,o))&&i.push(Dr(n,l,s))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}function zr(){}var Br=null,Ur=null;function $r(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function qr(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Hr="function"==typeof setTimeout?setTimeout:void 0,Gr="function"==typeof clearTimeout?clearTimeout:void 0;function Zr(e){1===e.nodeType?e.textContent="":9===e.nodeType&&(null!=(e=e.body)&&(e.textContent=""))}function Vr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function Wr(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Qr=0;var Yr=Math.random().toString(36).slice(2),Kr="__reactFiber$"+Yr,Xr="__reactProps$"+Yr,Jr="__reactContainer$"+Yr,ea="__reactEvents$"+Yr;function ta(e){var t=e[Kr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Jr]||n[Kr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=Wr(e);null!==e;){if(n=e[Kr])return n;e=Wr(e)}return t}n=(e=n).parentNode}return null}function na(e){return!(e=e[Kr]||e[Jr])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function ra(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function aa(e){return e[Xr]||null}function oa(e){var t=e[ea];return void 0===t&&(t=e[ea]=new Set),t}var ia=[],sa=-1;function la(e){return{current:e}}function ca(e){0>sa||(e.current=ia[sa],ia[sa]=null,sa--)}function ua(e,t){sa++,ia[sa]=e.current,e.current=t}var da={},pa=la(da),fa=la(!1),ma=da;function ga(e,t){var n=e.type.contextTypes;if(!n)return da;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a,o={};for(a in n)o[a]=t[a];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function ba(e){return null!=(e=e.childContextTypes)}function ha(){ca(fa),ca(pa)}function va(e,t,n){if(pa.current!==da)throw Error(i(168));ua(pa,t),ua(fa,n)}function ya(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in e))throw Error(i(108,V(t)||"Unknown",o));return a({},n,r)}function wa(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||da,ma=pa.current,ua(pa,e),ua(fa,fa.current),!0}function ka(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=ya(e,t,ma),r.__reactInternalMemoizedMergedChildContext=e,ca(fa),ca(pa),ua(pa,e)):ca(fa),ua(fa,n)}var _a=null,Sa=null,Ea=o.unstable_runWithPriority,xa=o.unstable_scheduleCallback,Ca=o.unstable_cancelCallback,Ta=o.unstable_shouldYield,La=o.unstable_requestPaint,Aa=o.unstable_now,Oa=o.unstable_getCurrentPriorityLevel,Ra=o.unstable_ImmediatePriority,Na=o.unstable_UserBlockingPriority,Pa=o.unstable_NormalPriority,Ia=o.unstable_LowPriority,Da=o.unstable_IdlePriority,Ma={},ja=void 0!==La?La:function(){},Fa=null,za=null,Ba=!1,Ua=Aa(),$a=1e4>Ua?Aa:function(){return Aa()-Ua};function qa(){switch(Oa()){case Ra:return 99;case Na:return 98;case Pa:return 97;case Ia:return 96;case Da:return 95;default:throw Error(i(332))}}function Ha(e){switch(e){case 99:return Ra;case 98:return Na;case 97:return Pa;case 96:return Ia;case 95:return Da;default:throw Error(i(332))}}function Ga(e,t){return e=Ha(e),Ea(e,t)}function Za(e,t,n){return e=Ha(e),xa(e,t,n)}function Va(){if(null!==za){var e=za;za=null,Ca(e)}Wa()}function Wa(){if(!Ba&&null!==Fa){Ba=!0;var e=0;try{var t=Fa;Ga(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),Fa=null}catch(n){throw null!==Fa&&(Fa=Fa.slice(e+1)),xa(Ra,Va),n}finally{Ba=!1}}}var Qa=k.ReactCurrentBatchConfig;function Ya(e,t){if(e&&e.defaultProps){for(var n in t=a({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var Ka=la(null),Xa=null,Ja=null,eo=null;function to(){eo=Ja=Xa=null}function no(e){var t=Ka.current;ca(Ka),e.type._context._currentValue=t}function ro(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function ao(e,t){Xa=e,eo=Ja=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(Mi=!0),e.firstContext=null)}function oo(e,t){if(eo!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(eo=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Ja){if(null===Xa)throw Error(i(308));Ja=t,Xa.dependencies={lanes:0,firstContext:t,responders:null}}else Ja=Ja.next=t;return e._currentValue}var io=!1;function so(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function lo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function co(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function uo(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function po(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var a=null,o=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===o?a=o=i:o=o.next=i,n=n.next}while(null!==n);null===o?a=o=t:o=o.next=t}else a=o=t;return n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:o,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function fo(e,t,n,r){var o=e.updateQueue;io=!1;var i=o.firstBaseUpdate,s=o.lastBaseUpdate,l=o.shared.pending;if(null!==l){o.shared.pending=null;var c=l,u=c.next;c.next=null,null===s?i=u:s.next=u,s=c;var d=e.alternate;if(null!==d){var p=(d=d.updateQueue).lastBaseUpdate;p!==s&&(null===p?d.firstBaseUpdate=u:p.next=u,d.lastBaseUpdate=c)}}if(null!==i){for(p=o.baseState,s=0,d=u=c=null;;){l=i.lane;var f=i.eventTime;if((r&l)===l){null!==d&&(d=d.next={eventTime:f,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var m=e,g=i;switch(l=t,f=n,g.tag){case 1:if("function"==typeof(m=g.payload)){p=m.call(f,p,l);break e}p=m;break e;case 3:m.flags=-4097&m.flags|64;case 0:if(null==(l="function"==typeof(m=g.payload)?m.call(f,p,l):m))break e;p=a({},p,l);break e;case 2:io=!0}}null!==i.callback&&(e.flags|=32,null===(l=o.effects)?o.effects=[i]:l.push(i))}else f={eventTime:f,lane:l,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===d?(u=d=f,c=p):d=d.next=f,s|=l;if(null===(i=i.next)){if(null===(l=o.shared.pending))break;i=l.next,l.next=null,o.lastBaseUpdate=l,o.shared.pending=null}}null===d&&(c=p),o.baseState=c,o.firstBaseUpdate=u,o.lastBaseUpdate=d,Us|=s,e.lanes=s,e.memoizedState=p}}function mo(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(null!==a){if(r.callback=null,r=n,"function"!=typeof a)throw Error(i(191,a));a.call(r)}}}var go=(new r.Component).refs;function bo(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:a({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var ho={isMounted:function(e){return!!(e=e._reactInternals)&&Qe(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pl(),a=fl(e),o=co(r,a);o.payload=t,null!=n&&(o.callback=n),uo(e,o),ml(e,a,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pl(),a=fl(e),o=co(r,a);o.tag=1,o.payload=t,null!=n&&(o.callback=n),uo(e,o),ml(e,a,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pl(),r=fl(e),a=co(n,r);a.tag=2,null!=t&&(a.callback=t),uo(e,a),ml(e,r,n)}};function vo(e,t,n,r,a,o,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,o,i):!t.prototype||!t.prototype.isPureReactComponent||(!dr(n,r)||!dr(a,o))}function yo(e,t,n){var r=!1,a=da,o=t.contextType;return"object"==typeof o&&null!==o?o=oo(o):(a=ba(t)?ma:pa.current,o=(r=null!=(r=t.contextTypes))?ga(e,a):da),t=new t(n,o),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=ho,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=o),t}function wo(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&ho.enqueueReplaceState(t,t.state,null)}function ko(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=go,so(e);var o=t.contextType;"object"==typeof o&&null!==o?a.context=oo(o):(o=ba(t)?ma:pa.current,a.context=ga(e,o)),fo(e,n,a,r),a.state=e.memoizedState,"function"==typeof(o=t.getDerivedStateFromProps)&&(bo(e,t,o,n),a.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof a.getSnapshotBeforeUpdate||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||(t=a.state,"function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount(),t!==a.state&&ho.enqueueReplaceState(a,a.state,null),fo(e,n,a,r),a.state=e.memoizedState),"function"==typeof a.componentDidMount&&(e.flags|=4)}var _o=Array.isArray;function So(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===a?t.ref:(t=function(e){var t=r.refs;t===go&&(t=r.refs={}),null===e?delete t[a]:t[a]=e},t._stringRef=a,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Eo(e,t){if("textarea"!==e.type)throw Error(i(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function xo(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function a(e,t){return(e=Zl(e,t)).index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function s(t){return e&&null===t.alternate&&(t.flags=2),t}function l(e,t,n,r){return null===t||6!==t.tag?((t=Yl(n,e.mode,r)).return=e,t):((t=a(t,n)).return=e,t)}function c(e,t,n,r){return null!==t&&t.elementType===n.type?((r=a(t,n.props)).ref=So(e,t,n),r.return=e,r):((r=Vl(n.type,n.key,n.props,null,e.mode,r)).ref=So(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Kl(n,e.mode,r)).return=e,t):((t=a(t,n.children||[])).return=e,t)}function d(e,t,n,r,o){return null===t||7!==t.tag?((t=Wl(n,e.mode,r,o)).return=e,t):((t=a(t,n)).return=e,t)}function p(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Yl(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case _:return(n=Vl(t.type,t.key,t.props,null,e.mode,n)).ref=So(e,null,t),n.return=e,n;case S:return(t=Kl(t,e.mode,n)).return=e,t}if(_o(t)||$(t))return(t=Wl(t,e.mode,n,null)).return=e,t;Eo(e,t)}return null}function f(e,t,n,r){var a=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==a?null:l(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case _:return n.key===a?n.type===E?d(e,t,n.props.children,r,a):c(e,t,n,r):null;case S:return n.key===a?u(e,t,n,r):null}if(_o(n)||$(n))return null!==a?null:d(e,t,n,r,null);Eo(e,n)}return null}function m(e,t,n,r,a){if("string"==typeof r||"number"==typeof r)return l(t,e=e.get(n)||null,""+r,a);if("object"==typeof r&&null!==r){switch(r.$$typeof){case _:return e=e.get(null===r.key?n:r.key)||null,r.type===E?d(t,e,r.props.children,a,r.key):c(t,e,r,a);case S:return u(t,e=e.get(null===r.key?n:r.key)||null,r,a)}if(_o(r)||$(r))return d(t,e=e.get(n)||null,r,a,null);Eo(t,r)}return null}function g(a,i,s,l){for(var c=null,u=null,d=i,g=i=0,b=null;null!==d&&g<s.length;g++){d.index>g?(b=d,d=null):b=d.sibling;var h=f(a,d,s[g],l);if(null===h){null===d&&(d=b);break}e&&d&&null===h.alternate&&t(a,d),i=o(h,i,g),null===u?c=h:u.sibling=h,u=h,d=b}if(g===s.length)return n(a,d),c;if(null===d){for(;g<s.length;g++)null!==(d=p(a,s[g],l))&&(i=o(d,i,g),null===u?c=d:u.sibling=d,u=d);return c}for(d=r(a,d);g<s.length;g++)null!==(b=m(d,a,g,s[g],l))&&(e&&null!==b.alternate&&d.delete(null===b.key?g:b.key),i=o(b,i,g),null===u?c=b:u.sibling=b,u=b);return e&&d.forEach((function(e){return t(a,e)})),c}function b(a,s,l,c){var u=$(l);if("function"!=typeof u)throw Error(i(150));if(null==(l=u.call(l)))throw Error(i(151));for(var d=u=null,g=s,b=s=0,h=null,v=l.next();null!==g&&!v.done;b++,v=l.next()){g.index>b?(h=g,g=null):h=g.sibling;var y=f(a,g,v.value,c);if(null===y){null===g&&(g=h);break}e&&g&&null===y.alternate&&t(a,g),s=o(y,s,b),null===d?u=y:d.sibling=y,d=y,g=h}if(v.done)return n(a,g),u;if(null===g){for(;!v.done;b++,v=l.next())null!==(v=p(a,v.value,c))&&(s=o(v,s,b),null===d?u=v:d.sibling=v,d=v);return u}for(g=r(a,g);!v.done;b++,v=l.next())null!==(v=m(g,a,b,v.value,c))&&(e&&null!==v.alternate&&g.delete(null===v.key?b:v.key),s=o(v,s,b),null===d?u=v:d.sibling=v,d=v);return e&&g.forEach((function(e){return t(a,e)})),u}return function(e,r,o,l){var c="object"==typeof o&&null!==o&&o.type===E&&null===o.key;c&&(o=o.props.children);var u="object"==typeof o&&null!==o;if(u)switch(o.$$typeof){case _:e:{for(u=o.key,c=r;null!==c;){if(c.key===u){if(7===c.tag){if(o.type===E){n(e,c.sibling),(r=a(c,o.props.children)).return=e,e=r;break e}}else if(c.elementType===o.type){n(e,c.sibling),(r=a(c,o.props)).ref=So(e,c,o),r.return=e,e=r;break e}n(e,c);break}t(e,c),c=c.sibling}o.type===E?((r=Wl(o.props.children,e.mode,l,o.key)).return=e,e=r):((l=Vl(o.type,o.key,o.props,null,e.mode,l)).ref=So(e,r,o),l.return=e,e=l)}return s(e);case S:e:{for(c=o.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=a(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Kl(o,e.mode,l)).return=e,e=r}return s(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=a(r,o)).return=e,e=r):(n(e,r),(r=Yl(o,e.mode,l)).return=e,e=r),s(e);if(_o(o))return g(e,r,o,l);if($(o))return b(e,r,o,l);if(u&&Eo(e,o),void 0===o&&!c)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(i(152,V(e.type)||"Component"))}return n(e,r)}}var Co=xo(!0),To=xo(!1),Lo={},Ao=la(Lo),Oo=la(Lo),Ro=la(Lo);function No(e){if(e===Lo)throw Error(i(174));return e}function Po(e,t){switch(ua(Ro,t),ua(Oo,e),ua(Ao,Lo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:fe(null,"");break;default:t=fe(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}ca(Ao),ua(Ao,t)}function Io(){ca(Ao),ca(Oo),ca(Ro)}function Do(e){No(Ro.current);var t=No(Ao.current),n=fe(t,e.type);t!==n&&(ua(Oo,e),ua(Ao,n))}function Mo(e){Oo.current===e&&(ca(Ao),ca(Oo))}var jo=la(0);function Fo(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var zo=null,Bo=null,Uo=!1;function $o(e,t){var n=Hl(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function qo(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);default:return!1}}function Ho(e){if(Uo){var t=Bo;if(t){var n=t;if(!qo(e,t)){if(!(t=Vr(n.nextSibling))||!qo(e,t))return e.flags=-1025&e.flags|2,Uo=!1,void(zo=e);$o(zo,n)}zo=e,Bo=Vr(t.firstChild)}else e.flags=-1025&e.flags|2,Uo=!1,zo=e}}function Go(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;zo=e}function Zo(e){if(e!==zo)return!1;if(!Uo)return Go(e),Uo=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!qr(t,e.memoizedProps))for(t=Bo;t;)$o(e,t),t=Vr(t.nextSibling);if(Go(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Bo=Vr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Bo=null}}else Bo=zo?Vr(e.stateNode.nextSibling):null;return!0}function Vo(){Bo=zo=null,Uo=!1}var Wo=[];function Qo(){for(var e=0;e<Wo.length;e++)Wo[e]._workInProgressVersionPrimary=null;Wo.length=0}var Yo=k.ReactCurrentDispatcher,Ko=k.ReactCurrentBatchConfig,Xo=0,Jo=null,ei=null,ti=null,ni=!1,ri=!1;function ai(){throw Error(i(321))}function oi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!cr(e[n],t[n]))return!1;return!0}function ii(e,t,n,r,a,o){if(Xo=o,Jo=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Yo.current=null===e||null===e.memoizedState?Ni:Pi,e=n(r,a),ri){o=0;do{if(ri=!1,!(25>o))throw Error(i(301));o+=1,ti=ei=null,t.updateQueue=null,Yo.current=Ii,e=n(r,a)}while(ri)}if(Yo.current=Ri,t=null!==ei&&null!==ei.next,Xo=0,ti=ei=Jo=null,ni=!1,t)throw Error(i(300));return e}function si(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ti?Jo.memoizedState=ti=e:ti=ti.next=e,ti}function li(){if(null===ei){var e=Jo.alternate;e=null!==e?e.memoizedState:null}else e=ei.next;var t=null===ti?Jo.memoizedState:ti.next;if(null!==t)ti=t,ei=e;else{if(null===e)throw Error(i(310));e={memoizedState:(ei=e).memoizedState,baseState:ei.baseState,baseQueue:ei.baseQueue,queue:ei.queue,next:null},null===ti?Jo.memoizedState=ti=e:ti=ti.next=e}return ti}function ci(e,t){return"function"==typeof t?t(e):t}function ui(e){var t=li(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=ei,a=r.baseQueue,o=n.pending;if(null!==o){if(null!==a){var s=a.next;a.next=o.next,o.next=s}r.baseQueue=a=o,n.pending=null}if(null!==a){a=a.next,r=r.baseState;var l=s=o=null,c=a;do{var u=c.lane;if((Xo&u)===u)null!==l&&(l=l.next={lane:0,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null}),r=c.eagerReducer===e?c.eagerState:e(r,c.action);else{var d={lane:u,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null};null===l?(s=l=d,o=r):l=l.next=d,Jo.lanes|=u,Us|=u}c=c.next}while(null!==c&&c!==a);null===l?o=r:l.next=s,cr(r,t.memoizedState)||(Mi=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=l,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function di(e){var t=li(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(null!==a){n.pending=null;var s=a=a.next;do{o=e(o,s.action),s=s.next}while(s!==a);cr(o,t.memoizedState)||(Mi=!0),t.memoizedState=o,null===t.baseQueue&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function pi(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(null!==a?e=a===r:(e=e.mutableReadLanes,(e=(Xo&e)===e)&&(t._workInProgressVersionPrimary=r,Wo.push(t))),e)return n(t._source);throw Wo.push(t),Error(i(350))}function fi(e,t,n,r){var a=Ps;if(null===a)throw Error(i(349));var o=t._getVersion,s=o(t._source),l=Yo.current,c=l.useState((function(){return pi(a,t,n)})),u=c[1],d=c[0];c=ti;var p=e.memoizedState,f=p.refs,m=f.getSnapshot,g=p.source;p=p.subscribe;var b=Jo;return e.memoizedState={refs:f,source:t,subscribe:r},l.useEffect((function(){f.getSnapshot=n,f.setSnapshot=u;var e=o(t._source);if(!cr(s,e)){e=n(t._source),cr(d,e)||(u(e),e=fl(b),a.mutableReadLanes|=e&a.pendingLanes),e=a.mutableReadLanes,a.entangledLanes|=e;for(var r=a.entanglements,i=e;0<i;){var l=31-qt(i),c=1<<l;r[l]|=e,i&=~c}}}),[n,t,r]),l.useEffect((function(){return r(t._source,(function(){var e=f.getSnapshot,n=f.setSnapshot;try{n(e(t._source));var r=fl(b);a.mutableReadLanes|=r&a.pendingLanes}catch(o){n((function(){throw o}))}}))}),[t,r]),cr(m,n)&&cr(g,t)&&cr(p,r)||((e={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:d}).dispatch=u=Oi.bind(null,Jo,e),c.queue=e,c.baseQueue=null,d=pi(a,t,n),c.memoizedState=c.baseState=d),d}function mi(e,t,n){return fi(li(),e,t,n)}function gi(e){var t=si();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:e}).dispatch=Oi.bind(null,Jo,e),[t.memoizedState,e]}function bi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=Jo.updateQueue)?(t={lastEffect:null},Jo.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function hi(e){return e={current:e},si().memoizedState=e}function vi(){return li().memoizedState}function yi(e,t,n,r){var a=si();Jo.flags|=e,a.memoizedState=bi(1|t,n,void 0,void 0===r?null:r)}function wi(e,t,n,r){var a=li();r=void 0===r?null:r;var o=void 0;if(null!==ei){var i=ei.memoizedState;if(o=i.destroy,null!==r&&oi(r,i.deps))return void bi(t,n,o,r)}Jo.flags|=e,a.memoizedState=bi(1|t,n,o,r)}function ki(e,t){return yi(516,4,e,t)}function _i(e,t){return wi(516,4,e,t)}function Si(e,t){return wi(4,2,e,t)}function Ei(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function xi(e,t,n){return n=null!=n?n.concat([e]):null,wi(4,2,Ei.bind(null,t,e),n)}function Ci(){}function Ti(e,t){var n=li();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Li(e,t){var n=li();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&oi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Ai(e,t){var n=qa();Ga(98>n?98:n,(function(){e(!0)})),Ga(97<n?97:n,(function(){var n=Ko.transition;Ko.transition=1;try{e(!1),t()}finally{Ko.transition=n}}))}function Oi(e,t,n){var r=pl(),a=fl(e),o={lane:a,action:n,eagerReducer:null,eagerState:null,next:null},i=t.pending;if(null===i?o.next=o:(o.next=i.next,i.next=o),t.pending=o,i=e.alternate,e===Jo||null!==i&&i===Jo)ri=ni=!0;else{if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var s=t.lastRenderedState,l=i(s,n);if(o.eagerReducer=i,o.eagerState=l,cr(l,s))return}catch(c){}ml(e,a,r)}}var Ri={readContext:oo,useCallback:ai,useContext:ai,useEffect:ai,useImperativeHandle:ai,useLayoutEffect:ai,useMemo:ai,useReducer:ai,useRef:ai,useState:ai,useDebugValue:ai,useDeferredValue:ai,useTransition:ai,useMutableSource:ai,useOpaqueIdentifier:ai,unstable_isNewReconciler:!1},Ni={readContext:oo,useCallback:function(e,t){return si().memoizedState=[e,void 0===t?null:t],e},useContext:oo,useEffect:ki,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,yi(4,2,Ei.bind(null,t,e),n)},useLayoutEffect:function(e,t){return yi(4,2,e,t)},useMemo:function(e,t){var n=si();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=si();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Oi.bind(null,Jo,e),[r.memoizedState,e]},useRef:hi,useState:gi,useDebugValue:Ci,useDeferredValue:function(e){var t=gi(e),n=t[0],r=t[1];return ki((function(){var t=Ko.transition;Ko.transition=1;try{r(e)}finally{Ko.transition=t}}),[e]),n},useTransition:function(){var e=gi(!1),t=e[0];return hi(e=Ai.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=si();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},fi(r,e,t,n)},useOpaqueIdentifier:function(){if(Uo){var e=!1,t=function(e){return{$$typeof:D,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Qr++).toString(36))),Error(i(355))})),n=gi(t)[1];return 0==(2&Jo.mode)&&(Jo.flags|=516,bi(5,(function(){n("r:"+(Qr++).toString(36))}),void 0,null)),t}return gi(t="r:"+(Qr++).toString(36)),t},unstable_isNewReconciler:!1},Pi={readContext:oo,useCallback:Ti,useContext:oo,useEffect:_i,useImperativeHandle:xi,useLayoutEffect:Si,useMemo:Li,useReducer:ui,useRef:vi,useState:function(){return ui(ci)},useDebugValue:Ci,useDeferredValue:function(e){var t=ui(ci),n=t[0],r=t[1];return _i((function(){var t=Ko.transition;Ko.transition=1;try{r(e)}finally{Ko.transition=t}}),[e]),n},useTransition:function(){var e=ui(ci)[0];return[vi().current,e]},useMutableSource:mi,useOpaqueIdentifier:function(){return ui(ci)[0]},unstable_isNewReconciler:!1},Ii={readContext:oo,useCallback:Ti,useContext:oo,useEffect:_i,useImperativeHandle:xi,useLayoutEffect:Si,useMemo:Li,useReducer:di,useRef:vi,useState:function(){return di(ci)},useDebugValue:Ci,useDeferredValue:function(e){var t=di(ci),n=t[0],r=t[1];return _i((function(){var t=Ko.transition;Ko.transition=1;try{r(e)}finally{Ko.transition=t}}),[e]),n},useTransition:function(){var e=di(ci)[0];return[vi().current,e]},useMutableSource:mi,useOpaqueIdentifier:function(){return di(ci)[0]},unstable_isNewReconciler:!1},Di=k.ReactCurrentOwner,Mi=!1;function ji(e,t,n,r){t.child=null===e?To(t,null,n,r):Co(t,e.child,n,r)}function Fi(e,t,n,r,a){n=n.render;var o=t.ref;return ao(t,a),r=ii(e,t,n,r,o,a),null===e||Mi?(t.flags|=1,ji(e,t,r,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,os(e,t,a))}function zi(e,t,n,r,a,o){if(null===e){var i=n.type;return"function"!=typeof i||Gl(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Vl(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Bi(e,t,i,r,a,o))}return i=e.child,0==(a&o)&&(a=i.memoizedProps,(n=null!==(n=n.compare)?n:dr)(a,r)&&e.ref===t.ref)?os(e,t,o):(t.flags|=1,(e=Zl(i,r)).ref=t.ref,e.return=t,t.child=e)}function Bi(e,t,n,r,a,o){if(null!==e&&dr(e.memoizedProps,r)&&e.ref===t.ref){if(Mi=!1,0==(o&a))return t.lanes=e.lanes,os(e,t,o);0!=(16384&e.flags)&&(Mi=!0)}return qi(e,t,n,r,o)}function Ui(e,t,n){var r=t.pendingProps,a=r.children,o=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(0==(4&t.mode))t.memoizedState={baseLanes:0},_l(t,n);else{if(0==(1073741824&n))return e=null!==o?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},_l(t,e),null;t.memoizedState={baseLanes:0},_l(t,null!==o?o.baseLanes:n)}else null!==o?(r=o.baseLanes|n,t.memoizedState=null):r=n,_l(t,r);return ji(e,t,a,n),t.child}function $i(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function qi(e,t,n,r,a){var o=ba(n)?ma:pa.current;return o=ga(t,o),ao(t,a),n=ii(e,t,n,r,o,a),null===e||Mi?(t.flags|=1,ji(e,t,n,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,os(e,t,a))}function Hi(e,t,n,r,a){if(ba(n)){var o=!0;wa(t)}else o=!1;if(ao(t,a),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),yo(t,n,r),ko(t,n,r,a),r=!0;else if(null===e){var i=t.stateNode,s=t.memoizedProps;i.props=s;var l=i.context,c=n.contextType;"object"==typeof c&&null!==c?c=oo(c):c=ga(t,c=ba(n)?ma:pa.current);var u=n.getDerivedStateFromProps,d="function"==typeof u||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==r||l!==c)&&wo(t,i,r,c),io=!1;var p=t.memoizedState;i.state=p,fo(t,r,i,a),l=t.memoizedState,s!==r||p!==l||fa.current||io?("function"==typeof u&&(bo(t,n,u,r),l=t.memoizedState),(s=io||vo(t,n,s,r,p,l,c))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4)):("function"==typeof i.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=l),i.props=r,i.state=l,i.context=c,r=s):("function"==typeof i.componentDidMount&&(t.flags|=4),r=!1)}else{i=t.stateNode,lo(e,t),s=t.memoizedProps,c=t.type===t.elementType?s:Ya(t.type,s),i.props=c,d=t.pendingProps,p=i.context,"object"==typeof(l=n.contextType)&&null!==l?l=oo(l):l=ga(t,l=ba(n)?ma:pa.current);var f=n.getDerivedStateFromProps;(u="function"==typeof f||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(s!==d||p!==l)&&wo(t,i,r,l),io=!1,p=t.memoizedState,i.state=p,fo(t,r,i,a);var m=t.memoizedState;s!==d||p!==m||fa.current||io?("function"==typeof f&&(bo(t,n,f,r),m=t.memoizedState),(c=io||vo(t,n,c,r,p,m,l))?(u||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,m,l),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,m,l)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=l,r=c):("function"!=typeof i.componentDidUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||s===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),r=!1)}return Gi(e,t,n,r,o,a)}function Gi(e,t,n,r,a,o){$i(e,t);var i=0!=(64&t.flags);if(!r&&!i)return a&&ka(t,n,!1),os(e,t,o);r=t.stateNode,Di.current=t;var s=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=Co(t,e.child,null,o),t.child=Co(t,null,s,o)):ji(e,t,s,o),t.memoizedState=r.state,a&&ka(t,n,!0),t.child}function Zi(e){var t=e.stateNode;t.pendingContext?va(0,t.pendingContext,t.pendingContext!==t.context):t.context&&va(0,t.context,!1),Po(e,t.containerInfo)}var Vi,Wi,Qi,Yi,Ki={dehydrated:null,retryLane:0};function Xi(e,t,n){var r,a=t.pendingProps,o=jo.current,i=!1;return(r=0!=(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&0!=(2&o)),r?(i=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===a.fallback||!0===a.unstable_avoidThisFallback||(o|=1),ua(jo,1&o),null===e?(void 0!==a.fallback&&Ho(t),e=a.children,o=a.fallback,i?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Ki,e):"number"==typeof a.unstable_expectedLoadTime?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Ki,t.lanes=33554432,e):((n=Ql({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,i?(a=ts(e,t,a.children,a.fallback,n),i=t.child,o=e.child.memoizedState,i.memoizedState=null===o?{baseLanes:n}:{baseLanes:o.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=Ki,a):(n=es(e,t,a.children,n),t.memoizedState=null,n))}function Ji(e,t,n,r){var a=e.mode,o=e.child;return t={mode:"hidden",children:t},0==(2&a)&&null!==o?(o.childLanes=0,o.pendingProps=t):o=Ql(t,a,0,null),n=Wl(n,a,r,null),o.return=e,n.return=e,o.sibling=n,e.child=o,n}function es(e,t,n,r){var a=e.child;return e=a.sibling,n=Zl(a,{mode:"visible",children:n}),0==(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function ts(e,t,n,r,a){var o=t.mode,i=e.child;e=i.sibling;var s={mode:"hidden",children:n};return 0==(2&o)&&t.child!==i?((n=t.child).childLanes=0,n.pendingProps=s,null!==(i=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=i,i.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Zl(i,s),null!==e?r=Zl(e,r):(r=Wl(r,o,a,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}function ns(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ro(e.return,t)}function rs(e,t,n,r,a,o){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a,lastEffect:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=a,i.lastEffect=o)}function as(e,t,n){var r=t.pendingProps,a=r.revealOrder,o=r.tail;if(ji(e,t,r.children,n),0!=(2&(r=jo.current)))r=1&r|2,t.flags|=64;else{if(null!==e&&0!=(64&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&ns(e,n);else if(19===e.tag)ns(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(ua(jo,r),0==(2&t.mode))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;null!==n;)null!==(e=n.alternate)&&null===Fo(e)&&(a=n),n=n.sibling;null===(n=a)?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),rs(t,!1,a,n,o,t.lastEffect);break;case"backwards":for(n=null,a=t.child,t.child=null;null!==a;){if(null!==(e=a.alternate)&&null===Fo(e)){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}rs(t,!0,n,null,o,t.lastEffect);break;case"together":rs(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function os(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Us|=t.lanes,0!=(n&t.childLanes)){if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=Zl(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Zl(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function is(e,t){if(!Uo)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ss(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:case 17:return ba(t.type)&&ha(),null;case 3:return Io(),ca(fa),ca(pa),Qo(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Zo(t)?t.flags|=4:r.hydrate||(t.flags|=256)),Wi(t),null;case 5:Mo(t);var o=No(Ro.current);if(n=t.type,null!==e&&null!=t.stateNode)Qi(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(i(166));return null}if(e=No(Ao.current),Zo(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[Kr]=t,r[Xr]=s,n){case"dialog":Ar("cancel",r),Ar("close",r);break;case"iframe":case"object":case"embed":Ar("load",r);break;case"video":case"audio":for(e=0;e<xr.length;e++)Ar(xr[e],r);break;case"source":Ar("error",r);break;case"img":case"image":case"link":Ar("error",r),Ar("load",r);break;case"details":Ar("toggle",r);break;case"input":ee(r,s),Ar("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},Ar("invalid",r);break;case"textarea":le(r,s),Ar("invalid",r)}for(var c in Se(n,s),e=null,s)s.hasOwnProperty(c)&&(o=s[c],"children"===c?"string"==typeof o?r.textContent!==o&&(e=["children",o]):"number"==typeof o&&r.textContent!==""+o&&(e=["children",""+o]):l.hasOwnProperty(c)&&null!=o&&"onScroll"===c&&Ar("scroll",r));switch(n){case"input":Y(r),re(r,s,!0);break;case"textarea":Y(r),ue(r);break;case"select":case"option":break;default:"function"==typeof s.onClick&&(r.onclick=zr)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(c=9===o.nodeType?o:o.ownerDocument,e===de.html&&(e=pe(n)),e===de.html?"script"===n?((e=c.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),"select"===n&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Kr]=t,e[Xr]=r,Vi(e,t,!1,!1),t.stateNode=e,c=Ee(n,r),n){case"dialog":Ar("cancel",e),Ar("close",e),o=r;break;case"iframe":case"object":case"embed":Ar("load",e),o=r;break;case"video":case"audio":for(o=0;o<xr.length;o++)Ar(xr[o],e);o=r;break;case"source":Ar("error",e),o=r;break;case"img":case"image":case"link":Ar("error",e),Ar("load",e),o=r;break;case"details":Ar("toggle",e),o=r;break;case"input":ee(e,r),o=J(e,r),Ar("invalid",e);break;case"option":o=oe(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=a({},r,{value:void 0}),Ar("invalid",e);break;case"textarea":le(e,r),o=se(e,r),Ar("invalid",e);break;default:o=r}Se(n,o);var u=o;for(s in u)if(u.hasOwnProperty(s)){var d=u[s];"style"===s?ke(e,d):"dangerouslySetInnerHTML"===s?null!=(d=d?d.__html:void 0)&&be(e,d):"children"===s?"string"==typeof d?("textarea"!==n||""!==d)&&he(e,d):"number"==typeof d&&he(e,""+d):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(l.hasOwnProperty(s)?null!=d&&"onScroll"===s&&Ar("scroll",e):null!=d&&w(e,s,d,c))}switch(n){case"input":Y(e),re(e,r,!1);break;case"textarea":Y(e),ue(e);break;case"option":null!=r.value&&e.setAttribute("value",""+W(r.value));break;case"select":e.multiple=!!r.multiple,null!=(s=r.value)?ie(e,!!r.multiple,s,!1):null!=r.defaultValue&&ie(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=zr)}$r(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)Yi(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));n=No(Ro.current),No(Ao.current),Zo(t)?(r=t.stateNode,n=t.memoizedProps,r[Kr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[Kr]=t,t.stateNode=r)}return null;case 13:return ca(jo),r=t.memoizedState,0!=(64&t.flags)?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Zo(t):n=null!==e.memoizedState,r&&!n&&0!=(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&jo.current)?0===Fs&&(Fs=3):(0!==Fs&&3!==Fs||(Fs=4),null===Ps||0==(134217727&Us)&&0==(134217727&$s)||vl(Ps,Ds))),(r||n)&&(t.flags|=4),null);case 4:return Io(),Wi(t),null===e&&Rr(t.stateNode.containerInfo),null;case 10:return no(t),null;case 19:if(ca(jo),null===(r=t.memoizedState))return null;if(s=0!=(64&t.flags),null===(c=r.rendering))if(s)is(r,!1);else{if(0!==Fs||null!==e&&0!=(64&e.flags))for(e=t.child;null!==e;){if(null!==(c=Fo(e))){for(t.flags|=64,is(r,!1),null!==(s=c.updateQueue)&&(t.updateQueue=s,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(s=n).flags&=2,s.nextEffect=null,s.firstEffect=null,s.lastEffect=null,null===(c=s.alternate)?(s.childLanes=0,s.lanes=e,s.child=null,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=c.childLanes,s.lanes=c.lanes,s.child=c.child,s.memoizedProps=c.memoizedProps,s.memoizedState=c.memoizedState,s.updateQueue=c.updateQueue,s.type=c.type,e=c.dependencies,s.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ua(jo,1&jo.current|2),t.child}e=e.sibling}null!==r.tail&&$a()>Zs&&(t.flags|=64,s=!0,is(r,!1),t.lanes=33554432)}else{if(!s)if(null!==(e=Fo(c))){if(t.flags|=64,s=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),is(r,!0),null===r.tail&&"hidden"===r.tailMode&&!c.alternate&&!Uo)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*$a()-r.renderingStartTime>Zs&&1073741824!==n&&(t.flags|=64,s=!0,is(r,!1),t.lanes=33554432);r.isBackwards?(c.sibling=t.child,t.child=c):(null!==(n=r.last)?n.sibling=c:t.child=c,r.last=c)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=$a(),n.sibling=null,t=jo.current,ua(jo,s?1&t|2:1&t),n):null;case 23:case 24:return Sl(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(i(156,t.tag))}function ls(e){switch(e.tag){case 1:ba(e.type)&&ha();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(Io(),ca(fa),ca(pa),Qo(),0!=(64&(t=e.flags)))throw Error(i(285));return e.flags=-4097&t|64,e;case 5:return Mo(e),null;case 13:return ca(jo),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return ca(jo),null;case 4:return Io(),null;case 10:return no(e),null;case 23:case 24:return Sl(),null;default:return null}}function cs(e,t){try{var n="",r=t;do{n+=Z(r),r=r.return}while(r);var a=n}catch(o){a="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:a}}function us(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}Vi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Wi=function(){},Qi=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,No(Ao.current);var i,s=null;switch(n){case"input":o=J(e,o),r=J(e,r),s=[];break;case"option":o=oe(e,o),r=oe(e,r),s=[];break;case"select":o=a({},o,{value:void 0}),r=a({},r,{value:void 0}),s=[];break;case"textarea":o=se(e,o),r=se(e,r),s=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=zr)}for(d in Se(n,r),n=null,o)if(!r.hasOwnProperty(d)&&o.hasOwnProperty(d)&&null!=o[d])if("style"===d){var c=o[d];for(i in c)c.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==d&&"children"!==d&&"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&"autoFocus"!==d&&(l.hasOwnProperty(d)?s||(s=[]):(s=s||[]).push(d,null));for(d in r){var u=r[d];if(c=null!=o?o[d]:void 0,r.hasOwnProperty(d)&&u!==c&&(null!=u||null!=c))if("style"===d)if(c){for(i in c)!c.hasOwnProperty(i)||u&&u.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in u)u.hasOwnProperty(i)&&c[i]!==u[i]&&(n||(n={}),n[i]=u[i])}else n||(s||(s=[]),s.push(d,n)),n=u;else"dangerouslySetInnerHTML"===d?(u=u?u.__html:void 0,c=c?c.__html:void 0,null!=u&&c!==u&&(s=s||[]).push(d,u)):"children"===d?"string"!=typeof u&&"number"!=typeof u||(s=s||[]).push(d,""+u):"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&(l.hasOwnProperty(d)?(null!=u&&"onScroll"===d&&Ar("scroll",e),s||c===u||(s=[])):"object"==typeof u&&null!==u&&u.$$typeof===D?u.toString():(s=s||[]).push(d,u))}n&&(s=s||[]).push("style",n);var d=s;(t.updateQueue=d)&&(t.flags|=4)}},Yi=function(e,t,n,r){n!==r&&(t.flags|=4)};var ds="function"==typeof WeakMap?WeakMap:Map;function ps(e,t,n){(n=co(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Ys||(Ys=!0,Ks=r),us(0,t)},n}function fs(e,t,n){(n=co(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var a=t.value;n.payload=function(){return us(0,t),r(a)}}var o=e.stateNode;return null!==o&&"function"==typeof o.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===Xs?Xs=new Set([this]):Xs.add(this),us(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var ms="function"==typeof WeakSet?WeakSet:Set;function gs(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(n){Bl(e,n)}else t.current=null}function bs(e,t){switch(t.tag){case 0:case 11:case 15:case 22:case 5:case 6:case 4:case 17:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Ya(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&Zr(t.stateNode.containerInfo))}throw Error(i(163))}function hs(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(3==(3&e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var a=e;r=a.next,0!=(4&(a=a.tag))&&0!=(1&a)&&(jl(n,e),Ml(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Ya(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&mo(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:case 1:e=n.child.stateNode}mo(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&$r(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:case 19:case 17:case 20:case 21:case 23:case 24:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&kt(n)))))}throw Error(i(163))}function vs(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var a=n.memoizedProps.style;a=null!=a&&a.hasOwnProperty("display")?a.display:null,r.style.display=we("display",a)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function ys(e,t){if(Sa&&"function"==typeof Sa.onCommitFiberUnmount)try{Sa.onCommitFiberUnmount(_a,t)}catch(o){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,a=r.destroy;if(r=r.tag,void 0!==a)if(0!=(4&r))jl(t,n);else{r=t;try{a()}catch(o){Bl(r,o)}}n=n.next}while(n!==e)}break;case 1:if(gs(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(o){Bl(t,o)}break;case 5:gs(t);break;case 4:xs(e,t)}}function ws(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function ks(e){return 5===e.tag||3===e.tag||4===e.tag}function _s(e){e:{for(var t=e.return;null!==t;){if(ks(t))break e;t=t.return}throw Error(i(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(i(161))}16&n.flags&&(he(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||ks(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?Ss(e,n,t):Es(e,n,t)}function Ss(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=zr));else if(4!==r&&null!==(e=e.child))for(Ss(e,t,n),e=e.sibling;null!==e;)Ss(e,t,n),e=e.sibling}function Es(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(Es(e,t,n),e=e.sibling;null!==e;)Es(e,t,n),e=e.sibling}function xs(e,t){for(var n,r,a=t,o=!1;;){if(!o){o=a.return;e:for(;;){if(null===o)throw Error(i(160));switch(n=o.stateNode,o.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}o=o.return}o=!0}if(5===a.tag||6===a.tag){e:for(var s=e,l=a,c=l;;)if(ys(s,c),null!==c.child&&4!==c.tag)c.child.return=c,c=c.child;else{if(c===l)break e;for(;null===c.sibling;){if(null===c.return||c.return===l)break e;c=c.return}c.sibling.return=c.return,c=c.sibling}r?(s=n,l=a.stateNode,8===s.nodeType?s.parentNode.removeChild(l):s.removeChild(l)):n.removeChild(a.stateNode)}else if(4===a.tag){if(null!==a.child){n=a.stateNode.containerInfo,r=!0,a.child.return=a,a=a.child;continue}}else if(ys(e,a),null!==a.child){a.child.return=a,a=a.child;continue}if(a===t)break;for(;null===a.sibling;){if(null===a.return||a.return===t)return;4===(a=a.return).tag&&(o=!1)}a.sibling.return=a.return,a=a.sibling}}function Cs(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{3==(3&r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:case 12:case 17:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var a=null!==e?e.memoizedProps:r;e=t.type;var o=t.updateQueue;if(t.updateQueue=null,null!==o){for(n[Xr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),Ee(e,a),t=Ee(e,r),a=0;a<o.length;a+=2){var s=o[a],l=o[a+1];"style"===s?ke(n,l):"dangerouslySetInnerHTML"===s?be(n,l):"children"===s?he(n,l):w(n,s,l,t)}switch(e){case"input":ne(n,r);break;case"textarea":ce(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(o=r.value)?ie(n,!!r.multiple,o,!1):e!==!!r.multiple&&(null!=r.defaultValue?ie(n,!!r.multiple,r.defaultValue,!0):ie(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(i(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,kt(n.containerInfo)));case 13:return null!==t.memoizedState&&(Gs=$a(),vs(t.child,!0)),void Ts(t);case 19:return void Ts(t);case 23:case 24:return void vs(t,null!==t.memoizedState)}throw Error(i(163))}function Ts(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new ms),t.forEach((function(t){var r=$l.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function Ls(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&(null!==(t=t.memoizedState)&&null===t.dehydrated)}var As=Math.ceil,Os=k.ReactCurrentDispatcher,Rs=k.ReactCurrentOwner,Ns=0,Ps=null,Is=null,Ds=0,Ms=0,js=la(0),Fs=0,zs=null,Bs=0,Us=0,$s=0,qs=0,Hs=null,Gs=0,Zs=1/0;function Vs(){Zs=$a()+500}var Ws,Qs=null,Ys=!1,Ks=null,Xs=null,Js=!1,el=null,tl=90,nl=[],rl=[],al=null,ol=0,il=null,sl=-1,ll=0,cl=0,ul=null,dl=!1;function pl(){return 0!=(48&Ns)?$a():-1!==sl?sl:sl=$a()}function fl(e){if(0==(2&(e=e.mode)))return 1;if(0==(4&e))return 99===qa()?1:2;if(0===ll&&(ll=Bs),0!==Qa.transition){0!==cl&&(cl=null!==Hs?Hs.pendingLanes:0),e=ll;var t=4186112&~cl;return 0===(t&=-t)&&(0===(t=(e=4186112&~e)&-e)&&(t=8192)),t}return e=qa(),0!=(4&Ns)&&98===e?e=zt(12,ll):e=zt(e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),ll),e}function ml(e,t,n){if(50<ol)throw ol=0,il=null,Error(i(185));if(null===(e=gl(e,t)))return null;$t(e,t,n),e===Ps&&($s|=t,4===Fs&&vl(e,Ds));var r=qa();1===t?0!=(8&Ns)&&0==(48&Ns)?yl(e):(bl(e,n),0===Ns&&(Vs(),Va())):(0==(4&Ns)||98!==r&&99!==r||(null===al?al=new Set([e]):al.add(e)),bl(e,n)),Hs=e}function gl(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function bl(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,s=e.pendingLanes;0<s;){var l=31-qt(s),c=1<<l,u=o[l];if(-1===u){if(0==(c&r)||0!=(c&a)){u=t,Mt(c);var d=Dt;o[l]=10<=d?u+250:6<=d?u+5e3:-1}}else u<=t&&(e.expiredLanes|=c);s&=~c}if(r=jt(e,e===Ps?Ds:0),t=Dt,0===r)null!==n&&(n!==Ma&&Ca(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==Ma&&Ca(n)}15===t?(n=yl.bind(null,e),null===Fa?(Fa=[n],za=xa(Ra,Wa)):Fa.push(n),n=Ma):14===t?n=Za(99,yl.bind(null,e)):(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(i(358,e))}}(t),n=Za(n,hl.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function hl(e){if(sl=-1,cl=ll=0,0!=(48&Ns))throw Error(i(327));var t=e.callbackNode;if(Dl()&&e.callbackNode!==t)return null;var n=jt(e,e===Ps?Ds:0);if(0===n)return null;var r=n,a=Ns;Ns|=16;var o=Cl();for(Ps===e&&Ds===r||(Vs(),El(e,r));;)try{Al();break}catch(l){xl(e,l)}if(to(),Os.current=o,Ns=a,null!==Is?r=0:(Ps=null,Ds=0,r=Fs),0!=(Bs&$s))El(e,0);else if(0!==r){if(2===r&&(Ns|=64,e.hydrate&&(e.hydrate=!1,Zr(e.containerInfo)),0!==(n=Ft(e))&&(r=Tl(e,n))),1===r)throw t=zs,El(e,0),vl(e,n),bl(e,$a()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(i(345));case 2:case 5:Nl(e);break;case 3:if(vl(e,n),(62914560&n)===n&&10<(r=Gs+500-$a())){if(0!==jt(e,0))break;if(((a=e.suspendedLanes)&n)!==n){pl(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Hr(Nl.bind(null,e),r);break}Nl(e);break;case 4:if(vl(e,n),(4186112&n)===n)break;for(r=e.eventTimes,a=-1;0<n;){var s=31-qt(n);o=1<<s,(s=r[s])>a&&(a=s),n&=~o}if(n=a,10<(n=(120>(n=$a()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*As(n/1960))-n)){e.timeoutHandle=Hr(Nl.bind(null,e),n);break}Nl(e);break;default:throw Error(i(329))}}return bl(e,$a()),e.callbackNode===t?hl.bind(null,e):null}function vl(e,t){for(t&=~qs,t&=~$s,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-qt(t),r=1<<n;e[n]=-1,t&=~r}}function yl(e){if(0!=(48&Ns))throw Error(i(327));if(Dl(),e===Ps&&0!=(e.expiredLanes&Ds)){var t=Ds,n=Tl(e,t);0!=(Bs&$s)&&(n=Tl(e,t=jt(e,t)))}else n=Tl(e,t=jt(e,0));if(0!==e.tag&&2===n&&(Ns|=64,e.hydrate&&(e.hydrate=!1,Zr(e.containerInfo)),0!==(t=Ft(e))&&(n=Tl(e,t))),1===n)throw n=zs,El(e,0),vl(e,t),bl(e,$a()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,Nl(e),bl(e,$a()),null}function wl(e,t){var n=Ns;Ns|=1;try{return e(t)}finally{0===(Ns=n)&&(Vs(),Va())}}function kl(e,t){var n=Ns;Ns&=-2,Ns|=8;try{return e(t)}finally{0===(Ns=n)&&(Vs(),Va())}}function _l(e,t){ua(js,Ms),Ms|=t,Bs|=t}function Sl(){Ms=js.current,ca(js)}function El(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Gr(n)),null!==Is)for(n=Is.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&ha();break;case 3:Io(),ca(fa),ca(pa),Qo();break;case 5:Mo(r);break;case 4:Io();break;case 13:case 19:ca(jo);break;case 10:no(r);break;case 23:case 24:Sl()}n=n.return}Ps=e,Is=Zl(e.current,null),Ds=Ms=Bs=t,Fs=0,zs=null,qs=$s=Us=0}function xl(e,t){for(;;){var n=Is;try{if(to(),Yo.current=Ri,ni){for(var r=Jo.memoizedState;null!==r;){var a=r.queue;null!==a&&(a.pending=null),r=r.next}ni=!1}if(Xo=0,ti=ei=Jo=null,ri=!1,Rs.current=null,null===n||null===n.return){Fs=1,zs=t,Is=null;break}e:{var o=e,i=n.return,s=n,l=t;if(t=Ds,s.flags|=2048,s.firstEffect=s.lastEffect=null,null!==l&&"object"==typeof l&&"function"==typeof l.then){var c=l;if(0==(2&s.mode)){var u=s.alternate;u?(s.updateQueue=u.updateQueue,s.memoizedState=u.memoizedState,s.lanes=u.lanes):(s.updateQueue=null,s.memoizedState=null)}var d=0!=(1&jo.current),p=i;do{var f;if(f=13===p.tag){var m=p.memoizedState;if(null!==m)f=null!==m.dehydrated;else{var g=p.memoizedProps;f=void 0!==g.fallback&&(!0!==g.unstable_avoidThisFallback||!d)}}if(f){var b=p.updateQueue;if(null===b){var h=new Set;h.add(c),p.updateQueue=h}else b.add(c);if(0==(2&p.mode)){if(p.flags|=64,s.flags|=16384,s.flags&=-2981,1===s.tag)if(null===s.alternate)s.tag=17;else{var v=co(-1,1);v.tag=2,uo(s,v)}s.lanes|=1;break e}l=void 0,s=t;var y=o.pingCache;if(null===y?(y=o.pingCache=new ds,l=new Set,y.set(c,l)):void 0===(l=y.get(c))&&(l=new Set,y.set(c,l)),!l.has(s)){l.add(s);var w=Ul.bind(null,o,c,s);c.then(w,w)}p.flags|=4096,p.lanes=t;break e}p=p.return}while(null!==p);l=Error((V(s.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Fs&&(Fs=2),l=cs(l,s),p=i;do{switch(p.tag){case 3:o=l,p.flags|=4096,t&=-t,p.lanes|=t,po(p,ps(0,o,t));break e;case 1:o=l;var k=p.type,_=p.stateNode;if(0==(64&p.flags)&&("function"==typeof k.getDerivedStateFromError||null!==_&&"function"==typeof _.componentDidCatch&&(null===Xs||!Xs.has(_)))){p.flags|=4096,t&=-t,p.lanes|=t,po(p,fs(p,o,t));break e}}p=p.return}while(null!==p)}Rl(n)}catch(S){t=S,Is===n&&null!==n&&(Is=n=n.return);continue}break}}function Cl(){var e=Os.current;return Os.current=Ri,null===e?Ri:e}function Tl(e,t){var n=Ns;Ns|=16;var r=Cl();for(Ps===e&&Ds===t||El(e,t);;)try{Ll();break}catch(a){xl(e,a)}if(to(),Ns=n,Os.current=r,null!==Is)throw Error(i(261));return Ps=null,Ds=0,Fs}function Ll(){for(;null!==Is;)Ol(Is)}function Al(){for(;null!==Is&&!Ta();)Ol(Is)}function Ol(e){var t=Ws(e.alternate,e,Ms);e.memoizedProps=e.pendingProps,null===t?Rl(e):Is=t,Rs.current=null}function Rl(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(2048&t.flags)){if(null!==(n=ss(n,t,Ms)))return void(Is=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||0!=(1073741824&Ms)||0==(4&n.mode)){for(var r=0,a=n.child;null!==a;)r|=a.lanes|a.childLanes,a=a.sibling;n.childLanes=r}null!==e&&0==(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}else{if(null!==(n=ls(t)))return n.flags&=2047,void(Is=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}if(null!==(t=t.sibling))return void(Is=t);Is=t=e}while(null!==t);0===Fs&&(Fs=5)}function Nl(e){var t=qa();return Ga(99,Pl.bind(null,e,t)),null}function Pl(e,t){do{Dl()}while(null!==el);if(0!=(48&Ns))throw Error(i(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null;var r=n.lanes|n.childLanes,a=r,o=e.pendingLanes&~a;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=a,e.mutableReadLanes&=a,e.entangledLanes&=a,a=e.entanglements;for(var s=e.eventTimes,l=e.expirationTimes;0<o;){var c=31-qt(o),u=1<<c;a[c]=0,s[c]=-1,l[c]=-1,o&=~u}if(null!==al&&0==(24&r)&&al.has(e)&&al.delete(e),e===Ps&&(Is=Ps=null,Ds=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(a=Ns,Ns|=32,Rs.current=null,Br=Wt,br(s=gr())){if("selectionStart"in s)l={start:s.selectionStart,end:s.selectionEnd};else e:if(l=(l=s.ownerDocument)&&l.defaultView||window,(u=l.getSelection&&l.getSelection())&&0!==u.rangeCount){l=u.anchorNode,o=u.anchorOffset,c=u.focusNode,u=u.focusOffset;try{l.nodeType,c.nodeType}catch(C){l=null;break e}var d=0,p=-1,f=-1,m=0,g=0,b=s,h=null;t:for(;;){for(var v;b!==l||0!==o&&3!==b.nodeType||(p=d+o),b!==c||0!==u&&3!==b.nodeType||(f=d+u),3===b.nodeType&&(d+=b.nodeValue.length),null!==(v=b.firstChild);)h=b,b=v;for(;;){if(b===s)break t;if(h===l&&++m===o&&(p=d),h===c&&++g===u&&(f=d),null!==(v=b.nextSibling))break;h=(b=h).parentNode}b=v}l=-1===p||-1===f?null:{start:p,end:f}}else l=null;l=l||{start:0,end:0}}else l=null;Ur={focusedElem:s,selectionRange:l},Wt=!1,ul=null,dl=!1,Qs=r;do{try{Il()}catch(C){if(null===Qs)throw Error(i(330));Bl(Qs,C),Qs=Qs.nextEffect}}while(null!==Qs);ul=null,Qs=r;do{try{for(s=e;null!==Qs;){var y=Qs.flags;if(16&y&&he(Qs.stateNode,""),128&y){var w=Qs.alternate;if(null!==w){var k=w.ref;null!==k&&("function"==typeof k?k(null):k.current=null)}}switch(1038&y){case 2:_s(Qs),Qs.flags&=-3;break;case 6:_s(Qs),Qs.flags&=-3,Cs(Qs.alternate,Qs);break;case 1024:Qs.flags&=-1025;break;case 1028:Qs.flags&=-1025,Cs(Qs.alternate,Qs);break;case 4:Cs(Qs.alternate,Qs);break;case 8:xs(s,l=Qs);var _=l.alternate;ws(l),null!==_&&ws(_)}Qs=Qs.nextEffect}}catch(C){if(null===Qs)throw Error(i(330));Bl(Qs,C),Qs=Qs.nextEffect}}while(null!==Qs);if(k=Ur,w=gr(),y=k.focusedElem,s=k.selectionRange,w!==y&&y&&y.ownerDocument&&mr(y.ownerDocument.documentElement,y)){null!==s&&br(y)&&(w=s.start,void 0===(k=s.end)&&(k=w),"selectionStart"in y?(y.selectionStart=w,y.selectionEnd=Math.min(k,y.value.length)):(k=(w=y.ownerDocument||document)&&w.defaultView||window).getSelection&&(k=k.getSelection(),l=y.textContent.length,_=Math.min(s.start,l),s=void 0===s.end?_:Math.min(s.end,l),!k.extend&&_>s&&(l=s,s=_,_=l),l=fr(y,_),o=fr(y,s),l&&o&&(1!==k.rangeCount||k.anchorNode!==l.node||k.anchorOffset!==l.offset||k.focusNode!==o.node||k.focusOffset!==o.offset)&&((w=w.createRange()).setStart(l.node,l.offset),k.removeAllRanges(),_>s?(k.addRange(w),k.extend(o.node,o.offset)):(w.setEnd(o.node,o.offset),k.addRange(w))))),w=[];for(k=y;k=k.parentNode;)1===k.nodeType&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for("function"==typeof y.focus&&y.focus(),y=0;y<w.length;y++)(k=w[y]).element.scrollLeft=k.left,k.element.scrollTop=k.top}Wt=!!Br,Ur=Br=null,e.current=n,Qs=r;do{try{for(y=e;null!==Qs;){var S=Qs.flags;if(36&S&&hs(y,Qs.alternate,Qs),128&S){w=void 0;var E=Qs.ref;if(null!==E){var x=Qs.stateNode;Qs.tag,w=x,"function"==typeof E?E(w):E.current=w}}Qs=Qs.nextEffect}}catch(C){if(null===Qs)throw Error(i(330));Bl(Qs,C),Qs=Qs.nextEffect}}while(null!==Qs);Qs=null,ja(),Ns=a}else e.current=n;if(Js)Js=!1,el=e,tl=t;else for(Qs=r;null!==Qs;)t=Qs.nextEffect,Qs.nextEffect=null,8&Qs.flags&&((S=Qs).sibling=null,S.stateNode=null),Qs=t;if(0===(r=e.pendingLanes)&&(Xs=null),1===r?e===il?ol++:(ol=0,il=e):ol=0,n=n.stateNode,Sa&&"function"==typeof Sa.onCommitFiberRoot)try{Sa.onCommitFiberRoot(_a,n,void 0,64==(64&n.current.flags))}catch(C){}if(bl(e,$a()),Ys)throw Ys=!1,e=Ks,Ks=null,e;return 0!=(8&Ns)||Va(),null}function Il(){for(;null!==Qs;){var e=Qs.alternate;dl||null===ul||(0!=(8&Qs.flags)?Je(Qs,ul)&&(dl=!0):13===Qs.tag&&Ls(e,Qs)&&Je(Qs,ul)&&(dl=!0));var t=Qs.flags;0!=(256&t)&&bs(e,Qs),0==(512&t)||Js||(Js=!0,Za(97,(function(){return Dl(),null}))),Qs=Qs.nextEffect}}function Dl(){if(90!==tl){var e=97<tl?97:tl;return tl=90,Ga(e,Fl)}return!1}function Ml(e,t){nl.push(t,e),Js||(Js=!0,Za(97,(function(){return Dl(),null})))}function jl(e,t){rl.push(t,e),Js||(Js=!0,Za(97,(function(){return Dl(),null})))}function Fl(){if(null===el)return!1;var e=el;if(el=null,0!=(48&Ns))throw Error(i(331));var t=Ns;Ns|=32;var n=rl;rl=[];for(var r=0;r<n.length;r+=2){var a=n[r],o=n[r+1],s=a.destroy;if(a.destroy=void 0,"function"==typeof s)try{s()}catch(c){if(null===o)throw Error(i(330));Bl(o,c)}}for(n=nl,nl=[],r=0;r<n.length;r+=2){a=n[r],o=n[r+1];try{var l=a.create;a.destroy=l()}catch(c){if(null===o)throw Error(i(330));Bl(o,c)}}for(l=e.current.firstEffect;null!==l;)e=l.nextEffect,l.nextEffect=null,8&l.flags&&(l.sibling=null,l.stateNode=null),l=e;return Ns=t,Va(),!0}function zl(e,t,n){uo(e,t=ps(0,t=cs(n,t),1)),t=pl(),null!==(e=gl(e,1))&&($t(e,1,t),bl(e,t))}function Bl(e,t){if(3===e.tag)zl(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){zl(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Xs||!Xs.has(r))){var a=fs(n,e=cs(t,e),1);if(uo(n,a),a=pl(),null!==(n=gl(n,1)))$t(n,1,a),bl(n,a);else if("function"==typeof r.componentDidCatch&&(null===Xs||!Xs.has(r)))try{r.componentDidCatch(t,e)}catch(o){}break}}n=n.return}}function Ul(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=pl(),e.pingedLanes|=e.suspendedLanes&n,Ps===e&&(Ds&n)===n&&(4===Fs||3===Fs&&(62914560&Ds)===Ds&&500>$a()-Gs?El(e,0):qs|=n),bl(e,t)}function $l(e,t){var n=e.stateNode;null!==n&&n.delete(t),0===(t=0)&&(0==(2&(t=e.mode))?t=1:0==(4&t)?t=99===qa()?1:2:(0===ll&&(ll=Bs),0===(t=Bt(62914560&~ll))&&(t=4194304))),n=pl(),null!==(e=gl(e,t))&&($t(e,t,n),bl(e,n))}function ql(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Hl(e,t,n,r){return new ql(e,t,n,r)}function Gl(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Zl(e,t){var n=e.alternate;return null===n?((n=Hl(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Vl(e,t,n,r,a,o){var s=2;if(r=e,"function"==typeof e)Gl(e)&&(s=1);else if("string"==typeof e)s=5;else e:switch(e){case E:return Wl(n.children,a,o,t);case M:s=8,a|=16;break;case x:s=8,a|=1;break;case C:return(e=Hl(12,n,t,8|a)).elementType=C,e.type=C,e.lanes=o,e;case O:return(e=Hl(13,n,t,a)).type=O,e.elementType=O,e.lanes=o,e;case R:return(e=Hl(19,n,t,a)).elementType=R,e.lanes=o,e;case j:return Ql(n,a,o,t);case F:return(e=Hl(24,n,t,a)).elementType=F,e.lanes=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case T:s=10;break e;case L:s=9;break e;case A:s=11;break e;case N:s=14;break e;case P:s=16,r=null;break e;case I:s=22;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Hl(s,n,t,a)).elementType=e,t.type=r,t.lanes=o,t}function Wl(e,t,n,r){return(e=Hl(7,e,r,t)).lanes=n,e}function Ql(e,t,n,r){return(e=Hl(23,e,r,t)).elementType=j,e.lanes=n,e}function Yl(e,t,n){return(e=Hl(6,e,null,t)).lanes=n,e}function Kl(e,t,n){return(t=Hl(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Xl(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Ut(0),this.expirationTimes=Ut(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ut(0),this.mutableSourceEagerHydrationData=null}function Jl(e,t,n,r){var a=t.current,o=pl(),s=fl(a);e:if(n){t:{if(Qe(n=n._reactInternals)!==n||1!==n.tag)throw Error(i(170));var l=n;do{switch(l.tag){case 3:l=l.stateNode.context;break t;case 1:if(ba(l.type)){l=l.stateNode.__reactInternalMemoizedMergedChildContext;break t}}l=l.return}while(null!==l);throw Error(i(171))}if(1===n.tag){var c=n.type;if(ba(c)){n=ya(n,c,l);break e}}n=l}else n=da;return null===t.context?t.context=n:t.pendingContext=n,(t=co(o,s)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),uo(a,t),ml(a,s,o),s}function ec(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function tc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function nc(e,t){tc(e,t),(e=e.alternate)&&tc(e,t)}function rc(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Xl(e,t,null!=n&&!0===n.hydrate),t=Hl(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,so(t),e[Jr]=n.current,Rr(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var a=(t=r[e])._getVersion;a=a(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,a]:n.mutableSourceEagerHydrationData.push(t,a)}this._internalRoot=n}function ac(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function oc(e,t,n,r,a){var o=n._reactRootContainer;if(o){var i=o._internalRoot;if("function"==typeof a){var s=a;a=function(){var e=ec(i);s.call(e)}}Jl(t,i,e,a)}else{if(o=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new rc(e,0,t?{hydrate:!0}:void 0)}(n,r),i=o._internalRoot,"function"==typeof a){var l=a;a=function(){var e=ec(i);l.call(e)}}kl((function(){Jl(t,i,e,a)}))}return ec(i)}function ic(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!ac(t))throw Error(i(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:S,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)}Ws=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||fa.current)Mi=!0;else{if(0==(n&r)){switch(Mi=!1,t.tag){case 3:Zi(t),Vo();break;case 5:Do(t);break;case 1:ba(t.type)&&wa(t);break;case 4:Po(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var a=t.type._context;ua(Ka,a._currentValue),a._currentValue=r;break;case 13:if(null!==t.memoizedState)return 0!=(n&t.child.childLanes)?Xi(e,t,n):(ua(jo,1&jo.current),null!==(t=os(e,t,n))?t.sibling:null);ua(jo,1&jo.current);break;case 19:if(r=0!=(n&t.childLanes),0!=(64&e.flags)){if(r)return as(e,t,n);t.flags|=64}if(null!==(a=t.memoizedState)&&(a.rendering=null,a.tail=null,a.lastEffect=null),ua(jo,jo.current),r)break;return null;case 23:case 24:return t.lanes=0,Ui(e,t,n)}return os(e,t,n)}Mi=0!=(16384&e.flags)}else Mi=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=ga(t,pa.current),ao(t,n),a=ii(null,t,r,e,a,n),t.flags|=1,"object"==typeof a&&null!==a&&"function"==typeof a.render&&void 0===a.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,ba(r)){var o=!0;wa(t)}else o=!1;t.memoizedState=null!==a.state&&void 0!==a.state?a.state:null,so(t);var s=r.getDerivedStateFromProps;"function"==typeof s&&bo(t,r,s,e),a.updater=ho,t.stateNode=a,a._reactInternals=t,ko(t,r,e,n),t=Gi(null,t,r,!0,o,n)}else t.tag=0,ji(null,t,a,n),t=t.child;return t;case 16:a=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"==typeof e)return Gl(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===N)return 14}return 2}(a),e=Ya(a,e),o){case 0:t=qi(null,t,a,e,n);break e;case 1:t=Hi(null,t,a,e,n);break e;case 11:t=Fi(null,t,a,e,n);break e;case 14:t=zi(null,t,a,Ya(a.type,e),r,n);break e}throw Error(i(306,a,""))}return t;case 0:return r=t.type,a=t.pendingProps,qi(e,t,r,a=t.elementType===r?a:Ya(r,a),n);case 1:return r=t.type,a=t.pendingProps,Hi(e,t,r,a=t.elementType===r?a:Ya(r,a),n);case 3:if(Zi(t),r=t.updateQueue,null===e||null===r)throw Error(i(282));if(r=t.pendingProps,a=null!==(a=t.memoizedState)?a.element:null,lo(e,t),fo(t,r,null,n),(r=t.memoizedState.element)===a)Vo(),t=os(e,t,n);else{if((o=(a=t.stateNode).hydrate)&&(Bo=Vr(t.stateNode.containerInfo.firstChild),zo=t,o=Uo=!0),o){if(null!=(e=a.mutableSourceEagerHydrationData))for(a=0;a<e.length;a+=2)(o=e[a])._workInProgressVersionPrimary=e[a+1],Wo.push(o);for(n=To(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else ji(e,t,r,n),Vo();t=t.child}return t;case 5:return Do(t),null===e&&Ho(t),r=t.type,a=t.pendingProps,o=null!==e?e.memoizedProps:null,s=a.children,qr(r,a)?s=null:null!==o&&qr(r,o)&&(t.flags|=16),$i(e,t),ji(e,t,s,n),t.child;case 6:return null===e&&Ho(t),null;case 13:return Xi(e,t,n);case 4:return Po(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Co(t,null,r,n):ji(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,Fi(e,t,r,a=t.elementType===r?a:Ya(r,a),n);case 7:return ji(e,t,t.pendingProps,n),t.child;case 8:case 12:return ji(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,a=t.pendingProps,s=t.memoizedProps,o=a.value;var l=t.type._context;if(ua(Ka,l._currentValue),l._currentValue=o,null!==s)if(l=s.value,0===(o=cr(l,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(l,o):1073741823))){if(s.children===a.children&&!fa.current){t=os(e,t,n);break e}}else for(null!==(l=t.child)&&(l.return=t);null!==l;){var c=l.dependencies;if(null!==c){s=l.child;for(var u=c.firstContext;null!==u;){if(u.context===r&&0!=(u.observedBits&o)){1===l.tag&&((u=co(-1,n&-n)).tag=2,uo(l,u)),l.lanes|=n,null!==(u=l.alternate)&&(u.lanes|=n),ro(l.return,n),c.lanes|=n;break}u=u.next}}else s=10===l.tag&&l.type===t.type?null:l.child;if(null!==s)s.return=l;else for(s=l;null!==s;){if(s===t){s=null;break}if(null!==(l=s.sibling)){l.return=s.return,s=l;break}s=s.return}l=s}ji(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=(o=t.pendingProps).children,ao(t,n),r=r(a=oo(a,o.unstable_observedBits)),t.flags|=1,ji(e,t,r,n),t.child;case 14:return o=Ya(a=t.type,t.pendingProps),zi(e,t,a,o=Ya(a.type,o),r,n);case 15:return Bi(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ya(r,a),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,ba(r)?(e=!0,wa(t)):e=!1,ao(t,n),yo(t,r,a),ko(t,r,a,n),Gi(null,t,r,!0,e,n);case 19:return as(e,t,n);case 23:case 24:return Ui(e,t,n)}throw Error(i(156,t.tag))},rc.prototype.render=function(e){Jl(e,this._internalRoot,null,null)},rc.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;Jl(null,e,null,(function(){t[Jr]=null}))},et=function(e){13===e.tag&&(ml(e,4,pl()),nc(e,4))},tt=function(e){13===e.tag&&(ml(e,67108864,pl()),nc(e,67108864))},nt=function(e){if(13===e.tag){var t=pl(),n=fl(e);ml(e,n,t),nc(e,n)}},rt=function(e,t){return t()},Ce=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=aa(r);if(!a)throw Error(i(90));K(r),ne(r,a)}}}break;case"textarea":ce(e,n);break;case"select":null!=(t=n.value)&&ie(e,!!n.multiple,t,!1)}},Ne=wl,Pe=function(e,t,n,r,a){var o=Ns;Ns|=4;try{return Ga(98,e.bind(null,t,n,r,a))}finally{0===(Ns=o)&&(Vs(),Va())}},Ie=function(){0==(49&Ns)&&(function(){if(null!==al){var e=al;al=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,bl(e,$a())}))}Va()}(),Dl())},De=function(e,t){var n=Ns;Ns|=2;try{return e(t)}finally{0===(Ns=n)&&(Vs(),Va())}};var sc={Events:[na,ra,aa,Oe,Re,Dl,{current:!1}]},lc={findFiberByHostInstance:ta,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},cc={bundleType:lc.bundleType,version:lc.version,rendererPackageName:lc.rendererPackageName,rendererConfig:lc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:k.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Xe(e))?null:e.stateNode},findFiberByHostInstance:lc.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var uc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!uc.isDisabled&&uc.supportsFiber)try{_a=uc.inject(cc),Sa=uc}catch(ge){}}t.hydrate=function(e,t,n){if(!ac(t))throw Error(i(200));return oc(null,e,t,!0,n)}},73935:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(64448)},69590:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,r="function"==typeof Set,a="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var s,l,c,u;if(Array.isArray(e)){if((s=e.length)!=i.length)return!1;for(l=s;0!=l--;)if(!o(e[l],i[l]))return!1;return!0}if(n&&e instanceof Map&&i instanceof Map){if(e.size!==i.size)return!1;for(u=e.entries();!(l=u.next()).done;)if(!i.has(l.value[0]))return!1;for(u=e.entries();!(l=u.next()).done;)if(!o(l.value[1],i.get(l.value[0])))return!1;return!0}if(r&&e instanceof Set&&i instanceof Set){if(e.size!==i.size)return!1;for(u=e.entries();!(l=u.next()).done;)if(!i.has(l.value[0]))return!1;return!0}if(a&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(i)){if((s=e.length)!=i.length)return!1;for(l=s;0!=l--;)if(e[l]!==i[l])return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"==typeof e.valueOf&&"function"==typeof i.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString&&"function"==typeof e.toString&&"function"==typeof i.toString)return e.toString()===i.toString();if((s=(c=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(l=s;0!=l--;)if(!Object.prototype.hasOwnProperty.call(i,c[l]))return!1;if(t&&e instanceof Element)return!1;for(l=s;0!=l--;)if(("_owner"!==c[l]&&"__v"!==c[l]&&"__o"!==c[l]||!e.$$typeof)&&!o(e[c[l]],i[c[l]]))return!1;return!0}return e!=e&&i!=i}e.exports=function(e,t){try{return o(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},70405:(e,t,n)=>{"use strict";n.d(t,{B6:()=>G,ql:()=>J});var r=n(67294),a=n(45697),o=n.n(a),i=n(69590),s=n.n(i),l=n(41143),c=n.n(l),u=n(96774),d=n.n(u);function p(){return p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}function f(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function g(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(a[n]=e[n]);return a}var b={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},h={rel:["amphtml","canonical","alternate"]},v={type:["application/ld+json"]},y={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},w=Object.keys(b).map((function(e){return b[e]})),k={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},_=Object.keys(k).reduce((function(e,t){return e[k[t]]=t,e}),{}),S=function(e,t){for(var n=e.length-1;n>=0;n-=1){var r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},E=function(e){var t=S(e,b.TITLE),n=S(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var r=S(e,"defaultTitle");return t||r||void 0},x=function(e){return S(e,"onChangeClientState")||function(){}},C=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return p({},e,t)}),{})},T=function(e,t){return t.filter((function(e){return void 0!==e[b.BASE]})).map((function(e){return e[b.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),a=0;a<r.length;a+=1){var o=r[a].toLowerCase();if(-1!==e.indexOf(o)&&n[o])return t.concat(n)}return t}),[])},L=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&console&&"function"==typeof console.warn&&console.warn("Helmet: "+e+' should be of type "Array". Instead found type "'+typeof t[e]+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var a={};n.filter((function(e){for(var n,o=Object.keys(e),i=0;i<o.length;i+=1){var s=o[i],l=s.toLowerCase();-1===t.indexOf(l)||"rel"===n&&"canonical"===e[n].toLowerCase()||"rel"===l&&"stylesheet"===e[l].toLowerCase()||(n=l),-1===t.indexOf(s)||"innerHTML"!==s&&"cssText"!==s&&"itemprop"!==s||(n=s)}if(!n||!e[n])return!1;var c=e[n].toLowerCase();return r[n]||(r[n]={}),a[n]||(a[n]={}),!r[n][c]&&(a[n][c]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var o=Object.keys(a),i=0;i<o.length;i+=1){var s=o[i],l=p({},r[s],a[s]);r[s]=l}return e}),[]).reverse()},A=function(e,t){if(Array.isArray(e)&&e.length)for(var n=0;n<e.length;n+=1)if(e[n][t])return!0;return!1},O=function(e){return Array.isArray(e)?e.join(""):e},R=function(e,t){return Array.isArray(e)?e.reduce((function(e,n){return function(e,t){for(var n=Object.keys(e),r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1}(n,t)?e.priority.push(n):e.default.push(n),e}),{priority:[],default:[]}):{default:e}},N=function(e,t){var n;return p({},e,((n={})[t]=void 0,n))},P=[b.NOSCRIPT,b.SCRIPT,b.STYLE],I=function(e,t){return void 0===t&&(t=!0),!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},D=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},M=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[k[n]||n]=e[n],t}),t)},j=function(e,t){return t.map((function(t,n){var a,o=((a={key:n})["data-rh"]=!0,a);return Object.keys(t).forEach((function(e){var n=k[e]||e;"innerHTML"===n||"cssText"===n?o.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:o[n]=t[e]})),r.createElement(e,o)}))},F=function(e,t,n){switch(e){case b.TITLE:return{toComponent:function(){return n=t.titleAttributes,(a={key:e=t.title})["data-rh"]=!0,o=M(n,a),[r.createElement(b.TITLE,o,e)];var e,n,a,o},toString:function(){return function(e,t,n,r){var a=D(n),o=O(t);return a?"<"+e+' data-rh="true" '+a+">"+I(o,r)+"</"+e+">":"<"+e+' data-rh="true">'+I(o,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return M(t)},toString:function(){return D(t)}};default:return{toComponent:function(){return j(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var a=Object.keys(r).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var a=void 0===r[t]?t:t+'="'+I(r[t],n)+'"';return e?e+" "+a:a}),""),o=r.innerHTML||r.cssText||"",i=-1===P.indexOf(e);return t+"<"+e+' data-rh="true" '+a+(i?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},z=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,a=e.htmlAttributes,o=e.noscriptTags,i=e.styleTags,s=e.title,l=void 0===s?"":s,c=e.titleAttributes,u=e.linkTags,d=e.metaTags,p=e.scriptTags,f={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,a=R(e.metaTags,y),o=R(t,h),i=R(n,v);return{priorityMethods:{toComponent:function(){return[].concat(j(b.META,a.priority),j(b.LINK,o.priority),j(b.SCRIPT,i.priority))},toString:function(){return F(b.META,a.priority,r)+" "+F(b.LINK,o.priority,r)+" "+F(b.SCRIPT,i.priority,r)}},metaTags:a.default,linkTags:o.default,scriptTags:i.default}}(e);f=m.priorityMethods,u=m.linkTags,d=m.metaTags,p=m.scriptTags}return{priority:f,base:F(b.BASE,t,r),bodyAttributes:F("bodyAttributes",n,r),htmlAttributes:F("htmlAttributes",a,r),link:F(b.LINK,u,r),meta:F(b.META,d,r),noscript:F(b.NOSCRIPT,o,r),script:F(b.SCRIPT,p,r),style:F(b.STYLE,i,r),title:F(b.TITLE,{title:l,titleAttributes:c},r)}},B=[],U=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?B:n.instances},add:function(e){(n.canUseDOM?B:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?B:n.instances).indexOf(e);(n.canUseDOM?B:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=z({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},$=r.createContext({}),q=o().shape({setHelmet:o().func,helmetInstances:o().shape({get:o().func,add:o().func,remove:o().func})}),H="undefined"!=typeof document,G=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new U(r.props.context,t.canUseDOM),r}return f(t,e),t.prototype.render=function(){return r.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);G.canUseDOM=H,G.propTypes={context:o().shape({helmet:o().shape()}),children:o().node.isRequired},G.defaultProps={context:{}},G.displayName="HelmetProvider";var Z=function(e,t){var n,r=document.head||document.querySelector(b.HEAD),a=r.querySelectorAll(e+"[data-rh]"),o=[].slice.call(a),i=[];return t&&t.length&&t.forEach((function(t){var r=document.createElement(e);for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&("innerHTML"===a?r.innerHTML=t.innerHTML:"cssText"===a?r.styleSheet?r.styleSheet.cssText=t.cssText:r.appendChild(document.createTextNode(t.cssText)):r.setAttribute(a,void 0===t[a]?"":t[a]));r.setAttribute("data-rh","true"),o.some((function(e,t){return n=t,r.isEqualNode(e)}))?o.splice(n,1):i.push(r)})),o.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return r.appendChild(e)})),{oldTags:o,newTags:i}},V=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-rh"),a=r?r.split(","):[],o=[].concat(a),i=Object.keys(t),s=0;s<i.length;s+=1){var l=i[s],c=t[l]||"";n.getAttribute(l)!==c&&n.setAttribute(l,c),-1===a.indexOf(l)&&a.push(l);var u=o.indexOf(l);-1!==u&&o.splice(u,1)}for(var d=o.length-1;d>=0;d-=1)n.removeAttribute(o[d]);a.length===o.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==i.join(",")&&n.setAttribute("data-rh",i.join(","))}},W=function(e,t){var n=e.baseTag,r=e.htmlAttributes,a=e.linkTags,o=e.metaTags,i=e.noscriptTags,s=e.onChangeClientState,l=e.scriptTags,c=e.styleTags,u=e.title,d=e.titleAttributes;V(b.BODY,e.bodyAttributes),V(b.HTML,r),function(e,t){void 0!==e&&document.title!==e&&(document.title=O(e)),V(b.TITLE,t)}(u,d);var p={baseTag:Z(b.BASE,n),linkTags:Z(b.LINK,a),metaTags:Z(b.META,o),noscriptTags:Z(b.NOSCRIPT,i),scriptTags:Z(b.SCRIPT,l),styleTags:Z(b.STYLE,c)},f={},m={};Object.keys(p).forEach((function(e){var t=p[e],n=t.newTags,r=t.oldTags;n.length&&(f[e]=n),r.length&&(m[e]=p[e].oldTags)})),t&&t(),s(e,f,m)},Q=null,Y=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).rendered=!1,t}f(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!d()(e,this.props)},n.componentDidUpdate=function(){this.emitChange()},n.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},n.emitChange=function(){var e,t,n=this.props.context,r=n.setHelmet,a=null,o=(e=n.helmetInstances.get().map((function(e){var t=p({},e.props);return delete t.context,t})),{baseTag:T(["href"],e),bodyAttributes:C("bodyAttributes",e),defer:S(e,"defer"),encode:S(e,"encodeSpecialCharacters"),htmlAttributes:C("htmlAttributes",e),linkTags:L(b.LINK,["rel","href"],e),metaTags:L(b.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:L(b.NOSCRIPT,["innerHTML"],e),onChangeClientState:x(e),scriptTags:L(b.SCRIPT,["src","innerHTML"],e),styleTags:L(b.STYLE,["cssText"],e),title:E(e),titleAttributes:C("titleAttributes",e),prioritizeSeoTags:A(e,"prioritizeSeoTags")});G.canUseDOM?(t=o,Q&&cancelAnimationFrame(Q),t.defer?Q=requestAnimationFrame((function(){W(t,(function(){Q=null}))})):(W(t),Q=null)):z&&(a=z(o)),r(a)},n.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},n.render=function(){return this.init(),null},t}(r.Component);Y.propTypes={context:q.isRequired},Y.displayName="HelmetDispatcher";var K=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}f(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!s()(N(this.props,"helmetData"),N(e,"helmetData"))},n.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case b.SCRIPT:case b.NOSCRIPT:return{innerHTML:t};case b.STYLE:return{cssText:t};default:throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren;return p({},r,((t={})[n.type]=[].concat(r[n.type]||[],[p({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,r=e.child,a=e.newProps,o=e.newChildProps,i=e.nestedChildren;switch(r.type){case b.TITLE:return p({},a,((t={})[r.type]=i,t.titleAttributes=p({},o),t));case b.BODY:return p({},a,{bodyAttributes:p({},o)});case b.HTML:return p({},a,{htmlAttributes:p({},o)});default:return p({},a,((n={})[r.type]=p({},o),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=p({},t);return Object.keys(e).forEach((function(t){var r;n=p({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return c()(w.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+w.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),c()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``}</"+e.type+"> ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,a={};return r.Children.forEach(e,(function(e){if(e&&e.props){var r=e.props,o=r.children,i=g(r,K),s=Object.keys(i).reduce((function(e,t){return e[_[t]||t]=i[t],e}),{}),l=e.type;switch("symbol"==typeof l?l=l.toString():n.warnOnInvalidChildren(e,o),l){case b.FRAGMENT:t=n.mapChildrenToProps(o,t);break;case b.LINK:case b.META:case b.NOSCRIPT:case b.SCRIPT:case b.STYLE:a=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:a,newChildProps:s,nestedChildren:o});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:s,nestedChildren:o})}}})),this.mapArrayTypeChildrenToProps(a,t)},n.render=function(){var e=this.props,t=e.children,n=g(e,X),a=p({},n),o=n.helmetData;return t&&(a=this.mapChildrenToProps(t,a)),!o||o instanceof U||(o=new U(o.context,o.instances)),o?r.createElement(Y,p({},a,{context:o.value,helmetData:void 0})):r.createElement($.Consumer,null,(function(e){return r.createElement(Y,p({},a,{context:e}))}))},t}(r.Component);J.propTypes={base:o().object,bodyAttributes:o().object,children:o().oneOfType([o().arrayOf(o().node),o().node]),defaultTitle:o().string,defer:o().bool,encodeSpecialCharacters:o().bool,htmlAttributes:o().object,link:o().arrayOf(o().object),meta:o().arrayOf(o().object),noscript:o().arrayOf(o().object),onChangeClientState:o().func,script:o().arrayOf(o().object),style:o().arrayOf(o().object),title:o().string,titleAttributes:o().object,titleTemplate:o().string,prioritizeSeoTags:o().bool,helmetData:o().object},J.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},J.displayName="Helmet"},69921:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,a=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,f=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,g=n?Symbol.for("react.memo"):60115,b=n?Symbol.for("react.lazy"):60116,h=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,y=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function k(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case o:case s:case i:case f:return e;default:switch(e=e&&e.$$typeof){case c:case p:case b:case g:case l:return e;default:return t}}case a:return t}}}function _(e){return k(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=l,t.Element=r,t.ForwardRef=p,t.Fragment=o,t.Lazy=b,t.Memo=g,t.Portal=a,t.Profiler=s,t.StrictMode=i,t.Suspense=f,t.isAsyncMode=function(e){return _(e)||k(e)===u},t.isConcurrentMode=_,t.isContextConsumer=function(e){return k(e)===c},t.isContextProvider=function(e){return k(e)===l},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return k(e)===p},t.isFragment=function(e){return k(e)===o},t.isLazy=function(e){return k(e)===b},t.isMemo=function(e){return k(e)===g},t.isPortal=function(e){return k(e)===a},t.isProfiler=function(e){return k(e)===s},t.isStrictMode=function(e){return k(e)===i},t.isSuspense=function(e){return k(e)===f},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===o||e===d||e===s||e===i||e===f||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===b||e.$$typeof===g||e.$$typeof===l||e.$$typeof===c||e.$$typeof===p||e.$$typeof===v||e.$$typeof===y||e.$$typeof===w||e.$$typeof===h)},t.typeOf=k},59864:(e,t,n)=>{"use strict";e.exports=n(69921)},68356:(e,t,n)=>{"use strict";function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function a(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var s=n(67294),l=n(45697),c=[],u=[];function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function p(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var a=d(e[r]);a.loading?t.loading=!0:(t.loaded[r]=a.loaded,t.error=a.error),n.push(a.promise),a.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function f(e,t){return s.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,p;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:f,webpack:null,modules:null},t),g=null;function b(){return g||(g=e(m.loader)),g.promise}return c.push(b),"function"==typeof m.webpack&&u.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return b()})),p=d=function(t){function n(n){var r;return o(a(a(r=t.call(this,n)||this)),"retry",(function(){r.setState({error:null,loading:!0,timedOut:!1}),g=e(m.loader),r._loadModule()})),b(),r.state={error:g.error,pastDelay:!1,timedOut:!1,loading:g.loading,loaded:g.loaded},r}r(n,t),n.preload=function(){return b()};var i=n.prototype;return i.UNSAFE_componentWillMount=function(){this._loadModule()},i.componentDidMount=function(){this._mounted=!0},i._loadModule=function(){var e=this;if(this.context.loadable&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.loadable.report(t)})),g.loading){var t=function(t){e._mounted&&e.setState(t)};"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){t({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){t({timedOut:!0})}),m.timeout));var n=function(){t({error:g.error,loaded:g.loaded,loading:g.loading}),e._clearTimeouts()};g.promise.then((function(){return n(),null})).catch((function(e){return n(),null}))}},i.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},i._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},i.render=function(){return this.state.loading||this.state.error?s.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(s.Component),o(d,"contextTypes",{loadable:l.shape({report:l.func.isRequired})}),p}function g(e){return m(d,e)}g.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(p,e)};var b=function(e){function t(){return e.apply(this,arguments)||this}r(t,e);var n=t.prototype;return n.getChildContext=function(){return{loadable:{report:this.props.report}}},n.render=function(){return s.Children.only(this.props.children)},t}(s.Component);function h(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return h(e)}))}o(b,"propTypes",{report:l.func.isRequired}),o(b,"childContextTypes",{loadable:l.shape({report:l.func.isRequired}).isRequired}),g.Capture=b,g.preloadAll=function(){return new Promise((function(e,t){h(c).then(e,t)}))},g.preloadReady=function(){return new Promise((function(e,t){h(u).then(e,e)}))},e.exports=g},18790:(e,t,n)=>{"use strict";n.d(t,{H:()=>s,f:()=>i});var r=n(16550),a=n(87462),o=n(67294);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var a=e.path?(0,r.LX)(t,e):n.length?n[n.length-1].match:r.F0.computeRootMatch(t);return a&&(n.push({route:e,match:a}),e.routes&&i(e.routes,t,n)),a})),n}function s(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?o.createElement(r.rs,n,e.map((function(e,n){return o.createElement(r.AW,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,a.Z)({},n,{},t,{route:e})):o.createElement(e.component,(0,a.Z)({},n,t,{route:e}))}})}))):null}},73727:(e,t,n)=>{"use strict";n.d(t,{OL:()=>y,VK:()=>u,rU:()=>b});var r=n(16550),a=n(75068),o=n(67294),i=n(99318),s=n(87462),l=n(63366),c=n(38776),u=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.lX)(t.props),t}return(0,a.Z)(t,e),t.prototype.render=function(){return o.createElement(r.F0,{history:this.history,children:this.props.children})},t}(o.Component);o.Component;var d=function(e,t){return"function"==typeof e?e(t):e},p=function(e,t){return"string"==typeof e?(0,i.ob)(e,null,null,t):e},f=function(e){return e},m=o.forwardRef;void 0===m&&(m=f);var g=m((function(e,t){var n=e.innerRef,r=e.navigate,a=e.onClick,i=(0,l.Z)(e,["innerRef","navigate","onClick"]),c=i.target,u=(0,s.Z)({},i,{onClick:function(e){try{a&&a(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||c&&"_self"!==c||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return u.ref=f!==m&&t||n,o.createElement("a",u)}));var b=m((function(e,t){var n=e.component,a=void 0===n?g:n,u=e.replace,b=e.to,h=e.innerRef,v=(0,l.Z)(e,["component","replace","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,c.Z)(!1);var n=e.history,r=p(d(b,e.location),e.location),l=r?n.createHref(r):"",g=(0,s.Z)({},v,{href:l,navigate:function(){var t=d(b,e.location),r=(0,i.Ep)(e.location)===(0,i.Ep)(p(t));(u||r?n.replace:n.push)(t)}});return f!==m?g.ref=t||h:g.innerRef=h,o.createElement(a,g)}))})),h=function(e){return e},v=o.forwardRef;void 0===v&&(v=h);var y=v((function(e,t){var n=e["aria-current"],a=void 0===n?"page":n,i=e.activeClassName,u=void 0===i?"active":i,f=e.activeStyle,m=e.className,g=e.exact,y=e.isActive,w=e.location,k=e.sensitive,_=e.strict,S=e.style,E=e.to,x=e.innerRef,C=(0,l.Z)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,c.Z)(!1);var n=w||e.location,i=p(d(E,n),n),l=i.pathname,T=l&&l.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),L=T?(0,r.LX)(n.pathname,{path:T,exact:g,sensitive:k,strict:_}):null,A=!!(y?y(L,n):L),O="function"==typeof m?m(A):m,R="function"==typeof S?S(A):S;A&&(O=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).join(" ")}(O,u),R=(0,s.Z)({},R,f));var N=(0,s.Z)({"aria-current":A&&a||null,className:O,style:R,to:i},C);return h!==v?N.ref=t||x:N.innerRef=x,o.createElement(b,N)}))}))},16550:(e,t,n)=>{"use strict";n.d(t,{AW:()=>E,F0:()=>y,LX:()=>S,TH:()=>P,k6:()=>N,rs:()=>O,s6:()=>v});var r=n(75068),a=n(67294),o=n(45697),i=n.n(o),s=n(99318),l=n(38776),c=n(87462),u=n(14779),d=n.n(u),p=(n(59864),n(63366)),f=(n(8679),1073741823),m="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};var g=a.createContext||function(e,t){var n,o,s="__create-react-context-"+function(){var e="__global_unique_id__";return m[e]=(m[e]||0)+1}()+"__",l=function(e){function n(){for(var t,n,r,a=arguments.length,o=new Array(a),i=0;i<a;i++)o[i]=arguments[i];return(t=e.call.apply(e,[this].concat(o))||this).emitter=(n=t.props.value,r=[],{on:function(e){r.push(e)},off:function(e){r=r.filter((function(t){return t!==e}))},get:function(){return n},set:function(e,t){n=e,r.forEach((function(e){return e(n,t)}))}}),t}(0,r.Z)(n,e);var a=n.prototype;return a.getChildContext=function(){var e;return(e={})[s]=this.emitter,e},a.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var n,r=this.props.value,a=e.value;((o=r)===(i=a)?0!==o||1/o==1/i:o!=o&&i!=i)?n=0:(n="function"==typeof t?t(r,a):f,0!==(n|=0)&&this.emitter.set(e.value,n))}var o,i},a.render=function(){return this.props.children},n}(a.Component);l.childContextTypes=((n={})[s]=i().object.isRequired,n);var c=function(t){function n(){for(var e,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(e=t.call.apply(t,[this].concat(r))||this).observedBits=void 0,e.state={value:e.getValue()},e.onUpdate=function(t,n){0!=((0|e.observedBits)&n)&&e.setState({value:e.getValue()})},e}(0,r.Z)(n,t);var a=n.prototype;return a.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?f:t},a.componentDidMount=function(){this.context[s]&&this.context[s].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?f:e},a.componentWillUnmount=function(){this.context[s]&&this.context[s].off(this.onUpdate)},a.getValue=function(){return this.context[s]?this.context[s].get():e},a.render=function(){return(e=this.props.children,Array.isArray(e)?e[0]:e)(this.state.value);var e},n}(a.Component);return c.contextTypes=((o={})[s]=i().object,o),{Provider:l,Consumer:c}},b=function(e){var t=g();return t.displayName=e,t},h=b("Router-History"),v=b("Router"),y=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={location:t.history.location},n._isMounted=!1,n._pendingLocation=null,t.staticContext||(n.unlisten=t.history.listen((function(e){n._pendingLocation=e}))),n}(0,r.Z)(t,e),t.computeRootMatch=function(e){return{path:"/",url:"/",params:{},isExact:"/"===e}};var n=t.prototype;return n.componentDidMount=function(){var e=this;this._isMounted=!0,this.unlisten&&this.unlisten(),this.props.staticContext||(this.unlisten=this.props.history.listen((function(t){e._isMounted&&e.setState({location:t})}))),this._pendingLocation&&this.setState({location:this._pendingLocation})},n.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},n.render=function(){return a.createElement(v.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},a.createElement(h.Provider,{children:this.props.children||null,value:this.props.history}))},t}(a.Component);a.Component;a.Component;var w={},k=1e4,_=0;function S(e,t){void 0===t&&(t={}),("string"==typeof t||Array.isArray(t))&&(t={path:t});var n=t,r=n.path,a=n.exact,o=void 0!==a&&a,i=n.strict,s=void 0!==i&&i,l=n.sensitive,c=void 0!==l&&l;return[].concat(r).reduce((function(t,n){if(!n&&""!==n)return null;if(t)return t;var r=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=w[n]||(w[n]={});if(r[e])return r[e];var a=[],o={regexp:d()(e,a,t),keys:a};return _<k&&(r[e]=o,_++),o}(n,{end:o,strict:s,sensitive:c}),a=r.regexp,i=r.keys,l=a.exec(e);if(!l)return null;var u=l[0],p=l.slice(1),f=e===u;return o&&!f?null:{path:n,url:"/"===n&&""===u?"/":u,isExact:f,params:i.reduce((function(e,t,n){return e[t.name]=p[n],e}),{})}}),null)}var E=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(v.Consumer,null,(function(t){t||(0,l.Z)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?S(n.pathname,e.props):t.match,o=(0,c.Z)({},t,{location:n,match:r}),i=e.props,s=i.children,u=i.component,d=i.render;return Array.isArray(s)&&function(e){return 0===a.Children.count(e)}(s)&&(s=null),a.createElement(v.Provider,{value:o},o.match?s?"function"==typeof s?s(o):s:u?a.createElement(u,o):d?d(o):null:"function"==typeof s?s(o):null)}))},t}(a.Component);function x(e){return"/"===e.charAt(0)?e:"/"+e}function C(e,t){if(!e)return t;var n=x(e);return 0!==t.pathname.indexOf(n)?t:(0,c.Z)({},t,{pathname:t.pathname.substr(n.length)})}function T(e){return"string"==typeof e?e:(0,s.Ep)(e)}function L(e){return function(){(0,l.Z)(!1)}}function A(){}a.Component;var O=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(v.Consumer,null,(function(t){t||(0,l.Z)(!1);var n,r,o=e.props.location||t.location;return a.Children.forEach(e.props.children,(function(e){if(null==r&&a.isValidElement(e)){n=e;var i=e.props.path||e.props.from;r=i?S(o.pathname,(0,c.Z)({},e.props,{path:i})):t.match}})),r?a.cloneElement(n,{location:o,computedMatch:r}):null}))},t}(a.Component);var R=a.useContext;function N(){return R(h)}function P(){return R(v).location}},72408:(e,t,n)=>{"use strict";var r=n(27418),a=60103,o=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var i=60109,s=60110,l=60112;t.Suspense=60113;var c=60115,u=60116;if("function"==typeof Symbol&&Symbol.for){var d=Symbol.for;a=d("react.element"),o=d("react.portal"),t.Fragment=d("react.fragment"),t.StrictMode=d("react.strict_mode"),t.Profiler=d("react.profiler"),i=d("react.provider"),s=d("react.context"),l=d("react.forward_ref"),t.Suspense=d("react.suspense"),c=d("react.memo"),u=d("react.lazy")}var p="function"==typeof Symbol&&Symbol.iterator;function f(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g={};function b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}function h(){}function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}b.prototype.isReactComponent={},b.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(f(85));this.updater.enqueueSetState(this,e,t,"setState")},b.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},h.prototype=b.prototype;var y=v.prototype=new h;y.constructor=v,r(y,b.prototype),y.isPureReactComponent=!0;var w={current:null},k=Object.prototype.hasOwnProperty,_={key:!0,ref:!0,__self:!0,__source:!0};function S(e,t,n){var r,o={},i=null,s=null;if(null!=t)for(r in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(i=""+t.key),t)k.call(t,r)&&!_.hasOwnProperty(r)&&(o[r]=t[r]);var l=arguments.length-2;if(1===l)o.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];o.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps)void 0===o[r]&&(o[r]=l[r]);return{$$typeof:a,type:e,key:i,ref:s,props:o,_owner:w.current}}function E(e){return"object"==typeof e&&null!==e&&e.$$typeof===a}var x=/\/+/g;function C(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,n,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var l=!1;if(null===e)l=!0;else switch(s){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case a:case o:l=!0}}if(l)return i=i(l=e),e=""===r?"."+C(l,0):r,Array.isArray(i)?(n="",null!=e&&(n=e.replace(x,"$&/")+"/"),T(i,t,n,"",(function(e){return e}))):null!=i&&(E(i)&&(i=function(e,t){return{$$typeof:a,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,n+(!i.key||l&&l.key===i.key?"":(""+i.key).replace(x,"$&/")+"/")+e)),t.push(i)),1;if(l=0,r=""===r?".":r+":",Array.isArray(e))for(var c=0;c<e.length;c++){var u=r+C(s=e[c],c);l+=T(s,t,n,u,i)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(s=e.next()).done;)l+=T(s=s.value,t,n,u=r+C(s,c++),i);else if("object"===s)throw t=""+e,Error(f(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return l}function L(e,t,n){if(null==e)return e;var r=[],a=0;return T(e,r,"","",(function(e){return t.call(n,e,a++)})),r}function A(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var O={current:null};function R(){var e=O.current;if(null===e)throw Error(f(321));return e}var N={ReactCurrentDispatcher:O,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:w,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:L,forEach:function(e,t,n){L(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return L(e,(function(){t++})),t},toArray:function(e){return L(e,(function(e){return e}))||[]},only:function(e){if(!E(e))throw Error(f(143));return e}},t.Component=b,t.PureComponent=v,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=N,t.cloneElement=function(e,t,n){if(null==e)throw Error(f(267,e));var o=r({},e.props),i=e.key,s=e.ref,l=e._owner;if(null!=t){if(void 0!==t.ref&&(s=t.ref,l=w.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(u in t)k.call(t,u)&&!_.hasOwnProperty(u)&&(o[u]=void 0===t[u]&&void 0!==c?c[u]:t[u])}var u=arguments.length-2;if(1===u)o.children=n;else if(1<u){c=Array(u);for(var d=0;d<u;d++)c[d]=arguments[d+2];o.children=c}return{$$typeof:a,type:e.type,key:i,ref:s,props:o,_owner:l}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:s,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=S,t.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:l,render:e}},t.isValidElement=E,t.lazy=function(e){return{$$typeof:u,_payload:{_status:-1,_result:e},_init:A}},t.memo=function(e,t){return{$$typeof:c,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return R().useCallback(e,t)},t.useContext=function(e,t){return R().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return R().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return R().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return R().useLayoutEffect(e,t)},t.useMemo=function(e,t){return R().useMemo(e,t)},t.useReducer=function(e,t,n){return R().useReducer(e,t,n)},t.useRef=function(e){return R().useRef(e)},t.useState=function(e){return R().useState(e)},t.version="17.0.2"},67294:(e,t,n)=>{"use strict";e.exports=n(72408)},60053:(e,t)=>{"use strict";var n,r,a,o;if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var s=Date,l=s.now();t.unstable_now=function(){return s.now()-l}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var c=null,u=null,d=function(){if(null!==c)try{var e=t.unstable_now();c(!0,e),c=null}catch(n){throw setTimeout(d,0),n}};n=function(e){null!==c?setTimeout(n,0,e):(c=e,setTimeout(d,0))},r=function(e,t){u=setTimeout(e,t)},a=function(){clearTimeout(u)},t.unstable_shouldYield=function(){return!1},o=t.unstable_forceFrameRate=function(){}}else{var p=window.setTimeout,f=window.clearTimeout;if("undefined"!=typeof console){var m=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof m&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var g=!1,b=null,h=-1,v=5,y=0;t.unstable_shouldYield=function(){return t.unstable_now()>=y},o=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):v=0<e?Math.floor(1e3/e):5};var w=new MessageChannel,k=w.port2;w.port1.onmessage=function(){if(null!==b){var e=t.unstable_now();y=e+v;try{b(!0,e)?k.postMessage(null):(g=!1,b=null)}catch(n){throw k.postMessage(null),n}}else g=!1},n=function(e){b=e,g||(g=!0,k.postMessage(null))},r=function(e,n){h=p((function(){e(t.unstable_now())}),n)},a=function(){f(h),h=-1}}function _(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,a=e[r];if(!(void 0!==a&&0<x(a,t)))break e;e[r]=t,e[n]=a,n=r}}function S(e){return void 0===(e=e[0])?null:e}function E(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,a=e.length;r<a;){var o=2*(r+1)-1,i=e[o],s=o+1,l=e[s];if(void 0!==i&&0>x(i,n))void 0!==l&&0>x(l,i)?(e[r]=l,e[s]=n,r=s):(e[r]=i,e[o]=n,r=o);else{if(!(void 0!==l&&0>x(l,n)))break e;e[r]=l,e[s]=n,r=s}}}return t}return null}function x(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var C=[],T=[],L=1,A=null,O=3,R=!1,N=!1,P=!1;function I(e){for(var t=S(T);null!==t;){if(null===t.callback)E(T);else{if(!(t.startTime<=e))break;E(T),t.sortIndex=t.expirationTime,_(C,t)}t=S(T)}}function D(e){if(P=!1,I(e),!N)if(null!==S(C))N=!0,n(M);else{var t=S(T);null!==t&&r(D,t.startTime-e)}}function M(e,n){N=!1,P&&(P=!1,a()),R=!0;var o=O;try{for(I(n),A=S(C);null!==A&&(!(A.expirationTime>n)||e&&!t.unstable_shouldYield());){var i=A.callback;if("function"==typeof i){A.callback=null,O=A.priorityLevel;var s=i(A.expirationTime<=n);n=t.unstable_now(),"function"==typeof s?A.callback=s:A===S(C)&&E(C),I(n)}else E(C);A=S(C)}if(null!==A)var l=!0;else{var c=S(T);null!==c&&r(D,c.startTime-n),l=!1}return l}finally{A=null,O=o,R=!1}}var j=o;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){N||R||(N=!0,n(M))},t.unstable_getCurrentPriorityLevel=function(){return O},t.unstable_getFirstCallbackNode=function(){return S(C)},t.unstable_next=function(e){switch(O){case 1:case 2:case 3:var t=3;break;default:t=O}var n=O;O=t;try{return e()}finally{O=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=j,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=O;O=e;try{return t()}finally{O=n}},t.unstable_scheduleCallback=function(e,o,i){var s=t.unstable_now();switch("object"==typeof i&&null!==i?i="number"==typeof(i=i.delay)&&0<i?s+i:s:i=s,e){case 1:var l=-1;break;case 2:l=250;break;case 5:l=1073741823;break;case 4:l=1e4;break;default:l=5e3}return e={id:L++,callback:o,priorityLevel:e,startTime:i,expirationTime:l=i+l,sortIndex:-1},i>s?(e.sortIndex=i,_(T,e),null===S(C)&&e===S(T)&&(P?a():P=!0,r(D,i-s))):(e.sortIndex=l,_(C,e),N||R||(N=!0,n(M))),e},t.unstable_wrapCallback=function(e){var t=O;return function(){var n=O;O=t;try{return e.apply(this,arguments)}finally{O=n}}}},63840:(e,t,n)=>{"use strict";e.exports=n(60053)},96774:e=>{e.exports=function(e,t,n,r){var a=n?n.call(r,e,t):void 0;if(void 0!==a)return!!a;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var o=Object.keys(e),i=Object.keys(t);if(o.length!==i.length)return!1;for(var s=Object.prototype.hasOwnProperty.bind(t),l=0;l<o.length;l++){var c=o[l];if(!s(c))return!1;var u=e[c],d=t[c];if(!1===(a=n?n.call(r,u,d,c):void 0)||void 0===a&&u!==d)return!1}return!0}},53250:(e,t,n)=>{"use strict";var r=n(67294);var a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=r.useState,i=r.useEffect,s=r.useLayoutEffect,l=r.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!a(e,n)}catch(r){return!0}}var u="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),r=o({inst:{value:n,getSnapshot:t}}),a=r[0].inst,u=r[1];return s((function(){a.value=n,a.getSnapshot=t,c(a)&&u({inst:a})}),[e,n,t]),i((function(){return c(a)&&u({inst:a}),e((function(){c(a)&&u({inst:a})}))}),[e]),l(n),n};t.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:u},61688:(e,t,n)=>{"use strict";e.exports=n(53250)},36809:(e,t,n)=>{"use strict";n.d(t,{default:()=>r});const r={title:"NocoDB",tagline:"The Open Source Airtable Alternative",favicon:"img/favicon.ico",url:"https://nocodb.com",baseUrl:"/",organizationName:"nocodb",projectName:"nocodb",onBrokenLinks:"throw",onBrokenMarkdownLinks:"throw",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},plugins:["docusaurus-plugin-sass","plugin-image-zoom",["@docusaurus/plugin-ideal-image",{quality:70,max:1030,min:640,steps:2,disableInDev:!1}]],presets:[["classic",{docs:{sidebarPath:"/Users/navi/practice/nocodb/packages/noco-docs/sidebars.js",routeBasePath:"/",editUrl:"https://github.com/nocodb/nocodb/tree/develop/packages/noco-docs/docs/",lastVersion:"current",versions:{current:{label:"Latest"},"0.109.7":{label:"0.109.7 - Old UI"}}},blog:!1,theme:{customCss:"/Users/navi/practice/nocodb/packages/noco-docs/src/css/custom.scss"},sitemap:{changefreq:"weekly",priority:.5,ignorePatterns:["/tags/**"],filename:"sitemap.xml"}}]],themeConfig:{image:"img/docusaurus-social-card.jpg",navbar:{title:"",logo:{alt:"NocoDB",src:"img/nocodb-full-color.png"},items:[{type:"docsVersionDropdown",position:"right",dropdownItemsBefore:[],dropdownItemsAfter:[]},{href:"https://github.com/nocodb/nocodb",position:"right",className:"header-github-link","aria-label":"GitHub repository"}],hideOnScroll:!1},footer:{style:"dark",logo:{alt:"NocoDB",src:"img/icon.png",width:50},links:[{label:"GitHub",href:"https://github.com/facebook/docusaurus"},{label:"Website",href:"https://nocodb.com/"},{label:"Community",href:"https://community.nocodb.com/"},{label:"Discord",href:"https://discord.gg/5RgZmkW"},{label:"Twitter",href:"https://twitter.com/nocodb"}],copyright:"Copyright \xa9 2023 NocoDB"},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},imageZoom:{selector:".markdown img",options:{margin:96,background:"rgba(0,0,0,0.25)",scrollOffset:0}},colorMode:{defaultMode:"light",disableSwitch:!1,respectPrefersColorScheme:!1},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},clientModules:["/Users/navi/practice/nocodb/packages/noco-docs/src/modules/tele.js"],baseUrlIssueBanner:!0,onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],headTags:[],stylesheets:[],titleDelimiter:"|",noIndex:!1,markdown:{mermaid:!1}}},87462:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{Z:()=>r})},75068:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{Z:()=>a})},63366:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}n.d(t,{Z:()=>r})},38776:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=!0,a="Invariant failed";function o(e,t){if(!e){if(r)throw new Error(a);var n="function"==typeof t?t():t,o=n?"".concat(a,": ").concat(n):a;throw new Error(o)}}},57529:e=>{"use strict";e.exports={}},16887:e=>{"use strict";e.exports=JSON.parse('{"/tags-ba5":{"__comp":"3720c009","__context":{"plugin":"ce2b01b6"},"tags":"55960ee5"},"/tags/account-settings-f4d":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"3aad05b1"},"/tags/activity-feed-433":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"f58fbde1"},"/tags/api-tokens-b9c":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d9e65f56"},"/tags/attachment-cc3":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"f4472a32"},"/tags/barcode-969":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"181f370e"},"/tags/base-e91":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"016441e2"},"/tags/bases-264":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9a7e4ef7"},"/tags/checkbox-9bd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"10b0edf0"},"/tags/collaboration-327":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"3a7c0cf6"},"/tags/comments-667":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"832fc58a"},"/tags/cover-image-911":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"e68e0fff"},"/tags/create-d20":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"fb5c685c"},"/tags/csv-f99":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"a71ccd0b"},"/tags/currency-903":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"f9538193"},"/tags/custom-types-4f9":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"0d8de604"},"/tags/dashboard-51e":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"458ed5bd"},"/tags/data-sources-a71":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"3ac80ba6"},"/tags/date-time-3dd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6a2ab9d1"},"/tags/decimal-516":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"b65801cb"},"/tags/delete-df8":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"524f61e0"},"/tags/disable-3a5":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"a15cb612"},"/tags/display-value-a0a":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9e1a113d"},"/tags/download-25e":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"cc9fede1"},"/tags/duplicate-d65":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"2d5bd7a1"},"/tags/edit-4bb":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"276e2b0f"},"/tags/email-1ad":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"45c1aab2"},"/tags/enable-6f0":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"300d0b41"},"/tags/engineering-253":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"70424118"},"/tags/excel-b34":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6233b6dc"},"/tags/expand-4b0":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"5b61f490"},"/tags/expanded-record-3a7":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"0938fe36"},"/tags/field-types-efa":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"e8cbe097"},"/tags/fields-13b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"83533542"},"/tags/filter-084":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"e3120721"},"/tags/form-6e5":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"17a7e1f3"},"/tags/form-view-89e":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"61af7884"},"/tags/formula-374":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"177ad845"},"/tags/gallery-view-68d":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"27b20541"},"/tags/geometry-321":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"006c1c22"},"/tags/getting-started-f7a":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6a105426"},"/tags/grid-view-86f":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d3abb5b7"},"/tags/group-by-117":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"95677701"},"/tags/hide-42e":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"4145e2b1"},"/tags/import-0bc":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9db7fbd6"},"/tags/invite-67f":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"2d8eea4e"},"/tags/json-bc1":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"dc1c5b3c"},"/tags/kanban-view-59c":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"2c8a1eac"},"/tags/links-439":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"f472468a"},"/tags/links-based-types-2a3":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"c93390fb"},"/tags/long-text-8aa":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6502d10a"},"/tags/lookup-f78":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"55156658"},"/tags/member-8d9":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"fc37d7fe"},"/tags/members-1e3":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"23371042"},"/tags/multi-fields-editor-969":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"b6006dd7"},"/tags/multi-select-211":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6485a1bf"},"/tags/number-037":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"052c7f5b"},"/tags/numerical-types-64b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9a52cc21"},"/tags/open-source-412":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"f6aad64f"},"/tags/overview-a96":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"1c2ab191"},"/tags/percent-80c":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"c2accac3"},"/tags/permissions-c4b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"c42aaec2"},"/tags/phone-number-e06":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9aad2067"},"/tags/primary-key-77b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"b2206ab4"},"/tags/productivity-hacks-24f":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"013b8728"},"/tags/profile-8cd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d5451361"},"/tags/qr-code-01b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"03af2c79"},"/tags/rating-c91":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"7d5d7de6"},"/tags/records-1ec":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"4f577b60"},"/tags/relations-db2":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"78ec2f26"},"/tags/rename-177":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"147f12f7"},"/tags/reorder-c16":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d69d4db4"},"/tags/role-eb5":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"ffd85642"},"/tags/roles-1d2":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"0bd8cdc6"},"/tags/rollup-3a6":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9e7567e1"},"/tags/row-height-bfd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"ab9ce1e1"},"/tags/search-835":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"523749b8"},"/tags/select-based-types-a85":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"6aee45b4"},"/tags/share-ed2":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"7a733070"},"/tags/shortcuts-1b1":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"71f80183"},"/tags/show-hide-8e8":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d96af704"},"/tags/single-line-text-c01":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"df59b4b5"},"/tags/single-select-3c8":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"c7dc53b4"},"/tags/sort-39c":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"fb12fd2d"},"/tags/specific-db-type-8f0":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"b3347e58"},"/tags/star-7be":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"a54c3ef6"},"/tags/table-9a4":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9995b2be"},"/tags/table-details-944":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"a9993c14"},"/tags/table-operations-39e":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"5dcc9f57"},"/tags/tables-055":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"985d43d9"},"/tags/text-based-types-131":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"44655909"},"/tags/url-a95":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"105fb6bf"},"/tags/views-2bd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"e12d67b0"},"/tags/webhook-9d9":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"9db0d30f"},"/tags/workspace-9ce":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"2fa98934"},"/tags/workspaces-99b":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"3da8114c"},"/tags/xlsx-1fd":{"__comp":"df203c0f","__context":{"plugin":"ce2b01b6"},"tag":"d12c5626"},"/0.109.7-8a5":{"__comp":"1be78505","__context":{"plugin":"ce2b01b6"},"versionMetadata":"ae9857c7"},"/0.109.7/-eab":{"__comp":"17896441","content":"1e898359"},"/0.109.7/developer-resources/accessing-apis-238":{"__comp":"17896441","content":"81862c4f"},"/0.109.7/developer-resources/rest-apis-06e":{"__comp":"17896441","content":"a7294da8"},"/0.109.7/developer-resources/sdk-9da":{"__comp":"17896441","content":"855d76bb"},"/0.109.7/developer-resources/upload-via-api-ae3":{"__comp":"17896441","content":"5436f7e6"},"/0.109.7/developer-resources/webhooks-93d":{"__comp":"17896441","content":"529c2981"},"/0.109.7/engineering/architecture-a78":{"__comp":"17896441","content":"71540999"},"/0.109.7/engineering/builds-and-releases-107":{"__comp":"17896441","content":"3615d78a"},"/0.109.7/engineering/development-setup-9b9":{"__comp":"17896441","content":"09ceb1a0"},"/0.109.7/engineering/playwright-b87":{"__comp":"17896441","content":"5ccd3149"},"/0.109.7/engineering/repository-structure-6f0":{"__comp":"17896441","content":"6fe2a298"},"/0.109.7/engineering/translation-02f":{"__comp":"17896441","content":"cc44517e"},"/0.109.7/engineering/unit-testing-d31":{"__comp":"17896441","content":"e4e12989"},"/0.109.7/FAQs-79f":{"__comp":"17896441","content":"4ed1386c"},"/0.109.7/getting-started/demos-8e4":{"__comp":"17896441","content":"87e9af65"},"/0.109.7/getting-started/environment-variables-bea":{"__comp":"17896441","content":"0c130525"},"/0.109.7/getting-started/installation-af5":{"__comp":"17896441","content":"5c9cf4c7"},"/0.109.7/getting-started/upgrading-5e6":{"__comp":"17896441","content":"e28b0c4f"},"/0.109.7/setup-and-usages/account-settings-72e":{"__comp":"17896441","content":"1b14dca8"},"/0.109.7/setup-and-usages/audit-492":{"__comp":"17896441","content":"9c78149d"},"/0.109.7/setup-and-usages/code-snippets-e68":{"__comp":"17896441","content":"615746d5"},"/0.109.7/setup-and-usages/column-operations-b69":{"__comp":"17896441","content":"b444d910"},"/0.109.7/setup-and-usages/column-types-a5e":{"__comp":"17896441","content":"34b71ab6"},"/0.109.7/setup-and-usages/dashboard-ee2":{"__comp":"17896441","content":"a47b7f3a"},"/0.109.7/setup-and-usages/display-value-a30":{"__comp":"17896441","content":"9d4ed5ff"},"/0.109.7/setup-and-usages/expanded-form-b88":{"__comp":"17896441","content":"e631982f"},"/0.109.7/setup-and-usages/formulas-bd0":{"__comp":"17896441","content":"55403ccd"},"/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free-371":{"__comp":"17896441","content":"2a42d1d2"},"/0.109.7/setup-and-usages/keyboard-maneuver-881":{"__comp":"17896441","content":"90e43058"},"/0.109.7/setup-and-usages/languages-b49":{"__comp":"17896441","content":"408139c4"},"/0.109.7/setup-and-usages/link-to-another-record-6c9":{"__comp":"17896441","content":"86fc9284"},"/0.109.7/setup-and-usages/links-0dc":{"__comp":"17896441","content":"a43060c8"},"/0.109.7/setup-and-usages/lookup-96d":{"__comp":"17896441","content":"2226a1e9"},"/0.109.7/setup-and-usages/meta-management-254":{"__comp":"17896441","content":"d427e024"},"/0.109.7/setup-and-usages/primary-key-0c4":{"__comp":"17896441","content":"654123f4"},"/0.109.7/setup-and-usages/project-settings-dc0":{"__comp":"17896441","content":"d01bd8c5"},"/0.109.7/setup-and-usages/rollup-64f":{"__comp":"17896441","content":"cd725ea4"},"/0.109.7/setup-and-usages/share-base-29d":{"__comp":"17896441","content":"88cc213e"},"/0.109.7/setup-and-usages/share-view-ec1":{"__comp":"17896441","content":"10779e77"},"/0.109.7/setup-and-usages/sync-schema-852":{"__comp":"17896441","content":"c1501dcb"},"/0.109.7/setup-and-usages/table-operations-364":{"__comp":"17896441","content":"0f6b8098"},"/0.109.7/setup-and-usages/team-and-auth-b5f":{"__comp":"17896441","content":"f0eb83f3"},"/0.109.7/setup-and-usages/usage-information-b21":{"__comp":"17896441","content":"824dfda1"},"/0.109.7/setup-and-usages/views-303":{"__comp":"17896441","content":"1e403fb7"},"/-ad1":{"__comp":"1be78505","__context":{"plugin":"ce2b01b6"},"versionMetadata":"935f2afb"},"/-f1a":{"__comp":"17896441","content":"b22d161b"},"/account-settings/api-tokens-fe5":{"__comp":"17896441","content":"023320c3"},"/account-settings/oss-specific-details-95b":{"__comp":"17896441","content":"00aa88f5"},"/account-settings/profile-page-6de":{"__comp":"17896441","content":"9329f711"},"/automation/webhook/actions-on-webhook-ec5":{"__comp":"17896441","content":"052736b6"},"/automation/webhook/create-webhook-7f4":{"__comp":"17896441","content":"0cab3fcc"},"/automation/webhook/webhook-overview-bdc":{"__comp":"17896441","content":"2b263996"},"/bases/actions-on-base-d6b":{"__comp":"17896441","content":"d767d123"},"/bases/base-collaboration-1d1":{"__comp":"17896441","content":"4bab5100"},"/bases/base-overview-305":{"__comp":"17896441","content":"eb689018"},"/bases/create-base-b75":{"__comp":"17896441","content":"2eb4ec02"},"/bases/import-base-from-airtable-e12":{"__comp":"17896441","content":"ba1d2c5b"},"/bases/share-base-626":{"__comp":"17896441","content":"6f7695df"},"/collaboration/base-collaboration-dab":{"__comp":"17896441","content":"25ad7bcb"},"/collaboration/collaboration-overview-d7f":{"__comp":"17896441","content":"f9241299"},"/collaboration/oss-specific-details-43a":{"__comp":"17896441","content":"576905f1"},"/collaboration/share-base-1db":{"__comp":"17896441","content":"037e2c34"},"/collaboration/share-view-ef9":{"__comp":"17896441","content":"a18f2535"},"/collaboration/workspace-collaboration-952":{"__comp":"17896441","content":"9040003c"},"/data-source/data-source-overview-0c7":{"__comp":"17896441","content":"c3d0dca5"},"/engineering/architecture-5c0":{"__comp":"17896441","content":"4efb7b3c"},"/engineering/builds-and-releases-bb9":{"__comp":"17896441","content":"0834b429"},"/engineering/development-setup-27a":{"__comp":"17896441","content":"58354ae8"},"/engineering/playwright-09d":{"__comp":"17896441","content":"9906c9d3"},"/engineering/repository-structure-6fc":{"__comp":"17896441","content":"52df1fbb"},"/engineering/translation-2dd":{"__comp":"17896441","content":"8498c216"},"/engineering/unit-testing-24a":{"__comp":"17896441","content":"1b3738fb"},"/engineering/writing-docs-4f2":{"__comp":"17896441","content":"7c4b6d90"},"/FAQs-828":{"__comp":"17896441","content":"20e10381"},"/fields/actions-on-field-f17":{"__comp":"17896441","content":"fb60c522"},"/fields/display-value-828":{"__comp":"17896441","content":"603e048e"},"/fields/field-types/custom-types/attachment-06c":{"__comp":"17896441","content":"e68614dc"},"/fields/field-types/custom-types/barcode-e35":{"__comp":"17896441","content":"4cd0de40"},"/fields/field-types/custom-types/checkbox-d59":{"__comp":"17896441","content":"ed0a57e3"},"/fields/field-types/custom-types/geometry-1a2":{"__comp":"17896441","content":"c1a34d6e"},"/fields/field-types/custom-types/json-bea":{"__comp":"17896441","content":"6d2f78d9"},"/fields/field-types/custom-types/QR-code-4e4":{"__comp":"17896441","content":"525fa7b4"},"/fields/field-types/custom-types/rating-2ad":{"__comp":"17896441","content":"ec134df3"},"/fields/field-types/custom-types/specific-db-type-0cd":{"__comp":"17896441","content":"68fa8000"},"/fields/field-types/date-time-based/date-725":{"__comp":"17896441","content":"14d6025d"},"/fields/field-types/date-time-based/date-time-836":{"__comp":"17896441","content":"ded49de4"},"/fields/field-types/date-time-based/duration-94e":{"__comp":"17896441","content":"60b8b995"},"/fields/field-types/date-time-based/time-d3c":{"__comp":"17896441","content":"2cbe0325"},"/fields/field-types/formula/conditional-expressions-5af":{"__comp":"17896441","content":"18c96d41"},"/fields/field-types/formula/date-functions-798":{"__comp":"17896441","content":"31befc1e"},"/fields/field-types/formula/formula-576":{"__comp":"17896441","content":"0a7c5cbc"},"/fields/field-types/formula/numeric-functions-556":{"__comp":"17896441","content":"224f2b0f"},"/fields/field-types/formula/operators-d96":{"__comp":"17896441","content":"98de4c79"},"/fields/field-types/formula/string-functions-b5c":{"__comp":"17896441","content":"0ac1e38e"},"/fields/field-types/links-based/links-487":{"__comp":"17896441","content":"16d5baaf"},"/fields/field-types/links-based/lookup-861":{"__comp":"17896441","content":"abbfc25c"},"/fields/field-types/links-based/rollup-1f5":{"__comp":"17896441","content":"cd3c4207"},"/fields/field-types/numerical/currency-91a":{"__comp":"17896441","content":"e55064b4"},"/fields/field-types/numerical/decimal-8cc":{"__comp":"17896441","content":"69895f00"},"/fields/field-types/numerical/number-d91":{"__comp":"17896441","content":"e5a54c1b"},"/fields/field-types/numerical/percent-243":{"__comp":"17896441","content":"31f9cd1a"},"/fields/field-types/select-based/multi-select-626":{"__comp":"17896441","content":"35af5afe"},"/fields/field-types/select-based/single-select-e33":{"__comp":"17896441","content":"14095bfc"},"/fields/field-types/text-based/email-938":{"__comp":"17896441","content":"11d84c26"},"/fields/field-types/text-based/long-text-e24":{"__comp":"17896441","content":"c1dfffdd"},"/fields/field-types/text-based/phonenumber-a44":{"__comp":"17896441","content":"bd02e23f"},"/fields/field-types/text-based/single-line-text-99f":{"__comp":"17896441","content":"22aab9a3"},"/fields/field-types/text-based/url-64a":{"__comp":"17896441","content":"bb53f532"},"/fields/fields-overview-78a":{"__comp":"17896441","content":"310a23cf"},"/fields/multi-fields-editor-6e1":{"__comp":"17896441","content":"da4f93ee"},"/fields/primary-key-40d":{"__comp":"17896441","content":"ec135315"},"/getting-started/keyboard-shortcuts-323":{"__comp":"17896441","content":"0ecc5e11"},"/getting-started/quick-start-92c":{"__comp":"17896441","content":"01865ba3"},"/getting-started/self-hosted/environment-variables-60e":{"__comp":"17896441","content":"4c6b0ee7"},"/getting-started/self-hosted/installation-972":{"__comp":"17896441","content":"2a1ace55"},"/getting-started/self-hosted/upgrading-bfd":{"__comp":"17896441","content":"e56fdc78"},"/getting-started/terminologies-b1a":{"__comp":"17896441","content":"69bee932"},"/records/actions-on-record-632":{"__comp":"17896441","content":"99f674e5"},"/records/create-record-945":{"__comp":"17896441","content":"2888903d"},"/records/expand-record-72d":{"__comp":"17896441","content":"278121a5"},"/records/records-overview-150":{"__comp":"17896441","content":"9dfd9b1b"},"/roles-and-permissions/roles-permissions-overview-57d":{"__comp":"17896441","content":"c76e097b"},"/table-details/table-details-overview-ae5":{"__comp":"17896441","content":"e302cfc9"},"/table-operations/download-8d4":{"__comp":"17896441","content":"6a0eac6b"},"/table-operations/field-operations-c3d":{"__comp":"17896441","content":"22580739"},"/table-operations/filter-96c":{"__comp":"17896441","content":"f7d905ba"},"/table-operations/group-by-893":{"__comp":"17896441","content":"95a14fd1"},"/table-operations/overview-bd0":{"__comp":"17896441","content":"ae730630"},"/table-operations/row-height-3c0":{"__comp":"17896441","content":"69bed9e5"},"/table-operations/search-ed7":{"__comp":"17896441","content":"7dce83b4"},"/table-operations/sort-209":{"__comp":"17896441","content":"8a8a6f17"},"/tables/actions-on-table-05d":{"__comp":"17896441","content":"0f4f52c0"},"/tables/create-table-b64":{"__comp":"17896441","content":"32e0f401"},"/tables/create-table-via-import-e6f":{"__comp":"17896441","content":"70efa42e"},"/tables/import-data-into-existing-table-d91":{"__comp":"17896441","content":"e4367861"},"/tables/table-overview-046":{"__comp":"17896441","content":"7ce1d842"},"/views/actions-on-view-17e":{"__comp":"17896441","content":"7e18769a"},"/views/create-view-2b3":{"__comp":"17896441","content":"61a3d417"},"/views/share-view-97d":{"__comp":"17896441","content":"2bb712de"},"/views/view-types/form-252":{"__comp":"17896441","content":"5af3a857"},"/views/view-types/gallery-004":{"__comp":"17896441","content":"ebb99180"},"/views/view-types/grid-c46":{"__comp":"17896441","content":"0908b333"},"/views/view-types/kanban-b3f":{"__comp":"17896441","content":"1970c274"},"/views/views-overview-ba9":{"__comp":"17896441","content":"bb516362"},"/workspaces/actions-on-workspace-cb7":{"__comp":"17896441","content":"319e5695"},"/workspaces/create-workspace-d20":{"__comp":"17896441","content":"5eaf3a75"},"/workspaces/workspace-collaboration-dd4":{"__comp":"17896441","content":"fe112e79"},"/workspaces/workspace-overview-34e":{"__comp":"17896441","content":"b7abf355"}}')}},e=>{e.O(0,[532],(()=>{return t=49717,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/packages/noco-docs/dist/assets/js/main.a5718638.js.LICENSE.txt b/packages/noco-docs/dist/assets/js/main.a5718638.js.LICENSE.txt new file mode 100644 index 0000000000..eb75d69107 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/main.a5718638.js.LICENSE.txt @@ -0,0 +1,63 @@ +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ + +/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT */ + +/** + * @license React + * use-sync-external-store-shim.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** + * Prism: Lightweight, robust, elegant syntax highlighting + * + * @license MIT <https://opensource.org/licenses/MIT> + * @author Lea Verou <https://lea.verou.me> + * @namespace + * @public + */ + +/** @license React v0.20.2 + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v16.13.1 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ diff --git a/packages/noco-docs/dist/assets/js/runtime~main.2253c303.js b/packages/noco-docs/dist/assets/js/runtime~main.2253c303.js new file mode 100644 index 0000000000..1a7aac4491 --- /dev/null +++ b/packages/noco-docs/dist/assets/js/runtime~main.2253c303.js @@ -0,0 +1 @@ +(()=>{"use strict";var e,c,a,f,d,b={},t={};function r(e){var c=t[e];if(void 0!==c)return c.exports;var a=t[e]={id:e,loaded:!1,exports:{}};return b[e].call(a.exports,a,a.exports,r),a.loaded=!0,a.exports}r.m=b,r.c=t,e=[],r.O=(c,a,f,d)=>{if(!a){var b=1/0;for(i=0;i<e.length;i++){a=e[i][0],f=e[i][1],d=e[i][2];for(var t=!0,o=0;o<a.length;o++)(!1&d||b>=d)&&Object.keys(r.O).every((e=>r.O[e](a[o])))?a.splice(o--,1):(t=!1,d<b&&(b=d));if(t){e.splice(i--,1);var n=f();void 0!==n&&(c=n)}}return c}d=d||0;for(var i=e.length;i>0&&e[i-1][2]>d;i--)e[i]=e[i-1];e[i]=[a,f,d]},r.n=e=>{var c=e&&e.__esModule?()=>e.default:()=>e;return r.d(c,{a:c}),c},a=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(e,f){if(1&f&&(e=this(e)),8&f)return e;if("object"==typeof e&&e){if(4&f&&e.__esModule)return e;if(16&f&&"function"==typeof e.then)return e}var d=Object.create(null);r.r(d);var b={};c=c||[null,a({}),a([]),a(a)];for(var t=2&f&&e;"object"==typeof t&&!~c.indexOf(t);t=a(t))Object.getOwnPropertyNames(t).forEach((c=>b[c]=()=>e[c]));return b.default=()=>e,r.d(d,b),d},r.d=(e,c)=>{for(var a in c)r.o(c,a)&&!r.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:c[a]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((c,a)=>(r.f[a](e,c),c)),[])),r.u=e=>"assets/js/"+({43:"01865ba3",53:"935f2afb",65:"16d5baaf",92:"c42aaec2",117:"0ecc5e11",211:"ce2b01b6",254:"6d2f78d9",274:"b65801cb",305:"86fc9284",332:"70424118",333:"d69d4db4",345:"b3347e58",346:"ebb99180",403:"2b263996",405:"20e10381",481:"9db7fbd6",485:"cd3c4207",518:"5b61f490",604:"0c130525",636:"c1a34d6e",678:"615746d5",753:"9329f711",771:"e68614dc",800:"cd725ea4",809:"0a7c5cbc",853:"f6aad64f",924:"71f80183",1015:"006c1c22",1067:"fb5c685c",1120:"e3120721",1140:"1970c274",1174:"95677701",1179:"35af5afe",1185:"00aa88f5",1193:"7dce83b4",1196:"985d43d9",1205:"d5451361",1245:"2cbe0325",1305:"0834b429",1313:"e302cfc9",1371:"013b8728",1416:"fb12fd2d",1461:"c76e097b",1484:"023320c3",1499:"81862c4f",1576:"dc1c5b3c",1609:"d12c5626",1635:"e8cbe097",1641:"bb53f532",1676:"b6006dd7",1705:"ffd85642",1730:"4cd0de40",1753:"4ed1386c",1771:"2bb712de",1796:"22580739",1802:"55156658",1876:"2eb4ec02",1878:"310a23cf",1944:"5eaf3a75",1949:"cc44517e",1961:"9a7e4ef7",1990:"10779e77",2092:"0d8de604",2237:"458ed5bd",2384:"b2206ab4",2406:"44655909",2439:"276e2b0f",2533:"3a7c0cf6",2534:"300d0b41",2550:"a47b7f3a",2556:"278121a5",2562:"224f2b0f",2582:"d96af704",2606:"bd02e23f",2636:"2a42d1d2",2650:"55403ccd",2673:"78ec2f26",2773:"b22d161b",2776:"fe112e79",2862:"f0eb83f3",2874:"c2accac3",2922:"4f577b60",3011:"6f7695df",3062:"9a52cc21",3164:"58354ae8",3185:"a43060c8",3238:"27b20541",3259:"2888903d",3312:"a7294da8",3338:"3da8114c",3381:"8498c216",3447:"d3abb5b7",3454:"69bee932",3463:"60b8b995",3469:"525fa7b4",3479:"0cab3fcc",3512:"3aad05b1",3515:"3ac80ba6",3521:"f9241299",3590:"3615d78a",3595:"052c7f5b",3751:"3720c009",3755:"4efb7b3c",3857:"b7abf355",3869:"69bed9e5",3878:"83533542",3914:"df59b4b5",3939:"5436f7e6",3998:"7ce1d842",4033:"5ccd3149",4121:"55960ee5",4158:"6a0eac6b",4166:"c1dfffdd",4177:"7e18769a",4193:"88cc213e",4223:"7a733070",4289:"69895f00",4304:"45c1aab2",4307:"99f674e5",4333:"9d4ed5ff",4341:"e55064b4",4364:"34b71ab6",4493:"17a7e1f3",4507:"87e9af65",4513:"c7dc53b4",4570:"824dfda1",4660:"c93390fb",4743:"d767d123",4769:"9aad2067",4796:"1e403fb7",4815:"70efa42e",4829:"2a1ace55",4851:"eb689018",4882:"da4f93ee",4918:"147f12f7",4936:"09ceb1a0",5017:"7d5d7de6",5055:"e631982f",5084:"2fa98934",5150:"524f61e0",5187:"5c9cf4c7",5207:"4bab5100",5228:"cc9fede1",5283:"a54c3ef6",5305:"0ac1e38e",5336:"11d84c26",5375:"23371042",5404:"1b14dca8",5407:"fb60c522",5408:"105fb6bf",5413:"d427e024",5518:"1c2ab191",5580:"7c4b6d90",5631:"2c8a1eac",5707:"0bd8cdc6",5772:"576905f1",5822:"0f4f52c0",5837:"2d8eea4e",5919:"ab9ce1e1",5921:"ec134df3",5922:"14095bfc",6078:"6502d10a",6090:"9db0d30f",6125:"ec135315",6141:"855d76bb",6157:"0f6b8098",6187:"0908b333",6263:"e4367861",6325:"4c6b0ee7",6570:"03af2c79",6591:"61a3d417",6640:"6485a1bf",6713:"abbfc25c",6714:"ae9857c7",6779:"ba1d2c5b",6786:"181f370e",6799:"31befc1e",6859:"e68e0fff",6907:"22aab9a3",6928:"a18f2535",6999:"9e1a113d",7023:"90e43058",7075:"0938fe36",7096:"c1501dcb",7130:"31f9cd1a",7152:"529c2981",7219:"6fe2a298",7235:"f9538193",7283:"e5a54c1b",7395:"5dcc9f57",7530:"4145e2b1",7539:"14d6025d",7549:"68fa8000",7592:"6a105426",7621:"61af7884",7647:"6233b6dc",7657:"052736b6",7661:"9906c9d3",7666:"2d5bd7a1",7700:"603e048e",7746:"f7d905ba",7820:"037e2c34",7823:"9e7567e1",7918:"17896441",8e3:"e4e12989",8149:"1b3738fb",8221:"c3d0dca5",8248:"408139c4",8252:"177ad845",8379:"d9e65f56",8381:"9c78149d",8395:"52df1fbb",8511:"9040003c",8535:"6aee45b4",8537:"6a2ab9d1",8673:"016441e2",8690:"ed0a57e3",8704:"1e898359",8750:"a9993c14",8789:"25ad7bcb",8820:"d01bd8c5",8838:"5af3a857",8880:"e28b0c4f",8946:"10b0edf0",8954:"71540999",8958:"b444d910",9042:"a15cb612",9060:"8a8a6f17",9069:"e56fdc78",9123:"f4472a32",9214:"f472468a",9279:"9dfd9b1b",9383:"a71ccd0b",9415:"f58fbde1",9449:"18c96d41",9485:"fc37d7fe",9508:"523749b8",9514:"1be78505",9518:"95a14fd1",9542:"319e5695",9552:"2226a1e9",9554:"e12d67b0",9707:"ae730630",9721:"bb516362",9789:"32e0f401",9850:"9995b2be",9868:"ded49de4",9874:"832fc58a",9893:"98de4c79",9924:"df203c0f",9933:"654123f4"}[e]||e)+"."+{43:"034d1107",53:"caa4773a",65:"3201846c",92:"c3eaeb58",117:"7a3e22a9",211:"1206b276",254:"3af71101",274:"8ae108a9",305:"a1a65b52",332:"3dfed9c1",333:"b43b4016",345:"e4432810",346:"c91c6436",403:"f4427b71",405:"37a84cbb",481:"2ee11895",485:"9d8849c5",518:"deafe22f",604:"033f7aac",636:"d506b0ed",678:"b0727925",753:"cef1e022",771:"ce504158",800:"d30f312a",809:"9fd81a2a",853:"d7381bfa",924:"0b302a2b",1015:"db8ce074",1067:"3e14ad22",1120:"c79fbff1",1140:"ff162d79",1174:"7861c777",1179:"cea2cc41",1185:"806473d1",1193:"ef1623a1",1196:"74530544",1205:"2c2752cf",1245:"b7631b4b",1305:"d504b7b1",1313:"07f9e979",1371:"00dc75b7",1416:"359aef93",1461:"23e4c250",1484:"a48103df",1499:"a3dbfbec",1576:"37aae50a",1609:"5d2428c6",1635:"b5426eca",1641:"b0a38ca1",1676:"ba122014",1705:"22af644c",1730:"694c573e",1753:"bd3a0126",1771:"80a245e6",1796:"f92115db",1802:"470750cd",1876:"0226ebc7",1878:"354702fe",1944:"916d763c",1949:"04005ed9",1961:"aab35289",1990:"f565d9f8",2092:"4e8ef227",2237:"2b599050",2384:"41782673",2406:"b8726063",2439:"038d5041",2533:"562915c6",2534:"5cef7702",2550:"8d81acfc",2556:"7e56d748",2562:"8af2269b",2582:"04e6c2f5",2606:"b5382d60",2636:"2b1dab84",2650:"7e8b474f",2673:"d26b0d60",2773:"ce3594ac",2776:"c0c43df6",2862:"c613762a",2874:"e9fa7af1",2922:"1e133094",3011:"42d4ccf1",3062:"55fdaf51",3164:"85a279e2",3185:"ee2e4b77",3238:"9df80c26",3259:"ac5dd4ef",3312:"f960e7b6",3338:"ab71d86c",3381:"483f8889",3447:"640f0573",3454:"adf1f8d5",3463:"fed5c86d",3469:"cfbc35bd",3479:"5d074144",3512:"104008e1",3515:"422c9557",3521:"ae0ff57f",3590:"3807e0ad",3595:"14bc812c",3751:"338a7bf9",3755:"c65f722d",3857:"d2b6cda7",3869:"51579de3",3878:"3cdad65c",3914:"ff304573",3939:"ae12cb28",3998:"a668998d",4033:"73f6caf1",4121:"cbec5c8f",4158:"55871959",4166:"4f19eae2",4177:"02a6d094",4193:"37ccf1de",4223:"7ccc054e",4248:"e34bdfc3",4289:"7e8ef305",4304:"804e189d",4307:"80ca11cd",4333:"35c99d38",4341:"f0e9f017",4364:"001a0e94",4493:"399e6aa4",4507:"48fa1223",4513:"01f863c3",4570:"9af56b1b",4660:"5b109333",4743:"08a3b65d",4769:"61e14272",4796:"960437d1",4815:"52807f73",4829:"e7541d41",4851:"e9e2a71b",4882:"cbba1ab0",4918:"c9c849d0",4936:"051f7a95",5017:"f1090b5b",5055:"bf2deaa3",5084:"581c1f3f",5150:"c5e4a4df",5187:"125f1c65",5207:"3c691629",5228:"611038ee",5283:"d8cc893c",5305:"109d5fe8",5336:"1ee346ed",5375:"057e65b7",5404:"333819cc",5407:"4e5cf648",5408:"280db2b3",5413:"48b2c64a",5518:"851a48ce",5580:"ae5e11da",5631:"ac4ffa9d",5707:"f4a94a31",5772:"a8188808",5822:"3dfd1bea",5837:"8c1789a5",5919:"c031a608",5921:"1f274f12",5922:"a9ef060c",6078:"1b9ec360",6090:"674a8590",6125:"aecf4cd4",6141:"e625ba60",6157:"784442da",6187:"96104aba",6263:"52093635",6325:"d5e33ead",6570:"500a3d05",6591:"e35d0317",6640:"e10c8ea8",6713:"85ecd7fa",6714:"492b458b",6779:"4ef702a6",6786:"1ae3037d",6799:"16ef0a7f",6859:"ebde1054",6907:"aede8217",6928:"b5d0af31",6999:"f5eca232",7023:"f9839c0b",7075:"179be5b4",7096:"9f4cc897",7130:"a2a77901",7152:"677765b3",7219:"b467aef4",7235:"fde8c993",7283:"717bc03d",7395:"9467da66",7530:"0176e1e6",7539:"1e21debf",7549:"e3336e78",7592:"d17cfd2e",7621:"c006a056",7647:"8bf0398f",7657:"ce51f510",7661:"a8346d13",7666:"324d6e70",7700:"0be1f956",7746:"21346cba",7820:"2e97e336",7823:"5a89169d",7918:"476191cb",8e3:"d9cb26c6",8149:"ad6025e7",8221:"a4a03632",8248:"6b2f2ba2",8252:"ca633ee4",8292:"a12213f5",8379:"2ea8d2e6",8381:"29a2e4eb",8395:"ee608d54",8511:"a258d51d",8535:"2c53393f",8537:"97b9d597",8673:"64dc3cdb",8690:"d0105ecb",8704:"6dc08d8a",8750:"d9ac97ff",8789:"4c882009",8820:"e0aecdfc",8838:"b1f013c0",8880:"752cc726",8946:"d146c46b",8954:"a8f685c6",8958:"aba4d313",9042:"c9dd5109",9060:"6610998b",9069:"daaabb90",9123:"eac69fa1",9214:"4d5c753c",9279:"ab5611b0",9383:"d973238c",9415:"3093f817",9449:"bcfa9c73",9485:"d2d08899",9508:"01d4c732",9514:"ad6e3293",9518:"4287588d",9542:"d626135a",9552:"03795cf8",9554:"8b3e506d",9707:"2af2cede",9721:"b1a37d07",9789:"fce914da",9850:"987e5cba",9868:"21c12063",9874:"7ec34339",9893:"996b1d1f",9924:"fb9780e2",9933:"09f2f089"}[e]+".js",r.miniCssF=e=>{},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,c)=>Object.prototype.hasOwnProperty.call(e,c),f={},d="noco-docs:",r.l=(e,c,a,b)=>{if(f[e])f[e].push(c);else{var t,o;if(void 0!==a)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==d+a){t=u;break}}t||(o=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,r.nc&&t.setAttribute("nonce",r.nc),t.setAttribute("data-webpack",d+a),t.src=e),f[e]=[c];var l=(c,a)=>{t.onerror=t.onload=null,clearTimeout(s);var d=f[e];if(delete f[e],t.parentNode&&t.parentNode.removeChild(t),d&&d.forEach((e=>e(a))),c)return c(a)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=l.bind(null,t.onerror),t.onload=l.bind(null,t.onload),o&&document.head.appendChild(t)}},r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="/",r.gca=function(e){return e={17896441:"7918",22580739:"1796",23371042:"5375",44655909:"2406",55156658:"1802",70424118:"332",71540999:"8954",83533542:"3878",95677701:"1174","01865ba3":"43","935f2afb":"53","16d5baaf":"65",c42aaec2:"92","0ecc5e11":"117",ce2b01b6:"211","6d2f78d9":"254",b65801cb:"274","86fc9284":"305",d69d4db4:"333",b3347e58:"345",ebb99180:"346","2b263996":"403","20e10381":"405","9db7fbd6":"481",cd3c4207:"485","5b61f490":"518","0c130525":"604",c1a34d6e:"636","615746d5":"678","9329f711":"753",e68614dc:"771",cd725ea4:"800","0a7c5cbc":"809",f6aad64f:"853","71f80183":"924","006c1c22":"1015",fb5c685c:"1067",e3120721:"1120","1970c274":"1140","35af5afe":"1179","00aa88f5":"1185","7dce83b4":"1193","985d43d9":"1196",d5451361:"1205","2cbe0325":"1245","0834b429":"1305",e302cfc9:"1313","013b8728":"1371",fb12fd2d:"1416",c76e097b:"1461","023320c3":"1484","81862c4f":"1499",dc1c5b3c:"1576",d12c5626:"1609",e8cbe097:"1635",bb53f532:"1641",b6006dd7:"1676",ffd85642:"1705","4cd0de40":"1730","4ed1386c":"1753","2bb712de":"1771","2eb4ec02":"1876","310a23cf":"1878","5eaf3a75":"1944",cc44517e:"1949","9a7e4ef7":"1961","10779e77":"1990","0d8de604":"2092","458ed5bd":"2237",b2206ab4:"2384","276e2b0f":"2439","3a7c0cf6":"2533","300d0b41":"2534",a47b7f3a:"2550","278121a5":"2556","224f2b0f":"2562",d96af704:"2582",bd02e23f:"2606","2a42d1d2":"2636","55403ccd":"2650","78ec2f26":"2673",b22d161b:"2773",fe112e79:"2776",f0eb83f3:"2862",c2accac3:"2874","4f577b60":"2922","6f7695df":"3011","9a52cc21":"3062","58354ae8":"3164",a43060c8:"3185","27b20541":"3238","2888903d":"3259",a7294da8:"3312","3da8114c":"3338","8498c216":"3381",d3abb5b7:"3447","69bee932":"3454","60b8b995":"3463","525fa7b4":"3469","0cab3fcc":"3479","3aad05b1":"3512","3ac80ba6":"3515",f9241299:"3521","3615d78a":"3590","052c7f5b":"3595","3720c009":"3751","4efb7b3c":"3755",b7abf355:"3857","69bed9e5":"3869",df59b4b5:"3914","5436f7e6":"3939","7ce1d842":"3998","5ccd3149":"4033","55960ee5":"4121","6a0eac6b":"4158",c1dfffdd:"4166","7e18769a":"4177","88cc213e":"4193","7a733070":"4223","69895f00":"4289","45c1aab2":"4304","99f674e5":"4307","9d4ed5ff":"4333",e55064b4:"4341","34b71ab6":"4364","17a7e1f3":"4493","87e9af65":"4507",c7dc53b4:"4513","824dfda1":"4570",c93390fb:"4660",d767d123:"4743","9aad2067":"4769","1e403fb7":"4796","70efa42e":"4815","2a1ace55":"4829",eb689018:"4851",da4f93ee:"4882","147f12f7":"4918","09ceb1a0":"4936","7d5d7de6":"5017",e631982f:"5055","2fa98934":"5084","524f61e0":"5150","5c9cf4c7":"5187","4bab5100":"5207",cc9fede1:"5228",a54c3ef6:"5283","0ac1e38e":"5305","11d84c26":"5336","1b14dca8":"5404",fb60c522:"5407","105fb6bf":"5408",d427e024:"5413","1c2ab191":"5518","7c4b6d90":"5580","2c8a1eac":"5631","0bd8cdc6":"5707","576905f1":"5772","0f4f52c0":"5822","2d8eea4e":"5837",ab9ce1e1:"5919",ec134df3:"5921","14095bfc":"5922","6502d10a":"6078","9db0d30f":"6090",ec135315:"6125","855d76bb":"6141","0f6b8098":"6157","0908b333":"6187",e4367861:"6263","4c6b0ee7":"6325","03af2c79":"6570","61a3d417":"6591","6485a1bf":"6640",abbfc25c:"6713",ae9857c7:"6714",ba1d2c5b:"6779","181f370e":"6786","31befc1e":"6799",e68e0fff:"6859","22aab9a3":"6907",a18f2535:"6928","9e1a113d":"6999","90e43058":"7023","0938fe36":"7075",c1501dcb:"7096","31f9cd1a":"7130","529c2981":"7152","6fe2a298":"7219",f9538193:"7235",e5a54c1b:"7283","5dcc9f57":"7395","4145e2b1":"7530","14d6025d":"7539","68fa8000":"7549","6a105426":"7592","61af7884":"7621","6233b6dc":"7647","052736b6":"7657","9906c9d3":"7661","2d5bd7a1":"7666","603e048e":"7700",f7d905ba:"7746","037e2c34":"7820","9e7567e1":"7823",e4e12989:"8000","1b3738fb":"8149",c3d0dca5:"8221","408139c4":"8248","177ad845":"8252",d9e65f56:"8379","9c78149d":"8381","52df1fbb":"8395","9040003c":"8511","6aee45b4":"8535","6a2ab9d1":"8537","016441e2":"8673",ed0a57e3:"8690","1e898359":"8704",a9993c14:"8750","25ad7bcb":"8789",d01bd8c5:"8820","5af3a857":"8838",e28b0c4f:"8880","10b0edf0":"8946",b444d910:"8958",a15cb612:"9042","8a8a6f17":"9060",e56fdc78:"9069",f4472a32:"9123",f472468a:"9214","9dfd9b1b":"9279",a71ccd0b:"9383",f58fbde1:"9415","18c96d41":"9449",fc37d7fe:"9485","523749b8":"9508","1be78505":"9514","95a14fd1":"9518","319e5695":"9542","2226a1e9":"9552",e12d67b0:"9554",ae730630:"9707",bb516362:"9721","32e0f401":"9789","9995b2be":"9850",ded49de4:"9868","832fc58a":"9874","98de4c79":"9893",df203c0f:"9924","654123f4":"9933"}[e]||e,r.p+r.u(e)},(()=>{var e={1303:0,532:0};r.f.j=(c,a)=>{var f=r.o(e,c)?e[c]:void 0;if(0!==f)if(f)a.push(f[2]);else if(/^(1303|532)$/.test(c))e[c]=0;else{var d=new Promise(((a,d)=>f=e[c]=[a,d]));a.push(f[2]=d);var b=r.p+r.u(c),t=new Error;r.l(b,(a=>{if(r.o(e,c)&&(0!==(f=e[c])&&(e[c]=void 0),f)){var d=a&&("load"===a.type?"missing":a.type),b=a&&a.target&&a.target.src;t.message="Loading chunk "+c+" failed.\n("+d+": "+b+")",t.name="ChunkLoadError",t.type=d,t.request=b,f[1](t)}}),"chunk-"+c,c)}},r.O.j=c=>0===e[c];var c=(c,a)=>{var f,d,b=a[0],t=a[1],o=a[2],n=0;if(b.some((c=>0!==e[c]))){for(f in t)r.o(t,f)&&(r.m[f]=t[f]);if(o)var i=o(r)}for(c&&c(a);n<b.length;n++)d=b[n],r.o(e,d)&&e[d]&&e[d][0](),e[d]=0;return r.O(i)},a=self.webpackChunknoco_docs=self.webpackChunknoco_docs||[];a.forEach(c.bind(null,0)),a.push=c.bind(null,a.push.bind(a))})()})(); \ No newline at end of file diff --git a/packages/noco-docs/dist/automation/webhook/actions-on-webhook/index.html b/packages/noco-docs/dist/automation/webhook/actions-on-webhook/index.html new file mode 100644 index 0000000000..4b617360ab --- /dev/null +++ b/packages/noco-docs/dist/automation/webhook/actions-on-webhook/index.html @@ -0,0 +1,16 @@ +<!doctype html> +<html lang="en" dir="ltr" class="docs-wrapper docs-doc-page docs-version-current plugin-docs plugin-id-default docs-doc-id-automation/webhook/actions-on-webhook" data-has-hydrated="false"> +<head> +<meta charset="UTF-8"> +<meta name="generator" content="Docusaurus v2.4.3"> +<title data-rh="true">Actions on webhook | NocoDB + + + + +
+
Version: Latest

Actions on webhook

Enable/Disable Webhook

To disable a Webhook

  • Open Webhook tab to find list of webhooks created
  • Toggle Activate button to enable/disable

Webhook List

Delete Webhook

To delete a Webhook

  • Open Webhook tab to find list of webhooks created
  • Click on ... actions button associated with the webhook to be deleted
  • Select Delete

Webhook context menu

Duplicate Webhook

To duplicate a Webhook

  • Open Webhook tab to find list of webhooks created
  • Click on ... actions button associated with the webhook to be duplicate
  • Select Duplicate

Webhook context menu

A copy of the webhook will be created (disabled by default) with a suffix - Copy

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/automation/webhook/create-webhook/index.html b/packages/noco-docs/dist/automation/webhook/create-webhook/index.html new file mode 100644 index 0000000000..9dc4370b24 --- /dev/null +++ b/packages/noco-docs/dist/automation/webhook/create-webhook/index.html @@ -0,0 +1,16 @@ + + + + + +Create webhook | NocoDB + + + + +
+
Version: Latest

Create webhook

Create Webhook

Accessing Webhook

  1. Click on table for which webhook needs to be configured on the left sidebar
  2. Open Details tab in topbar,
  3. Click on Webhooks tab
  4. Click Add New Webhook

Accessing webhook

Configuring webhook

  1. Webhook Name: Name of the webhook
  2. Event: Select the event for which webhook needs to be triggered
TriggerDetails
After InsertAfter a single record is inserted
After UpdateAfter a single record is updated
After DeleteAfter a single record is deleted
After Bulk InsertAfter bulk records are inserted
After Bulk UpdateAfter bulk records are updated
After Bulk DeleteAfter bulk records are deleted
  1. Method & URL: Configure the endpoint to which webhook needs to be triggered. Supported methods are GET, POST, DELETE, PUT, HEAD, PATCH

  2. [Optional] Headers & Parameters: Configure Request headers & parameters (if any)

  3. [Optional] Condition: Only records meeting the criteria will trigger webhook

  4. [Optional] Test: Test webhook (with sample payload) to verify if parameter are configured appropriately

  5. Save: Save the webhook

Configuring webhook

Webhook Response Sample

{
"type": "records.after.insert",
"id": "9dac1c54-b3be-49a1-a676-af388145fa8c",
"data": {
"table_id": "md_xzru7dcqrecc60",
"table_name": "Film",
"view_id": "vw_736wrpoas7tr0c",
"view_name": "Film",
"rows": [
{
"FilmId": 1011,
"Title": "FOO",
"Language": {
"LanguageId": 1,
"Name": "English"
},
}
]
}
}
>

Call Log

Call Log allows user to check the call history of the hook. By default, it has been disabled. However, it can be configured by using environment variable NC_AUTOMATION_LOG_LEVEL.

  • NC_AUTOMATION_LOG_LEVEL=OFF: No logs will be displayed and no history will be inserted to meta database.
  • NC_AUTOMATION_LOG_LEVEL=ERROR: only error logs will be displayed and history of error logs will be inserted to meta database.
  • NC_AUTOMATION_LOG_LEVEL=ALL: Both error and success logs will be displayed and history of both types of logs will be inserted to meta database. This option is only available for Enterprise Edition.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/automation/webhook/webhook-overview/index.html b/packages/noco-docs/dist/automation/webhook/webhook-overview/index.html new file mode 100644 index 0000000000..43ee062247 --- /dev/null +++ b/packages/noco-docs/dist/automation/webhook/webhook-overview/index.html @@ -0,0 +1,16 @@ + + + + + +Webhook overview | NocoDB + + + + +
+
Version: Latest

Webhook overview

You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.

Note that, Webhooks currently are specific for associated table.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/actions-on-base/index.html b/packages/noco-docs/dist/bases/actions-on-base/index.html new file mode 100644 index 0000000000..012e133420 --- /dev/null +++ b/packages/noco-docs/dist/bases/actions-on-base/index.html @@ -0,0 +1,19 @@ + + + + + +Actions on base | NocoDB + + + + +
+
Version: Latest

Actions on base

Base context menu

The base context menu offers a selection of swift actions that can be executed on a base. To access this menu, click on the ellipsis symbol (...) located adjacent to the base name within the left sidebar. +base context menu

Rename base

To modify the name of a base, you can easily do so by following these steps:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Rename option.
  3. Input the new name for the base directly within the field provided and then press the Enter key to confirm and save the updated name.

base context menu

base rename

Star base

You can star a base by following simple steps below:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Add to Starred option.
  3. Subsequently, the designated base will be placed into the "Starred" section, conveniently positioned within the left sidebar.

base context menu

base starred

info

Starred base will appear in both Starred section and All Bases section on the left sidebar.

Remove a base from starred list

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Remove from Starred option.
  3. Subsequently, the designated base will be removed from the Starred section.

image

Duplicate base

To duplicate a base, you can follow these straightforward steps:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Duplicate option.
  3. Optionally, you can configure the duplication process with the following choices: +a) Include data: You have the flexibility to choose whether to duplicate the base with or without its data. +b) Include views: You can decide whether to duplicate the base with or without its views.
  4. Click the Confirm button in the confirmation modal that pops up.
  5. A new base will be created, mirroring the original base's schema and data/views based on the configurations specified in step 3.

base context menu

image

info
  • A duplicate base will be generated within the same workspace as the original base.
  • The duplicated base will be suffixed with Copy in its name.
  • You will be designated as the base owner upon the duplication of the base.
  • Existing base members will not be transferred to the duplicated base.

Delete base

If you determine that a base is no longer necessary, you have the option to permanently remove it from your workspace. Deleting a base will delete all the tables and data associated with it.

danger

This action cannot be undone.

info

Only base owner can delete a workspace.

To delete a base:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Delete option.
  3. Select Delete base button on the confirmation dialog box.

base context menu

base delete

Developer features

Base settings

Some general configurations are available for you to modify within the base settings.

  1. Show M2M tables: Toggle this option to display/hide M2M tables within the left sidebar. Many-to-many relation is supported via a junction table & is hidden by default.
  2. Show NULL in cells: Toggle this option to display/hide NULL values within the cells of the table. This helps differentiate against cells holding EMPTY string.
  3. Show NULL & Empty in Filters: Enable 'additional' filters to differentiate fields containing NULL & Empty Strings. Default support for Blank treats both NULL & Empty strings alike.

To configure base settings, you can follow these steps:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Settings option.

base context menu

bsae settings

REST APIs

NocoDB provides a Swagger UI for each base. To access the Swagger UI, follow these steps:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the REST APIs option.

base context menu

swagger

Relations

NocoDB provides a visual representation of the relations between tables within a base. To access the relations diagram, follow these steps:

  1. Initiate the base context menu by clicking on the ellipses ... located next to the base name within the left sidebar.
  2. In the dropdown menu that appears, choose the Relations option.

base context menu

base relations

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/base-collaboration/index.html b/packages/noco-docs/dist/bases/base-collaboration/index.html new file mode 100644 index 0000000000..a4f4b4e818 --- /dev/null +++ b/packages/noco-docs/dist/bases/base-collaboration/index.html @@ -0,0 +1,16 @@ + + + + + +Base collaboration | NocoDB + + + + +
+
Version: Latest

Base collaboration

A member added to a workspace will carry his assigned role specific permissions to all the base with in workspace. To override member permissions to your base, please follow steps outlined below:

  1. Go to the left sidebar and select Base name to access the Base Dashboard.
  2. Click on the Members tab.
  3. Use the dropdown menu to specify the access permissions for the member you wish to collaborate.
  4. Finalize the process by assigning the desired role to the user.

image

More details about roles & permissions can be found here.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/base-overview/index.html b/packages/noco-docs/dist/bases/base-overview/index.html new file mode 100644 index 0000000000..0133db3866 --- /dev/null +++ b/packages/noco-docs/dist/bases/base-overview/index.html @@ -0,0 +1,36 @@ + + + + + +Base overview | NocoDB + + + + +
+
Version: Latest

Base overview

In NocoDB, bases are the foundational elements that encompass tables, views, forms, and webhooks, +providing a structured framework for data organization and collaborative work. +It's essential to understand that each base is inherently tied to a specific workspace and cannot be transferred between +different workspaces. The creator of a base is designated as the 'base owner,' and this ownership status is +non-transferable, conferring exclusive authority over the base, including the ability to delete it.

Bases also come with their unique set of members and access permissions, which take precedence over any permissions set at the workspace level. +This fine-grained control allows for tailored collaboration and data management within each base. +Importantly, there are no restrictions on the number of members you can invite to a base, fostering open teamwork. +Similarly, you have the freedom to create as many tables as needed within a single base, +offering the scalability required to accommodate diverse datasets and projects.

Base Dashboard

The Base Dashboard serves as the primary landing page for a base, offering users a concise summary of its contents and functionality. +This central hub provides users with swift access to essential features such as base settings and collaboration tools. +To access the Base Dashboard, simply click on the base name located in the left sidebar.

image

The Base Dashboard is organized into three key sections, each serving a distinct purpose:

  1. Table List: This section provides a comprehensive list of all tables within the base, +including those sourced from external data repositories. Users can conveniently access a specific table by clicking +on its name. Tables originating from external sources are clearly highlighted in the list for easy identification.

  2. Base Members: In this section, users can view a roster of members associated with the base, along with their +respective permission levels. It's worth noting that members who are part of the workspace automatically inherit +access permissions at the base level. However, the base owner retains the ability to adjust these permissions, +either increasing or decreasing them. Further details on collaboration management can be found in the dedicated +Base Collaborations section.

  3. Data Sources: NocoDB offers the functionality to connect with external data sources and seamlessly +integrate them as native tables. This section provides a listing of connected data sources, setting the stage +for additional details on this feature, which will be covered in the forthcoming Data Sources section. +This feature empowers users to work with external data as effortlessly as with in-house data tables, enhancing the versatility +and scope of data management within the base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/create-base/index.html b/packages/noco-docs/dist/bases/create-base/index.html new file mode 100644 index 0000000000..9e5023b03d --- /dev/null +++ b/packages/noco-docs/dist/bases/create-base/index.html @@ -0,0 +1,17 @@ + + + + + +Create base | NocoDB + + + + +
+
Version: Latest

Create base

Create base from scratch

To initiate the creation of a new database from the ground up, follow these steps:

  1. Navigate to the left sidebar and either select the + icon adjacent to Projects or click on the + New Project button.
  2. Input the desired name for the database within the presented pop-up modal.
  3. Conclude the process by clicking on the Create Database button.

image +image

info
  • Upon the creation of the base, you will assume the role of the base owner.
  • Only the base owner possesses the authority to delete a base.
  • It is possible to create multiple bases within a single workspace.

On the successful creation of a base, you will be directed to the Base Dashboard, which serves as the primary landing page for the base. This central hub provides users with swift access to essential features such as base settings and collaboration tools. To access the Base Dashboard, simply click on the base name located in the left sidebar.

Find more details on adding tables to a base in the Tables section.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/import-base-from-airtable/index.html b/packages/noco-docs/dist/bases/import-base-from-airtable/index.html new file mode 100644 index 0000000000..025ac52f45 --- /dev/null +++ b/packages/noco-docs/dist/bases/import-base-from-airtable/index.html @@ -0,0 +1,17 @@ + + + + + +Import Airtable to NocoDB | NocoDB + + + + +
+
Version: Latest

Import Airtable to NocoDB

NocoDB offers a streamlined process for seamlessly transferring your Airtable database to various database management systems, including MySQL, Postgres and SQLite, in just a matter of minutes. This feature is particularly useful for users who wish to migrate their Airtable database to a more robust and scalable database management system.

info

Import from Airtable is in beta version. See Importing Airtable To NocoDB for the migration notes.

info

To proceed, you must have valid Airtable Credentials. Ensure you have access to the following information from your Airtable account:

Open the Quick Import- AIRTABLE modal begin the import process

  1. Hover over the base name in the left sidebar, click on the ... icon to open base context menu
  2. Select Import Data from the base context menu
  3. Select Airtable

import data

Alternatively, you can also open the Quick Import- AIRTABLE modal from the Base dashboard

  1. Go to your Base dashboard, click on Import Data

  2. Select Airtable

    import data

    import data

Continue with the following steps on Quick Import- AIRTABLE modal to complete the import process:

  1. Input API key / Personal Access Token
  2. Input shared Base ID / URL
  3. Configure Airtable import options (Optional)
  4. Click Import

import data

info

Wait until Go To Dashboard button is activated on the modal. Import details are captured in log window.

import data

Configuration options

  1. Import Data: If you disable this option, only tables and views will be created (schema), excluding actual data records.
  2. Import Secondary Views: If you disable this option, only the primary grid view for each table will be imported, omitting any secondary views.
  3. Import Rollup Columns: If you disable this option, you can skip the import of Rollup columns.
  4. Import Lookup Columns: If you disable this option, you can skip the import of Lookup columns.
  5. Import Attachments Columns: If you disable this option, you can skip the import of Attachment columns, which typically store file attachments associated with records.
  6. Import Formula Columns: Please be aware that import of formula columns from Airtable is currently not supported.

Get Airtable Credentials

Create Personal Access Token

Here are the steps to generate an Airtable Personal Access Token:

  1. Visit the Airtable Create Tokens page and click the "Create token" button.
  2. Provide a meaningful name for your token in the Token name field.
  3. Choose the necessary access scopes, with a minimum requirement of data.records:read.
  4. Select the specific Base you wish to access with this token.
  5. Confirm your choices by clicking the Create token button.
  6. Copy the newly generated Personal Access Token for your use.

For detailed information, you can refer to the Airtable Personal Access Token guide.

image

image

image

Retrieve API Key

Retrieve Share Base ID / URL

See here for detailed procedures.

  1. Open Share menu in your Project / Base
  2. Open tab Share Publicly
  3. Enable Turn on full base access
  4. Copy generated shared base URL

Shared base

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/bases/share-base/index.html b/packages/noco-docs/dist/bases/share-base/index.html new file mode 100644 index 0000000000..0709d2107c --- /dev/null +++ b/packages/noco-docs/dist/bases/share-base/index.html @@ -0,0 +1,19 @@ + + + + + +Share base | NocoDB + + + + +
+
Version: Latest

Share base

To share a base, follow the steps below:

  1. Navigate to the top right corner of the top navigation bar and click on the Share button.
  2. In the Shared base section, toggle the switch to Enable public access in order to activate the shared base feature.
  3. The generated link for the shared base will be displayed above and can be utilized to share this project with others. To copy the URL, simply click on the Copy Link option.

Share base

Share base

Modify Share base

Amending the Share base setting will render the previously generated Share base link invalid and generate a new link in its place. +Here are the steps to modify it:

  1. Click on the Share button located in the top right corner of the toolbar.
  2. Toggle the option labeled Enable public access to deactivate the base share.
  3. Toggle the same option, Enable public access, to reactivate the base share, subsequently generating a new link.

Enable public access

Disable Share base

Disabling Share base will render the previously generated Share base link invalid +Here are the steps to disable it:

  1. Click on the 'Share' button located in the top right corner of the toolbar.
  2. Toggle the option labeled Enable public access to deactivate the base share.

Enable public access

Share base Access Permissions

The "Shared base" can be configured in two modes:

  1. Viewer - Users with the provided link will have read-only access to the base data.
  2. Editor - Users with the provided link will have read and write access to the base data.

Toggle Enable Editor Access button to configure permissions as desired +Share base edit access

Embeddable Frame

The NocoDB interface can be seamlessly integrated into existing applications through the utilization of the HTML IFRAME attribute. This feature empowers users to embed the NocoDB interface into their applications, allowing for a unified user experience. To generate the embeddable HTML code, follow these steps:

To Generate Embeddable HTML Code:

  1. Click the Share button located in the top right corner of the toolbar.
  2. Within the Shared base link tab, select the button to copy the Embeddable HTML code to your clipboard.

Share base iFrame

Example:

<iframe
class="nc-embed"
src="https://nocodb-nocodb-rsyir.ondigitalocean.app/dashboard/#/nc/base/e3bba9df-4fc1-4d11-b7ce-41c4a3ad6810?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; border: 1px solid #ddd"
>
</iframe>

Embed into application's HTML Body

Sample code with embedded iframe generated above

<!DOCTYPE html>
<html>
<body>
<iframe
class="nc-embed"
src="http://localhost:3000/#/nc/base/7d4b551c-b5e0-41c9-a87b-f3984c21d2c7?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; "
></iframe>
</body>
</html>
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/base-collaboration/index.html b/packages/noco-docs/dist/collaboration/base-collaboration/index.html new file mode 100644 index 0000000000..5eebd8fdbb --- /dev/null +++ b/packages/noco-docs/dist/collaboration/base-collaboration/index.html @@ -0,0 +1,16 @@ + + + + + +Base collaboration | NocoDB + + + + +
+
Version: Latest

Base collaboration

Inviting members to your base

A member added to a workspace will carry his assigned role specific permissions to all the base with in workspace. To override member permissions to your base, please follow steps outlined below:

  1. Go to the left sidebar and select Base name to access the Base Dashboard.
  2. Click on the Members tab.
  3. Use the dropdown menu to specify the access permissions for the member you wish to collaborate.
  4. Finalize the process by assigning the desired role to the user.

image

More details about roles & permissions can be found here.

Removing members from your base

  1. Go to the left sidebar and select Base name to access the Base Dashboard.
  2. Click on the Members tab.
  3. Use the dropdown menu to specify the access permissions for the member you wish to collaborate.
  4. Assign the No Access role to the user.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/collaboration-overview/index.html b/packages/noco-docs/dist/collaboration/collaboration-overview/index.html new file mode 100644 index 0000000000..7176406196 --- /dev/null +++ b/packages/noco-docs/dist/collaboration/collaboration-overview/index.html @@ -0,0 +1,19 @@ + + + + + +Collaboration overview | NocoDB + + + + +
+
Version: Latest

Collaboration overview

At NocoDB, our passion lies in promoting teamwork, and it's a significant factor contributing to our popularity. Through NocoDB's collaborative functionalities, you have the ability to foster effective task distribution and team communication by extending invitations to others for seamless cooperation.

In this segment, we'll discuss various collaboration features that NocoDB offers.

Workspace collaboration
+Base collaboration
+Share base
+Share view

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/oss-specific-details/index.html b/packages/noco-docs/dist/collaboration/oss-specific-details/index.html new file mode 100644 index 0000000000..c1ec6fa199 --- /dev/null +++ b/packages/noco-docs/dist/collaboration/oss-specific-details/index.html @@ -0,0 +1,16 @@ + + + + + +In Open Source | NocoDB + + + + +
+
Version: Latest

In Open Source

Open source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces. And hence, the user management on Open source is different from Cloud hosted solutions. This article details the specifics of User management on Open source.

User Management

Organisation is an workspace equivalent concept in Open-source NocoDB. An organisation can have multiple bases. Permissions within NocoDB are divided into two levels: Organisation level and Base level.

Organisation Level Permissions:

  • Org Level Creator: Allows users to create new bases and access invited bases.
  • Org Level Viewer: Allows users to access invited bases but does not permit the creation of new bases.

Screenshot 2023-08-22 at 5 01 41 PM

Screenshot 2023-08-22 at 5 01 30 PM

Base Level Permissions:

The permissions at base level in Open source NocoDB remain same as cloud solutions. The base level permissions are summarized below:

  • Owner: The user who created the project. A project can have only one owner. The owner persists until the project exists and the role is non-transferable. The owner has access to carry out any operations within the project, including deleting it.
  • Creator: Has access to carry out any operations within the project except deleting the project and removing the "Owner."
  • Editor: Can modify data but cannot modify the schema (add/remove columns, tables, users, and such).
  • Commenter: Can neither modify data nor schema, can only see data and can mark record-level comments.
  • Viewer: Can only see data.

Please note that the above-mentioned Base Level Permissions are additional to the already defined Organisation Level Permissions.

In addition to the previously defined permissions, NocoDB also includes the role of Super Admin. The Super Admin is the first user to sign up on this NocoDB installation. An organisation can have only one Super Admin and this role is non-transferable. The Super Admin will have the equivalent permissions of an "Org Level Creator" and "Owner" for all projects within the organisation.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/share-base/index.html b/packages/noco-docs/dist/collaboration/share-base/index.html new file mode 100644 index 0000000000..90846adf1f --- /dev/null +++ b/packages/noco-docs/dist/collaboration/share-base/index.html @@ -0,0 +1,19 @@ + + + + + +Share base | NocoDB + + + + +
+
Version: Latest

Share base

To share a base, follow the steps below:

  1. Navigate to the top right corner of the top navigation bar and click on the Share button.
  2. In the Shared base section, toggle the switch to Enable public access in order to activate the shared base feature.
  3. The generated link for the shared base will be displayed above and can be utilized to share this project with others. To copy the URL, simply click on the Copy Link option.

Share base

Share base

Modify Share base

Amending the Share base setting will render the previously generated Share base link invalid and generate a new link in its place. +Here are the steps to modify it:

  1. Click on the Share button located in the top right corner of the toolbar.
  2. Toggle the option labeled Enable public access to deactivate the base share.
  3. Toggle the same option, Enable public access, to reactivate the base share, subsequently generating a new link.

Enable public access

Disable Share base

Disabling Share base will render the previously generated Share base link invalid +Here are the steps to disable it:

  1. Click on the 'Share' button located in the top right corner of the toolbar.
  2. Toggle the option labeled Enable public access to deactivate the base share.

Enable public access

Share base Access Permissions

The "Shared base" can be configured in two modes:

  1. Viewer - Users with the provided link will have read-only access to the base data.
  2. Editor - Users with the provided link will have read and write access to the base data.

Toggle Enable Editor Access button to configure permissions as desired +Share base edit access

Embeddable Frame

The NocoDB interface can be seamlessly integrated into existing applications through the utilization of the HTML IFRAME attribute. This feature empowers users to embed the NocoDB interface into their applications, allowing for a unified user experience. To generate the embeddable HTML code, follow these steps:

To Generate Embeddable HTML Code:

  1. Click the Share button located in the top right corner of the toolbar.
  2. Within the Shared base link tab, select the button to copy the Embeddable HTML code to your clipboard.

Share base iFrame

Example:

<iframe
class="nc-embed"
src="https://nocodb-nocodb-rsyir.ondigitalocean.app/dashboard/#/nc/base/e3bba9df-4fc1-4d11-b7ce-41c4a3ad6810?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; border: 1px solid #ddd"
>
</iframe>

Embed into application's HTML Body

Sample code with embedded iframe generated above

<!DOCTYPE html>
<html>
<body>
<iframe
class="nc-embed"
src="http://localhost:3000/#/nc/base/7d4b551c-b5e0-41c9-a87b-f3984c21d2c7?embed"
frameBorder="0"
width="100%"
height="700"
style="background: transparent; "
></iframe>
</body>
</html>
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/share-view/index.html b/packages/noco-docs/dist/collaboration/share-view/index.html new file mode 100644 index 0000000000..334365acca --- /dev/null +++ b/packages/noco-docs/dist/collaboration/share-view/index.html @@ -0,0 +1,19 @@ + + + + + +Share view | NocoDB + + + + +
+
Version: Latest

Share view

Generate Share View

  1. Click Share button on the top right of the toolbar
  2. Toggle Enable public viewing to create shared view link
  3. Click Copy button to copy the link to clipboard

share button

shared view

Share view options

Password protection

You can enable Restrict access with a password if you want a password-protected view

password protection

Download options

You can toggle Allow Download button to enable or disable download CSV/XLSX options in the shared view link

download options

Share Form View Options

Form view has additional customizations for shared view. You can enable/disable the following options for shared form view:

  1. Survey mode: This option when enabled, will display the form in survey mode.
  2. RTL Orientation: This option when enabled, will display the form in RTL orientation.
  3. Themes: You can select a theme for the form from the dropdown. +form view options

Access Share View

To access the shared view, please follow the steps below: +Click on the Shared View URL. If the URL is password-protected, you will be prompted to enter the password to unlock it. Please input the required password to proceed.

password modal

Once the password is successfully entered and authenticated, you will gain access to the shared view. +In the event that the URL is not password-protected, you will be directed to the shared view directly, without the need for a password.

share-view

Users with the shared view link can only view the data and cannot make any changes to the view or its content. Records and fields in the shared view will be updated in real-time as changes are made to the original view. Users accessing shared view can apply filters and sort records as per their requirements.

info

Note that, filters & sorts applied to shared view will not be persisted. These filters & sorts will be reset when the shared view is accessed again.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/collaboration/workspace-collaboration/index.html b/packages/noco-docs/dist/collaboration/workspace-collaboration/index.html new file mode 100644 index 0000000000..f63cbea7fc --- /dev/null +++ b/packages/noco-docs/dist/collaboration/workspace-collaboration/index.html @@ -0,0 +1,19 @@ + + + + + +Workspace collaboration | NocoDB + + + + +
+
Version: Latest

Workspace collaboration

note

A comprehensive guide regarding roles and permissions can be accessed here.

Invite members to Workspace

  1. Navigate to the Workspace configuration page by selecting Team & Settings in the left sidebar.
  2. Access the Members tab.
  3. Input the email address of the intended member for the invitation.
  4. Click on Role dropdown menu
  5. Choose the appropriate access permission for the member from the dropdown menu.
  6. Conclude the process by selecting the Add Member(s) button.

image

info

You have the capability to invite multiple members simultaneously by entering their email addresses, separated by commas.

List Workspace members

The Members tab displays a list of users who have been granted access to the workspace. +image

Modify Workspace Member Roles

You can modify the access permissions of members by following these steps:

  1. Access the dropdown menu.
  2. Select the desired new role option. +image

Remove Workspace Members

To remove a member from the workspace, take the following steps:

  1. Click on the vertical ellipses to open the context menu.
  2. Select the Remove User option. +image
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/data-source/data-source-overview/index.html b/packages/noco-docs/dist/data-source/data-source-overview/index.html new file mode 100644 index 0000000000..e2caa53e5a --- /dev/null +++ b/packages/noco-docs/dist/data-source/data-source-overview/index.html @@ -0,0 +1,23 @@ + + + + + +Data sources overview | NocoDB + + + + +
+
Version: Latest

Data sources overview

Overview

NocoDB allows you to connect to external data sources and get a unified spreadsheet view of your data. Activities related to external data sources can be managed from Data Sources tab in Base dashboard.

Data Sources tab includes following functionalities

  1. Connect/manage external data source
  2. UI Access Control
  3. Relations
  4. Audit logs
info

Currently only one external data source can be added per project.

Accessing Data Sources

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab

data source

Sync Metadata

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on Sync Metadata button listed under Actions column for the data source that you wish to sync metadata for
  4. [Optional] Click on Reload button to refresh Sync state.
  5. Any changes to the metadata identified will be listed in the Sync State column
  6. Click on Sync Now button to sync the metadata changes

sync metadata +sync metadata

After the sync is complete, you can see the updated state in the Sync State column. Sync modal also marks Tables metadata is in Sync in the header.

post sync

UI Access Control

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on UI ACL button listed under Actions column for the data source that you wish to manage UI access control for
  4. On the UI ACL modal, you can see the list of tables available in the data source as rows & roles available as columns. Toggle checkboxes to enable/disable access to tables for specific roles.
  5. Click on Save button to save the changes

ui acl +ui acl

Audit logs

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on Audit button listed under Actions column for the data source that you wish to access Audit logs for

audit +audit logs

Relations

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on Relations button listed under Actions column for the data source that you wish to access ERD (Relations view) for

relations +relations

Junction table names within Relations

  • Enable Show M2M Tables within Project Settings menu
  • Double-click on Show Columns to see additional checkboxes get enabled.
    • Enabling which you should be able to see junction tables and their table names.

image

Edit external database configuration parameters

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on Edit icon listed under Actions column for the data source that you wish to access ERD (Relations view) for +Go to Data Sources, click Edit icon, you can re-configure database credentials.
    Please make sure database configuration parameters are valid. Any incorrect parameters could lead to schema loss! +

relations +edit db config

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Click on Delete icon listed under Actions column for the data source that you wish to Unlink

datasource unlink

Data source visibility

  1. Access Base context menu by clicking on the Base name in the left sidebar
  2. Click on Data Sources tab
  3. Toggle radio button listed under Visibility column for the data source that you wish to hide/un-hide

datasource visibility

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/architecture/index.html b/packages/noco-docs/dist/engineering/architecture/index.html new file mode 100644 index 0000000000..09eac8fa14 --- /dev/null +++ b/packages/noco-docs/dist/engineering/architecture/index.html @@ -0,0 +1,16 @@ + + + + + +Architecture overview | NocoDB + + + + +
+
Version: Latest

Architecture overview

By default, if NC_DB is not specified, then SQLite will be used to store your metadata. We suggest users to separate the metadata and user data in different databases.

image

Project TypeMetadata stored inData stored in
Create new projectNC_DBNC_DB
Create new project with External DatabaseNC_DBExternal Database
Create new project from ExcelNC_DBNC_DB
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/builds-and-releases/index.html b/packages/noco-docs/dist/engineering/builds-and-releases/index.html new file mode 100644 index 0000000000..6404909ceb --- /dev/null +++ b/packages/noco-docs/dist/engineering/builds-and-releases/index.html @@ -0,0 +1,16 @@ + + + + + +Releases & builds | NocoDB + + + + +
+
Version: Latest

Releases & builds

Builds of NocoDB

There are 3 kinds of docker builds in NocoDB

Below is an overview of how to make these builds and what happens behind the scenes.

Release builds

How to make a release build ?

  • Click NocoDB release action

  • You should see the below screen

    image

  • Change Use workflow from to Branch: master. If you choose the wrong branch, the workflow will be ended.

    image

  • Then there would be two cases - you can either leave target tag and pervious tag blank or manually input some values

  • Target Tag means the target deployment version, while Previous Tag means the latest version as of now. Previous Tag is used for Release Note only - showing the file / commit differences between two tags.

Tagging

The naming convention would be following given the actual release tag is 0.100.0

  • 0.100.0-beta.0 (first version of pre-release)
  • 0.100.0-beta.1 (include bug fix changes on top of the previous version)
  • 0.100.0-beta.2(include bug fix changes on top of the previous version)
  • and so on ...
  • 0.100.0 (actual release)
  • 0.100.1 (minor bug fix release)
  • 0.100.2 (minor bug fix release)

Case 1: Leaving inputs blank

  • If Previous Tag is blank, then the value will be fetched from latest
  • If Target Tag is blank, then the value will be Previous Tag plus one. Example: 0.90.11 (Previous Tag) + 0.0.1 = 0.90.12 (Target Tag)

Case 2: Manually Input

Why? Sometimes we may mess up in NPM deployment. As NPM doesn't allow us to redeploy to the same tag again, in this case we cannot just use the previous tag + 1. Therefore, we need to use previous tag + 2 instead and we manually configure it.

  • After that, click Run workflow to start
  • You can see Summary for the overall job status.
  • Once release-draft-note and release-executables is finished, then go to releases, edit the draft note and save as draft for time being.
    • Example: Adding header, update content if necessary, and click Auto-generate release notes to include more info.
  • Once release-docker is finished, then test it locally first. You'll be expected to see Upgrade Available notification in UI as we haven't published the release note. (the version is retrieved from there)
  • Once everything is finished, then publish the release note and the deployment is considered as DONE.

How does release action work ?

validate-branch

To check if github.ref is master. Otherwise, other branches will be not accepted.

process-input

To enrich target tag or previous tag if necessary.

pr-to-master

Automate a PR from develop to master branch so that we know the actual differences between the previous tag and the current tag. We choose master branch for a deployment base.

release-npm

Build frontend and backend and release them to NPM. The changes during built such as version bumping will be committed and pushed to a temporary branch and an automated PR will be created and merged to master branch.

Note that once you publish with a certain tag, you cannot publish with the same tag again.

release-draft-note

Generate a draft release note. Some actions need to be done after this step.

release-docker

Build docker image and publish it to Docker Hub. It may take around 15 - 30 mins.

close-issues

Open issues marked with label Status: Fixed and Status: Resolved will be closed by bot automatically with comment mentioning the fix is included in which version.

Example:

image

publish-docs

Publish Documentations

update-sdk-path

nocodb-sdk is used in frontend and backend. However, in develop branch, the value would be file:../nocodb-sdk for development purpose (so that the changes done in nocodb-sdk in develop will be included in frontend and backend). During the deployment, the value will be changed to the target tag. This job is to update them back.

sync-to-develop

Once the deployment is finished, there would be some new changes being pushed to master branch. This job is to sync the changes back to develop so that both branch won't have any difference.

Daily builds

What are daily builds ?

  • NocoDB creates every 6 hours from develop branches and publishes as nocodb/nocodb-daily
  • This is so that we can easily try what is in the develop branch easily.

Docker images

  • The docker images will be built and pushed to Docker Hub (See nocodb/nocodb-daily for the full list).

Timely builds

What are timely builds ?

NocoDB has github actions which creates docker and binaries for each PR! And these can be found as a comment on the last commit of the PR.

Example shown below

  • Go to a PR and click on the comment.

    Screenshot 2023-01-23 at 15 46 36
  • Click on the link to copy the docker image and run it locally.

    Screenshot 2023-01-23 at 15 46 55

This is to

  • reduce pull request cycle time
  • allow issue reporters / reviewers to verify the fix without setting up their local machines

Docker images

When a non-draft Pull Request is created, reopened or synchronized, a timely build for Docker would be triggered for the changes only included in the following paths.

  • packages/nocodb-sdk/**
  • packages/nc-gui/**
  • packages/nc-plugin/**
  • packages/nocodb/**

The docker images will be built and pushed to Docker Hub (See nocodb/nocodb-timely for the full list). Once the image is ready, Github bot will add a comment with the command in the pull request. The tag would be <NOCODB_CURRENT_VERSION>-pr-<PR_NUMBER>-<YYYYMMDD>-<HHMM>.

image

Executables or Binaries

Similarly, we provide a timely build for executables for non-docker users. The source code will be built, packaged as binary files, and pushed to Github (See nocodb/nocodb-timely for the full list).

Currently, we only support the following targets:

  • node16-linux-arm64
  • node16-macos-arm64
  • node16-win-arm64
  • node16-linux-x64
  • node16-macos-x64
  • node16-win-x64

Once the executables are ready, Github bot will add a comment with the commands in the pull request.

image

NocoDB creates Docker and Binaries for each PR.

This is to

  • reduce pull request cycle time
  • allow issue reporters / reviewers to verify the fix without setting up their local machines
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/development-setup/index.html b/packages/noco-docs/dist/engineering/development-setup/index.html new file mode 100644 index 0000000000..cb07056af1 --- /dev/null +++ b/packages/noco-docs/dist/engineering/development-setup/index.html @@ -0,0 +1,16 @@ + + + + + +Development setup | NocoDB + + + + +
+
Version: Latest

Development setup

Clone the repo

git clone https://github.com/nocodb/nocodb
# change directory to the project root
cd nocodb

Install dependencies

# run from the project root
pnpm i

Start Frontend

# run from the project root
pnpm start:frontend
# runs on port 3000

Start Backend

# run from the project root
pnpm start:backend
# runs on port 8080

Any changes made to frontend and backend will be automatically reflected in the browser.

Enabling CI-CD for Draft PR

CI-CD will be triggered on moving a PR from draft state to Ready for review state & on pushing changes to Develop. To verify CI-CD before requesting for review, add label trigger-CI on Draft PR.

Accessing CI-CD Failure Screenshots

For Playwright tests, screenshots are captured on the tests. These will provide vital clues for debugging possible issues observed in CI-CD. To access screenshots, Open link associated with CI-CD run & click on Artifacts

Screenshot 2022-09-29 at 12 43 37 PM

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/playwright/index.html b/packages/noco-docs/dist/engineering/playwright/index.html new file mode 100644 index 0000000000..237a00dfa8 --- /dev/null +++ b/packages/noco-docs/dist/engineering/playwright/index.html @@ -0,0 +1,16 @@ + + + + + +Playwright E2E testing | NocoDB + + + + +
+
Version: Latest

Playwright E2E testing

How to run tests

All the tests reside in tests/playwright folder.

Make sure to install the dependencies (in the playwright folder):

pnpm --filter=playwright install
pnpm exec playwright install --with-deps chromium

Run Test Server

Start the backend test server (in packages/nocodb folder):

pnpm run watch:run:playwright

Start the frontend test server (in packages/nc-gui folder):

NUXT_PAGE_TRANSITION_DISABLE=true pnpm run dev

Running all tests

For selecting db type, rename .env.example to .env and set E2E_DEV_DB_TYPE to sqlite(default), mysql or pg.

headless mode(without opening browser):

pnpm run test

with browser:

pnpm run test:debug

For setting up mysql(sakila):

docker-compose -f ./tests/playwright/scripts/docker-compose-mysql-playwright.yml  up -d

For setting up postgres(sakila):

docker-compose -f ./tests/playwright/scripts/docker-compose-playwright-pg.yml 

Running individual tests

Add .only to the test you want to run:

test.only('should login', async ({ page }) => {
// ...
})
pnpm run test

Concepts

Independent tests

  • All tests are independent of each other.
  • Each test starts with a fresh project with a fresh sakila database(option to not use sakila db is also there).
  • Each test creates a new user(email as user@nocodb.com) and logs in with that user to the dashboard.

Caveats:

  • Some stuffs are shared i.e, users, plugins etc. So be catious while writing tests touching that. A fix for this is in the works.
  • In test, we prefix email and project with the test id, which will be deleted after the test is done.

What to test

  • UI verification. This includes verifying the state of the UI element, i.e if the element is visible, if the element has a particular text etc.
  • Test should verify all user flow. A test has a default timeout of 60 seconds. If a test is taking more than 60 seconds, it is a sign that the test should be broken down into smaller tests.
  • Test should also verify all the side effects the feature(i.e. On adding a new field type, should verify field deletion as well) will have, and also error cases.
  • Test name should be descriptive. It should be easy to understand what the test is doing by just reading the test name.

Playwright

  • Playwright is a nodejs library for automating chromium, firefox and webkit.
  • For each test, a new browser context is created. This means that each test runs in a new incognito window.
  • For assertion always use expect from @playwright/test library. This library provides a lot of useful assertions, which also has retry logic built in.

Page Objects

  • Page objects are used to abstract over the components/page. This makes the tests more readable and maintainable.
  • All page objects are in tests/playwright/pages folder.
  • All the test related code should be in page objects.
  • Methods should be as thin as possible and its better to have multiple methods than one big method, which improves reusability.

The methods of a page object can be classified into 2 categories:

  • Actions: Performs an UI actions like click, type, select etc. Is also responsible for waiting for the element to be ready and the action to be performed. This included waiting for API calls to complete.
  • Assertions: Asserts the state of the UI element, i.e if the element is visible, if the element has a particular text etc. Use expect from @playwright/test and if not use expect.poll to wait for the assertion to pass.

Writing a test

Let's write a test for testing filter functionality.

For simplicity, we will have DashboardPage implemented, which will have all the methods related to dashboard page and also its child components like Grid, etc.

Create a test suite

Create a new file filter.spec.ts in tests/playwright/tests folder and use setup method to create a new project and user.

import { test, expect } from '@playwright/test';
import setup, { NcContext } from '../setup';

test.describe('Filter', () => {
let context: NcContext;

test.beforeEach(async ({ page }) => {
context = await setup({ page });
})

test('should filter', async ({ page }) => {
// ...
});
});

Create a page object

Since filter is UI wise scoped to a Toolbar , we will add filter page object to ToolbarPage page object.

export class ToolbarPage extends BasePage {
readonly parent: GridPage | GalleryPage | FormPage | KanbanPage;
readonly filter: ToolbarFilterPage;

constructor(parent: GridPage | GalleryPage | FormPage | KanbanPage) {
super(parent.rootPage);
this.parent = parent;
this.filter = new ToolbarFilterPage(this);
}
}

We will create ToolbarFilterPage page object, which will have all the methods related to filter.

export class ToolbarFilterPage extends BasePage {
readonly toolbar: ToolbarPage;

constructor(toolbar: ToolbarPage) {
super(toolbar.rootPage);
this.toolbar = toolbar;
}
}

Here BasePage is an abstract class, which used to enforce structure for all page objects. Thus all page object should inherit BasePage.

  • Helper methods like waitForResponse and getClipboardText (this can be access on any page object, with this.waitForResponse)
  • Provides structure for page objects, enforces all Page objects to have rootPage property, which is the page object created in the test setup.
  • Enforces all pages to have a get method which will return the locator of the main container of that page, hence we can have focused dom selection, i.e.
// This will only select the button inside the container of the concerned page
await this.get().querySelector('button').count();

Writing an action method

This a method which will reset/clear all the filters. Since this is an action method, it will also wait for the delete filter API to return. Ignoring this API call will cause flakiness in the test, down the line.

async resetFilter() {
await this.waitForResponse({
uiAction: async () => await this.get().locator('.nc-filter-item-remove-btn').click(),
httpMethodsToMatch: ['DELETE'],
requestUrlPathToMatch: '/api/v1/db/meta/filters/',
});
}

Writing an assertion/verification method

Here we use expect from @playwright/test library, which has retry logic built in.

import { expect } from '@playwright/test';

async verifyFilter({ title }: { title: string }) {
await expect(
this.get().locator(`[data-testid="nc-fields-menu-${title}"]`).locator('input[type="checkbox"]')
).toBeChecked();
}

Tips to avoid flakiness

  • If an UI action, causes an API call or the UI state change, then wait for that API call to complete or the UI state to change.
  • What to wait out can be situation specific, but in general, is best to wait for the final state to be reached, i.e. in the case of creating filter, while it seems like waiting for the filter API to complete is enough, but after its return the table rows are reloaded and the UI state changes, so its better to wait for the table rows to be reloaded.

Accessing playwright report in the CI

  • Open Summary tab in the CI workflow in github actions.
  • Scroll down to Artifacts section.
  • Access reports which suffixed with the db type and shard number(corresponding to the CI workerflow name). i.e playwright-report-mysql-2 is for playwright-mysql-2 workflow.
  • Download it and run pnpm install -D @playwright/test && npx playwright show-report ./ inside the downloaded folder.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/repository-structure/index.html b/packages/noco-docs/dist/engineering/repository-structure/index.html new file mode 100644 index 0000000000..5d3c0d072c --- /dev/null +++ b/packages/noco-docs/dist/engineering/repository-structure/index.html @@ -0,0 +1,16 @@ + + + + + +Repository structure | NocoDB + + + + +
+
Version: Latest

Repository structure

We use Lerna to manage multi-packages. We have the following packages.

  • packages/nc-cli : A CLI to create NocoDB app.

  • packages/nocodb-sdk: API client sdk of nocodb.

  • packages/nc-gui: NocoDB Frontend.

  • packages/nc-lib-gui: The build version of nc-gui which will be used in packages/nocodb.

  • packages/nc-plugin: Plugin template.

  • packages/noco-blog: NocoDB Blog which will be auto-released to nocodb/noco-blog.

  • packages/noco-docs: NocoDB Documentation which will be auto-released to nocodb/noco-docs.

  • packages/nocodb: NocoDB Backend, hosted in NPM.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/translation/index.html b/packages/noco-docs/dist/engineering/translation/index.html new file mode 100644 index 0000000000..27f26aba65 --- /dev/null +++ b/packages/noco-docs/dist/engineering/translation/index.html @@ -0,0 +1,18 @@ + + + + + +i18n translation | NocoDB + + + + +
+
Version: Latest

i18n translation

  • NocoDB supports 30+ foreign languages & community contributions are now simplified via Crowdin.

How to add / edit translations ?

Using Github

  • For English, make changes directly to en.json & commit to develop
  • For any other language, use crowdin option.

Using Crowdin

Screenshot 2022-09-08 at 10 26 23 PM

  • Click the language that you wish to contribute

Screenshot 2022-09-08 at 10 29 56 PM

  • Click the Translate button; this opens up Crowdin Online Editor

Screenshot 2022-09-08 at 10 32 17 PM

  • Select string in English on the left-hand menu bar [1]
  • Propose changes [2]
  • Save [3] +Note: Crowdin provides translation recommendation's as in [4]. Click directly if it's apt +

Screenshot 2022-09-08 at 10 37 38 PM

A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follow up on remaining integration work items.

Reference

Refer following articles to get additional details about Crowdin Portal usage

How to add a new language ?

GitHub changes

  • Update enumeration in enums.ts [packages/nc-gui/lib/enums.ts]
  • Map JSON path in a.i18n.ts [packages/nc-gui/plugins/a.i18n.ts]

Crowdin changes [admin only]

  • Open NocoDB project
  • Click on Language on the home tab
  • Select target language, Update
  • Update array in tests/playwright/tests/language.spec.ts

Screenshot 2022-09-08 at 10 52 59 PM

Screenshot 2022-09-08 at 10 54 04 PM

String Categories

  • General: simple & common tokens (save, cancel, submit, open, close, home, and such)
  • Objects: objects from NocoDB POV (project, table, field, view, page, and such)
  • Title: screen headers (compact) (menu headers, modal headers)
  • Lables: text box/ radio/ field headers (few words) (Labels over textbox, radio buttons, and such)
  • Activity/ actions: work items (few words) (Create Project, Delete Table, Add Record, and such)
  • Tooltip: additional information associated with work items (usually lengthy) (Additional information provided for activity)
  • Placeholder: placeholders associated with various textboxes (Text placeholders)
  • Msg
    • Info: general/success category for everything
    • Error: warnings & errors
    • Toast: pop-up toast messages

Note: string name should be in camelCase. Use above list as priority order in case of ambiguity.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/unit-testing/index.html b/packages/noco-docs/dist/engineering/unit-testing/index.html new file mode 100644 index 0000000000..7180feb425 --- /dev/null +++ b/packages/noco-docs/dist/engineering/unit-testing/index.html @@ -0,0 +1,19 @@ + + + + + +Writing unit tests | NocoDB + + + + +
+
Version: Latest

Writing unit tests

Unit Tests

  • All individual unit tests are independent of each other. We don't use any shared state between tests.
  • Test environment includes sakila sample database and any change to it by a test is reverted before running other tests.
  • While running unit tests, it tries to connect to mysql server running on localhost:3306 with username root and password password (which can be configured) and if not found, it will use sqlite as a fallback, hence no requirement of any sql server to run tests.

Pre-requisites

  • MySQL is preferred - however tests can fallback on SQLite too

Setup

pnpm --filter=-nocodb install

# add a .env file
cp tests/unit/.env.sample tests/unit/.env

# open .env file
open tests/unit/.env

Configure the following variables

DB_HOST : host +DB_PORT : port +DB_USER : username +DB_PASSWORD : password

Run Tests

pnpm run test:unit

Folder Structure

The root folder for unit tests is packages/nocodb/tests/unit

  • rest folder contains all the test suites for rest apis.
  • model folder contains all the test suites for models.
  • factory folder contains all the helper functions to create test data.
  • init folder contains helper functions to configure test environment.
  • index.test.ts is the root test suite file which imports all the test suites.
  • TestDbMngr.ts is a helper class to manage test databases (i.e. creating, dropping, etc.).

Factory Pattern

  • Use factories for create/update/delete data. No data should be directly create/updated/deleted in the test.
  • While writing a factory make sure that it can be used with as less parameters as possible and use default values for other parameters.
  • Use named parameters for factories.
    createUser({ email, password})
  • Use one file per factory.

Walk through of writing a Unit Test

We will create an Table test suite as an example.

Configure test

We will configure beforeEach which is called before each test is executed. We will use init function from nocodb/packages/nocodb/tests/unit/init/index.ts, which is a helper function which configures the test environment(i.e resetting state, etc.).

init does the following things -

  • It initializes a Noco instance(reused in all tests).
  • Restores meta and sakila database to its initial state.
  • Creates the root user.
  • Returns context which has auth token for the created user, node server instance(app), and dbConfig.

We will use createProject and createProject factories to create a project and a table.

let context;

beforeEach(async function () {
context = await init();

project = await createProject(context);
table = await createTable(context, project);
});

Test case

We will use it function to create a test case. We will use supertest to make a request to the server. We use expect(chai) to assert the response.

it('Get table list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/meta/projects/${project.id}/tables`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list).to.be.an('array').not.empty;
});
info

We can also run individual test by using .only in describe or it function and the running the test command.

it.only('Get table list', async () => {

Integrating the New Test Suite

We create a new file table.test.ts in packages/nocodb/tests/unit/rest/tests directory.

import 'mocha';
import request from 'supertest';
import init from '../../init';
import { createTable, getAllTables } from '../../factory/table';
import { createProject } from '../../factory/project';
import { defaultColumns } from '../../factory/column';
import Model from '../../../../src/lib/models/Model';
import { expect } from 'chai';

function tableTest() {
let context;
let project;
let table;

beforeEach(async function () {
context = await init();

project = await createProject(context);
table = await createTable(context, project);
});

it('Get table list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/meta/projects/${project.id}/tables`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list).to.be.an('array').not.empty;
});
}

export default function () {
describe('Table', tableTests);
}

We can then import the Table test suite to Rest test suite in packages/nocodb/tests/unit/rest/index.test.ts file(Rest test suite is imported in the root test suite file which is packages/nocodb/tests/unit/index.test.ts).

Seeding Sample DB (Sakila)


function tableTest() {
let context;
let sakilaProject: Project;
let customerTable: Model;

beforeEach(async function () {
context = await init();

/******* Start : Seeding sample database **********/
sakilaProject = await createSakilaProject(context);
/******* End : Seeding sample database **********/

customerTable = await getTable({project: sakilaProject, name: 'customer'})
});

it('Get table data list', async function () {
const response = await request(context.app)
.get(`/api/v1/db/data/noco/${sakilaProject.id}/${customerTable.id}`)
.set('xc-auth', context.token)
.send({})
.expect(200);

expect(response.body.list[0]['FirstName']).to.equal('MARY');
});
}
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/engineering/writing-docs/index.html b/packages/noco-docs/dist/engineering/writing-docs/index.html new file mode 100644 index 0000000000..1c55e2a86d --- /dev/null +++ b/packages/noco-docs/dist/engineering/writing-docs/index.html @@ -0,0 +1,16 @@ + + + + + +Writing docs | NocoDB + + + + +
+
Version: Latest

Writing docs

This article discusses some of the protocol and conventions to be followed while writing docs.

Folder Structure

  • Docs follow object-oriented approach. Each folder represents an object and each file represents procedures associated with that object.
  • Each folder contains an _category_.json file which contains the metadata for that object.
{
"label": "Engineering",
"collapsible": true,
"collapsed": true
}

File Structure

  • Add following metadata to the top of each file.
---
title: "Writing docs"
description: "Overview to writing docs"
tags: ['Engineering']
keywords: ['Engineering', Writing docs', 'Docs conventions']
---
  • title is the title of the article that appears on the sidebar and on the top of the article.
  • description is the description of the article that appears in search results.
  • tags are the tags associated with the article. Tags are used to group articles together. For example, all articles with the tag Workspaces will be grouped together.
  • keywords are the keywords associated with the article. Keywords are used to improve search results. For example, if the user searches for Create workspace, then the article with the keyword Create workspace will be displayed in the search results.

Nomenclature

  • Folder names & file name are
    • in kebab-case.
    • prefix with a number that represents the order in which the folder/file should be displayed in the sidebar.
    • prefix number is always a 3-digit number.
    • For example, 010.account-settings.
  • Only first letter of the folder/file name is capitalized. Second letter onwards, first letter is capitalized only if it is a proper noun.

Tags

  • First letter of each tag is capitalized.
  • Tags usually are Objects or Actions. Add a tag only if we are sure that the tag will be used in multiple places. Example: 'Create' - we can have Create project, Create user, Create API token etc.

Active Tags

Tags that are currently being used in the docs are listed below. See if you can reuse any of these tags before adding a new tag.

Description

  • Description should be crisp and to the point. Preferably one line.
  • Refer to the description associated with the tag to get an idea of how the description should be.
  • Descriptions appear in the search results (when searched by tags). So, it should be descriptive enough to give the user an idea of what the article is about.

Search by tags

Images

  • Annotated images should be placed in img/v2 folder.
  • For every annotated image, there should be a corresponding unannotated image in the img/v2-unannotated folder.
  • Images are kept in the same folder structure as the docs.
  • Use Skitch for annotations.

Before you commit

  • Use npm run build to build the docs.
  • Ensure that the build is successful & there are no errors/warnings related to missing links, images, etc.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/actions-on-field/index.html b/packages/noco-docs/dist/fields/actions-on-field/index.html new file mode 100644 index 0000000000..86266ac4c1 --- /dev/null +++ b/packages/noco-docs/dist/fields/actions-on-field/index.html @@ -0,0 +1,17 @@ + + + + + +Actions on field | NocoDB + + + + +
+
Version: Latest

Actions on field

Fields context menu

Fields context menu can be accessed by clicking on the dropdown icon (🔽) next to the field name.
+Fields context menu

Edit

Rename field

  1. Open the field context menu
  2. Click on Edit option.
  3. Enter new field name as required in the Column Name field.
  4. Click on Save Column button.

Rename field

Change field type

  1. Open the field context menu
  2. Click on Edit option.
  3. Select new field type from the Column Type dropdown.
  4. Click on Save Column button.

Change field type

Change default value

  1. Open the field context menu
  2. Click on Edit option.
  3. Enter new default value in the Default Value field. To disable, click on x icon.
  4. Click on Save Column button.

Change default value

Change field width

To adjust the width of the field, hover over the field edge and drag to adjust the width.

Change field width

Hide field

  1. Open the field context menu
  2. Click on Hide Field option
note
  • Hidden fields are not visible in the table view, but will still be accessible for Formulas, Sort, Filter, etc.
  • To un hide a field, use Toolbar > Fields menu
  • Fields can also be marked as hidden from Toolbar > Fields menu

Set as Display value

  1. Open the field context menu
  2. Click on Set as Display Value option.

Refer to Display Value for more details.

Sort Ascending

  1. Open the field context menu
  2. Click on Sort Ascending option.

Sort Descending

  1. Open the field context menu
  2. Click on Sort Descending option.

Duplicate field

  1. Open the field context menu
  2. Click on Duplicate option.

Duplicated field sans the data will be created with suffix _copy in its name & will be placed to the right of the original field.

Insert after a field

  1. Open the field context menu
  2. Click on Insert after option.

New field will be created to the right of the original field.

Insert before a field

  1. Open the field context menu
  2. Click on Insert before option.

New field will be created to the left of the original field.

Delete field

danger

This action cannot be undone.

To delete a field, follow the steps below:

  1. Open the field context menu by clicking on dropdown icon (🔽) .
  2. Click on Delete.
  3. Confirm the deletion by clicking on Delete Field on the confirmation modal.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/display-value/index.html b/packages/noco-docs/dist/fields/display-value/index.html new file mode 100644 index 0000000000..a4ad6f611f --- /dev/null +++ b/packages/noco-docs/dist/fields/display-value/index.html @@ -0,0 +1,19 @@ + + + + + +Display value | NocoDB + + + + +
+
Version: Latest

Display Value

The Display Value, as its name suggests, serves as the primary or main value within a record of a table, and it is typically the attribute by which we identify or associate that specific record. While it is advisable for the display value to be linked to a field with unique identifiers, such as a primary key, it's important to note that this uniqueness is not always enforced at the database level.

Use of Display Value

  • Within a spreadsheet, Display Value are always highlighted so that it is easier to recognise what record we are working with.
  • And when Links are created between two tables - it is the Display Value that appears in Linked records modal.

Example: +Display Value highlighted in Actor table +display value

Display Value associated when Links field
+The value shown in Link Records modal when adding a new link is associated records Display value

display value- links field

Set Display Value

Click dropdown icon (🔽) in the target column. Click Set as Display Value.

display value set

info

How is Display Value identified for existing database tables ?

  • It is usually the first column after the primary key which is not a number.
  • If there is no column which is not a number then the column adjacent to primary key is chosen.

Can I change the Display Value to another column within tables ?

  • Yes, you can use the same way mentioned above to set Display Value.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/QR-code/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/QR-code/index.html new file mode 100644 index 0000000000..80f7962068 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/QR-code/index.html @@ -0,0 +1,17 @@ + + + + + +QR code | NocoDB + + + + +
+
Version: Latest

QR code

QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.

The following field types are supported for the reference field:

  • Formula
  • Single Line Text
  • Long Text
  • Phone Number
  • URL
  • Email

Create a QR code field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as QR Code from the dropdown.
  4. Select the field to be used as the source for the QR code.
  5. Click on Save Column button.

image

Cell display

Cell displays the QR code generated from the source field. Click on the cell to open enlarged view of the QR code.

image
+image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/attachment/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/attachment/index.html new file mode 100644 index 0000000000..8c0ed7e924 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/attachment/index.html @@ -0,0 +1,17 @@ + + + + + +Attachment | NocoDB + + + + +
+
Version: Latest

Attachment

Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.

Create an Attachment field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Attachment from the dropdown.
  4. Click on Save Column button.

image

Cell display

The cell display for Attachment field is either a clickable preview if file is an image in recognizable format or a file-type icon.
+image

Upload files

To upload files to an Attachment field,

  • Click on the + icon in the cell, choose the file to upload and click on Upload button. OR
  • Drag drop the file to the cell. OR
  • Click on expand icon <>, choose the file to upload or drag-drop file; click on Upload button.

Expand modal

Expand modal for Attachment field displays the list of files uploaded to the field. You can also upload files from the expand modal. To access expand modal, click on the expand icon <> in the cell.

image

Expand modal supports the following actions:

Attach file(s)

  • Click on Attach file(s) button <1>
  • Choose the file(s) to upload

Delete file

  • Click on x icon <2> to the top left of the image card to delete the file

Download file

  • Click on Download button <5> to download the file

Bulk Download file(s)

  • Select the files by clicking on the checkbox <3> to the top left of the image card
  • Click on Bulk Download button <4> to download the selected files

Rename file

  • Click on Rename button <5> to rename the file
  • Enter the new name in the input field
  • Click on Rename button to save the new name
note

Rename file only renames the file in NocoDB display (expand record & tool tip on hover). It does not rename the file in the storage.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/barcode/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/barcode/index.html new file mode 100644 index 0000000000..a98165ff5e --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/barcode/index.html @@ -0,0 +1,17 @@ + + + + + +Barcode | NocoDB + + + + +
+
Version: Latest

Barcode

Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.

image

The following field types are supported for the for reference field:

  • Formula
  • Single Line Text
  • Long Text
  • Phone Number
  • URL
  • Email

Create a barcode field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Barcode from the dropdown.
  4. Select the field to be used as the source for the barcode.
  5. Select the barcode type from the dropdown.
  6. Click on Save Column button.

Cell display

Cell displays the barcode generated from the source field. Click on the cell to open enlarged view of the QR code.

image
+image

Supported barcode types

NocoDB supports the following barcode types for the barcode field type.

  • CODE128
  • EAN
  • EAN-13
  • EAN-8
  • EAN-5
  • EAN-2
  • UPC (A)
  • CODE39
  • ITF-14
  • MSI
  • Pharma code
  • Coda bar
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/checkbox/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/checkbox/index.html new file mode 100644 index 0000000000..c8ad9647ba --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/checkbox/index.html @@ -0,0 +1,18 @@ + + + + + +Checkbox | NocoDB + + + + +
+
Version: Latest

Checkbox

The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.

Create a checkbox field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Checkbox from the dropdown.
  4. [Optional] Select icon for the field; defaults to check icon.
  5. [Optional] Select color for the field; defaults to grey.
  6. [Optional] Set default value for the field.
  7. Click on Save Column button.

image

Cell display

Cell displays the icon in the color selected for the field. A true value will be represented by a checked icon or a filled icon
+image

Supported icons

NocoDB supports the following icons for the checkbox field type.
+image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/geometry/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/geometry/index.html new file mode 100644 index 0000000000..d65c524a73 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/geometry/index.html @@ -0,0 +1,16 @@ + + + + + +Geometry | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/json/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/json/index.html new file mode 100644 index 0000000000..2ac1b732fe --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/json/index.html @@ -0,0 +1,16 @@ + + + + + +JSON | NocoDB + + + + +
+
Version: Latest

JSON

JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.

Create a JSON field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as JSON from the dropdown.
  4. Click on Save Column button.

Cell display

Cell displays the JSON data stored in the field. Click on expand record icon to open the JSON data in an editor modal.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/rating/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/rating/index.html new file mode 100644 index 0000000000..b4bc5c2246 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/rating/index.html @@ -0,0 +1,18 @@ + + + + + +Rating | NocoDB + + + + +
+
Version: Latest

Rating

The

Create a checkbox field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Rating from the dropdown.
  4. [Optional] Select icon for the field; defaults to star icon.
  5. [Optional] Configure max count for the field; defaults to 5.
  6. [Optional] Select color for the field; defaults to grey.
  7. [Optional] Set default value for the field.
  8. Click on Save Column button.

image

Cell display

Cell displays the ratings in the color & icon selected for the field.
+image

Setting value for the field

  • Click on the nth rating icon to set the rating value for the field as n.
  • Key in the rating value in the cell to set the rating value for the field.
  • Paste the rating value in the cell to set the rating value for the field.

Unsetting value for the field

  • Click on the nth rating icon again to set the rating value for the field as 0.
  • Key in 0 in the cell to set the rating value for the field as 0.
  • Key in Delete to set the rating value for the field as 0.

Supported icons

NocoDB supports the following icons for the rating field type.
+image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/custom-types/specific-db-type/index.html b/packages/noco-docs/dist/fields/field-types/custom-types/specific-db-type/index.html new file mode 100644 index 0000000000..0476a78cfe --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/custom-types/specific-db-type/index.html @@ -0,0 +1,16 @@ + + + + + +Specific DB type | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/date-time-based/date-time/index.html b/packages/noco-docs/dist/fields/field-types/date-time-based/date-time/index.html new file mode 100644 index 0000000000..186036c7a0 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/date-time-based/date-time/index.html @@ -0,0 +1,16 @@ + + + + + +Date Time | NocoDB + + + + +
+
Version: Latest

Date Time

Date Time field type is used to store both date and time values in a single field.

Create a date time field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as DateTime from the dropdown.
  4. Configure Date Format
  5. Configure Time Format
  6. [Optional] Configure default value
  7. Click on Save Column button.

image

Supported date formats

FormatExample
YYYY-MM-DD2023-09-22
YYYY/MM/DD2023/09/22
DD-MM-YYYY22-09-2023
MM-DD-YYYY09-22-2023
DD/MM/YYYY22/09/2023
MM/DD/YYYY09/22/2023
DD MM YYYY22 09 2023
MM DD YYYY09 22 2023
YYYY MM DD2023 09 22

Supported time formats

FormatExample
HH:mm:ss12:45:30
HH:mm14:20
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/date-time-based/date/index.html b/packages/noco-docs/dist/fields/field-types/date-time-based/date/index.html new file mode 100644 index 0000000000..c8f49f0b8b --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/date-time-based/date/index.html @@ -0,0 +1,16 @@ + + + + + +Date | NocoDB + + + + +
+
Version: Latest

Date

Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.

Create a date field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Date from the dropdown.
  4. Configure Date Format
  5. [Optional] Configure default value
  6. Click on Save Column button.

image

Supported date formats

FormatExample
YYYY-MM-DD2023-09-22
YYYY/MM/DD2023/09/22
DD-MM-YYYY22-09-2023
MM-DD-YYYY09-22-2023
DD/MM/YYYY22/09/2023
MM/DD/YYYY09/22/2023
DD MM YYYY22 09 2023
MM DD YYYY09 22 2023
YYYY MM DD2023 09 22
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/date-time-based/duration/index.html b/packages/noco-docs/dist/fields/field-types/date-time-based/duration/index.html new file mode 100644 index 0000000000..d5cdead6f4 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/date-time-based/duration/index.html @@ -0,0 +1,16 @@ + + + + + +Duration | NocoDB + + + + +
+
Version: Latest

Duration

Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.

Create a duration field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Duration from the dropdown.
  4. Configure Duration Format
  5. [Optional] Configure default value
  6. Click on Save Column button.

image

Supported duration formats

FormatExample
HH:mm14:20
HH:mm:ss12:45:30
HH:mm:ss.s12:45:30.5
HH:mm.ss.ss12:45.30.50
HH:mm.ss.sss12:45.30.500
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/date-time-based/time/index.html b/packages/noco-docs/dist/fields/field-types/date-time-based/time/index.html new file mode 100644 index 0000000000..dc16388a11 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/date-time-based/time/index.html @@ -0,0 +1,16 @@ + + + + + +Time | NocoDB + + + + +
+
Version: Latest

Time

Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.

Create a time field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Time from the dropdown.
  4. Configure Time Format
  5. [Optional] Configure default value
  6. Click on Save Column button.

image

Supported time formats

FormatExample
HH:mm:ss12:45:30
HH:mm14:20
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/conditional-expressions/index.html b/packages/noco-docs/dist/fields/field-types/formula/conditional-expressions/index.html new file mode 100644 index 0000000000..eb6fc6321e --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/conditional-expressions/index.html @@ -0,0 +1,16 @@ + + + + + +Conditional expressions | NocoDB + + + + +
+
Version: Latest

Conditional expressions

Conditional expressions

NameSyntaxSampleOutput
IFIF(expr, successCase, elseCase)IF({Column} > 1, Value1, Value2)successCase if expr evaluates to TRUE, elseCase otherwise
SWITCHSWITCH(expr, [pattern, value, ..., default])SWITCH({Column}, 1, 'One', 2, 'Two', '--')Switch case value based on expr output
ANDAND(expr1, [expr2,...])AND({Column} > 2, {Column} < 10)TRUE if all expr evaluate to TRUE
OROR(expr1, [expr2,...])OR({Column} > 2, {Column} < 10)TRUE if at least one expr evaluates to TRUE
tip

Logical operators, along with Numerical operators can be used to build conditional expressions.

Examples:

IF({marksSecured} > 80, "GradeA", "GradeB")  
SWITCH({quarterNumber},  
1, 'Jan-Mar',
2, 'Apr-Jun',
3, 'Jul-Sep',
4, 'Oct-Dec',
'INVALID'
)
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/date-functions/index.html b/packages/noco-docs/dist/fields/field-types/formula/date-functions/index.html new file mode 100644 index 0000000000..15b857e981 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/date-functions/index.html @@ -0,0 +1,16 @@ + + + + + +Date functions | NocoDB + + + + +
+
Version: Latest

Date functions

NameSyntaxSampleOutputRemark
NOWNOW()NOW()2022-05-19 17:20:43Returns the current time and day
IF(NOW() < {DATE_COL}, "true", "false")IF(NOW() < date, "true", "false")If current date is less than {DATE_COL}, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
DATEADDDATEADD(date \| datetime, value, ["day" \| "week" \| "month" \| "year"])DATEADD(date, 1, 'day')Supposing {DATE_COL} is 2022-03-14. The result is 2022-03-15.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'day')
DATEADD(date, 1, 'week')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-03-21 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'week')
DATEADD(date, 1, 'month')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2022-04-14 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'month')
DATEADD(date, 1, 'year')Supposing {DATE_COL} is 2022-03-14 03:14. The result is 2023-03-14 03:14.DateTime columns and negative values are supported. Example: DATEADD(DATE_TIME_COL, -1, 'year')
IF(NOW() < DATEADD(date,10,'day'), "true", "false")If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
IF(NOW() < DATEADD(date,10,'day'), "true", "false")If the current date is less than {DATE_COL} plus 10 days, it returns true. Otherwise, it returns false.DateTime columns and negative values are supported.
DATETIME_DIFFDATETIME_DIFF(date, date, ["milliseconds" \| "ms" \| "seconds" \| "s" \| "minutes" \| "m" \| "hours" \| "h" \| "days" \| "d" \| "weeks" \| "w" \| "months" \| "M" \| "quarters" \| "Q" \| "years" \| "y"])DATETIME_DIFF("2022/10/14", "2022/10/15", "second")Supposing {DATE_COL_1} is 2017-08-25 and {DATE_COL_2} is 2011-08-25. The result is 86400.Compares two dates and returns the difference in the unit specified. Positive integers indicate the second date being in the past compared to the first and vice versa for negative ones.
WEEKDAY(NOW(), "sunday")If today is Monday, it returns 1Get the week day of NOW() with the first day set as sunday
WEEKDAYWEEKDAY(date, [startDayOfWeek])WEEKDAY(NOW())If today is Monday, it returns 0Returns the day of the week as an integer between 0 and 6 inclusive starting from Monday by default. You can optionally change the start day of the week by specifying in the second argument
WEEKDAY(NOW(), "sunday")If today is Monday, it returns 1Get the week day of NOW() with the first day set as sunday
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/formula/index.html b/packages/noco-docs/dist/fields/field-types/formula/formula/index.html new file mode 100644 index 0000000000..1eb510a660 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/formula/index.html @@ -0,0 +1,16 @@ + + + + + +Formula | NocoDB + + + + +
+
Version: Latest

Formula

Create a formula field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Formula from the dropdown.
  4. Insert required formula
  5. Click on Save Column button.

image

tip
  • You can use explicit numerical values/ strings as needed, e.g. 123 (numeric) or "123" (string).
  • You can reference column names in equation with {}, e.g. {column_name}
  • Nested formula (formula equation referring to another formula column) is supported
note

Unlike other column types, formula cells cannot be modified by double-clicking since the value is generated based on the formula.

image

Supported formula functions

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/numeric-functions/index.html b/packages/noco-docs/dist/fields/field-types/formula/numeric-functions/index.html new file mode 100644 index 0000000000..14846e84b1 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/numeric-functions/index.html @@ -0,0 +1,16 @@ + + + + + +Numeric functions | NocoDB + + + + +
+
Version: Latest

Numeric functions

Numeric functions

NameSyntaxSampleOutput
ABSABS(value)ABS({Column})Absolute value of the input parameter
ADDADD(value1,[value2,...])ADD({Column1}, {Column2})Sum of input parameters
AVGAVG(value1,[value2,...])AVG({Column1}, {Column2})Average of input parameters
CEILINGCEILING(value)CEILING({Column})Rounded next largest integer value of input parameter
EXPEXP(value)EXP({Column})Exponential value of input parameter (e^x)
FLOORFLOOR(value)FLOOR({Column})Rounded largest integer less than or equal to input parameter
INTINT(value)INT({Column})Integer value of input parameter
LOGLOG([base], value)LOG(10, {Column})Logarithm of input parameter to the base (default = e) specified
MAXMAX(value1,[value2,...])MAX({Column1}, {Column2}, {Column3})Maximum value amongst input parameters
MINMIN(value1,[value2,...])MIN({Column1}, {Column2}, {Column3})Minimum value amongst input parameters
MODMOD(value1, value2)MOD({Column}, 2)Remainder after integer division of input parameters
POWERPOWER(base, exponent)POWER({Column}, 3)base to the exponent power, as in base ^ exponent
ROUNDROUND(value, precision)ROUND({Column}, 3)Round input value to decimal place specified by precision (Nearest integer if precision not provided)
SQRTSQRT(value)SQRT({Column})Square root of the input parameter
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/operators/index.html b/packages/noco-docs/dist/fields/field-types/formula/operators/index.html new file mode 100644 index 0000000000..8c05861571 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/operators/index.html @@ -0,0 +1,17 @@ + + + + + +Numeric and Logical Operators | NocoDB + + + + +
+
Version: Latest

Numeric and Logical Operators

Numeric operators

OperatorSampleDescription
+{Column1} + {Column2} + 2Addition of numeric values
-{Column1} - {Column2}Subtraction of numeric values
*{Column1} * {Column2}Multiplication of numeric values
/{Column1} / {Column2}Division of numeric values
tip

To change the order of arithmetic operation, you can use round bracket parenthesis ().
+Example: ({Column1} + ({Column2} * {Column3}) / (3 - $Column4$ ))

Logical operators

OperatorSampleDescription
<{Column1} < {Column2}Less than
>{Column1} > {Column2}Greater than
<={Column1} <= {Column2}Less than or equal to
>={Column1} >= {Column2}Greater than or equal to
=={Column1} == {Column2}Equal to
!={Column1} != {Column2}Not equal to
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/formula/string-functions/index.html b/packages/noco-docs/dist/fields/field-types/formula/string-functions/index.html new file mode 100644 index 0000000000..4c2917c1a3 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/formula/string-functions/index.html @@ -0,0 +1,16 @@ + + + + + +String functions | NocoDB + + + + +
+
Version: Latest

String functions

String functions

NameSyntaxSampleOutput
CONCATCONCAT(str1, [str2,...])CONCAT({Column1}, ' ', {Column2})Concatenated string of input parameters
LEFTLEFT(str1, n)LEFT({Column}, 3)n characters from the beginning of input parameter
LENLEN(str)LEN({Column})Input parameter character length
LOWERLOWER(str)LOWER({Column})Lower case converted string of input parameter
MIDMID(str, position, [count])MID({Column}, 3, 2)Alias for SUBSTR
REPEATREPEAT(str, count)REPEAT({Column}, 2)Specified copies of the input parameter string concatenated together
REPLACEREPLACE(str, srchStr, rplcStr)REPLACE({Column}, 'int', 'num')String, after replacing all occurrences of srchStr with rplcStr
RIGHTRIGHT(str, n)RIGHT({Column}, 3)n characters from the end of input parameter
SEARCHSEARCH(str, srchStr)SEARCH({Column}, 'str')Index of srchStr specified if found, 0 otherwise
SUBSTRSUBTR(str, position, [count])SUBSTR({Column}, 3, 2)Substring of length 'count' of input string, from the postition specified
TRIMTRIM(str)TRIM({Column})Remove trailing and leading whitespaces from input parameter
UPPERUPPER(str)UPPER({Column})Upper case converted string of input parameter
URLURL(str)URL({Column})Convert to a hyperlink if it is a valid URL
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/links-based/links/index.html b/packages/noco-docs/dist/fields/field-types/links-based/links/index.html new file mode 100644 index 0000000000..393fb35eb5 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/links-based/links/index.html @@ -0,0 +1,17 @@ + + + + + +Links | NocoDB + + + + +
+
Version: Latest

Links

Links field type is used to establish relationship between tables & create links to other records. +NocoDB supports following types of relations:

  • Has-Many - A record in one table can have multiple records in another table.
    • Example: A Country can have multiple Cities.
  • Belongs-to - Multiple records in one table can have a single record in another table.
    • Example: A City Belongs-to a Country.
  • Many-to-Many - Multiple records in one table can have multiple records in another table.
    • Example: A Student can have multiple Subjects & a Subject can have multiple Students.
note
  • Links can be created only between tables in the same database.
  • Self-referencing links are supported. (Link to the same table)
  • For every Has-Many relation defined, NocoDB augments Belongs-to relationship field in the adjacent table automatically
  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Links from the dropdown.
  4. Select the relation type : Either Has-Many or Many-to-Many.
  5. Select the table to which the relation is to be established with.
  6. [Optional] Configure label to be used for display in the cell. Defaults to Link, Links.
  7. Click on Save Column button.

image

Cell display

The cell will display number of links for a record to the related table.

image

Clicking on the link-text will open a Linked Records modal with the list of links & associated additional information.

List linked records

image

A brief note about the modal components:

  1. This modal is displaying linked records for PENELOPE
  2. Icon represents Many-to-Many relation
  3. Linked records belong to Film table
  4. Search bar, to narrow down the list of linked records displayed
  5. List (cards) of linked records
  6. To view additional information (expanded record), hover on the card & click on the <> icon
  7. Indicates total records linked
  8. Pagination bar
  9. Click on + Link more Records button to add new links : Read more

Modal to add new links can be opened by

  • Clicking on + Link more Records button in the Linked Records modal
  • Clicking on the + icon in the cell (appears on clicking on the cell)

image

A brief note about the modal components:

  1. Links being created are for PENELOPE
  2. Icon represents Many-to-Many relation
  3. Linked records belong to Film table
  4. Search bar, to narrow down the list of records displayed
  5. Linked record card is displayed in blue color
  6. Records available for link are displayed in white color; use expand icon on the cord to view additional information
  7. Indicates total records linked (including the ones being linked)
  8. Pagination bar
info

Multiple records can be linked at once.

To unlink a record, open the Linked Records modal & click on the card of the record to be unlinked.

info

Multiple records can be unlinked at once.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/links-based/lookup/index.html b/packages/noco-docs/dist/fields/field-types/links-based/lookup/index.html new file mode 100644 index 0000000000..5ec049de40 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/links-based/lookup/index.html @@ -0,0 +1,16 @@ + + + + + +LookUp | NocoDB + + + + +
+
Version: Latest

LookUp

Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.

Create a Lookup Field

Create field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Lookup from the dropdown.
  4. Select the link field from the dropdown. This is the field that links the current table to the related table.
  5. Select the column for display from the dropdown. This is the column that will be displayed in the current table.
  6. Click on Save Column button.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/links-based/rollup/index.html b/packages/noco-docs/dist/fields/field-types/links-based/rollup/index.html new file mode 100644 index 0000000000..18336419a4 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/links-based/rollup/index.html @@ -0,0 +1,16 @@ + + + + + +Rollup | NocoDB + + + + +
+
Version: Latest

Rollup

Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.

Create a Rollup Field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Lookup from the dropdown.
  4. Select the link field from the dropdown. This is the field that links the current table to the related table.
  5. Select the column for display from the dropdown. This is the column that will be displayed in the current table.
  6. Select the aggregation function from the dropdown. This is the function that will be used to aggregate the data.
  7. Click on Save Column button.

image

Aggregation Functions

NocoDB supports the following aggregation functions:

  • Count
  • Minimum
  • Maximum
  • Average
  • Sum
  • Count Distinct
  • Sum Distinct
  • Average Distinct
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/numerical/currency/index.html b/packages/noco-docs/dist/fields/field-types/numerical/currency/index.html new file mode 100644 index 0000000000..483cba1ed6 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/numerical/currency/index.html @@ -0,0 +1,16 @@ + + + + + +Currency | NocoDB + + + + +
+
Version: Latest

Currency

Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.

Create field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Currency from the dropdown.
  4. Configure Currency Locale : defaults to en-US
  5. Configure Currency Symbol : defaults to $
  6. [Optional] Set default value for the field.
  7. Click on Save Column button.

image

Cell display

image

Supported locales

https://www.npmjs.com/package/locale-codes#locale-list

note

NocoDB adheres to ISO639-1 standard for locale codes.

Supported currencies

AEDAFNALLAMDANGAOA
ARSAUDAWGAZNBAMBBD
BDTBGNBHDBIFBMDBND
BOBBOVBRLBSDBTNBWP
BYRBZDCADCDFCHECHF
CHWCLFCLPCNYCOPCOU
CRCCUPCVECYPCZKDJF
DKKDOPDZDEEKEGPERN
ETBEURFJDFKPGBPGEL
GHCGIPGMDGNFGTQGYD
HKDHNLHRKHTGHUFIDR
ILSINRIQDIRRISKJMD
JODJPYKESKGSKHRKMF
KPWKRWKWDKYDKZTLAK
LBPLKRLRDLSLLTLLVL
LYDMADMDLMGAMKDMMK
MNTMOPMROMTLMURMVR
MWKMXNMXVMYRMZNNAD
NGNNIONOKNPRNZDOMR
PABPENPGKPHPPKRPLN
PYGQARROLRONRSDRUB
RWFSARSBDSCRSDDSEK
SGDSHPSITSKKSLLSOS
SRDSTDSYPSZLTHBTJS
TMMTNDTOPTRYTTDTWD
TZSUAHUGXUSDUSNUSS
UYUUZSVEBVNDVUVWST
XAFXAGXAUXBAXBBXBC
XBDXCDXDRXFOXFUXOF
XPDXPFXPTXTSXXXYER
ZARZMKZWD

Similar numerical fields

Following are the other numerical fields available in NocoDB, with some custom add-on features.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/numerical/decimal/index.html b/packages/noco-docs/dist/fields/field-types/numerical/decimal/index.html new file mode 100644 index 0000000000..cdc43626dc --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/numerical/decimal/index.html @@ -0,0 +1,16 @@ + + + + + +Decimal | NocoDB + + + + +
+
Version: Latest

Decimal

Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.

Create a decimal field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Decimal from the dropdown.
  4. Configure Precision- NocoDB supports upto 8 digits of precision.
  5. [Optional] Set default value for the field.
  6. Click on Save Column button.

image

info
  • Default decimal precision is 1 digit

Similar numerical fields

Following are the other numerical fields available in NocoDB, with some custom add-on features.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/numerical/number/index.html b/packages/noco-docs/dist/fields/field-types/numerical/number/index.html new file mode 100644 index 0000000000..302a3972a3 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/numerical/number/index.html @@ -0,0 +1,16 @@ + + + + + +Number | NocoDB + + + + +
+
Version: Latest

Number

Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.

Create a number field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Number from the dropdown.
  4. [Optional] Set default value for the field.
  5. Click on Save Column button.

image

info
  • This field type can hold both positive and negative numbers.
  • Supported range (JavaScript): -9007199254740991 to 9007199254740991

Similar numerical fields

Following are the other numerical fields available in NocoDB, with some custom add-on features.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/numerical/percent/index.html b/packages/noco-docs/dist/fields/field-types/numerical/percent/index.html new file mode 100644 index 0000000000..b96f0d11de --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/numerical/percent/index.html @@ -0,0 +1,16 @@ + + + + + +Percent | NocoDB + + + + +
+
Version: Latest

Percent

Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.

Create a percent field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Percent from the dropdown.
  4. [Optional] Set default value for the field.
  5. Click on Save Column button.

image

Similar numerical fields

Following are the other numerical fields available in NocoDB, with some custom add-on features.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/select-based/multi-select/index.html b/packages/noco-docs/dist/fields/field-types/select-based/multi-select/index.html new file mode 100644 index 0000000000..4e961673aa --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/select-based/multi-select/index.html @@ -0,0 +1,17 @@ + + + + + +Multi Select | NocoDB + + + + +
+
Version: Latest

Multi Select

Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.

Create a multi select field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as MultiSelect from the dropdown.
  4. Click on Add option button to add options.
  5. [Optional] Set default value for the field. The options are populated in the dropdown. Since its multi select, you can select multiple options as default value.
  6. Click on Save Column button.

image

Configure color for options

You can re-configure background color for each option. This is useful when you want to highlight certain options. For example, you can configure High option to have red background color. +To configure, click on the color icon next to the option. Select the color from the color picker and click on Save Column button.

image

Re-order options

You can re-order options by dragging and dropping the options. To re-order, click on the drag icon next to the option and drag it to the desired position. Click on Save Column button to save the order.

image

info

The order defined for the options will be used in cells dropdown as well.

Edit options

You can rename options by clicking on the associated option text box. Click on Save Column button to save the changes.

Delete options

You can delete options by clicking on the x icon next to the option. You can undo the delete by clicking on the undo icon next to the option. Click on Save Column button to save the changes.

info
  • On removing an option, the option value will be removed from all the cells.
  • If the option value is set as default value for the field, then the default value will be removed.

image

Similar select based fields

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/select-based/single-select/index.html b/packages/noco-docs/dist/fields/field-types/select-based/single-select/index.html new file mode 100644 index 0000000000..b9dfea2bc6 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/select-based/single-select/index.html @@ -0,0 +1,17 @@ + + + + + +Single Select | NocoDB + + + + +
+
Version: Latest

Single Select

Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.

Create a single select field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as SingleSelect from the dropdown.
  4. Click on Add option button to add options.
  5. [Optional] Set default value for the field. The options are populated in the dropdown.
  6. Click on Save Column button.

image

Edit options

Rename options

You can rename options by clicking on the associated option text box. Click on Save Column button to save the changes.

Re-configure color for options

You can re-configure background color for each option. This is useful when you want to highlight certain options. For example, you can configure High option to have red background color. +To configure, click on the color icon next to the option. Select the color from the color picker and click on Save Column button.

image

Re-order options

You can re-order options by dragging and dropping the options. To re-order, click on the drag icon next to the option and drag it to the desired position. Click on Save Column button to save the order.

image

info

The order defined for the options will be used in cells dropdown as well.

Delete options

You can delete options by clicking on the x icon next to the option. You can undo the delete by clicking on the undo icon next to the option. Click on Save Column button to save the changes.

info
  • On removing an option, the option value will be removed from all the cells.
  • If the option value is set as default value for the field, then the default value will be removed.

image

Similar select based fields

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/text-based/email/index.html b/packages/noco-docs/dist/fields/field-types/text-based/email/index.html new file mode 100644 index 0000000000..45126519f6 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/text-based/email/index.html @@ -0,0 +1,16 @@ + + + + + +Email | NocoDB + + + + +
+
Version: Latest

Email

Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with

  • Optional validation for Email ID
  • Cell display as clickable link

Create an Email field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Email from the dropdown.
  4. [Optional] Enable validation by toggling the Validate Email checkbox.
  5. [Optional] Set default value for the field.
  6. Click on Save Column button.

image

note
  • Specify default value without quotes.
  • Validation only ensures that the value entered is a valid email ID. It does not check if the email ID exists.

Similar text based fields

Following are the other text based fields available in NocoDB, custom-built for specific use cases.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/text-based/long-text/index.html b/packages/noco-docs/dist/fields/field-types/text-based/long-text/index.html new file mode 100644 index 0000000000..650bf371cc --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/text-based/long-text/index.html @@ -0,0 +1,17 @@ + + + + + +Long text | NocoDB + + + + +
+
Version: Latest

Long text

Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.

Create a Long Text field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Long text from the dropdown.
  4. [Optional] Set default value for the field.
  5. Click on Save Column button.

image

note
  • Specify default value without quotes.
  • Use Enter key to add new line.

Cell display

Long Text field is displayed as a single line text field in the table view. Click on the expand icon in the cell to view the full text.

image +image

Similar text based fields

Following are the other text based fields available in NocoDB, custom-built for specific use cases.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/text-based/phonenumber/index.html b/packages/noco-docs/dist/fields/field-types/text-based/phonenumber/index.html new file mode 100644 index 0000000000..ab4d02a4c4 --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/text-based/phonenumber/index.html @@ -0,0 +1,16 @@ + + + + + +Phone Number | NocoDB + + + + +
+
Version: Latest

Phone Number

Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.

Create a Phone number field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Phonenumber from the dropdown.
  4. [Optional] Enable validation by toggling the Validate Phonenumber checkbox.
  5. [Optional] Set default value for the field.
  6. Click on Save Column button.

image

note
  • Specify default value without quotes.
  • Validation only ensures that the value entered is a valid phone number. It does not check if the phone number exists.

Similar text based fields

Following are the other text based fields available in NocoDB, custom-built for specific use cases.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/text-based/single-line-text/index.html b/packages/noco-docs/dist/fields/field-types/text-based/single-line-text/index.html new file mode 100644 index 0000000000..3ad03e447b --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/text-based/single-line-text/index.html @@ -0,0 +1,16 @@ + + + + + +Single line text | NocoDB + + + + +
+
Version: Latest

Single line text

Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.

Create a single line text field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as Single line text from the dropdown.
  4. [Optional] Set default value for the field.
  5. Click on Save Column button.

image

note

Specify default value without quotes.

Similar text based fields

Following are the other text based fields available in NocoDB, custom-built for specific use cases.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/field-types/text-based/url/index.html b/packages/noco-docs/dist/fields/field-types/text-based/url/index.html new file mode 100644 index 0000000000..7381fe2f7e --- /dev/null +++ b/packages/noco-docs/dist/fields/field-types/text-based/url/index.html @@ -0,0 +1,16 @@ + + + + + +URL | NocoDB + + + + +
+
Version: Latest

URL

URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with

  • Optional validation for URL
  • Cell display as clickable link

Create an URL field

  1. Click on + icon to the right of Fields header
  2. [Optional] On the dropdown modal, enter the field name.
  3. Select the field type as URL from the dropdown.
  4. [Optional] Enable validation by toggling the Validate URL checkbox.
  5. [Optional] Set default value for the field.
  6. Click on Save Column button.

image

note
  • Specify default value without quotes.
  • Validation only ensures that the value entered is a valid URL. It does not check if the URL exists.

Similar text based fields

Following are the other text based fields available in NocoDB, custom-built for specific use cases.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/fields-overview/index.html b/packages/noco-docs/dist/fields/fields-overview/index.html new file mode 100644 index 0000000000..d01c558988 --- /dev/null +++ b/packages/noco-docs/dist/fields/fields-overview/index.html @@ -0,0 +1,16 @@ + + + + + +Fields overview | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/multi-fields-editor/index.html b/packages/noco-docs/dist/fields/multi-fields-editor/index.html new file mode 100644 index 0000000000..170d7f205f --- /dev/null +++ b/packages/noco-docs/dist/fields/multi-fields-editor/index.html @@ -0,0 +1,16 @@ + + + + + +Multi-field editor | NocoDB + + + + +
+
Version: Latest

Multi-field editor

NocoDB offers a handy tool for easily managing the fields within a table. With this tool, you can add, modify, rename, arrange, or hide fields efficiently. It's particularly useful when creating a new table structure or making changes to an existing one.

Accessing the Multi-Field Editor

  1. Navigate to the table you wish to edit
  2. Click on Details in the navbar
  3. Select Fields tab

Access

Adding fields

On the Multi-field editor page,

  1. Click on Add Field button to add a new field.
  2. Enter the field name and select the field type; configure default value (optional).
  3. Field will be added to the end of the list. You can reorder the fields as needed. You can add / update multiple fields in one go & save all at once.
  4. Click Save changes button to save the changes.

Add field

tip
  • You can add / update/ delete multiple fields & save changes in one go.
  • Use Restore to discard edits to a particular field. Use Reset to discard all active changes on multi-field editor.

Editing fields

On the Multi-field editor page,

  1. Click on the field you wish to edit.
  2. Make the necessary changes in the Edit Field modal. You can update the field name, type, default value, and other attributes.
  3. Updates to the field are recorded in the fields list view. You can add / update multiple fields in one go & save all at once.
  4. Click Save changes button to save the changes.

Edit field

tip
  • You can add / update/ delete multiple fields & save changes in one go.
  • Use Restore to discard edits to a particular field. Use Reset to discard all active changes on multi-field editor.

Deleting fields

On the Multi-field editor page,

  1. Hover over the field you wish to delete, select ... icon to open context menu
  2. Click on Delete option to delete the field.
  3. Deletions in the table are recorded in the fields list view. You can delete multiple fields in one go & save all at once.
  4. Click Save changes button to save the changes.

After all the changes are made, click Save changes button to save the changes.

Delete field

tip
  • You can add / update/ delete multiple fields & save changes in one go.
  • Use Restore to discard edits to a particular field. Use Reset to discard all active changes on multi-field editor.

Reordering fields

On the Multi-field editor page, use drag-drop handle to drag and drop the fields to reorder them.

note

The changes will only be saved when you click Save changes button.

Reorder fields

Show / Hide fields

On the Multi-field editor page, use the toggle button next to the fields to show or hide them.

note

The changes will only be saved when you click Save changes button.

Show / Hide fields

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/fields/primary-key/index.html b/packages/noco-docs/dist/fields/primary-key/index.html new file mode 100644 index 0000000000..7c269198cf --- /dev/null +++ b/packages/noco-docs/dist/fields/primary-key/index.html @@ -0,0 +1,16 @@ + + + + + +Primary key | NocoDB + + + + +
+
Version: Latest

Primary Key

A primary key is a special database table column designated to uniquely identify each table record.

Use of Primary Key

As it uniquely identifies an individual record of a table, it is used internally by NocoDB for all operations associated with a record

Primary Key in NocoDB

Primary Key that gets defined / used in NocoDB depends on how underlying table was created. Summary is captured below

  1. From UI, Create new table / Import from Excel / Import from CSV
    1. An ID [datatype: Integer] system field created by default during table creation is used as primary key
    2. Additional system fields created-at, updated-at are inserted by default & can be omitted optionally; these fields can be deleted after table creation
  2. Connect to existing external database
    1. Existing primary key field defined for a table is retained as is; NocoDB doesn't insert a new ID field
    2. Additional system fields created-at, updated-at are not inserted by default
  3. Import from Airtable
    1. Airtable record ID is marked as primary key for imported records, and is mapped to field ncRecordId [datatype: varchar]
    2. If a new record is inserted after migration & if ncRecordId field was omitted during record insertion - auto generated string will be inserted by NocoDB
    3. Computed hash value for the entire record is stored in system field ncRecordHash
    4. Additional system fields created-at, updated-at are not inserted by default
  4. Create new table using SDK / API
    1. No default primary key field is introduced by NocoDB. It has to be explicitly specified during table creation (using attribute pk: true)
info

What if Primary Key was missing?

It is possible to have a table without any primary key.

  • External database table can be created without primary key configuration.

  • New table can be created using SDK / API without primary key

    In such scenario's, new records can be created in NocoDB for this table, but records can't be updated or deleted as there is no way for NocoDB to uniquely identify these records

info

Can I change the Primary Key to another column within tables?

  • You can't update Primary Key from NocoDB UI. You can reconfigure it at database level directly & trigger meta sync explicitly.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/keyboard-shortcuts/index.html b/packages/noco-docs/dist/getting-started/keyboard-shortcuts/index.html new file mode 100644 index 0000000000..f43c0bf7e2 --- /dev/null +++ b/packages/noco-docs/dist/getting-started/keyboard-shortcuts/index.html @@ -0,0 +1,16 @@ + + + + + +Keyboard shortcuts | NocoDB + + + + +
+
Version: Latest

Keyboard shortcuts

Quick Actions

Cmd+K (Ctrl+K on Windows) is a keyboard shortcut to quickly navigate between different workspace, table, view, or a menu items. For example, if you want to quickly navigate to the "API Tokens" page, you can open Quick Actions menu using ⌘+K, type "Token" in the search box and press enter.

This shortcut is often referred to as "Command-K". It's a great way to save time when you're navigating around NocoDB.

Command-K menu can also be accessed via the "Quick Actions" button in the top left corner of the screen.

Quick Actions

To navigate within ⌘+K menu,

  • Use to navigate between listed items
  • Use Enter to select an item
  • Use Backspace to move to parent menu
  • Use Esc to close the menu

General shortcuts

KeyBehaviour
alt + tOpens new table modal
alt + cOpens new field modal
alt + fToggles fullscreen mode
alt + iOpens share button modal
+ kOpens Quick Actions modal

Grid view shortcuts

KeyBehaviour
General cell navigation
DeleteClear cell
SpaceExpand current record
TabMove to next cell horizontally; if on last cell, move to beginning of next record
EscExit cell EDIT mode
EnterSwitch cell in focus to EDIT mode; opens modal/picker if cell is associated with one
+ Jump to first record in this field (in same page)
+ Jump to last record in this field (in same page)
+ Jump to first field in this record
+ Jump to last field in this record
+ cCopy cell contents
+ vPaste copied contents
alt + rInserts new record in grid view

Field type specific shortcuts

DatatypeKeyBehaviour
Text & Numerical cells Move cursor to the left / right
Move cursor to the beginning / end
Single Select Move between options
EnterSelect option
Multi Select Move between options
EnterSelect / deselect option
Link Move between options
EnterLink current selection
CheckboxEnterToggle
Rating<0 ~ Max>Enter number to toggle rating

Expanded form shortcuts

KeyBehaviour
+ EnterSave current expanded form item
alt + Switch to next record
alt + Switch to previous record
alt + SSave current expanded form record
alt + NCreate a new record
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/quick-start/index.html b/packages/noco-docs/dist/getting-started/quick-start/index.html new file mode 100644 index 0000000000..85690fc5fd --- /dev/null +++ b/packages/noco-docs/dist/getting-started/quick-start/index.html @@ -0,0 +1,16 @@ + + + + + +Quick start | NocoDB + + + + +
+
Version: Latest

Quick start

NocoDB offers you the flexibility of two distinct variants: self-hosted and SaaS (cloud-hosted). In this section, we'll walk you through the initial steps to embark on your NocoDB journey, whether you choose to set it up on your own infrastructure or opt for the convenience of our cloud-hosted service. Let's dive in and unlock the potential of NocoDB for your data management needs.

tip

For this introductory guide, we suggest utilizing the hosted (SaaS) option. New users can take advantage of a complimentary trial period to explore the platform's features.

SaaS (Cloud Hosted)

Sign up for a NocoDB account

Create a workspace

Build a base

Create custom views for your base

Import data into your base

Collaborate with your team

Self Hosted

When you opt for self-hosting, you gain the advantage of running an application on a server that you have direct control over. This grants you the flexibility to choose whether to host the database on your premises or within a server leased from a data center. In this self-administered arrangement, typically found on-premises, you assume full responsibility for the management and upkeep of your server. This level of control ensures that you have complete authority over all aspects of your data and services, eliminating any reliance on third-party service providers. This option is ideal for organizations that require a high degree of control over their data and services, but it does necessitate a higher level of technical expertise.

Setting up NocoDB on your own server is a straightforward process & the articles below will guide you through the steps to get started.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/self-hosted/environment-variables/index.html b/packages/noco-docs/dist/getting-started/self-hosted/environment-variables/index.html new file mode 100644 index 0000000000..2f52a1495d --- /dev/null +++ b/packages/noco-docs/dist/getting-started/self-hosted/environment-variables/index.html @@ -0,0 +1,16 @@ + + + + + +Environment variables | NocoDB + + + + +
+
Version: Latest

Environment variables

For production use-cases, it is recommended to configure

  • NC_DB,
  • NC_AUTH_JWT_SECRET,
  • NC_PUBLIC_URL,
  • NC_REDIS_URL
VariableCommentsIf absent
NC_DBSee our example database URLs here.A local SQLite will be created in root folder if NC_DB is not provided
NC_DB_JSONCan be used instead of NC_DB and value should be valid knex connection JSON
NC_DB_JSON_FILECan be used instead of NC_DB and value should be a valid path to knex connection JSON
DATABASE_URLCan be used instead of NC_DB and value should be in JDBC URL format
DATABASE_URL_FILECan be used instead of DATABASE_URL and value should be a valid path to file containing JDBC URL format.
NC_AUTH_JWT_SECRETJWT secret used for auth and storing other secretsA random secret will be generated
PORTFor setting app running port8080
DB_QUERY_LIMIT_DEFAULTPagination limit25
DB_QUERY_LIMIT_MAXMaximum allowed pagination limit1000
DB_QUERY_LIMIT_MINMinimum allowed pagination limit1
NC_TOOL_DIRApp directory to keep metadata and app related filesDefaults to current working directory. In docker maps to /usr/app/data/ for mounting volume.
NC_PUBLIC_URLUsed for sending Email invitationsBest guess from http request params
NC_JWT_EXPIRES_INJWT token expiry time10h
NC_CONNECT_TO_EXTERNAL_DB_DISABLEDDisable Project creation with external database
NC_INVITE_ONLY_SIGNUPRemoved since version 0.99.0 and now it's recommended to use super admin settings menu. Allow users to signup only via invite URL, value should be any non-empty string.
NUXT_PUBLIC_NC_BACKEND_URLCustom Backend URLhttp://localhost:8080 will be used
NC_REQUEST_BODY_SIZERequest body size limit1048576
NC_EXPORT_MAX_TIMEOUTAfter NC_EXPORT_MAX_TIMEOUT, CSV gets downloaded in batchesDefault value 5000(in millisecond) will be used
NC_DISABLE_TELEDisable telemetry
NC_DASHBOARD_URLCustom dashboard URL path/dashboard
NC_GOOGLE_CLIENT_IDGoogle client ID to enable Google authentication
NC_GOOGLE_CLIENT_SECRETGoogle client secret to enable Google authentication
NC_MIGRATIONS_DISABLEDDisable NocoDB migration
NC_MINIf set to any non-empty string the default splash screen(initial welcome animation) and matrix screensaver will disable
NC_SENTRY_DSNFor Sentry monitoring
NC_REDIS_URLCustom Redis URL. Example: redis://:authpassword@127.0.0.1:6380/4Meta data will be stored in memory
NC_DISABLE_ERR_REPORTDisable error reporting
NC_DISABLE_CACHETo be used only while debugging. On setting this to true - meta data be fetched from db instead of redis/cache.false
AWS_ACCESS_KEY_IDFor Litestream - S3 access key idIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_SECRET_ACCESS_KEYFor Litestream - S3 secret access keyIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_BUCKETFor Litestream - S3 bucketIf Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
AWS_BUCKET_PATHFor Litestream - S3 bucket path (like folder within S3 bucket)If Litestream is configured and NC_DB is not present. SQLite gets backed up to S3
NC_SMTP_FROMFor SMTP plugin - Email sender address
NC_SMTP_HOSTFor SMTP plugin - SMTP host value
NC_SMTP_PORTFor SMTP plugin - SMTP port value
NC_SMTP_USERNAMEFor SMTP plugin (Optional) - SMTP username value for authentication
NC_SMTP_PASSWORDFor SMTP plugin (Optional) - SMTP password value for authentication
NC_SMTP_SECUREFor SMTP plugin (Optional) - To enable secure set value as true any other value treated as false
NC_SMTP_IGNORE_TLSFor SMTP plugin (Optional) - To ignore tls set value as true any other value treated as false. For more info visit https://nodemailer.com/smtp/
NC_S3_BUCKET_NAMEFor S3 storage plugin - AWS S3 bucket name
NC_S3_REGIONFor S3 storage plugin - AWS S3 region
NC_S3_ACCESS_KEYFor S3 storage plugin - AWS access key credential for accessing resource
NC_S3_ACCESS_SECRETFor S3 storage plugin - AWS access secret credential for accessing resource
NC_ADMIN_EMAILFor updating/creating super admin with provided email and password
NC_ATTACHMENT_FIELD_SIZEFor setting the attachment field size(in Bytes)Defaults to 20MB
NC_ADMIN_PASSWORDFor updating/creating super admin with provided email and password. Your password should have at least 8 letters with one uppercase, one number and one special letter(Allowed special chars $&+,:;=?@#|'.^*()%!_-" )
NODE_OPTIONSFor passing Node.js options to instance
NC_MINIMAL_DBSCreate a new SQLite file for each project. All the db files are stored in nc_minimal_dbs folder in current working directory. (This option restricts project creation on external sources)
NC_DISABLE_AUDITDisable Audit Logfalse
NC_AUTOMATION_LOG_LEVELPossible Values: OFF, ERROR, ALL. See Webhooks for details.OFF
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/self-hosted/installation/index.html b/packages/noco-docs/dist/getting-started/self-hosted/installation/index.html new file mode 100644 index 0000000000..ea4f2e4583 --- /dev/null +++ b/packages/noco-docs/dist/getting-started/self-hosted/installation/index.html @@ -0,0 +1,20 @@ + + + + + +Installation | NocoDB + + + + +
+
Version: Latest

Installation

Simple installation - takes about three minutes!

Prerequisites

Quick try

Docker

If you are a Docker user, you may try this way!

docker run -d --name nocodb \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
nocodb/nocodb:latest
tip

To persist data in docker you can mount volume at /usr/app/data/ since 0.10.6. In older version mount at /usr/src/app. Otherwise your data will be lost after recreating the container.

tip

If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for MySQL Docker.

Docker Compose

We provide different docker-compose.yml files under this directory. Here are some examples.

git clone https://github.com/nocodb/nocodb
cd nocodb/docker-compose/mysql
docker-compose up -d
tip

To persist data in docker you can mount volume at /usr/app/data/ since 0.10.6. In older version mount at /usr/src/app. +If you plan to input some special characters, you may need to change the character set and collation yourself when creating the database. Please check out the examples for MySQL Docker Compose.

NPX

You can run below command if you need an interactive configuration.

npx create-nocodb-app

Preview:

image

Homebrew

brew tap nocodb/nocodb
brew install nocodb
nocodb

Executables

You can download executables directly and run without any extra dependency. Use the right command based on your platform.

curl http://get.nocodb.com/macos-x64 -o nocodb -L \
&& chmod +x nocodb \
&& ./nocodb

Node Application

We provide a simple NodeJS Application for getting started.

git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start

AWS ECS (Fargate)

Click to Expand

Create ECS Cluster

aws ecs create-cluster \
--cluster-name <YOUR_ECS_CLUSTER>

Create Log group

aws logs create-log-group \
--log-group-name /ecs/<YOUR_APP_NAME>/<YOUR_CONTAINER_NAME>

Create ECS Task Definiton

Every time you create it, it will add a new version. If it is not existing, the version will be 1.

aws ecs register-task-definition \
--cli-input-json "file://./<YOUR_TASK_DEF_NAME>.json"
tip

This json file defines the container specification. You can define secrets such as NC_DB and environment variables here.

Here's the sample Task Definition

{
"family": "nocodb-sample-task-def",
"networkMode": "awsvpc",
"containerDefinitions": [{
"name": "<YOUR_CONTAINER_NAME>",
"image": "nocodb/nocodb:latest",
"essential": true,
"logConfiguration": {
"logDriver": "awslogs",
"options": {
"awslogs-group": "/ecs/<YOUR_APP_NAME>/<YOUR_CONTAINER_NAME>",
"awslogs-region": "<YOUR_AWS_REGION>",
"awslogs-stream-prefix": "ecs"
}
},
"secrets": [{
"name": "<YOUR_SECRETS_NAME>",
"valueFrom": "<YOUR_SECRET_ARN>"
}],
"environment": [{
"name": "<YOUR_ENV_VARIABLE_NAME>",
"value": "<YOUR_ENV_VARIABLE_VALUE>"
}],
"portMappings": [{
"containerPort": 8080,
"hostPort": 8080,
"protocol": "tcp"
}]
}],
"requiresCompatibilities": [
"FARGATE"
],
"cpu": "256",
"memory": "512",
"executionRoleArn": "<YOUR_ECS_EXECUTION_ROLE_ARN>",
"taskRoleArn": "<YOUR_ECS_TASK_ROLE_ARN>"
}

Create ECS Service

aws ecs create-service \
--cluster <YOUR_ECS_CLUSTER> \
--service-name <YOUR_SERVICE_NAME> \
--task-definition <YOUR_TASK_DEF>:<YOUR_TASK_DEF_VERSION> \
--desired-count <DESIRED_COUNT> \
--launch-type "FARGATE" \
--platform-version <VERSION> \
--health-check-grace-period-seconds <GRACE_PERIOD_IN_SECOND> \
--network-configuration "awsvpcConfiguration={subnets=["<YOUR_SUBSETS>"], securityGroups=["<YOUR_SECURITY_GROUPS>"], assignPublicIp=ENABLED}" \
--load-balancer targetGroupArn=<TARGET_GROUP_ARN>,containerName=<CONTAINER_NAME>,containerPort=<YOUR_CONTAINER_PORT>
tip

If your service fails to start, you may check the logs in ECS console or in Cloudwatch. Generally it fails due to the connection between ECS container and NC_DB. Make sure the security groups have the correct inbound and outbound rules.

GCP (Cloud Run)

Click to Expand

Pull NocoDB Image on Cloud Shell

Since Cloud Run only supports images from Google Container Registry (GCR) or Artifact Registry, we need to pull NocoDB image, tag it and push it in GCP using Cloud Shell. Here are some sample commands which you can execute in Cloud Shell.

# pull latest NocoDB image
docker pull nocodb/nocodb:latest

# tag the image
docker tag nocodb/nocodb:latest gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest

# push the image to GCR
docker push gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest

Deploy NocoDB on Cloud Run

gcloud run deploy --image=gcr.io/<MY_PROJECT_ID>/nocodb/nocodb:latest \
--region=us-central1 \
--allow-unauthenticated \
--platform=managed

DigitalOcean (App)

Click to Expand

Create Apps

On Home page, Click on Create icon & Select Apps (Deploy your code).

Screenshot 2022-02-19 at 12 17 43 PM

Choose Source: Docker Hub

Screenshot 2022-02-19 at 12 22 01 PM

Choose Source: Repository

Configure Source Repository as nocodb/nocodb. Optionally you can pick release tag if you are interested in specific NocoDB version.

Screenshot 2022-02-19 at 12 23 11 PM

[Optional] Additional Configurations

Screenshot 2022-02-19 at 12 24 44 PM

Name your web service

Pick a name for your NocoDB application. This name will become part of URL subsequently +Pick nearest Region for cloud hosting +Screenshot 2022-02-19 at 12 28 11 PM

Finalize and Launch

Cloudron

Click to Expand

Log into Cloudron and select App Store

image

Search NocoDB

image

Click Install

image

Configure NocoDB

image

Go to My App and Launch NocoDB

image

CapRover

Click to Expand

Login and Click One-Click Apps / Databases

image

Search NocoDB

image

Configure NocoDB and Deploy

image

Railway

Click to Expand

Go to Templates, Search NocoDB and click Deploy

image

Configure NocoDB and Deploy

image

FreeBSD / FreeNAS / TrueNAS Jail

See here provided by C. R. Zamana.

Sample Demos

Code Sandbox

Docker deploying with one command

Using NPX

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/self-hosted/upgrading/index.html b/packages/noco-docs/dist/getting-started/self-hosted/upgrading/index.html new file mode 100644 index 0000000000..4293fb54fa --- /dev/null +++ b/packages/noco-docs/dist/getting-started/self-hosted/upgrading/index.html @@ -0,0 +1,16 @@ + + + + + +Upgrading | NocoDB + + + + +
+
Version: Latest

Upgrading

By default, if NC_DB is not specified upon installation, then SQLite will be used to store metadata. We suggest users to separate the metadata and user data in different databases as pictured in our architecture.

Docker

Find, Stop & Delete NocoDB Docker Container

# find NocoDB container ID
docker ps
# stop NocoDB container
docker stop <YOUR_CONTAINER_ID>
# delete NocoDB container
docker rm <YOUR_CONTAINER_ID>

Note: Deleting your docker container without setting NC_DB or mounting to a persistent volume for a default SQLite database will result in losing your data. See examples below.

Find & Remove NocoDB Docker Image

# find NocoDB image
docker images
# delete NocoDB image
docker rmi <YOUR_IMAGE_ID>

Pull the latest NocoDB image with same environment variables

docker run -d -p 8080:8080 \
-e NC_DB="<YOUR_NC_DB_URL>" \
-e NC_AUTH_JWT_SECRET="<YOUR_NC_AUTH_JWT_SECRET_IF_GIVEN>" \
nocodb/nocodb:latest

Updating NocoDB docker container is similar to updating any other docker containers.

Example: Docker Upgrade

# Previous docker run
#
terminal % docker run -d --name myNocoDB \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb:0.111.0
Unable to find image 'nocodb/nocodb:0.111.0' locally
0.111.0: Pulling from nocodb/nocodb
ad3fa0ea069c: Pull complete
e43b9156e769: Pull complete
c1bee0da1504: Pull complete
adf78ab024d9: Pull complete
cd8000d2c16a: Pull complete
Digest: sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4
Status: Downloaded newer image for nocodb/nocodb:0.111.0
afdc8edd1005c93e1df8f90d02e46430ea7b5c5610a2bf9ba105238d6c4d927b


# Find, stop and delete NocoDB docker container
#
terminal % docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
afdc8edd1005 nocodb/nocodb:0.111.0 "/usr/bin/dumb-init …" 18 seconds ago Up 18 seconds 0.0.0.0:8080->8080/tcp myNocoDB
0202041b3607 postgres:14.7 "docker-entrypoint.s…" 2 days ago Up 8 hours (healthy) 0.0.0.0:5432->5432/tcp scripts_pg147_1

terminal % docker stop afdc8edd1005
afdc8edd1005

terminal % docker rm afdc8edd1005
afdc8edd1005


# Find and remove NocoDB docker image
#
terminal % docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nocodb/nocodb 0.111.0 34609411e87c 5 weeks ago 132MB
mysql 8.0 6a0560a40914 7 weeks ago 599MB
postgres 14.7 2075a95c7b3b 4 months ago 358MB

terminal % docker rmi 34609411e87c
Untagged: nocodb/nocodb:0.111.0
Untagged: nocodb/nocodb@sha256:93b6e1ba2c0b90a26b205f9c7d44053aa6d8fa037eff9eb4155ca017f6c9bed4
Deleted: sha256:3bfxxxx38e682742cbxxxx535b3503af45e931fb9bd15f46eca7d33cf4c54d72
Deleted: sha256:952152b5da42ae057c6688a04xxxx72e1a2f91825956f5c7e35f91d5b285d4d8
Deleted: sha256:3155197577xxxx673675ed1bce761714a24d7803f70a905740f7d4c248cxxxxx


# Pull & run the latest NocoDB image with same environment variables as before
#
terminal % docker run -d --name myNocoDB \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
-e NC_DB="pg://host.docker.internal:5432?u=postgres&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb:latest
Unable to find image 'nocodb/nocodb:latest' locally
latest: Pulling from nocodb/nocodb
ad3fa0ea069c: Pull complete
e43b9156e769: Pull complete
c1bee0da1504: Pull complete
adf78ab024d9: Pull complete
28ce4fc94e48: Pull complete
Digest: sha256:5c6df5ff0eb1278e1dbfe684af630a743ca73dfec8c30cab3bae9c1d0d640287
Status: Downloaded newer image for nocodb/nocodb:latest
ae793a04b75f2f3ee78abbaef09891396a884ec83320151a266326195649a058


Node

Updating docker container is similar to updating a npm package.

From your root folder

Uninstall NocoDB package

npm uninstall nocodb

Install NocoDB package

npm install --save nocodb

Homebrew

Run following commands to upgrade Homebrew Nocodb version.

# Update the local homebrew formulas
brew update
# Upgrade nocodb package
brew upgrade nocodb
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/getting-started/terminologies/index.html b/packages/noco-docs/dist/getting-started/terminologies/index.html new file mode 100644 index 0000000000..32430cd989 --- /dev/null +++ b/packages/noco-docs/dist/getting-started/terminologies/index.html @@ -0,0 +1,16 @@ + + + + + +NocoDB terminologies | NocoDB + + + + +
+
Version: Latest

NocoDB terminologies

To maximize your use of NocoDB, it's beneficial to become familiar with some common terms.

Within this section, we've provided straightforward explanations for keywords and phrases that are relevant to NocoDB's functionality and capabilities. This resource is designed to assist you in gaining a deeper understanding of NocoDB as you embark on the process of setting up workspaces, bases, tables, and various other elements within the platform.

Layout

The layout below shows the main parts of NocoDB's user interface.

image

  1. Sidebar: This component provides quick access to workspaces, bases, tables, and views, facilitating easy navigation within NocoDB.

  2. Navbar: In the Navbar, you'll find essential tools like the Switcher, allowing users to switch between data mode and details mode, and the Share button for collaborative workspace and view sharing.

  3. Toolbar: The Toolbar equips users with various tools to manage records within tables and views effectively. It includes features for sorting, filtering, and editing data, enhancing your control over information.

  4. View Area: The central workspace where data can be viewed in multiple formats - Grid, Gallery, Kanban or Form.

  5. Footbar: A pagination bar for navigating between paginated records.

Terminologies

TermDescription
WorkspaceA workspace is a collection of one or more bases. It offers collaborative access to bases by enabling you to bring together interconnected tables, views, and various elements into a unified and organized entity
BaseA base is a collection of one or more tables, often related and linked to one another. Alternative term Project
TableA base is housed in tables, where data is logically arranged into rows and columns. A base can have multiple tables. Alternative term Model
FieldA field or column in a table is a container for values that share the same data type. Alternative term Column
RecordA record represents a row in a table. Alternative term Row
ViewA view defines how data within a table is presented and interacted with. Default view type is the grid view; other supported view types include form, gallery, and kanban views.
CellA cell represents the space created where a column and a row intersect within a grid-like structure. It serves as the fundamental unit for storing data
Workspace memberWorkspace member with specific access permissions. Alternative term Member User
Workspace OwnerMember who had created workspace. There can be only one owner for a workspace & ownership is non-transferable
Base memberBase member with specific access permissions. Alternative term Member User
Base OwnerMember who had created base. There can be only one owner for a base & ownership is non-transferable
ModalIn the context of user interfaces, a modal is a type of dialog or overlay that appears on top of the main content or interface and requires user interaction before the user can proceed. Modals are often used to gather user input, display alerts, or confirm actions. They typically "block" the rest of the interface until the user dismisses them, making them a focused and attention-grabbing element
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/img/architecture.png b/packages/noco-docs/dist/img/architecture.png new file mode 100644 index 0000000000..db88f48352 Binary files /dev/null and b/packages/noco-docs/dist/img/architecture.png differ diff --git a/packages/noco-docs/dist/img/banner.png b/packages/noco-docs/dist/img/banner.png new file mode 100644 index 0000000000..27d7254d52 Binary files /dev/null and b/packages/noco-docs/dist/img/banner.png differ diff --git a/packages/noco-docs/dist/img/content/airtable-pat-1.png b/packages/noco-docs/dist/img/content/airtable-pat-1.png new file mode 100644 index 0000000000..3c89cae854 Binary files /dev/null and b/packages/noco-docs/dist/img/content/airtable-pat-1.png differ diff --git a/packages/noco-docs/dist/img/content/airtable-pat-2.png b/packages/noco-docs/dist/img/content/airtable-pat-2.png new file mode 100644 index 0000000000..adf2d5e9bf Binary files /dev/null and b/packages/noco-docs/dist/img/content/airtable-pat-2.png differ diff --git a/packages/noco-docs/dist/img/content/airtable-pat-3.png b/packages/noco-docs/dist/img/content/airtable-pat-3.png new file mode 100644 index 0000000000..895ce4f5d6 Binary files /dev/null and b/packages/noco-docs/dist/img/content/airtable-pat-3.png differ diff --git a/packages/noco-docs/dist/img/content/copy-proj-info.png b/packages/noco-docs/dist/img/content/copy-proj-info.png new file mode 100644 index 0000000000..608db0fe5c Binary files /dev/null and b/packages/noco-docs/dist/img/content/copy-proj-info.png differ diff --git a/packages/noco-docs/dist/img/content/data-source.png b/packages/noco-docs/dist/img/content/data-source.png new file mode 100644 index 0000000000..5fabf9bfbc Binary files /dev/null and b/packages/noco-docs/dist/img/content/data-source.png differ diff --git a/packages/noco-docs/dist/img/content/export.png b/packages/noco-docs/dist/img/content/export.png new file mode 100644 index 0000000000..36e6c185b2 Binary files /dev/null and b/packages/noco-docs/dist/img/content/export.png differ diff --git a/packages/noco-docs/dist/img/content/extDB-connection-modal.png b/packages/noco-docs/dist/img/content/extDB-connection-modal.png new file mode 100644 index 0000000000..48085ae32c Binary files /dev/null and b/packages/noco-docs/dist/img/content/extDB-connection-modal.png differ diff --git a/packages/noco-docs/dist/img/content/form.png b/packages/noco-docs/dist/img/content/form.png new file mode 100644 index 0000000000..f00475e2d1 Binary files /dev/null and b/packages/noco-docs/dist/img/content/form.png differ diff --git a/packages/noco-docs/dist/img/content/gallery.png b/packages/noco-docs/dist/img/content/gallery.png new file mode 100644 index 0000000000..e4cdfdd0d3 Binary files /dev/null and b/packages/noco-docs/dist/img/content/gallery.png differ diff --git a/packages/noco-docs/dist/img/content/grid.png b/packages/noco-docs/dist/img/content/grid.png new file mode 100644 index 0000000000..f65593aa80 Binary files /dev/null and b/packages/noco-docs/dist/img/content/grid.png differ diff --git a/packages/noco-docs/dist/img/content/import-csv-2.png b/packages/noco-docs/dist/img/content/import-csv-2.png new file mode 100644 index 0000000000..e5068b10f5 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-csv-2.png differ diff --git a/packages/noco-docs/dist/img/content/import-csv-3.png b/packages/noco-docs/dist/img/content/import-csv-3.png new file mode 100644 index 0000000000..0b275d8ad9 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-csv-3.png differ diff --git a/packages/noco-docs/dist/img/content/import-csv.png b/packages/noco-docs/dist/img/content/import-csv.png new file mode 100644 index 0000000000..634706d7a8 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-csv.png differ diff --git a/packages/noco-docs/dist/img/content/import-xls-2.png b/packages/noco-docs/dist/img/content/import-xls-2.png new file mode 100644 index 0000000000..3944aaefde Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-xls-2.png differ diff --git a/packages/noco-docs/dist/img/content/import-xls-3.png b/packages/noco-docs/dist/img/content/import-xls-3.png new file mode 100644 index 0000000000..0b275d8ad9 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-xls-3.png differ diff --git a/packages/noco-docs/dist/img/content/import-xls.png b/packages/noco-docs/dist/img/content/import-xls.png new file mode 100644 index 0000000000..9a323548e2 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import-xls.png differ diff --git a/packages/noco-docs/dist/img/content/import.png b/packages/noco-docs/dist/img/content/import.png new file mode 100644 index 0000000000..e6b43cfc35 Binary files /dev/null and b/packages/noco-docs/dist/img/content/import.png differ diff --git a/packages/noco-docs/dist/img/content/kanban.png b/packages/noco-docs/dist/img/content/kanban.png new file mode 100644 index 0000000000..d6eb69c5c9 Binary files /dev/null and b/packages/noco-docs/dist/img/content/kanban.png differ diff --git a/packages/noco-docs/dist/img/content/quick-import.png b/packages/noco-docs/dist/img/content/quick-import.png new file mode 100644 index 0000000000..311b8d17aa Binary files /dev/null and b/packages/noco-docs/dist/img/content/quick-import.png differ diff --git a/packages/noco-docs/dist/img/favicon.ico b/packages/noco-docs/dist/img/favicon.ico new file mode 100644 index 0000000000..a9fa2dd153 Binary files /dev/null and b/packages/noco-docs/dist/img/favicon.ico differ diff --git a/packages/noco-docs/dist/img/icon.png b/packages/noco-docs/dist/img/icon.png new file mode 100644 index 0000000000..3281ba6f2f Binary files /dev/null and b/packages/noco-docs/dist/img/icon.png differ diff --git a/packages/noco-docs/dist/img/nocodb-full-color.png b/packages/noco-docs/dist/img/nocodb-full-color.png new file mode 100644 index 0000000000..e0855fcc0a Binary files /dev/null and b/packages/noco-docs/dist/img/nocodb-full-color.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/airtable-api-key.png b/packages/noco-docs/dist/img/v2-unannotated/base/airtable-api-key.png new file mode 100644 index 0000000000..94e7d317d3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/airtable-api-key.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/airtable-share-base.png b/packages/noco-docs/dist/img/v2-unannotated/base/airtable-share-base.png new file mode 100644 index 0000000000..6ceaa1ba16 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/airtable-share-base.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-collaboration.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-collaboration.png new file mode 100644 index 0000000000..ff8578b027 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-collaboration.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-context-menu.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-context-menu.png new file mode 100644 index 0000000000..99d92ce86a Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-create-1.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-create-1.png new file mode 100644 index 0000000000..cf14e37f83 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-create-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-create-2.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-create-2.png new file mode 100644 index 0000000000..d577e54281 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-create-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-dashboard.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-dashboard.png new file mode 100644 index 0000000000..9aa7e3959e Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-dashboard.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-delete.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-delete.png new file mode 100644 index 0000000000..adda013c3d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-delete.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-duplicate.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-duplicate.png new file mode 100644 index 0000000000..3e4cd2d925 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-duplicate.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-1.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-1.png new file mode 100644 index 0000000000..3fcc0bc1e6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-2.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-2.png new file mode 100644 index 0000000000..8160a106b5 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-3.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-3.png new file mode 100644 index 0000000000..422f868143 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-airtable-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-1.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-1.png new file mode 100644 index 0000000000..e3194f6303 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-2.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-2.png new file mode 100644 index 0000000000..808c2eb8ec Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-import-from-dashboard-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-relations.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-relations.png new file mode 100644 index 0000000000..97d2960ec6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-relations.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-remove-from-starred.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-remove-from-starred.png new file mode 100644 index 0000000000..64880d95cf Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-remove-from-starred.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-rename.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-rename.png new file mode 100644 index 0000000000..e12293dc59 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-rename.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-settings.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-settings.png new file mode 100644 index 0000000000..8529836f5d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-settings.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-starred.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-starred.png new file mode 100644 index 0000000000..22b2286743 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-starred.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/base-swagger.png b/packages/noco-docs/dist/img/v2-unannotated/base/base-swagger.png new file mode 100644 index 0000000000..c719c68bc8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/base-swagger.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/pat-1.png b/packages/noco-docs/dist/img/v2-unannotated/base/pat-1.png new file mode 100644 index 0000000000..980c6463a0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/pat-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/pat-2.png b/packages/noco-docs/dist/img/v2-unannotated/base/pat-2.png new file mode 100644 index 0000000000..372a002b9c Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/pat-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/pat-3.png b/packages/noco-docs/dist/img/v2-unannotated/base/pat-3.png new file mode 100644 index 0000000000..3df3d4dd27 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/pat-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/share-base-1.png b/packages/noco-docs/dist/img/v2-unannotated/base/share-base-1.png new file mode 100644 index 0000000000..7fec870c5a Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/share-base-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/base/share-base-2.png b/packages/noco-docs/dist/img/v2-unannotated/base/share-base-2.png new file mode 100644 index 0000000000..e555f9efbb Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/base/share-base-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-1.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-1.png new file mode 100644 index 0000000000..4b43670f39 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-2.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-2.png new file mode 100644 index 0000000000..e603f953ab Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-3.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-3.png new file mode 100644 index 0000000000..daa6d983fe Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-4.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-4.png new file mode 100644 index 0000000000..16b8545c01 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-4.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-5.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-5.png new file mode 100644 index 0000000000..cbd08c12e2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/ds-5.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/edit-base.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/edit-base.png new file mode 100644 index 0000000000..e83ac9936d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/edit-base.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/data-source/junction-table.png b/packages/noco-docs/dist/img/v2-unannotated/data-source/junction-table.png new file mode 100644 index 0000000000..c08fd1a1a8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/data-source/junction-table.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/display-value.png b/packages/noco-docs/dist/img/v2-unannotated/fields/display-value.png new file mode 100644 index 0000000000..5c592b2ca2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/display-value.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-1.png b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-1.png new file mode 100644 index 0000000000..45463c1882 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-2.png b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-2.png new file mode 100644 index 0000000000..e37b93f946 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-3.png b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-3.png new file mode 100644 index 0000000000..99911c47a6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-4.png b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-4.png new file mode 100644 index 0000000000..1a8a3148c6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-4.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-5.png b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-5.png new file mode 100644 index 0000000000..0e2e21f050 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/editor/editor-5.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/fields-context-menu.png b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-context-menu.png new file mode 100644 index 0000000000..85293a6e07 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/fields-edit.png b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-edit.png new file mode 100644 index 0000000000..c63b281dd4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-edit.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/fields-width.png b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-width.png new file mode 100644 index 0000000000..da68226827 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/fields-width.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/linked-records-modal.png b/packages/noco-docs/dist/img/v2-unannotated/fields/linked-records-modal.png new file mode 100644 index 0000000000..b7d39f86b6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/linked-records-modal.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/fields/set-as-display-value.png b/packages/noco-docs/dist/img/v2-unannotated/fields/set-as-display-value.png new file mode 100644 index 0000000000..edb48e0e0f Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/fields/set-as-display-value.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-1.png b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-1.png new file mode 100644 index 0000000000..e049f2c3d4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-2.png b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-2.png new file mode 100644 index 0000000000..998133b0c1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-3.png b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-3.png new file mode 100644 index 0000000000..8a4664c056 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/bulk-update-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/delete-row-bulk.png b/packages/noco-docs/dist/img/v2-unannotated/records/delete-row-bulk.png new file mode 100644 index 0000000000..bc20267dd3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/delete-row-bulk.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/delete-row.png b/packages/noco-docs/dist/img/v2-unannotated/records/delete-row.png new file mode 100644 index 0000000000..b77408cdd0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/delete-row.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/new-record-form.png b/packages/noco-docs/dist/img/v2-unannotated/records/new-record-form.png new file mode 100644 index 0000000000..c6e043d9d1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/new-record-form.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/records/new-record-grid.png b/packages/noco-docs/dist/img/v2-unannotated/records/new-record-grid.png new file mode 100644 index 0000000000..722b7b67c3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/records/new-record-grid.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-details/details-api-snippet.png b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-api-snippet.png new file mode 100644 index 0000000000..f59e9c98fa Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-api-snippet.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-details/details-field-editor.png b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-field-editor.png new file mode 100644 index 0000000000..943d7ff2bc Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-field-editor.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-details/details-relations.png b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-relations.png new file mode 100644 index 0000000000..268465a9e3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-relations.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-details/details-tab.png b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-tab.png new file mode 100644 index 0000000000..40a0be52eb Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-tab.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-details/details-webhook.png b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-webhook.png new file mode 100644 index 0000000000..ceffbf4f0b Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-details/details-webhook.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/change-cover-image.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/change-cover-image.png new file mode 100644 index 0000000000..3f351c22d7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/change-cover-image.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/download.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/download.png new file mode 100644 index 0000000000..117208541a Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/download.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/fields-hide-reorder.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/fields-hide-reorder.png new file mode 100644 index 0000000000..e50dff8f29 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/fields-hide-reorder.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-1.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-1.png new file mode 100644 index 0000000000..ba0469cca7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-2.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-2.png new file mode 100644 index 0000000000..ccf2cdb26c Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-3.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-3.png new file mode 100644 index 0000000000..d7fdb57521 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-4.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-4.png new file mode 100644 index 0000000000..ff44cedc2d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-4.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-blank.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-blank.png new file mode 100644 index 0000000000..e1dce731fa Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-blank.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-null-empty.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-null-empty.png new file mode 100644 index 0000000000..2645426c10 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/filter-is-null-empty.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-1.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-1.png new file mode 100644 index 0000000000..1fbe1cd7b2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-2.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-2.png new file mode 100644 index 0000000000..c2d55f6768 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/group-by-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-1.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-1.png new file mode 100644 index 0000000000..99e13b6228 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-2.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-2.png new file mode 100644 index 0000000000..55925773f7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-3.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-3.png new file mode 100644 index 0000000000..12b0d01a45 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-4.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-4.png new file mode 100644 index 0000000000..6f99f89c54 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-4.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-5.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-5.png new file mode 100644 index 0000000000..9117c59f53 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/row-height-5.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-1.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-1.png new file mode 100644 index 0000000000..418e408bca Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-2.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-2.png new file mode 100644 index 0000000000..9677b624f6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-3.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-3.png new file mode 100644 index 0000000000..6f2adb4ad6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/sort-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table-operations/table-search.png b/packages/noco-docs/dist/img/v2-unannotated/table-operations/table-search.png new file mode 100644 index 0000000000..f121b5f007 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table-operations/table-search.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/import-csv-url.png b/packages/noco-docs/dist/img/v2-unannotated/table/import-csv-url.png new file mode 100644 index 0000000000..f4eba42076 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/import-csv-url.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/import-csv.png b/packages/noco-docs/dist/img/v2-unannotated/table/import-csv.png new file mode 100644 index 0000000000..b0c6d70a05 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/import-csv.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/import-stage-2.png b/packages/noco-docs/dist/img/v2-unannotated/table/import-stage-2.png new file mode 100644 index 0000000000..81131f59af Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/import-stage-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-context-menu.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-context-menu.png new file mode 100644 index 0000000000..2aa424c4b3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-create-1.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-create-1.png new file mode 100644 index 0000000000..1e50ff87cf Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-create-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-create-2.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-create-2.png new file mode 100644 index 0000000000..8d8c72db00 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-create-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-delete.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-delete.png new file mode 100644 index 0000000000..99d653aabe Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-delete.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-duplicate.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-duplicate.png new file mode 100644 index 0000000000..3728afad97 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-duplicate.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-dashboard.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-dashboard.png new file mode 100644 index 0000000000..22b8b32b95 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-dashboard.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-sidebar.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-sidebar.png new file mode 100644 index 0000000000..d5c09c189d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-import-from-sidebar.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/table-rename.png b/packages/noco-docs/dist/img/v2-unannotated/table/table-rename.png new file mode 100644 index 0000000000..2f477f494e Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/table-rename.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-1.png b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-1.png new file mode 100644 index 0000000000..b9935ec3e9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-2.png b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-2.png new file mode 100644 index 0000000000..b188eebdbc Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-3.png b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-3.png new file mode 100644 index 0000000000..a944762910 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-3.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-url.png b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-url.png new file mode 100644 index 0000000000..b101e977f4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/table/upload-csv-url.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/create-view-1.png b/packages/noco-docs/dist/img/v2-unannotated/views/create-view-1.png new file mode 100644 index 0000000000..70a1636949 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/create-view-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/create-view-2.png b/packages/noco-docs/dist/img/v2-unannotated/views/create-view-2.png new file mode 100644 index 0000000000..864e61d3bf Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/create-view-2.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view-add-field.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-add-field.png new file mode 100644 index 0000000000..12094b601d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-add-field.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view-lable-help-text.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-lable-help-text.png new file mode 100644 index 0000000000..91df51ec07 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-lable-help-text.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view-remove-field.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-remove-field.png new file mode 100644 index 0000000000..da682de65b Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-remove-field.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view-shared.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-shared.png new file mode 100644 index 0000000000..03eba6f8b9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-shared.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view-title-description.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-title-description.png new file mode 100644 index 0000000000..f2f75cbda3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view-title-description.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/form-view.png b/packages/noco-docs/dist/img/v2-unannotated/views/form-view.png new file mode 100644 index 0000000000..c0c93390c2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/form-view.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/gallery.png b/packages/noco-docs/dist/img/v2-unannotated/views/gallery.png new file mode 100644 index 0000000000..b0cab75474 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/gallery.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/grid.png b/packages/noco-docs/dist/img/v2-unannotated/views/grid.png new file mode 100644 index 0000000000..92666f2510 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/grid.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban-add-record.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-add-record.png new file mode 100644 index 0000000000..22a876f884 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-add-record.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban-change-stack.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-change-stack.png new file mode 100644 index 0000000000..cf5ace5eec Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-change-stack.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban-collapse-stack.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-collapse-stack.png new file mode 100644 index 0000000000..ad77d1d385 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-collapse-stack.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban-delete-stack-confirmation.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-delete-stack-confirmation.png new file mode 100644 index 0000000000..66a8c87768 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-delete-stack-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban-edit-stack-options.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-edit-stack-options.png new file mode 100644 index 0000000000..580f9a4c39 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban-edit-stack-options.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/kanban.png b/packages/noco-docs/dist/img/v2-unannotated/views/kanban.png new file mode 100644 index 0000000000..cfdfc4782d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/kanban.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/locked-view.png b/packages/noco-docs/dist/img/v2-unannotated/views/locked-view.png new file mode 100644 index 0000000000..5a7931c551 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/locked-view.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/share-button.png b/packages/noco-docs/dist/img/v2-unannotated/views/share-button.png new file mode 100644 index 0000000000..ef1ecc3800 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/share-button.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/share-view-1.png b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-1.png new file mode 100644 index 0000000000..536cc5b0b0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-1.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/share-view-form.png b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-form.png new file mode 100644 index 0000000000..918d890ff0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-form.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/share-view-password.png b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-password.png new file mode 100644 index 0000000000..23c3cd0bcf Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/share-view-password.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/share-view.png b/packages/noco-docs/dist/img/v2-unannotated/views/share-view.png new file mode 100644 index 0000000000..f0ef0639ef Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/share-view.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/views/survey-form.png b/packages/noco-docs/dist/img/v2-unannotated/views/survey-form.png new file mode 100644 index 0000000000..7d4d074873 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/views/survey-form.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/webhook/webhook-list.png b/packages/noco-docs/dist/img/v2-unannotated/webhook/webhook-list.png new file mode 100644 index 0000000000..c8db8c4da2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/webhook/webhook-list.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-collaboration.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-collaboration.png new file mode 100644 index 0000000000..e350234a77 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-collaboration.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-context-menu.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-context-menu.png new file mode 100644 index 0000000000..e3b9ca2c42 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-create.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-create.png new file mode 100644 index 0000000000..624de39f41 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-create.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete-confirmation.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete-confirmation.png new file mode 100644 index 0000000000..533284e5c9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete.png new file mode 100644 index 0000000000..f9e02fd4e8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-delete.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-edit.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-edit.png new file mode 100644 index 0000000000..dbd3074cb9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-edit.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-list.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-list.png new file mode 100644 index 0000000000..ae2c16d21d Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-list.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-remove.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-remove.png new file mode 100644 index 0000000000..3e49491817 Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-member-remove.png differ diff --git a/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-rename.png b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-rename.png new file mode 100644 index 0000000000..069a6bb1cd Binary files /dev/null and b/packages/noco-docs/dist/img/v2-unannotated/workspace/workspace-rename.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/account-settings.png b/packages/noco-docs/dist/img/v2/account-settings/account-settings.png new file mode 100644 index 0000000000..77b8df391f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/account-settings.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/api-token-1.png b/packages/noco-docs/dist/img/v2/account-settings/api-token-1.png new file mode 100644 index 0000000000..0ce6938614 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/api-token-1.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/api-token-2.png b/packages/noco-docs/dist/img/v2/account-settings/api-token-2.png new file mode 100644 index 0000000000..0a9d355d1d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/api-token-2.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/api-token-3.png b/packages/noco-docs/dist/img/v2/account-settings/api-token-3.png new file mode 100644 index 0000000000..78b8a42be6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/api-token-3.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/api-token-4.png b/packages/noco-docs/dist/img/v2/account-settings/api-token-4.png new file mode 100644 index 0000000000..a36c1ae8aa Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/api-token-4.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/invite-only-sign-up.png b/packages/noco-docs/dist/img/v2/account-settings/invite-only-sign-up.png new file mode 100644 index 0000000000..b81a8259fb Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/invite-only-sign-up.png differ diff --git a/packages/noco-docs/dist/img/v2/account-settings/profile-page.png b/packages/noco-docs/dist/img/v2/account-settings/profile-page.png new file mode 100644 index 0000000000..595b45f0b3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/account-settings/profile-page.png differ diff --git a/packages/noco-docs/dist/img/v2/base/airtable-api-key.png b/packages/noco-docs/dist/img/v2/base/airtable-api-key.png new file mode 100644 index 0000000000..eed641ad87 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/airtable-api-key.png differ diff --git a/packages/noco-docs/dist/img/v2/base/airtable-share-base.png b/packages/noco-docs/dist/img/v2/base/airtable-share-base.png new file mode 100644 index 0000000000..fe250b7ca2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/airtable-share-base.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-collaboration.png b/packages/noco-docs/dist/img/v2/base/base-collaboration.png new file mode 100644 index 0000000000..ef7be176d9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-collaboration.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-context-menu.png b/packages/noco-docs/dist/img/v2/base/base-context-menu.png new file mode 100644 index 0000000000..a90cd0f70d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-create-1.png b/packages/noco-docs/dist/img/v2/base/base-create-1.png new file mode 100644 index 0000000000..e3e3a01a78 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-create-1.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-create-2.png b/packages/noco-docs/dist/img/v2/base/base-create-2.png new file mode 100644 index 0000000000..b8f91844e6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-create-2.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-dashboard.png b/packages/noco-docs/dist/img/v2/base/base-dashboard.png new file mode 100644 index 0000000000..07e512f4e3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-dashboard.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-delete.png b/packages/noco-docs/dist/img/v2/base/base-delete.png new file mode 100644 index 0000000000..98679cc639 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-delete.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-duplicate.png b/packages/noco-docs/dist/img/v2/base/base-duplicate.png new file mode 100644 index 0000000000..5239f2efba Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-duplicate.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-import-airtable-1.png b/packages/noco-docs/dist/img/v2/base/base-import-airtable-1.png new file mode 100644 index 0000000000..e24478644a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-import-airtable-1.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-import-airtable-2.png b/packages/noco-docs/dist/img/v2/base/base-import-airtable-2.png new file mode 100644 index 0000000000..52d64ae5c8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-import-airtable-2.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-import-airtable-3.png b/packages/noco-docs/dist/img/v2/base/base-import-airtable-3.png new file mode 100644 index 0000000000..420cbd3d10 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-import-airtable-3.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-1.png b/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-1.png new file mode 100644 index 0000000000..619f8d7bca Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-1.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-2.png b/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-2.png new file mode 100644 index 0000000000..062033dc0b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-import-from-dashboard-2.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-relations.png b/packages/noco-docs/dist/img/v2/base/base-relations.png new file mode 100644 index 0000000000..97d2960ec6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-relations.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-remove-from-starred.png b/packages/noco-docs/dist/img/v2/base/base-remove-from-starred.png new file mode 100644 index 0000000000..b0ed12597d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-remove-from-starred.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-rename.png b/packages/noco-docs/dist/img/v2/base/base-rename.png new file mode 100644 index 0000000000..7d3dc0c22c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-rename.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-settings.png b/packages/noco-docs/dist/img/v2/base/base-settings.png new file mode 100644 index 0000000000..7903d1747c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-settings.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-starred.png b/packages/noco-docs/dist/img/v2/base/base-starred.png new file mode 100644 index 0000000000..c36f99d1de Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-starred.png differ diff --git a/packages/noco-docs/dist/img/v2/base/base-swagger.png b/packages/noco-docs/dist/img/v2/base/base-swagger.png new file mode 100644 index 0000000000..c719c68bc8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/base-swagger.png differ diff --git a/packages/noco-docs/dist/img/v2/base/pat-1.png b/packages/noco-docs/dist/img/v2/base/pat-1.png new file mode 100644 index 0000000000..b7e1b5ea57 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/pat-1.png differ diff --git a/packages/noco-docs/dist/img/v2/base/pat-2.png b/packages/noco-docs/dist/img/v2/base/pat-2.png new file mode 100644 index 0000000000..8f2385987d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/pat-2.png differ diff --git a/packages/noco-docs/dist/img/v2/base/pat-3.png b/packages/noco-docs/dist/img/v2/base/pat-3.png new file mode 100644 index 0000000000..e05623fadc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/pat-3.png differ diff --git a/packages/noco-docs/dist/img/v2/base/share-base-1.png b/packages/noco-docs/dist/img/v2/base/share-base-1.png new file mode 100644 index 0000000000..ba994fc8f0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/share-base-1.png differ diff --git a/packages/noco-docs/dist/img/v2/base/share-base-2.png b/packages/noco-docs/dist/img/v2/base/share-base-2.png new file mode 100644 index 0000000000..bde33a505c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/share-base-2.png differ diff --git a/packages/noco-docs/dist/img/v2/base/share-base-edit-access.png b/packages/noco-docs/dist/img/v2/base/share-base-edit-access.png new file mode 100644 index 0000000000..22e72f5407 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/share-base-edit-access.png differ diff --git a/packages/noco-docs/dist/img/v2/base/share-base-enable-public-access.png b/packages/noco-docs/dist/img/v2/base/share-base-enable-public-access.png new file mode 100644 index 0000000000..f6d4f9ac54 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/share-base-enable-public-access.png differ diff --git a/packages/noco-docs/dist/img/v2/base/share-base-iframe.png b/packages/noco-docs/dist/img/v2/base/share-base-iframe.png new file mode 100644 index 0000000000..55353a55ce Binary files /dev/null and b/packages/noco-docs/dist/img/v2/base/share-base-iframe.png differ diff --git a/packages/noco-docs/dist/img/v2/cmd-k.png b/packages/noco-docs/dist/img/v2/cmd-k.png new file mode 100644 index 0000000000..b12408fb5a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/cmd-k.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/audit-logs.png b/packages/noco-docs/dist/img/v2/data-source/audit-logs.png new file mode 100644 index 0000000000..0d23ca1933 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/audit-logs.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/audit.png b/packages/noco-docs/dist/img/v2/data-source/audit.png new file mode 100644 index 0000000000..4634d489db Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/audit.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-2.png b/packages/noco-docs/dist/img/v2/data-source/data-source-2.png new file mode 100644 index 0000000000..0dfb695bb1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-2.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-3.png b/packages/noco-docs/dist/img/v2/data-source/data-source-3.png new file mode 100644 index 0000000000..77346e40fe Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-3.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-4.png b/packages/noco-docs/dist/img/v2/data-source/data-source-4.png new file mode 100644 index 0000000000..c41c21752f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-4.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-edit.png b/packages/noco-docs/dist/img/v2/data-source/data-source-edit.png new file mode 100644 index 0000000000..314df70957 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-edit.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-meta-sync.png b/packages/noco-docs/dist/img/v2/data-source/data-source-meta-sync.png new file mode 100644 index 0000000000..70c10a1458 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-meta-sync.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-post-sync.png b/packages/noco-docs/dist/img/v2/data-source/data-source-post-sync.png new file mode 100644 index 0000000000..bec1f18dec Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-post-sync.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-unlink.png b/packages/noco-docs/dist/img/v2/data-source/data-source-unlink.png new file mode 100644 index 0000000000..8172914464 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-unlink.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source-visibility.png b/packages/noco-docs/dist/img/v2/data-source/data-source-visibility.png new file mode 100644 index 0000000000..b7c382e7f4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source-visibility.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/data-source.png b/packages/noco-docs/dist/img/v2/data-source/data-source.png new file mode 100644 index 0000000000..3311b364dc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/data-source.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/edit-base.png b/packages/noco-docs/dist/img/v2/data-source/edit-base.png new file mode 100644 index 0000000000..1de6dfd463 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/edit-base.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/junction-table.png b/packages/noco-docs/dist/img/v2/data-source/junction-table.png new file mode 100644 index 0000000000..c08fd1a1a8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/junction-table.png differ diff --git a/packages/noco-docs/dist/img/v2/data-source/ui-acl.png b/packages/noco-docs/dist/img/v2/data-source/ui-acl.png new file mode 100644 index 0000000000..ef95c1daa6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/data-source/ui-acl.png differ diff --git a/packages/noco-docs/dist/img/v2/engineering/engineering-search-by-tags.png b/packages/noco-docs/dist/img/v2/engineering/engineering-search-by-tags.png new file mode 100644 index 0000000000..bff0b02246 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/engineering/engineering-search-by-tags.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/QR.png b/packages/noco-docs/dist/img/v2/fields/QR.png new file mode 100644 index 0000000000..14be0c0c52 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/QR.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/URL.png b/packages/noco-docs/dist/img/v2/fields/URL.png new file mode 100644 index 0000000000..39d46a0ce0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/URL.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/add-link-modal.png b/packages/noco-docs/dist/img/v2/fields/add-link-modal.png new file mode 100644 index 0000000000..eed317543b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/add-link-modal.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/attachment-cell-display.png b/packages/noco-docs/dist/img/v2/fields/attachment-cell-display.png new file mode 100644 index 0000000000..801d391e63 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/attachment-cell-display.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/attachment-cell.png b/packages/noco-docs/dist/img/v2/fields/attachment-cell.png new file mode 100644 index 0000000000..ed7c6e68a2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/attachment-cell.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/attachment-expand.png b/packages/noco-docs/dist/img/v2/fields/attachment-expand.png new file mode 100644 index 0000000000..7d39aa05db Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/attachment-expand.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/attachment.png b/packages/noco-docs/dist/img/v2/fields/attachment.png new file mode 100644 index 0000000000..39316001fc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/attachment.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/barcode-cell.png b/packages/noco-docs/dist/img/v2/fields/barcode-cell.png new file mode 100644 index 0000000000..fbb3c59ed9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/barcode-cell.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/barcode-expand.png b/packages/noco-docs/dist/img/v2/fields/barcode-expand.png new file mode 100644 index 0000000000..b10ba5704a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/barcode-expand.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/barcode.png b/packages/noco-docs/dist/img/v2/fields/barcode.png new file mode 100644 index 0000000000..c26aad8cf8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/barcode.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/checkbox-icon.png b/packages/noco-docs/dist/img/v2/fields/checkbox-icon.png new file mode 100644 index 0000000000..181bf72035 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/checkbox-icon.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/checkbox.png b/packages/noco-docs/dist/img/v2/fields/checkbox.png new file mode 100644 index 0000000000..74a46319e8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/checkbox.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/currency-cell-display.png b/packages/noco-docs/dist/img/v2/fields/currency-cell-display.png new file mode 100644 index 0000000000..dc019c6961 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/currency-cell-display.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/currency.png b/packages/noco-docs/dist/img/v2/fields/currency.png new file mode 100644 index 0000000000..a0d60ecde1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/currency.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/date.png b/packages/noco-docs/dist/img/v2/fields/date.png new file mode 100644 index 0000000000..99dba480c8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/date.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/datetime.png b/packages/noco-docs/dist/img/v2/fields/datetime.png new file mode 100644 index 0000000000..731eb2b9e6 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/datetime.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/decimal.png b/packages/noco-docs/dist/img/v2/fields/decimal.png new file mode 100644 index 0000000000..00c81cb863 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/decimal.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/detete-field-confirmation.png b/packages/noco-docs/dist/img/v2/fields/detete-field-confirmation.png new file mode 100644 index 0000000000..fb5f3c20fb Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/detete-field-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/display-value-in-linked-record.png b/packages/noco-docs/dist/img/v2/fields/display-value-in-linked-record.png new file mode 100644 index 0000000000..213e7ee4f8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/display-value-in-linked-record.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/display-value.png b/packages/noco-docs/dist/img/v2/fields/display-value.png new file mode 100644 index 0000000000..fc714730b8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/display-value.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/duration.png b/packages/noco-docs/dist/img/v2/fields/duration.png new file mode 100644 index 0000000000..3f65d9fc9d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/duration.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-1.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-1.png new file mode 100644 index 0000000000..611c7138d4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-1.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-2.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-2.png new file mode 100644 index 0000000000..e5bf748eb4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-2.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-3.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-3.png new file mode 100644 index 0000000000..b8449d8179 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-3.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-4.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-4.png new file mode 100644 index 0000000000..b006a70121 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-4.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-5.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-5.png new file mode 100644 index 0000000000..0fa3983f90 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-5.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-6.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-6.png new file mode 100644 index 0000000000..4eaead80e1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-6.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/editor/editor-7.png b/packages/noco-docs/dist/img/v2/fields/editor/editor-7.png new file mode 100644 index 0000000000..612b19435d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/editor/editor-7.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/email.png b/packages/noco-docs/dist/img/v2/fields/email.png new file mode 100644 index 0000000000..069ed67c01 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/email.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/fields-context-menu.png b/packages/noco-docs/dist/img/v2/fields/fields-context-menu.png new file mode 100644 index 0000000000..22d649b85f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/fields-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/fields-edit-2.png b/packages/noco-docs/dist/img/v2/fields/fields-edit-2.png new file mode 100644 index 0000000000..19ed5a7ff1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/fields-edit-2.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/fields-edit-3.png b/packages/noco-docs/dist/img/v2/fields/fields-edit-3.png new file mode 100644 index 0000000000..59a1554259 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/fields-edit-3.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/fields-edit-4.png b/packages/noco-docs/dist/img/v2/fields/fields-edit-4.png new file mode 100644 index 0000000000..c54902c1ab Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/fields-edit-4.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/fields-width.png b/packages/noco-docs/dist/img/v2/fields/fields-width.png new file mode 100644 index 0000000000..44d9debaf1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/fields-width.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/formula.png b/packages/noco-docs/dist/img/v2/fields/formula.png new file mode 100644 index 0000000000..5a733b0038 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/formula.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/geometry.png b/packages/noco-docs/dist/img/v2/fields/geometry.png new file mode 100644 index 0000000000..39effefe37 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/geometry.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/json.png b/packages/noco-docs/dist/img/v2/fields/json.png new file mode 100644 index 0000000000..5679829b99 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/json.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/linked-record-modal.png b/packages/noco-docs/dist/img/v2/fields/linked-record-modal.png new file mode 100644 index 0000000000..841c40dbd9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/linked-record-modal.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/linked-records-modal.png b/packages/noco-docs/dist/img/v2/fields/linked-records-modal.png new file mode 100644 index 0000000000..0098abdb09 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/linked-records-modal.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/links-cell-display.png b/packages/noco-docs/dist/img/v2/fields/links-cell-display.png new file mode 100644 index 0000000000..a41c73d62f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/links-cell-display.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/links.png b/packages/noco-docs/dist/img/v2/fields/links.png new file mode 100644 index 0000000000..acb2944ffd Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/links.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/long-text-expand-2.png b/packages/noco-docs/dist/img/v2/fields/long-text-expand-2.png new file mode 100644 index 0000000000..427913f1cb Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/long-text-expand-2.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/long-text-expand.png b/packages/noco-docs/dist/img/v2/fields/long-text-expand.png new file mode 100644 index 0000000000..d189d890d5 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/long-text-expand.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/long-text.png b/packages/noco-docs/dist/img/v2/fields/long-text.png new file mode 100644 index 0000000000..7989d4ca24 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/long-text.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/lookup.png b/packages/noco-docs/dist/img/v2/fields/lookup.png new file mode 100644 index 0000000000..170fa7dfd7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/lookup.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/multi-select.png b/packages/noco-docs/dist/img/v2/fields/multi-select.png new file mode 100644 index 0000000000..819e2e21de Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/multi-select.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/number.png b/packages/noco-docs/dist/img/v2/fields/number.png new file mode 100644 index 0000000000..85c9d64c94 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/number.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/percent.png b/packages/noco-docs/dist/img/v2/fields/percent.png new file mode 100644 index 0000000000..b6b4eec9c1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/percent.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/phone.png b/packages/noco-docs/dist/img/v2/fields/phone.png new file mode 100644 index 0000000000..384e26158f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/phone.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/qr-cell-display.png b/packages/noco-docs/dist/img/v2/fields/qr-cell-display.png new file mode 100644 index 0000000000..794974e1de Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/qr-cell-display.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/qr-expand.png b/packages/noco-docs/dist/img/v2/fields/qr-expand.png new file mode 100644 index 0000000000..ad20576296 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/qr-expand.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/rating-cell.png b/packages/noco-docs/dist/img/v2/fields/rating-cell.png new file mode 100644 index 0000000000..06bb2c1d8c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/rating-cell.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/rating-icon.png b/packages/noco-docs/dist/img/v2/fields/rating-icon.png new file mode 100644 index 0000000000..6e5c40a1dc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/rating-icon.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/rating.png b/packages/noco-docs/dist/img/v2/fields/rating.png new file mode 100644 index 0000000000..8ca3c957af Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/rating.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/rollup.png b/packages/noco-docs/dist/img/v2/fields/rollup.png new file mode 100644 index 0000000000..592369643e Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/rollup.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/set-as-display-value.png b/packages/noco-docs/dist/img/v2/fields/set-as-display-value.png new file mode 100644 index 0000000000..ebcd97d5be Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/set-as-display-value.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/single-line-text.png b/packages/noco-docs/dist/img/v2/fields/single-line-text.png new file mode 100644 index 0000000000..ef2b35e1a5 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/single-line-text.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/single-select-color.png b/packages/noco-docs/dist/img/v2/fields/single-select-color.png new file mode 100644 index 0000000000..b07cf8a859 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/single-select-color.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/single-select-delete.png b/packages/noco-docs/dist/img/v2/fields/single-select-delete.png new file mode 100644 index 0000000000..6596f15646 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/single-select-delete.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/single-select-reorder.png b/packages/noco-docs/dist/img/v2/fields/single-select-reorder.png new file mode 100644 index 0000000000..20cc63ff85 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/single-select-reorder.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/single-select.png b/packages/noco-docs/dist/img/v2/fields/single-select.png new file mode 100644 index 0000000000..b53f99ef64 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/single-select.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/specific-db-type.png b/packages/noco-docs/dist/img/v2/fields/specific-db-type.png new file mode 100644 index 0000000000..be5d764e1b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/specific-db-type.png differ diff --git a/packages/noco-docs/dist/img/v2/fields/time.png b/packages/noco-docs/dist/img/v2/fields/time.png new file mode 100644 index 0000000000..454b28df67 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/fields/time.png differ diff --git a/packages/noco-docs/dist/img/v2/layout-overview.png b/packages/noco-docs/dist/img/v2/layout-overview.png new file mode 100644 index 0000000000..d3e37ac523 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/layout-overview.png differ diff --git a/packages/noco-docs/dist/img/v2/records/bulk-update-1.png b/packages/noco-docs/dist/img/v2/records/bulk-update-1.png new file mode 100644 index 0000000000..3d621bf5e7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/bulk-update-1.png differ diff --git a/packages/noco-docs/dist/img/v2/records/bulk-update-2.png b/packages/noco-docs/dist/img/v2/records/bulk-update-2.png new file mode 100644 index 0000000000..5488ea8c0a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/bulk-update-2.png differ diff --git a/packages/noco-docs/dist/img/v2/records/bulk-update-3.png b/packages/noco-docs/dist/img/v2/records/bulk-update-3.png new file mode 100644 index 0000000000..93e107ef2b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/bulk-update-3.png differ diff --git a/packages/noco-docs/dist/img/v2/records/delete-row-bulk.png b/packages/noco-docs/dist/img/v2/records/delete-row-bulk.png new file mode 100644 index 0000000000..9813fe94ef Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/delete-row-bulk.png differ diff --git a/packages/noco-docs/dist/img/v2/records/delete-row.png b/packages/noco-docs/dist/img/v2/records/delete-row.png new file mode 100644 index 0000000000..9c1c5238fa Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/delete-row.png differ diff --git a/packages/noco-docs/dist/img/v2/records/new-record-form.png b/packages/noco-docs/dist/img/v2/records/new-record-form.png new file mode 100644 index 0000000000..e332c46bda Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/new-record-form.png differ diff --git a/packages/noco-docs/dist/img/v2/records/new-record-grid.png b/packages/noco-docs/dist/img/v2/records/new-record-grid.png new file mode 100644 index 0000000000..8e70d4bc73 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/records/new-record-grid.png differ diff --git a/packages/noco-docs/dist/img/v2/table-details/details-api-snippet.png b/packages/noco-docs/dist/img/v2/table-details/details-api-snippet.png new file mode 100644 index 0000000000..f59e9c98fa Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-details/details-api-snippet.png differ diff --git a/packages/noco-docs/dist/img/v2/table-details/details-field-editor.png b/packages/noco-docs/dist/img/v2/table-details/details-field-editor.png new file mode 100644 index 0000000000..943d7ff2bc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-details/details-field-editor.png differ diff --git a/packages/noco-docs/dist/img/v2/table-details/details-relations.png b/packages/noco-docs/dist/img/v2/table-details/details-relations.png new file mode 100644 index 0000000000..268465a9e3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-details/details-relations.png differ diff --git a/packages/noco-docs/dist/img/v2/table-details/details-tab.png b/packages/noco-docs/dist/img/v2/table-details/details-tab.png new file mode 100644 index 0000000000..40a0be52eb Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-details/details-tab.png differ diff --git a/packages/noco-docs/dist/img/v2/table-details/details-webhook.png b/packages/noco-docs/dist/img/v2/table-details/details-webhook.png new file mode 100644 index 0000000000..ceffbf4f0b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-details/details-webhook.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/change-cover-image.png b/packages/noco-docs/dist/img/v2/table-operations/change-cover-image.png new file mode 100644 index 0000000000..ff035995a0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/change-cover-image.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/download.png b/packages/noco-docs/dist/img/v2/table-operations/download.png new file mode 100644 index 0000000000..17b8a32f21 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/download.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/fields-hide.png b/packages/noco-docs/dist/img/v2/table-operations/fields-hide.png new file mode 100644 index 0000000000..0354bfcc1c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/fields-hide.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/fields-reorder.png b/packages/noco-docs/dist/img/v2/table-operations/fields-reorder.png new file mode 100644 index 0000000000..0f64c9596d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/fields-reorder.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/fields-show-system-fields.png b/packages/noco-docs/dist/img/v2/table-operations/fields-show-system-fields.png new file mode 100644 index 0000000000..3bb293f128 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/fields-show-system-fields.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-1.png b/packages/noco-docs/dist/img/v2/table-operations/filter-1.png new file mode 100644 index 0000000000..0e3ac05a6c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-2.png b/packages/noco-docs/dist/img/v2/table-operations/filter-2.png new file mode 100644 index 0000000000..162bca5c47 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-3.png b/packages/noco-docs/dist/img/v2/table-operations/filter-3.png new file mode 100644 index 0000000000..847f4f101a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-3.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-4.png b/packages/noco-docs/dist/img/v2/table-operations/filter-4.png new file mode 100644 index 0000000000..d8659ddcad Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-4.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-5.png b/packages/noco-docs/dist/img/v2/table-operations/filter-5.png new file mode 100644 index 0000000000..58ec38fe9d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-5.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-is-blank.png b/packages/noco-docs/dist/img/v2/table-operations/filter-is-blank.png new file mode 100644 index 0000000000..24775f83d4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-is-blank.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/filter-is-null-empty.png b/packages/noco-docs/dist/img/v2/table-operations/filter-is-null-empty.png new file mode 100644 index 0000000000..ac7f481da2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/filter-is-null-empty.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/group-by-1.png b/packages/noco-docs/dist/img/v2/table-operations/group-by-1.png new file mode 100644 index 0000000000..1fbe1cd7b2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/group-by-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/group-by-create.png b/packages/noco-docs/dist/img/v2/table-operations/group-by-create.png new file mode 100644 index 0000000000..9881e94a58 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/group-by-create.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/group-by-delete.png b/packages/noco-docs/dist/img/v2/table-operations/group-by-delete.png new file mode 100644 index 0000000000..5c123a59bc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/group-by-delete.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/group-by-nested.png b/packages/noco-docs/dist/img/v2/table-operations/group-by-nested.png new file mode 100644 index 0000000000..e5db4401c2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/group-by-nested.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/row-height-1.png b/packages/noco-docs/dist/img/v2/table-operations/row-height-1.png new file mode 100644 index 0000000000..72fe3d9963 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/row-height-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/row-height-2.png b/packages/noco-docs/dist/img/v2/table-operations/row-height-2.png new file mode 100644 index 0000000000..55925773f7 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/row-height-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/row-height-3.png b/packages/noco-docs/dist/img/v2/table-operations/row-height-3.png new file mode 100644 index 0000000000..12b0d01a45 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/row-height-3.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/row-height-4.png b/packages/noco-docs/dist/img/v2/table-operations/row-height-4.png new file mode 100644 index 0000000000..6f99f89c54 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/row-height-4.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/row-height-5.png b/packages/noco-docs/dist/img/v2/table-operations/row-height-5.png new file mode 100644 index 0000000000..9117c59f53 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/row-height-5.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/sort-1.png b/packages/noco-docs/dist/img/v2/table-operations/sort-1.png new file mode 100644 index 0000000000..b34fff5f62 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/sort-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/sort-2.png b/packages/noco-docs/dist/img/v2/table-operations/sort-2.png new file mode 100644 index 0000000000..35b3148aa4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/sort-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/sort-3.png b/packages/noco-docs/dist/img/v2/table-operations/sort-3.png new file mode 100644 index 0000000000..abc8c5fca8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/sort-3.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/sort-4.png b/packages/noco-docs/dist/img/v2/table-operations/sort-4.png new file mode 100644 index 0000000000..e211971269 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/sort-4.png differ diff --git a/packages/noco-docs/dist/img/v2/table-operations/table-search.png b/packages/noco-docs/dist/img/v2/table-operations/table-search.png new file mode 100644 index 0000000000..f70235c70e Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table-operations/table-search.png differ diff --git a/packages/noco-docs/dist/img/v2/table/import-csv-url.png b/packages/noco-docs/dist/img/v2/table/import-csv-url.png new file mode 100644 index 0000000000..bf3eb9ec63 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/import-csv-url.png differ diff --git a/packages/noco-docs/dist/img/v2/table/import-csv.png b/packages/noco-docs/dist/img/v2/table/import-csv.png new file mode 100644 index 0000000000..3a77b07da2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/import-csv.png differ diff --git a/packages/noco-docs/dist/img/v2/table/import-stage-2.png b/packages/noco-docs/dist/img/v2/table/import-stage-2.png new file mode 100644 index 0000000000..cb364c68df Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/import-stage-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-context-menu.png b/packages/noco-docs/dist/img/v2/table/table-context-menu.png new file mode 100644 index 0000000000..0c5691b96f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-create-1.png b/packages/noco-docs/dist/img/v2/table/table-create-1.png new file mode 100644 index 0000000000..821f9ceb71 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-create-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-create-2.png b/packages/noco-docs/dist/img/v2/table/table-create-2.png new file mode 100644 index 0000000000..2523624b88 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-create-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-delete.png b/packages/noco-docs/dist/img/v2/table/table-delete.png new file mode 100644 index 0000000000..b31b28b37f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-delete.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-duplicate.png b/packages/noco-docs/dist/img/v2/table/table-duplicate.png new file mode 100644 index 0000000000..6c60b98d8c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-duplicate.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-import-from-dashboard.png b/packages/noco-docs/dist/img/v2/table/table-import-from-dashboard.png new file mode 100644 index 0000000000..9271774bfd Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-import-from-dashboard.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-import-from-sidebar.png b/packages/noco-docs/dist/img/v2/table/table-import-from-sidebar.png new file mode 100644 index 0000000000..947a7b0a30 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-import-from-sidebar.png differ diff --git a/packages/noco-docs/dist/img/v2/table/table-rename.png b/packages/noco-docs/dist/img/v2/table/table-rename.png new file mode 100644 index 0000000000..1bdafe9551 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/table-rename.png differ diff --git a/packages/noco-docs/dist/img/v2/table/upload-csv-1.png b/packages/noco-docs/dist/img/v2/table/upload-csv-1.png new file mode 100644 index 0000000000..f0b7446f0f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/upload-csv-1.png differ diff --git a/packages/noco-docs/dist/img/v2/table/upload-csv-2.png b/packages/noco-docs/dist/img/v2/table/upload-csv-2.png new file mode 100644 index 0000000000..16ae9bac14 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/upload-csv-2.png differ diff --git a/packages/noco-docs/dist/img/v2/table/upload-csv-3.png b/packages/noco-docs/dist/img/v2/table/upload-csv-3.png new file mode 100644 index 0000000000..b0c85b04d3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/upload-csv-3.png differ diff --git a/packages/noco-docs/dist/img/v2/table/upload-csv-url.png b/packages/noco-docs/dist/img/v2/table/upload-csv-url.png new file mode 100644 index 0000000000..e74f8d61fc Binary files /dev/null and b/packages/noco-docs/dist/img/v2/table/upload-csv-url.png differ diff --git a/packages/noco-docs/dist/img/v2/views/create-view-1.png b/packages/noco-docs/dist/img/v2/views/create-view-1.png new file mode 100644 index 0000000000..89bf00c321 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/create-view-1.png differ diff --git a/packages/noco-docs/dist/img/v2/views/create-view-2.png b/packages/noco-docs/dist/img/v2/views/create-view-2.png new file mode 100644 index 0000000000..f729d3db50 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/create-view-2.png differ diff --git a/packages/noco-docs/dist/img/v2/views/delete-view-confirmation.png b/packages/noco-docs/dist/img/v2/views/delete-view-confirmation.png new file mode 100644 index 0000000000..730f5964e0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/delete-view-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2/views/duplicate-confirmation.png b/packages/noco-docs/dist/img/v2/views/duplicate-confirmation.png new file mode 100644 index 0000000000..6d00794980 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/duplicate-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-specific-configurations.png b/packages/noco-docs/dist/img/v2/views/form-specific-configurations.png new file mode 100644 index 0000000000..9164bbb5bf Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-specific-configurations.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-add-field.png b/packages/noco-docs/dist/img/v2/views/form-view-add-field.png new file mode 100644 index 0000000000..7d84b87d07 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-add-field.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-field-label-help-text.png b/packages/noco-docs/dist/img/v2/views/form-view-field-label-help-text.png new file mode 100644 index 0000000000..3c55f06d95 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-field-label-help-text.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-layout.png b/packages/noco-docs/dist/img/v2/views/form-view-layout.png new file mode 100644 index 0000000000..d47ffe1c4b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-layout.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-remove-field.png b/packages/noco-docs/dist/img/v2/views/form-view-remove-field.png new file mode 100644 index 0000000000..221c75b063 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-remove-field.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-required-field.png b/packages/noco-docs/dist/img/v2/views/form-view-required-field.png new file mode 100644 index 0000000000..e8c9e0ddfe Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-required-field.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-settings.png b/packages/noco-docs/dist/img/v2/views/form-view-settings.png new file mode 100644 index 0000000000..cd6be7aaf5 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-settings.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view-title-description.png b/packages/noco-docs/dist/img/v2/views/form-view-title-description.png new file mode 100644 index 0000000000..99767a10a8 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view-title-description.png differ diff --git a/packages/noco-docs/dist/img/v2/views/form-view.png b/packages/noco-docs/dist/img/v2/views/form-view.png new file mode 100644 index 0000000000..03eba6f8b9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/form-view.png differ diff --git a/packages/noco-docs/dist/img/v2/views/gallery.png b/packages/noco-docs/dist/img/v2/views/gallery.png new file mode 100644 index 0000000000..b0cab75474 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/gallery.png differ diff --git a/packages/noco-docs/dist/img/v2/views/grid.png b/packages/noco-docs/dist/img/v2/views/grid.png new file mode 100644 index 0000000000..92666f2510 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/grid.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-add-record.png b/packages/noco-docs/dist/img/v2/views/kanban-add-record.png new file mode 100644 index 0000000000..22a876f884 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-add-record.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-change-stack.png b/packages/noco-docs/dist/img/v2/views/kanban-change-stack.png new file mode 100644 index 0000000000..b35ba3701c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-change-stack.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-collapse-stack.png b/packages/noco-docs/dist/img/v2/views/kanban-collapse-stack.png new file mode 100644 index 0000000000..e0f960d889 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-collapse-stack.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-delete-stack-confirmation.png b/packages/noco-docs/dist/img/v2/views/kanban-delete-stack-confirmation.png new file mode 100644 index 0000000000..c337718ba4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-delete-stack-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-delete-stack.png b/packages/noco-docs/dist/img/v2/views/kanban-delete-stack.png new file mode 100644 index 0000000000..e6b04e0ad9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-delete-stack.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban-edit-stack-options.png b/packages/noco-docs/dist/img/v2/views/kanban-edit-stack-options.png new file mode 100644 index 0000000000..23e468b30b Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban-edit-stack-options.png differ diff --git a/packages/noco-docs/dist/img/v2/views/kanban.png b/packages/noco-docs/dist/img/v2/views/kanban.png new file mode 100644 index 0000000000..cfdfc4782d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/kanban.png differ diff --git a/packages/noco-docs/dist/img/v2/views/locked-view.png b/packages/noco-docs/dist/img/v2/views/locked-view.png new file mode 100644 index 0000000000..ad04e57c0f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/locked-view.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-button.png b/packages/noco-docs/dist/img/v2/views/share-button.png new file mode 100644 index 0000000000..2df0e5d9e4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-button.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view-1.png b/packages/noco-docs/dist/img/v2/views/share-view-1.png new file mode 100644 index 0000000000..46fefb036a Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view-1.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view-copy-link.png b/packages/noco-docs/dist/img/v2/views/share-view-copy-link.png new file mode 100644 index 0000000000..46f235a812 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view-copy-link.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view-download.png b/packages/noco-docs/dist/img/v2/views/share-view-download.png new file mode 100644 index 0000000000..c2921759bf Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view-download.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view-password.png b/packages/noco-docs/dist/img/v2/views/share-view-password.png new file mode 100644 index 0000000000..29eb03b4d9 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view-password.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-button.png b/packages/noco-docs/dist/img/v2/views/share-view/share-button.png new file mode 100644 index 0000000000..1387a535af Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-button.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view-form.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view-form.png new file mode 100644 index 0000000000..360cce84bf Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view-form.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-2.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-2.png new file mode 100644 index 0000000000..5582535fca Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-2.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-3.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-3.png new file mode 100644 index 0000000000..d65edd5487 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal-3.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal.png new file mode 100644 index 0000000000..9517f02a95 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view-modal.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view-password.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view-password.png new file mode 100644 index 0000000000..23c3cd0bcf Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view-password.png differ diff --git a/packages/noco-docs/dist/img/v2/views/share-view/share-view.png b/packages/noco-docs/dist/img/v2/views/share-view/share-view.png new file mode 100644 index 0000000000..f0ef0639ef Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/share-view/share-view.png differ diff --git a/packages/noco-docs/dist/img/v2/views/survey-form.png b/packages/noco-docs/dist/img/v2/views/survey-form.png new file mode 100644 index 0000000000..7d4d074873 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/survey-form.png differ diff --git a/packages/noco-docs/dist/img/v2/views/view-context-menu.png b/packages/noco-docs/dist/img/v2/views/view-context-menu.png new file mode 100644 index 0000000000..29e74b00d1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/views/view-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2/webhook/create-webhook-1.png b/packages/noco-docs/dist/img/v2/webhook/create-webhook-1.png new file mode 100644 index 0000000000..0c6d91a2bd Binary files /dev/null and b/packages/noco-docs/dist/img/v2/webhook/create-webhook-1.png differ diff --git a/packages/noco-docs/dist/img/v2/webhook/create-webhook-2.png b/packages/noco-docs/dist/img/v2/webhook/create-webhook-2.png new file mode 100644 index 0000000000..149e580f6f Binary files /dev/null and b/packages/noco-docs/dist/img/v2/webhook/create-webhook-2.png differ diff --git a/packages/noco-docs/dist/img/v2/webhook/webhook-list-2.png b/packages/noco-docs/dist/img/v2/webhook/webhook-list-2.png new file mode 100644 index 0000000000..450e01bda0 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/webhook/webhook-list-2.png differ diff --git a/packages/noco-docs/dist/img/v2/webhook/webhook-list-3.png b/packages/noco-docs/dist/img/v2/webhook/webhook-list-3.png new file mode 100644 index 0000000000..f7fefd5111 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/webhook/webhook-list-3.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-collaboration.png b/packages/noco-docs/dist/img/v2/workspace/workspace-collaboration.png new file mode 100644 index 0000000000..717636e0e4 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-collaboration.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-context-menu.png b/packages/noco-docs/dist/img/v2/workspace/workspace-context-menu.png new file mode 100644 index 0000000000..d8c4a57eb3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-context-menu.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-create-2.png b/packages/noco-docs/dist/img/v2/workspace/workspace-create-2.png new file mode 100644 index 0000000000..2ceaaf37a1 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-create-2.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-create.png b/packages/noco-docs/dist/img/v2/workspace/workspace-create.png new file mode 100644 index 0000000000..d6bc3f22eb Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-create.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-delete-confirmation.png b/packages/noco-docs/dist/img/v2/workspace/workspace-delete-confirmation.png new file mode 100644 index 0000000000..fa8b9750a2 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-delete-confirmation.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-delete.png b/packages/noco-docs/dist/img/v2/workspace/workspace-delete.png new file mode 100644 index 0000000000..0242e47d72 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-delete.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-members-list.png b/packages/noco-docs/dist/img/v2/workspace/workspace-members-list.png new file mode 100644 index 0000000000..ae2c16d21d Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-members-list.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-members-remove.png b/packages/noco-docs/dist/img/v2/workspace/workspace-members-remove.png new file mode 100644 index 0000000000..8cb31d8b11 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-members-remove.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-members-role-change.png b/packages/noco-docs/dist/img/v2/workspace/workspace-members-role-change.png new file mode 100644 index 0000000000..6e14a82e8c Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-members-role-change.png differ diff --git a/packages/noco-docs/dist/img/v2/workspace/workspace-rename.png b/packages/noco-docs/dist/img/v2/workspace/workspace-rename.png new file mode 100644 index 0000000000..b1f249dca3 Binary files /dev/null and b/packages/noco-docs/dist/img/v2/workspace/workspace-rename.png differ diff --git a/packages/noco-docs/dist/index.html b/packages/noco-docs/dist/index.html new file mode 100644 index 0000000000..1ae6478473 --- /dev/null +++ b/packages/noco-docs/dist/index.html @@ -0,0 +1,16 @@ + + + + + +Welcome | NocoDB + + + + +
+
Version: Latest

Welcome

image

NocoDB is a no-code database platform that allows teams to collaborate and build applications with ease of a familiar and intuitive spreadsheet interface. This allows even non-developers or business users to become software creators.

NocoDB works by connecting to any relational database and transforming them into a smart spreadsheet interface! This allows you to build no-code applications collaboratively with teams. NocoDB currently works with MySQL, PostgreSQL & SQLite (only in Open Source) databases.

Also, NocoDB's app store allows you to build business workflows on views with combination of Slack, Microsoft Teams, Discord, Twilio, Whatsapp, Email & any 3rd party APIs too. Plus NocoDB provides programmatic access to APIs so that you can build integrations with Zapier / Integromat and custom applications too.

Features

Rich Spreadsheet Interface

  •  Basic Operations: Create, Read, Update and Delete on Tables, Columns, and Records
  •  Fields Operations: Sort, Filter, Hide / Un-hide Fields
  •  Multiple Views Types: Grid (By default), Gallery, Form View and Kanban View
  •  View Permissions Types: Collaborative Views & Locked Views
  •  Share Bases / Views: either Public or Private (with Password Protected)
  •  Variant Cell Types: ID, Links, Lookup, Rollup, SingleLineText, Attachment, Currency, Formula and etc
  •  Access Control with Roles : Fine-grained Access Control at different levels
  •  and more ...

App Store for Workflow Automations

We provide different integrations in three main categories. See App Store for details.

  •  Chat : Slack, Discord, Mattermost, and etc
  •  Email : AWS SES, SMTP, MailerSend, and etc
  •  Storage : AWS S3, Google Cloud Storage, Minio, and etc

Programmatic Access

We provide the following ways to let users invoke actions in a programmatic way. You can use a token (either JWT or Social Auth) to sign your requests for authorization to NocoDB.

  •  REST APIs
  •  NocoDB SDK

Sync Schema

We allow you to sync schema changes if you have made changes outside NocoDB GUI. However, it has to be noted then you will have to bring your own schema migrations for moving from environment to others. See Sync Schema for details.

Audit

We are keeping all the user operation logs under one place. See Audit for details.

Why are we building this?

Most internet businesses equip themselves with either spreadsheet or a database to solve their business needs. Spreadsheets are used by a Billion+ humans collaboratively every single day. However, we are way off working at similar speeds on databases which are way more powerful tools when it comes to computing. Attempts to solve this with SaaS offerings has meant horrible access controls, vendor lockin, data lockin, abrupt price changes & most importantly a glass ceiling on what's possible in the future.

Our Mission

Our mission is to provide the most powerful no-code interface for databases which is Open Source to every single internet business in the world. This would not only democratise access to a powerful computing tool but also bring forth a billion+ people who will have radical tinkering-and-building abilities on internet.

How can I contribute to NocoDB's development ?

Please refer to here for the contribution guidelines.

Where can I join the NocoDB community?

Follow us for daily updates, content, and other activities with our community:

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/records/actions-on-record/index.html b/packages/noco-docs/dist/records/actions-on-record/index.html new file mode 100644 index 0000000000..e207567548 --- /dev/null +++ b/packages/noco-docs/dist/records/actions-on-record/index.html @@ -0,0 +1,21 @@ + + + + + +Actions on record | NocoDB + + + + +
+
Version: Latest

Actions on record

Keyboard navigation within Grid view

A selected cell can be in one of the following states:

  1. Select state : A single click on the cell selects the cell. When in this state, arrow keys can be used to navigate to adjacent cells.
  2. Edit state : A double click on the cell puts the cell in edit state. Cursor can be moved within the cell using arrow keys.
note
  • Double-click on a cell to put it in edit state directly.
  • From Select state, press Enter key to enter edit state.
  • Press Esc key to exit edit state.
  • From Edit state, press Enter key to save the changes.

Edit state for some cells will be a picker. For example, a cell with Single Select field type will have a picker with options to choose from. In such cases, arrow keys can be used to navigate between options.

Keyboard shortcuts for cell navigation

KeyBehaviour
Jump to first record in this field (in same page)
Jump to last record in this field (in same page)
CCopy cell contents to clipboard
VPaste clipboard contents to cell
EnterSwitch cell in focus to EDIT mode; opens modal/picker if cell is associated with one
EscExit cell EDIT mode
DeleteClear cell
SpaceExpand current record
General cell navigation : left, right, top, bottom
TabMove to next cell horizontally; if on last cell, move to beginning of next record

Update Record

You can start editing by any of the following methods

  • Double-click on cell to edit
  • Click on cell and start typing (this way it will clear the previous content)
  • Click on cell and press enter to start editing

And it will automatically save on blur event or if inactive.

Bulk Update Records

You can bulk update records by

  1. Selecting multiple records that you wish to update together and then
  2. Right-click on the index field area (first column on the grid view) and then select Bulk Update records option from the context menu. This will open Bulk update modal.

On the bulk update modal, +3. Fields area : Select the fields that you want to update. +4. Selected fields area : Enter the new value for the selected fields. +5. Click on the Bulk Update all button +6. A confirmation dialog will be displayed. Click on Confirm to update the records.

danger

This operation cannot be undone.

Bulk Update

Bulk Update

Bulk Update

info

You can drag drop required fields from the Fields area to the Selected fields area & vice versa.
+You can update multiple fields at a time.

Delete Record (Single)

Right-click on record and then from the cell context menu, select Delete Row option.

delete row -1

Delete Record (Bulk)

Select multiple records by using the checkbox in first column and then Delete Selected Rows options from the right click context menu.

delete row 2

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/records/create-record/index.html b/packages/noco-docs/dist/records/create-record/index.html new file mode 100644 index 0000000000..788bbde90f --- /dev/null +++ b/packages/noco-docs/dist/records/create-record/index.html @@ -0,0 +1,16 @@ + + + + + +Create record | NocoDB + + + + +
+
Version: Latest

Create record

A new record can be added by using the New Record button in the bottom left corner of the grid view. Default behaviour of this button is to add a new empty record at the end of the grid view. Field values can be populated by clicking on the cell and entering the value.

info
  • An empty record can also be added by using + icon in the last row of the grid view.
  • When on last record, Enter key can be used to add a new empty record to the grid view.

image

New records can also be added by using a form. To add a new record using a form,

  1. Click on the up-arrow in New Record button; this expands options for adding a new record.
  2. Select New Record - Form option. This will reconfigure default behaviour of New Record button to add a new record using a form.

image

info

To revert back to default behaviour of New Record button, click on the up-arrow in New Record button and select New Record - Grid option.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/records/expand-record/index.html b/packages/noco-docs/dist/records/expand-record/index.html new file mode 100644 index 0000000000..b7bf4f88cc --- /dev/null +++ b/packages/noco-docs/dist/records/expand-record/index.html @@ -0,0 +1,16 @@ + + + + + +Expanded record | NocoDB + + + + +
+
Version: Latest

Expanded record

Overview

Expanded record allows you to edit a record data using a form layout. Apart from record information, it also consists of the activity feed such as user comments or revision history.

expanded record

Expanding a Record

To expand a record in a grid view, click on double arrow icon that appears on the first column (index column) on hover over a record.

expand record icon

Alternatively, we can click on a cell and press the space bar. The expanded form for the corresponding record will be opened.

Activity Feed

In an expanded form comment section, disable Comments only checkbox to show the activity feed.

expand record activity feed

Copy Record URL

In an expanded form, click Copy Record URL to share the record form to other authorized users.

expand record copy record url

Comment on Record

In an expanded form comment section, feed in the comment in the input box provided and press Enter key

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/records/records-overview/index.html b/packages/noco-docs/dist/records/records-overview/index.html new file mode 100644 index 0000000000..d59fc5ce1e --- /dev/null +++ b/packages/noco-docs/dist/records/records-overview/index.html @@ -0,0 +1,16 @@ + + + + + +Records overview | NocoDB + + + + +
+
Version: Latest

Records overview

Records in NocoDB are fundamental components within a database, serving as individual entries or data points within a table. Each default table in NocoDB is meticulously organized into a structured grid of records, fields (columns), and cells. These records constitute the backbone of data storage and retrieval within NocoDB, encapsulating a diverse range of information types, including text, numerical values, dates, file attachments, and even hyperlinks to other records, either within the same table or across different tables. This versatile approach allows users to create highly customizable databases tailored to their specific data management needs, all centered around the concept of records.

In essence, a record can be envisaged as a horizontal collection of data within a NocoDB table, each record representing a distinct piece of information. These records play a pivotal role in organizing, categorizing, and presenting data in a comprehensible and efficient manner, offering users a structured and organized platform for data management.

In this section, we'll explore the various aspects of records in NocoDB, equipping you with the knowledge to effectively manage your own data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/roles-and-permissions/roles-permissions-overview/index.html b/packages/noco-docs/dist/roles-and-permissions/roles-permissions-overview/index.html new file mode 100644 index 0000000000..30a2da90d0 --- /dev/null +++ b/packages/noco-docs/dist/roles-and-permissions/roles-permissions-overview/index.html @@ -0,0 +1,35 @@ + + + + + +Roles & permissions overview | NocoDB + + + + +
+
Version: Latest

Roles & permissions overview

In NocoDB, we have roles that determine what people can do in a Workspace or Base.

You can give a member one of these roles:

  • Creator
  • Editor
  • Commenter
  • Viewer
info

Role for a member, if assigned at base level carry precedence over workspace level role.

When inviting a user, their role designation is initially assigned but can be modified later. Our role system +operates incrementally, with higher-level roles encompassing all privileges of lower-level roles. +This hierarchy offers flexibility in permissions and fosters a transparent organizational structure +in workspace or base management.

Roles

Roles serve as the basis for user privileges in NocoDB. They are associated with members at two levels: +Workspace and Base. When a member is invited to a Workspace with a specific role, like an "Editor," they +automatically have that role in all Bases within that Workspace. However, project owners or creators can customize +permissions at the project level to align with specific needs. This dual-level role assignment system +ensures adaptable user permissions and access management in NocoDB.

Owner: When a member creates a new Workspace or Base, they automatically become the Workspace or Base "Owner." +\This role grants exclusive privileges, including the authority to delete the Workspace or Base. +The "Owner" role's privileges are non-transferable, ensuring ownership and control integrity.

Creator: The "Creator" role shares all privileges with an "Owner," except for deleting the workspace or base. +"Creators" have full administrative rights, except for deletion authority, which remains exclusive to the "Owner." +This ensures balanced workspace or base management.

Editor: An "Editor" can create and edit records but cannot modify the project schema, +like adding tables or columns. They strike a balance between data input and schema management.

Commenter: The "Commenter" role cannot add or edit records but can provide comments on existing records +, facilitating communication and feedback.

Viewer: "Viewers" can only access records and associated comments, without the ability to contribute +or make changes, ensuring controlled access for informational purposes.

No Access: This role, applied exclusively at the base level, revokes project access for the designated user, +ensuring robust security and access management.

Workspace level permissions

The individual who creates the workspace is automatically designated as a Workspace owner. +A workspace can have only one Owner. Access to bases within that workspace is granted to members based on their roles +within the parent workspace. When a member becomes part of a workspace, the role at the workspace level is +automatically applied to them for all bases in that workspace, unless a specific exception is configured +to override at base level.

TaskOwnerCreatorEditorCommenterViewer
Invite member to workspace✔️✔️
Manage member access to workspace✔️✔️
Remove member access from workspace✔️✔️
View members in workspace✔️✔️
Delete Workspace✔️
Billing & upgrade options✔️
Create a new base✔️✔️✔️✔️✔️
Access existing bases at assigned roles✔️✔️✔️✔️✔️

Base level permissions

Collaboration

TaskOwnerCreatorEditorCommenterViewer
Invite members to base at or below your role✔️✔️
Manage members access to base✔️✔️
Remove member access from a base✔️✔️
View members in a base✔️✔️
Share base✔️✔️
Share view✔️✔️

Table & view operations

TaskOwnerCreatorEditorCommenterViewer
Add / modify / delete table✔️✔️
Add / modify / delete fields✔️✔️
Add / modify / delete views✔️✔️
Hide / un-hide / reorder fields✔️✔️✔️✔️✔️
Add / modify / delete sort✔️✔️✔️✔️✔️
Add / modify / delete filters✔️✔️✔️✔️✔️
Add / modify / delete group-by✔️✔️✔️✔️✔️

Record operations

TaskOwnerCreatorEditorCommenterViewer
Add / modify / delete record✔️✔️
View & add comment on a record✔️✔️✔️✔️
View record✔️✔️✔️✔️✔️

Automations & advanced

TaskOwnerCreatorEditorCommenterViewer
Add / modify / delete Webhook✔️✔️
ERD (Project & Table relations)✔️✔️✔️✔️✔️
API Snippet✔️✔️✔️✔️✔️
API Token✔️✔️✔️✔️✔️
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/sitemap.xml b/packages/noco-docs/dist/sitemap.xml new file mode 100644 index 0000000000..ad3538609b --- /dev/null +++ b/packages/noco-docs/dist/sitemap.xml @@ -0,0 +1 @@ +https://nocodb.com/0.109.7/weekly0.5https://nocodb.com/0.109.7/developer-resources/accessing-apisweekly0.5https://nocodb.com/0.109.7/developer-resources/rest-apisweekly0.5https://nocodb.com/0.109.7/developer-resources/sdkweekly0.5https://nocodb.com/0.109.7/developer-resources/upload-via-apiweekly0.5https://nocodb.com/0.109.7/developer-resources/webhooksweekly0.5https://nocodb.com/0.109.7/engineering/architectureweekly0.5https://nocodb.com/0.109.7/engineering/builds-and-releasesweekly0.5https://nocodb.com/0.109.7/engineering/development-setupweekly0.5https://nocodb.com/0.109.7/engineering/playwrightweekly0.5https://nocodb.com/0.109.7/engineering/repository-structureweekly0.5https://nocodb.com/0.109.7/engineering/translationweekly0.5https://nocodb.com/0.109.7/engineering/unit-testingweekly0.5https://nocodb.com/0.109.7/FAQsweekly0.5https://nocodb.com/0.109.7/getting-started/demosweekly0.5https://nocodb.com/0.109.7/getting-started/environment-variablesweekly0.5https://nocodb.com/0.109.7/getting-started/installationweekly0.5https://nocodb.com/0.109.7/getting-started/upgradingweekly0.5https://nocodb.com/0.109.7/setup-and-usages/account-settingsweekly0.5https://nocodb.com/0.109.7/setup-and-usages/auditweekly0.5https://nocodb.com/0.109.7/setup-and-usages/code-snippetsweekly0.5https://nocodb.com/0.109.7/setup-and-usages/column-operationsweekly0.5https://nocodb.com/0.109.7/setup-and-usages/column-typesweekly0.5https://nocodb.com/0.109.7/setup-and-usages/dashboardweekly0.5https://nocodb.com/0.109.7/setup-and-usages/display-valueweekly0.5https://nocodb.com/0.109.7/setup-and-usages/expanded-formweekly0.5https://nocodb.com/0.109.7/setup-and-usages/formulasweekly0.5https://nocodb.com/0.109.7/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-freeweekly0.5https://nocodb.com/0.109.7/setup-and-usages/keyboard-maneuverweekly0.5https://nocodb.com/0.109.7/setup-and-usages/languagesweekly0.5https://nocodb.com/0.109.7/setup-and-usages/link-to-another-recordweekly0.5https://nocodb.com/0.109.7/setup-and-usages/linksweekly0.5https://nocodb.com/0.109.7/setup-and-usages/lookupweekly0.5https://nocodb.com/0.109.7/setup-and-usages/meta-managementweekly0.5https://nocodb.com/0.109.7/setup-and-usages/primary-keyweekly0.5https://nocodb.com/0.109.7/setup-and-usages/project-settingsweekly0.5https://nocodb.com/0.109.7/setup-and-usages/rollupweekly0.5https://nocodb.com/0.109.7/setup-and-usages/share-baseweekly0.5https://nocodb.com/0.109.7/setup-and-usages/share-viewweekly0.5https://nocodb.com/0.109.7/setup-and-usages/sync-schemaweekly0.5https://nocodb.com/0.109.7/setup-and-usages/table-operationsweekly0.5https://nocodb.com/0.109.7/setup-and-usages/team-and-authweekly0.5https://nocodb.com/0.109.7/setup-and-usages/usage-informationweekly0.5https://nocodb.com/0.109.7/setup-and-usages/viewsweekly0.5https://nocodb.com/weekly0.5https://nocodb.com/account-settings/api-tokensweekly0.5https://nocodb.com/account-settings/oss-specific-detailsweekly0.5https://nocodb.com/account-settings/profile-pageweekly0.5https://nocodb.com/automation/webhook/actions-on-webhookweekly0.5https://nocodb.com/automation/webhook/create-webhookweekly0.5https://nocodb.com/automation/webhook/webhook-overviewweekly0.5https://nocodb.com/bases/actions-on-baseweekly0.5https://nocodb.com/bases/base-collaborationweekly0.5https://nocodb.com/bases/base-overviewweekly0.5https://nocodb.com/bases/create-baseweekly0.5https://nocodb.com/bases/import-base-from-airtableweekly0.5https://nocodb.com/bases/share-baseweekly0.5https://nocodb.com/collaboration/base-collaborationweekly0.5https://nocodb.com/collaboration/collaboration-overviewweekly0.5https://nocodb.com/collaboration/oss-specific-detailsweekly0.5https://nocodb.com/collaboration/share-baseweekly0.5https://nocodb.com/collaboration/share-viewweekly0.5https://nocodb.com/collaboration/workspace-collaborationweekly0.5https://nocodb.com/data-source/data-source-overviewweekly0.5https://nocodb.com/engineering/architectureweekly0.5https://nocodb.com/engineering/builds-and-releasesweekly0.5https://nocodb.com/engineering/development-setupweekly0.5https://nocodb.com/engineering/playwrightweekly0.5https://nocodb.com/engineering/repository-structureweekly0.5https://nocodb.com/engineering/translationweekly0.5https://nocodb.com/engineering/unit-testingweekly0.5https://nocodb.com/engineering/writing-docsweekly0.5https://nocodb.com/FAQsweekly0.5https://nocodb.com/fields/actions-on-fieldweekly0.5https://nocodb.com/fields/display-valueweekly0.5https://nocodb.com/fields/field-types/custom-types/attachmentweekly0.5https://nocodb.com/fields/field-types/custom-types/barcodeweekly0.5https://nocodb.com/fields/field-types/custom-types/checkboxweekly0.5https://nocodb.com/fields/field-types/custom-types/geometryweekly0.5https://nocodb.com/fields/field-types/custom-types/jsonweekly0.5https://nocodb.com/fields/field-types/custom-types/QR-codeweekly0.5https://nocodb.com/fields/field-types/custom-types/ratingweekly0.5https://nocodb.com/fields/field-types/custom-types/specific-db-typeweekly0.5https://nocodb.com/fields/field-types/date-time-based/dateweekly0.5https://nocodb.com/fields/field-types/date-time-based/date-timeweekly0.5https://nocodb.com/fields/field-types/date-time-based/durationweekly0.5https://nocodb.com/fields/field-types/date-time-based/timeweekly0.5https://nocodb.com/fields/field-types/formula/conditional-expressionsweekly0.5https://nocodb.com/fields/field-types/formula/date-functionsweekly0.5https://nocodb.com/fields/field-types/formula/formulaweekly0.5https://nocodb.com/fields/field-types/formula/numeric-functionsweekly0.5https://nocodb.com/fields/field-types/formula/operatorsweekly0.5https://nocodb.com/fields/field-types/formula/string-functionsweekly0.5https://nocodb.com/fields/field-types/links-based/linksweekly0.5https://nocodb.com/fields/field-types/links-based/lookupweekly0.5https://nocodb.com/fields/field-types/links-based/rollupweekly0.5https://nocodb.com/fields/field-types/numerical/currencyweekly0.5https://nocodb.com/fields/field-types/numerical/decimalweekly0.5https://nocodb.com/fields/field-types/numerical/numberweekly0.5https://nocodb.com/fields/field-types/numerical/percentweekly0.5https://nocodb.com/fields/field-types/select-based/multi-selectweekly0.5https://nocodb.com/fields/field-types/select-based/single-selectweekly0.5https://nocodb.com/fields/field-types/text-based/emailweekly0.5https://nocodb.com/fields/field-types/text-based/long-textweekly0.5https://nocodb.com/fields/field-types/text-based/phonenumberweekly0.5https://nocodb.com/fields/field-types/text-based/single-line-textweekly0.5https://nocodb.com/fields/field-types/text-based/urlweekly0.5https://nocodb.com/fields/fields-overviewweekly0.5https://nocodb.com/fields/multi-fields-editorweekly0.5https://nocodb.com/fields/primary-keyweekly0.5https://nocodb.com/getting-started/keyboard-shortcutsweekly0.5https://nocodb.com/getting-started/quick-startweekly0.5https://nocodb.com/getting-started/self-hosted/environment-variablesweekly0.5https://nocodb.com/getting-started/self-hosted/installationweekly0.5https://nocodb.com/getting-started/self-hosted/upgradingweekly0.5https://nocodb.com/getting-started/terminologiesweekly0.5https://nocodb.com/records/actions-on-recordweekly0.5https://nocodb.com/records/create-recordweekly0.5https://nocodb.com/records/expand-recordweekly0.5https://nocodb.com/records/records-overviewweekly0.5https://nocodb.com/roles-and-permissions/roles-permissions-overviewweekly0.5https://nocodb.com/table-details/table-details-overviewweekly0.5https://nocodb.com/table-operations/downloadweekly0.5https://nocodb.com/table-operations/field-operationsweekly0.5https://nocodb.com/table-operations/filterweekly0.5https://nocodb.com/table-operations/group-byweekly0.5https://nocodb.com/table-operations/overviewweekly0.5https://nocodb.com/table-operations/row-heightweekly0.5https://nocodb.com/table-operations/searchweekly0.5https://nocodb.com/table-operations/sortweekly0.5https://nocodb.com/tables/actions-on-tableweekly0.5https://nocodb.com/tables/create-tableweekly0.5https://nocodb.com/tables/create-table-via-importweekly0.5https://nocodb.com/tables/import-data-into-existing-tableweekly0.5https://nocodb.com/tables/table-overviewweekly0.5https://nocodb.com/views/actions-on-viewweekly0.5https://nocodb.com/views/create-viewweekly0.5https://nocodb.com/views/share-viewweekly0.5https://nocodb.com/views/view-types/formweekly0.5https://nocodb.com/views/view-types/galleryweekly0.5https://nocodb.com/views/view-types/gridweekly0.5https://nocodb.com/views/view-types/kanbanweekly0.5https://nocodb.com/views/views-overviewweekly0.5https://nocodb.com/workspaces/actions-on-workspaceweekly0.5https://nocodb.com/workspaces/create-workspaceweekly0.5https://nocodb.com/workspaces/workspace-collaborationweekly0.5https://nocodb.com/workspaces/workspace-overviewweekly0.5 \ No newline at end of file diff --git a/packages/noco-docs/dist/sw.js b/packages/noco-docs/dist/sw.js new file mode 100644 index 0000000000..2d4d4602a0 --- /dev/null +++ b/packages/noco-docs/dist/sw.js @@ -0,0 +1,17 @@ +// THIS FILE SHOULD NOT BE VERSION CONTROLLED + +// https://github.com/NekR/self-destroying-sw + +self.addEventListener('install', function (e) { + self.skipWaiting() +}) + +self.addEventListener('activate', function (e) { + self.registration.unregister() + .then(function () { + return self.clients.matchAll() + }) + .then(function (clients) { + clients.forEach(client => client.navigate(client.url)) + }) +}) diff --git a/packages/noco-docs/dist/table-details/table-details-overview/index.html b/packages/noco-docs/dist/table-details/table-details-overview/index.html new file mode 100644 index 0000000000..8c6a6c8f7b --- /dev/null +++ b/packages/noco-docs/dist/table-details/table-details-overview/index.html @@ -0,0 +1,16 @@ + + + + + +Table details overview | NocoDB + + + + +
+
Version: Latest

Table details overview

Table Details section houses various tools & utilities to manage & work with your table schema & data. This essentially is a place for 'Creators' to build & manage their tables quickly. Details section is accessible using the Data-Details toggle switcher in the top navbar.

image

This section is divided into 4 parts:

Fields

Fields is a multi-field table schema editor that allows you to add, edit, delete and reorder fields quickly & easily from one place. Additional details about multi-field editor can be found here

image

Relations

Relations are vital for managing data connections in a database. In a complex schema, it's essential to have a clear understanding of these connections because they:

  1. Maintain data accuracy.
  2. Enhance query efficiency.
  3. Aid in logical schema design.
  4. Support data analysis.
  5. Enable proper application development.

Visualizing these relations through an Entity Relationship Diagram (ERD) simplifies their comprehension and management, especially as the database grows in complexity.

image

note

You can drag drop the tables to rearrange them in the diagram. Note that, such reordering will not persist across sessions.

API Snippet

NocoDB provides programmatic access to your data via REST APIs. API snippets in NocoDB offer ready-made code examples in various programming languages, simplifying the process of integrating your data with external applications. These snippets save time and effort by providing a quick and easy reference for developers, enabling them to interact with your NocoDB database programmatically without the need to write code from scratch.

A quick snippet for different scripts & languages is listed in this section.

image

Sample snippets

curl --request GET \
--url 'http://localhost:8080/api/v1/db/data/noco/p18h72lcfwzpsvu/Customer/views/Customer?offset=0&limit=25&where=' \
--header 'xc-auth: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6InVzZXJAbm9jb2RiLmNvbSIsImRpc3BsYXlfbmFtZSI6IlJpY2hhcmQiLCJhdmF0YXIiOm51bGwsInVzZXJfbmFtZSI6bnVsbCwiaWQiOiJ1c3ExbGNpeWp4ejh5bzY4Iiwicm9sZXMiOnsib3JnLWxldmVsLXZpZXdlciI6dHJ1ZX0sInRva2VuX3ZlcnNpb24iOiI0ZjUyOTUxZGQwOTZmMTVjMTY0Y2U5MDM1OTk1YzlmMDE1MTJjMGNjOThkYmRiMDU2ZmFhM2JhZWE1OWY4Y2QzMTcyN2FjOWZkMTJjNDA2ZiIsImlhdCI6MTY5NTk5MTg0NywiZXhwIjoxNjk2MDI3ODQ3fQ.I7P5caoiDSO4j_3D032XxWxxXwyEju6pL5y3Mnu_MNU'

Supported Snippet

Shell

  • cURL
  • wget

Javascript

  • Axios
  • Fetch
  • jQuery
  • XHR

Node

  • Axios
  • Fetch
  • Request
  • Native
  • Unirest

NocoDB SDK

  • Javascript
  • Node

PHP

Python

  • http.client
  • request

Ruby

Java

C

Webhook

Webhooks are essential for real-time communication and automation between NocoDB and external systems. They serve several crucial purposes:

  1. Instant Notifications: Webhooks enable immediate notifications when there are changes in your NocoDB database. This real-time information can be crucial for timely responses to important events, such as new data entries, updates, or deletions.

  2. Automation: They facilitate the automation of processes by triggering actions in external systems based on database events. For example, you can automate tasks like sending emails, updating spreadsheets, or syncing data with other applications in response to changes in NocoDB.

  3. Integration: Webhooks allow you to seamlessly integrate NocoDB with other tools and services, enhancing the overall functionality of your database. This integration can streamline workflows, improve data consistency, and reduce manual data entry.

  4. Bulk Operations: NocoDB's support for webhooks in bulk endpoints makes it efficient to handle multiple records simultaneously. This is especially useful when dealing with large datasets or when you need to perform batch operations in external systems.

In summary, webhooks in NocoDB empower you to create dynamic, responsive, and interconnected workflows by keeping external systems in sync with your database's activities.

image

Note that, Webhooks currently are specific for associated table. Additional procedural details about webhooks can be found here

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/download/index.html b/packages/noco-docs/dist/table-operations/download/index.html new file mode 100644 index 0000000000..263d6d3bc2 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/download/index.html @@ -0,0 +1,16 @@ + + + + + +Download | NocoDB + + + + +
+
Version: Latest

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

Download Data

To export data from NocoDB, follow these steps:

  1. Click on the ... button in the toolbar menu.
  2. Choose the Download option.
  3. Select the desired file format from the dropdown menu.

Export

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/field-operations/index.html b/packages/noco-docs/dist/table-operations/field-operations/index.html new file mode 100644 index 0000000000..43d2d898b1 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/field-operations/index.html @@ -0,0 +1,16 @@ + + + + + +Hide & reorder fields | NocoDB + + + + +
+
Version: Latest

Hide & reorder fields

Utilize the Fields button in the toolbar to manage the visibility of fields within the system. By default, all system-related fields are concealed, but you have the option to enable them by selecting Show system fields.

info

For Gallery View & Kanban View, the Fields menu is available on the toolbar as Edit Cards.

Show system fields

Rearranging Fields

You have the flexibility to rearrange field positions. Access the Fields menu and reorder fields effortlessly by dragging and dropping the associated field using the provided drag icon.

Reorder Fields

Show/Hide Fields

For showing or hiding fields, navigate to the Fields menu and simply click the toggle button associated with the respective field to hide or un-hide it.

tip

Consider creating different grid views with distinct sets of fields displayed in each view for enhanced customization.

Show/Hide Fields

Change cover field (Gallery/Kanban View)

For Gallery View & Kanban View, you can change the cover field by clicking on the Change cover field button in the Edit Cards menu. You can select any field of type Attachment as the cover field.

Change cover field

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/filter/index.html b/packages/noco-docs/dist/table-operations/filter/index.html new file mode 100644 index 0000000000..4a95cf3817 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/filter/index.html @@ -0,0 +1,16 @@ + + + + + +Filtering records | NocoDB + + + + +
+
Version: Latest

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

Adding or Editing Filters

To add or edit a filter, simply click the Filter button in the toolbar and select either Add filter or Add filter group.

Add Filter

Configure the filter by specifying the Field, Operation, and Value (if applicable).

Filter Configuration

You can combine multiple filter conditions using either And or Or mode of operation.

Nested Filters

Deleting Filters

To remove a filter, click on the bin icon located to the right of the respective filter.

Delete Filter

Grouping Filters

You also have the option to group multiple filters together using a Filter Group.

Grouped Filters

Enabling NULL and EMPTY Filters

By default, NULL filters (is null & is not null) and EMPTY filters (is empty & is not empty) are hidden. If you wish to filter out either of these explicitly, you can enable Show NULL and EMPTY Filter in Project settings.

Before enabling Show NULL and EMPTY Filter:

Show isBlank

Once enabled, you can use the is null & is empty filters to filter out cells with NULL or EMPTY values.

Show NULL and EMPTY Filter

Alternatively, you can use Blank filters to filter out cells with NULL or EMPTY values.

Supported Filters

NocoDB currently supports various types of filters for corresponding columns. Please refer to the matrix below for detailed information.

Filter Matrix

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/group-by/index.html b/packages/noco-docs/dist/table-operations/group-by/index.html new file mode 100644 index 0000000000..9989bc0522 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/group-by/index.html @@ -0,0 +1,16 @@ + + + + + +Grouping records | NocoDB + + + + +
+
Version: Latest

Grouping records

Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.

Group By

Adding or Editing Groups

To create or modify a grouping in NocoDB, follow these steps:

  1. Click on Group By in the toolbar.
  2. Choose the field by which you want to group the records.
  3. Optionally, you can sort the groups in ascending or descending order.

Group By

info

You can add subgroups with up to three levels to further refine your categorization.

Group By

Deleting Groups

To remove a grouping in NocoDB, take these actions:

  1. Click on Group By in the toolbar.
  2. Locate the bin icon to the right of the group you wish to delete and click on it.
info

To disable Group By and return to the standard spreadsheet grid view, you must remove all configured groups.

Group By

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/overview/index.html b/packages/noco-docs/dist/table-operations/overview/index.html new file mode 100644 index 0000000000..657db3d0f5 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/overview/index.html @@ -0,0 +1,16 @@ + + + + + +Table operations overview | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/row-height/index.html b/packages/noco-docs/dist/table-operations/row-height/index.html new file mode 100644 index 0000000000..277543e7ec --- /dev/null +++ b/packages/noco-docs/dist/table-operations/row-height/index.html @@ -0,0 +1,16 @@ + + + + + +Row height | NocoDB + + + + +
+
Version: Latest

Row height

NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.

Row height

Short

Short

Medium

Medium

Tall

Tall

Extra

Extra

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/search/index.html b/packages/noco-docs/dist/table-operations/search/index.html new file mode 100644 index 0000000000..846ab09704 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/search/index.html @@ -0,0 +1,16 @@ + + + + + +Search | NocoDB + + + + +
+
Version: Latest

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

  1. Click on the Search button in the toolbar menu (Optional)
  2. Choose the Field to search by (Optional)
  3. Enter the search term in the search bar.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/table-operations/sort/index.html b/packages/noco-docs/dist/table-operations/sort/index.html new file mode 100644 index 0000000000..bc793042f9 --- /dev/null +++ b/packages/noco-docs/dist/table-operations/sort/index.html @@ -0,0 +1,16 @@ + + + + + +Sorting records | NocoDB + + + + +
+
Version: Latest

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

Adding or Editing Sort

  1. Click the Sort button in the toolbar menu.
  2. Choose the Field to sort by.
  3. Configure the sorting Direction : ascending or descending

Sort Field

Sort Direction

  • You can configure multiple fields for subsequent-level sorting.

Nested Sorting

info

Field configured at the top will be used for the first-level sorting, followed by subsequent fields in a top-down order

Deleting Sort

  • Click the Sort button in the toolbar.
    • Click on the bin icon to the right of the sort you wish to delete.

Delete Sorting

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tables/actions-on-table/index.html b/packages/noco-docs/dist/tables/actions-on-table/index.html new file mode 100644 index 0000000000..8c8da8d54b --- /dev/null +++ b/packages/noco-docs/dist/tables/actions-on-table/index.html @@ -0,0 +1,18 @@ + + + + + +Actions on table | NocoDB + + + + +
+
Version: Latest

Actions on table

Rename table

  1. Access the contextual menu for the table by clicking on the ellipsis symbol (...) located in the left sidebar.
  2. Click on the Rename option from the context menu.
  3. Enter the desired new table name into the provided field.
  4. To finalize the renaming process, click on the Rename button.

image

image

Duplicate table

  1. Access the contextual menu for the table by clicking on the ellipsis symbol (...) located in the left sidebar.
  2. Click on the Duplicate option from the context menu.
  3. For additional customization (Optional) +a) Under Include data, you have the flexibility to choose whether to replicate the table with or without its data. +b) Regarding Include views you can select whether to duplicate the table with or without its associated views.
  4. Proceed by clicking the Duplicate Table button found in the confirmation dialog.

A new table will be generated, mirroring the original table's schema and content, in accordance with the configurations specified in step 3.

image

image

info
  • Duplicate table will be created in the same base as the original table
  • Duplicate table will carry suffix Copy in its name.
  • Duplicate table option is not available for External DB projects

Delete table

danger

This action cannot be undone.

  1. Access the contextual menu for the table by clicking on the ellipsis symbol (...) located in the left sidebar.
  2. Click on the Delete option from the context menu.
  3. To finalize the deletion process, click on the Delete button in the confirmation dialog.

image

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tables/create-table-via-import/index.html b/packages/noco-docs/dist/tables/create-table-via-import/index.html new file mode 100644 index 0000000000..9b6765f13e --- /dev/null +++ b/packages/noco-docs/dist/tables/create-table-via-import/index.html @@ -0,0 +1,18 @@ + + + + + +Create table via import | NocoDB + + + + +
+
Version: Latest

Create table via import

Import table from CSV / Excel / JSON

Accessing import modal

There are two ways to access import modal:

1. From the base dashboard

import data

import from dashboard

2. From the base context menu

import from sidebar

Importing file

There are two ways to upload source file:

1. Upload from local directory

  1. Select Upload tab from the Quick import modal.
  2. Click on file upload button or drag and drop file to the modal.
  3. Advance Settings (optional)
  4. Click on Import button. +image

2. Upload from URL

  1. Select URL tab from the Quick import modal.
  2. Paste the URL of the file.
  3. Advance Settings (optional)
  4. Click on Import button. +image
info
  • Multiple files can be imported at once.
  • Supported file formats: CSV, Excel, JSON
  • Maximum file size: 5 MB

Import configurations

  1. Table name - defaults to the name of the file; double click to edit (Optional).
  2. Field configurations (Optional)
    • Field name - name of the field as identified from import file header; click to edit.
    • Field type - inferred from the data in the field; click to edit.
    • Options - For Single select and Multi select field types, options identified are listed here; click to edit.
  3. Remove field - Click on delete icon to exclude a field in source file from being imported (Optional)
  4. Click on Import button to start importing the file.

image

Advanced Settings

  • Number of Rows for Datatype Inference: Default value is set to 500 rows.
  • Automatic Field Type Detection: Enabled by default. If selected, the system will automatically detect field types. Otherwise, all fields will default to "SingleLineText."
  • Utilize First Row as Headers: Enabled by default. If selected, the first row in the spreadsheet will be treated as the header row and its contents will be used as field names.
  • Import Data: Enabled by default. If selected, all data will be imported; otherwise, only the table will be created.
info

By default, the first column will be chosen as Display Value and cannot be deleted.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tables/create-table/index.html b/packages/noco-docs/dist/tables/create-table/index.html new file mode 100644 index 0000000000..ad1fb3f45f --- /dev/null +++ b/packages/noco-docs/dist/tables/create-table/index.html @@ -0,0 +1,17 @@ + + + + + +Create empty table | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tables/import-data-into-existing-table/index.html b/packages/noco-docs/dist/tables/import-data-into-existing-table/index.html new file mode 100644 index 0000000000..bb8bcbcc5a --- /dev/null +++ b/packages/noco-docs/dist/tables/import-data-into-existing-table/index.html @@ -0,0 +1,16 @@ + + + + + +Import data into an existing table | NocoDB + + + + +
+
Version: Latest

Import data into an existing table

Import data from CSV / Excel

Accessing import modal

  1. Click on ... context menu from the toolbar.
  2. Click on Upload button.
  3. Select Upload CSV / Upload Excel option.

image

Importing file data

There are two ways to upload source file:

1. Upload from local directory

  1. Select Upload tab from the Quick import modal.
  2. Click on file upload button or drag and drop file to the modal.
  3. Advance Settings (optional)
  4. Click on Import button.

image

2. Upload from URL

  1. Select URL tab from the Quick import modal.
  2. Paste the URL of the file.
  3. Advance Settings (optional)
  4. Click on Import button.

image

Field mapping

  1. Table Name (Optional)

    • Defaults to the name of the file; double-click to edit.
  2. Mapping Columns (Optional)

    • Existing field names are listed under Source column, while new columns identified from the import file are listed under Destination column.
    • NocoDB automatically maps destination field names based on the source field names.
    • You can reconfigure the mapping by utilizing the dropdown menu that appears when you click on the destination field.
  3. Exclude Columns (Optional)

    • A checkbox is provided to exclude a field from being imported.
  4. Initiate Import

    • Click on the Import button to commence the file import process.

image

Advance settings

  • # of rows to parse to infer datatype - defaults to 500 rows.
  • Utilize First Row as Headers**`: Enabled by default. If selected, the first row in the spreadsheet will be treated as the header row and its contents will be used as field names.
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tables/table-overview/index.html b/packages/noco-docs/dist/tables/table-overview/index.html new file mode 100644 index 0000000000..0ddf57b1c5 --- /dev/null +++ b/packages/noco-docs/dist/tables/table-overview/index.html @@ -0,0 +1,16 @@ + + + + + +Table overview | NocoDB + + + + +
+
Version: Latest

Table overview

A base is housed in tables, where data is logically arranged into rows and columns. A table in NocoDB serves as a robust center for managing your data effectively. You have the flexibility to create multiple tables, each catering to distinct sets of data. Moreover, you can link tables to one another to establish relationships between them.

Much like traditional spreadsheets, NocoDB tables empower you to carry out tasks such as sorting, filtering, and aggregating your data. What sets NocoDB apart from standard spreadsheets is its ability to present table data in various formats. You can view your data as a conventional grid with rows and columns, a gallery of cards, or even as interactive kanban boards, and then make use of a friendly form to input data.

As you delve into this section, you'll gain a deeper understanding of how to leverage NocoDB's tables effectively, equipping you to proficiently organize your own dataset.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/account-settings/index.html b/packages/noco-docs/dist/tags/account-settings/index.html new file mode 100644 index 0000000000..190c8c4ab1 --- /dev/null +++ b/packages/noco-docs/dist/tags/account-settings/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Account Settings" | NocoDB + + + + +
+

3 docs tagged with "Account Settings"

View All Tags

API tokens

This article explains how to create and delete API Tokens.

In Open Source

This article explains Account settings specifics in Open source NocoDB.

Profile page

This article explains how to manage your profile page.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/activity-feed/index.html b/packages/noco-docs/dist/tags/activity-feed/index.html new file mode 100644 index 0000000000..54b1f6e447 --- /dev/null +++ b/packages/noco-docs/dist/tags/activity-feed/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Activity feed" | NocoDB + + + + +
+

One doc tagged with "Activity feed"

View All Tags

Expanded record

NocoDB provides Expanded Form to let you edit your data easily

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/api-tokens/index.html b/packages/noco-docs/dist/tags/api-tokens/index.html new file mode 100644 index 0000000000..93491ccac8 --- /dev/null +++ b/packages/noco-docs/dist/tags/api-tokens/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Api Tokens" | NocoDB + + + + +
+

One doc tagged with "Api Tokens"

View All Tags

API tokens

This article explains how to create and delete API Tokens.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/attachment/index.html b/packages/noco-docs/dist/tags/attachment/index.html new file mode 100644 index 0000000000..1fdfa2028c --- /dev/null +++ b/packages/noco-docs/dist/tags/attachment/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Attachment" | NocoDB + + + + +
+

One doc tagged with "Attachment"

View All Tags

Attachment

Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/barcode/index.html b/packages/noco-docs/dist/tags/barcode/index.html new file mode 100644 index 0000000000..8d634c4f0c --- /dev/null +++ b/packages/noco-docs/dist/tags/barcode/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Barcode" | NocoDB + + + + +
+

One doc tagged with "Barcode"

View All Tags

Barcode

Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/base/index.html b/packages/noco-docs/dist/tags/base/index.html new file mode 100644 index 0000000000..c47b5e13f7 --- /dev/null +++ b/packages/noco-docs/dist/tags/base/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Base" | NocoDB + + + + +
+

One doc tagged with "Base"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/bases/index.html b/packages/noco-docs/dist/tags/bases/index.html new file mode 100644 index 0000000000..4d9f1d3ed9 --- /dev/null +++ b/packages/noco-docs/dist/tags/bases/index.html @@ -0,0 +1,16 @@ + + + + + +8 docs tagged with "Bases" | NocoDB + + + + +
+

8 docs tagged with "Bases"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

Base overview

This article explains the concept of bases in NocoDB.

Import Airtable to NocoDB

A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes

Share base

Procedures to share a base & generating embedded iframe

Share base

Procedures to share a base & generating embedded iframe

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/checkbox/index.html b/packages/noco-docs/dist/tags/checkbox/index.html new file mode 100644 index 0000000000..3de057d631 --- /dev/null +++ b/packages/noco-docs/dist/tags/checkbox/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Checkbox" | NocoDB + + + + +
+

One doc tagged with "Checkbox"

View All Tags

Checkbox

The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/collaboration/index.html b/packages/noco-docs/dist/tags/collaboration/index.html new file mode 100644 index 0000000000..3f9996d19f --- /dev/null +++ b/packages/noco-docs/dist/tags/collaboration/index.html @@ -0,0 +1,16 @@ + + + + + +8 docs tagged with "Collaboration" | NocoDB + + + + +
+

8 docs tagged with "Collaboration"

View All Tags

In Open Source

This article explains specifics of User management in OSS.

Share base

Procedures to share a base & generating embedded iframe

Share base

Procedures to share a base & generating embedded iframe

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/comments/index.html b/packages/noco-docs/dist/tags/comments/index.html new file mode 100644 index 0000000000..90b8ec32d6 --- /dev/null +++ b/packages/noco-docs/dist/tags/comments/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Comments" | NocoDB + + + + +
+

One doc tagged with "Comments"

View All Tags

Expanded record

NocoDB provides Expanded Form to let you edit your data easily

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/cover-image/index.html b/packages/noco-docs/dist/tags/cover-image/index.html new file mode 100644 index 0000000000..8f0733fb16 --- /dev/null +++ b/packages/noco-docs/dist/tags/cover-image/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Cover image" | NocoDB + + + + +
+

One doc tagged with "Cover image"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/create/index.html b/packages/noco-docs/dist/tags/create/index.html new file mode 100644 index 0000000000..0a7c70c28f --- /dev/null +++ b/packages/noco-docs/dist/tags/create/index.html @@ -0,0 +1,16 @@ + + + + + +6 docs tagged with "Create" | NocoDB + + + + +
+

6 docs tagged with "Create"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/csv/index.html b/packages/noco-docs/dist/tags/csv/index.html new file mode 100644 index 0000000000..a8906c39df --- /dev/null +++ b/packages/noco-docs/dist/tags/csv/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "CSV" | NocoDB + + + + +
+

2 docs tagged with "CSV"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/currency/index.html b/packages/noco-docs/dist/tags/currency/index.html new file mode 100644 index 0000000000..f4b4a925f9 --- /dev/null +++ b/packages/noco-docs/dist/tags/currency/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Currency" | NocoDB + + + + +
+

One doc tagged with "Currency"

View All Tags

Currency

Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/custom-types/index.html b/packages/noco-docs/dist/tags/custom-types/index.html new file mode 100644 index 0000000000..6ba853eebf --- /dev/null +++ b/packages/noco-docs/dist/tags/custom-types/index.html @@ -0,0 +1,16 @@ + + + + + +8 docs tagged with "Custom types" | NocoDB + + + + +
+

8 docs tagged with "Custom types"

View All Tags

Attachment

Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.

Barcode

Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.

Checkbox

The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.

JSON

JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.

QR code

QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/dashboard/index.html b/packages/noco-docs/dist/tags/dashboard/index.html new file mode 100644 index 0000000000..3d7e4a5524 --- /dev/null +++ b/packages/noco-docs/dist/tags/dashboard/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Dashboard" | NocoDB + + + + +
+

One doc tagged with "Dashboard"

View All Tags

Base overview

This article explains the concept of bases in NocoDB.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/data-sources/index.html b/packages/noco-docs/dist/tags/data-sources/index.html new file mode 100644 index 0000000000..7b2b69f9af --- /dev/null +++ b/packages/noco-docs/dist/tags/data-sources/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Data Sources" | NocoDB + + + + +
+

One doc tagged with "Data Sources"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/date-time/index.html b/packages/noco-docs/dist/tags/date-time/index.html new file mode 100644 index 0000000000..c2c48e8f90 --- /dev/null +++ b/packages/noco-docs/dist/tags/date-time/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Date & Time" | NocoDB + + + + +
+

5 docs tagged with "Date & Time"

View All Tags

Date

Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.

Date Time

Date Time field type is used to store both date and time values in a single field.

Duration

Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.

Time

Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/decimal/index.html b/packages/noco-docs/dist/tags/decimal/index.html new file mode 100644 index 0000000000..000f37a909 --- /dev/null +++ b/packages/noco-docs/dist/tags/decimal/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Decimal" | NocoDB + + + + +
+

One doc tagged with "Decimal"

View All Tags

Decimal

Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/delete/index.html b/packages/noco-docs/dist/tags/delete/index.html new file mode 100644 index 0000000000..fe29b7f5d6 --- /dev/null +++ b/packages/noco-docs/dist/tags/delete/index.html @@ -0,0 +1,16 @@ + + + + + +7 docs tagged with "Delete" | NocoDB + + + + +
+

7 docs tagged with "Delete"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/disable/index.html b/packages/noco-docs/dist/tags/disable/index.html new file mode 100644 index 0000000000..74da2c673c --- /dev/null +++ b/packages/noco-docs/dist/tags/disable/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Disable" | NocoDB + + + + +
+

One doc tagged with "Disable"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/display-value/index.html b/packages/noco-docs/dist/tags/display-value/index.html new file mode 100644 index 0000000000..b6a4d852ff --- /dev/null +++ b/packages/noco-docs/dist/tags/display-value/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Display value" | NocoDB + + + + +
+

2 docs tagged with "Display value"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/download/index.html b/packages/noco-docs/dist/tags/download/index.html new file mode 100644 index 0000000000..f512a30717 --- /dev/null +++ b/packages/noco-docs/dist/tags/download/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Download" | NocoDB + + + + +
+

One doc tagged with "Download"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/duplicate/index.html b/packages/noco-docs/dist/tags/duplicate/index.html new file mode 100644 index 0000000000..1809897f96 --- /dev/null +++ b/packages/noco-docs/dist/tags/duplicate/index.html @@ -0,0 +1,16 @@ + + + + + +6 docs tagged with "Duplicate" | NocoDB + + + + +
+

6 docs tagged with "Duplicate"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/edit/index.html b/packages/noco-docs/dist/tags/edit/index.html new file mode 100644 index 0000000000..36a45d892e --- /dev/null +++ b/packages/noco-docs/dist/tags/edit/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Edit" | NocoDB + + + + +
+

One doc tagged with "Edit"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/email/index.html b/packages/noco-docs/dist/tags/email/index.html new file mode 100644 index 0000000000..da55ff67be --- /dev/null +++ b/packages/noco-docs/dist/tags/email/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Email" | NocoDB + + + + +
+

One doc tagged with "Email"

View All Tags

Email

Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/enable/index.html b/packages/noco-docs/dist/tags/enable/index.html new file mode 100644 index 0000000000..8987441ee7 --- /dev/null +++ b/packages/noco-docs/dist/tags/enable/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Enable" | NocoDB + + + + +
+

One doc tagged with "Enable"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/engineering/index.html b/packages/noco-docs/dist/tags/engineering/index.html new file mode 100644 index 0000000000..46035d1c73 --- /dev/null +++ b/packages/noco-docs/dist/tags/engineering/index.html @@ -0,0 +1,16 @@ + + + + + +8 docs tagged with "Engineering" | NocoDB + + + + +
+

8 docs tagged with "Engineering"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/excel/index.html b/packages/noco-docs/dist/tags/excel/index.html new file mode 100644 index 0000000000..98e1961a40 --- /dev/null +++ b/packages/noco-docs/dist/tags/excel/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Excel" | NocoDB + + + + +
+

One doc tagged with "Excel"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/expand/index.html b/packages/noco-docs/dist/tags/expand/index.html new file mode 100644 index 0000000000..d04a6fb46a --- /dev/null +++ b/packages/noco-docs/dist/tags/expand/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Expand" | NocoDB + + + + +
+

One doc tagged with "Expand"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/expanded-record/index.html b/packages/noco-docs/dist/tags/expanded-record/index.html new file mode 100644 index 0000000000..b049da2797 --- /dev/null +++ b/packages/noco-docs/dist/tags/expanded-record/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Expanded record" | NocoDB + + + + +
+

One doc tagged with "Expanded record"

View All Tags

Expanded record

NocoDB provides Expanded Form to let you edit your data easily

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/field-types/index.html b/packages/noco-docs/dist/tags/field-types/index.html new file mode 100644 index 0000000000..251e860023 --- /dev/null +++ b/packages/noco-docs/dist/tags/field-types/index.html @@ -0,0 +1,16 @@ + + + + + +32 docs tagged with "Field types" | NocoDB + + + + +
+

32 docs tagged with "Field types"

View All Tags

Attachment

Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.

Barcode

Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.

Checkbox

The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.

Currency

Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.

Date

Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.

Date Time

Date Time field type is used to store both date and time values in a single field.

Decimal

Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.

Duration

Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.

Email

Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with

JSON

JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.

Links

Links field type is used to establish relationship between tables & create links to other records.

Long text

Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.

LookUp

Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.

Multi Select

Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.

Number

Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.

Percent

Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.

Phone Number

Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.

QR code

QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.

Rollup

Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.

Single line text

Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.

Single Select

Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.

Time

Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.

URL

URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/fields/index.html b/packages/noco-docs/dist/tags/fields/index.html new file mode 100644 index 0000000000..f9c2cd7998 --- /dev/null +++ b/packages/noco-docs/dist/tags/fields/index.html @@ -0,0 +1,16 @@ + + + + + +37 docs tagged with "Fields" | NocoDB + + + + +
+

37 docs tagged with "Fields"

View All Tags

Attachment

Attachment fields allow you to upload files to your records. You can upload any file type, and the file will be linked to the record. You can also upload multiple files to a single Attachment field record.

Barcode

Barcode is a custom field type that allows you to generate a barcode from a string value. This is useful for generating barcodes for things like URLs, phone numbers, or other data that can be represented as a string.

Checkbox

The checkbox field type is used to store boolean values. It can be used to store a simple yes/no value, or true/false, or any other boolean value.

Currency

Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.

Date

Date field type is used to store date values. NocoDB supports a wide range of date formats, as detailed in the table below.

Date Time

Date Time field type is used to store both date and time values in a single field.

Decimal

Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.

Duration

Duration field type is used to store duration of time in seconds or minutes. Different formats are supported by NocoDB, as detailed in the table below.

Email

Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with

JSON

JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.

Links

Links field type is used to establish relationship between tables & create links to other records.

Long text

Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.

LookUp

Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.

Multi Select

Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.

Number

Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.

Percent

Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.

Phone Number

Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.

QR code

QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.

Rollup

Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.

Single line text

Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.

Single Select

Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.

Time

Time field type is used to store time values in a single column. Time formats supported by NocoDB are listed in the table below.

URL

URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/filter/index.html b/packages/noco-docs/dist/tags/filter/index.html new file mode 100644 index 0000000000..46d459a5e0 --- /dev/null +++ b/packages/noco-docs/dist/tags/filter/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Filter" | NocoDB + + + + +
+

One doc tagged with "Filter"

View All Tags

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/form-view/index.html b/packages/noco-docs/dist/tags/form-view/index.html new file mode 100644 index 0000000000..a592782ed0 --- /dev/null +++ b/packages/noco-docs/dist/tags/form-view/index.html @@ -0,0 +1,16 @@ + + + + + +4 docs tagged with "Form View" | NocoDB + + + + +
+

4 docs tagged with "Form View"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/form/index.html b/packages/noco-docs/dist/tags/form/index.html new file mode 100644 index 0000000000..cd196b1dcd --- /dev/null +++ b/packages/noco-docs/dist/tags/form/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Form" | NocoDB + + + + +
+

One doc tagged with "Form"

View All Tags

Form

Learn how to create, import, and manage forms in NocoDB.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/formula/index.html b/packages/noco-docs/dist/tags/formula/index.html new file mode 100644 index 0000000000..7e781450d1 --- /dev/null +++ b/packages/noco-docs/dist/tags/formula/index.html @@ -0,0 +1,16 @@ + + + + + +6 docs tagged with "Formula" | NocoDB + + + + +
+

6 docs tagged with "Formula"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/gallery-view/index.html b/packages/noco-docs/dist/tags/gallery-view/index.html new file mode 100644 index 0000000000..32e9a09590 --- /dev/null +++ b/packages/noco-docs/dist/tags/gallery-view/index.html @@ -0,0 +1,16 @@ + + + + + +10 docs tagged with "Gallery View" | NocoDB + + + + +
+

10 docs tagged with "Gallery View"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

Gallery

Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/geometry/index.html b/packages/noco-docs/dist/tags/geometry/index.html new file mode 100644 index 0000000000..bcca9fc19f --- /dev/null +++ b/packages/noco-docs/dist/tags/geometry/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Geometry" | NocoDB + + + + +
+

One doc tagged with "Geometry"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/getting-started/index.html b/packages/noco-docs/dist/tags/getting-started/index.html new file mode 100644 index 0000000000..e0f736b81e --- /dev/null +++ b/packages/noco-docs/dist/tags/getting-started/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Getting Started" | NocoDB + + + + +
+

One doc tagged with "Getting Started"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/grid-view/index.html b/packages/noco-docs/dist/tags/grid-view/index.html new file mode 100644 index 0000000000..4d73559a09 --- /dev/null +++ b/packages/noco-docs/dist/tags/grid-view/index.html @@ -0,0 +1,16 @@ + + + + + +12 docs tagged with "Grid View" | NocoDB + + + + +
+

12 docs tagged with "Grid View"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

Grid

Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.

Grouping records

Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.

Row height

NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/group-by/index.html b/packages/noco-docs/dist/tags/group-by/index.html new file mode 100644 index 0000000000..dbe02b0115 --- /dev/null +++ b/packages/noco-docs/dist/tags/group-by/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Group by" | NocoDB + + + + +
+

One doc tagged with "Group by"

View All Tags

Grouping records

Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/hide/index.html b/packages/noco-docs/dist/tags/hide/index.html new file mode 100644 index 0000000000..0b985b7178 --- /dev/null +++ b/packages/noco-docs/dist/tags/hide/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Hide" | NocoDB + + + + +
+

One doc tagged with "Hide"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/import/index.html b/packages/noco-docs/dist/tags/import/index.html new file mode 100644 index 0000000000..5ab824ebc7 --- /dev/null +++ b/packages/noco-docs/dist/tags/import/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Import" | NocoDB + + + + +
+

3 docs tagged with "Import"

View All Tags

Import Airtable to NocoDB

A complete import of your Airtable to any MySQL, Postgres, SQLite and SQL server databases within minutes

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/index.html b/packages/noco-docs/dist/tags/index.html new file mode 100644 index 0000000000..7d1ba4b509 --- /dev/null +++ b/packages/noco-docs/dist/tags/index.html @@ -0,0 +1,16 @@ + + + + + +Tags | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/invite/index.html b/packages/noco-docs/dist/tags/invite/index.html new file mode 100644 index 0000000000..979c18d25a --- /dev/null +++ b/packages/noco-docs/dist/tags/invite/index.html @@ -0,0 +1,16 @@ + + + + + +4 docs tagged with "Invite" | NocoDB + + + + +
+

4 docs tagged with "Invite"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/json/index.html b/packages/noco-docs/dist/tags/json/index.html new file mode 100644 index 0000000000..b1ecb28e86 --- /dev/null +++ b/packages/noco-docs/dist/tags/json/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "JSON" | NocoDB + + + + +
+

3 docs tagged with "JSON"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

JSON

JSON is a custom field type that allows you to store JSON data in a field. Useful for storing data that can be represented as a JSON object, like API Response, or a set of key-value pairs.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/kanban-view/index.html b/packages/noco-docs/dist/tags/kanban-view/index.html new file mode 100644 index 0000000000..66dfe2b2fa --- /dev/null +++ b/packages/noco-docs/dist/tags/kanban-view/index.html @@ -0,0 +1,16 @@ + + + + + +10 docs tagged with "Kanban View" | NocoDB + + + + +
+

10 docs tagged with "Kanban View"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

Kanban

Learn how to use Kanban view in NocoDB.

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/links-based-types/index.html b/packages/noco-docs/dist/tags/links-based-types/index.html new file mode 100644 index 0000000000..22d7acb415 --- /dev/null +++ b/packages/noco-docs/dist/tags/links-based-types/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Links based types" | NocoDB + + + + +
+

3 docs tagged with "Links based types"

View All Tags

Links

Links field type is used to establish relationship between tables & create links to other records.

LookUp

Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.

Rollup

Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/links/index.html b/packages/noco-docs/dist/tags/links/index.html new file mode 100644 index 0000000000..145441b1a0 --- /dev/null +++ b/packages/noco-docs/dist/tags/links/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Links" | NocoDB + + + + +
+

One doc tagged with "Links"

View All Tags

Links

Links field type is used to establish relationship between tables & create links to other records.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/long-text/index.html b/packages/noco-docs/dist/tags/long-text/index.html new file mode 100644 index 0000000000..1131bed7c5 --- /dev/null +++ b/packages/noco-docs/dist/tags/long-text/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Long text" | NocoDB + + + + +
+

One doc tagged with "Long text"

View All Tags

Long text

Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/lookup/index.html b/packages/noco-docs/dist/tags/lookup/index.html new file mode 100644 index 0000000000..307926ca5d --- /dev/null +++ b/packages/noco-docs/dist/tags/lookup/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Lookup" | NocoDB + + + + +
+

One doc tagged with "Lookup"

View All Tags

LookUp

Lookup fields help bring additional field information from related table into the current table. This is useful when you want to display additional information about a record in a table. For example, if you have a table of Orders and a table of Customers, you can use a Lookup field to display the customer's name and address in the Orders table.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/member/index.html b/packages/noco-docs/dist/tags/member/index.html new file mode 100644 index 0000000000..ab57d29357 --- /dev/null +++ b/packages/noco-docs/dist/tags/member/index.html @@ -0,0 +1,16 @@ + + + + + +4 docs tagged with "Member" | NocoDB + + + + +
+

4 docs tagged with "Member"

View All Tags

Profile page

This article explains how to manage your profile page.

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/members/index.html b/packages/noco-docs/dist/tags/members/index.html new file mode 100644 index 0000000000..4f914977e9 --- /dev/null +++ b/packages/noco-docs/dist/tags/members/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Members" | NocoDB + + + + +
+

2 docs tagged with "Members"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/multi-fields-editor/index.html b/packages/noco-docs/dist/tags/multi-fields-editor/index.html new file mode 100644 index 0000000000..d561fc2979 --- /dev/null +++ b/packages/noco-docs/dist/tags/multi-fields-editor/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Multi-fields editor" | NocoDB + + + + +
+

One doc tagged with "Multi-fields editor"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/multi-select/index.html b/packages/noco-docs/dist/tags/multi-select/index.html new file mode 100644 index 0000000000..7f1df7a9dc --- /dev/null +++ b/packages/noco-docs/dist/tags/multi-select/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Multi select" | NocoDB + + + + +
+

One doc tagged with "Multi select"

View All Tags

Multi Select

Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/number/index.html b/packages/noco-docs/dist/tags/number/index.html new file mode 100644 index 0000000000..cc6894811b --- /dev/null +++ b/packages/noco-docs/dist/tags/number/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Number" | NocoDB + + + + +
+

One doc tagged with "Number"

View All Tags

Number

Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/numerical-types/index.html b/packages/noco-docs/dist/tags/numerical-types/index.html new file mode 100644 index 0000000000..39101c0458 --- /dev/null +++ b/packages/noco-docs/dist/tags/numerical-types/index.html @@ -0,0 +1,16 @@ + + + + + +4 docs tagged with "Numerical types" | NocoDB + + + + +
+

4 docs tagged with "Numerical types"

View All Tags

Currency

Currency field type is used to store currency values. It is a numerical field with additional provision to set the currency symbol in display.

Decimal

Decimal field type is used to store decimal values. Use cases include storing salary, price, etc. NocoDB supports precision of upto 8 digits.

Number

Number field type is used to store numerical values. Use cases include storing age, salary, price, quantity, etc.

Percent

Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/open-source/index.html b/packages/noco-docs/dist/tags/open-source/index.html new file mode 100644 index 0000000000..eb03bae4b9 --- /dev/null +++ b/packages/noco-docs/dist/tags/open-source/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Open Source" | NocoDB + + + + +
+

5 docs tagged with "Open Source"

View All Tags

In Open Source

This article explains Account settings specifics in Open source NocoDB.

In Open Source

This article explains specifics of User management in OSS.

Installation

Simple installation - takes about three minutes!

Upgrading

Upgrading NocoDB : Docker, Node and Homebrew!

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/overview/index.html b/packages/noco-docs/dist/tags/overview/index.html new file mode 100644 index 0000000000..0da8f6d78b --- /dev/null +++ b/packages/noco-docs/dist/tags/overview/index.html @@ -0,0 +1,16 @@ + + + + + +12 docs tagged with "Overview" | NocoDB + + + + +
+

12 docs tagged with "Overview"

View All Tags

Base overview

This article explains the concept of bases in NocoDB.

Table overview

Learn how to create, import, and manage tables in NocoDB.

Webhook overview

You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/percent/index.html b/packages/noco-docs/dist/tags/percent/index.html new file mode 100644 index 0000000000..a41dd644a9 --- /dev/null +++ b/packages/noco-docs/dist/tags/percent/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Percent" | NocoDB + + + + +
+

One doc tagged with "Percent"

View All Tags

Percent

Percent field type is used to store percentage values. Use cases include storing discount, tax, etc.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/permissions/index.html b/packages/noco-docs/dist/tags/permissions/index.html new file mode 100644 index 0000000000..06c0e2857e --- /dev/null +++ b/packages/noco-docs/dist/tags/permissions/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Permissions" | NocoDB + + + + +
+

3 docs tagged with "Permissions"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/phone-number/index.html b/packages/noco-docs/dist/tags/phone-number/index.html new file mode 100644 index 0000000000..2e230e197e --- /dev/null +++ b/packages/noco-docs/dist/tags/phone-number/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Phone number" | NocoDB + + + + +
+

One doc tagged with "Phone number"

View All Tags

Phone Number

Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/primary-key/index.html b/packages/noco-docs/dist/tags/primary-key/index.html new file mode 100644 index 0000000000..85c4e8063e --- /dev/null +++ b/packages/noco-docs/dist/tags/primary-key/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Primary Key" | NocoDB + + + + +
+

One doc tagged with "Primary Key"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/productivity-hacks/index.html b/packages/noco-docs/dist/tags/productivity-hacks/index.html new file mode 100644 index 0000000000..c399276a7f --- /dev/null +++ b/packages/noco-docs/dist/tags/productivity-hacks/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Productivity hacks" | NocoDB + + + + +
+

2 docs tagged with "Productivity hacks"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/profile/index.html b/packages/noco-docs/dist/tags/profile/index.html new file mode 100644 index 0000000000..c8461a395f --- /dev/null +++ b/packages/noco-docs/dist/tags/profile/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Profile" | NocoDB + + + + +
+

One doc tagged with "Profile"

View All Tags

Profile page

This article explains how to manage your profile page.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/qr-code/index.html b/packages/noco-docs/dist/tags/qr-code/index.html new file mode 100644 index 0000000000..9cc6fa77ff --- /dev/null +++ b/packages/noco-docs/dist/tags/qr-code/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "QR code" | NocoDB + + + + +
+

One doc tagged with "QR code"

View All Tags

QR code

QR code is a custom field type that allows you to generate a QR code from a string value. This is useful for generating QR codes for things like URLs, phone numbers, or other data that can be represented as a string.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/rating/index.html b/packages/noco-docs/dist/tags/rating/index.html new file mode 100644 index 0000000000..7a86b821b3 --- /dev/null +++ b/packages/noco-docs/dist/tags/rating/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Rating" | NocoDB + + + + + + + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/records/index.html b/packages/noco-docs/dist/tags/records/index.html new file mode 100644 index 0000000000..3f416562fe --- /dev/null +++ b/packages/noco-docs/dist/tags/records/index.html @@ -0,0 +1,16 @@ + + + + + +4 docs tagged with "Records" | NocoDB + + + + +
+

4 docs tagged with "Records"

View All Tags

Expanded record

NocoDB provides Expanded Form to let you edit your data easily

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/relations/index.html b/packages/noco-docs/dist/tags/relations/index.html new file mode 100644 index 0000000000..5d3c96f72d --- /dev/null +++ b/packages/noco-docs/dist/tags/relations/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Relations" | NocoDB + + + + +
+

One doc tagged with "Relations"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/rename/index.html b/packages/noco-docs/dist/tags/rename/index.html new file mode 100644 index 0000000000..463a6f5db0 --- /dev/null +++ b/packages/noco-docs/dist/tags/rename/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Rename" | NocoDB + + + + +
+

5 docs tagged with "Rename"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/reorder/index.html b/packages/noco-docs/dist/tags/reorder/index.html new file mode 100644 index 0000000000..d6d6f11b10 --- /dev/null +++ b/packages/noco-docs/dist/tags/reorder/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Reorder" | NocoDB + + + + +
+

One doc tagged with "Reorder"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/role/index.html b/packages/noco-docs/dist/tags/role/index.html new file mode 100644 index 0000000000..b952c6cde0 --- /dev/null +++ b/packages/noco-docs/dist/tags/role/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Role" | NocoDB + + + + +
+

2 docs tagged with "Role"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/roles/index.html b/packages/noco-docs/dist/tags/roles/index.html new file mode 100644 index 0000000000..868cd5928e --- /dev/null +++ b/packages/noco-docs/dist/tags/roles/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Roles" | NocoDB + + + + +
+

3 docs tagged with "Roles"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/rollup/index.html b/packages/noco-docs/dist/tags/rollup/index.html new file mode 100644 index 0000000000..56f67db405 --- /dev/null +++ b/packages/noco-docs/dist/tags/rollup/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Rollup" | NocoDB + + + + +
+

One doc tagged with "Rollup"

View All Tags

Rollup

Rollup fields are used to aggregate data from fields in the related table. Often used to calculate totals, averages, and other aggregate data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/row-height/index.html b/packages/noco-docs/dist/tags/row-height/index.html new file mode 100644 index 0000000000..9f7791ed35 --- /dev/null +++ b/packages/noco-docs/dist/tags/row-height/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Row height" | NocoDB + + + + +
+

One doc tagged with "Row height"

View All Tags

Row height

NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/search/index.html b/packages/noco-docs/dist/tags/search/index.html new file mode 100644 index 0000000000..228f80a2ac --- /dev/null +++ b/packages/noco-docs/dist/tags/search/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Search" | NocoDB + + + + +
+

One doc tagged with "Search"

View All Tags

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/select-based-types/index.html b/packages/noco-docs/dist/tags/select-based-types/index.html new file mode 100644 index 0000000000..e6c4fa30fc --- /dev/null +++ b/packages/noco-docs/dist/tags/select-based-types/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Select based types" | NocoDB + + + + +
+

2 docs tagged with "Select based types"

View All Tags

Multi Select

Multi Select fields allow you to select multiple options from a list of options. The options can be defined in the field configuration.

Single Select

Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/share/index.html b/packages/noco-docs/dist/tags/share/index.html new file mode 100644 index 0000000000..d122d90012 --- /dev/null +++ b/packages/noco-docs/dist/tags/share/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Share" | NocoDB + + + + +
+

5 docs tagged with "Share"

View All Tags

Share base

Procedures to share a base & generating embedded iframe

Share base

Procedures to share a base & generating embedded iframe

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/shortcuts/index.html b/packages/noco-docs/dist/tags/shortcuts/index.html new file mode 100644 index 0000000000..dded3e2819 --- /dev/null +++ b/packages/noco-docs/dist/tags/shortcuts/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Shortcuts" | NocoDB + + + + +
+

2 docs tagged with "Shortcuts"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/show-hide/index.html b/packages/noco-docs/dist/tags/show-hide/index.html new file mode 100644 index 0000000000..6ff96dbc68 --- /dev/null +++ b/packages/noco-docs/dist/tags/show-hide/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Show/Hide" | NocoDB + + + + +
+

One doc tagged with "Show/Hide"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/single-line-text/index.html b/packages/noco-docs/dist/tags/single-line-text/index.html new file mode 100644 index 0000000000..d20e7bad80 --- /dev/null +++ b/packages/noco-docs/dist/tags/single-line-text/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Single line text" | NocoDB + + + + +
+

One doc tagged with "Single line text"

View All Tags

Single line text

Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/single-select/index.html b/packages/noco-docs/dist/tags/single-select/index.html new file mode 100644 index 0000000000..9fb9d8566c --- /dev/null +++ b/packages/noco-docs/dist/tags/single-select/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Single select" | NocoDB + + + + +
+

One doc tagged with "Single select"

View All Tags

Single Select

Single select fields allow you to select a single option from a list of options. The options can be defined in the field configuration.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/sort/index.html b/packages/noco-docs/dist/tags/sort/index.html new file mode 100644 index 0000000000..6bde698ffe --- /dev/null +++ b/packages/noco-docs/dist/tags/sort/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "Sort" | NocoDB + + + + +
+

2 docs tagged with "Sort"

View All Tags

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/specific-db-type/index.html b/packages/noco-docs/dist/tags/specific-db-type/index.html new file mode 100644 index 0000000000..2cb8eb0345 --- /dev/null +++ b/packages/noco-docs/dist/tags/specific-db-type/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Specific DB type" | NocoDB + + + + +
+

One doc tagged with "Specific DB type"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/star/index.html b/packages/noco-docs/dist/tags/star/index.html new file mode 100644 index 0000000000..c3419766a9 --- /dev/null +++ b/packages/noco-docs/dist/tags/star/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Star" | NocoDB + + + + +
+

One doc tagged with "Star"

View All Tags

Actions on base

Actions you can perform on a base in NocoDB: Rename, duplicate, delete, star a base.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/table-details/index.html b/packages/noco-docs/dist/tags/table-details/index.html new file mode 100644 index 0000000000..534051ecc7 --- /dev/null +++ b/packages/noco-docs/dist/tags/table-details/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Table details" | NocoDB + + + + +
+

One doc tagged with "Table details"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/table-operations/index.html b/packages/noco-docs/dist/tags/table-operations/index.html new file mode 100644 index 0000000000..8512e3f49c --- /dev/null +++ b/packages/noco-docs/dist/tags/table-operations/index.html @@ -0,0 +1,16 @@ + + + + + +8 docs tagged with "Table operations" | NocoDB + + + + +
+

8 docs tagged with "Table operations"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

Filtering records

Filters provide a powerful way to narrow down and organize your data according to your specific requirements. NocoDB supports nested filters, allowing you to select multiple columns and conditions for filtering. You can choose between and or or mode of operation to combine filters, and filtering also supports Lookup, Formula, and Nested Data.

Grouping records

Grouping records in NocoDB allows for efficient categorization of data into specific Groups and Subgroups. NocoDB supports three levels of record segregation, providing a powerful organizational tool.

Row height

NocoDB offers users the flexibility to adjust the display height of records within the spreadsheet grid to four distinct levels: Short (the default setting), Medium, Tall, and Extra. This feature proves valuable when working with extensive text columns and multi-select fields, as it enables users to present a greater amount of content within each cell.

Search

NocoDB offers a quick search feature that allows you to search for records by field from the toolbar menu. This feature is useful when working with large datasets and can be used in conjunction with the Filter feature to further refine your search results.

Sorting records

Sorting enables you to arrange your data alphabetically (A → Z) or (Z → A) for text based types and in ascending or descending order for numerical types. NocoDB supports nested sorting, allowing you to select fields and the order in which to apply nested sorting.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/table/index.html b/packages/noco-docs/dist/tags/table/index.html new file mode 100644 index 0000000000..58b4820d01 --- /dev/null +++ b/packages/noco-docs/dist/tags/table/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Table" | NocoDB + + + + +
+

One doc tagged with "Table"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/tables/index.html b/packages/noco-docs/dist/tags/tables/index.html new file mode 100644 index 0000000000..d9d56336f9 --- /dev/null +++ b/packages/noco-docs/dist/tags/tables/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Tables" | NocoDB + + + + +
+

5 docs tagged with "Tables"

View All Tags

Table overview

Learn how to create, import, and manage tables in NocoDB.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/text-based-types/index.html b/packages/noco-docs/dist/tags/text-based-types/index.html new file mode 100644 index 0000000000..9207162d77 --- /dev/null +++ b/packages/noco-docs/dist/tags/text-based-types/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Text based types" | NocoDB + + + + +
+

5 docs tagged with "Text based types"

View All Tags

Email

Email field is text based field custom-built for storing E-mail IDs. It is a special type of Single line text field with

Long text

Long Text field is text based field that allows text in multiple lines. It is useful for storing lengthy text like description, notes, etc.

Phone Number

Phone number field is text based field that allows you to store phone numbers. It also allows you to validate the phone number.

Single line text

Single line text field is a simple text based field. It can hold any text value. It is generally used for storing short text values like name, email, phone number, etc. For storing text values with multiple lines, use Long text field.

URL

URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/url/index.html b/packages/noco-docs/dist/tags/url/index.html new file mode 100644 index 0000000000..aeb6cc6a89 --- /dev/null +++ b/packages/noco-docs/dist/tags/url/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "URL" | NocoDB + + + + +
+

One doc tagged with "URL"

View All Tags

URL

URL field is text based field custom-built for storing URLs. It is a special type of Single line text field with

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/views/index.html b/packages/noco-docs/dist/tags/views/index.html new file mode 100644 index 0000000000..f57763c14a --- /dev/null +++ b/packages/noco-docs/dist/tags/views/index.html @@ -0,0 +1,16 @@ + + + + + +9 docs tagged with "Views" | NocoDB + + + + +
+

9 docs tagged with "Views"

View All Tags

Form

Learn how to create, import, and manage forms in NocoDB.

Gallery

Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.

Grid

Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.

Kanban

Learn how to use Kanban view in NocoDB.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/webhook/index.html b/packages/noco-docs/dist/tags/webhook/index.html new file mode 100644 index 0000000000..788f74f9a4 --- /dev/null +++ b/packages/noco-docs/dist/tags/webhook/index.html @@ -0,0 +1,16 @@ + + + + + +3 docs tagged with "Webhook" | NocoDB + + + + +
+

3 docs tagged with "Webhook"

View All Tags

Webhook overview

You can employ webhooks to notify external systems whenever there are additions, updates, or removals of rows within NocoDB. This feature allows you to receive instantaneous notifications for any changes made to your database. NocoDB also offers webhooks for bulk endpoints for creating, updating, or deleting multiple records simultaneously.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/workspace/index.html b/packages/noco-docs/dist/tags/workspace/index.html new file mode 100644 index 0000000000..762242e289 --- /dev/null +++ b/packages/noco-docs/dist/tags/workspace/index.html @@ -0,0 +1,16 @@ + + + + + +One doc tagged with "Workspace" | NocoDB + + + + +
+

One doc tagged with "Workspace"

View All Tags
+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/workspaces/index.html b/packages/noco-docs/dist/tags/workspaces/index.html new file mode 100644 index 0000000000..d802c71392 --- /dev/null +++ b/packages/noco-docs/dist/tags/workspaces/index.html @@ -0,0 +1,16 @@ + + + + + +5 docs tagged with "Workspaces" | NocoDB + + + + +
+

5 docs tagged with "Workspaces"

View All Tags

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

Workspace collaboration

This article explains how to invite members to your workspace, change their roles and procedure to remove them from the workspace.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/tags/xlsx/index.html b/packages/noco-docs/dist/tags/xlsx/index.html new file mode 100644 index 0000000000..3c86b29294 --- /dev/null +++ b/packages/noco-docs/dist/tags/xlsx/index.html @@ -0,0 +1,16 @@ + + + + + +2 docs tagged with "XLSX" | NocoDB + + + + +
+

2 docs tagged with "XLSX"

View All Tags

Download

NocoDB offers users the ability to export data from the spreadsheet grid in a variety of formats. This feature is useful when working with large datasets and can be used in conjunction with the Filter and Sort feature to further refine your data.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/actions-on-view/index.html b/packages/noco-docs/dist/views/actions-on-view/index.html new file mode 100644 index 0000000000..a403214d7a --- /dev/null +++ b/packages/noco-docs/dist/views/actions-on-view/index.html @@ -0,0 +1,18 @@ + + + + + +Actions on view | NocoDB + + + + +
+
Version: Latest

Actions on view

View context menu

The view context menu provides a set of tools to interact with the view. The view context menu can be accessed by clicking on the ellipsis symbol (...) located next to view in the left sidebar.

image

Rename view

  1. Click on the ellipsis symbol (...) next to view name located in the left sidebar.
  2. Click on the Rename option from the view context menu.
  3. Enter the desired new view name into the provided field.
  4. Use Enter key to finalize the renaming process.

image

Duplicate view

  1. Click on the ellipsis symbol (...) next to view name located in the left sidebar.
  2. Click on the Duplicate option from the view context menu.
  3. Enter the desired new view name into the provided field.
  4. Click on the Duplicate View button in the confirmation dialog.

image +image

Delete view

danger

This action cannot be undone.

  1. Click on the ellipsis symbol (...) next to view name located in the left sidebar.
  2. Click on the Delete option from the view context menu.
  3. Click on the Delete View button in the confirmation dialog.

image +image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/create-view/index.html b/packages/noco-docs/dist/views/create-view/index.html new file mode 100644 index 0000000000..a8891635a0 --- /dev/null +++ b/packages/noco-docs/dist/views/create-view/index.html @@ -0,0 +1,17 @@ + + + + + +Create view | NocoDB + + + + +
+
Version: Latest

Create view

Create new view

  1. Click on + on the left sidebar next to table name OR click on + New View button below table name.
  2. Select view type from the dropdown modal.
  3. Fill view name in the pop-up modal.
    • For Kanban view, select the Single select field to be used as the Kanban field.
  4. Click on Create View button.

image +image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/share-view/index.html b/packages/noco-docs/dist/views/share-view/index.html new file mode 100644 index 0000000000..d21eba0a57 --- /dev/null +++ b/packages/noco-docs/dist/views/share-view/index.html @@ -0,0 +1,19 @@ + + + + + +Share view | NocoDB + + + + +
+
Version: Latest

Share view

Sharing a specific view of a table becomes highly valuable when you need to collaborate with individuals outside your organization who need access to specific sections of your database. This shared view provides a read-only perspective, accessible to anyone, regardless of their workspace affiliation. You have control over which data fields and records are visible to these external viewers, ensuring that any sensitive data remains hidden. Furthermore, if you decide to make changes to the visible fields or records within the view, the shared link will promptly reflect these adjustments, updating in real-time.

Generate Share View

  1. Click Share button on the top right of the toolbar
  2. Toggle Enable public viewing to create shared view link
  3. Click Copy button to copy the link to clipboard

share button

shared view

Share view options

Password protection

You can enable Restrict access with a password if you want a password-protected view

password protection

Download options

You can toggle Allow Download button to enable or disable download CSV/XLSX options in the shared view link

download options

Share Form View Options

Form view has additional customizations for shared view. You can enable/disable the following options for shared form view:

  1. Survey mode: This option when enabled, will display the form in survey mode.
  2. RTL Orientation: This option when enabled, will display the form in RTL orientation.
  3. Themes: You can select a theme for the form from the dropdown. +form view options

Access Share View

To access the shared view, please follow the steps below: +Click on the Shared View URL. If the URL is password-protected, you will be prompted to enter the password to unlock it. Please input the required password to proceed.

password modal

Once the password is successfully entered and authenticated, you will gain access to the shared view. +In the event that the URL is not password-protected, you will be directed to the shared view directly, without the need for a password.

share-view

Users with the shared view link can only view the data and cannot make any changes to the view or its content. Records and fields in the shared view will be updated in real-time as changes are made to the original view. Users accessing shared view can apply filters and sort records as per their requirements.

info

Note that, filters & sorts applied to shared view will not be persisted. These filters & sorts will be reset when the shared view is accessed again.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/view-types/form/index.html b/packages/noco-docs/dist/views/view-types/form/index.html new file mode 100644 index 0000000000..c8d9c70374 --- /dev/null +++ b/packages/noco-docs/dist/views/view-types/form/index.html @@ -0,0 +1,18 @@ + + + + + +Form | NocoDB + + + + +
+
Version: Latest

Form

Form View allows you to arrange fields in a form to input data.

1010-2 Form

Form View Builder

Form view builder layout can be divided into 3 sections:

  1. Fields Area - This is the area where fields available in the tables that are not yet added to the form are listed.
  2. Form Area - This is the area where fields added to the form are listed.
  3. Form Settings - This is the area where you can configure the form view. This mainly consists of actions & customisations that can be performed after a form view is submitted.

Form Builder

Form View Actions

  1. Create a New Form View
  2. Rename an Existing Form View
  3. Duplicate a Form View
  4. Remove a Form View
  5. Share a Form View
  6. Lock Form View for Edits

Form View Operations

Add Form Title & Description

In the Form View area, click on in input boxes provided for Title <1> & Description <2> to add/update title & description to the form.

Form Title &amp; Description

Add Fields to the Form

To add a field to the form, either

  • Drag and drop the field from the Fields Area to the Form Area at required position
  • Click on the field in the Fields Area to add it to the end of the Form Area

Change field label & help-text

To change the field label displayed on the form & add help-text, click on the field in the Form Area and update the values in the input boxes provided for Label <1> & Help Text <2>.

Field Label &amp; Help Text

Mark a Field as Required

To mark a field as required, click on the field in the Form Area and toggle the Required switch.

Required Field

Rearrange Fields Within the Form

To rearrange fields within the form, drag and drop the field to the required position.

Remove Fields from the Form

To remove a field from the form, either

  • Drag and drop the field from the Form Area to the Fields Area
  • Hover over the field in the Form Area and click on the hide icon

Hide Field

Add a New Field to the Table

To add a new field to the table,

  • Click on the + Add new field to this table in the Fields Area and
  • Select the field name & type from the dropdown.
  • Click on Save Column

Add Field

Form View Settings

NocoDB allows you to configure the form view to perform various actions after a form is submitted. These actions can be configured in the Form Settings area.

  1. After Submit Message: You can configure a message to display on successful submission of the form.
  2. Show Submit Another Form Button: This option when enabled, will display a Submit Another Form button after the form is submitted.
  3. Show a Blank form: This option when enabled, will display a new blank form 5 seconds after the form is submitted.
  4. Email me: Enable this option to receive an Email after the form is submitted.

Form View Settings

Survey Form View

NocoDB supports a special type of form view called Survey Form View. This view is ideal for creating surveys & questionnaires. This view can be enabled by toggling the Survey Mode switch when creating shared form view.

When enabled,

  • Form input fields will be displayed one at a time.
  • Users can navigate between fields using the < & > buttons.

Survey Form View

Form View
+Gallery View
+Kanban View

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/view-types/gallery/index.html b/packages/noco-docs/dist/views/view-types/gallery/index.html new file mode 100644 index 0000000000..011f107fb6 --- /dev/null +++ b/packages/noco-docs/dist/views/view-types/gallery/index.html @@ -0,0 +1,18 @@ + + + + + +Gallery | NocoDB + + + + +
+
Version: Latest

Gallery

Gallery View allows you to display images as thumbnails with other fields just like a gallery. This view type is ideal for viewing images in a gallery-like interface. Like in Gallery, you can also perform various operations on the gallery view, such as sorting, filtering, grouping, and searching. You can also export the data in the gallery view to CSV or Excel format. This section will cover all the operations that can be performed on the gallery view.

1010-2 Gallery

  1. Create a New Gallery View
  2. Rename an Existing Gallery View
  3. Duplicate a Gallery View
  4. Remove a Gallery View
  5. Share a Gallery View
  6. Lock Gallery View for Edits
  1. Rearrange Fields Within the Gallery
  2. Show or Hide Fields Within the Gallery
  3. Apply Filters to Display Specific Records on the Gallery
  4. Sort Records on the Gallery by One or More Criteria
  5. Perform Quick Searches for Specific Data Within Fields
  6. Export Data to CSV or Excel Format
  7. Change Cover Image
  1. Add a New Record to the Gallery: Currently it is not possible to insert a new record directly on the gallery view. However, you can add a new record to the table, and it will be displayed on the gallery view.
  2. Edit an Existing Record on the Gallery: Click on the card on the gallery view to open the record in the expanded record view. You can edit the record in the form view and save it.
  3. Delete a Single Record from the Gallery: Click on the card on the gallery view to open the record in the expanded record view. You can delete the record in the form view by using the expanded record context menu.
  4. Delete Multiple Records in Bulk from the Gallery: Currently it is not possible to delete multiple records in bulk directly on the gallery view. However, you can delete multiple records in bulk from the grid view & it will be reflected on the gallery view.

Grid View
+Form View
+Kanban View

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/view-types/grid/index.html b/packages/noco-docs/dist/views/view-types/grid/index.html new file mode 100644 index 0000000000..d075c9c842 --- /dev/null +++ b/packages/noco-docs/dist/views/view-types/grid/index.html @@ -0,0 +1,18 @@ + + + + + +Grid | NocoDB + + + + +
+
Version: Latest

Grid

Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface using rows and columns. Rows are as referred to as records and columns as fields in NocoDB.

1010-2 Grid

Grid view is the default view type for all tables. This view type is ideal for viewing and editing data in a spreadsheet-like interface. You can also perform various operations on the grid view, such as sorting, filtering, grouping, and searching. You can also export the data in the grid view to CSV or Excel format. This section will cover all the operations that can be performed on the grid view.

Grid View Actions

  1. Create a New Grid View
  2. Rename an Existing Grid View
  3. Duplicate a Grid View
  4. Remove a Grid View
  5. Share a Grid View
  6. Lock Grid View for Edits

Grid View Operations

  1. Rearrange Fields Within the Grid
  2. Show or Hide Fields Within the Grid
  3. Apply Filters to Display Specific Records on the Grid
  4. Sort Records on the Grid by One or More Criteria
  5. Group Records Horizontally on the Grid
  6. Search for Specific Data Within Fields
  7. Export Data to CSV or Excel Format
  8. Adjust Record Height on the Grid
  9. Customize Field Width
  10. Toggle Field Visibility on the Grid

Grid View Record Operations

  1. Add a New Record to the Grid
  2. Edit an Existing Record on the Grid
  3. Delete a Single Record from the Grid
  4. Delete Multiple Records in Bulk from the Grid

Gallery View
+Form View
+Kanban View

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/view-types/kanban/index.html b/packages/noco-docs/dist/views/view-types/kanban/index.html new file mode 100644 index 0000000000..3d554edec6 --- /dev/null +++ b/packages/noco-docs/dist/views/view-types/kanban/index.html @@ -0,0 +1,18 @@ + + + + + +Kanban | NocoDB + + + + +
+
Version: Latest

Kanban

Kanban View allows you to visualise your data using cards as part of various stacks on the board. You can easily rearrange the cards by dragging and dropping them to different stacks. This section will cover all the operations that can be performed on the Kanban view.

1010-2 Kanban

Kanban View Actions

  1. Create a New Kanban View
  2. Rename an Existing Kanban View
  3. Duplicate a Kanban View
  4. Remove a Kanban View
  5. Share a Kanban View
  6. Lock Kanban View for Edits

Kanban View Operations

  1. Rearrange Fields Within the Kanban
  2. Show or Hide Fields Within the Kanban
  3. Apply Filters to Display Specific Records on the Kanban
  4. Sort Records on the Kanban by One or More Criteria
  5. Perform Quick Searches for Specific Data Within Fields
  6. Export Data to CSV or Excel Format
  7. Change Cover Image

Kanban View Stacked-by field Operations

Change Stacked by Field

You can change the field by which the records are stacked on the kanban view by following the steps below:

  1. Click on the Stacked by menu in the toolbar.
  2. Click on field name that is currently selected as the stacked-by field.
  3. From the dropdown, select the new field by which you want to stack the records.

Change Stacked by Field

Add/modify Stacked-by Field Options

You can add/modify options on the stacked-by single select field by following the steps below:

  1. Click on the Stacked by menu in the toolbar. Dropdown lists all Select Options that are available on this field.
  2. Add/modify as required.
  3. Click on Save to save the changes.

Add/modify option on the stacked-by single select field

Collapse Stack

To ease the view of the kanban, you can collapse the stack by following the steps below:

  1. Click on the dropdown icon on the stack header.
  2. Select Collapse Stack from the dropdown.
  3. Collapsed Stack will be displayed as vertical bars on the kanban view as displayed below.

Collapse Stack

Delete Stack

To delete a stack from the kanban view, follow the steps below:

  1. Click on the dropdown icon on the stack header.
  2. Select Delete Stack from the dropdown.
  3. A confirmation dialog will be displayed. Click on Delete to delete the stack.

Delete Stack

Delete Stack Confirmation

Reorder Stacks

You can reorder the stacks on the kanban view by dragging and dropping the stack to the desired position.

Kanban View Record Operations

Move Records within Stacks

You can move records within a stack by dragging and dropping the card to the desired position within the stack.

Add a New Record to the Kanban

On kanban, you can add a new record directly to a particular stack by using Add Record button on the stack footer. This opens up an expanded record view where you can enter the data for the new record. Once you save the record, it will be displayed on the kanban view. You can also add a new record to the table, and it will be displayed on the kanban view.

Add Record

Edit an Existing Record on the Kanban

Click on the card on the kanban view to open the record in the expanded record view. You can edit the record in the expanded record view and save it.

Delete a Single Record from the Kanban

Right-click on the card to access the context menu and select the Delete option.

Grid View
+Kanban View
+Form View

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/views/views-overview/index.html b/packages/noco-docs/dist/views/views-overview/index.html new file mode 100644 index 0000000000..84e32460ed --- /dev/null +++ b/packages/noco-docs/dist/views/views-overview/index.html @@ -0,0 +1,20 @@ + + + + + +View overview | NocoDB + + + + +
+
Version: Latest

View overview

Views within NocoDB not only allow you to tailor the visual presentation to your liking but also provide independent +control over sorting and filtering of records within each view. Each view maintains its unique configuration for +filters, data display, and enabled fields, ensuring that modifications of these configuration does not impact any other view. +This feature empowers users to efficiently personalize their data visualization while +maintaining the integrity of other views.

info

View represents data from a table. Any updates to records in a view will be reflected in all other views of the same table.

View Types Supported

  1. Grid View
  2. Form View
  3. Gallery View
  4. Kanban View

View Permission Types

We can apply permission to each View. By default, views are Collaborative. To see or change the view type, expand view-tool-bar-menu as shown below.

locked view

Collaborative Views (default)

By default, views are set to "Collaborative," allowing members with edit permissions or higher to modify view configurations. In this mode, all members can read and write data to the view. This is the default mode for all views.

Locked Views

With "Locked Views," no one can edit the view configurations until they are unlocked. In this mode, all members are restricted to reading data from the view and are unable to make any changes to its settings or content. This mode is useful when you want to share a view with others but don't want them to make any changes to it.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/workspaces/actions-on-workspace/index.html b/packages/noco-docs/dist/workspaces/actions-on-workspace/index.html new file mode 100644 index 0000000000..2f51ab26fd --- /dev/null +++ b/packages/noco-docs/dist/workspaces/actions-on-workspace/index.html @@ -0,0 +1,17 @@ + + + + + +Actions on workspace | NocoDB + + + + +
+
Version: Latest

Actions on workspace

Rename workspace

To update the workspace name:

  1. Navigate to the Team & Settings option in the left sidebar to access the Workspace configuration page.
  2. Select the Settings tab.
  3. Enter the new desired workspace name in the Workspace Name field.
  4. Confirm the change by clicking on the Rename Workspace button.

image

Delete workspace

If you determine that a workspace is no longer necessary, you have the option to permanently remove it from your settings. Deleting a workspace will delete all the bases and data associated with it.

danger

This action cannot be undone.

info

Only workspace owner can delete a workspace.

To remove a workspace:

  1. Open the Workspace configuration page by selecting Team & Settings from the left sidebar.
  2. Access the Settings tab.
  3. Click on the Delete Workspace button.
  4. Provide the workspace name as confirmation for deletion.
  5. Confirm the action by clicking the Delete Workspace button in the confirmation dialog box.

image +image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/workspaces/create-workspace/index.html b/packages/noco-docs/dist/workspaces/create-workspace/index.html new file mode 100644 index 0000000000..527788679c --- /dev/null +++ b/packages/noco-docs/dist/workspaces/create-workspace/index.html @@ -0,0 +1,20 @@ + + + + + +Create workspace | NocoDB + + + + +
+
Version: Latest

Create workspace

Upon signing up to NocoDB, an initial workspace is automatically generated on your behalf. +Then you have the ability to either modify its name or creating an entirely new workspace.

In the following section, lets look at the process of creating your NocoDB workspaces.

Create a workspace

  1. Navigate to the top-left corner of the sidebar and select the Workspace name to access the Workspace context menu.
  2. From the Workspace context menu, opt for the Create workspace button.
  3. Provide a name for the workspace
  4. Proceed by clicking the Create Workspace button.

image

image

When you start a new workspace, you automatically become the owner. +Once your workspace is set up, you can create tables and invite others to join and work together. +You can invite as many people as you want, and you can create as many tables as you need in your workspace. +But remember, there can only be one owner, and only the owner can delete the workspace.

info

The Open Source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces.

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/workspaces/workspace-collaboration/index.html b/packages/noco-docs/dist/workspaces/workspace-collaboration/index.html new file mode 100644 index 0000000000..5af6edabe9 --- /dev/null +++ b/packages/noco-docs/dist/workspaces/workspace-collaboration/index.html @@ -0,0 +1,17 @@ + + + + + +Workspace collaboration | NocoDB + + + + +
+
Version: Latest

Workspace collaboration

Next logical step after creating a workspace is to invite members to it. In this section, we will guide you through the process of inviting members to your workspace. +A comprehensive guide regarding roles and permissions can be accessed here.

Invite members to Workspace

  1. Navigate to the Workspace configuration page by selecting Team & Settings in the left sidebar.
  2. Access the Members tab.
  3. Input the email address of the intended member for the invitation.
  4. Click on Role dropdown menu
  5. Choose the appropriate access permission for the member from the dropdown menu.
  6. Conclude the process by selecting the Add Member(s) button.

image

tip

You can invite multiple members simultaneously by entering their email addresses, separated by commas.

List Workspace members

The Members tab in Team & Settings displays a list of users who have been granted access to the workspace.

  1. Navigate to the Workspace configuration page by selecting Team & Settings in the left sidebar.
  2. Access the Members tab.

image

Modify Workspace Member Roles

You can modify the access permissions of members by following these steps:

  1. Navigate to the Workspace configuration page by selecting Team & Settings in the left sidebar.
  2. Access the Members tab.
  3. Access the dropdown menu.
  4. Select the desired new role option.

image

Remove Workspace Members

To remove a member from the workspace, take the following steps:

  1. Navigate to the Workspace configuration page by selecting Team & Settings in the left sidebar.
  2. Access the Members tab.
  3. Click on the vertical ellipses to open the context menu.
  4. Select the Remove User option.

image

+ + + + \ No newline at end of file diff --git a/packages/noco-docs/dist/workspaces/workspace-overview/index.html b/packages/noco-docs/dist/workspaces/workspace-overview/index.html new file mode 100644 index 0000000000..4621320d41 --- /dev/null +++ b/packages/noco-docs/dist/workspaces/workspace-overview/index.html @@ -0,0 +1,17 @@ + + + + + +Workspace overview | NocoDB + + + + +
+
Version: Latest

Workspace overview

NocoDB workspaces are a crucial feature for organizing and managing your data effectively:

  1. Workspace Isolation: Each workspace contains its own set of bases, keeping your data separate and well-organized.

  2. Member Control: Workspaces have their own members and permissions, allowing you to control who can access and modify data within each workspace.

  3. Customized Settings: Workspaces offer unique settings and billing options, letting you customize configurations to suit specific needs.

  4. Base Association: Bases are tied exclusively to one workspace and can't be moved between workspaces, ensuring data integrity.

  5. Member Flexibility: Members can be part of multiple workspaces, enabling versatile collaboration across different bases. You can also fine-tune their roles within each workspace.

In summary, NocoDB workspaces streamline data management and member control, providing the flexibility and oversight necessary for various projects and teams.

info

The Open Source NocoDB includes a default workspace, and it does not allow the creation of additional workspaces.

Workspace context menu

The workspace context menu, conveniently located in the left top of sidebar, provides a list of all the workspaces accessible to you. +You can easily switch between different workspaces by simply clicking on the respective workspace name within this menu.

image

+ + + + \ No newline at end of file