Browse Source

chore: lint

pull/7268/head
Pranav C 8 months ago
parent
commit
788ae8d84e
  1. 23
      packages/nc-gui/components/smartsheet/column/FormulaOptions.vue
  2. 2
      packages/nocodb-sdk/src/lib/formulaHelpers.ts
  3. 2
      packages/nocodb/src/meta/migrations/XcMigrationSourcev2.ts

23
packages/nc-gui/components/smartsheet/column/FormulaOptions.vue

@ -53,26 +53,31 @@ const meta = inject(MetaInj, ref())
const supportedColumns = computed( const supportedColumns = computed(
() => meta?.value?.columns?.filter((col) => !uiTypesNotSupportedInFormulas.includes(col.uidt as UITypes)) || [], () => meta?.value?.columns?.filter((col) => !uiTypesNotSupportedInFormulas.includes(col.uidt as UITypes)) || [],
) )
const { metas, getMeta } = useMetas() const { getMeta } = useMetas()
const validators = { const validators = {
formula_raw: [ formula_raw: [
{ {
validator: (_: any, formula: any) => { validator: (_: any, formula: any) => {
return new Promise<void>(async (resolve, reject) => { return (async () => {
if (!formula?.trim()) return reject(new Error('Required')) if (!formula?.trim()) throw new Error('Required')
try { try {
await validateFormulaAndExtractTreeWithType({ column: column.value, formula, columns: supportedColumns.value, clientOrSqlUi: sqlUi.value, getMeta }) await validateFormulaAndExtractTreeWithType({
column: column.value,
formula,
columns: supportedColumns.value,
clientOrSqlUi: sqlUi.value,
getMeta,
})
} catch (e: any) { } catch (e: any) {
if (e instanceof FormulaError && e.extra?.key) { if (e instanceof FormulaError && e.extra?.key) {
return reject(new Error(t(e.extra.key, e.extra))) throw new Error(t(e.extra.key, e.extra))
} }
return reject(new Error(e.message)) throw new Error(e.message)
} }
resolve() })()
})
}, },
}, },
], ],

2
packages/nocodb-sdk/src/lib/formulaHelpers.ts

@ -241,7 +241,7 @@ export function jsepTreeToFormula(node, isCallExpId = false) {
function escapeLiteral(v: string) { function escapeLiteral(v: string) {
return ( return (
v v
// replace \ to \\ // replace \ to \\, escape only unescaped \
.replace(/([^\\]|^)\\(?!\\)/g, `$1\\\\`) .replace(/([^\\]|^)\\(?!\\)/g, `$1\\\\`)
// replace " to \" // replace " to \"
.replace(/([^\\]|^)"/g, `$1\\"`) .replace(/([^\\]|^)"/g, `$1\\"`)

2
packages/nocodb/src/meta/migrations/XcMigrationSourcev2.ts

@ -60,7 +60,7 @@ export default class XcMigrationSourcev2 {
'nc_035_add_username_to_users', 'nc_035_add_username_to_users',
'nc_036_base_deleted', 'nc_036_base_deleted',
'nc_037_rename_project_and_base', 'nc_037_rename_project_and_base',
'nc_038_formula_parsed_tree_column' 'nc_038_formula_parsed_tree_column',
]); ]);
} }

Loading…
Cancel
Save