@nymphjs/tilmeld 1.0.0-alpha.2 → 1.0.0-alpha.6

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/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AAEvB,2CAAyB;AAEzB,8DAAsC;AAC7B,qBADF,oBAAU,CACE;AAEnB,0CAAwB;AACxB,oDAA4B;AACnB,gBADF,eAAK,CACE;AAEd,wDAAgC;AACvB,kBADF,iBAAO,CACE;AAChB,kBAAe,iBAAO,CAAC;AAEvB,kDAAgC;AAEhC,yCAAuB;AACvB,kDAA0B;AACjB,eADF,cAAI,CACE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AAEvB,2CAAyB;AAEzB,8DAAsC;AAC7B,qBADF,oBAAU,CACE;AAEnB,0CAAwB;AACxB,oDAA4B;AACnB,gBADF,eAAK,CACE;AAEd,wDAAgC;AACvB,kBADF,iBAAO,CACE;AAEhB,kDAAgC;AAEhC,wEAAgD;AACvC,0BADF,yBAAe,CACE;AAExB,yCAAuB;AACvB,kDAA0B;AACjB,eADF,cAAI,CACE"}
@@ -0,0 +1,12 @@
1
+ import Joi from 'joi';
2
+ declare const _default: {
3
+ user: Joi.ObjectSchema<any>;
4
+ group: Joi.ObjectSchema<any>;
5
+ acUser: Joi.NumberSchema;
6
+ acGroup: Joi.NumberSchema;
7
+ acOther: Joi.NumberSchema;
8
+ acRead: Joi.ArraySchema;
9
+ acWrite: Joi.ArraySchema;
10
+ acFull: Joi.ArraySchema;
11
+ };
12
+ export default _default;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const nymph_1 = require("@nymphjs/nymph");
7
+ const joi_1 = __importDefault(require("joi"));
8
+ const User_1 = __importDefault(require("./User"));
9
+ const Group_1 = __importDefault(require("./Group"));
10
+ exports.default = {
11
+ user: joi_1.default.object().instance(User_1.default),
12
+ group: joi_1.default.object().instance(Group_1.default),
13
+ acUser: joi_1.default.number().valid(nymph_1.TilmeldAccessLevels.NO_ACCESS, nymph_1.TilmeldAccessLevels.READ_ACCESS, nymph_1.TilmeldAccessLevels.WRITE_ACCESS, nymph_1.TilmeldAccessLevels.FULL_ACCESS),
14
+ acGroup: joi_1.default.number().valid(nymph_1.TilmeldAccessLevels.NO_ACCESS, nymph_1.TilmeldAccessLevels.READ_ACCESS, nymph_1.TilmeldAccessLevels.WRITE_ACCESS, nymph_1.TilmeldAccessLevels.FULL_ACCESS),
15
+ acOther: joi_1.default.number().valid(nymph_1.TilmeldAccessLevels.NO_ACCESS, nymph_1.TilmeldAccessLevels.READ_ACCESS, nymph_1.TilmeldAccessLevels.WRITE_ACCESS, nymph_1.TilmeldAccessLevels.FULL_ACCESS),
16
+ acRead: joi_1.default.array().items(joi_1.default.alternatives().try(joi_1.default.object().instance(User_1.default), joi_1.default.object().instance(Group_1.default))),
17
+ acWrite: joi_1.default.array().items(joi_1.default.alternatives().try(joi_1.default.object().instance(User_1.default), joi_1.default.object().instance(Group_1.default))),
18
+ acFull: joi_1.default.array().items(joi_1.default.alternatives().try(joi_1.default.object().instance(User_1.default), joi_1.default.object().instance(Group_1.default))),
19
+ };
20
+ //# sourceMappingURL=tilmeldJoiProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tilmeldJoiProps.js","sourceRoot":"","sources":["../src/tilmeldJoiProps.ts"],"names":[],"mappings":";;;;;AAAA,0CAAqD;AACrD,8CAAsB;AAEtB,kDAA0B;AAC1B,oDAA4B;AAE5B,kBAAe;IACb,IAAI,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC;IACjC,KAAK,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAK,CAAC;IACnC,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CACxB,2BAAmB,CAAC,SAAS,EAC7B,2BAAmB,CAAC,WAAW,EAC/B,2BAAmB,CAAC,YAAY,EAChC,2BAAmB,CAAC,WAAW,CAChC;IACD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CACzB,2BAAmB,CAAC,SAAS,EAC7B,2BAAmB,CAAC,WAAW,EAC/B,2BAAmB,CAAC,YAAY,EAChC,2BAAmB,CAAC,WAAW,CAChC;IACD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CACzB,2BAAmB,CAAC,SAAS,EAC7B,2BAAmB,CAAC,WAAW,EAC/B,2BAAmB,CAAC,YAAY,EAChC,2BAAmB,CAAC,WAAW,CAChC;IACD,MAAM,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CACvB,aAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CACpB,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,EAC3B,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAK,CAAC,CAC7B,CACF;IACD,OAAO,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CACxB,aAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CACpB,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,EAC3B,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAK,CAAC,CAC7B,CACF;IACD,MAAM,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CACvB,aAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CACpB,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,EAC3B,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAK,CAAC,CAC7B,CACF;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nymphjs/tilmeld",
3
- "version": "1.0.0-alpha.2",
3
+ "version": "1.0.0-alpha.6",
4
4
  "description": "NymphJS - Tilmeld User and Group System",
