@openinc/parse-server-opendash 3.34.0 → 3.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -46,7 +46,6 @@ function createNotification(input) {
46
46
  * Register all notifications in the database, if not already registered.
47
47
  */
48
48
  async function registerNotifications(tenant) {
49
- console.log("[@openinc/parse-server-opendash] Register all notifications");
50
49
  getAllNotifications().forEach((notification) => {
51
50
  new Parse.Query(types_1.Notification_Setting)
52
51
  .equalTo("key", notification.key)
@@ -62,9 +61,6 @@ async function registerNotifications(tenant) {
62
61
  newPermission.set("description", notification.description);
63
62
  newPermission.save({}, { useMasterKey: true });
64
63
  }
65
- else {
66
- console.log("[@openinc/parse-server-opendash] Notification already exists", notification.key);
67
- }
68
64
  });
69
65
  });
70
66
  }
@@ -59,7 +59,6 @@ function createPermission(input) {
59
59
  * @returns {Promise<void>}
60
60
  */
61
61
  async function registerPermissions(tenant) {
62
- console.log("[@openinc/parse-server-opendash] Register all permissions");
63
62
  const allPermissions = getAllPermissions().map(async (permission) => {
64
63
  const [resultError, result] = await (0, catchError_1.catchError)(new Parse.Query(types_1.Permission)
65
64
  .equalTo("key", permission.key)
@@ -80,7 +79,6 @@ async function registerPermissions(tenant) {
80
79
  }
81
80
  });
82
81
  await Promise.all(allPermissions);
83
- console.log("[@openinc/parse-server-opendash] All permissions registered successfully");
84
82
  }
85
83
  /**
86
84
  * Set read access for all admin roles to admin overview permission
@@ -88,7 +86,6 @@ async function registerPermissions(tenant) {
88
86
  * @returns {Promise<void>}
89
87
  */
90
88
  async function ensureDefaultAdminAccess(tenant) {
91
- console.log("[@openinc/parse-server-opendash] Ensure default admin access permissions");
92
89
  const [resultError, result] = await (0, catchError_1.catchError)(new Parse.Query(types_1.Permission)
93
90
  .equalTo("key", __1.Permissions.CORE.adminoverview)
94
91
  .equalTo("tenant", tenant)
@@ -106,9 +103,6 @@ async function ensureDefaultAdminAccess(tenant) {
106
103
  result.setACL(acl);
107
104
  await result.save(null, { useMasterKey: true });
108
105
  }
109
- else {
110
- console.log("[@openinc/parse-server-opendash] Permission not found", __1.Permissions.CORE.adminoverview);
111
- }
112
106
  }
113
107
  /**
114
108
  * Entry point for the permission registration process.
@@ -8,9 +8,6 @@ async function init() {
8
8
  const { object, original, user } = request;
9
9
  await (0, schema_1.defaultHandler)(request);
10
10
  await (0, schema_1.defaultAclHandler)(request);
11
- // TODO
12
- });
13
- (0, schema_1.afterSaveHook)(types_1.Company, async ({ object, original, user }) => {
14
- // TODO
15
11
  });
12
+ (0, schema_1.afterSaveHook)(types_1.Company, async ({ object, original, user }) => { });
16
13
  }
@@ -8,9 +8,6 @@ async function init() {
8
8
  const { object, original, user } = request;
9
9
  await (0, schema_1.defaultHandler)(request);
10
10
  await (0, schema_1.defaultAclHandler)(request);
11
- // TODO
12
- });
13
- (0, schema_1.afterSaveHook)(types_1.Contact, async ({ object, original, user }) => {
14
- // TODO
15
11
  });
12
+ (0, schema_1.afterSaveHook)(types_1.Contact, async ({ object, original, user }) => { });
16
13
  }
@@ -0,0 +1,25 @@
1
+ import type { Source } from "./Source";
2
+ import type { _User } from "./_User";
3
+ export interface BDE_OrderAttributes {
4
+ id: string;
5
+ objectId: string;
6
+ createdAt: Date;
7
+ updatedAt: Date;
8
+ name?: string | undefined;
9
+ orderNr?: string | undefined;
10
+ sources: Parse.Relation<BDE_Order, Source>;
11
+ status?: string | undefined;
12
+ users: Parse.Relation<BDE_Order, _User>;
13
+ }
14
+ export declare class BDE_Order extends Parse.Object<BDE_OrderAttributes> {
15
+ static className: string;
16
+ constructor(data?: Partial<BDE_OrderAttributes>);
17
+ get name(): string | undefined;
18
+ set name(value: string | undefined);
19
+ get orderNr(): string | undefined;
20
+ set orderNr(value: string | undefined);
21
+ get sources(): Parse.Relation<BDE_Order, Source>;
22
+ get status(): string | undefined;
23
+ set status(value: string | undefined);
24
+ get users(): Parse.Relation<BDE_Order, _User>;
25
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BDE_Order = void 0;
4
+ class BDE_Order extends Parse.Object {
5
+ constructor(data) {
6
+ super("OD3_BDE_Order", data);
7
+ }
8
+ get name() {
9
+ return super.get("name");
10
+ }
11
+ set name(value) {
12
+ super.set("name", value);
13
+ }
14
+ get orderNr() {
15
+ return super.get("orderNr");
16
+ }
17
+ set orderNr(value) {
18
+ super.set("orderNr", value);
19
+ }
20
+ get sources() {
21
+ return super.relation("sources");
22
+ }
23
+ get status() {
24
+ return super.get("status");
25
+ }
26
+ set status(value) {
27
+ super.set("status", value);
28
+ }
29
+ get users() {
30
+ return super.relation("users");
31
+ }
32
+ }
33
+ exports.BDE_Order = BDE_Order;
34
+ BDE_Order.className = "OD3_BDE_Order";
35
+ Parse.Object.registerSubclass("OD3_BDE_Order", BDE_Order);
@@ -0,0 +1,34 @@
1
+ import type { Source } from "./Source";
2
+ import type { Tenant } from "./Tenant";
3
+ import type { _User } from "./_User";
4
+ export interface BDE_Order_TimeAttributes {
5
+ id: string;
6
+ objectId: string;
7
+ createdAt: Date;
8
+ updatedAt: Date;
9
+ active: boolean;
10
+ duration?: number | undefined;
11
+ end?: Date | undefined;
12
+ source?: Source | undefined;
13
+ start?: Date | undefined;
14
+ tenant?: Tenant | undefined;
15
+ user?: _User | undefined;
16
+ }
17
+ export declare class BDE_Order_Time extends Parse.Object<BDE_Order_TimeAttributes> {
18
+ static className: string;
19
+ constructor(data?: Partial<BDE_Order_TimeAttributes>);
20
+ get active(): boolean;
21
+ set active(value: boolean);
22
+ get duration(): number | undefined;
23
+ set duration(value: number | undefined);
24
+ get end(): Date | undefined;
25
+ set end(value: Date | undefined);
26
+ get source(): Source | undefined;
27
+ set source(value: Source | undefined);
28
+ get start(): Date | undefined;
29
+ set start(value: Date | undefined);
30
+ get tenant(): Tenant | undefined;
31
+ set tenant(value: Tenant | undefined);
32
+ get user(): _User | undefined;
33
+ set user(value: _User | undefined);
34
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BDE_Order_Time = void 0;
4
+ class BDE_Order_Time extends Parse.Object {
5
+ constructor(data) {
6
+ super("OD3_BDE_Order_Time", data);
7
+ }
8
+ get active() {
9
+ return super.get("active");
10
+ }
11
+ set active(value) {
12
+ super.set("active", value);
13
+ }
14
+ get duration() {
15
+ return super.get("duration");
16
+ }
17
+ set duration(value) {
18
+ super.set("duration", value);
19
+ }
20
+ get end() {
21
+ return super.get("end");
22
+ }
23
+ set end(value) {
24
+ super.set("end", value);
25
+ }
26
+ get source() {
27
+ return super.get("source");
28
+ }
29
+ set source(value) {
30
+ super.set("source", value);
31
+ }
32
+ get start() {
33
+ return super.get("start");
34
+ }
35
+ set start(value) {
36
+ super.set("start", value);
37
+ }
38
+ get tenant() {
39
+ return super.get("tenant");
40
+ }
41
+ set tenant(value) {
42
+ super.set("tenant", value);
43
+ }
44
+ get user() {
45
+ return super.get("user");
46
+ }
47
+ set user(value) {
48
+ super.set("user", value);
49
+ }
50
+ }
51
+ exports.BDE_Order_Time = BDE_Order_Time;
52
+ BDE_Order_Time.className = "OD3_BDE_Order_Time";
53
+ Parse.Object.registerSubclass("OD3_BDE_Order_Time", BDE_Order_Time);
@@ -1,4 +1,3 @@
1
- import type { Contact } from "./Contact";
2
1
  import type { Source } from "./Source";
3
2
  import type { Tenant } from "./Tenant";
4
3
  export interface CompanyAttributes {
@@ -6,7 +5,6 @@ export interface CompanyAttributes {
6
5
  objectId: string;
7
6
  createdAt: Date;
8
7
  updatedAt: Date;
9
- contacts: Parse.Relation<Company, Contact>;
10
8
  name?: string | undefined;
11
9
  sources: Parse.Relation<Company, Source>;
12
10
  tenant?: Tenant | undefined;
@@ -14,7 +12,6 @@ export interface CompanyAttributes {
14
12
  export declare class Company extends Parse.Object<CompanyAttributes> {
15
13
  static className: string;
16
14
  constructor(data?: Partial<CompanyAttributes>);
17
- get contacts(): Parse.Relation<Company, Contact>;
18
15
  get name(): string | undefined;
19
16
  set name(value: string | undefined);
20
17
  get sources(): Parse.Relation<Company, Source>;
@@ -5,9 +5,6 @@ class Company extends Parse.Object {
5
5
  constructor(data) {
6
6
  super("OD3_Company", data);
7
7
  }
8
- get contacts() {
9
- return super.relation("contacts");
10
- }
11
8
  get name() {
12
9
  return super.get("name");
13
10
  }
@@ -1,3 +1,4 @@
1
+ import type { Company } from "./Company";
1
2
  import type { Tenant } from "./Tenant";
2
3
  import type { _User } from "./_User";
3
4
  export interface ContactAttributes {
@@ -6,6 +7,7 @@ export interface ContactAttributes {
6
7
  createdAt: Date;
7
8
  updatedAt: Date;
8
9
  city?: string | undefined;
10
+ company?: Company | undefined;
9
11
  department?: string | undefined;
10
12
  description?: string | undefined;
11
13
  email?: string | undefined;
@@ -24,6 +26,8 @@ export declare class Contact extends Parse.Object<ContactAttributes> {
24
26
  constructor(data?: Partial<ContactAttributes>);
25
27
  get city(): string | undefined;
26
28
  set city(value: string | undefined);
29
+ get company(): Company | undefined;
30
+ set company(value: Company | undefined);
27
31
  get department(): string | undefined;
28
32
  set department(value: string | undefined);
29
33
  get description(): string | undefined;
@@ -11,6 +11,12 @@ class Contact extends Parse.Object {
11
11
  set city(value) {
12
12
  super.set("city", value);
13
13
  }
14
+ get company() {
15
+ return super.get("company");
16
+ }
17
+ set company(value) {
18
+ super.set("company", value);
19
+ }
14
20
  get department() {
15
21
  return super.get("department");
16
22
  }
@@ -14,6 +14,10 @@ export { BDE_List } from "./BDE_List";
14
14
  export type { BDE_ListAttributes } from "./BDE_List";
15
15
  export { BDE_ListEntry } from "./BDE_ListEntry";
16
16
  export type { BDE_ListEntryAttributes } from "./BDE_ListEntry";
17
+ export { BDE_Order } from "./BDE_Order";
18
+ export type { BDE_OrderAttributes } from "./BDE_Order";
19
+ export { BDE_Order_Time } from "./BDE_Order_Time";
20
+ export type { BDE_Order_TimeAttributes } from "./BDE_Order_Time";
17
21
  export { BDE_Page } from "./BDE_Page";
18
22
  export type { BDE_PageAttributes } from "./BDE_Page";
19
23
  export { BDE_Result } from "./BDE_Result";
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MailTemplate = exports.ML_DataSelection = exports.MIAAS_MDSEndpoint = exports.MES_OrderPlan = exports.MES_Order = exports.MES_Article = exports.Log = exports.Language = exports.Knowledge_Video = exports.Knowledge_DocumentPage = exports.Knowledge_Document = exports.Knowledge_ChatMessage = exports.Knowledge_Chat = exports.Knowledge_Category = exports.Knowledge_Article = exports.GTFS_Wheelchair_Boarding = exports.GTFS_Wheelchair_Accessible = exports.GTFS_Trip = exports.GTFS_Stop_Times = exports.GTFS_Stop = exports.GTFS_Route_Type = exports.GTFS_Route = exports.GTFS_Location_Type = exports.GTFS_Level = exports.GTFS_Direction = exports.GTFS_Calendar = exports.GTFS_Bikes_Allowed = exports.GTFS_Agency = exports.EMS_ChargePoint = exports.Documentation_Document = exports.Documentation_Config = exports.Documentation_Category = exports.Dashboard = exports.Core_Token = exports.Core_Email = exports.Contact = exports.Config = exports.Company = exports.Changelog = exports.BDE_Unit = exports.BDE_Result = exports.BDE_Page = exports.BDE_ListEntry = exports.BDE_List = exports.BDE_Form = exports.Attachment = exports.Assets = exports.AlarmWebhook = exports.AlarmAction = exports.Alarm = void 0;
4
- exports.RAG_Prompts = exports.RAG_Meta = exports.RAG_Interview = exports.RAG_Data = exports.Push = exports.Permission = exports.OWPlcItem = exports.OWPlcDevice = exports.Notification_Setting = exports.Notification = exports.NavigationItem = exports.NavigationGroup = exports.Monitoring_Slideshow = exports.Monitoring_ReportImage = exports.Monitoring_ParseTableSensor = exports.Monitoring_Jobs = exports.Monitoring_DataHierachies = exports.Meta_Entry = exports.Meta_Config = exports.Maintenance_Ticket_Title = exports.Maintenance_Ticket_Source = exports.Maintenance_Ticket_QR_Code = exports.Maintenance_Ticket_Project = exports.Maintenance_Ticket_Material = exports.Maintenance_Ticket_Kanban_State_Current = exports.Maintenance_Ticket_Kanban_State = exports.Maintenance_Ticket_Issuecategory = exports.Maintenance_Ticket_FormConfig = exports.Maintenance_Ticket_Data = exports.Maintenance_Ticket_Assignment = exports.Maintenance_Ticket = exports.Maintenance_Source_File = exports.Maintenance_Schedule_Template = exports.Maintenance_Schedule_Step = exports.Maintenance_Schedule_Execution_Step = exports.Maintenance_Schedule_Execution = exports.Maintenance_Schedule = exports.Maintenance_Restriction = exports.Maintenance_Project = exports.Maintenance_Priority = exports.Maintenance_Order = exports.Maintenance_Message = exports.Maintenance_Media = exports.Maintenance_Kanban_State = exports.Maintenance_Item = exports.Maintenance_Issuecategory = exports.Maintenance_Frequency = exports.Maintenance_Duedate = exports.Maintenance_Downtime = exports.Mail_Groups = void 0;
5
- exports.WidgetPreset = exports.Widget = exports.WebPush = exports.VirtualKPI = exports.User_Setting = exports.UserData = exports.TenantTrustedDomain = exports.TenantMeta = exports.Tenant = exports.Spreadsheet_Workbook = exports.SourceMeta = exports.Source = exports.Share = exports.Report = exports.RAG_Request = exports.RAG_Questions = void 0;
3
+ exports.MIAAS_MDSEndpoint = exports.MES_OrderPlan = exports.MES_Order = exports.MES_Article = exports.Log = exports.Language = exports.Knowledge_Video = exports.Knowledge_DocumentPage = exports.Knowledge_Document = exports.Knowledge_ChatMessage = exports.Knowledge_Chat = exports.Knowledge_Category = exports.Knowledge_Article = exports.GTFS_Wheelchair_Boarding = exports.GTFS_Wheelchair_Accessible = exports.GTFS_Trip = exports.GTFS_Stop_Times = exports.GTFS_Stop = exports.GTFS_Route_Type = exports.GTFS_Route = exports.GTFS_Location_Type = exports.GTFS_Level = exports.GTFS_Direction = exports.GTFS_Calendar = exports.GTFS_Bikes_Allowed = exports.GTFS_Agency = exports.EMS_ChargePoint = exports.Documentation_Document = exports.Documentation_Config = exports.Documentation_Category = exports.Dashboard = exports.Core_Token = exports.Core_Email = exports.Contact = exports.Config = exports.Company = exports.Changelog = exports.BDE_Unit = exports.BDE_Result = exports.BDE_Page = exports.BDE_Order_Time = exports.BDE_Order = exports.BDE_ListEntry = exports.BDE_List = exports.BDE_Form = exports.Attachment = exports.Assets = exports.AlarmWebhook = exports.AlarmAction = exports.Alarm = void 0;
4
+ exports.RAG_Interview = exports.RAG_Data = exports.Push = exports.Permission = exports.OWPlcItem = exports.OWPlcDevice = exports.Notification_Setting = exports.Notification = exports.NavigationItem = exports.NavigationGroup = exports.Monitoring_Slideshow = exports.Monitoring_ReportImage = exports.Monitoring_ParseTableSensor = exports.Monitoring_Jobs = exports.Monitoring_DataHierachies = exports.Meta_Entry = exports.Meta_Config = exports.Maintenance_Ticket_Title = exports.Maintenance_Ticket_Source = exports.Maintenance_Ticket_QR_Code = exports.Maintenance_Ticket_Project = exports.Maintenance_Ticket_Material = exports.Maintenance_Ticket_Kanban_State_Current = exports.Maintenance_Ticket_Kanban_State = exports.Maintenance_Ticket_Issuecategory = exports.Maintenance_Ticket_FormConfig = exports.Maintenance_Ticket_Data = exports.Maintenance_Ticket_Assignment = exports.Maintenance_Ticket = exports.Maintenance_Source_File = exports.Maintenance_Schedule_Template = exports.Maintenance_Schedule_Step = exports.Maintenance_Schedule_Execution_Step = exports.Maintenance_Schedule_Execution = exports.Maintenance_Schedule = exports.Maintenance_Restriction = exports.Maintenance_Project = exports.Maintenance_Priority = exports.Maintenance_Order = exports.Maintenance_Message = exports.Maintenance_Media = exports.Maintenance_Kanban_State = exports.Maintenance_Item = exports.Maintenance_Issuecategory = exports.Maintenance_Frequency = exports.Maintenance_Duedate = exports.Maintenance_Downtime = exports.Mail_Groups = exports.MailTemplate = exports.ML_DataSelection = void 0;
5
+ exports.WidgetPreset = exports.Widget = exports.WebPush = exports.VirtualKPI = exports.User_Setting = exports.UserData = exports.TenantTrustedDomain = exports.TenantMeta = exports.Tenant = exports.Spreadsheet_Workbook = exports.SourceMeta = exports.Source = exports.Share = exports.Report = exports.RAG_Request = exports.RAG_Questions = exports.RAG_Prompts = exports.RAG_Meta = void 0;
6
6
  var Alarm_1 = require("./Alarm");
7
7
  Object.defineProperty(exports, "Alarm", { enumerable: true, get: function () { return Alarm_1.Alarm; } });
8
8
  var AlarmAction_1 = require("./AlarmAction");
@@ -19,6 +19,10 @@ var BDE_List_1 = require("./BDE_List");
19
19
  Object.defineProperty(exports, "BDE_List", { enumerable: true, get: function () { return BDE_List_1.BDE_List; } });
20
20
  var BDE_ListEntry_1 = require("./BDE_ListEntry");
21
21
  Object.defineProperty(exports, "BDE_ListEntry", { enumerable: true, get: function () { return BDE_ListEntry_1.BDE_ListEntry; } });
22
+ var BDE_Order_1 = require("./BDE_Order");
23
+ Object.defineProperty(exports, "BDE_Order", { enumerable: true, get: function () { return BDE_Order_1.BDE_Order; } });
24
+ var BDE_Order_Time_1 = require("./BDE_Order_Time");
25
+ Object.defineProperty(exports, "BDE_Order_Time", { enumerable: true, get: function () { return BDE_Order_Time_1.BDE_Order_Time; } });
22
26
  var BDE_Page_1 = require("./BDE_Page");
23
27
  Object.defineProperty(exports, "BDE_Page", { enumerable: true, get: function () { return BDE_Page_1.BDE_Page; } });
24
28
  var BDE_Result_1 = require("./BDE_Result");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openinc/parse-server-opendash",
3
- "version": "3.34.0",
3
+ "version": "3.35.0",
4
4
  "description": "Parse Server Cloud Code for open.INC Stack.",
5
5
  "packageManager": "pnpm@10.28.0",
6
6
  "keywords": [
@@ -0,0 +1,58 @@
1
+ {
2
+ "fields": {
3
+ "name": {
4
+ "type": "String",
5
+ "required": false
6
+ },
7
+ "orderNr": {
8
+ "type": "String",
9
+ "required": false
10
+ },
11
+ "sources": {
12
+ "type": "Relation",
13
+ "targetClass": "{{PREFIX}}Source",
14
+ "required": false
15
+ },
16
+ "status": {
17
+ "type": "String",
18
+ "required": false
19
+ },
20
+ "users": {
21
+ "type": "Relation",
22
+ "targetClass": "_User",
23
+ "required": false
24
+ }
25
+ },
26
+ "classLevelPermissions": {
27
+ "ACL": {
28
+ "*": {
29
+ "read": true,
30
+ "write": true
31
+ }
32
+ },
33
+ "find": {
34
+ "*": true
35
+ },
36
+ "count": {
37
+ "*": true
38
+ },
39
+ "get": {
40
+ "*": true
41
+ },
42
+ "create": {
43
+ "*": true
44
+ },
45
+ "update": {
46
+ "*": true
47
+ },
48
+ "delete": {
49
+ "*": true
50
+ },
51
+ "addField": {
52
+ "*": true
53
+ },
54
+ "protectedFields": {
55
+ "*": []
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,68 @@
1
+ {
2
+ "fields": {
3
+ "active": {
4
+ "type": "Boolean",
5
+ "required": false,
6
+ "defaultValue": false
7
+ },
8
+ "duration": {
9
+ "type": "Number",
10
+ "required": false
11
+ },
12
+ "end": {
13
+ "type": "Date",
14
+ "required": false
15
+ },
16
+ "source": {
17
+ "type": "Pointer",
18
+ "targetClass": "{{PREFIX}}Source",
19
+ "required": false
20
+ },
21
+ "start": {
22
+ "type": "Date",
23
+ "required": false
24
+ },
25
+ "tenant": {
26
+ "type": "Pointer",
27
+ "targetClass": "{{PREFIX}}Tenant",
28
+ "required": false
29
+ },
30
+ "user": {
31
+ "type": "Pointer",
32
+ "targetClass": "_User",
33
+ "required": false
34
+ }
35
+ },
36
+ "classLevelPermissions": {
37
+ "ACL": {
38
+ "*": {
39
+ "read": true,
40
+ "write": true
41
+ }
42
+ },
43
+ "find": {
44
+ "*": true
45
+ },
46
+ "count": {
47
+ "*": true
48
+ },
49
+ "get": {
50
+ "*": true
51
+ },
52
+ "create": {
53
+ "*": true
54
+ },
55
+ "update": {
56
+ "*": true
57
+ },
58
+ "delete": {
59
+ "*": true
60
+ },
61
+ "addField": {
62
+ "*": true
63
+ },
64
+ "protectedFields": {
65
+ "*": []
66
+ }
67
+ }
68
+ }
@@ -1,10 +1,5 @@
1
1
  {
2
2
  "fields": {
3
- "contacts": {
4
- "type": "Relation",
5
- "targetClass": "{{PREFIX}}Contact",
6
- "required": false
7
- },
8
3
  "name": {
9
4
  "type": "String",
10
5
  "required": false
@@ -4,6 +4,11 @@
4
4
  "type": "String",
5
5
  "required": false
6
6
  },
7
+ "company": {
8
+ "type": "Pointer",
9
+ "targetClass": "{{PREFIX}}Company",
10
+ "required": false
11
+ },
7
12
  "department": {
8
13
  "type": "String",
9
14
  "required": false