recombee-api-client 4.1.4 → 5.0.0

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 (88) hide show
  1. package/index.js +1 -1
  2. package/lib/api-client.js +20 -15
  3. package/lib/errors/index.js +1 -1
  4. package/lib/index.d.ts +127 -175
  5. package/lib/requests/add-bookmark.js +1 -1
  6. package/lib/requests/add-cart-addition.js +1 -1
  7. package/lib/requests/add-detail-view.js +1 -1
  8. package/lib/requests/add-item-property.js +1 -1
  9. package/lib/requests/add-item.js +1 -1
  10. package/lib/requests/add-purchase.js +1 -1
  11. package/lib/requests/add-rating.js +1 -1
  12. package/lib/requests/add-series.js +12 -2
  13. package/lib/requests/add-user-property.js +1 -1
  14. package/lib/requests/add-user.js +1 -1
  15. package/lib/requests/delete-bookmark.js +1 -1
  16. package/lib/requests/delete-cart-addition.js +1 -1
  17. package/lib/requests/delete-detail-view.js +1 -1
  18. package/lib/requests/delete-item.js +1 -1
  19. package/lib/requests/delete-purchase.js +1 -1
  20. package/lib/requests/delete-rating.js +1 -1
  21. package/lib/requests/delete-series.js +12 -2
  22. package/lib/requests/delete-user.js +1 -1
  23. package/lib/requests/delete-view-portion.js +1 -1
  24. package/lib/requests/get-item-property-info.js +1 -1
  25. package/lib/requests/get-item-values.js +1 -1
  26. package/lib/requests/get-user-values.js +1 -1
  27. package/lib/requests/index.js +1 -6
  28. package/lib/requests/insert-to-series.js +2 -2
  29. package/lib/requests/recommend-item-segments-to-item-segment.js +2 -2
  30. package/lib/requests/recommend-item-segments-to-item.js +2 -2
  31. package/lib/requests/recommend-item-segments-to-user.js +2 -2
  32. package/lib/requests/recommend-items-to-item-segment.js +214 -0
  33. package/lib/requests/remove-from-series.js +4 -7
  34. package/lib/requests/request.js +1 -1
  35. package/lib/requests/set-view-portion.js +1 -1
  36. package/package.json +8 -5
  37. package/test/add-bookmark-batch_test.js +2 -4
  38. package/test/add-bookmark-callback_test.js +0 -15
  39. package/test/add-bookmark-test.js +0 -17
  40. package/test/add-cart-addition-batch_test.js +2 -4
  41. package/test/add-cart-addition-callback_test.js +0 -15
  42. package/test/add-cart-addition-test.js +0 -17
  43. package/test/add-detail-view-batch_test.js +2 -4
  44. package/test/add-detail-view-callback_test.js +0 -15
  45. package/test/add-detail-view-test.js +0 -17
  46. package/test/add-purchase-batch_test.js +2 -4
  47. package/test/add-purchase-callback_test.js +0 -15
  48. package/test/add-purchase-test.js +0 -17
  49. package/test/add-rating-batch_test.js +2 -4
  50. package/test/add-rating-callback_test.js +0 -15
  51. package/test/add-rating-test.js +0 -17
  52. package/test/list-items-batch_test.js +1 -1
  53. package/test/list-items-callback_test.js +1 -1
  54. package/test/list-items-test.js +1 -1
  55. package/test/list-users-batch_test.js +1 -1
  56. package/test/list-users-callback_test.js +1 -1
  57. package/test/list-users-test.js +1 -1
  58. package/test/{list-groups-batch_test.js → recommend-items-to-item-segment-batch_test.js} +4 -5
  59. package/test/{list-groups-callback_test.js → recommend-items-to-item-segment-callback_test.js} +8 -7
  60. package/test/{remove-from-group-test.js → recommend-items-to-item-segment-test.js} +5 -14
  61. package/test/remove-from-series-batch_test.js +4 -6
  62. package/test/remove-from-series-callback_test.js +2 -17
  63. package/test/remove-from-series-test.js +2 -19
  64. package/test/set-environment.js +89 -86
  65. package/test/set-view-portion-batch_test.js +0 -2
  66. package/test/set-view-portion-callback_test.js +0 -15
  67. package/test/set-view-portion-test.js +0 -17
  68. package/lib/requests/add-group.js +0 -42
  69. package/lib/requests/delete-group.js +0 -43
  70. package/lib/requests/insert-to-group.js +0 -58
  71. package/lib/requests/list-group-items.js +0 -42
  72. package/lib/requests/list-groups.js +0 -40
  73. package/lib/requests/remove-from-group.js +0 -48
  74. package/test/add-group-batch_test.js +0 -39
  75. package/test/add-group-callback_test.js +0 -72
  76. package/test/add-group-test.js +0 -68
  77. package/test/delete-group-batch_test.js +0 -39
  78. package/test/delete-group-callback_test.js +0 -74
  79. package/test/delete-group-test.js +0 -76
  80. package/test/insert-to-group-batch_test.js +0 -53
  81. package/test/insert-to-group-callback_test.js +0 -86
  82. package/test/insert-to-group-test.js +0 -68
  83. package/test/list-group-items-batch_test.js +0 -36
  84. package/test/list-group-items-callback_test.js +0 -38
  85. package/test/list-group-items-test.js +0 -34
  86. package/test/list-groups-test.js +0 -32
  87. package/test/remove-from-group-batch_test.js +0 -35
  88. package/test/remove-from-group-callback_test.js +0 -50
