larvituser 0.19.0 → 0.20.4

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { LogInstance } from 'larvitutils';
2
+ import { UserLib } from './index';
3
+ export declare type UserBaseOptions = {
4
+ userInstance: UserLib;
5
+ log: LogInstance;
6
+ uuid: string;
7
+ username: string;
8
+ passwordIsFalse: boolean;
9
+ fields?: Record<string, string[]>;
10
+ };
11
+ export declare class UserBase {
12
+ private userInstance;
13
+ private log;
14
+ uuid: string;
15
+ username: string;
16
+ passwordIsFalse: boolean;
17
+ fields: Record<string, string[]>;
18
+ constructor(options: UserBaseOptions);
19
+ /**
20
+ * Add a field with value
21
+ *
22
+ * @param {string} name -
23
+ * @param {string} value -
24
+ * @returns {Promise<void>} -
25
+ */
26
+ addField(name: string, value: string | string[]): Promise<void>;
27
+ /**
28
+ * Adds one or more fields with values to the user object. Does not overwrite existing values. It is possible to add the same value multiple times
29
+ *
30
+ * @param {object} fields - field name as key, field values as array to that key - ex: {'role': ['admin','user']}
31
+ * @returns {Promise<void>} -
32
+ */
33
+ addFields(fields: Record<string, string | string[]>): Promise<void>;
34
+ /**
35
+ * Replace all fields
36
+ * IMPORTANT!!! Will clear all data not given in the fields parameter
37
+ *
38
+ * @param {object} fields - field name as key, field values as array to that key - ex: {'role': ['admin','user']}
39
+ * @returns {Promise<void>} -
40
+ */
41
+ replaceFields(fields: Record<string, string | string[]>): Promise<void>;
42
+ rm(): Promise<void>;
43
+ /**
44
+ * Remove a field from this user
45
+ *
46
+ * @param {string} name -
47
+ * @returns {Promise<void>} -
48
+ */
49
+ rmField(name: string): Promise<void>;
50
+ setPassword(newPassword: string): Promise<void>;
51
+ setUsername(newUsername: string): Promise<void>;
52
+ }
53
+ //# sourceMappingURL=userBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userBase.d.ts","sourceRoot":"","sources":["../src/userBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKlC,oBAAY,eAAe,GAAG;IAC7B,YAAY,EAAE,OAAO,CAAC;IACtB,GAAG,EAAE,WAAW,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,QAAQ;IACpB,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,GAAG,CAAc;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBAE5B,OAAO,EAAE,eAAe;IAUpC;;;;;;OAMG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;OAKG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBzE;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvE,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC;IAezB;;;;;OAKG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpC,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/C,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAYrD"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserBase = void 0;
4
+ const helpers_1 = require("./helpers");
5
+ const topLogPrefix = 'larvituser: userBase.ts:';
6
+ class UserBase {
7
+ constructor(options) {
8
+ this.userInstance = options.userInstance;
9
+ this.log = options.log;
10
+ this.uuid = options.uuid;
11
+ this.username = options.username;
12
+ this.passwordIsFalse = options.passwordIsFalse;
13
+ this.fields = options.fields ?? {};
14
+ }
15
+ /**
16
+ * Add a field with value
17
+ *
18
+ * @param {string} name -
19
+ * @param {string} value -
20
+ * @returns {Promise<void>} -
21
+ */
22
+ async addField(name, value) {
23
+ await this.addFields({ [name]: value });
24
+ }
25
+ /**
26
+ * Adds one or more fields with values to the user object. Does not overwrite existing values. It is possible to add the same value multiple times
27
+ *
28
+ * @param {object} fields - field name as key, field values as array to that key - ex: {'role': ['admin','user']}
29
+ * @returns {Promise<void>} -
30
+ */
31
+ async addFields(fields) {
32
+ var _a;
33
+ const logPrefix = `${topLogPrefix} UserBase.addFields() -`;
34
+ if (!this.uuid) {
35
+ const err = new Error('Cannot add field; no user loaded');
36
+ this.log.verbose(`${logPrefix} ${err.message}`);
37
+ throw err;
38
+ }
39
+ await this.userInstance.addUserDataFields(this.uuid, fields);
40
+ for (const key in fields) {
41
+ const value = (0, helpers_1.arrayify)(fields[key]);
42
+ (_a = this.fields)[key] ?? (_a[key] = []);
43
+ this.fields[key].push(...value);
44
+ }
45
+ }
46
+ /**
47
+ * Replace all fields
48
+ * IMPORTANT!!! Will clear all data not given in the fields parameter
49
+ *
50
+ * @param {object} fields - field name as key, field values as array to that key - ex: {'role': ['admin','user']}
51
+ * @returns {Promise<void>} -
52
+ */
53
+ async replaceFields(fields) {
54
+ const logPrefix = `${topLogPrefix} UserBase.replaceFields() -`;
55
+ if (!this.uuid) {
56
+ const err = new Error('Cannot replace fields; no user loaded');
57
+ this.log.verbose(`${logPrefix} ${err.message}`);
58
+ throw err;
59
+ }
60
+ await this.userInstance.replaceUserFields(this.uuid, fields);
61
+ // Reload everything
62
+ const user = await this.userInstance.fromUuid(this.uuid);
63
+ // Non-trivial to test
64
+ /* istanbul ignore if */
65
+ if (typeof user === 'boolean') {
66
+ const err = new Error(`Failed to load user after replacing fields, userUuid: ${this.uuid}`);
67
+ this.log.verbose(`${logPrefix} ${err.message}`);
68
+ throw err;
69
+ }
70
+ this.fields = user.fields;
71
+ }
72
+ async rm() {
73
+ const logPrefix = `${topLogPrefix} UserBase.rm() -`;
74
+ if (!this.uuid) {
75
+ const err = new Error('Cannot remove field; no user loaded');
76
+ this.log.verbose(`${logPrefix} ${err.message}`);
77
+ throw err;
78
+ }
79
+ await this.userInstance.rmUser(this.uuid);
80
+ this.username = '';
81
+ this.fields = {};
82
+ }
83
+ /**
84
+ * Remove a field from this user
85
+ *
86
+ * @param {string} name -
87
+ * @returns {Promise<void>} -
88
+ */
89
+ async rmField(name) {
90
+ const logPrefix = `${topLogPrefix} UserBase.rmField() -`;
91
+ if (!this.uuid) {
92
+ const err = new Error('Cannot remove field; no user loaded');
93
+ this.log.verbose(`${logPrefix} ${err.message}`);
94
+ throw err;
95
+ }
96
+ await this.userInstance.rmUserField(this.uuid, name);
97
+ delete this.fields[name];
98
+ }
99
+ async setPassword(newPassword) {
100
+ const logPrefix = `${topLogPrefix} UserBase.setPassword() -`;
101
+ if (!this.uuid) {
102
+ const err = new Error('Cannot set password; no user loaded');
103
+ this.log.verbose(`${logPrefix} ${err.message}`);
104
+ throw err;
105
+ }
106
+ await this.userInstance.setPassword(this.uuid, newPassword);
107
+ }
108
+ async setUsername(newUsername) {
109
+ const logPrefix = `${topLogPrefix} UserBase.setUsername() -`;
110
+ if (!this.uuid) {
111
+ const err = new Error('Cannot set username; no user loaded');
112
+ this.log.verbose(`${logPrefix} ${err.message}`);
113
+ throw err;
114
+ }
115
+ await this.userInstance.setUsername(this.uuid, newUsername);
116
+ this.username = newUsername;
117
+ }
118
+ }
119
+ exports.UserBase = UserBase;
120
+ //# sourceMappingURL=userBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userBase.js","sourceRoot":"","sources":["../src/userBase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { LogInstance } from 'larvitutils';
2
+ export declare type UsersOptions = {
3
+ db: any;
4
+ limit?: string;
5
+ log?: LogInstance;
6
+ matchAllFields?: Record<string, string | Array<string>>;
7
+ matchAllFieldsQ?: Record<string, string | Array<string>>;
8
+ matchExistingFields?: string[];
9
+ offset?: string;
10
+ order?: {
11
+ by?: string;
12
+ direction?: 'asc' | 'desc';
13
+ };
14
+ q?: string;
15
+ returnFields?: string[];
16
+ uuids?: string | string[];
17
+ };
18
+ export declare type UserFields = {
19
+ [key: string]: string[];
20
+ };
21
+ export declare type UserModel = {
22
+ uuid: string;
23
+ username: string;
24
+ fields: UserFields;
25
+ };
26
+ export declare class Users {
27
+ private log;
28
+ private lUtils;
29
+ private options;
30
+ constructor(options: UsersOptions);
31
+ /**
32
+ * Gets distinct data values from speciefied field for all users
33
+ *
34
+ * @param {string} fieldName - the name of the field
35
+ * @returns {Array<string>} - an array with values liek ['value1', 'value2']
36
+ */
37
+ getFieldData(fieldName: string): Promise<string[]>;
38
+ get(): Promise<{
39
+ users: Array<UserModel>;
40
+ totalElements: number;
41
+ }>;
42
+ }
43
+ //# sourceMappingURL=users.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../src/users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,WAAW,EAAS,MAAM,aAAa,CAAC;AAKtD,oBAAY,YAAY,GAAG;IAC1B,EAAE,EAAE,GAAG,CAAC;IACR,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACP,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;KAC3B,CAAC;IACF,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,oBAAY,UAAU,GAAG;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACvB,CAAC;AAEF,oBAAY,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,qBAAa,KAAK;IACjB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAA4B;gBAE/B,OAAO,EAAE,YAAY;IAQjC;;;;;OAKG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQlD,GAAG,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;CA0LxE"}
package/dist/users.js ADDED
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Users = void 0;
4
+ const larvitutils_1 = require("larvitutils");
5
+ const helpers_1 = require("./helpers");
6
+ const topLogPrefix = 'larvituser: users.ts';
7
+ class Users {
8
+ constructor(options) {
9
+ if (!options.db)
10
+ throw new Error('Required option "db" is missing');
11
+ this.log = options.log ?? new larvitutils_1.Log();
12
+ this.lUtils = new larvitutils_1.Utils({ log: this.log });
13
+ this.options = options;
14
+ }
15
+ /**
16
+ * Gets distinct data values from speciefied field for all users
17
+ *
18
+ * @param {string} fieldName - the name of the field
19
+ * @returns {Array<string>} - an array with values liek ['value1', 'value2']
20
+ */
21
+ async getFieldData(fieldName) {
22
+ const { db } = this.options;
23
+ const sql = 'SELECT DISTINCT d.data FROM user_users_data d JOIN user_data_fields f ON d.fieldUuid = f.uuid WHERE f.name = "' + fieldName + '"';
24
+ const { rows } = await db.query(sql);
25
+ return rows.map((r) => r.data);
26
+ }
27
+ async get() {
28
+ var _a, _b;
29
+ const { log, options, lUtils } = this;
30
+ const { db } = options;
31
+ const logPrefix = `${topLogPrefix} get() -`;
32
+ const dbFields = [];
33
+ let sqlWhere = '';
34
+ // Build where-statement
35
+ if (options.matchExistingFields && options.matchExistingFields.length) {
36
+ sqlWhere += 'AND uuid IN (\n';
37
+ sqlWhere += 'SELECT DISTINCT userUuid FROM user_users_data WHERE fieldUuid IN (\n';
38
+ sqlWhere += 'SELECT uuid FROM user_data_fields WHERE\n';
39
+ for (const matchExsistingField of options.matchExistingFields) {
40
+ sqlWhere += 'name = ? OR ';
41
+ dbFields.push(matchExsistingField);
42
+ }
43
+ sqlWhere = sqlWhere.substring(0, sqlWhere.length - 4) + '))\n';
44
+ }
45
+ if (options.matchAllFields && Object.keys(options.matchAllFields).length) {
46
+ for (const field in options.matchAllFields) {
47
+ sqlWhere += 'AND uuid IN (SELECT userUuid FROM user_users_data WHERE data = ?\n'
48
+ + ' AND fieldUuid = (SELECT uuid FROM user_data_fields WHERE name = ?))';
49
+ dbFields.push(options.matchAllFields[field]);
50
+ dbFields.push(field);
51
+ }
52
+ }
53
+ if (options.matchAllFieldsQ && Object.keys(options.matchAllFieldsQ).length) {
54
+ for (const field in options.matchAllFieldsQ) {
55
+ sqlWhere += 'AND uuid IN (SELECT userUuid FROM user_users_data WHERE data LIKE ?\n'
56
+ + ' AND fieldUuid = (SELECT uuid FROM user_data_fields WHERE name = ?))';
57
+ dbFields.push('%' + options.matchAllFieldsQ[field] + '%');
58
+ dbFields.push(field);
59
+ }
60
+ }
61
+ if (options.q) {
62
+ sqlWhere += ' AND (\n';
63
+ sqlWhere += ' uuid IN (SELECT userUuid FROM user_users_data WHERE data LIKE ?)\n';
64
+ sqlWhere += ' OR username LIKE ?\n';
65
+ sqlWhere += ')\n';
66
+ dbFields.push('%' + options.q + '%');
67
+ dbFields.push('%' + options.q + '%');
68
+ }
69
+ if (options.uuids) {
70
+ const uuids = (0, helpers_1.arrayify)(options.uuids)
71
+ .filter(uuid => {
72
+ const uuidBuffer = lUtils.uuidToBuffer(uuid);
73
+ if (uuidBuffer === false) {
74
+ log.warn(`${logPrefix} Invalid field uuid "${uuid}", skipping`);
75
+ return false;
76
+ }
77
+ return true;
78
+ });
79
+ if (!uuids.length) {
80
+ sqlWhere += ' AND 1 = 2\n';
81
+ }
82
+ else {
83
+ sqlWhere += ' AND uuid IN (';
84
+ for (const uuid of uuids) {
85
+ const uuidBuffer = lUtils.uuidToBuffer(uuid);
86
+ sqlWhere += '?,';
87
+ dbFields.push(uuidBuffer);
88
+ }
89
+ sqlWhere = sqlWhere.substring(0, sqlWhere.length - 1) + ')\n';
90
+ }
91
+ }
92
+ const dbCon = await db.getConnection();
93
+ const mainDbFields = dbFields.slice(0);
94
+ const returnFields = options.returnFields ? (0, helpers_1.arrayify)(options.returnFields) : undefined;
95
+ let sql = 'SELECT user_users.uuid as uuid, user_users.username as username';
96
+ // SORT ORDERING
97
+ if (options.order !== undefined && typeof options.order === 'object') {
98
+ const allowedSortables = ['uuid', 'username', ...returnFields ?? []];
99
+ if (options.order.by !== undefined && allowedSortables.includes(options.order.by)) {
100
+ if (options.order.by !== 'uuid' && options.order.by !== 'username') {
101
+ sql += ', group_concat(user_users_data.data) as ' + dbCon.escapeId(options.order.by) + ' FROM user_users ';
102
+ sql += 'LEFT JOIN user_users_data on (user_users_data.fieldUuid = (SELECT uuid FROM user_data_fields WHERE name = ?) AND user_users_data.userUuid = user_users.uuid) ';
103
+ sql += 'WHERE 1 ';
104
+ mainDbFields.unshift(options.order.by);
105
+ }
106
+ else {
107
+ sql += ' FROM user_users WHERE 1 ';
108
+ }
109
+ sql += sqlWhere;
110
+ sql += ' GROUP BY uuid';
111
+ sql += ' ORDER BY ' + dbCon.escapeId(options.order.by);
112
+ if (options.order?.direction?.toUpperCase() !== 'DESC') {
113
+ sql += ' ASC';
114
+ }
115
+ else {
116
+ sql += ' DESC';
117
+ }
118
+ }
119
+ else {
120
+ throw new Error('The sorting column did not exist in the \'returnFields\' array');
121
+ }
122
+ }
123
+ else {
124
+ sql += ' FROM user_users WHERE 1 ' + sqlWhere;
125
+ }
126
+ if (options.limit && !isNaN(parseInt(options.limit))) {
127
+ sql += ' LIMIT ' + parseInt(options.limit);
128
+ if (options.offset && !isNaN(parseInt(options.offset))) {
129
+ sql += ' OFFSET ' + parseInt(options.offset);
130
+ }
131
+ }
132
+ const { rows } = await dbCon.query(sql, mainDbFields);
133
+ dbCon.release();
134
+ const users = [];
135
+ for (const row of rows) {
136
+ const user = {
137
+ uuid: String(lUtils.formatUuid(row.uuid)),
138
+ username: row.username,
139
+ fields: {},
140
+ };
141
+ users.push(user);
142
+ }
143
+ // Fetch field data for users, if requested
144
+ if (returnFields && returnFields.length > 0) {
145
+ for (const user of users) {
146
+ const uuidBuffer = lUtils.uuidToBuffer(user.uuid);
147
+ // Non-tivial to test
148
+ /* istanbul ignore if */
149
+ if (uuidBuffer === false) {
150
+ log.warn(`${logPrefix} Invalid user uuid: "${user.uuid}", skipping`);
151
+ continue;
152
+ }
153
+ const subFields = [];
154
+ let sql = 'SELECT uf.uuid AS fieldUuid,\n' +
155
+ 'uf.name AS fieldName,\n' +
156
+ 'ud.data AS fieldData,\n' +
157
+ 'ud.userUuid AS userUuid\n' +
158
+ 'FROM\n' +
159
+ 'user_data_fields uf\n' +
160
+ 'LEFT JOIN user_users_data ud ON ud.fieldUuid = uf.uuid\n' +
161
+ 'WHERE uf.name IN (';
162
+ for (const fn of returnFields) {
163
+ sql += '?,';
164
+ subFields.push(fn);
165
+ }
166
+ sql = sql.substring(0, sql.length - 1);
167
+ sql += ') AND ud.userUuid = ?';
168
+ subFields.push(uuidBuffer);
169
+ const { rows } = await db.query(sql, subFields);
170
+ for (const row of rows) {
171
+ if (!row.fieldUuid)
172
+ continue;
173
+ (_a = user.fields)[_b = row.fieldName] ?? (_a[_b] = []);
174
+ user.fields[row.fieldName].push(row.fieldData);
175
+ }
176
+ }
177
+ }
178
+ // Total number of elements
179
+ const totalElementsSql = 'SELECT COUNT(*) AS totalElements FROM user_users WHERE 1 ' + sqlWhere;
180
+ const { rows: totalElementsRows } = await db.query(totalElementsSql, dbFields);
181
+ const totalElements = totalElementsRows[0].totalElements;
182
+ return { users, totalElements };
183
+ }
184
+ }
185
+ exports.Users = Users;
186
+ //# sourceMappingURL=users.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../src/users.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "larvituser",
3
- "version": "0.19.0",
3
+ "version": "0.20.4",
4
4
  "author": {
5
5
  "name": "Mikael 'Lilleman' Göransson",
6
6
  "email": "lilleman@larvit.se",
@@ -8,28 +8,44 @@
8
8
  },
