@api-client/core 0.18.47 → 0.18.48

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.
@@ -7,6 +7,7 @@ import { Invitation } from './lib/Invitation.js';
7
7
  import { Trash } from './lib/Trash.js';
8
8
  import { Patch } from './lib/Patch.js';
9
9
  import { DataCatalog } from './lib/DataCatalog.js';
10
+ import { Permission } from './lib/Permission.js';
10
11
  export declare class ModelingMock {
11
12
  faker: Faker;
12
13
  organization: Organization;
@@ -17,5 +18,6 @@ export declare class ModelingMock {
17
18
  trash: Trash;
18
19
  patch: Patch;
19
20
  dataCatalog: DataCatalog;
21
+ permission: Permission;
20
22
  }
21
23
  //# sourceMappingURL=ModelingMock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelingMock.d.ts","sourceRoot":"","sources":["../../../src/mocking/ModelingMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD,qBAAa,YAAY;IACvB,KAAK,EAAE,KAAK,CAAQ;IACpB,YAAY,eAAqB;IACjC,KAAK,QAAc;IACnB,KAAK,OAAa;IAClB,KAAK,OAAa;IAClB,UAAU,aAAmB;IAC7B,KAAK,QAAc;IACnB,KAAK,QAAc;IACnB,WAAW,cAAoB;CAChC"}
1
+ {"version":3,"file":"ModelingMock.d.ts","sourceRoot":"","sources":["../../../src/mocking/ModelingMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,qBAAa,YAAY;IACvB,KAAK,EAAE,KAAK,CAAQ;IACpB,YAAY,eAAqB;IACjC,KAAK,QAAc;IACnB,KAAK,OAAa;IAClB,KAAK,OAAa;IAClB,UAAU,aAAmB;IAC7B,KAAK,QAAc;IACnB,KAAK,QAAc;IACnB,WAAW,cAAoB;IAC/B,UAAU,aAAmB;CAC9B"}
@@ -7,6 +7,7 @@ import { Invitation } from './lib/Invitation.js';
7
7
  import { Trash } from './lib/Trash.js';
8
8
  import { Patch } from './lib/Patch.js';
9
9
  import { DataCatalog } from './lib/DataCatalog.js';
10
+ import { Permission } from './lib/Permission.js';
10
11
  export class ModelingMock {
11
12
  faker = faker;
12
13
  organization = new Organization();
@@ -17,5 +18,6 @@ export class ModelingMock {
17
18
  trash = new Trash();
18
19
  patch = new Patch();
19
20
  dataCatalog = new DataCatalog();
21
+ permission = new Permission();
20
22
  }
21
23
  //# sourceMappingURL=ModelingMock.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModelingMock.js","sourceRoot":"","sources":["../../../src/mocking/ModelingMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAElD,MAAM,OAAO,YAAY;IACvB,KAAK,GAAU,KAAK,CAAA;IACpB,YAAY,GAAG,IAAI,YAAY,EAAE,CAAA;IACjC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IAClB,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IAClB,UAAU,GAAG,IAAI,UAAU,EAAE,CAAA;IAC7B,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;CAChC","sourcesContent":["import { faker, type Faker } from '@faker-js/faker'\nimport { Organization } from './lib/Organization.js'\nimport { Group } from './lib/Group.js'\nimport { User } from './lib/User.js'\nimport { File } from './lib/File.js'\nimport { Invitation } from './lib/Invitation.js'\nimport { Trash } from './lib/Trash.js'\nimport { Patch } from './lib/Patch.js'\nimport { DataCatalog } from './lib/DataCatalog.js'\n\nexport class ModelingMock {\n faker: Faker = faker\n organization = new Organization()\n group = new Group()\n users = new User()\n files = new File()\n invitation = new Invitation()\n trash = new Trash()\n patch = new Patch()\n dataCatalog = new DataCatalog()\n}\n"]}
1
+ {"version":3,"file":"ModelingMock.js","sourceRoot":"","sources":["../../../src/mocking/ModelingMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,iBAAiB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAEhD,MAAM,OAAO,YAAY;IACvB,KAAK,GAAU,KAAK,CAAA;IACpB,YAAY,GAAG,IAAI,YAAY,EAAE,CAAA;IACjC,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IAClB,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IAClB,UAAU,GAAG,IAAI,UAAU,EAAE,CAAA;IAC7B,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;IACnB,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;IAC/B,UAAU,GAAG,IAAI,UAAU,EAAE,CAAA;CAC9B","sourcesContent":["import { faker, type Faker } from '@faker-js/faker'\nimport { Organization } from './lib/Organization.js'\nimport { Group } from './lib/Group.js'\nimport { User } from './lib/User.js'\nimport { File } from './lib/File.js'\nimport { Invitation } from './lib/Invitation.js'\nimport { Trash } from './lib/Trash.js'\nimport { Patch } from './lib/Patch.js'\nimport { DataCatalog } from './lib/DataCatalog.js'\nimport { Permission } from './lib/Permission.js'\n\nexport class ModelingMock {\n faker: Faker = faker\n organization = new Organization()\n group = new Group()\n users = new User()\n files = new File()\n invitation = new Invitation()\n trash = new Trash()\n patch = new Patch()\n dataCatalog = new DataCatalog()\n permission = new Permission()\n}\n"]}
@@ -2,6 +2,7 @@ import { type IFile, type FileBreadcrumb } from '../../models/store/File.js';
2
2
  export declare class File {
3
3
  /**
4
4
  * Generates a random file object.
5
+ * Note that this generator doesn't create the permissions object. Use Permission class for that.
5
6
  * @param init Optional values to be present in the object.
6
7
  * @returns Random file
7
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"File.d.ts","sourceRoot":"","sources":["../../../../src/mocking/lib/File.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,KAAK,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAG9F,qBAAa,IAAI;IACf;;;;OAIG;IACH,IAAI,CAAC,IAAI,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK;IAQtC;;;;OAIG;IACH,KAAK,CAAC,IAAI,SAAK,GAAG,KAAK,EAAE;IAQzB;;;;OAIG;IACH,MAAM,CAAC,IAAI,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK;IAIxC;;;;OAIG;IACH,OAAO,CAAC,IAAI,SAAK,GAAG,KAAK,EAAE;IAQ3B;;;;OAIG;IACH,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE;CAYjD"}
1
+ {"version":3,"file":"File.d.ts","sourceRoot":"","sources":["../../../../src/mocking/lib/File.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,KAAK,KAAK,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAG9F,qBAAa,IAAI;IACf;;;;;OAKG;IACH,IAAI,CAAC,IAAI,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK;IAQtC;;;;OAIG;IACH,KAAK,CAAC,IAAI,SAAK,GAAG,KAAK,EAAE;IAQzB;;;;OAIG;IACH,MAAM,CAAC,IAAI,GAAE,OAAO,CAAC,KAAK,CAAM,GAAG,KAAK;IAIxC;;;;OAIG;IACH,OAAO,CAAC,IAAI,SAAK,GAAG,KAAK,EAAE;IAQ3B;;;;OAIG;IACH,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,cAAc,EAAE;CAYjD"}
@@ -5,6 +5,7 @@ import { nanoid } from '../../nanoid.js';
5
5
  export class File {
6
6
  /**
7
7
  * Generates a random file object.
8
+ * Note that this generator doesn't create the permissions object. Use Permission class for that.
8
9
  * @param init Optional values to be present in the object.
9
10
  * @returns Random file
10
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"File.js","sourceRoot":"","sources":["../../../../src/mocking/lib/File.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACjH,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAmC,MAAM,4BAA4B,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,MAAM,OAAO,IAAI;IACf;;;;OAIG;IACH,IAAI,CAAC,OAAuB,EAAE;QAC5B,MAAM,EACJ,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,CAAU,CAAC,EAC3G,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GACzC,GAAG,IAAI,CAAA;QACR,OAAO,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,OAAuB,EAAE;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAI,GAAG,EAAE;QACf,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,IAAa;QAC3B,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA,CAAC,MAAM;QAC9D,MAAM,KAAK,GAAqB,EAAE,CAAA;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,GACR,CAAC,KAAK,KAAK,GAAG,CAAC;gBACb,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,CAAU,CAAC;gBACtG,CAAC,CAAC,UAAU,CAAA;YAChB,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpE,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF","sourcesContent":["import { faker } from '@faker-js/faker'\nimport { ProjectKind, DomainFileKind, CertificateFileKind, FolderKind, ApiFileKind } from '../../models/kinds.js'\nimport { File as CoreFile, type IFile, type FileBreadcrumb } from '../../models/store/File.js'\nimport { nanoid } from '../../nanoid.js'\n\nexport class File {\n /**\n * Generates a random file object.\n * @param init Optional values to be present in the object.\n * @returns Random file\n */\n file(init: Partial<IFile> = {}): IFile {\n const {\n kind = faker.helpers.arrayElement([ProjectKind, DomainFileKind, CertificateFileKind, ApiFileKind] as const),\n info = { name: faker.system.fileName() },\n } = init\n return CoreFile.createSchema({ kind, info })\n }\n\n /**\n * Generates a list of random file objects.\n * @param size Number of files to generate. Default is 25.\n * @returns List of random files\n */\n files(size = 25): IFile[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.file())\n }\n return result\n }\n\n /**\n * Generates a random folder object.\n * @param init Optional values to be present in the object.\n * @returns Random folder\n */\n folder(init: Partial<IFile> = {}): IFile {\n return this.file({ kind: FolderKind, ...init })\n }\n\n /**\n * Generates a list of random folder objects.\n * @param size Number of folders to generate. Default is 25.\n * @returns List of random folders\n */\n folders(size = 25): IFile[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.folder())\n }\n return result\n }\n\n /**\n * Generates a random file breadcrumb object.\n * @param size Optional depth of the breadcrumb. Default is random between 2-3.\n * @returns Random file breadcrumb\n */\n fileBreadcrumbs(size?: number): FileBreadcrumb[] {\n const depth = size ?? 2 + Math.floor(Math.random() * 2) // 2-3\n const items: FileBreadcrumb[] = []\n for (let i = 0; i < depth; i += 1) {\n const kind =\n i === depth - 1\n ? faker.helpers.arrayElement([ProjectKind, DomainFileKind, CertificateFileKind, ApiFileKind] as const)\n : FolderKind\n items.push({ key: nanoid(), kind, name: faker.system.fileName() })\n }\n return items\n }\n}\n"]}
1
+ {"version":3,"file":"File.js","sourceRoot":"","sources":["../../../../src/mocking/lib/File.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACjH,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAmC,MAAM,4BAA4B,CAAA;AAC9F,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,MAAM,OAAO,IAAI;IACf;;;;;OAKG;IACH,IAAI,CAAC,OAAuB,EAAE;QAC5B,MAAM,EACJ,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,CAAU,CAAC,EAC3G,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GACzC,GAAG,IAAI,CAAA;QACR,OAAO,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAI,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,OAAuB,EAAE;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAI,GAAG,EAAE;QACf,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,IAAa;QAC3B,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA,CAAC,MAAM;QAC9D,MAAM,KAAK,GAAqB,EAAE,CAAA;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,GACR,CAAC,KAAK,KAAK,GAAG,CAAC;gBACb,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,CAAU,CAAC;gBACtG,CAAC,CAAC,UAAU,CAAA;YAChB,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACpE,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF","sourcesContent":["import { faker } from '@faker-js/faker'\nimport { ProjectKind, DomainFileKind, CertificateFileKind, FolderKind, ApiFileKind } from '../../models/kinds.js'\nimport { File as CoreFile, type IFile, type FileBreadcrumb } from '../../models/store/File.js'\nimport { nanoid } from '../../nanoid.js'\n\nexport class File {\n /**\n * Generates a random file object.\n * Note that this generator doesn't create the permissions object. Use Permission class for that.\n * @param init Optional values to be present in the object.\n * @returns Random file\n */\n file(init: Partial<IFile> = {}): IFile {\n const {\n kind = faker.helpers.arrayElement([ProjectKind, DomainFileKind, CertificateFileKind, ApiFileKind] as const),\n info = { name: faker.system.fileName() },\n } = init\n return CoreFile.createSchema({ kind, info })\n }\n\n /**\n * Generates a list of random file objects.\n * @param size Number of files to generate. Default is 25.\n * @returns List of random files\n */\n files(size = 25): IFile[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.file())\n }\n return result\n }\n\n /**\n * Generates a random folder object.\n * @param init Optional values to be present in the object.\n * @returns Random folder\n */\n folder(init: Partial<IFile> = {}): IFile {\n return this.file({ kind: FolderKind, ...init })\n }\n\n /**\n * Generates a list of random folder objects.\n * @param size Number of folders to generate. Default is 25.\n * @returns List of random folders\n */\n folders(size = 25): IFile[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.folder())\n }\n return result\n }\n\n /**\n * Generates a random file breadcrumb object.\n * @param size Optional depth of the breadcrumb. Default is random between 2-3.\n * @returns Random file breadcrumb\n */\n fileBreadcrumbs(size?: number): FileBreadcrumb[] {\n const depth = size ?? 2 + Math.floor(Math.random() * 2) // 2-3\n const items: FileBreadcrumb[] = []\n for (let i = 0; i < depth; i += 1) {\n const kind =\n i === depth - 1\n ? faker.helpers.arrayElement([ProjectKind, DomainFileKind, CertificateFileKind, ApiFileKind] as const)\n : FolderKind\n items.push({ key: nanoid(), kind, name: faker.system.fileName() })\n }\n return items\n }\n}\n"]}
@@ -0,0 +1,35 @@
1
+ import { IPermission } from '../../models/store/Permission.js';
2
+ export declare class Permission {
3
+ /**
4
+ * Generates a random permission object.
5
+ * @param init Configuration options for the permission object.
6
+ * @returns Random permission
7
+ */
8
+ permission(init?: Partial<IPermission>): IPermission;
9
+ /**
10
+ * Generates a random user permission object.
11
+ * @param init Configuration options for the permission object.
12
+ * @returns Random user permission
13
+ */
14
+ userPermission(init?: Partial<IPermission>): IPermission;
15
+ /**
16
+ * Generates a random group permission object.
17
+ * @param init Configuration options for the permission object.
18
+ * @returns Random group permission
19
+ */
20
+ groupPermission(init?: Partial<IPermission>): IPermission;
21
+ /**
22
+ * Generates a random organization permission object.
23
+ * @param init Configuration options for the permission object.
24
+ * @returns Random organization permission
25
+ */
26
+ organizationPermission(init?: Partial<IPermission>): IPermission;
27
+ /**
28
+ * Generates a list of random permission objects.
29
+ * @param size The size of the returning array. Default is 25.
30
+ * @param init Configuration options for the permission object.
31
+ * @returns List of random permissions
32
+ */
33
+ permissions(size?: number, init?: Partial<IPermission>): IPermission[];
34
+ }
35
+ //# sourceMappingURL=Permission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Permission.d.ts","sourceRoot":"","sources":["../../../../src/mocking/lib/Permission.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAKZ,MAAM,kCAAkC,CAAA;AAEzC,qBAAa,UAAU;IACrB;;;;OAIG;IACH,UAAU,CAAC,IAAI,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW;IA2CxD;;;;OAIG;IACH,cAAc,CAAC,IAAI,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW;IAI5D;;;;OAIG;IACH,eAAe,CAAC,IAAI,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW;IAI7D;;;;OAIG;IACH,sBAAsB,CAAC,IAAI,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW;IAIpE;;;;;OAKG;IACH,WAAW,CAAC,IAAI,SAAK,EAAE,IAAI,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW,EAAE;CAOvE"}
@@ -0,0 +1,89 @@
1
+ import { faker } from '@faker-js/faker';
2
+ import { nanoid } from '../../nanoid.js';
3
+ import { Kind as PermissionKind, } from '../../models/store/Permission.js';
4
+ export class Permission {
5
+ /**
6
+ * Generates a random permission object.
7
+ * @param init Configuration options for the permission object.
8
+ * @returns Random permission
9
+ */
10
+ permission(init = {}) {
11
+ const type = init.type ?? faker.helpers.arrayElement(['user', 'group', 'organization']);
12
+ const role = init.role ?? faker.helpers.arrayElement(['reader', 'commenter', 'writer', 'owner']);
13
+ const result = {
14
+ kind: PermissionKind,
15
+ key: init.key ?? nanoid(),
16
+ type,
17
+ granteeId: init.granteeId ?? nanoid(),
18
+ itemId: init.itemId ?? nanoid(),
19
+ role,
20
+ addingUser: init.addingUser ?? nanoid(),
21
+ depth: init.depth ?? 0,
22
+ sourceRule: init.sourceRule ??
23
+ faker.helpers.arrayElement([
24
+ 'direct_user_grant',
25
+ 'creator_default_owner',
26
+ 'parent_owner_editor_rule',
27
+ ]),
28
+ };
29
+ if ('displayName' in init) {
30
+ result.displayName = init.displayName;
31
+ }
32
+ else {
33
+ if (type === 'user') {
34
+ result.displayName = faker.person.fullName();
35
+ }
36
+ else if (type === 'group') {
37
+ result.displayName = faker.lorem.word();
38
+ }
39
+ else if (type === 'organization') {
40
+ result.displayName = faker.company.name();
41
+ }
42
+ }
43
+ if ('expirationTime' in init) {
44
+ result.expirationTime = init.expirationTime;
45
+ }
46
+ else if (type === 'user' || type === 'group') {
47
+ result.expirationTime = faker.date.future().getTime();
48
+ }
49
+ return result;
50
+ }
51
+ /**
52
+ * Generates a random user permission object.
53
+ * @param init Configuration options for the permission object.
54
+ * @returns Random user permission
55
+ */
56
+ userPermission(init = {}) {
57
+ return this.permission({ ...init, type: 'user' });
58
+ }
59
+ /**
60
+ * Generates a random group permission object.
61
+ * @param init Configuration options for the permission object.
62
+ * @returns Random group permission
63
+ */
64
+ groupPermission(init = {}) {
65
+ return this.permission({ ...init, type: 'group' });
66
+ }
67
+ /**
68
+ * Generates a random organization permission object.
69
+ * @param init Configuration options for the permission object.
70
+ * @returns Random organization permission
71
+ */
72
+ organizationPermission(init = {}) {
73
+ return this.permission({ ...init, type: 'organization' });
74
+ }
75
+ /**
76
+ * Generates a list of random permission objects.
77
+ * @param size The size of the returning array. Default is 25.
78
+ * @param init Configuration options for the permission object.
79
+ * @returns List of random permissions
80
+ */
81
+ permissions(size = 25, init = {}) {
82
+ const result = [];
83
+ for (let i = 0; i < size; i++) {
84
+ result.push(this.permission(init));
85
+ }
86
+ return result;
87
+ }
88
+ }
89
+ //# sourceMappingURL=Permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../../src/mocking/lib/Permission.ts"],"names":[],"mappings":"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","sourcesContent":["import { faker } from '@faker-js/faker'\nimport { nanoid } from '../../nanoid.js'\nimport {\n IPermission,\n Kind as PermissionKind,\n type PermissionRole,\n type PermissionType,\n type PermissionSourceRule,\n} from '../../models/store/Permission.js'\n\nexport class Permission {\n /**\n * Generates a random permission object.\n * @param init Configuration options for the permission object.\n * @returns Random permission\n */\n permission(init: Partial<IPermission> = {}): IPermission {\n const type = init.type ?? faker.helpers.arrayElement(['user', 'group', 'organization'] as PermissionType[])\n const role = init.role ?? faker.helpers.arrayElement(['reader', 'commenter', 'writer', 'owner'] as PermissionRole[])\n\n const result: IPermission = {\n kind: PermissionKind,\n key: init.key ?? nanoid(),\n type,\n granteeId: init.granteeId ?? nanoid(),\n itemId: init.itemId ?? nanoid(),\n role,\n addingUser: init.addingUser ?? nanoid(),\n depth: init.depth ?? 0,\n sourceRule:\n init.sourceRule ??\n faker.helpers.arrayElement([\n 'direct_user_grant',\n 'creator_default_owner',\n 'parent_owner_editor_rule',\n ] as PermissionSourceRule[]),\n }\n\n if ('displayName' in init) {\n result.displayName = init.displayName\n } else {\n if (type === 'user') {\n result.displayName = faker.person.fullName()\n } else if (type === 'group') {\n result.displayName = faker.lorem.word()\n } else if (type === 'organization') {\n result.displayName = faker.company.name()\n }\n }\n\n if ('expirationTime' in init) {\n result.expirationTime = init.expirationTime\n } else if (type === 'user' || type === 'group') {\n result.expirationTime = faker.date.future().getTime()\n }\n\n return result\n }\n\n /**\n * Generates a random user permission object.\n * @param init Configuration options for the permission object.\n * @returns Random user permission\n */\n userPermission(init: Partial<IPermission> = {}): IPermission {\n return this.permission({ ...init, type: 'user' })\n }\n\n /**\n * Generates a random group permission object.\n * @param init Configuration options for the permission object.\n * @returns Random group permission\n */\n groupPermission(init: Partial<IPermission> = {}): IPermission {\n return this.permission({ ...init, type: 'group' })\n }\n\n /**\n * Generates a random organization permission object.\n * @param init Configuration options for the permission object.\n * @returns Random organization permission\n */\n organizationPermission(init: Partial<IPermission> = {}): IPermission {\n return this.permission({ ...init, type: 'organization' })\n }\n\n /**\n * Generates a list of random permission objects.\n * @param size The size of the returning array. Default is 25.\n * @param init Configuration options for the permission object.\n * @returns List of random permissions\n */\n permissions(size = 25, init: Partial<IPermission> = {}): IPermission[] {\n const result: IPermission[] = []\n for (let i = 0; i < size; i++) {\n result.push(this.permission(init))\n }\n return result\n }\n}\n"]}