@@ -1,68 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('AddGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail with valid entity id', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.AddGroup('valid_id');
26
- env.client.send(req)
27
- .then((res) => {
28
- done();
29
- });
30
- });
31
-
32
- it ('fails with invalid entity id', (done) => {
33
- let req, req2, resp;
34
- req = new rqs.AddGroup('***not_valid$$$');
35
- env.client.send(req)
36
- .then((res) => {
37
- chai.fail();
38
- done();
39
- })
40
- .catch((err) => {
41
- if (err instanceof recombee.errors.ResponseError) {
42
- chai.equal(err.statusCode, 400);
43
- done();
44
- }
45
- throw err;
46
- });
47
- });
48
-
49
- it ('really stores entity to the system', (done) => {
50
- let req, req2, resp;
51
- req = new rqs.AddGroup('valid_id2');
52
- env.client.send(req)
53
- .then((res) => {
54
- env.client.send(req)
55
- .then((res) => {
56
- chai.fail();
57
- done();
58
- })
59
- .catch((err) => {
60
- if (err instanceof recombee.errors.ResponseError) {
61
- chai.equal(err.statusCode, 409);
62
- done();
63
- }
64
- throw err;
65
- });
66
- });
67
- });
68
- });
@@ -1,39 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('DeleteGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
- it ('works in batch', (done) => {
23
- let requests = [
24
- new rqs.DeleteGroup('entity_id'),
25
- new rqs.DeleteGroup('entity_id'),
26
- new rqs.DeleteGroup('***not_valid$$$'),
27
- new rqs.DeleteGroup('valid_id')
28
- ];
29
-
30
- env.client.send(new rqs.Batch(requests))
31
- .then((responses) => {
32
- chai.equal(responses[0].code, 200);
33
- chai.equal(responses[1].code, 404);
34
- chai.equal(responses[2].code, 400);
35
- chai.equal(responses[3].code, 404);
36
- done();
37
- });
38
- });
39
- });
@@ -1,74 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('DeleteGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail with existing entity id', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.DeleteGroup('entity_id');
26
- env.client.send(req,((err,res) => {
27
- if(err) {
28
- chai.fail();
29
- }
30
- else {
31
- env.client.send(req,((err,res) => {
32
- if(err) {
33
- chai.equal(err.name, 'ResponseError');
34
- chai.equal(err.statusCode, 404);
35
- done();
36
- }
37
- else {
38
- chai.fail();
39
- }
40
- }));
41
- }
42
- }));
43
- });
44
-
45
- it ('fails with invalid entity id', (done) => {
46
- let req, req2, resp;
47
- req = new rqs.DeleteGroup('***not_valid$$$');
48
- env.client.send(req,((err,res) => {
49
- if(err) {
50
- chai.equal(err.name, 'ResponseError');
51
- chai.equal(err.statusCode, 400);
52
- done();
53
- }
54
- else {
55
- chai.fail();
56
- }
57
- }));
58
- });
59
-
60
- it ('fails with non-existing entity', (done) => {
61
- let req, req2, resp;
62
- req = new rqs.DeleteGroup('valid_id');
63
- env.client.send(req,((err,res) => {
64
- if(err) {
65
- chai.equal(err.name, 'ResponseError');
66
- chai.equal(err.statusCode, 404);
67
- done();
68
- }
69
- else {
70
- chai.fail();
71
- }
72
- }));
73
- });
74
- });
@@ -1,76 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('DeleteGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail with existing entity id', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.DeleteGroup('entity_id');
26
- env.client.send(req)
27
- .then((res) => {
28
- env.client.send(req)
29
- .then((res) => {
30
- chai.fail();
31
- done();
32
- })
33
- .catch((err) => {
34
- if (err instanceof recombee.errors.ResponseError) {
35
- chai.equal(err.statusCode, 404);
36
- done();
37
- }
38
- throw err;
39
- });
40
- });
41
- });
42
-
43
- it ('fails with invalid entity id', (done) => {
44
- let req, req2, resp;
45
- req = new rqs.DeleteGroup('***not_valid$$$');
46
- env.client.send(req)
47
- .then((res) => {
48
- chai.fail();
49
- done();
50
- })
51
- .catch((err) => {
52
- if (err instanceof recombee.errors.ResponseError) {
53
- chai.equal(err.statusCode, 400);
54
- done();
55
- }
56
- throw err;
57
- });
58
- });
59
-
60
- it ('fails with non-existing entity', (done) => {
61
- let req, req2, resp;
62
- req = new rqs.DeleteGroup('valid_id');
63
- env.client.send(req)
64
- .then((res) => {
65
- chai.fail();
66
- done();
67
- })
68
- .catch((err) => {
69
- if (err instanceof recombee.errors.ResponseError) {
70
- chai.equal(err.statusCode, 404);
71
- done();
72
- }
73
- throw err;
74
- });
75
- });
76
- });
@@ -1,53 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('InsertToGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
- it ('works in batch', (done) => {
23
- env.client.send(new rqs.AddItem('new_item'),((err,res) => {
24
- if(err) {
25
- chai.fail();
26
- }
27
- else {
28
- env.client.send(new rqs.AddItem('new_item3'),((err,res) => {
29
- if(err) {
30
- chai.fail();
31
- }
32
- else {
33
- let requests = [
34
- new rqs.InsertToGroup('entity_id','item','new_item'),
35
- new rqs.InsertToGroup('new_set','item','new_item2',{'cascadeCreate': true}),
36
- new rqs.InsertToGroup('entity_id','item','new_item3'),
37
- new rqs.InsertToGroup('entity_id','item','new_item3')
38
- ];
39
-
40
- env.client.send(new rqs.Batch(requests))
41
- .then((responses) => {
42
- chai.equal(responses[0].code, 200);
43
- chai.equal(responses[1].code, 200);
44
- chai.equal(responses[2].code, 200);
45
- chai.equal(responses[3].code, 409);
46
- done();
47
- });
48
- }
49
- }));
50
- }
51
- }));
52
- });
53
- });
@@ -1,86 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('InsertToGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail when inserting existing item into existing set', (done) => {
24
- let req, req2, resp;
25
- req2 = new rqs.AddItem('new_item');
26
- env.client.send(req2,((err,res) => {
27
- if(err) {
28
- chai.fail();
29
- }
30
- else {
31
- req = new rqs.InsertToGroup('entity_id','item','new_item');
32
- env.client.send(req,((err,res) => {
33
- if(err) {
34
- chai.fail();
35
- }
36
- else {
37
- done();
38
- }
39
- }));
40
- }
41
- }));
42
- });
43
-
44
- it ('does not fail when cascadeCreate is used', (done) => {
45
- let req, req2, resp;
46
- req = new rqs.InsertToGroup('new_set','item','new_item2',{'cascadeCreate': true});
47
- env.client.send(req,((err,res) => {
48
- if(err) {
49
- chai.fail();
50
- }
51
- else {
52
- done();
53
- }
54
- }));
55
- });
56
-
57
- it ('really inserts item to the set', (done) => {
58
- let req, req2, resp;
59
- req2 = new rqs.AddItem('new_item3');
60
- env.client.send(req2,((err,res) => {
61
- if(err) {
62
- chai.fail();
63
- }
64
- else {
65
- req = new rqs.InsertToGroup('entity_id','item','new_item3');
66
- env.client.send(req,((err,res) => {
67
- if(err) {
68
- chai.fail();
69
- }
70
- else {
71
- env.client.send(req,((err,res) => {
72
- if(err) {
73
- chai.equal(err.name, 'ResponseError');
74
- chai.equal(err.statusCode, 409);
75
- done();
76
- }
77
- else {
78
- chai.fail();
79
- }
80
- }));
81
- }
82
- }));
83
- }
84
- }));
85
- });
86
- });
@@ -1,68 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('InsertToGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail when inserting existing item into existing set', (done) => {
24
- let req, req2, resp;
25
- req2 = new rqs.AddItem('new_item');
26
- env.client.send(req2)
27
- .then((res) => {
28
- req = new rqs.InsertToGroup('entity_id','item','new_item');
29
- env.client.send(req)
30
- .then((res) => {
31
- done();
32
- });
33
- });
34
- });
35
-
36
- it ('does not fail when cascadeCreate is used', (done) => {
37
- let req, req2, resp;
38
- req = new rqs.InsertToGroup('new_set','item','new_item2',{'cascadeCreate': true});
39
- env.client.send(req)
40
- .then((res) => {
41
- done();
42
- });
43
- });
44
-
45
- it ('really inserts item to the set', (done) => {
46
- let req, req2, resp;
47
- req2 = new rqs.AddItem('new_item3');
48
- env.client.send(req2)
49
- .then((res) => {
50
- req = new rqs.InsertToGroup('entity_id','item','new_item3');
51
- env.client.send(req)
52
- .then((res) => {
53
- env.client.send(req)
54
- .then((res) => {
55
- chai.fail();
56
- done();
57
- })
58
- .catch((err) => {
59
- if (err instanceof recombee.errors.ResponseError) {
60
- chai.equal(err.statusCode, 409);
61
- done();
62
- }
63
- throw err;
64
- });
65
- });
66
- });
67
- });
68
- });
@@ -1,36 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('ListGroupItems', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
- it ('works in batch', (done) => {
23
- let requests = [
24
- new rqs.ListGroupItems('entity_id')
25
- ];
26
-
27
- env.client.send(new rqs.Batch(requests))
28
- .then((responses) => {
29
- chai.equal(responses[0].code, 200);
30
- chai.equal(responses[0].json.length, 1);
31
- chai.deepEqual('entity_id', responses[0].json[0]['itemId']);
32
- chai.deepEqual('item', responses[0].json[0]['itemType']);
33
- done();
34
- });
35
- });
36
- });
@@ -1,38 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('ListGroupItems', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('lists set items', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.ListGroupItems('entity_id');
26
- env.client.send(req,((err,res) => {
27
- if(err) {
28
- chai.fail();
29
- }
30
- else {
31
- chai.equal(res.length, 1);
32
- chai.deepEqual('entity_id', res[0]['itemId']);
33
- chai.deepEqual('item', res[0]['itemType']);
34
- done();
35
- }
36
- }));
37
- });
38
- });
@@ -1,34 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('ListGroupItems', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('lists set items', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.ListGroupItems('entity_id');
26
- env.client.send(req)
27
- .then((res) => {
28
- chai.equal(res.length, 1);
29
- chai.deepEqual('entity_id', res[0]['itemId']);
30
- chai.deepEqual('item', res[0]['itemType']);
31
- done();
32
- });
33
- });
34
- });
@@ -1,32 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('ListGroups', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('lists entities', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.ListGroups();
26
- env.client.send(req)
27
- .then((res) => {
28
- chai.deepEqual(['entity_id'], res);
29
- done();
30
- });
31
- });
32
- });
@@ -1,35 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('RemoveFromGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
- it ('works in batch', (done) => {
23
- let requests = [
24
- new rqs.RemoveFromGroup('entity_id','item','entity_id'),
25
- new rqs.RemoveFromGroup('entity_id','item','not_contained')
26
- ];
27
-
28
- env.client.send(new rqs.Batch(requests))
29
- .then((responses) => {
30
- chai.equal(responses[0].code, 200);
31
- chai.equal(responses[1].code, 404);
32
- done();
33
- });
34
- });
35
- });
@@ -1,50 +0,0 @@
1
- /*
2
- This file is auto-generated, do not edit
3
- */
4
-
5
- 'use strict'
6
- var chai = require('chai').assert;
7
- var recombee = require('./../index.js');
8
- var rqs = recombee.requests;
9
-
10
- var env = require('./set-environment.js');
11
-
12
- describe('RemoveFromGroup', function(){
13
- this.timeout(150000);
14
-
15
- before(function(done){
16
-
17
- env.setEnvironment()
18
- .then(()=> {
19
- setTimeout(done, 20000);
20
- });
21
- });
22
-
23
- it ('does not fail when removing item that is contained in the set', (done) => {
24
- let req, req2, resp;
25
- req = new rqs.RemoveFromGroup('entity_id','item','entity_id');
26
- env.client.send(req,((err,res) => {
27
- if(err) {
28
- chai.fail();
29
- }
30
- else {
31
- done();
32
- }
33
- }));
34
- });
35
-
36
- it ('fails when removing item that is not contained in the set', (done) => {
37
- let req, req2, resp;
38
- req = new rqs.RemoveFromGroup('entity_id','item','not_contained');
39
- env.client.send(req,((err,res) => {
40
- if(err) {
41
- chai.equal(err.name, 'ResponseError');
42
- chai.equal(err.statusCode, 404);
43
- done();
44
- }
45
- else {
46
- chai.fail();
47
- }
48
- }));
49
- });
50
- });