9
9
  "contributors": [],
10
10
  "dependencies": {
11
- "async": "^2.6.1",
12
- "bcryptjs": "^2.4.3",
13
- "larvitamintercom": "^0.3.0",
14
- "larvitamsync": "^0.7.0",
15
- "larvitdbmigration": "^4.0.1",
16
- "larvitutils": "^2.0.0",
17
- "uuid": "^3.3.2"
11
+ "bcryptjs": "2.4.3",
12
+ "larvitdbmigration": "6.0.0",
13
+ "larvitutils": "5.0.0",
14
+ "uuid": "8.3.2"
18
15
  },
19
16
  "description": "User module for node.js",
20
17
  "devDependencies": {
18
+ "@istanbuljs/nyc-config-typescript": "1.0.2",
19
+ "@types/bcryptjs": "2.4.2",
20
+ "@types/mocha": "9.0.0",
21
+ "@types/node": "17.0.8",
22
+ "@types/uuid": "8.3.4",
23
+ "@typescript-eslint/eslint-plugin": "5.9.1",
24
+ "@typescript-eslint/parser": "5.9.1",
25
+ "eslint": "8.6.0",
21
26
  "freeport": "1.0.5",
22
- "mocha": "6.1.4",
23
- "mocha-eslint": "5.0.0"
27
+ "larvitdb": "3.2.0",
28
+ "mocha": "9.1.3",
29
+ "mocha-eslint": "7.0.0",
30
+ "nyc": "15.1.0",
31
+ "ts-node": "10.4.0",
32
+ "typescript": "4.5.4"
24
33
  },
