(core) add docs.options column to home db to store doc description, icon, openMode

Summary:
Bundles some new document options into a JSON column.
The icon option is treated somewhat gingerly.  It is intended, at
least initially, to store an image thumbnail for a document as a
url to hand-prepared assets (for examples and templates), so it is
locked down to a particular url prefix to avoid opening the door to
mischief.

Test Plan: added test

Reviewers: georgegevoian

Reviewed By: georgegevoian

Differential Revision: https://phab.getgrist.com/D2916
This commit is contained in:
Paul Fitzpatrick
2021-07-15 17:38:21 -04:00
parent e5eeb3ec80
commit 997be24a21
4 changed files with 76 additions and 3 deletions

View File

@@ -0,0 +1,17 @@
import { nativeValues } from 'app/gen-server/lib/values';
import { MigrationInterface, QueryRunner, TableColumn } from 'typeorm';
export class DocOptions1626369037484 implements MigrationInterface {
public async up(queryRunner: QueryRunner): Promise<any> {
await queryRunner.addColumn('docs', new TableColumn({
name: 'options',
type: nativeValues.jsonType,
isNullable: true,
}));
}
public async down(queryRunner: QueryRunner): Promise<any> {
await queryRunner.dropColumn('docs', 'options');
}
}