-
+
+
-
-
{{ rowObj[columnObj._cn] }}
@@ -227,7 +231,7 @@
+ :key="i + '_' + idCol + '_div'">
@@ -301,7 +305,7 @@
import HeaderCell from "@/components/project/spreadsheet/components/headerCell";
import EditableCell from "@/components/project/spreadsheet/components/editableCell";
import EditColumn from "@/components/project/spreadsheet/components/editColumn";
-import TableCell from "@/components/project/spreadsheet/components/tableCell";
+import TableCell from "@/components/project/spreadsheet/components/cell";
import colors from "@/mixins/colors";
import columnStyling from "@/components/project/spreadsheet/helpers/columnStyling";
import HasManyCell from "@/components/project/spreadsheet/components/virtualCell/hasManyCell";
@@ -398,6 +402,15 @@ export default {
case 13:
this.makeEditable(this.selected.col, this.selected.row)
break;
+ default: {
+ if (this.editEnabled.col != null && this.editEnabled.row != null) {
+ return;
+ }
+ console.log(this.selected, this.data[this.selected.row], this.availableColumns[this.selected.col], '')
+ this.$set(this.data[this.selected.row].row, this.availableColumns[this.selected.col]._cn, '')
+ this.editEnabled = {...this.selected}
+ }
+
}
},
onNewColCreation() {
@@ -411,8 +424,8 @@ export default {
showRowContextMenu($event, rowObj, rowMeta, row) {
this.$emit('showRowContextMenu', $event, rowObj, rowMeta, row)
},
- onCellValueChange(col, row, column) {
- this.$emit('onCellValueChange', col, row, column)
+ onCellValueChange(col, row, column, ev) {
+ this.$emit('onCellValueChange', col, row, column, ev);
},
addNewRelationTab(...args) {
this.$emit('addNewRelationTab', ...args)
@@ -743,6 +756,10 @@ tbody tr:hover {
.cell {
font-size: 13px;
+
+ &.required {
+ box-shadow: inset 0 0 0 1px red;
+ }
}
th::before {
diff --git a/packages/nc-gui/config/vuetify.options.js b/packages/nc-gui/config/vuetify.options.js
index 66f19c0f3e..dc85b53382 100644
--- a/packages/nc-gui/config/vuetify.options.js
+++ b/packages/nc-gui/config/vuetify.options.js
@@ -18,13 +18,17 @@ export default function ({app}) {
primary: '#0989ff',
'x-active': '#e91e63',
textColor: '#ffffff',
- backgroundColor: '#363636',
+ text: '#ffffff',
+ textLight: '#b3b3b3',
+ backgroundColor: '#969696',
backgroundColorDefault: '#1f1f1f'
},
light: {
primary: '#0989ff',
'x-active': '#e91e63',
textColor: '#333333',
+ text: '#333333',
+ textLight: '#929292',
backgroundColor: '#f7f7f7',
backgroundColorDefault: '#ffffff',
}
diff --git a/packages/nocodb/src/lib/noco/common/BaseApiBuilder.ts b/packages/nocodb/src/lib/noco/common/BaseApiBuilder.ts
index a9d0807974..b851f5647a 100644
--- a/packages/nocodb/src/lib/noco/common/BaseApiBuilder.ts
+++ b/packages/nocodb/src/lib/noco/common/BaseApiBuilder.ts
@@ -1551,7 +1551,12 @@ export default abstract class BaseApiBuilder implements XcDynami
// Update metadata of tables which have manytomany relation
// and recreate basemodel with new meta information
for (const meta of metas) {
- meta.v = [...meta.v, ...meta.manyToMany.map(mm => ({mm, _cn:`${mm._tn} <=> ${mm._rtn}`}))]
+ meta.v = [
+ ...meta.v.filter(vc => vc.bt && meta.manyToMany.some(mm => vc.bt.rtn === mm.vtn)),
+ ...meta.manyToMany.map(mm => ({
+ mm,
+ _cn: `${mm._tn} <=> ${mm._rtn}`
+ }))]
await this.xcMeta.metaUpdate(this.projectId, this.dbAlias, 'nc_models', {
meta: JSON.stringify(meta)
}, {title: meta.tn})
|