@dereekb/firebase 7.13.0 → 7.13.1

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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [7.13.1](https://github.com/dereekb/dbx-components/compare/v7.13.0-dev...v7.13.1) (2022-06-15)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * fixed issue with permission.service.grant.ts declaration order ([b607404](https://github.com/dereekb/dbx-components/commit/b6074041cfeb69b9d17c39a4923fcae742defbab))
11
+
12
+
13
+
5
14
  # [7.13.0](https://github.com/dereekb/dbx-components/compare/v7.12.0-dev...v7.13.0) (2022-06-14)
6
15
 
7
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dereekb/firebase",
3
- "version": "7.13.0",
3
+ "version": "7.13.1",
4
4
  "devDependencies": {
5
5
  "@firebase/rules-unit-testing": "^2.0.0"
6
6
  },
@@ -23,16 +23,16 @@
23
23
  "rxjs": "^7.0.0",
24
24
  "rxfire": "^6.0.3",
25
25
  "firebase": "^9.8.0",
26
- "@dereekb/util": "7.13.0",
26
+ "@dereekb/util": "7.13.1",
27
27
  "make-error": "^1.3.0",
28
28
  "ts-essentials": "^9.1.2",
29
29
  "extra-set": "^2.2.11",
30
- "@dereekb/rxjs": "7.13.0",
30
+ "@dereekb/rxjs": "7.13.1",
31
31
  "ms": "^3.0.0-canary.1",
32
- "@dereekb/model": "7.13.0",
32
+ "@dereekb/model": "7.13.1",
33
33
  "class-transformer": "^0.5.1",
34
34
  "class-validator": "^0.13.2",
35
- "@dereekb/date": "7.13.0",
35
+ "@dereekb/date": "7.13.1",
36
36
  "date-fns": "^2.28.0",
37
37
  "date-fns-tz": "^1.3.0",
38
38
  "rrule": "2.7.0",
@@ -21,13 +21,13 @@ function modelFirebaseFunctionMapFactory(configMap, crudConfigMap) {
21
21
  const crudFunctions = new Set(config);
22
22
  const modelTypeCruds = {};
23
23
  if (crudFunctions.has('create')) {
24
- modelTypeCruds[`create${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_createFn(), { mapInput: (data) => ({ modelType, data }) });
24
+ modelTypeCruds[`create${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_createFn(), { mapInput: (data) => (0, common_1.onCallTypedModelParams)(modelType, data) });
25
25
  }
26
26
  if (crudFunctions.has('update')) {
27
- modelTypeCruds[`update${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_updateFn(), { mapInput: (data) => ({ modelType, data }) });
27
+ modelTypeCruds[`update${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_updateFn(), { mapInput: (data) => (0, common_1.onCallTypedModelParams)(modelType, data) });
28
28
  }
29
29
  if (crudFunctions.has('delete')) {
30
- modelTypeCruds[`delete${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_deleteFn(), { mapInput: (data) => ({ modelType, data }) });
30
+ modelTypeCruds[`delete${modelTypeSuffix}`] = (0, function_callable_1.mapHttpsCallable)(_deleteFn(), { mapInput: (data) => (0, common_1.onCallTypedModelParams)(modelType, data) });
31
31
  }
32
32
  // tslint:disable-next-line
33
33
  x[modelType] = modelTypeCruds;
@@ -1 +1 @@
1
- {"version":3,"file":"model.function.factory.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/function/model.function.factory.ts"],"names":[],"mappings":";;;AAAA,gDAA+D;AAC/D,wCAAqF;AACrF,kDAA8D;AAE9D,yCAAmP;AAEnP,2DAAuD;AAwDvD,SAAgB,+BAA+B,CAAgF,SAA2C,EAAE,aAA4E;IACtP,MAAM,eAAe,GAAG,IAAA,qCAA0B,EAAC,SAAS,CAAC,CAAC;IAE9D,OAAO,CAAC,iBAA4B,EAAE,EAAE;QACtC,MAAM,WAAW,GAA2B,eAAe,CAAC,iBAAiB,CAAC,CAAC;QAE/E,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QACtG,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QACtG,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QAEtG,MAAM,MAAM,GAAG,IAAA,YAAK,EAAiC;YACnD,IAAI,EAAE,WAAwD;YAC9D,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;gBACX,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;oBAC5D,MAAM,eAAe,GAAG,IAAA,4BAAqB,EAAC,SAAS,CAAC,CAAC;oBACzD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAkB,CAAC,CAAC;oBAClD,MAAM,cAAc,GAAG,EAAE,CAAC;oBAE1B,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAA8B,CAAA,EAAE,CAAC,CAAC;qBAC/J;oBAED,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAA8B,CAAA,EAAE,CAAC,CAAC;qBAC/J;oBAED,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAA8B,CAAA,EAAE,CAAC,CAAC;qBAC/J;oBAED,2BAA2B;oBAC1B,CAAS,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;gBACzC,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAtCD,0EAsCC"}
1
+ {"version":3,"file":"model.function.factory.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/client/function/model.function.factory.ts"],"names":[],"mappings":";;;AAAA,gDAA+D;AAC/D,wCAAqF;AACrF,kDAA8D;AAE9D,yCAA2Q;AAE3Q,2DAAuD;AAwDvD,SAAgB,+BAA+B,CAAgF,SAA2C,EAAE,aAA4E;IACtP,MAAM,eAAe,GAAG,IAAA,qCAA0B,EAAC,SAAS,CAAC,CAAC;IAE9D,OAAO,CAAC,iBAA4B,EAAE,EAAE;QACtC,MAAM,WAAW,GAA2B,eAAe,CAAC,iBAAiB,CAAC,CAAC;QAE/E,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QACtG,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QACtG,MAAM,SAAS,GAAG,IAAA,mBAAY,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAa,EAAC,iBAAiB,EAAE,sCAA6B,CAAC,CAAC,CAAC;QAEtG,MAAM,MAAM,GAAG,IAAA,YAAK,EAAiC;YACnD,IAAI,EAAE,WAAwD;YAC9D,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;gBACX,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;oBAC5D,MAAM,eAAe,GAAG,IAAA,4BAAqB,EAAC,SAAS,CAAC,CAAC;oBACzD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,MAAkB,CAAC,CAAC;oBAClD,MAAM,cAAc,GAAG,EAAE,CAAC;oBAE1B,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,+BAAsB,EAAC,SAAS,EAAE,IAAI,CAA4B,EAAE,CAAC,CAAC;qBACjL;oBAED,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,+BAAsB,EAAC,SAAS,EAAE,IAAI,CAA4B,EAAE,CAAC,CAAC;qBACjL;oBAED,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;wBAC9B,cAAsB,CAAC,SAAS,eAAe,EAAE,CAAC,GAAG,IAAA,oCAAgB,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,+BAAsB,EAAC,SAAS,EAAE,IAAI,CAA4B,EAAE,CAAC,CAAC;qBACjL;oBAED,2BAA2B;oBAC1B,CAAS,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;gBACzC,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAtCD,0EAsCC"}
@@ -1,9 +1,17 @@
1
1
  import { ArrayOrValue } from '@dereekb/util';
2
2
  import { DocumentReferenceRef } from '../firestore/reference';
3
- import { FirestoreModelKey, FirestoreModelNameRef } from '../firestore/collection/collection';
3
+ import { FirestoreModelKey, FirestoreModelName, FirestoreModelNameRef } from '../firestore/collection/collection';
4
4
  export interface OnCallTypedModelParams<T = unknown> extends FirestoreModelNameRef {
5
5
  data: T;
6
6
  }
7
+ /**
8
+ * Creates a OnCallTypedModelParams
9
+ *
10
+ * @param modelType
11
+ * @param data
12
+ * @returns
13
+ */
14
+ export declare function onCallTypedModelParams<T extends unknown>(modelType: FirestoreModelName, data: T): OnCallTypedModelParams<T>;
7
15
  /**
8
16
  * Key used on the front-end and backend that refers to a specific function for creating models.
9
17
  */
@@ -1,7 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.onCallCreateModelResult = exports.onCallCreateModelResultWithDocs = exports.DELETE_MODEL_APP_FUNCTION_KEY = exports.UPDATE_MODEL_APP_FUNCTION_KEY = exports.CREATE_MODEL_APP_FUNCTION_KEY = void 0;
3
+ exports.onCallCreateModelResult = exports.onCallCreateModelResultWithDocs = exports.DELETE_MODEL_APP_FUNCTION_KEY = exports.UPDATE_MODEL_APP_FUNCTION_KEY = exports.CREATE_MODEL_APP_FUNCTION_KEY = exports.onCallTypedModelParams = void 0;
4
4
  const util_1 = require("@dereekb/util");
5
+ /**
6
+ * Creates a OnCallTypedModelParams
7
+ *
8
+ * @param modelType
9
+ * @param data
10
+ * @returns
11
+ */
12
+ function onCallTypedModelParams(modelType, data) {
13
+ return {
14
+ modelType,
15
+ data
16
+ };
17
+ }
18
+ exports.onCallTypedModelParams = onCallTypedModelParams;
5
19
  /**
6
20
  * Key used on the front-end and backend that refers to a specific function for creating models.
7
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/model/function.ts"],"names":[],"mappings":";;;AAAA,wCAAsD;AAQtD;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAI3D;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAG3D;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAY3D,SAAgB,+BAA+B,CAAC,MAAmD;IACjG,OAAO,uBAAuB,CAAC,IAAA,cAAO,EAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AACjF,CAAC;AAFD,0EAEC;AAED,SAAgB,uBAAuB,CAAC,SAA0C;IAChF,OAAO;QACL,SAAS,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC;KAC9B,CAAC;AACJ,CAAC;AAJD,0DAIC"}
1
+ {"version":3,"file":"function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/src/lib/common/model/function.ts"],"names":[],"mappings":";;;AAAA,wCAAsD;AAQtD;;;;;;GAMG;AACH,SAAgB,sBAAsB,CAAoB,SAA6B,EAAE,IAAO;IAC9F,OAAO;QACL,SAAS;QACT,IAAI;KACL,CAAC;AACJ,CAAC;AALD,wDAKC;AAED;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAI3D;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAG3D;;GAEG;AACU,QAAA,6BAA6B,GAAG,aAAa,CAAC;AAY3D,SAAgB,+BAA+B,CAAC,MAAmD;IACjG,OAAO,uBAAuB,CAAC,IAAA,cAAO,EAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;AACjF,CAAC;AAFD,0EAEC;AAED,SAAgB,uBAAuB,CAAC,SAA0C;IAChF,OAAO;QACL,SAAS,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC;KAC9B,CAAC;AACJ,CAAC;AAJD,0DAIC"}
@@ -4,10 +4,12 @@ import { AsyncDecisionFunction, Getter, GetterOrValue, Maybe, PromiseOrValue } f
4
4
  import { FirebaseModelContext } from '../context';
5
5
  import { UserRelated } from '../../../model/user';
6
6
  /**
7
- * Convenience function that checks the input context if the user is an admin or grants all roles.
7
+ * DecisionFunction for a FirebaseModelContext that checks if the current user is an admin.
8
+ *
9
+ * @param context
10
+ * @returns
8
11
  */
9
- export declare const grantFullAccessIfAdmin: GeneralGrantRolesIfFunction<FirebaseModelContext>;
10
- export declare function grantModelRolesIfAdmin<R extends string = string>(context: FirebaseModelContext, rolesToGrantToAdmin: GetterOrValue<GrantedRoleMap<R>>, otherwise?: GrantRolesOtherwiseFunction<R>): PromiseOrValue<GrantedRoleMap<R>>;
12
+ export declare const isAdminInFirebaseModelContext: AsyncDecisionFunction<FirebaseModelContext>;
11
13
  /**
12
14
  * Convenience function that checks the input context if the user is an admin or not and grants pre-set admin roles if they are.
13
15
  *
@@ -18,12 +20,10 @@ export declare function grantModelRolesIfAdmin<R extends string = string>(contex
18
20
  */
19
21
  export declare function grantModelRolesIfAdminFunction<R extends string = string>(rolesToGrantToAdmin: GetterOrValue<GrantedRoleMap<R>>): GrantRolesIfFunction<FirebaseModelContext, R>;
20
22
  /**
21
- * DecisionFunction for a FirebaseModelContext that checks if the current user is an admin.
22
- *
23
- * @param context
24
- * @returns
23
+ * Convenience function that checks the input context if the user is an admin or grants all roles.
25
24
  */
26
- export declare const isAdminInFirebaseModelContext: AsyncDecisionFunction<FirebaseModelContext>;
25
+ export declare const grantFullAccessIfAdmin: GeneralGrantRolesIfFunction<FirebaseModelContext>;
26
+ export declare function grantModelRolesIfAdmin<R extends string = string>(context: FirebaseModelContext, rolesToGrantToAdmin: GetterOrValue<GrantedRoleMap<R>>, otherwise?: GrantRolesOtherwiseFunction<R>): PromiseOrValue<GrantedRoleMap<R>>;
27
27
  export declare type UserRelatedModelFirebaseModelContext<T extends UserRelated = UserRelated> = UserRelatedModelFirebaseModelContextModelInput<T> | UserRelatedModelFirebaseModelContextDocumentInput<T>;
28
28
  export declare type UserRelatedModelFirebaseModelContextModelInput<T extends UserRelated = UserRelated> = {
29
29
  model: T;
@@ -34,9 +34,12 @@ export declare type UserRelatedModelFirebaseModelContextDocumentInput<T extends
34
34
  context: FirebaseModelContext;
35
35
  };
36
36
  /**
37
- * Convenience function that checks the input context if the user is related to the model by uid.
37
+ * DecisionFunction for a FirebaseModelContext that checks if the user is related to the model by uid.
38
+ *
39
+ * @param context
40
+ * @returns
38
41
  */
39
- export declare const grantFullAccessIfAuthUserRelated: GeneralGrantRolesIfFunction<UserRelatedModelFirebaseModelContext<UserRelated>>;
42
+ export declare const isOwnerOfUserRelatedModelInFirebaseModelContext: AsyncDecisionFunction<UserRelatedModelFirebaseModelContext<UserRelated>>;
40
43
  /**
41
44
  * Creates a GrantRolesIfFunction that grants roles if the user is related to the model by uid.
42
45
  *
@@ -47,12 +50,9 @@ export declare const grantFullAccessIfAuthUserRelated: GeneralGrantRolesIfFuncti
47
50
  */
48
51
  export declare function grantModelRolesIfAuthUserRelatedModelFunction<T extends UserRelated, R extends string = string>(rolesToGrant: GetterOrValue<GrantedRoleMap<R>>): GrantRolesIfFunction<UserRelatedModelFirebaseModelContext<T>, R>;
49
52
  /**
50
- * DecisionFunction for a FirebaseModelContext that checks if the user is related to the model by uid.
51
- *
52
- * @param context
53
- * @returns
53
+ * Convenience function that checks the input context if the user is related to the model by uid.
54
54
  */
55
- export declare const isOwnerOfUserRelatedModelInFirebaseModelContext: AsyncDecisionFunction<UserRelatedModelFirebaseModelContext<UserRelated>>;
55
+ export declare const grantFullAccessIfAuthUserRelated: GeneralGrantRolesIfFunction<UserRelatedModelFirebaseModelContext<UserRelated>>;
56
56
  /**
57
57
  * Grants the configured roles if the decision is made about the context. Otherwise, returns a NoAccessRoleMap.
58
58
  */
@@ -1,18 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.grantModelRolesIfFunction = exports.grantModelRolesOnlyIfFunction = exports.isOwnerOfUserRelatedModelInFirebaseModelContext = exports.grantModelRolesIfAuthUserRelatedModelFunction = exports.grantFullAccessIfAuthUserRelated = exports.isAdminInFirebaseModelContext = exports.grantModelRolesIfAdminFunction = exports.grantModelRolesIfAdmin = exports.grantFullAccessIfAdmin = void 0;
3
+ exports.grantModelRolesIfFunction = exports.grantModelRolesOnlyIfFunction = exports.grantFullAccessIfAuthUserRelated = exports.grantModelRolesIfAuthUserRelatedModelFunction = exports.isOwnerOfUserRelatedModelInFirebaseModelContext = exports.grantModelRolesIfAdmin = exports.grantFullAccessIfAdmin = exports.grantModelRolesIfAdminFunction = exports.isAdminInFirebaseModelContext = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const model_1 = require("@dereekb/model");
6
6
  const util_1 = require("@dereekb/util");
7
7
  // MARK: Admin
8
8
  /**
9
- * Convenience function that checks the input context if the user is an admin or grants all roles.
9
+ * DecisionFunction for a FirebaseModelContext that checks if the current user is an admin.
10
+ *
11
+ * @param context
12
+ * @returns
10
13
  */
11
- exports.grantFullAccessIfAdmin = grantModelRolesIfAdminFunction(model_1.fullAccessRoleMap);
12
- function grantModelRolesIfAdmin(context, rolesToGrantToAdmin, otherwise) {
13
- return grantModelRolesIfAdminFunction(rolesToGrantToAdmin)(context, otherwise);
14
- }
15
- exports.grantModelRolesIfAdmin = grantModelRolesIfAdmin;
14
+ const isAdminInFirebaseModelContext = (context) => { var _a, _b; return (_b = (_a = context.auth) === null || _a === void 0 ? void 0 : _a.isAdmin()) !== null && _b !== void 0 ? _b : false; };
15
+ exports.isAdminInFirebaseModelContext = isAdminInFirebaseModelContext;
16
16
  /**
17
17
  * Convenience function that checks the input context if the user is an admin or not and grants pre-set admin roles if they are.
18
18
  *
@@ -26,29 +26,13 @@ function grantModelRolesIfAdminFunction(rolesToGrantToAdmin) {
26
26
  }
27
27
  exports.grantModelRolesIfAdminFunction = grantModelRolesIfAdminFunction;
28
28
  /**
29
- * DecisionFunction for a FirebaseModelContext that checks if the current user is an admin.
30
- *
31
- * @param context
32
- * @returns
33
- */
34
- const isAdminInFirebaseModelContext = (context) => { var _a, _b; return (_b = (_a = context.auth) === null || _a === void 0 ? void 0 : _a.isAdmin()) !== null && _b !== void 0 ? _b : false; };
35
- exports.isAdminInFirebaseModelContext = isAdminInFirebaseModelContext;
36
- /**
37
- * Convenience function that checks the input context if the user is related to the model by uid.
38
- */
39
- exports.grantFullAccessIfAuthUserRelated = grantModelRolesIfAuthUserRelatedModelFunction(model_1.fullAccessRoleMap);
40
- /**
41
- * Creates a GrantRolesIfFunction that grants roles if the user is related to the model by uid.
42
- *
43
- * @param context
44
- * @param rolesToGrant
45
- * @param otherwise
46
- * @returns
29
+ * Convenience function that checks the input context if the user is an admin or grants all roles.
47
30
  */
48
- function grantModelRolesIfAuthUserRelatedModelFunction(rolesToGrant) {
49
- return grantModelRolesIfFunction(exports.isOwnerOfUserRelatedModelInFirebaseModelContext, rolesToGrant);
31
+ exports.grantFullAccessIfAdmin = grantModelRolesIfAdminFunction(model_1.fullAccessRoleMap);
32
+ function grantModelRolesIfAdmin(context, rolesToGrantToAdmin, otherwise) {
33
+ return grantModelRolesIfAdminFunction(rolesToGrantToAdmin)(context, otherwise);
50
34
  }
51
- exports.grantModelRolesIfAuthUserRelatedModelFunction = grantModelRolesIfAuthUserRelatedModelFunction;
35
+ exports.grantModelRolesIfAdmin = grantModelRolesIfAdmin;
52
36
  /**
53
37
  * DecisionFunction for a FirebaseModelContext that checks if the user is related to the model by uid.
54
38
  *
@@ -73,6 +57,22 @@ const isOwnerOfUserRelatedModelInFirebaseModelContext = (context) => tslib_1.__a
73
57
  return decision;
74
58
  });
75
59
  exports.isOwnerOfUserRelatedModelInFirebaseModelContext = isOwnerOfUserRelatedModelInFirebaseModelContext;
60
+ /**
61
+ * Creates a GrantRolesIfFunction that grants roles if the user is related to the model by uid.
62
+ *
63
+ * @param context
64
+ * @param rolesToGrant
65
+ * @param otherwise
66
+ * @returns
67
+ */
68
+ function grantModelRolesIfAuthUserRelatedModelFunction(rolesToGrant) {
69
+ return grantModelRolesIfFunction(exports.isOwnerOfUserRelatedModelInFirebaseModelContext, rolesToGrant);
70
+ }
71
+ exports.grantModelRolesIfAuthUserRelatedModelFunction = grantModelRolesIfAuthUserRelatedModelFunction;
72
+ /**
73
+ * Convenience function that checks the input context if the user is related to the model by uid.
74
+ */
75
+ exports.grantFullAccessIfAuthUserRelated = grantModelRolesIfAuthUserRelatedModelFunction(model_1.fullAccessRoleMap);
76
76
  /**
77
77
  * Creates a GrantRolesOnlyIfFunction
78
78
  *
@@ -93,6 +93,9 @@ exports.grantModelRolesOnlyIfFunction = grantModelRolesOnlyIfFunction;
93
93
  * @returns
94
94
  */
95
95
  function grantModelRolesIfFunction(grantIf, grantedRoles) {
96
+ if (!grantIf) {
97
+ throw new Error('missing grant if');
98
+ }
96
99
  return (context, otherwise = model_1.noAccessRoleMap) => tslib_1.__awaiter(this, void 0, void 0, function* () {
97
100
  var _a;
98
101
  const decision = yield grantIf(context);
@@ -1 +1 @@
1
- {"version":3,"file":"permission.service.grant.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/model/permission/permission.service.grant.ts"],"names":[],"mappings":";;;;AACA,0CAAoF;AACpF,wCAAwH;AAIxH,cAAc;AACd;;GAEG;AACU,QAAA,sBAAsB,GAAsD,8BAA8B,CAAC,yBAAiB,CAAC,CAAC;AAE3I,SAAgB,sBAAsB,CAA4B,OAA6B,EAAE,mBAAqD,EAAE,SAA0C;IAChM,OAAO,8BAA8B,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AACjF,CAAC;AAFD,wDAEC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAA4B,mBAAqD;IAC7H,OAAO,yBAAyB,CAAC,qCAA6B,EAAE,mBAAmB,CAAC,CAAC;AACvF,CAAC;AAFD,wEAEC;AAED;;;;;GAKG;AACI,MAAM,6BAA6B,GAAgD,CAAC,OAA6B,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,OAAO,EAAE,mCAAI,KAAK,CAAA,EAAA,CAAC;AAAjJ,QAAA,6BAA6B,iCAAoH;AAe9J;;GAEG;AACU,QAAA,gCAAgC,GAAmF,6CAA6C,CAAC,yBAAiB,CAAC,CAAC;AAEjM;;;;;;;GAOG;AACH,SAAgB,6CAA6C,CAAmD,YAA8C;IAC5J,OAAO,yBAAyB,CAAC,uDAA+C,EAAE,YAAY,CAAC,CAAC;AAClG,CAAC;AAFD,sGAEC;AAED;;;;;GAKG;AACI,MAAM,+CAA+C,GAA6E,CAAO,OAA6C,EAAE,EAAE;IAC/L,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;IAElC,IAAI,IAAI,IAAI,IAAI,EAAE;QAChB,IAAI,KAAK,GAAwB,OAA0D,CAAC,KAAK,CAAC;QAElG,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,QAAQ,GAAI,OAA6D,CAAC,QAAQ,CAAC;YAEzF,IAAI,QAAQ,EAAE;gBACZ,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAChD;SACF;QAED,IAAI,KAAK,EAAE;YACT,QAAQ,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC;SACnC;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA,CAAC;AArBW,QAAA,+CAA+C,mDAqB1D;AASF;;;;;;GAMG;AACH,SAAgB,6BAA6B,CAA+B,OAAiC,EAAE,YAA8C;IAC3J,MAAM,EAAE,GAAG,yBAAyB,CAAO,OAAO,EAAE,YAAY,CAAC,CAAC;IAClE,OAAO,CAAC,OAAU,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAHD,sEAGC;AAeD;;;;;;GAMG;AACH,SAAgB,yBAAyB,CAA+B,OAAiC,EAAE,YAA8C;IACvJ,OAAO,CAAO,OAAU,EAAE,YAA4C,uBAAe,EAAE,EAAE;;QACvF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,OAAO,GAAsB,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAA,yBAAkB,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAA,CAAC,MAAM,SAAS,EAAE,CAAC,mCAAI,IAAA,uBAAe,GAAE,CAAC;QAChI,OAAO,OAAO,CAAC;IACjB,CAAC,CAAA,CAAC;AACJ,CAAC;AAND,8DAMC"}
1
+ {"version":3,"file":"permission.service.grant.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase/src/lib/common/model/permission/permission.service.grant.ts"],"names":[],"mappings":";;;;AACA,0CAAoF;AACpF,wCAAwH;AAIxH,cAAc;AACd;;;;;GAKG;AACI,MAAM,6BAA6B,GAAgD,CAAC,OAA6B,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,OAAO,EAAE,mCAAI,KAAK,CAAA,EAAA,CAAC;AAAjJ,QAAA,6BAA6B,iCAAoH;AAE9J;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAA4B,mBAAqD;IAC7H,OAAO,yBAAyB,CAAC,qCAA6B,EAAE,mBAAmB,CAAC,CAAC;AACvF,CAAC;AAFD,wEAEC;AAED;;GAEG;AACU,QAAA,sBAAsB,GAAsD,8BAA8B,CAAC,yBAAiB,CAAC,CAAC;AAE3I,SAAgB,sBAAsB,CAA4B,OAA6B,EAAE,mBAAqD,EAAE,SAA0C;IAChM,OAAO,8BAA8B,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AACjF,CAAC;AAFD,wDAEC;AAeD;;;;;GAKG;AACI,MAAM,+CAA+C,GAA6E,CAAO,OAA6C,EAAE,EAAE;IAC/L,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;IAElC,IAAI,IAAI,IAAI,IAAI,EAAE;QAChB,IAAI,KAAK,GAAwB,OAA0D,CAAC,KAAK,CAAC;QAElG,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,QAAQ,GAAI,OAA6D,CAAC,QAAQ,CAAC;YAEzF,IAAI,QAAQ,EAAE;gBACZ,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAChD;SACF;QAED,IAAI,KAAK,EAAE;YACT,QAAQ,GAAG,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG,CAAC;SACnC;KACF;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA,CAAC;AArBW,QAAA,+CAA+C,mDAqB1D;AAEF;;;;;;;GAOG;AACH,SAAgB,6CAA6C,CAAmD,YAA8C;IAC5J,OAAO,yBAAyB,CAAC,uDAA+C,EAAE,YAAY,CAAC,CAAC;AAClG,CAAC;AAFD,sGAEC;AAED;;GAEG;AACU,QAAA,gCAAgC,GAAmF,6CAA6C,CAAC,yBAAiB,CAAC,CAAC;AASjM;;;;;;GAMG;AACH,SAAgB,6BAA6B,CAA+B,OAAiC,EAAE,YAA8C;IAC3J,MAAM,EAAE,GAAG,yBAAyB,CAAO,OAAO,EAAE,YAAY,CAAC,CAAC;IAClE,OAAO,CAAC,OAAU,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAHD,sEAGC;AAeD;;;;;;GAMG;AACH,SAAgB,yBAAyB,CAA+B,OAAiC,EAAE,YAA8C;IACvJ,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;KACrC;IAED,OAAO,CAAO,OAAU,EAAE,YAA4C,uBAAe,EAAE,EAAE;;QACvF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,OAAO,GAAsB,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAA,yBAAkB,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAA,CAAC,MAAM,SAAS,EAAE,CAAC,mCAAI,IAAA,uBAAe,GAAE,CAAC;QAChI,OAAO,OAAO,CAAC;IACjB,CAAC,CAAA,CAAC;AACJ,CAAC;AAVD,8DAUC"}
package/test/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [7.13.1](https://github.com/dereekb/dbx-components/compare/v7.13.0-dev...v7.13.1) (2022-06-15)
6
+
7
+
8
+
5
9
  # [7.13.0](https://github.com/dereekb/dbx-components/compare/v7.12.0-dev...v7.13.0) (2022-06-14)
6
10
 
7
11
 
package/test/package.json CHANGED
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "@dereekb/firebase/test",
3
- "version": "7.13.0",
3
+ "version": "7.13.1",
4
4
  "main": "./src/index.js",
5
5
  "typings": "./src/index.d.ts",
6
6
  "dependencies": {},
7
7
  "peerDependencies": {
8
- "@dereekb/util/test": "7.13.0",
9
- "@dereekb/util": "7.13.0",
8
+ "@dereekb/util/test": "7.13.1",
9
+ "@dereekb/util": "7.13.1",
10
10
  "make-error": "^1.3.0",
11
11
  "ts-essentials": "^9.1.2",
12
12
  "extra-set": "^2.2.11",
13
- "@dereekb/firebase": "7.13.0",
13
+ "@dereekb/firebase": "7.13.1",
14
14
  "rxjs": "^7.0.0",
15
15
  "rxfire": "^6.0.3",
16
16
  "firebase": "^9.8.0",
17
- "@dereekb/rxjs": "7.13.0",
17
+ "@dereekb/rxjs": "7.13.1",
18
18
  "ms": "^3.0.0-canary.1",
19
- "@dereekb/model": "7.13.0",
19
+ "@dereekb/model": "7.13.1",
20
20
  "class-transformer": "^0.5.1",
21
21
  "class-validator": "^0.13.2",
22
- "@dereekb/date": "7.13.0",
22
+ "@dereekb/date": "7.13.1",
23
23
  "date-fns": "^2.28.0",
24
24
  "date-fns-tz": "^1.3.0",
25
25
  "rrule": "2.7.0",
@@ -284,7 +284,7 @@ function describeQueryDriverTests(f) {
284
284
  tryComplete();
285
285
  });
286
286
  // add one item
287
- (0, firebase_1.makeDocuments)(f.instance.firestoreCollection.documentAccessor(), {
287
+ (0, util_1.waitForMs)(10).then(() => (0, firebase_1.makeDocuments)(f.instance.firestoreCollection.documentAccessor(), {
288
288
  count: itemsToAdd,
289
289
  init: (i) => {
290
290
  return {
@@ -295,7 +295,7 @@ function describeQueryDriverTests(f) {
295
295
  }).then(() => {
296
296
  addCompleted = true;
297
297
  tryComplete();
298
- });
298
+ }));
299
299
  });
300
300
  it('should emit when the query results update (an item is removed).', (done) => {
301
301
  const itemsToRemove = 1;
@@ -314,14 +314,14 @@ function describeQueryDriverTests(f) {
314
314
  expect(results.docs.length).toBe(items.length - itemsToRemove);
315
315
  tryComplete();
316
316
  });
317
- items[0].accessor.exists().then((exists) => {
317
+ (0, util_1.waitForMs)(10).then(() => items[0].accessor.exists().then((exists) => {
318
318
  expect(exists).toBe(true);
319
319
  // remove one item
320
320
  return items[0].accessor.delete().then(() => {
321
321
  deleteCompleted = true;
322
322
  tryComplete();
323
323
  });
324
- });
324
+ }));
325
325
  });
326
326
  });
327
327
  describe('constraint', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/test.driver.query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.driver.query.js","sourceRoot":"","sources":["../../../../../../../packages/firebase/test/src/lib/common/test.driver.query.ts"],"names":[],"mappings":"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"}