25
34
  "scripts": {
26
- "test": "mocha --exit"
35
+ "build": "rm -rf dist/* && tsc",
36
+ "lint": "eslint src/*.ts test/*.ts",
37
+ "test": "npm run lint && npm run test:unit",
38
+ "test:unit": "nyc mocha --exit --bail -r ts-node/register 'test/**/*.ts'"
27
39
  },
28
40
  "keywords": [
29
41
  "auth",
30
42
  "user"
31
43
  ],
32
- "main": "index.js",
44
+ "main": "dist/index.js",
45
+ "files": [
46
+ "/dist",
47
+ "/dbmigration"
48
+ ],
33
49
  "repository": {
34
50
  "url": "https://github.com/larvit/larvituser",
35
51
  "type": "git"
package/.eslintignore DELETED
@@ -1 +0,0 @@
1
- node_modules/*
package/.eslintrc DELETED
@@ -1,35 +0,0 @@
1
- {
2
- "env": {
3
- "es6": true,
4
- "mocha": true,
5
- "node": true
6
- },
7
- "rules": {
8
- "brace-style": ["error", "1tbs", { "allowSingleLine": true }],
9
- "camelcase": [0],
10
- "comma-spacing": [2, {"before": false, "after": true}],
11
- "eol-last": [0],
12
- "function-paren-newline": ["error", "multiline"],
13
- "indent": ["error", "tab"],
14
- "key-spacing": [0],
15
- "keyword-spacing": ["error", {"before": true, "after": true}],
16
- "no-mixed-requires": [0],
17
- "no-multi-spaces": [0],
18
- "no-process-exit": [0],
19
- "no-shadow": [0],
20
- "no-underscore-dangle": [0],
21
- "no-unused-expressions": [2],
22
- "no-unused-vars": [2],
23
- "no-use-before-define": [0],
24
- "one-var": [2],
25
- "quote-props": ["error", "always", {"keywords": true, "unnecessary": true, "numbers": true}],
26
- "quotes": [2, "single"],
27
- "semi": [2, "always"],
28
- "space-before-blocks": ["error", "always"],
29
- "space-before-function-paren": ["error", {"anonymous": "always", "named": "never", "asyncArrow": "always"}],
30
- "space-infix-ops": [2],
31
- "space-unary-ops": [1, { "words": true, "nonwords": true }],
32
- "strict": [2, "global"],
33
- "vars-on-top": [2]
34
- }
35
- }
package/.travis.yml DELETED
@@ -1,22 +0,0 @@
1
- language: node_js
2
-
3
- node_js:
4
- - 8
5
- - 10
6
- - 11
7
-
8
- notifications:
9
- email:
10
- - lilleman@larvit.se
11
- - tobias@nublar.se
12
-
13
- install:
14
- - npm i
15
-
16
- before_script:
17
- - mysql -e 'CREATE DATABASE test'
18
-
19
- script: DBCONFFILE=db_travis.json mocha --exit
20
-
21
- addons:
22
- mariadb: 10.3
@@ -1,9 +0,0 @@
1
- {
2
- "connectionLimit": 10,
3
- "host": "127.0.0.1",
4
- "user": "root",
5
- "password": "",
6
- "charset": "utf8mb4_general_ci",
7
- "supportBigNumbers": true,
8
- "database": "test"
9
- }