@e22m4u/js-repository 0.8.7 → 0.8.9

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 (70) hide show
  1. package/dist/cjs/index.cjs +452 -406
  2. package/package.json +7 -7
  3. package/src/adapter/adapter-loader.js +2 -5
  4. package/src/adapter/adapter-loader.spec.js +2 -2
  5. package/src/adapter/adapter-registry.spec.js +2 -2
  6. package/src/adapter/builtin/memory-adapter.js +5 -5
  7. package/src/adapter/builtin/memory-adapter.spec.js +12 -12
  8. package/src/adapter/decorator/data-sanitizing-decorator.js +1 -2
  9. package/src/adapter/decorator/default-values-decorator.js +1 -2
  10. package/src/adapter/decorator/fields-filtering-decorator.js +1 -2
  11. package/src/adapter/decorator/inclusion-decorator.js +1 -2
  12. package/src/adapter/decorator/property-uniqueness-decorator.js +1 -2
  13. package/src/adapter/decorator/required-property-decorator.js +1 -2
  14. package/src/database-schema.spec.js +3 -5
  15. package/src/definition/datasource/datasource-definition-validator.js +3 -3
  16. package/src/definition/datasource/datasource-definition-validator.spec.js +3 -6
  17. package/src/definition/definition-registry.d.ts +10 -0
  18. package/src/definition/definition-registry.js +28 -19
  19. package/src/definition/definition-registry.spec.js +64 -117
  20. package/src/definition/model/model-data-sanitizer.js +2 -4
  21. package/src/definition/model/model-definition-utils.js +12 -14
  22. package/src/definition/model/model-definition-utils.spec.js +12 -21
  23. package/src/definition/model/model-definition-validator.js +12 -12
  24. package/src/definition/model/model-definition-validator.spec.js +12 -15
  25. package/src/definition/model/properties/primary-keys-definition-validator.js +4 -4
  26. package/src/definition/model/properties/primary-keys-definition-validator.spec.js +8 -8
  27. package/src/definition/model/properties/properties-definition-validator.js +42 -43
  28. package/src/definition/model/properties/properties-definition-validator.spec.js +45 -45
  29. package/src/definition/model/properties/property-uniqueness-validator.js +7 -11
  30. package/src/definition/model/properties/property-uniqueness-validator.spec.js +57 -60
  31. package/src/definition/model/properties/required-property-validator.js +1 -1
  32. package/src/definition/model/properties/required-property-validator.spec.js +1 -1
  33. package/src/definition/model/relations/relations-definition-validator.js +40 -42
  34. package/src/definition/model/relations/relations-definition-validator.spec.js +44 -45
  35. package/src/errors/invalid-operator-value-error.js +1 -1
  36. package/src/errors/invalid-operator-value-error.spec.js +1 -1
  37. package/src/filter/fields-clause-tool.js +95 -53
  38. package/src/filter/fields-clause-tool.spec.js +210 -387
  39. package/src/filter/include-clause-tool.js +9 -9
  40. package/src/filter/include-clause-tool.spec.js +4 -4
  41. package/src/filter/operator-clause-tool.js +20 -32
  42. package/src/filter/operator-clause-tool.spec.js +25 -49
  43. package/src/filter/order-clause-tool.js +55 -27
  44. package/src/filter/order-clause-tool.spec.js +151 -90
  45. package/src/filter/slice-clause-tool.js +5 -6
  46. package/src/filter/slice-clause-tool.spec.js +8 -24
  47. package/src/filter/where-clause-tool.js +18 -11
  48. package/src/filter/where-clause-tool.spec.js +27 -17
  49. package/src/relations/belongs-to-resolver.js +18 -30
  50. package/src/relations/belongs-to-resolver.spec.js +21 -44
  51. package/src/relations/has-many-resolver.js +28 -44
  52. package/src/relations/has-many-resolver.spec.js +44 -68
  53. package/src/relations/has-one-resolver.js +28 -44
  54. package/src/relations/has-one-resolver.spec.js +44 -68
  55. package/src/relations/references-many-resolver.js +8 -14
  56. package/src/relations/references-many-resolver.spec.js +12 -24
  57. package/src/repository/repository-registry.js +4 -6
  58. package/src/repository/repository-registry.spec.js +0 -19
  59. package/src/repository/repository.js +1 -1
  60. package/src/utils/exclude-object-keys.js +2 -2
  61. package/src/utils/exclude-object-keys.spec.js +2 -2
  62. package/src/utils/index.d.ts +0 -1
  63. package/src/utils/index.js +0 -1
  64. package/src/utils/like-to-regexp.js +1 -2
  65. package/src/utils/like-to-regexp.spec.js +5 -5
  66. package/src/utils/select-object-keys.js +6 -7
  67. package/src/utils/select-object-keys.spec.js +3 -6
  68. package/src/utils/model-name-to-model-key.d.ts +0 -6
  69. package/src/utils/model-name-to-model-key.js +0 -18
  70. package/src/utils/model-name-to-model-key.spec.js +0 -94
