From 1ea56db61cd0cae62c35b8572b334220c88c7ef2 Mon Sep 17 00:00:00 2001 From: Denis Date: Sun, 28 Aug 2022 18:53:13 -0500 Subject: [PATCH 01/54] feat(gui-v2): customizable urls in shared views --- packages/nc-gui/components/cell/Url.vue | 39 ++++++++++++++++++- .../nc-gui/components/smartsheet/Grid.vue | 14 +++++++ packages/nc-gui/context/index.ts | 7 ++++ .../pages/[projectType]/view/[viewId].vue | 20 ++++++++++ 4 files changed, 78 insertions(+), 2 deletions(-) diff --git a/packages/nc-gui/components/cell/Url.vue b/packages/nc-gui/components/cell/Url.vue index 2d9af3343b..ff7b1261ce 100644 --- a/packages/nc-gui/components/cell/Url.vue +++ b/packages/nc-gui/components/cell/Url.vue @@ -2,7 +2,7 @@ import type { VNodeRef } from '@vue/runtime-core' import { message } from 'ant-design-vue' import { useI18n } from 'vue-i18n' -import { ColumnInj, EditModeInj, computed, inject, isValidURL } from '#imports' +import { CellUrlConfigInj, CellUrlDisableOverlayInj, ColumnInj, EditModeInj, computed, inject, isValidURL, ref } from '#imports' import MiCircleWarning from '~icons/mi/circle-warning' const { modelValue: value } = defineProps() @@ -16,6 +16,8 @@ const column = inject(ColumnInj)! const editEnabled = inject(EditModeInj)! +const config = inject(CellUrlConfigInj, {}) +const disableOverlay = inject(CellUrlDisableOverlayInj) // Used in the logic of when to display error since we are not storing the url if its not valid const localState = ref(value) @@ -40,6 +42,17 @@ const url = computed(() => { return `https://${value}` }) +const urlOptions = computed(() => { + const { behavior, overlay, rules } = config + const options = { behavior, overlay } + if (rules && (!behavior || !overlay)) { + for (const [regex, value] of rules) { + if (url.value.match(regex)) return Object.assign(options, value) + } + } + return options +}) + const focus: VNodeRef = (el) => (el as HTMLInputElement)?.focus() watch( @@ -59,7 +72,20 @@ watch(
- {{ value }} + {{ value }} + + {{ urlOptions.overlay }} + {{ value }} @@ -74,6 +100,15 @@ watch(
+ + - + -### Hide/ Unhide Columns +### 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. @@ -29,11 +35,11 @@ To hide / unhide columns, open `Fields` menu, tick checkbox to keep the column v Tip: You can create different grid views with different fields shown in each view. - +image -#### Demo + - + ## Sort @@ -41,22 +47,29 @@ Tip: You can create different grid views with different fields shown in each vie 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. - +image - - -#### Demo +image + +image - + + + + ## 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. +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. - +image + +image + +You can also group several filters together using Filter Group. - +image ### Supported filters From 84319a651f2a780a15f83fb04ad79730410df441 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 18:56:58 +0800 Subject: [PATCH 10/54] docs: update content and screenshots for Code Snippets --- .../noco-docs/content/en/setup-and-usages/code-snippets.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/code-snippets.md b/packages/noco-docs/content/en/setup-and-usages/code-snippets.md index 479f98b6b5..00e4172caf 100644 --- a/packages/noco-docs/content/en/setup-and-usages/code-snippets.md +++ b/packages/noco-docs/content/en/setup-and-usages/code-snippets.md @@ -8,14 +8,13 @@ menuTitle: 'Code Snippets' ## Overview -Open a Project, Select a Table and Click `Get API Snippet` on the bottom right area. +In the table toolbar, click Table name button and click `Get API Snippet`. -image +image A modal box will be shown with sample code snippet for List API. -![image](https://user-images.githubusercontent.com/35857179/166663478-3f802012-7bdc-4265-9ffe-6e51c4bcf4cd.png) - +image ## Supported Snippet From 2f33a385dd706109e4e7beabde92099a15a79fb5 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 19:13:16 +0800 Subject: [PATCH 11/54] docs: update content and screenshots for LTAR --- .../link-to-another-record.md | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/link-to-another-record.md b/packages/noco-docs/content/en/setup-and-usages/link-to-another-record.md index f1980ba5d6..c6801c082e 100644 --- a/packages/noco-docs/content/en/setup-and-usages/link-to-another-record.md +++ b/packages/noco-docs/content/en/setup-and-usages/link-to-another-record.md @@ -29,7 +29,7 @@ Workflow details are captured below ## Adding a relationship -![1](https://user-images.githubusercontent.com/86527202/144224170-43f4194f-83d4-4291-8c91-1f66ea1caeda.png) +image ### 1. Create column @@ -45,8 +45,8 @@ 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 +- '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 @@ -59,19 +59,22 @@ A new column will get created in both the parent table & child table ### 1. Open link record tab Click on the '+' icon in corresponding row - cell -![2truncate](https://user-images.githubusercontent.com/86527202/144224728-1cba50e3-323e-4578-be48-d2a205fb472c.png) +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 -![3](https://user-images.githubusercontent.com/86527202/144224530-a258775f-1eea-4c79-88ed-a377d1e35a26.png) +image ### 3. Column mapping showing "Has Many" relationship -Country 'has many' City +Sheet1 'has many' Sheet2 + +image ### 4. Column mapping for "Belongs to" relationship [Automatically updated] -City 'belongs to' Country -![4](https://user-images.githubusercontent.com/86527202/144224542-d28be060-a077-468a-bdc4-b2e8a783d75f.png) +Sheet2 'belongs to' Sheet1 + +image \ No newline at end of file From 24fd79beb13d94ce44d8fe78267b8690cc55cf93 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 19:26:23 +0800 Subject: [PATCH 12/54] docs: update content and screenshots for Formula --- .../noco-docs/content/en/setup-and-usages/formulas.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/formulas.md b/packages/noco-docs/content/en/setup-and-usages/formulas.md index be5dbaa939..9d6a351bba 100644 --- a/packages/noco-docs/content/en/setup-and-usages/formulas.md +++ b/packages/noco-docs/content/en/setup-and-usages/formulas.md @@ -8,7 +8,7 @@ menuTitle: "Formulas" ## Adding formula column -![Formula](https://user-images.githubusercontent.com/86527202/144246227-42c44df6-7e3e-4b2c-9bb9-a3c213bcad20.png) +image ### 1. Click on '+' (Add column) @@ -25,6 +25,12 @@ menuTitle: "Formulas" ### 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 From 182f32b2c652fb34b8efd1cb936d8b4286d2c337 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 19:45:10 +0800 Subject: [PATCH 13/54] docs: update content and screenshots for Primary Key --- .../noco-docs/content/en/setup-and-usages/primary-key.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/primary-key.md b/packages/noco-docs/content/en/setup-and-usages/primary-key.md index 62112ae834..3d1be32045 100644 --- a/packages/noco-docs/content/en/setup-and-usages/primary-key.md +++ b/packages/noco-docs/content/en/setup-and-usages/primary-key.md @@ -35,10 +35,10 @@ It is possible to have a table without any 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 -![Screenshot 2022-06-16 at 12 15 43 PM](https://user-images.githubusercontent.com/86527202/174010350-8610b9c1-a761-4bff-a53d-dc728df47e1b.png) +image #### Example : Show System Fields -![Screenshot 2022-06-16 at 12 16 07 PM](https://user-images.githubusercontent.com/86527202/174010379-9e300d42-ad89-4653-afa2-f70fca407ca8.png) +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 `metasync` explicitly +- You can't update Primary Key from NocoDB UI. You can reconfigure it at database level directly & trigger `meta sync` explicitly. From 30b8d90d55dd52d15c6adabbc78c0d88ae7f750c Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 19:51:56 +0800 Subject: [PATCH 14/54] docs: update content and screenshots for Primary Value --- .../en/setup-and-usages/primary-value.md | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/primary-value.md b/packages/noco-docs/content/en/setup-and-usages/primary-value.md index e42de05e51..bd297bf2b4 100644 --- a/packages/noco-docs/content/en/setup-and-usages/primary-value.md +++ b/packages/noco-docs/content/en/setup-and-usages/primary-value.md @@ -1,9 +1,9 @@ --- -title: "Primary value" +title: "Primary Value" description: "Understanding Primary Value in NocoDB!" position: 580 category: "Product" -menuTitle: "Primary value" +menuTitle: "Primary Value" --- ## What is a Primary Value ? @@ -14,19 +14,27 @@ menuTitle: "Primary value" - Within a spreadsheet, primary 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 primary value that appears in LinkToAnotheRecord column. -#### Example : Primary Value highlighted in actor table -actor +#### Example : Primary Value highlighted in Actor table +image -#### Example : Primary Value highlighted in film table -film-table +#### Example : Primary Value highlighted in Film table +image #### Example : Primary Value associated when LinkToAnotherRecord is created -actor-film +image + +## How to set Primary Value ? + +Click down arrow in the target column. Click `Set as Primary Value`. + +image ## How is Primary 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 Primary Value to another column within tables ? -- Yes, you can. Hover over column which you want as primary column and click ```Set as Primary Value``` + +- Yes, you can use the same way mentioned above to set Primary Value. From c0b19e055a5e678f8c0ec7f56fb0b19aca27ea18 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 19:56:09 +0800 Subject: [PATCH 15/54] docs: update content and screenshots for Audit --- packages/noco-docs/content/en/setup-and-usages/audit.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/audit.md b/packages/noco-docs/content/en/setup-and-usages/audit.md index 39b513c6c3..6d62edc44f 100644 --- a/packages/noco-docs/content/en/setup-and-usages/audit.md +++ b/packages/noco-docs/content/en/setup-and-usages/audit.md @@ -6,10 +6,10 @@ category: 'Product' menuTitle: 'Audit' --- -We are keeping all the user operation logs under Audit. Audits logs can be accessed by clicking `Team & Settings` from the left navigation drawer. +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`. -image +image Then, under SETTINGS, click `Audit`. -image +image \ No newline at end of file From 81c9047d0bccb0a15bd9687ec66500575b93f4c3 Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Thu, 8 Sep 2022 20:01:04 +0800 Subject: [PATCH 16/54] docs: update content and screenshots for Metadata --- .../en/setup-and-usages/meta-management.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/meta-management.md b/packages/noco-docs/content/en/setup-and-usages/meta-management.md index 38eb3f518b..474e32dbd0 100644 --- a/packages/noco-docs/content/en/setup-and-usages/meta-management.md +++ b/packages/noco-docs/content/en/setup-and-usages/meta-management.md @@ -6,13 +6,15 @@ category: 'Product' menuTitle: 'Metadata' --- -Project Metadata can be found by clicking `Team & Settings` from the left navigation drawer +Project Metadata includes Database Metadata, UI Access Control and Miscellaneous. -image +To access it, click the down arrow button next to Project Name on the top left side, then select `Team & Settings`. + +image and clicking `Project Metadata`. -![image](https://user-images.githubusercontent.com/35857179/170427133-09faf93f-a41c-428b-b51c-fefe3fb45d9d.png) +image + Now, let's explore procedure to retrieve team-code information in Employee table using **LOOKUP** columns From a3466c497099cdb95f5898728e1a735585722aef Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Fri, 9 Sep 2022 13:18:46 +0530 Subject: [PATCH 20/54] docs: update content and screenshots for Rollup --- .../content/en/setup-and-usages/rollup.md | 50 +++++++++++-------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/rollup.md b/packages/noco-docs/content/en/setup-and-usages/rollup.md index 01d1e6dee5..ede595a270 100644 --- a/packages/noco-docs/content/en/setup-and-usages/rollup.md +++ b/packages/noco-docs/content/en/setup-and-usages/rollup.md @@ -8,13 +8,14 @@ menuTitle: "Rollup" ## Rollup -Sample simple Organization structure: +Sample Organization structure: -- 5 Departments (company departments), each department has a team name & associated team code +- 5 Departments, each department has a team name & associated team code - 5 employees working at different Departments -- Vertical **has many** Employees : relationship has been defined +- Teams **has many** Employees : relationship has been defined + +![Screenshot 2022-09-09 at 12 57 32 PM](https://user-images.githubusercontent.com/86527202/189296162-536185f1-31ed-40df-b668-deed7ad630aa.png) -![LookUp](https://user-images.githubusercontent.com/86527202/144038845-402d5401-a214-4166-bc07-fcf8dcc8a961.png) ### RollUp AGGREGATION functions supported @@ -27,46 +28,53 @@ Sample simple Organization structure: - Sum Distinct - Average Distinct -Now, we can explore how to extract employee count information per vertical using **"ROLLUP"** columns +Now, we can explore how to extract employee count information per team using **"ROLLUP"** columns ## Adding a rollup column -### 1. Add new column +#### 1. Add new column Click on '+' icon to the left of column headers in Departments table -![1](https://user-images.githubusercontent.com/86527202/144236273-484edc5b-7f5f-4041-b480-db08d4459d07.png) + -### 2. Feed column name +#### 2. Feed column name -![2](https://user-images.githubusercontent.com/86527202/144236279-41904955-4990-4a23-bec6-b0953002eac6.png) + -### 3. Select Column type as 'Rollup' +#### 3. Select Column type as 'Rollup' -![3](https://user-images.githubusercontent.com/86527202/144236283-4596e3e1-3bf8-488f-bc9b-8ec1466a35c6.png) + -### 4. Choose Child Table +#### 4. Choose Child Table Table Employee in our example -![4](https://user-images.githubusercontent.com/86527202/144236284-301178d8-f452-4d1e-9dff-80dd9570c280.png) + -### 5. Choose on ​Child column +#### 5. Choose on ​Child column Pick appropriate column for aggreagation -![5](https://user-images.githubusercontent.com/86527202/144236286-28547d74-feb8-4ad8-a872-7ba809e5db1e.png) + -### 6. Select ​Aggregate function +#### 6. Select ​Aggregate function Aggregate function will be "count" in our case -![6](https://user-images.githubusercontent.com/86527202/144236288-34a567d5-a5e9-4a1e-b074-5ea633e799a3.png) + + +#### 7. Click on Save + + +![Screenshot 2022-09-09 at 1 03 49 PM](https://user-images.githubusercontent.com/86527202/189297619-4d5c815b-6c97-41fa-978e-9b645448e508.png) + -### 7. Click on Save + -![7](https://user-images.githubusercontent.com/86527202/144236289-5872529a-ba47-428d-979e-fdefb92a1039.png) +Column `Employee Count` is populated with appropriate information + +![Screenshot 2022-09-09 at 1 07 45 PM](https://user-images.githubusercontent.com/86527202/189297662-c7ff1e3e-eec7-4108-a089-6c945b90b867.png) -### 8. Column TeamCount is populated with appropriate information -![8](https://user-images.githubusercontent.com/86527202/144236291-52855f92-ad8b-4be1-aa98-b5cfdb1ee108.png) + From 1c05c2fae873ef548bc779ffbbc097b48d607872 Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Fri, 9 Sep 2022 13:52:57 +0530 Subject: [PATCH 21/54] docs: update content and screenshots for i18n translations --- .../content/en/engineering/translation.md | 87 +++++++++++++------ 1 file changed, 60 insertions(+), 27 deletions(-) diff --git a/packages/noco-docs/content/en/engineering/translation.md b/packages/noco-docs/content/en/engineering/translation.md index 86909e77c4..e88c5be891 100644 --- a/packages/noco-docs/content/en/engineering/translation.md +++ b/packages/noco-docs/content/en/engineering/translation.md @@ -6,48 +6,81 @@ category: "Engineering" menuTitle: "i18n translation" --- -NocoDB supports many foreign languages & we welcome community contributions via an easy to use [google-spreadsheet](https://docs.google.com/spreadsheets/d/1kGp92yLwhs1l7lwwgeor3oN1dFl7JZWuQOa4WSeZ0TE/edit#gid=2076107172). +NocoDB supports many foreign languages & community contributions are now simplified via [Crowdin](https://crowdin.com/) Your help in fixing i18n goes a long way supporting NocoDB. Please follow below simple procedure to request corrections to existing translation errors. -## How to contribute ? (for community members) +# Public Contributions -### 1. How to change a string value ? -- Make a copy of [Google spreadsheet](https://docs.google.com/spreadsheets/d/1kGp92yLwhs1l7lwwgeor3oN1dFl7JZWuQOa4WSeZ0TE/edit#gid=2076107172) - Screenshot 2022-02-10 at 1 47 06 PM -- Find your language code [here](https://developers.google.com/admin-sdk/directory/v1/languages) -- Go to the column containing your language code. Make necessary changes. Origin text in ENGLISH can be found in `Column B` of master spreadsheet. -- Create a new [issue in Github](https://github.com/nocodb/nocodb/issues/new?assignees=dstala&labels=i18n+translation&template=i18n-translation-request.md&title=%5Bi18n%5D+Language+support+extension-+%3Clanguage+code%3E) request with a link to your spreadsheet from Step-1 (for us to verify & update master spreadsheet). -- NocoDB Maintainers will take changes and merge it. -- It's that simple! +### 1. How to add translation corrections (to existing languages)? +- Setup [Crowdin](https://crowdin.com) account +- Join [NocoDB](https://crowdin.com/project/nocodb) project + +![Screenshot 2022-09-08 at 10 26 23 PM](https://user-images.githubusercontent.com/86527202/189181511-51b8671e-bee8-45d5-8216-a4a031bc6309.png) +- Click the language that you wish to contribute + +![Screenshot 2022-09-08 at 10 29 56 PM](https://user-images.githubusercontent.com/86527202/189182132-0eed7d5a-eaa1-43e1-929d-688f375763c1.png) +- Click the `Translate` button; this opens up `Crowdin Online Editor` + +![Screenshot 2022-09-08 at 10 32 17 PM](https://user-images.githubusercontent.com/86527202/189182450-999124e8-566c-40af-9d3c-731a11c1b6aa.png) -### 2. How to add a new language ? +- 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](https://user-images.githubusercontent.com/86527202/189184278-69d688ed-4e5a-4d5a-b629-9f6d10d79346.png) + +A GitHub Pull Request will be automatically triggered (periodicity- 6 hours). We will follup on remaining integration work items. + +--- + + +#### Reference + +Refer following articles to get additional details about Crowdin Portal usage +- [Translator Introduction](https://support.crowdin.com/crowdin-intro/) +- [Volunteer Translation Introduction](https://support.crowdin.com/for-volunteer-translators/) +- [Online Editor](https://support.crowdin.com/online-editor/) -Your native language not in list, we will be glad to support with your help! Please follow below steps +--- + + +### 2. How to add a new language ? + +Your native language not in list, we will be glad to support with your help! Request for it [here](https://github.com/nocodb/nocodb/issues/new?assignees=dstala&labels=i18n+translation&template=i18n-translation-request.md&title=%5Bi18n%5D+Language+support+extension-+%3Clanguage+code%3E). We will be glad to take your help to set up translations -- Make a copy of [Google spreadsheet](https://docs.google.com/spreadsheets/d/1kGp92yLwhs1l7lwwgeor3oN1dFl7JZWuQOa4WSeZ0TE/edit#gid=2076107172) - Screenshot 2022-02-10 at 1 47 06 PM -- Find your language code [here](https://developers.google.com/admin-sdk/directory/v1/languages) -- Replace cell $AB$1 (rightmost, containing text `en`) with language code obtained above. -- Google will generate first version translation in column AB. Review. Make changes as you find appropriate for various items listed. Origin text in ENGLISH can be found in `Column B` of master spreadsheet. -- Create new [issue](https://github.com/nocodb/nocodb/issues/new?assignees=dstala&labels=i18n+translation&template=i18n-translation-request.md&title=%5Bi18n%5D+Language+support+extension-+%3Clanguage+code%3E) request with a link to your spreadsheet from Step-1 (for us to verify & update master spreadsheet). --- -## How to accept i18n contributions ? (for NocoDB maintainers) +# Engineering Contributions (for NocoDB developers & maintainers) -> _This is exclusive to NocoDB maintainers only_ +> _This is exclusive to NocoDB developers & maintainers only_ ### 1. Adding / Updating a string -- Open master [Spreadsheet](https://docs.google.com/spreadsheets/d/1kGp92yLwhs1l7lwwgeor3oN1dFl7JZWuQOa4WSeZ0TE/edit#gid=2076107172) -- For the string/ text under consideration, look-up in existing sheet if it exists already -- [New string already exists] Consider re-using it; align string key if required -- [New string need to be inserted] Insert a new record into appropriate categories as defined below -- Download spreadsheet as .csv (File > Download > Comma-seperated values (.csv, current sheet) -- Use noco-i18n-from-cli to generate new language JSON file -- Copy respective i18n/\*.json files to `nocodb/packages/nc-gui/lang` +### Add / update key-value + - [en] make changes directly to `en.json` & commit to `develop` + - [any other language] add changes using `crowdin` portal; procedure described below + +### 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] +- Update array in `6d_language_validation.js` [scripts/cypress/integration/common/6d_language_validation.js] +#### Crowdin changes [admin only] +- Open `NocoDB` project +- Click on `Language` on the home tab +- Select target language, `Update` + + +![Screenshot 2022-09-08 at 10 52 59 PM](https://user-images.githubusercontent.com/86527202/189186570-5c1c7cad-6d3f-4937-ab4d-fa7ebe022cb1.png) + + +![Screenshot 2022-09-08 at 10 54 04 PM](https://user-images.githubusercontent.com/86527202/189186632-0b9f5f55-0550-4d8f-a8ae-7e9b9076774e.png) + +--- ### 2. String Categories - **General**: simple & common tokens (save, cancel, submit, open, close, home, and such) From 9c12172c027ab0d6b8440fc0e7c1e75d00a21ddd Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Fri, 9 Sep 2022 15:38:33 +0530 Subject: [PATCH 22/54] docs: update content and screenshots for Views --- .../content/en/setup-and-usages/views.md | 79 +++++++++++-------- 1 file changed, 47 insertions(+), 32 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/views.md b/packages/noco-docs/content/en/setup-and-usages/views.md index c003d4bd99..46f72c6a9f 100644 --- a/packages/noco-docs/content/en/setup-and-usages/views.md +++ b/packages/noco-docs/content/en/setup-and-usages/views.md @@ -10,84 +10,99 @@ menuTitle: 'Views' 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 with the same type as you wish, as long as they have unique View names. +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. -![image](https://user-images.githubusercontent.com/35857179/163340916-d1101709-2051-4d0e-9d86-dd14eced49e9.png) +## 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 + +![Screenshot 2022-09-09 at 2 56 15 PM](https://user-images.githubusercontent.com/86527202/189321194-303c4a8c-d9a1-4368-962c-c7596763efb6.png) + ## View Types ### Grid View Grid View, as a default type of view, allows you to display your data in a spreadsheet-like interface. - -![image](https://user-images.githubusercontent.com/35857179/163343433-f6594d6e-5874-45ae-b403-5774247659bb.png) + +![image](https://user-images.githubusercontent.com/86527202/189322133-04bddf2b-c885-49ca-aa8e-2a09ac755555.png) + ### Form View Form View allows you to arrange fields in a form to input data. + +https://user-images.githubusercontent.com/35857179/188585121-94d0260d-6dbd-4e34-9758-a1a3709fc416.png + -![image](https://user-images.githubusercontent.com/35857179/163355269-73d2a9d4-bafb-47c0-8c0d-d0e66503b47a.png) - -You can show and hide some fields using drag-and-drop fashion. +You can drag-drop columns from the form to form-field-menu-bar as requried. -![image](https://user-images.githubusercontent.com/35857179/163355377-6b365472-efae-4f73-a103-5dde7c1f8ea7.png) ### Gallery View Gallery View allows you to display images as thumbnails with other fields just like a gallery. - - - + +![image](https://user-images.githubusercontent.com/86527202/189322216-f8df0b69-5177-4ebc-be28-c11e3efb41a4.png) + + ## View Permission Types -We can apply permission to each View. By default, Collaborative Views will be used. To see or change the view type, check the first icon above the View sidebar. +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. -![image](https://user-images.githubusercontent.com/35857179/163343598-fd81edea-f160-41ee-8bb2-3ef1eee5348d.png) +![Screenshot 2022-09-09 at 3 19 00 PM](https://user-images.githubusercontent.com/86527202/189323062-5be6bd3f-366a-4be2-8de0-df30fcd1808e.png) + -### Collaborative Views - -Collaborative View allows you to work with your collaborators with edit permissions. - -![image](https://user-images.githubusercontent.com/35857179/163343959-7e2f43cb-1a1f-4f36-985c-ca91db262f98.png) +### 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 -Locked View allows you to lock the current View so that no one can edit the View including applying operations such as Sorting or Filtering. +### 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 + -![image](https://user-images.githubusercontent.com/35857179/163343845-b07f9d3f-5a83-4dfd-8d45-9cc59b3512c3.png) ## View Operations + +![Screenshot 2022-09-09 at 3 27 46 PM](https://user-images.githubusercontent.com/86527202/189325592-302054da-a755-4a92-a322-80aed184ca3b.png) -### Create a View -Click '+' in View sidebar. +### Create a View -![image](https://user-images.githubusercontent.com/35857179/163353610-ae85967c-91ac-404f-b3b3-bd122e09f492.png) +Click '+' in View-menu sidebar, as shown in <3>. ### Rename a View -Hover the target View, click the icon and enter the new name. +Double click on `view-name`, edit, . -![image](https://user-images.githubusercontent.com/35857179/163353802-1da52cec-ae17-4ced-8679-62d7180683ec.png) + ### Delete a View -Hover the target View and click the delete icon. +Hover the target View and click the delete icon, as shown in <2>. -You cannot delete the very first Grid View. +You cannot delete the very first Grid View (termed as `Default view`). -![image](https://user-images.githubusercontent.com/35857179/163359795-f4420402-b2a6-41d8-b48c-f0dea8b9abbe.png) + ### Duplicate a View -Hover the target View and click the icon and enter the new name. +Hover the target View and click the copy icon, as shown in <2>. -![image](https://user-images.githubusercontent.com/35857179/163353865-7275499e-c685-44f4-906c-ba08f0ee419e.png) + ### Reorder a View -Hover the target View and re-order it as needed by dragging and dropping the drag icon. +Hover the target View and re-order it as needed by drag-drop the drag icon, as shown in <1>. -![image](https://user-images.githubusercontent.com/35857179/163359674-c4aeff74-1cb4-498d-b79c-c6ddf84ad352.png) + From d68cf8893dd6b663ea23030fc21a494c3a3c8252 Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Fri, 9 Sep 2022 15:49:07 +0530 Subject: [PATCH 23/54] docs: update screenshot for view access-type --- packages/noco-docs/content/en/setup-and-usages/views.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/views.md b/packages/noco-docs/content/en/setup-and-usages/views.md index 46f72c6a9f..e04162c824 100644 --- a/packages/noco-docs/content/en/setup-and-usages/views.md +++ b/packages/noco-docs/content/en/setup-and-usages/views.md @@ -52,7 +52,8 @@ Gallery View allows you to display images as thumbnails with other fields just l 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 19 00 PM](https://user-images.githubusercontent.com/86527202/189323062-5be6bd3f-366a-4be2-8de0-df30fcd1808e.png) +![Screenshot 2022-09-09 at 3 46 33 PM](https://user-images.githubusercontent.com/86527202/189328303-edbf35b5-f793-4e06-9dbf-89d045a38482.png) + ### Collaborative Views (default) From 099eaac6dcaf258efa84ede72308cedabaa38f79 Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Tue, 13 Sep 2022 10:46:51 +0530 Subject: [PATCH 24/54] docs: update content and screenshots for Sync schema --- .../content/en/setup-and-usages/sync-schema.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/sync-schema.md b/packages/noco-docs/content/en/setup-and-usages/sync-schema.md index e1db6d6459..fd7c712e01 100644 --- a/packages/noco-docs/content/en/setup-and-usages/sync-schema.md +++ b/packages/noco-docs/content/en/setup-and-usages/sync-schema.md @@ -8,26 +8,28 @@ menuTitle: '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 environment to others. +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 menu bar, click `Team & Settings` +### 1. From the `Project menu`, click `Team & Settings` -image +image -### 2. Click `Project Metadata` under SETTINGS and click `Metadata` +### 2. Click `Project Metadata` under SETTINGS, access `Metadata` tab -![image](https://user-images.githubusercontent.com/35857179/170427133-09faf93f-a41c-428b-b51c-fefe3fb45d9d.png) +![Screenshot 2022-09-13 at 10 37 17 AM](https://user-images.githubusercontent.com/86527202/189814111-56036958-c6e4-4560-af1e-9443380db080.png) ### 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](https://user-images.githubusercontent.com/35857179/161957119-f66f22ad-9d37-45ed-84ca-35c99726078c.png) +![Screenshot 2022-09-13 at 10 42 12 AM](https://user-images.githubusercontent.com/86527202/189814648-ca28f28d-b0ed-4652-a5da-e6472bfd9407.png) + ### 4. Click `Sync Now` to complete Schema sync procedure -image - #### Notes 1. Column rename operation will be treated like `column delete` & `column create` operation. From 7caf5f5842f2715de9ac19fad8f195eb877c2784 Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Tue, 13 Sep 2022 11:11:12 +0530 Subject: [PATCH 25/54] docs: update content and screenshots for team & auth --- .../en/setup-and-usages/team-and-auth.md | 38 ++++++++++++++----- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/team-and-auth.md b/packages/noco-docs/content/en/setup-and-usages/team-and-auth.md index 22cf8c33b7..fcb5879d47 100644 --- a/packages/noco-docs/content/en/setup-and-usages/team-and-auth.md +++ b/packages/noco-docs/content/en/setup-and-usages/team-and-auth.md @@ -6,16 +6,25 @@ category: 'Product' menuTitle: 'Team & Auth' --- -Team & Auth can be found by clicking `Team & Settings` from the left navigation drawer and clicking `Team & Auth`. +# Accessing Team & Auth +- Click on `Team & Settings` from the `Project Menu` +- Access `Team & Auth` under `Settings` + + +image -![image](https://user-images.githubusercontent.com/35857179/161902474-fd06678c-a171-4237-b171-dc028b3753de.png) -![image](https://user-images.githubusercontent.com/35857179/161902746-aa59b8e5-06d2-4c07-ac60-c82f92b42752.png) +![Screenshot 2022-09-13 at 10 52 55 AM](https://user-images.githubusercontent.com/86527202/189816444-1591fed2-52d5-4031-b462-f1ad2a72df20.png) + ## How to Add a User -1. Go to `Team & Auth`, click on `New User`. - ![image](https://user-images.githubusercontent.com/35857179/161903214-1e0f7ba0-6daf-4073-90c9-9d86a40c9f90.png) +1. Go to `Team & Auth`, click on `Invite Team` + + + ![Screenshot 2022-09-13 at 10 52 55 AM](https://user-images.githubusercontent.com/86527202/189817510-089371d9-1a47-40fa-9dad-0c7b0cea2de0.png) + + 2. Enter the user's `E-mail`. Select `User Role`, and Click `Invite`. @@ -23,14 +32,25 @@ Team & Auth can be found by clicking `Team & Settings` from the left navigation Tip: You can add multiple comma (,) seperated emails - ![image](https://user-images.githubusercontent.com/35857179/161903296-cd6ea0d5-193f-4e66-aa7a-4cfc468216af.png) +![Screenshot 2022-09-13 at 10 54 39 AM](https://user-images.githubusercontent.com/86527202/189817152-83fca866-7713-49ee-8068-d3eba1311353.png) + +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](https://user-images.githubusercontent.com/86527202/189817156-f3dab634-dc25-4f9b-8126-865187aae254.png) + + +## 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 + +![Screenshot 2022-09-13 at 11 06 16 AM](https://user-images.githubusercontent.com/86527202/189818302-80a05245-9dc1-4364-b380-7bd698e5b9e0.png) - If you do not have an SMTP sender configured, make sure to copy the invite link and manually send it to your collaborator. - ![image](https://user-images.githubusercontent.com/35857179/161903764-1c875441-87f4-4b25-a864-441a23c96cea.png) +------ -## User Role Permissions +# User Role Permissions ### Advanced Options & Configurations |                                                     |     Owner    |     Creator     |     Editor    | Commenter |     Viewer    | From 1fd8beeff599929916d781a679d93c77b540f7dc Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Tue, 13 Sep 2022 11:18:36 +0530 Subject: [PATCH 26/54] docs: update content and screenshots for language menu --- .../noco-docs/content/en/setup-and-usages/languages.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/languages.md b/packages/noco-docs/content/en/setup-and-usages/languages.md index 5711e30b91..9365dbdeed 100644 --- a/packages/noco-docs/content/en/setup-and-usages/languages.md +++ b/packages/noco-docs/content/en/setup-and-usages/languages.md @@ -8,12 +8,12 @@ menuTitle: '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. -Click the icon on top right tool bar +Open `Project Menu` (click on project name on left top to access Project menu) -![image](https://user-images.githubusercontent.com/35857179/161960398-a41f9f23-5786-4a1c-a57e-8c166a2785a5.png) +![Screenshot 2022-09-13 at 11 14 02 AM](https://user-images.githubusercontent.com/86527202/189819445-c1a64ebe-2f6d-41f2-97de-473c48945986.png) + -and select the one you prefer. Currently we support the following languages. +and select the one you prefer. -![image](https://user-images.githubusercontent.com/35857179/161960528-fb852ad5-8a12-4fbc-9ad1-7c285980603f.png) -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 +If you want to help translate, please check out i18n. If you want to request a new language, please create an issue on Github. From 0cc1d027ba707e88c43a6441d77ac94a1873ba4d Mon Sep 17 00:00:00 2001 From: mertmit Date: Wed, 14 Sep 2022 01:51:21 +0300 Subject: [PATCH 27/54] fix: gallery card cover image distortion Signed-off-by: mertmit --- packages/nc-gui/components/smartsheet/Gallery.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/nc-gui/components/smartsheet/Gallery.vue b/packages/nc-gui/components/smartsheet/Gallery.vue index 7d2ca2a2c5..674743b872 100644 --- a/packages/nc-gui/components/smartsheet/Gallery.vue +++ b/packages/nc-gui/components/smartsheet/Gallery.vue @@ -144,7 +144,7 @@ openNewRecordFormHook?.on(async () => { From 30237c9a8936fcc9e3380e2d964ac37a14dd794b Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Wed, 14 Sep 2022 09:43:46 +0530 Subject: [PATCH 28/54] @dstala docs: update content and screenshots for airtable import --- ...o-sql-database-within-a-minute-for-free.md | 32 +++++++++++++++---- 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md b/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md index e4f2a77913..4ad02586d2 100644 --- a/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md +++ b/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md @@ -47,10 +47,30 @@ Prerequisites:
- A NocoDB Project
- Airtable Credentials Below are 3 simple steps -1. Go to your Project and Click `Add / Import` and click `Airtable`. - ![image](https://user-images.githubusercontent.com/35857179/168772072-937b037b-32b3-4e5b-b982-5ee4b9a4959c.png) - ![image](https://user-images.githubusercontent.com/35857179/168773192-f3ef9d36-3329-4324-ae25-989b611f66bf.png) +1. Go to your Project, Open `Add / Import` menu and click `Airtable`. + +![Screenshot 2022-09-14 at 9 27 51 AM](https://user-images.githubusercontent.com/86527202/190057053-983126b3-287a-4bc4-a1d8-fa89da8f40f8.png) + + + 2. Input API key & Shared Base ID / URL (retrieved from `Get Airtable Credentials` above). - ![image](https://user-images.githubusercontent.com/35857179/168779663-5bb1dac8-01bd-43fb-8638-318a66a0f4bf.png) -3. Click `Import` and you will see the status. - ![image](https://user-images.githubusercontent.com/35857179/168779906-6163b23e-4bcc-4991-8a77-b2fa94e5dcf3.png) + + - <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 + - Import Formula Columns: disable this option to skip Formula (computation) column import + +![Screenshot 2022-09-14 at 9 30 14 AM](https://user-images.githubusercontent.com/86527202/190057133-92807b16-4f2b-4c58-8bae-a2cfe677ee62.png) + + +3. Click `Import` and you will see the status +4. 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](https://user-images.githubusercontent.com/86527202/190057152-be9ec6cb-e414-465c-8967-d1ad40478ce1.png) + + From e7c7e22e7c4ab14f38d410b5a8280bb571de6f06 Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Wed, 14 Sep 2022 09:46:01 +0530 Subject: [PATCH 29/54] docs: update content and screenshots for airtable import --- .../import-airtable-to-sql-database-within-a-minute-for-free.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md b/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md index 4ad02586d2..32e8bc4e40 100644 --- a/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md +++ b/packages/noco-docs/content/en/setup-and-usages/import-airtable-to-sql-database-within-a-minute-for-free.md @@ -45,7 +45,7 @@ See [here](https://support.airtable.com/hc/en-us/articles/205752117-Creating-a-b Prerequisites:
- A NocoDB Project
- Airtable Credentials
- + Below are 3 simple steps 1. Go to your Project, Open `Add / Import` menu and click `Airtable`. From 84a93b474aeab7cf55719ef1738d28915e03da9f Mon Sep 17 00:00:00 2001 From: Wing-Kam Wong Date: Wed, 14 Sep 2022 12:52:29 +0800 Subject: [PATCH 30/54] fix(nc-gui): make checkbox visible on hover & more easy to tick --- packages/nc-gui/components/cell/Checkbox.vue | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/nc-gui/components/cell/Checkbox.vue b/packages/nc-gui/components/cell/Checkbox.vue index 0705a02495..abc49e68d5 100644 --- a/packages/nc-gui/components/cell/Checkbox.vue +++ b/packages/nc-gui/components/cell/Checkbox.vue @@ -42,9 +42,15 @@ function onClick() {