@futdevpro/fsm-dynamo 1.10.25 → 1.10.26
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/build/_models/control-models/data-model-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/data-model-params.control-model.js +40 -1
- package/build/_models/control-models/data-model-params.control-model.js.map +1 -1
- package/build/_models/control-models/data-property-params.control-model.d.ts +8 -0
- package/build/_models/control-models/data-property-params.control-model.d.ts.map +1 -1
- package/build/_models/control-models/data-property-params.control-model.js +19 -0
- package/build/_models/control-models/data-property-params.control-model.js.map +1 -1
- package/futdevpro-fsm-dynamo-01.10.26.tgz +0 -0
- package/package.json +1 -1
- package/src/_models/control-models/data-model-params.control-model.ts +60 -1
- package/src/_models/control-models/data-property-params.control-model.ts +28 -0
- package/futdevpro-fsm-dynamo-01.10.25.tgz +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-model-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data-model-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAErG,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,uBAAuB,CAAC,CAAC,CAAC,CAAC;AACxD,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,uBAAuB,CAAC,CAAC,CAAC,CAAC;AAC/D,qBAAa,uBAAuB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,aAAa;IACjF;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACtD,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC3D,qBAAa,qBAAqB,CAAC,CAAC,SAAS,aAAa,CAAE,SAAQ,uBAAuB,CAAC,CAAC,CAAC;gBAK1F,GAAG,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAiIjC,WAAW,CAAC,IAAI,OAAO;IAIvB,yBAAyB,CAAC,CAAC,QAAQ,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,IAAI;CAkB1E"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DyFM_DataModel_Params = exports.DyFM_DataModel_Settings = void 0;
|
|
4
4
|
const log_util_1 = require("../../_collections/utils/log.util");
|
|
5
|
+
const basic_property_type_enum_1 = require("../../_enums/basic-property-type.enum");
|
|
5
6
|
const data_model_type_enum_1 = require("../../_enums/data-model-type.enum");
|
|
6
7
|
const metadata_data_model_1 = require("../data-models/metadata.data-model");
|
|
7
8
|
class DyFM_DataModel_Settings extends metadata_data_model_1.DyFM_Metadata {
|
|
@@ -31,10 +32,48 @@ class DyFM_DataModel_Params extends DyFM_DataModel_Settings {
|
|
|
31
32
|
log_util_1.DyFM_Log.error('DyFM_DataModel_Params.constructor: ' +
|
|
32
33
|
`A property key is missing in "${this.dataName}" model.`);
|
|
33
34
|
}
|
|
34
|
-
this.properties[key]
|
|
35
|
+
const property = this.properties[key];
|
|
36
|
+
property.key = key;
|
|
35
37
|
if (this.properties[key].subObjectParams) {
|
|
36
38
|
this.setKeysForSubObjectParams(this.properties[key]);
|
|
37
39
|
}
|
|
40
|
+
/* if (property.vectorizeTo) {
|
|
41
|
+
if (!this.properties[property.vectorizeTo]) {
|
|
42
|
+
throw new Error(
|
|
43
|
+
`Vectorize to property "${property.vectorizeTo}" is not found in ` +
|
|
44
|
+
`"${this.dataName}" model.`
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
this.properties[property.vectorizeTo].vectorizeFrom ??= key;
|
|
49
|
+
} */
|
|
50
|
+
if (property.vectorizedFrom) {
|
|
51
|
+
if (!this.properties[property.vectorizedFrom]) {
|
|
52
|
+
throw new Error(`Vectorized from property "${property.vectorizedFrom}" is not found in ` +
|
|
53
|
+
`"${this.dataName}" model.`);
|
|
54
|
+
}
|
|
55
|
+
/* this.properties[property.vectorizedFrom].vectorizeTo ??= key; */
|
|
56
|
+
if (property.type !== 'number[]') {
|
|
57
|
+
throw new Error(`Vectorized from property "${property.vectorizedFrom}" is not a number[] property in ` +
|
|
58
|
+
`"${this.dataName}" model.`);
|
|
59
|
+
}
|
|
60
|
+
if (this.properties[property.vectorizedFrom].type !== basic_property_type_enum_1.DyFM_BasicProperty_Type.string) {
|
|
61
|
+
throw new Error(`Vectorized from property "${property.vectorizedFrom}" is not a string property in ` +
|
|
62
|
+
`"${this.dataName}" model.`);
|
|
63
|
+
}
|
|
64
|
+
if (!property.vectorizeUseIndex) {
|
|
65
|
+
throw new Error('vectorizeUseIndex is required if vectorizedFrom is set. ' +
|
|
66
|
+
`"${this.dataName}" model.`);
|
|
67
|
+
}
|
|
68
|
+
if (!this.properties[property.vectorizeUseIndex]) {
|
|
69
|
+
throw new Error(`vectorizeUseIndex property "${property.vectorizeUseIndex}" is not found in ` +
|
|
70
|
+
`"${this.dataName}" model.`);
|
|
71
|
+
}
|
|
72
|
+
if (!this.properties[property.vectorizeUseIndex].index) {
|
|
73
|
+
throw new Error(`vectorizeUseIndex property "${property.vectorizeUseIndex}" is not an ` +
|
|
74
|
+
`index property in "${this.dataName}" model.`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
38
77
|
});
|
|
39
78
|
if (!this?.modelType || this?.modelType == data_model_type_enum_1.DyFM_DataModel_Type.data) {
|
|
40
79
|
this.modelType = data_model_type_enum_1.DyFM_DataModel_Type.data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-model-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAC7D,4EAAwE;AACxE,4EAAmE;AAKnE,MAAa,uBAAiD,SAAQ,mCAAa;IACjF;;OAEG;IACH,QAAQ,CAAS;IACjB,SAAS,CAAuB;IAChC,UAAU,CAAW;IACrB,UAAU,CAAyB;CACpC;AARD,0DAQC;AAID,MAAa,qBAA+C,SAAQ,uBAA0B;IAE5F,mDAAmD;IAEnD,YACE,GAA+B;QAE/B,KAAK,CAAC,GAAG,CAAC,CAAC;QAEX,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5D,mBAAQ,CAAC,KAAK,CACZ,qCAAqC;gBACrC,8BAA8B,IAAI,CAAC,QAAQ,UAAU,CACtD,CAAC;YAEF,IAAI,CAAC,UAAU,GAAG,EAA4B,CAAC;QACjD,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,EAAQ,EAAE;YACzD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,mBAAQ,CAAC,KAAK,CACZ,qCAAqC;oBACrC,iCAAiC,IAAI,CAAC,QAAQ,UAAU,CACzD,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"data-model-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-model-params.control-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
2
|
+
import { DyFM_OpenAIModel } from '../../_modules/open-ai/_enums/open-ai-model.enum';
|
|
2
3
|
export type DyFM_DataProperties<T> = {
|
|
3
4
|
[K in keyof T]: DyFM_DataProperty_Params<T[K]>;
|
|
4
5
|
};
|
|
@@ -22,6 +23,13 @@ export declare class DyFM_DataProperty_Settings<T> {
|
|
|
22
23
|
dependencyDataName?: string;
|
|
23
24
|
archiveable?: boolean;
|
|
24
25
|
archiveListAfter?: number;
|
|
26
|
+
vectorizedFrom?: string;
|
|
27
|
+
embeddingModel?: DyFM_OpenAIModel;
|
|
28
|
+
/**
|
|
29
|
+
* If true, the property will be vectorized always, even if the property is already vectorized.
|
|
30
|
+
*/
|
|
31
|
+
vectorizeAlways?: boolean;
|
|
32
|
+
vectorizeUseIndex?: string;
|
|
25
33
|
minlength?: number;
|
|
26
34
|
maxlength?: number;
|
|
27
35
|
subObjectParams?: DyFM_DataProperties<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-property-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"data-property-params.control-model.d.ts","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;KAClC,CAAC,IAAI,MAAM,CAAC,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC/C,CAAA;AAED,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,GAAG,IAAI,0BAA0B,CAAC,CAAC,CAAC,CAAC;AAE/E,qBAAa,0BAA0B,CAAC,CAAC;IACvC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,uBAAuB,GAAG,MAAM,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAGhB;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,cAAc,CAAC,EAAE,gBAAgB,CAAC;IAClC;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,eAAe,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAE3C,oBAAoB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,KAAiB,IAAI,CAAC,EAAE,CAAC;CAC5D;AAGD,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAC;AACrE,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,wBAAwB,CAAC,CAAC,CAAC,CAAC;AAC1D;;;GAGG;AACH,qBAAa,wBAAwB,CAAC,CAAC,CAAE,SAAQ,0BAA0B,CAAC,CAAC,CAAC;IAKnE,oBAAoB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,EAAE,CAAM;gBAG3D,GAAG,EAAE,0BAA0B,CAAC,CAAC,CAAC;IAuDpC,WAAW,CAAC,IAAI,OAAO;IAKvB,SAAS,CAAC,IAAI,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI;CAyBhF"}
|
|
@@ -23,6 +23,14 @@ class DyFM_DataProperty_Settings {
|
|
|
23
23
|
dependencyDataName;
|
|
24
24
|
archiveable;
|
|
25
25
|
archiveListAfter;
|
|
26
|
+
vectorizedFrom;
|
|
27
|
+
/* vectorizeTo?: string; */
|
|
28
|
+
embeddingModel;
|
|
29
|
+
/**
|
|
30
|
+
* If true, the property will be vectorized always, even if the property is already vectorized.
|
|
31
|
+
*/
|
|
32
|
+
vectorizeAlways;
|
|
33
|
+
vectorizeUseIndex;
|
|
26
34
|
minlength;
|
|
27
35
|
maxlength;
|
|
28
36
|
subObjectParams;
|
|
@@ -53,6 +61,17 @@ class DyFM_DataProperty_Params extends DyFM_DataProperty_Settings {
|
|
|
53
61
|
set.required = true;
|
|
54
62
|
}
|
|
55
63
|
}
|
|
64
|
+
if (set.vectorizedFrom) {
|
|
65
|
+
if (set.index) {
|
|
66
|
+
log_util_1.DyFM_Log.warn('DYNAMO WARNING: ', '\n vectorizedFrom and index are not recommended to be set at the same time. ' +
|
|
67
|
+
`It will be set to false by while you are not setting it.`);
|
|
68
|
+
set.index = false;
|
|
69
|
+
}
|
|
70
|
+
if (!set.vectorizeUseIndex) {
|
|
71
|
+
throw new Error('vectorizeUseIndex is required if vectorizedFrom is set. ' +
|
|
72
|
+
`"${this.key}" property.`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
56
75
|
Object.assign(this, set);
|
|
57
76
|
}
|
|
58
77
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-property-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":";;;AAAA,gEAA6D;AAC7D,oFAAgF;
|
|
1
|
+
{"version":3,"file":"data-property-params.control-model.js","sourceRoot":"","sources":["../../../src/_models/control-models/data-property-params.control-model.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/fsm-dynamo",
|
|
3
|
-
"version": "01.10.
|
|
3
|
+
"version": "01.10.26",
|
|
4
4
|
"description": "Full Stack Model Collection for Dynamic (NodeJS-Typescript) Framework called Dynamo, by Future Development Ltd.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prep": "npm i pnpm -g && npm i rimraf nodemon -g",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DyFM_Log } from '../../_collections/utils/log.util';
|
|
2
|
+
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
2
3
|
import { DyFM_DataModel_Type } from '../../_enums/data-model-type.enum';
|
|
3
4
|
import { DyFM_Metadata } from '../data-models/metadata.data-model';
|
|
4
5
|
import { DyFM_DataProperties, DyFM_DataProperty_Params } from './data-property-params.control-model';
|
|
@@ -47,11 +48,69 @@ export class DyFM_DataModel_Params<T extends DyFM_Metadata> extends DyFM_DataMod
|
|
|
47
48
|
);
|
|
48
49
|
}
|
|
49
50
|
|
|
50
|
-
this.properties[key]
|
|
51
|
+
const property: DyFM_DataProperty_Params<any> = this.properties[key];
|
|
52
|
+
property.key = key;
|
|
51
53
|
|
|
52
54
|
if (this.properties[key].subObjectParams) {
|
|
53
55
|
this.setKeysForSubObjectParams(this.properties[key]);
|
|
54
56
|
}
|
|
57
|
+
|
|
58
|
+
/* if (property.vectorizeTo) {
|
|
59
|
+
if (!this.properties[property.vectorizeTo]) {
|
|
60
|
+
throw new Error(
|
|
61
|
+
`Vectorize to property "${property.vectorizeTo}" is not found in ` +
|
|
62
|
+
`"${this.dataName}" model.`
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
this.properties[property.vectorizeTo].vectorizeFrom ??= key;
|
|
67
|
+
} */
|
|
68
|
+
|
|
69
|
+
if (property.vectorizedFrom) {
|
|
70
|
+
if (!this.properties[property.vectorizedFrom]) {
|
|
71
|
+
throw new Error(
|
|
72
|
+
`Vectorized from property "${property.vectorizedFrom}" is not found in ` +
|
|
73
|
+
`"${this.dataName}" model.`
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* this.properties[property.vectorizedFrom].vectorizeTo ??= key; */
|
|
78
|
+
|
|
79
|
+
if (property.type !== 'number[]') {
|
|
80
|
+
throw new Error(
|
|
81
|
+
`Vectorized from property "${property.vectorizedFrom}" is not a number[] property in ` +
|
|
82
|
+
`"${this.dataName}" model.`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if ((this.properties[property.vectorizedFrom] as DyFM_DataProperty_Params<any>).type !== DyFM_BasicProperty_Type.string) {
|
|
87
|
+
throw new Error(
|
|
88
|
+
`Vectorized from property "${property.vectorizedFrom}" is not a string property in ` +
|
|
89
|
+
`"${this.dataName}" model.`
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (!property.vectorizeUseIndex) {
|
|
94
|
+
throw new Error(
|
|
95
|
+
'vectorizeUseIndex is required if vectorizedFrom is set. ' +
|
|
96
|
+
`"${this.dataName}" model.`
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
if (!this.properties[property.vectorizeUseIndex]) {
|
|
101
|
+
throw new Error(
|
|
102
|
+
`vectorizeUseIndex property "${property.vectorizeUseIndex}" is not found in ` +
|
|
103
|
+
`"${this.dataName}" model.`
|
|
104
|
+
);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
if (!(this.properties[property.vectorizeUseIndex] as DyFM_DataProperty_Params<any>).index) {
|
|
108
|
+
throw new Error(
|
|
109
|
+
`vectorizeUseIndex property "${property.vectorizeUseIndex}" is not an ` +
|
|
110
|
+
`index property in "${this.dataName}" model.`
|
|
111
|
+
);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
55
114
|
});
|
|
56
115
|
|
|
57
116
|
if (!this?.modelType || this?.modelType == DyFM_DataModel_Type.data) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { DyFM_Log } from '../../_collections/utils/log.util';
|
|
2
2
|
import { DyFM_BasicProperty_Type } from '../../_enums/basic-property-type.enum';
|
|
3
|
+
import { DyFM_OpenAIModel } from '../../_modules/open-ai/_enums/open-ai-model.enum';
|
|
3
4
|
|
|
4
5
|
export type DyFM_DataProperties<T> = {
|
|
5
6
|
[K in keyof T]: DyFM_DataProperty_Params<T[K]>;
|
|
@@ -30,6 +31,15 @@ export class DyFM_DataProperty_Settings<T>{
|
|
|
30
31
|
archiveable?: boolean;
|
|
31
32
|
archiveListAfter?: number;
|
|
32
33
|
|
|
34
|
+
vectorizedFrom?: string;
|
|
35
|
+
/* vectorizeTo?: string; */
|
|
36
|
+
embeddingModel?: DyFM_OpenAIModel;
|
|
37
|
+
/**
|
|
38
|
+
* If true, the property will be vectorized always, even if the property is already vectorized.
|
|
39
|
+
*/
|
|
40
|
+
vectorizeAlways?: boolean;
|
|
41
|
+
vectorizeUseIndex?: string;
|
|
42
|
+
|
|
33
43
|
minlength?: number;
|
|
34
44
|
maxlength?: number;
|
|
35
45
|
|
|
@@ -80,6 +90,24 @@ export class DyFM_DataProperty_Params<T> extends DyFM_DataProperty_Settings<T> {
|
|
|
80
90
|
set.required = true;
|
|
81
91
|
}
|
|
82
92
|
}
|
|
93
|
+
|
|
94
|
+
if (set.vectorizedFrom) {
|
|
95
|
+
if (set.index) {
|
|
96
|
+
DyFM_Log.warn(
|
|
97
|
+
'DYNAMO WARNING: ',
|
|
98
|
+
'\n vectorizedFrom and index are not recommended to be set at the same time. ' +
|
|
99
|
+
`It will be set to false by while you are not setting it.`
|
|
100
|
+
);
|
|
101
|
+
set.index = false;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (!set.vectorizeUseIndex) {
|
|
105
|
+
throw new Error(
|
|
106
|
+
'vectorizeUseIndex is required if vectorizedFrom is set. ' +
|
|
107
|
+
`"${this.key}" property.`
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
83
111
|
|
|
84
112
|
Object.assign(this, set);
|
|
85
113
|
} else {
|
|
Binary file
|