@@ -16,8 +16,7 @@ describe('HasManyResolver', function () {
16
16
  const R = dbs.getService(HasManyResolver);
17
17
  const error = v =>
18
18
  format(
19
- 'The parameter "entities" of HasManyResolver.includeTo requires ' +
20
- 'an Array of Object, but %s was given.',
19
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
21
20
  v,
22
21
  );
23
22
  const throwable = v =>
@@ -44,8 +43,7 @@ describe('HasManyResolver', function () {
44
43
  const R = dbs.getService(HasManyResolver);
45
44
  const error = v =>
46
45
  format(
47
- 'The parameter "entities" of HasManyResolver.includeTo requires ' +
48
- 'an Array of Object, but %s was given.',
46
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
49
47
  v,
50
48
  );
51
49
  const throwable = v =>
@@ -65,8 +63,8 @@ describe('HasManyResolver', function () {
65
63
  const R = dbs.getService(HasManyResolver);
66
64
  const error = v =>
67
65
  format(
68
- 'The parameter "sourceName" of HasManyResolver.includeTo requires ' +
69
- 'a non-empty String, but %s was given.',
66
+ 'Parameter "sourceName" must be a non-empty String, ' +
67
+ 'but %s was given.',
70
68
  v,
71
69
  );
72
70
  const throwable = v =>
@@ -86,8 +84,8 @@ describe('HasManyResolver', function () {
86
84
  const R = dbs.getService(HasManyResolver);
87
85
  const error = v =>
88
86
  format(
89
- 'The parameter "targetName" of HasManyResolver.includeTo requires ' +
90
- 'a non-empty String, but %s was given.',
87
+ 'Parameter "targetName" must be a non-empty String, ' +
88
+ 'but %s was given.',
91
89
  v,
92
90
  );
93
91
  const throwable = v =>
@@ -107,8 +105,8 @@ describe('HasManyResolver', function () {
107
105
  const R = dbs.getService(HasManyResolver);
108
106
  const error = v =>
109
107
  format(
110
- 'The parameter "relationName" of HasManyResolver.includeTo requires ' +
111
- 'a non-empty String, but %s was given.',
108
+ 'Parameter "relationName" must be a non-empty String, ' +
109
+ 'but %s was given.',
112
110
  v,
113
111
  );
114
112
  const throwable = v =>
@@ -128,8 +126,8 @@ describe('HasManyResolver', function () {
128
126
  const R = dbs.getService(HasManyResolver);
129
127
  const error = v =>
130
128
  format(
131
- 'The parameter "foreignKey" of HasManyResolver.includeTo requires ' +
132
- 'a non-empty String, but %s was given.',
129
+ 'Parameter "foreignKey" must be a non-empty String, ' +
130
+ 'but %s was given.',
133
131
  v,
134
132
  );
135
133
  const throwable = v =>
@@ -148,11 +146,7 @@ describe('HasManyResolver', function () {
148
146
  const dbs = new DatabaseSchema();
149
147
  const R = dbs.getService(HasManyResolver);
150
148
  const error = v =>
151
- format(
152
- 'The provided parameter "scope" of HasManyResolver.includeTo ' +
153
- 'should be an Object, but %s was given.',
154
- v,
155
- );
149
+ format('Parameter "scope" must be an Object, but %s was given.', v);
156
150
  const throwable = v =>
157
151
  R.includeTo(
158
152
  [],
@@ -179,9 +173,7 @@ describe('HasManyResolver', function () {
179
173
  'relationName',
180
174
  'foreignKey',
181
175
  );
182
- await expect(promise).to.be.rejectedWith(
183
- 'The model "target" is not defined',
184
- );
176
+ await expect(promise).to.be.rejectedWith('Model "target" is not defined');
185
177
  });
186
178
 
187
179
  it('throws an error if a target model does not have datasource', async function () {
@@ -197,7 +189,7 @@ describe('HasManyResolver', function () {
197
189
  'foreignKey',
198
190
  );
199
191
  await expect(promise).to.be.rejectedWith(
200
- 'The model "target" does not have a specified datasource.',
192
+ 'Model "target" does not have a specified datasource.',
201
193
  );
202
194
  });
203
195
 
@@ -728,8 +720,7 @@ describe('HasManyResolver', function () {
728
720
  const R = dbs.getService(HasManyResolver);
729
721
  const error = v =>
730
722
  format(
731
- 'The parameter "entities" of HasManyResolver.includePolymorphicTo requires ' +
732
- 'an Array of Object, but %s was given.',
723
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
733
724
  v,
734
725
  );
735
726
  const throwable = v =>
@@ -757,8 +748,7 @@ describe('HasManyResolver', function () {
757
748
  const R = dbs.getService(HasManyResolver);
758
749
  const error = v =>
759
750
  format(
760
- 'The parameter "entities" of HasManyResolver.includePolymorphicTo requires ' +
761
- 'an Array of Object, but %s was given.',
751
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
762
752
  v,
763
753
  );
764
754
  const throwable = v =>
@@ -785,8 +775,8 @@ describe('HasManyResolver', function () {
785
775
  const R = dbs.getService(HasManyResolver);
786
776
  const error = v =>
787
777
  format(
788
- 'The parameter "sourceName" of HasManyResolver.includePolymorphicTo requires ' +
789
- 'a non-empty String, but %s was given.',
778
+ 'Parameter "sourceName" must be a non-empty String, ' +
779
+ 'but %s was given.',
790
780
  v,
791
781
  );
792
782
  const throwable = v =>
@@ -813,8 +803,8 @@ describe('HasManyResolver', function () {
813
803
  const R = dbs.getService(HasManyResolver);
814
804
  const error = v =>
815
805
  format(
816
- 'The parameter "targetName" of HasManyResolver.includePolymorphicTo requires ' +
817
- 'a non-empty String, but %s was given.',
806
+ 'Parameter "targetName" must be a non-empty String, ' +
807
+ 'but %s was given.',
818
808
  v,
819
809
  );
820
810
  const throwable = v =>
@@ -841,8 +831,8 @@ describe('HasManyResolver', function () {
841
831
  const R = dbs.getService(HasManyResolver);
842
832
  const error = v =>
843
833
  format(
844
- 'The parameter "relationName" of HasManyResolver.includePolymorphicTo requires ' +
845
- 'a non-empty String, but %s was given.',
834
+ 'Parameter "relationName" must be a non-empty String, ' +
835
+ 'but %s was given.',
846
836
  v,
847
837
  );
848
838
  const throwable = v =>
@@ -869,8 +859,8 @@ describe('HasManyResolver', function () {
869
859
  const R = dbs.getService(HasManyResolver);
870
860
  const error = v =>
871
861
  format(
872
- 'The parameter "foreignKey" of HasManyResolver.includePolymorphicTo requires ' +
873
- 'a non-empty String, but %s was given.',
862
+ 'Parameter "foreignKey" must be a non-empty String, ' +
863
+ 'but %s was given.',
874
864
  v,
875
865
  );
876
866
  const throwable = v =>
@@ -897,8 +887,8 @@ describe('HasManyResolver', function () {
897
887
  const R = dbs.getService(HasManyResolver);
898
888
  const error = v =>
899
889
  format(
900
- 'The parameter "discriminator" of HasManyResolver.includePolymorphicTo requires ' +
901
- 'a non-empty String, but %s was given.',
890
+ 'Parameter "discriminator" must be a non-empty String, ' +
891
+ 'but %s was given.',
902
892
  v,
903
893
  );
904
894
  const throwable = v =>
@@ -924,11 +914,7 @@ describe('HasManyResolver', function () {
924
914
  const dbs = new DatabaseSchema();
925
915
  const R = dbs.getService(HasManyResolver);
926
916
  const error = v =>
927
- format(
928
- 'The provided parameter "scope" of HasManyResolver.includePolymorphicTo ' +
929
- 'should be an Object, but %s was given.',
930
- v,
931
- );
917
+ format('Parameter "scope" must be an Object, but %s was given.', v);
932
918
  const throwable = v =>
933
919
  R.includePolymorphicTo(
934
920
  [],
@@ -958,9 +944,7 @@ describe('HasManyResolver', function () {
958
944
  'parentId',
959
945
  'parentType',
960
946
  );
961
- await expect(promise).to.be.rejectedWith(
962
- 'The model "target" is not defined',
963
- );
947
+ await expect(promise).to.be.rejectedWith('Model "target" is not defined');
964
948
  });
965
949
 
966
950
  it('throws an error if the given target model does not have a datasource', async function () {
@@ -978,7 +962,7 @@ describe('HasManyResolver', function () {
978
962
  'parentType',
979
963
  );
980
964
  await expect(promise).to.be.rejectedWith(
981
- 'The model "target" does not have a specified datasource.',
965
+ 'Model "target" does not have a specified datasource.',
982
966
  );
983
967
  });
984
968
 
@@ -1687,8 +1671,7 @@ describe('HasManyResolver', function () {
1687
1671
  const R = dbs.getService(HasManyResolver);
1688
1672
  const error = v =>
1689
1673
  format(
1690
- 'The parameter "entities" of HasManyResolver.includePolymorphicByRelationName requires ' +
1691
- 'an Array of Object, but %s was given.',
1674
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
1692
1675
  v,
1693
1676
  );
1694
1677
  const throwable = v =>
@@ -1724,8 +1707,7 @@ describe('HasManyResolver', function () {
1724
1707
  const R = dbs.getService(HasManyResolver);
1725
1708
  const error = v =>
1726
1709
  format(
1727
- 'The parameter "entities" of HasManyResolver.includePolymorphicTo requires ' +
1728
- 'an Array of Object, but %s was given.',
1710
+ 'Parameter "entities" must be an Array of Object, but %s was given.',
1729
1711
  v,
1730
1712
  );
1731
1713
  const throwable = v =>
@@ -1751,8 +1733,8 @@ describe('HasManyResolver', function () {
1751
1733
  const R = dbs.getService(HasManyResolver);
1752
1734
  const error = v =>
1753
1735
  format(
1754
- 'The parameter "sourceName" of HasManyResolver.includePolymorphicByRelationName requires ' +
1755
- 'a non-empty String, but %s was given.',
1736
+ 'Parameter "sourceName" must be a non-empty String, ' +
1737
+ 'but %s was given.',
1756
1738
  v,
1757
1739
  );
1758
1740
  const throwable = v =>
@@ -1778,8 +1760,8 @@ describe('HasManyResolver', function () {
1778
1760
  const R = dbs.getService(HasManyResolver);
1779
1761
  const error = v =>
1780
1762
  format(
1781
- 'The parameter "targetName" of HasManyResolver.includePolymorphicByRelationName requires ' +
1782
- 'a non-empty String, but %s was given.',
1763
+ 'Parameter "targetName" must be a non-empty String, ' +
1764
+ 'but %s was given.',
1783
1765
  v,
1784
1766
  );
1785
1767
  const throwable = v =>
@@ -1805,8 +1787,8 @@ describe('HasManyResolver', function () {
1805
1787
  const R = dbs.getService(HasManyResolver);
1806
1788
  const error = v =>
1807
1789
  format(
1808
- 'The parameter "relationName" of HasManyResolver.includePolymorphicByRelationName requires ' +
1809
- 'a non-empty String, but %s was given.',
1790
+ 'Parameter "relationName" must be a non-empty String, ' +
1791
+ 'but %s was given.',
1810
1792
  v,
1811
1793
  );
1812
1794
  const throwable = v =>
@@ -1832,8 +1814,8 @@ describe('HasManyResolver', function () {
1832
1814
  const R = dbs.getService(HasManyResolver);
1833
1815
  const error = v =>
1834
1816
  format(
1835
- 'The parameter "targetRelationName" of HasManyResolver.includePolymorphicByRelationName requires ' +
1836
- 'a non-empty String, but %s was given.',
1817
+ 'Parameter "targetRelationName" must be a non-empty String, ' +
1818
+ 'but %s was given.',
1837
1819
  v,
1838
1820
  );
1839
1821
  const throwable = v =>
@@ -1858,11 +1840,7 @@ describe('HasManyResolver', function () {
1858
1840
  const dbs = new DatabaseSchema();
1859
1841
  const R = dbs.getService(HasManyResolver);
1860
1842
  const error = v =>
1861
- format(
1862
- 'The provided parameter "scope" of HasManyResolver.includePolymorphicByRelationName ' +
1863
- 'should be an Object, but %s was given.',
1864
- v,
1865
- );
1843
+ format('Parameter "scope" must be an Object, but %s was given.', v);
1866
1844
  const throwable = v =>
1867
1845
  R.includePolymorphicByRelationName(
1868
1846
  [],
@@ -1890,9 +1868,7 @@ describe('HasManyResolver', function () {
1890
1868
  'children',
1891
1869
  'parent',
1892
1870
  );
1893
- await expect(promise).to.be.rejectedWith(
1894
- 'The model "target" is not defined',
1895
- );
1871
+ await expect(promise).to.be.rejectedWith('Model "target" is not defined');
1896
1872
  });
1897
1873
 
1898
1874
  it('throws an error if the given target model does not have the given relation name', async function () {
@@ -1909,7 +1885,7 @@ describe('HasManyResolver', function () {
1909
1885
  'parent',
1910
1886
  );
1911
1887
  await expect(promise).to.be.rejectedWith(
1912
- 'The model "target" does not have relation name "parent".',
1888
+ 'Model "target" does not have relation name "parent".',
1913
1889
  );
1914
1890
  });
1915
1891
 
@@ -1935,7 +1911,7 @@ describe('HasManyResolver', function () {
1935
1911
  'parent',
1936
1912
  );
1937
1913
  await expect(promise).to.be.rejectedWith(
1938
- 'The relation "children" of the model "source" is a polymorphic "hasMany" relation, ' +
1914
+ 'Relation "children" of the model "source" is a polymorphic "hasMany" relation, ' +
1939
1915
  'so it requires the target relation "parent" to be a polymorphic "belongsTo", ' +
1940
1916
  'but "referencesMany" type was given.',
1941
1917
  );
@@ -1963,7 +1939,7 @@ describe('HasManyResolver', function () {
1963
1939
  'parent',
1964
1940
  );
1965
1941
  await expect(promise).to.be.rejectedWith(
1966
- 'The relation "children" of the model "source" is a polymorphic ' +
1942
+ 'Relation "children" of the model "source" is a polymorphic ' +
1967
1943
  '"hasMany" relation, so it requires the target relation "parent" ' +
1968
1944
  'to be a polymorphic too.',
1969
1945
  );
@@ -1991,7 +1967,7 @@ describe('HasManyResolver', function () {
1991
1967
  'parent',
1992
1968
  );
1993
1969
  await expect(promise).to.be.rejectedWith(
1994
- 'The model "target" does not have a specified datasource.',
1970
+ 'Model "target" does not have a specified datasource.',
1995
1971
  );
1996
1972
  });
1997
1973
 
@@ -29,43 +29,38 @@ export class HasOneResolver extends Service {
29
29
  ) {
30
30
  if (!entities || !Array.isArray(entities)) {
31
31
  throw new InvalidArgumentError(
32
- 'The parameter "entities" of HasOneResolver.includeTo requires ' +
33
- 'an Array of Object, but %v was given.',
32
+ 'Parameter "entities" must be an Array of Object, but %v was given.',
34
33
  entities,
35
34
  );
36
35
  }
37
36
  if (!sourceName || typeof sourceName !== 'string') {
38
37
  throw new InvalidArgumentError(
39
- 'The parameter "sourceName" of HasOneResolver.includeTo requires ' +
40
- 'a non-empty String, but %v was given.',
38
+ 'Parameter "sourceName" must be a non-empty String, but %v was given.',
41
39
  sourceName,
42
40
  );
43
41
  }
44
42
  if (!targetName || typeof targetName !== 'string') {
45
43
  throw new InvalidArgumentError(
46
- 'The parameter "targetName" of HasOneResolver.includeTo requires ' +
47
- 'a non-empty String, but %v was given.',
44
+ 'Parameter "targetName" must be a non-empty String, but %v was given.',
48
45
  targetName,
49
46
  );
50
47
  }
51
48
  if (!relationName || typeof relationName !== 'string') {
52
49
  throw new InvalidArgumentError(
53
- 'The parameter "relationName" of HasOneResolver.includeTo requires ' +
54
- 'a non-empty String, but %v was given.',
50
+ 'Parameter "relationName" must be a non-empty String, ' +
51
+ 'but %v was given.',
55
52
  relationName,
56
53
  );
57
54
  }
58
55
  if (!foreignKey || typeof foreignKey !== 'string') {
59
56
  throw new InvalidArgumentError(
60
- 'The parameter "foreignKey" of HasOneResolver.includeTo requires ' +
61
- 'a non-empty String, but %v was given.',
57
+ 'Parameter "foreignKey" must be a non-empty String, but %v was given.',
62
58
  foreignKey,
63
59
  );
64
60
  }
65
61
  if (scope && (typeof scope !== 'object' || Array.isArray(scope))) {
66
62
  throw new InvalidArgumentError(
67
- 'The provided parameter "scope" of HasOneResolver.includeTo ' +
68
- 'should be an Object, but %v was given.',
63
+ 'Parameter "scope" must be an Object, but %v was given.',
69
64
  scope,
70
65
  );
71
66
  }
@@ -78,8 +73,7 @@ export class HasOneResolver extends Service {
78
73
  entities.forEach(entity => {
79
74
  if (!entity || typeof entity !== 'object' || Array.isArray(entity)) {
80
75
  throw new InvalidArgumentError(
81
- 'The parameter "entities" of HasOneResolver.includeTo requires ' +
82
- 'an Array of Object, but %v was given.',
76
+ 'Parameter "entities" must be an Array of Object, but %v was given.',
83
77
  entity,
84
78
  );
85
79
  }
@@ -140,50 +134,45 @@ export class HasOneResolver extends Service {
140
134
  ) {
141
135
  if (!entities || !Array.isArray(entities)) {
142
136
  throw new InvalidArgumentError(
143
- 'The parameter "entities" of HasOneResolver.includePolymorphicTo requires ' +
144
- 'an Array of Object, but %v was given.',
137
+ 'Parameter "entities" must be an Array of Object, but %v was given.',
145
138
  entities,
146
139
  );
147
140
  }
148
141
  if (!sourceName || typeof sourceName !== 'string') {
149
142
  throw new InvalidArgumentError(
150
- 'The parameter "sourceName" of HasOneResolver.includePolymorphicTo requires ' +
151
- 'a non-empty String, but %v was given.',
143
+ 'Parameter "sourceName" must be a non-empty String, but %v was given.',
152
144
  sourceName,
153
145
  );
154
146
  }
155
147
  if (!targetName || typeof targetName !== 'string') {
156
148
  throw new InvalidArgumentError(
157
- 'The parameter "targetName" of HasOneResolver.includePolymorphicTo requires ' +
158
- 'a non-empty String, but %v was given.',
149
+ 'Parameter "targetName" must be a non-empty String, but %v was given.',
159
150
  targetName,
160
151
  );
161
152
  }
162
153
  if (!relationName || typeof relationName !== 'string') {
163
154
  throw new InvalidArgumentError(
164
- 'The parameter "relationName" of HasOneResolver.includePolymorphicTo requires ' +
165
- 'a non-empty String, but %v was given.',
155
+ 'Parameter "relationName" must be a non-empty String, ' +
156
+ 'but %v was given.',
166
157
  relationName,
167
158
  );
168
159
  }
169
160
  if (!foreignKey || typeof foreignKey !== 'string') {
170
161
  throw new InvalidArgumentError(
171
- 'The parameter "foreignKey" of HasOneResolver.includePolymorphicTo requires ' +
172
- 'a non-empty String, but %v was given.',
162
+ 'Parameter "foreignKey" must be a non-empty String, but %v was given.',
173
163
  foreignKey,
174
164
  );
175
165
  }
176
166
  if (!discriminator || typeof discriminator !== 'string') {
177
167
  throw new InvalidArgumentError(
178
- 'The parameter "discriminator" of HasOneResolver.includePolymorphicTo requires ' +
179
- 'a non-empty String, but %v was given.',
168
+ 'Parameter "discriminator" must be a non-empty String, ' +
169
+ 'but %v was given.',
180
170
  discriminator,
181
171
  );
182
172
  }
183
173
  if (scope && (typeof scope !== 'object' || Array.isArray(scope))) {
184
174
  throw new InvalidArgumentError(
185
- 'The provided parameter "scope" of HasOneResolver.includePolymorphicTo ' +
186
- 'should be an Object, but %v was given.',
175
+ 'Parameter "scope" must be an Object, but %v was given.',
187
176
  scope,
188
177
  );
189
178
  }
@@ -196,8 +185,7 @@ export class HasOneResolver extends Service {
196
185
  entities.forEach(entity => {
197
186
  if (!entity || typeof entity !== 'object' || Array.isArray(entity)) {
198
187
  throw new InvalidArgumentError(
199
- 'The parameter "entities" of HasOneResolver.includePolymorphicTo requires ' +
200
- 'an Array of Object, but %v was given.',
188
+ 'Parameter "entities" must be an Array of Object, but %v was given.',
201
189
  entity,
202
190
  );
203
191
  }
@@ -259,43 +247,39 @@ export class HasOneResolver extends Service {
259
247
  ) {
260
248
  if (!entities || !Array.isArray(entities)) {
261
249
  throw new InvalidArgumentError(
262
- 'The parameter "entities" of HasOneResolver.includePolymorphicByRelationName requires ' +
263
- 'an Array of Object, but %v was given.',
250
+ 'Parameter "entities" must be an Array of Object, but %v was given.',
264
251
  entities,
265
252
  );
266
253
  }
267
254
  if (!sourceName || typeof sourceName !== 'string') {
268
255
  throw new InvalidArgumentError(
269
- 'The parameter "sourceName" of HasOneResolver.includePolymorphicByRelationName requires ' +
270
- 'a non-empty String, but %v was given.',
256
+ 'Parameter "sourceName" must be a non-empty String, but %v was given.',
271
257
  sourceName,
272
258
  );
273
259
  }
274
260
  if (!targetName || typeof targetName !== 'string') {
275
261
  throw new InvalidArgumentError(
276
- 'The parameter "targetName" of HasOneResolver.includePolymorphicByRelationName requires ' +
277
- 'a non-empty String, but %v was given.',
262
+ 'Parameter "targetName" must be a non-empty String, but %v was given.',
278
263
  targetName,
279
264
  );
280
265
  }
281
266
  if (!relationName || typeof relationName !== 'string') {
282
267
  throw new InvalidArgumentError(
283
- 'The parameter "relationName" of HasOneResolver.includePolymorphicByRelationName requires ' +
284
- 'a non-empty String, but %v was given.',
268
+ 'Parameter "relationName" must be a non-empty String, ' +
269
+ 'but %v was given.',
285
270
  relationName,
286
271
  );
287
272
  }
288
273
  if (!targetRelationName || typeof targetRelationName !== 'string') {
289
274
  throw new InvalidArgumentError(
290
- 'The parameter "targetRelationName" of HasOneResolver.includePolymorphicByRelationName requires ' +
291
- 'a non-empty String, but %v was given.',
275
+ 'Parameter "targetRelationName" must be a non-empty String, ' +
276
+ 'but %v was given.',
292
277
  targetRelationName,
293
278
  );
294
279
  }
295
280
  if (scope && (typeof scope !== 'object' || Array.isArray(scope))) {
296
281
  throw new InvalidArgumentError(
297
- 'The provided parameter "scope" of HasOneResolver.includePolymorphicByRelationName ' +
298
- 'should be an Object, but %v was given.',
282
+ 'Parameter "scope" must be an Object, but %v was given.',
299
283
  scope,
300
284
  );
301
285
  }
@@ -305,7 +289,7 @@ export class HasOneResolver extends Service {
305
289
  ).getRelationDefinitionByName(targetName, targetRelationName);
306
290
  if (targetRelationDef.type !== RelationType.BELONGS_TO) {
307
291
  throw new InvalidArgumentError(
308
- 'The relation %v of the model %v is a polymorphic "hasOne" relation, ' +
292
+ 'Relation %v of the model %v is a polymorphic "hasOne" relation, ' +
309
293
  'so it requires the target relation %v to be a polymorphic "belongsTo", ' +
310
294
  'but %v type was given.',
311
295
  relationName,
@@ -316,7 +300,7 @@ export class HasOneResolver extends Service {
316
300
  }
317
301
  if (!targetRelationDef.polymorphic) {
318
302
  throw new InvalidArgumentError(
319
- 'The relation %v of the model %v is a polymorphic "hasOne" relation, ' +
303
+ 'Relation %v of the model %v is a polymorphic "hasOne" relation, ' +
320
304
  'so it requires the target relation %v to be a polymorphic too.',
321
305
  relationName,
322
306
  sourceName,