@contember/schema-definition 2.1.0-alpha.25 → 2.1.0-alpha.27

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.
Files changed (52) hide show
  1. package/dist/development/src/acl/definition/internal/AclFactory.cjs +10 -4
  2. package/dist/development/src/acl/definition/internal/AclFactory.cjs.map +1 -1
  3. package/dist/development/src/acl/definition/internal/AclFactory.js +10 -4
  4. package/dist/development/src/acl/definition/internal/AclFactory.js.map +1 -1
  5. package/dist/development/src/acl/definition/internal/stores.cjs.map +1 -1
  6. package/dist/development/src/acl/definition/internal/stores.js.map +1 -1
  7. package/dist/development/src/acl/definition/permissions.cjs +4 -1
  8. package/dist/development/src/acl/definition/permissions.cjs.map +1 -1
  9. package/dist/development/src/acl/definition/permissions.js +4 -1
  10. package/dist/development/src/acl/definition/permissions.js.map +1 -1
  11. package/dist/development/src/model/definition/IndexDefinition.cjs +2 -2
  12. package/dist/development/src/model/definition/IndexDefinition.cjs.map +1 -1
  13. package/dist/development/src/model/definition/IndexDefinition.js +2 -2
  14. package/dist/development/src/model/definition/IndexDefinition.js.map +1 -1
  15. package/dist/development/src/model/definition/UniqueDefinition.cjs.map +1 -1
  16. package/dist/development/src/model/definition/UniqueDefinition.js.map +1 -1
  17. package/dist/production/src/acl/definition/internal/AclFactory.cjs +10 -4
  18. package/dist/production/src/acl/definition/internal/AclFactory.cjs.map +1 -1
  19. package/dist/production/src/acl/definition/internal/AclFactory.js +10 -4
  20. package/dist/production/src/acl/definition/internal/AclFactory.js.map +1 -1
  21. package/dist/production/src/acl/definition/internal/stores.cjs.map +1 -1
  22. package/dist/production/src/acl/definition/internal/stores.js.map +1 -1
  23. package/dist/production/src/acl/definition/permissions.cjs +4 -1
  24. package/dist/production/src/acl/definition/permissions.cjs.map +1 -1
  25. package/dist/production/src/acl/definition/permissions.js +4 -1
  26. package/dist/production/src/acl/definition/permissions.js.map +1 -1
  27. package/dist/production/src/model/definition/IndexDefinition.cjs +2 -2
  28. package/dist/production/src/model/definition/IndexDefinition.cjs.map +1 -1
  29. package/dist/production/src/model/definition/IndexDefinition.js +2 -2
  30. package/dist/production/src/model/definition/IndexDefinition.js.map +1 -1
  31. package/dist/production/src/model/definition/UniqueDefinition.cjs.map +1 -1
  32. package/dist/production/src/model/definition/UniqueDefinition.js.map +1 -1
  33. package/dist/tests/tsconfig.tsbuildinfo +1 -1
  34. package/dist/types/acl/definition/internal/AclFactory.d.ts +1 -1
  35. package/dist/types/acl/definition/internal/AclFactory.d.ts.map +1 -1
  36. package/dist/types/acl/definition/internal/stores.d.ts +7 -3
  37. package/dist/types/acl/definition/internal/stores.d.ts.map +1 -1
  38. package/dist/types/acl/definition/permissions.d.ts +7 -2
  39. package/dist/types/acl/definition/permissions.d.ts.map +1 -1
  40. package/dist/types/index.d.ts +1 -1
  41. package/dist/types/model/definition/IndexDefinition.d.ts +2 -0
  42. package/dist/types/model/definition/IndexDefinition.d.ts.map +1 -1
  43. package/dist/types/model/definition/UniqueDefinition.d.ts +1 -0
  44. package/dist/types/model/definition/UniqueDefinition.d.ts.map +1 -1
  45. package/dist/types/tsconfig.tsbuildinfo +1 -1
  46. package/package.json +3 -3
  47. package/src/acl/definition/internal/AclFactory.ts +9 -4
  48. package/src/acl/definition/internal/stores.ts +2 -2
  49. package/src/acl/definition/permissions.ts +12 -3
  50. package/src/model/definition/IndexDefinition.ts +7 -3
  51. package/src/model/definition/UniqueDefinition.ts +1 -0
  52. package/tests/cases/unit/readAclDefinitions.test.ts +189 -163
