@e22m4u/js-repository-mongodb-adapter 0.2.1 → 0.3.2

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 (3) hide show
  1. package/README-ru.md +81 -0
  2. package/README.md +21 -19
  3. package/package.json +12 -12
package/README-ru.md ADDED
@@ -0,0 +1,81 @@
1
+ ## @e22m4u/js-repository-mongodb-adapter
2
+
3
+ *[English](README.md) | Русский*
4
+
5
+ MongoDB адаптер для [@e22m4u/js-repository](https://www.npmjs.com/package/@e22m4u/js-repository)
6
+
7
+ ## Установка
8
+
9
+ ```bash
10
+ npm install @e22m4u/js-repository-mongodb-adapter
11
+ ```
12
+
13
+ ## Параметры
14
+
15
+ Все указанные параметры опциональны:
16
+
17
+ | название | значение по умолчанию |
18
+ |----------|-----------------------|
19
+ | protocol | `'mongodb'` |
20
+ | host | `'127.0.0.1'` |
21
+ | port | `27017` |
22
+ | database | `'database'` |
23
+ | username | `undefined` |
24
+ | password | `undefined` |
25
+
26
+ Пример:
27
+
28
+ ```js
29
+ import {Schema} from '@e22m4u/js-repository';
30
+
31
+ const schema = new Schema();
32
+
33
+ // объявление источника
34
+ schema.defineDatasource({
35
+ name: 'myMongo', // название источника
36
+ adapter: 'mongodb', // имя адаптера
37
+ // параметры
38
+ host: '127.0.0.1',
39
+ port: 27017,
40
+ database: 'myDatabase',
41
+ });
42
+
43
+ // объявление модели
44
+ schema.defineModel({
45
+ name: 'user', // название модели
46
+ datasource: 'myMongo', // используемый источник (см. выше)
47
+ properties: { // поля модели
48
+ name: 'string',
49
+ surname: 'string',
50
+ },
51
+ });
52
+
53
+ // получаем репозиторий по названию модели и создаем запись
54
+ const userRep = schema.getRepository('user');
55
+ const user = await userRep.create({name: 'John', surname: 'Doe'});
56
+
57
+ console.log(user);
58
+ // {
59
+ // id: '64f3454e5e0893c13f9bf47e',
60
+ // name: 'John',
61
+ // surname: 'Doe',
62
+ // }
63
+ ```
64
+
65
+ ## Тесты
66
+
67
+ Запуск контейнера `mongo:latest` скриптом `setup.sh`
68
+
69
+ ```bash
70
+ ./setup.sh
71
+ ```
72
+
73
+ Выполнение тестов
74
+
75
+ ```bash
76
+ npm run test
77
+ ```
78
+
79
+ ## Лицензия
80
+
81
+ MIT
package/README.md CHANGED
@@ -1,18 +1,20 @@
1
1
  ## @e22m4u/js-repository-mongodb-adapter
2
2
 
3
- MongoDB адаптер для [@e22m4u/js-repository](https://www.npmjs.com/package/@e22m4u/js-repository)
3
+ *English | [Русский](README-ru.md)*
4
4
 
5
- ## Установка
5
+ MongoDB adapter for [@e22m4u/js-repository](https://www.npmjs.com/package/@e22m4u/js-repository)
6
+
7
+ ## Installation
6
8
 
7
9
  ```bash
8
10
  npm install @e22m4u/js-repository-mongodb-adapter
9
11
  ```
10
12
 
11
- ## Параметры
13
+ ## Configuration
12
14
 
13
- Все указанные параметры опциональны:
15
+ All parameters are optional:
14
16
 
15
- | название | значение по умолчанию |
17
+ | name | default value |
16
18
  |----------|-----------------------|
17
19
  | protocol | `'mongodb'` |
18
20
  | host | `'127.0.0.1'` |
@@ -21,34 +23,34 @@ npm install @e22m4u/js-repository-mongodb-adapter
21
23
  | username | `undefined` |
22
24
  | password | `undefined` |
23
25
 
24
- Пример:
26
+ Example:
25
27
 
26
28
  ```js
27
29
  import {Schema} from '@e22m4u/js-repository';
28
30
 
29
31
  const schema = new Schema();
30
32
 
31
- // объявление источника
33
+ // define datasource
32
34
  schema.defineDatasource({
33
- name: 'myMongo', // название источника
34
- adapter: 'mongodb', // имя адаптера
35
- // параметры
35
+ name: 'myMongo', // datasource name
36
+ adapter: 'mongodb', // adapter name
37
+ // configuration
36
38
  host: '127.0.0.1',
37
39
  port: 27017,
38
40
  database: 'myDatabase',
39
41
  });
40
42
 
41
- // объявление модели
43
+ // define model
42
44
  schema.defineModel({
43
- name: 'user', // название модели
44
- datasource: 'myMongo', // используемый источник
45
- properties: { // поля модели
45
+ name: 'user', // model name
46
+ datasource: 'myMongo', // datasource name (see above)
47
+ properties: { // model fields
46
48
  name: 'string',
47
49
  surname: 'string',
48
50
  },
49
51
  });
50
52
 
51
- // получаем репозиторий по названию модели и создаем запись
53
+ // get repository by model name and create a record
52
54
  const userRep = schema.getRepository('user');
53
55
  const user = await userRep.create({name: 'John', surname: 'Doe'});
54
56
 
@@ -60,20 +62,20 @@ console.log(user);
60
62
  // }
61
63
  ```
62
64
 
63
- ## Тесты
65
+ ## Testing
64
66
 
65
- Запуск контейнера `mongo:latest` скриптом `setup.sh`
67
+ Start `mongo:latest` container using `setup.sh` script.
66
68
 
67
69
  ```bash
68
70
  ./setup.sh
69
71
  ```
70
72
 
71
- Выполнение тестов
73
+ Run tests
72
74
 
73
75
  ```bash
74
76
  npm run test
75
77
  ```
76
78
 
77
- ## Лицензия
79
+ ## License
78
80
 
79
81
  MIT
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@e22m4u/js-repository-mongodb-adapter",
3
- "version": "0.2.1",
4
- "description": "MongoDB адаптер для @e22m4u/js-repository",
3
+ "version": "0.3.2",
4
+ "description": "MongoDB adapter for @e22m4u/js-repository",
5
5
  "type": "module",
6
6
  "module": "./src/index.js",
7
7
  "main": "./dist/cjs/index.cjs",
@@ -10,7 +10,7 @@
10
10
  "require": "./dist/cjs/index.cjs"
11
11
  },
12
12
  "engines": {
13
- "node": ">=14.20.1"
13
+ "node": ">=16.20.1"
14
14
  },
15
15
  "scripts": {
16
16
  "lint": "eslint ./src",
@@ -38,30 +38,30 @@
38
38
  "license": "MIT",
39
39
  "homepage": "https://github.com/e22m4u/js-repository-mongodb-adapter",
40
40
  "dependencies": {
41
- "mongodb": "5.9.2"
41
+ "mongodb": "6.11.0"
42
42
  },
43
43
  "peerDependencies": {
44
- "@e22m4u/js-format": "0.1.x",
44
+ "@e22m4u/js-format": "~0.1.0",
45
45
  "@e22m4u/js-repository": "~0.2.4",
46
- "@e22m4u/js-service": "0.2.x"
46
+ "@e22m4u/js-service": "~0.2.0"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@commitlint/cli": "~19.6.0",
50
50
  "@commitlint/config-conventional": "~19.6.0",
51
- "@eslint/js": "~9.15.0",
51
+ "@eslint/js": "~9.16.0",
52
52
  "c8": "~10.1.2",
53
53
  "chai": "~5.1.2",
54
54
  "chai-as-promised": "~8.0.1",
55
- "dotenv": "~16.4.5",
55
+ "dotenv": "~16.4.7",
56
56
  "esbuild": "~0.24.0",
57
- "eslint": "~9.15.0",
57
+ "eslint": "~9.16.0",
58
58
  "eslint-config-prettier": "~9.1.0",
59
59
  "eslint-plugin-chai-expect": "~3.1.0",
60
60
  "eslint-plugin-mocha": "~10.5.0",
61
- "globals": "~15.12.0",
61
+ "globals": "~15.13.0",
62
62
  "husky": "~9.1.7",
63
- "mocha": "~10.8.2",
64
- "prettier": "~3.3.3",
63
+ "mocha": "~11.0.1",
64
+ "prettier": "~3.4.2",
65
65
  "rimraf": "~6.0.1"
66
66
  }
67
67
  }