From dec3adefebd18000fd0d371cf3a48247126dcdcf Mon Sep 17 00:00:00 2001 From: Andrey Platov Date: Thu, 19 Aug 2021 09:36:12 +0200 Subject: [PATCH] initial `workspace` contribution Signed-off-by: Andrey Platov --- cloud/app/index.ts | 10 + common/config/rush/pnpm-lock.yaml | 69 +- dev/prod/.env | 2 + rush.json | 5 + server/mongo/package.json | 2 +- server/mongo/src/storage.ts | 2 +- server/workspace/.eslintrc.js | 6 + server/workspace/.npmignore | 4 + server/workspace/config/rig.json | 18 + server/workspace/package.json | 26 + server/workspace/src/__create.ts | 36 + server/workspace/src/index.ts | 35 + server/workspace/src/model.tx.json | 1165 ++++++++++++++++++++++++++++ server/workspace/tsconfig.json | 8 + 14 files changed, 1380 insertions(+), 8 deletions(-) create mode 100644 server/workspace/.eslintrc.js create mode 100644 server/workspace/.npmignore create mode 100644 server/workspace/config/rig.json create mode 100644 server/workspace/package.json create mode 100644 server/workspace/src/__create.ts create mode 100644 server/workspace/src/index.ts create mode 100644 server/workspace/src/model.tx.json create mode 100644 server/workspace/tsconfig.json diff --git a/cloud/app/index.ts b/cloud/app/index.ts index 63356db3ec..ada806f346 100644 --- a/cloud/app/index.ts +++ b/cloud/app/index.ts @@ -265,3 +265,13 @@ new aws.route53.Record("targetDomain", { evaluateTargetHealth: true, }], }) + +new aws.route53.Record("databaseRecord", { + name: "db.hc.engineering", + zoneId: zoneId, + type: "CNAME", + ttl: 300, + records: [ + "xored.com" + ] +}) diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 0ca1dd79dd..0c2879a855 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -57,6 +57,7 @@ specifiers: '@rush-temp/view-resources': file:./projects/view-resources.tgz '@rush-temp/workbench': file:./projects/workbench.tgz '@rush-temp/workbench-resources': file:./projects/workbench-resources.tgz + '@rush-temp/workspace': file:./projects/workspace.tgz '@rushstack/heft': ^0.35.0 '@rushstack/heft-jest-plugin': ~0.1.15 '@tiptap/core': ~2.0.0-beta.93 @@ -88,6 +89,7 @@ specifiers: file-loader: ^6.2.0 intl-messageformat: ^9.7.1 mini-css-extract-plugin: ^2.2.0 + mongodb: ^4.1.0 node-html-parser: ^4.1.3 postcss: ^8.3.4 postcss-load-config: ^3.1.0 @@ -165,6 +167,7 @@ dependencies: '@rush-temp/view-resources': file:projects/view-resources.tgz_c38cf1a7a413db8918b0b4754c21e4c5 '@rush-temp/workbench': file:projects/workbench.tgz_6c259fadfeb3a4b20890aefe87070b8b '@rush-temp/workbench-resources': file:projects/workbench-resources.tgz_c38cf1a7a413db8918b0b4754c21e4c5 + '@rush-temp/workspace': file:projects/workspace.tgz_6c259fadfeb3a4b20890aefe87070b8b '@rushstack/heft': 0.35.0 '@rushstack/heft-jest-plugin': 0.1.15_@rushstack+heft@0.35.0 '@tiptap/core': 2.0.0-beta.93 @@ -196,6 +199,7 @@ dependencies: file-loader: 6.2.0_webpack@5.48.0 intl-messageformat: 9.8.1 mini-css-extract-plugin: 2.2.0_webpack@5.48.0 + mongodb: 4.1.0 node-html-parser: 4.1.3 postcss: 8.3.6 postcss-load-config: 3.1.0 @@ -7921,10 +7925,40 @@ packages: webpack: 5.48.0_webpack-cli@4.7.2 dev: false - /ts-node/10.2.0_dea0625f6d31b223e93dc3dc354b8b43: + /ts-node/10.2.0_typescript@4.3.5: resolution: {integrity: sha512-FstYHtQz6isj8rBtYMN4bZdnXN1vq4HCbqn9vdNQcInRqtB86PePJQIxE6es0PhxKWhj2PHuwbG40H+bxkZPmg==} engines: {node: '>=12.0.0'} hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + dependencies: + '@cspotcode/source-map-support': 0.6.1 + '@tsconfig/node10': 1.0.8 + '@tsconfig/node12': 1.0.9 + '@tsconfig/node14': 1.0.1 + '@tsconfig/node16': 1.0.2 + acorn: 8.4.1 + acorn-walk: 8.1.1 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 4.3.5 + yn: 3.1.1 + dev: false + + /ts-node/10.2.1_dea0625f6d31b223e93dc3dc354b8b43: + resolution: {integrity: sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==} + engines: {node: '>=12.0.0'} + hasBin: true peerDependencies: '@swc/core': '>=1.2.50' '@swc/wasm': '>=1.2.50' @@ -7952,8 +7986,8 @@ packages: yn: 3.1.1 dev: false - /ts-node/10.2.0_typescript@4.3.5: - resolution: {integrity: sha512-FstYHtQz6isj8rBtYMN4bZdnXN1vq4HCbqn9vdNQcInRqtB86PePJQIxE6es0PhxKWhj2PHuwbG40H+bxkZPmg==} + /ts-node/10.2.1_typescript@4.3.5: + resolution: {integrity: sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==} engines: {node: '>=12.0.0'} hasBin: true peerDependencies: @@ -9011,7 +9045,7 @@ packages: eslint-plugin-import: 2.23.4_eslint@7.32.0 eslint-plugin-node: 11.1.0_eslint@7.32.0 eslint-plugin-promise: 4.3.1 - ts-node: 10.2.0_dea0625f6d31b223e93dc3dc354b8b43 + ts-node: 10.2.1_dea0625f6d31b223e93dc3dc354b8b43 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' @@ -9232,7 +9266,7 @@ packages: dev: false file:projects/mongo.tgz_6c259fadfeb3a4b20890aefe87070b8b: - resolution: {integrity: sha512-Md5isVURIKezm/PnDMtKsG8cpMRLnyb5ZC8zCBOGpzpI2q504y1di6tCoc2HTcN9eozPLbVJGB1DN8ZNYJ/8Hw==, tarball: file:projects/mongo.tgz} + resolution: {integrity: sha512-dJ6IHM1JlZuVfPvsg4HN79OwBcDn+F0MLrXPSCe96a/ZfQfe3yw4rCnqZBLQT7+Mqc8UmGQW8aR/YuiGNa9auQ==, tarball: file:projects/mongo.tgz} id: file:projects/mongo.tgz name: '@rush-temp/mongo' version: 0.0.0 @@ -9666,7 +9700,7 @@ packages: eslint-plugin-promise: 4.3.1 express: 4.17.1 express-fileupload: 1.2.1 - ts-node: 10.2.0_dea0625f6d31b223e93dc3dc354b8b43 + ts-node: 10.2.1_dea0625f6d31b223e93dc3dc354b8b43 uuid: 8.3.2 transitivePeerDependencies: - '@swc/core' @@ -9763,3 +9797,26 @@ packages: - supports-color - typescript dev: false + + file:projects/workspace.tgz_6c259fadfeb3a4b20890aefe87070b8b: + resolution: {integrity: sha512-pWnn59hoagFEU+9zoCfk37thS081NkywXU6pDVWPcrjkHS6HBnWUmyE90XlcJn3zzWgwK7l8tWA37SGQdaPZWw==, tarball: file:projects/workspace.tgz} + id: file:projects/workspace.tgz + name: '@rush-temp/workspace' + version: 0.0.0 + dependencies: + '@types/heft-jest': 1.0.2 + '@typescript-eslint/eslint-plugin': 4.28.5_a8e83fcad666e1ba86be4b2e27a20aea + eslint: 7.32.0 + eslint-plugin-import: 2.23.4_eslint@7.32.0 + eslint-plugin-node: 11.1.0_eslint@7.32.0 + eslint-plugin-promise: 4.3.1 + mongodb: 4.1.0 + ts-node: 10.2.1_typescript@4.3.5 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - '@typescript-eslint/parser' + - supports-color + - typescript + dev: false diff --git a/dev/prod/.env b/dev/prod/.env index 5a5fa69641..b43dca119b 100644 --- a/dev/prod/.env +++ b/dev/prod/.env @@ -4,3 +4,5 @@ ACCOUNTS_URL=/account UPLOAD_URL=/upload LOGIN_TOKEN=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6InJvc2FtdW5kQGhjLmVuZ2luZWVyaW5nIiwid29ya3NwYWNlIjoid3MxIn0.crxqT7QUkpZiTmmxouB40LpMwK2CfTf76XqPFWIMyic LOGIN_ENDPOINT=ws://localhost:3333 + +X=ZfVAdSSnw9myvd70 diff --git a/rush.json b/rush.json index 91fdb482e2..1897aba9aa 100644 --- a/rush.json +++ b/rush.json @@ -721,5 +721,10 @@ "projectFolder": "server/mongo", "shouldPublish": true }, + { + "packageName": "@anticrm/workspace", + "projectFolder": "server/workspace", + "shouldPublish": true + }, ] } diff --git a/server/mongo/package.json b/server/mongo/package.json index 8e714445bf..7bc0b53366 100644 --- a/server/mongo/package.json +++ b/server/mongo/package.json @@ -21,6 +21,6 @@ "@anticrm/core": "~0.6.10", "@anticrm/platform": "~0.6.5", "@anticrm/server-core": "~0.6.0", - "mongodb": "~4.1.0" + "mongodb": "^4.1.0" } } diff --git a/server/mongo/src/storage.ts b/server/mongo/src/storage.ts index 23ab12e8d4..ebc7b1dcee 100644 --- a/server/mongo/src/storage.ts +++ b/server/mongo/src/storage.ts @@ -96,7 +96,7 @@ export async function createStorage (url: string, dbName: string): Promise({}).toArray() + const txes = await db.collection(DOMAIN_TX).find({ objectSpace: core.space.Model }).toArray() for (const tx of txes) { hierarchy.tx(tx) await triggers.tx(tx) diff --git a/server/workspace/.eslintrc.js b/server/workspace/.eslintrc.js new file mode 100644 index 0000000000..89f8151bd4 --- /dev/null +++ b/server/workspace/.eslintrc.js @@ -0,0 +1,6 @@ +module.exports = { + extends: ['./node_modules/@anticrm/platform-rig/profiles/default/config/eslint.config.json'], + parserOptions: { + project: './tsconfig.json' + } +} \ No newline at end of file diff --git a/server/workspace/.npmignore b/server/workspace/.npmignore new file mode 100644 index 0000000000..e3ec093c38 --- /dev/null +++ b/server/workspace/.npmignore @@ -0,0 +1,4 @@ +* +!/lib/** +!CHANGELOG.md +/lib/**/__tests__/ diff --git a/server/workspace/config/rig.json b/server/workspace/config/rig.json new file mode 100644 index 0000000000..af1257a896 --- /dev/null +++ b/server/workspace/config/rig.json @@ -0,0 +1,18 @@ +// The "rig.json" file directs tools to look for their config files in an external package. +// Documentation for this system: https://www.npmjs.com/package/@rushstack/rig-package +{ + "$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json", + + /** + * (Required) The name of the rig package to inherit from. + * It should be an NPM package name with the "-rig" suffix. + */ + "rigPackageName": "@anticrm/platform-rig" + + /** + * (Optional) Selects a config profile from the rig package. The name must consist of + * lowercase alphanumeric words separated by hyphens, for example "sample-profile". + * If omitted, then the "default" profile will be used." + */ + // "rigProfile": "your-profile-name" +} diff --git a/server/workspace/package.json b/server/workspace/package.json new file mode 100644 index 0000000000..727a0d7d23 --- /dev/null +++ b/server/workspace/package.json @@ -0,0 +1,26 @@ +{ + "name": "@anticrm/workspace", + "version": "0.6.0", + "main": "lib/index.js", + "author": "Anticrm Platform Contributors", + "license": "EPL-2.0", + "scripts": { + "create": "ts-node src/__create.ts", + "build": "heft build", + "lint:fix": "eslint --fix src" + }, + "devDependencies": { + "@anticrm/platform-rig":"~0.6.0", + "@types/heft-jest":"^1.0.2", + "@typescript-eslint/eslint-plugin":"4", + "eslint-plugin-import":"2", + "eslint-plugin-promise":"4", + "eslint-plugin-node":"11", + "eslint":"^7.32.0", + "ts-node":"^10.2.1" + }, + "dependencies": { + "@anticrm/core": "~0.6.10", + "mongodb": "^4.1.0" + } +} diff --git a/server/workspace/src/__create.ts b/server/workspace/src/__create.ts new file mode 100644 index 0000000000..f73f9c3e10 --- /dev/null +++ b/server/workspace/src/__create.ts @@ -0,0 +1,36 @@ +// +// Copyright © 2020, 2021 Anticrm Platform Contributors. +// Copyright © 2021 Hardcore Engineering Inc. +// +// Licensed under the Eclipse Public License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. You may +// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import { createModel } from '.' + +const url = process.env.MONGO_URL +if (url === undefined) { + console.error('please provide mongodb url.') + process.exit(1) +} + +const db = process.argv[2] +if (db === undefined) { + console.error('Please specify the database.') + process.exit(1) +} + +console.log('creating model...') +createModel(url, db).then(rows => { + console.log(`done, ${rows} rows inserted.`) +}).catch(error => { console.error(error) }) + +// mongodb+srv://dbUser:ZfVAdSSnw9myvd70@cluster0.fyeho.mongodb.net/?retryWrites=true&w=majority \ No newline at end of file diff --git a/server/workspace/src/index.ts b/server/workspace/src/index.ts new file mode 100644 index 0000000000..70f6176e02 --- /dev/null +++ b/server/workspace/src/index.ts @@ -0,0 +1,35 @@ +// +// Copyright © 2020, 2021 Anticrm Platform Contributors. +// Copyright © 2021 Hardcore Engineering Inc. +// +// Licensed under the Eclipse Public License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. You may +// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// +// See the License for the specific language governing permissions and +// limitations under the License. +// + +import { MongoClient, Document } from 'mongodb' +import { DOMAIN_TX } from '@anticrm/core' + +import * as txJson from './model.tx.json' + +/** + * @public + */ +export async function createModel (url: string, dbName: string): Promise { + const client = new MongoClient(url) + try { + await client.connect() + const db = client.db(dbName) + const result = await db.collection(DOMAIN_TX).insertMany(txJson as Document[]) + return result.insertedCount + } finally { + client.close() + } +} diff --git a/server/workspace/src/model.tx.json b/server/workspace/src/model.tx.json new file mode 100644 index 0000000000..00d033c741 --- /dev/null +++ b/server/workspace/src/model.tx.json @@ -0,0 +1,1165 @@ +[ + { + "_id": "611d2d25131730f65a01979e", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Obj", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0 + } + }, + { + "_id": "611d2d25131730f65a01979f", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Doc", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Obj" + } + }, + { + "_id": "611d2d25131730f65a0197a0", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Type", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197a1", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:TypeString", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Type" + } + }, + { + "_id": "611d2d25131730f65a0197a2", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Attribute", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197a3", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Account", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197a4", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Space", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197a5", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Tx", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "tx", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197a6", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:TxCUD", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Tx" + } + }, + { + "_id": "611d2d25131730f65a0197a7", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:TxUpdateDoc", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:TxCUD" + } + }, + { + "_id": "611d2d25131730f65a0197a8", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:TxMixin", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:TxCUD" + } + }, + { + "_id": "611d2d25131730f65a0197a9", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:TxCreateDoc", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:TxCUD" + } + }, + { + "_id": "611d2d25131730f65a0197aa", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Class", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197ab", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "core:class:Mixin", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053653, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Class" + } + }, + { + "_id": "611d2d25131730f65a0197ac", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "view:class:Viewlet", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197ad", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "view:class:ViewletDescriptor", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197ae", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "view:mixin:AttributePresenter", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Class" + } + }, + { + "_id": "611d2d25131730f65a0197af", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "view:mixin:AttributeEditor", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Class" + } + }, + { + "_id": "611d2d25131730f65a0197b0", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053654, + "objectId": "core:class:TypeString", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "view:mixin:AttributeEditor", + "attributes": { + "editor": "view:component:StringEditor" + } + }, + { + "_id": "611d2d25131730f65a0197b1", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053654, + "objectId": "core:class:TypeString", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "view:mixin:AttributePresenter", + "attributes": { + "presenter": "view:component:StringPresenter" + } + }, + { + "_id": "611d2d25131730f65a0197b2", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "view:viewlet:Table", + "objectClass": "view:class:ViewletDescriptor", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "label": "Table", + "icon": "view:icon:Table", + "component": "view:component:TableView" + } + }, + { + "_id": "611d2d25131730f65a0197b3", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "workbench:mixin:SpaceView", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Class" + } + }, + { + "_id": "611d2d25131730f65a0197b4", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "workbench:class:Application", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197b5", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "contact:class:Contact", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "contact", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197b6", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "contact:class:Person", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "contact:class:Contact", + "label": "Person" + } + }, + { + "_id": "611d2d25131730f65a0197b7", + "objectId": "611d2d25131730f65a0197b8", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053448, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "firstName", + "label": "First name", + "attributeOf": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197b9", + "objectId": "611d2d25131730f65a0197ba", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053448, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "lastName", + "label": "Last name", + "attributeOf": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197bb", + "objectId": "611d2d25131730f65a0197bc", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053448, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "email", + "label": "Email", + "attributeOf": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197bd", + "objectId": "611d2d25131730f65a0197be", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053448, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "phone", + "label": "Phone", + "attributeOf": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197bf", + "objectId": "611d2d25131730f65a0197c0", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053448, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "city", + "label": "City", + "attributeOf": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197c1", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "contact:class:Employee", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "contact:class:Person" + } + }, + { + "_id": "611d2d25131730f65a0197c2", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "contact:class:Organization", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "contact:class:Contact" + } + }, + { + "_id": "611d2d25131730f65a0197c3", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "contact:space:Employee", + "objectClass": "core:class:Space", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "name": "Employees", + "description": "Employees", + "private": false, + "members": [] + } + }, + { + "_id": "611d2d25131730f65a0197c4", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053654, + "objectId": "contact:class:Person", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "view:mixin:AttributePresenter", + "attributes": { + "presenter": "contact:component:PersonPresenter" + } + }, + { + "_id": "611d2d25131730f65a0197c5", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "chunter:class:Comment", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "comment", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197c6", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "chunter:class:Backlink", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "chunter:class:Comment" + } + }, + { + "_id": "611d2d25131730f65a0197c7", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "chunter:class:Message", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "chunter", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197c8", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "chunter:class:Channel", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053654, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Space", + "label": "chunter:string:Channel", + "icon": "chunter:icon:Hashtag" + } + }, + { + "_id": "611d2d25131730f65a0197c9", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053655, + "objectId": "chunter:class:Channel", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "workbench:mixin:SpaceView", + "attributes": { + "view": { + "class": "chunter:class:Message" + } + } + }, + { + "_id": "611d2d25131730f65a0197ca", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "chunter:viewlet:Chat", + "objectClass": "view:class:ViewletDescriptor", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "label": "Chat", + "icon": "view:icon:Table", + "component": "chunter:component:ChannelView" + } + }, + { + "_id": "611d2d25131730f65a0197cb", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197cc", + "objectClass": "view:class:Viewlet", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "attachTo": "chunter:class:Message", + "descriptor": "chunter:viewlet:Chat", + "open": "X", + "config": {} + } + }, + { + "_id": "611d2d25131730f65a0197cd", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197ce", + "objectClass": "workbench:class:Application", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "label": "chunter:string:ApplicationLabelChunter", + "icon": "chunter:icon:Chunter", + "navigatorModel": { + "spaces": [ + { + "label": "chunter:string:Channels", + "spaceClass": "chunter:class:Channel", + "addSpaceLabel": "chunter:string:CreateChannel", + "createComponent": "chunter:component:CreateChannel" + } + ] + } + } + }, + { + "_id": "611d2d25131730f65a0197cf", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197d0", + "objectClass": "chunter:class:Channel", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "name": "general", + "description": "General Channel", + "private": false, + "members": [] + } + }, + { + "_id": "611d2d25131730f65a0197d1", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197d2", + "objectClass": "chunter:class:Channel", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "name": "random", + "description": "Random Talks", + "private": false, + "members": [] + } + }, + { + "_id": "611d2d25131730f65a0197d3", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "task:class:Task", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197d4", + "objectId": "611d2d25131730f65a0197d5", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053498, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "title", + "label": "Title", + "attributeOf": "task:class:Task" + } + }, + { + "_id": "611d2d25131730f65a0197d6", + "objectId": "611d2d25131730f65a0197d7", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053498, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "description", + "label": "Description", + "attributeOf": "task:class:Task" + } + }, + { + "_id": "611d2d25131730f65a0197d8", + "objectId": "611d2d25131730f65a0197d9", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053498, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "assignee", + "label": "Assignee", + "attributeOf": "task:class:Task" + } + }, + { + "_id": "611d2d25131730f65a0197da", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "task:class:Project", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Space", + "label": "Project", + "icon": "task:icon:Task" + } + }, + { + "_id": "611d2d25131730f65a0197db", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053655, + "objectId": "task:class:Project", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "workbench:mixin:SpaceView", + "attributes": { + "view": { + "class": "task:class:Task", + "createItemDialog": "task:component:CreateTask" + } + } + }, + { + "_id": "611d2d25131730f65a0197dc", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197dd", + "objectClass": "view:class:Viewlet", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "attachTo": "task:class:Task", + "descriptor": "view:viewlet:Table", + "open": "ZX", + "options": { + "lookup": { + "assignee": "contact:class:Employee" + } + }, + "config": [ + "title", + "$lookup.assignee" + ] + } + }, + { + "_id": "611d2d25131730f65a0197de", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197df", + "objectClass": "workbench:class:Application", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "label": "task:string:ApplicationLabelTask", + "icon": "task:icon:Task", + "navigatorModel": { + "spaces": [ + { + "label": "task:string:Projects", + "spaceClass": "task:class:Project", + "addSpaceLabel": "task:string:CreateProject", + "createComponent": "task:component:CreateProject" + } + ] + } + } + }, + { + "_id": "611d2d25131730f65a0197e0", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197e1", + "objectClass": "task:class:Project", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "name": "demo", + "description": "Demo Project", + "private": false, + "members": [] + } + }, + { + "_id": "611d2d25131730f65a0197e2", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "recruit:class:Applicant", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "recruit", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197e3", + "objectId": "611d2d25131730f65a0197e4", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053609, + "objectSpace": "core:space:Model", + "objectClass": "core:class:Attribute", + "attributes": { + "type": { + "_class": "core:class:TypeString" + }, + "name": "candidate", + "label": "Candidate", + "attributeOf": "recruit:class:Applicant" + } + }, + { + "_id": "611d2d25131730f65a0197e5", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "recruit:class:Candidate", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "contact:class:Person", + "label": "Candidate" + } + }, + { + "_id": "611d2d25131730f65a0197e6", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "recruit:class:Candidates", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Space", + "label": "recruit:string:CandidatePools", + "icon": "recruit:icon:RecruitApplication" + } + }, + { + "_id": "611d2d25131730f65a0197e7", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "recruit:class:Vacancy", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "kind": 0, + "extends": "core:class:Space", + "label": "recruit:string:Vacancy", + "icon": "recruit:icon:Vacancy" + } + }, + { + "_id": "611d2d25131730f65a0197e8", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053655, + "objectId": "recruit:class:Vacancy", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "workbench:mixin:SpaceView", + "attributes": { + "view": { + "class": "recruit:class:Applicant", + "createItemDialog": "recruit:component:CreateApplication" + } + } + }, + { + "_id": "611d2d25131730f65a0197e9", + "_class": "core:class:TxMixin", + "space": "core:space:Tx", + "modifiedBy": "core:account:System", + "modifiedOn": 1629302053655, + "objectId": "recruit:class:Candidates", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "mixin": "workbench:mixin:SpaceView", + "attributes": { + "view": { + "class": "recruit:class:Candidate", + "createItemDialog": "recruit:component:CreateCandidate" + } + } + }, + { + "_id": "611d2d25131730f65a0197ea", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197eb", + "objectClass": "workbench:class:Application", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "label": "recruit:string:RecruitApplication", + "icon": "recruit:icon:RecruitApplication", + "navigatorModel": { + "spaces": [ + { + "label": "recruit:string:Vacancies", + "spaceClass": "recruit:class:Vacancy", + "addSpaceLabel": "recruit:string:CreateVacancy", + "createComponent": "recruit:component:CreateVacancy" + }, + { + "label": "recruit:string:CandidatePools", + "spaceClass": "recruit:class:Candidates", + "addSpaceLabel": "recruit:string:CreateCandidates", + "createComponent": "recruit:component:CreateCandidates" + } + ] + } + } + }, + { + "_id": "611d2d25131730f65a0197ec", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "recruit:space:CandidatesPublic", + "objectClass": "recruit:class:Candidates", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "name": "public", + "description": "Public Candidates", + "private": false, + "members": [] + } + }, + { + "_id": "611d2d25131730f65a0197ed", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197ee", + "objectClass": "view:class:Viewlet", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "attachTo": "recruit:class:Candidate", + "descriptor": "view:viewlet:Table", + "open": "recruit:component:EditCandidate", + "config": [ + "", + "email", + "phone", + "city" + ] + } + }, + { + "_id": "611d2d25131730f65a0197ef", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197f0", + "objectClass": "view:class:Viewlet", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "attachTo": "recruit:class:Applicant", + "descriptor": "view:viewlet:Table", + "open": "recruit:component:EditCandidate", + "options": { + "lookup": { + "candidate": "recruit:class:Candidate" + } + }, + "config": [ + "$lookup.candidate", + "$lookup.candidate.email", + "$lookup.candidate.city" + ] + } + }, + { + "_id": "611d2d25131730f65a0197f1", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "server-core:class:Trigger", + "objectClass": "core:class:Class", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "domain": "model", + "kind": 0, + "extends": "core:class:Doc" + } + }, + { + "_id": "611d2d25131730f65a0197f2", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197f3", + "objectClass": "server-core:class:Trigger", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "trigger": "server-chunter:trigger:OnMessage" + } + }, + { + "_id": "611d2d25131730f65a0197f4", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197f5", + "objectClass": "contact:class:Employee", + "objectSpace": "contact:space:Employee", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "firstName": "Rosamund", + "lastName": "Chen", + "email": "rosamund@hc.engineering", + "phone": "+1 655 912 3424", + "city": "Mountain View" + } + }, + { + "_id": "611d2d25131730f65a0197f6", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197f7", + "objectClass": "core:class:Account", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "email": "rosamund@hc.engineering" + } + }, + { + "_id": "611d2d25131730f65a0197f8", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197f9", + "objectClass": "contact:class:Employee", + "objectSpace": "contact:space:Employee", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "firstName": "Elon", + "lastName": "Musk", + "email": "elon@hc.engineering", + "phone": "+1 655 843 3453", + "city": "Bel Air" + } + }, + { + "_id": "611d2d25131730f65a0197fa", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197fb", + "objectClass": "core:class:Account", + "objectSpace": "core:space:Model", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "email": "elon@hc.engineering" + } + }, + { + "_id": "611d2d25131730f65a0197fc", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197fd", + "objectClass": "recruit:class:Candidate", + "objectSpace": "recruit:space:CandidatesPublic", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "firstName": "Andrey", + "lastName": "P.", + "email": "andrey@hc.engineering", + "phone": "+1 646 667 6832", + "city": "Monte Carlo" + } + }, + { + "_id": "611d2d25131730f65a0197fe", + "_class": "core:class:TxCreateDoc", + "space": "core:space:Tx", + "objectId": "611d2d25131730f65a0197ff", + "objectClass": "recruit:class:Candidate", + "objectSpace": "recruit:space:CandidatesPublic", + "modifiedOn": 1629302053655, + "modifiedBy": "core:account:System", + "attributes": { + "firstName": "Marina", + "lastName": "M.", + "email": "marina@hc.engineering", + "phone": "+1 646 777 3333", + "city": "Los Angeles" + } + } +] \ No newline at end of file diff --git a/server/workspace/tsconfig.json b/server/workspace/tsconfig.json new file mode 100644 index 0000000000..aeb0517b13 --- /dev/null +++ b/server/workspace/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "./node_modules/@anticrm/platform-rig/profiles/default/tsconfig.json", + + "compilerOptions": { + "rootDir": "./src", + "outDir": "./lib" + } +} \ No newline at end of file