@@ -1 +1 @@
1
- {"version":3,"file":"AclFactory.d.ts","sourceRoot":"","sources":["../../../../../src/acl/definition/internal/AclFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAY,MAAM,mBAAmB,CAAA;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAKhD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAK/B,qBAAa,UAAU;IAErB,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK,CAAC,MAAM;IAIrB,MAAM,CACZ,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACtC,GAAG,CAAC,MAAM;IAuBb,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,0BAA0B;IA+BlC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IAsBvG,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,MAAM,CAAC,gBAAgB;CAwB/B;AAGD,MAAM,MAAM,iBAAiB,GAAG;IAAE,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAA;CAAE,CAAA;AACvE,MAAM,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAChE,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"AclFactory.d.ts","sourceRoot":"","sources":["../../../../../src/acl/definition/internal/AclFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAY,MAAM,mBAAmB,CAAA;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAKhD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAK/B,qBAAa,UAAU;IAErB,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK,CAAC,MAAM;IAIrB,MAAM,CACZ,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACtC,GAAG,CAAC,MAAM;IAuBb,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,0BAA0B;IA+BlC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IAsBvG,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,gBAAgB;CA6BxB;AAGD,MAAM,MAAM,iBAAiB,GAAG;IAAE,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAA;CAAE,CAAA;AACvE,MAAM,MAAM,mBAAmB,GAAG,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAChE,MAAM,MAAM,0BAA0B,GAAG,GAAG,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAA"}
@@ -1,7 +1,11 @@
1
+ import { AllowDefinitionFactory } from '../permissions';
1
2
  import { Role } from '../roles';
2
- import { AllowDefinition } from '../permissions';
3
- export type EntityPermissionsDefinition = AllowDefinition<any> & {
3
+ export type EntityPermissionsDefinition = {
4
+ factory: AllowDefinitionFactory<any>;
4
5
  role: Role<string>;
5
6
  };
6
- export declare const allowDefinitionsStore: import("../../../utils/MetadataStore").MetadataStore<EntityPermissionsDefinition[]>;
7
+ export declare const allowDefinitionsStore: import("../../../utils/MetadataStore").MetadataStore<{
8
+ factory: AllowDefinitionFactory<any>;
9
+ role: Role<string>;
10
+ }[]>;
7
11
  //# sourceMappingURL=stores.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../../../../../src/acl/definition/internal/stores.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,MAAM,MAAM,2BAA2B,GACpC,eAAe,CAAC,GAAG,CAAC,GACpB;IACD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;CAClB,CAAA;AACF,eAAO,MAAM,qBAAqB,qFAAyD,CAAA"}
1
+ {"version":3,"file":"stores.d.ts","sourceRoot":"","sources":["../../../../../src/acl/definition/internal/stores.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAE/B,MAAM,MAAM,2BAA2B,GACpC;IACD,OAAO,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAA;IACpC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;CAClB,CAAA;AACF,eAAO,MAAM,qBAAqB;aAHvB,sBAAsB,CAAC,GAAG,CAAC;UAC9B,IAAI,CAAC,MAAM,CAAC;IAEuE,CAAA"}
@@ -1,4 +1,4 @@
1
- import { Acl } from '@contember/schema';
1
+ import { Acl, Model } from '@contember/schema';
2
2
  import { Role } from './roles';
3
3
  import { VariableDefinition } from './variables';
4
4
  import { PredicateEvaluationReference } from './references';
@@ -14,5 +14,10 @@ export interface AllowDefinition<E> {
14
14
  read?: true | ('id' | keyof E)[];
15
15
  delete?: true;
16
16
  }
17
- export declare const allow: <E, R extends Role<string>>(role: R | R[], args: AllowDefinition<E>) => DecoratorFunction<E>;
17
+ export type AllowDefinitionFactory<E> = (args: {
18
+ model: Model.Schema;
19
+ entity: Model.Entity<(keyof E) & string>;
20
+ except: (...fields: (keyof E)[]) => (keyof E)[];
21
+ }) => AllowDefinition<E>;
22
+ export declare const allow: <E, R extends Role<string>>(role: R | R[], args: AllowDefinition<E> | AllowDefinitionFactory<E>) => DecoratorFunction<E>;
18
23
  //# sourceMappingURL=permissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../src/acl/definition/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAA;AAE3D,OAAO,EAAE,iBAAiB,EAAqB,MAAM,aAAa,CAAA;AAElE,MAAM,MAAM,cAAc,GAAG,4BAA4B,GAAG,kBAAkB,CAAA;AAC9E,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;AAEpE,MAAM,WAAW,eAAe,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAClC,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAClC,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAChC,MAAM,CAAC,EAAE,IAAI,CAAA;CACb;AAED,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,KAAG,iBAAiB,CAAC,CAAC,CAM7G,CAAA"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../src/acl/definition/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAA;AAE3D,OAAO,EAAE,iBAAiB,EAAqB,MAAM,aAAa,CAAA;AAElE,MAAM,MAAM,cAAc,GAAG,4BAA4B,GAAG,kBAAkB,CAAA;AAC9E,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;AAEpE,MAAM,WAAW,eAAe,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,OAAO,CAAC,EAAE,IAAI,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAClC,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAClC,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,EAAE,CAAA;IAChC,MAAM,CAAC,EAAE,IAAI,CAAA;CACb;AAED,MAAM,MAAM,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;IAC9C,KAAK,EAAE,KAAK,CAAC,MAAM,CAAA;IACnB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAA;IACxC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;CAC/C,KAAK,eAAe,CAAC,CAAC,CAAC,CAAA;AAExB,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,KAAG,iBAAiB,CAAC,CAAC,CASzI,CAAA"}
@@ -14,7 +14,7 @@ export type { ColumnDefinition, FieldDefinition, OneHasOneDefinition, OneHasOneI
14
14
  export { AclDefinition, ActionsDefinition, SchemaDefinition, InputValidation, createSchema };
15
15
  export declare const c: {
16
16
  AllowCustomPrimary: (role?: Role | Role[]) => import("./utils").DecoratorFunction<any>;
17
- Allow: <E, R extends Role<string>>(role: R | R[], args: AclDefinition.AllowDefinition<E>) => import("./utils").DecoratorFunction<E>;
17
+ Allow: <E, R extends Role<string>>(role: R | R[], args: AclDefinition.AllowDefinition<E> | AclDefinition.AllowDefinitionFactory<E>) => import("./utils").DecoratorFunction<E>;
18
18
  createRole: <Name extends string>(name: Name, options?: AclDefinition.RoleOptions) => Role<Name>;
19
19
  createConditionVariable: <R extends Role<string>, Name extends string>(name: Name, roles: R | R[], fallback?: import("@contember/schema").Input.Condition) => AclDefinition.VariableDefinition<Name, R, import("@contember/schema").Acl.ConditionVariable>;
20
20
  createEntityVariable: <R extends Role<string>, Name extends string>(name: Name, entityName: string, roles: R | R[], fallback?: import("@contember/schema").Input.Condition) => AclDefinition.VariableDefinition<Name, R, import("@contember/schema").Acl.EntityVariable>;
@@ -1,6 +1,8 @@
1
1
  import { DecoratorFunction } from '../../utils';
2
+ import { Model } from '@contember/schema';
2
3
  export type IndexOptions<T> = {
3
4
  fields: (keyof T)[];
5
+ method?: Model.IndexMethod;
4
6
  };
5
7
  export declare function Index<T>(options: IndexOptions<T>): DecoratorFunction<T>;
6
8
  export declare function Index<T>(...fields: (keyof T)[]): DecoratorFunction<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"IndexDefinition.d.ts","sourceRoot":"","sources":["../../../../src/model/definition/IndexDefinition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;CAAE,CAAA;AACrD,wBAAgB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA;AACxE,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"IndexDefinition.d.ts","sourceRoot":"","sources":["../../../../src/model/definition/IndexDefinition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC7B,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;IACnB,MAAM,CAAC,EAAE,KAAK,CAAC,WAAW,CAAA;CAC1B,CAAA;AACD,wBAAgB,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA;AACxE,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA"}
@@ -8,6 +8,7 @@ export type UniqueOptions<T> = {
8
8
  } | {
9
9
  index: true;
10
10
  nulls?: Model.NullsDistinctBehaviour;
11
+ method?: Model.IndexMethod;
11
12
  });
12
13
  export declare function Unique<T>(options: UniqueOptions<T>): DecoratorFunction<T>;
13
14
  export declare function Unique<T>(...fields: (keyof T & string)[]): DecoratorFunction<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"UniqueDefinition.d.ts","sourceRoot":"","sources":["../../../../src/model/definition/UniqueDefinition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC9B,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAA;CAE5B,GAAG,CACD;IACD,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,MAAM,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAA;CAC/B,GACC;IACD,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAA;CACpC,CACD,CAAA;AACD,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAC1E,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"UniqueDefinition.d.ts","sourceRoot":"","sources":["../../../../src/model/definition/UniqueDefinition.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzC,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC9B,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,CAAA;CAE5B,GAAG,CACD;IACD,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,MAAM,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAA;CAC/B,GACC;IACD,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAA;IACpC,MAAM,CAAC,EAAE,KAAK,CAAC,WAAW,CAAA;CAC1B,CACD,CAAA;AACD,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA;AAC1E,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAA"}