5
5
  "type": "commonjs",
6
6
  "main": "dist/index.js",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  "license": "Apache-2.0",
33
33
  "dependencies": {
34
- "@nymphjs/nymph": "^1.0.0-alpha.2",
34
+ "@nymphjs/nymph": "^1.0.0-alpha.6",
35
35
  "crypto-js": "^4.1.1",
36
36
  "email-templates": "^8.0.8",
37
37
  "express": "^4.17.1",
@@ -44,9 +44,9 @@
44
44
  "pug": "^3.0.2"
45
45
  },
46
46
  "devDependencies": {
47
- "@nymphjs/client": "^1.0.0-alpha.2",
48
- "@nymphjs/client-node": "^1.0.0-alpha.2",
49
- "@nymphjs/driver-sqlite3": "^1.0.0-alpha.2",
47
+ "@nymphjs/client": "^1.0.0-alpha.6",
48
+ "@nymphjs/client-node": "^1.0.0-alpha.6",
49
+ "@nymphjs/driver-sqlite3": "^1.0.0-alpha.6",
50
50
  "@tsconfig/recommended": "^1.0.1",
51
51
  "@types/crypto-js": "^4.0.2",
52
52
  "@types/email-templates": "^8.0.4",
@@ -60,5 +60,5 @@
60
60
  "ts-jest": "^27.0.5",
61
61
  "typescript": "^4.3.5"
62
62
  },
63
- "gitHead": "9596354bffaa484f3002f3063f0963f6261040be"
63
+ "gitHead": "81b3a610d047aee69e74a9f61fa37a158df3cd8b"
64
64
  }
package/src/Group.test.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { SQLite3Driver } from '@nymphjs/driver-sqlite3';
2
- import nymph from '@nymphjs/nymph';
2
+ import { Nymph } from '@nymphjs/nymph';
3
3
 
4
4
  import Tilmeld from './Tilmeld';
5
5
  import defaults from './conf/defaults';
@@ -16,7 +16,7 @@ const tilmeld = new Tilmeld({
16
16
  cancelChangeRedirect: 'http://localhost:8080',
17
17
  jwtSecret: 'shhhhh',
18
18
  });
19
- nymph.init(
19
+ const _nymph = new Nymph(
20
20
  {},
21
21
  new SQLite3Driver({
22
22
  filename: ':memory:',
@@ -37,6 +37,14 @@ describe('Group', () => {
37
37
  return newGroup;
38
38
  }
39
39
 
40
+ it('new group passes validation', async () => {
41
+ const validGroup = await makeNewGroup();
42
+
43
+ expect(() => {
44
+ defaults.validatorGroup(validGroup);
45
+ }).not.toThrow();
46
+ });
47
+
40
48
  it("doesn't allow unknown keys", async () => {
41
49
  const invalidGroup = await makeNewGroup();
42
50
 
package/src/Group.ts CHANGED
@@ -10,6 +10,7 @@ import {
10
10
  import md5 from 'crypto-js/md5';
11
11
  import { difference } from 'lodash';
12
12
 
13
+ import type Tilmeld from './Tilmeld';
13
14
  import AbleObject from './AbleObject';
14
15
  import {
15
16
  BadDataError,
@@ -17,7 +18,6 @@ import {
17
18
  BadUsernameError,
18
19
  CouldNotChangeDefaultPrimaryGroupError,
19
20
  } from './errors';
20
- import Tilmeld from './Tilmeld';
21
21
  import User, { UserData } from './User';
22
22
 
23
23
  export type GroupData = {
@@ -72,11 +72,20 @@ export type GroupData = {
72
72
  unverifiedSecondary?: boolean;
73
73
  };
74
74
 
75
+ /**
76
+ * A user group data model.
77
+ *
78
+ * Written by Hunter Perrin for SciActive.
79
+ *
80
+ * @author Hunter Perrin <hperrin@gmail.com>
81
+ * @copyright SciActive Inc
82
+ * @see http://nymph.io/
83
+ */
75
84
  export default class Group extends AbleObject<GroupData> {
76
85
  /**
77
86
  * The instance of Tilmeld to use for queries.
78
87
  */
79
- public static tilmeld: Tilmeld;
88
+ static tilmeld: Tilmeld;
80
89
  static ETYPE = 'tilmeld_group';
81
90
  static class = 'Group';
82
91