@futdevpro/nts-dynamo 1.15.58 → 1.15.60
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/.dynamo/logs/cicd-pipeline/output.log +1622 -1705
- package/.dynamo/logs/cicd-pipeline/status.json +30 -30
- package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.d.ts.map +1 -1
- package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.js +2 -2
- package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.js.map +1 -1
- package/build/_modules/ai/_services/ai-embedding-mock.service.d.ts +1 -1
- package/build/_modules/ai/_services/ai-embedding-mock.service.d.ts.map +1 -1
- package/build/_modules/ai/_services/ai-embedding-mock.service.js.map +1 -1
- package/build/_modules/ai/_services/ai-embedding-provider.registry.d.ts.map +1 -1
- package/build/_modules/ai/_services/ai-embedding-provider.registry.js.map +1 -1
- package/build/_modules/ai/_services/lmstudio-embedding.control-service.d.ts +1 -1
- package/build/_modules/ai/_services/lmstudio-embedding.control-service.d.ts.map +1 -1
- package/build/_modules/ai/_services/lmstudio-embedding.control-service.js +3 -3
- package/build/_modules/ai/_services/lmstudio-embedding.control-service.js.map +1 -1
- package/build/_modules/ai/index.d.ts +2 -0
- package/build/_modules/ai/index.d.ts.map +1 -1
- package/build/_modules/ai/index.js +4 -0
- package/build/_modules/ai/index.js.map +1 -1
- package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.d.ts +17 -17
- package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.d.ts.map +1 -1
- package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.js +21 -21
- package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.js.map +1 -1
- package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.d.ts +4 -4
- package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.d.ts.map +1 -1
- package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.js +5 -5
- package/build/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.js.map +1 -1
- package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.d.ts +4 -4
- package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.d.ts.map +1 -1
- package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.js +4 -4
- package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.js.map +1 -1
- package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.d.ts +6 -6
- package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.d.ts.map +1 -1
- package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.js +5 -5
- package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.js.map +1 -1
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.d.ts +1 -1
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.js +1 -1
- package/build/_modules/mcp/_services/dynts-mcp-server.service-base.d.ts +4 -4
- package/build/_modules/mcp/_services/dynts-mcp-server.service-base.d.ts.map +1 -1
- package/build/_modules/mcp/_services/dynts-mcp-server.service-base.js +6 -6
- package/build/_modules/mcp/_services/dynts-mcp-server.service-base.js.map +1 -1
- package/build/_modules/mcp/_services/dynts-mcp.adapter.d.ts +11 -11
- package/build/_modules/mcp/_services/dynts-mcp.adapter.d.ts.map +1 -1
- package/build/_modules/mcp/_services/dynts-mcp.adapter.js +16 -11
- package/build/_modules/mcp/_services/dynts-mcp.adapter.js.map +1 -1
- package/build/_modules/mcp/index.js +1 -1
- package/build/_modules/mcp/index.js.map +1 -1
- package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.d.ts +3 -3
- package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.d.ts.map +1 -1
- package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.js +4 -4
- package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.js.map +1 -1
- package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.d.ts.map +1 -1
- package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.js +9 -0
- package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.js.map +1 -1
- package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.d.ts +3 -3
- package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.d.ts.map +1 -1
- package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.js +1 -1
- package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.js.map +1 -1
- package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.d.ts +7 -7
- package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.d.ts.map +1 -1
- package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.js +2 -2
- package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.js.map +1 -1
- package/package.json +1 -1
- package/src/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.ts +39 -7
- package/src/_modules/ai/_services/ai-embedding-mock.service.ts +18 -4
- package/src/_modules/ai/_services/ai-embedding-provider.registry.ts +4 -0
- package/src/_modules/ai/_services/lmstudio-embedding.control-service.ts +26 -5
- package/src/_modules/ai/index.ts +5 -0
- package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.ts +145 -130
- package/src/_modules/data-readers/_collections/dynts-sqlite-reader.util.ts +131 -120
- package/src/_modules/local-vector-search/_models/data-models/lvs-vector-persist.data-model.ts +6 -5
- package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.ts +35 -35
- package/src/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.ts +9 -5
- package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.ts +11 -11
- package/src/_modules/local-vector-search/_services/lvs-vector-persist.data-service.ts +19 -17
- package/src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts +1 -1
- package/src/_modules/mcp/_services/dynts-mcp-server.service-base.spec.ts +123 -114
- package/src/_modules/mcp/_services/dynts-mcp-server.service-base.ts +44 -39
- package/src/_modules/mcp/_services/dynts-mcp.adapter.ts +114 -103
- package/src/_modules/mcp/index.ts +1 -1
- package/src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts +5 -4
- package/src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts +0 -2
- package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.ts +19 -13
- package/src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts +37 -21
- package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.ts +11 -6
- package/src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts +17 -14
package/build/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.data-model.js","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts"],"names":[],"mappings":";;;AACA,sDAA0F;AAI1F;;;;;;;;;;;;;GAaG;AACH,MAAa,
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.data-model.js","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/data-models/dynts-scoped-config.data-model.ts"],"names":[],"mappings":";;;AACA,sDAA0F;AAI1F;;;;;;;;;;;;;GAaG;AACH,MAAa,kBAAmB,SAAQ,0BAAa;IAEnD,4BAA4B;IAE5B,oDAAoD;IACpD,KAAK,CAA4B;IAEjC,mEAAmE;IACnE,UAAU,CAAU;IAEpB,4EAA4E;IAC5E,OAAO,CAAU;IAEjB,yBAAyB;IAEzB,0EAA0E;IAC1E,GAAG,CAAU;IAEb,gFAAgF;IAChF,KAAK,CAAW;IAEhB,gBAAgB;IAEhB,kCAAkC;IAClC,KAAK,CAAU;IAEf,oDAAoD;IACpD,WAAW,CAAU;IAErB,2BAA2B;IAC3B,IAAI,CAAU;IAEd,YAAY,GAAiC;QAC3C,KAAK,CAAC,GAAG,CAAC,CAAC;QAEX,IAAI,GAAG,EAAE,CAAC;YACR,wBAAW,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;CACF;AAvCD,gDAuCC;AAED;;;;;;GAMG;AACU,QAAA,6BAA6B,GACxC,IAAI,kCAAqB,CAAqB;IAC5C,QAAQ,EAAE,qBAAqB;IAC/B,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;QACtD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;QAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;QACxC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;QACpD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE;QACtC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC/B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACzB;CACF,CAAC,CAAC"}
|
package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GACjC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE3E;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEtF;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,gFAAgF;IAChF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,gCAAgC;IAC/C,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,yFAAyF;IACzF,SAAS,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,+BAA+B,CAAC,CAAC,GAAG,uBAAuB;IAC1E,kCAAkC;IAClC,KAAK,EAAE,CAAC,CAAC;IAET,2DAA2D;IAC3D,YAAY,EAAE,8BAA8B,CAAC;IAE7C,iFAAiF;IACjF,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,gCAAgC,CAAC,CAAC,GAAG,uBAAuB;IAC3E,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,yFAAyF;IACzF,SAAS,CAAC,EAAE,0BAA0B,EAAE,CAAC;IAEzC,wEAAwE;IACxE,cAAc,CAAC,EAAE,CAAC,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Scoped-config shared vokabulár (BFR-AM-004). Egy fájlban a szorosan összetartozó típusok
|
|
4
|
+
* (a `*.interface.ts` az egy-export-per-file konvenció ismert kivétele — mint a FAM `fam-config.interface.ts`).
|
|
5
|
+
*
|
|
6
|
+
* **Domain-agnosztikus:** a bedrock CSAK a generikus resolve-precedencia engine-t + a tárolást adja;
|
|
7
|
+
* a konkrét kulcs-katalógus, a kulcs-típusok és a default-ok a fogyasztó projekté (pl. FAM
|
|
8
|
+
* `CONFIG_CATALOG`). Ezért a `value` itt `unknown`, a `key` `string`, és a `builtinDefault`-ot a
|
|
9
|
+
* hívó adja át (nincs beépített katalógus).
|
|
10
|
+
*/
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
//# sourceMappingURL=dynts-scoped-config.interface.js.map
|
package/build/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/scoped-config/_models/interfaces/dynts-scoped-config.interface.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DyNTS_ScopedConfig_Level } from '../_enums/dynts-scoped-config-level.enum';
|
|
2
|
-
import {
|
|
2
|
+
import { DyNTS_ScopedConfig } from '../_models/data-models/dynts-scoped-config.data-model';
|
|
3
3
|
import { DyNTS_ScopedConfigResolveContext, DyNTS_ScopedConfigResolvedValue, DyNTS_ScopedConfigResolveOptions, DyNTS_ScopedConfigSetOptions, DyNTS_ScopedConfigValue } from '../_models/interfaces/dynts-scoped-config.interface';
|
|
4
4
|
/**
|
|
5
5
|
* `DyNTS_ScopedConfig_ControlService` — a DB-backed, scoped config GENERIKUS feloldó-engine (BFR-AM-004).
|
|
@@ -69,7 +69,7 @@ export declare class DyNTS_ScopedConfig_ControlService {
|
|
|
69
69
|
* bedrock csak a feloldási-kulcs konzisztenciáját biztosítja (table-/scope-szinten a megfelelő
|
|
70
70
|
* scope-azonosító jelenléte kötelező).
|
|
71
71
|
*/
|
|
72
|
-
set(level: DyNTS_ScopedConfig_Level, key: string, value: unknown, options?: DyNTS_ScopedConfigSetOptions): Promise<
|
|
72
|
+
set(level: DyNTS_ScopedConfig_Level, key: string, value: unknown, options?: DyNTS_ScopedConfigSetOptions): Promise<DyNTS_ScopedConfig>;
|
|
73
73
|
/**
|
|
74
74
|
* A feloldási-kulcs minimál-konzisztenciája (NEM domain-validáció): table-/scope-szinten kötelező a
|
|
75
75
|
* `tableScope`, scope-szinten a `scopeId`. Ezek nélkül a feloldási-kulcs értelmetlen lenne.
|
|
@@ -79,6 +79,6 @@ export declare class DyNTS_ScopedConfig_ControlService {
|
|
|
79
79
|
* Egy feloldási-kulcs felülírás-historyja: a soft-delete-elt (archív) régi rekordok az archív
|
|
80
80
|
* collection-ből. Audit-trail / rollback-alap. (A FOGYASZTÓ presetjei/auditja erre épülhetnek.)
|
|
81
81
|
*/
|
|
82
|
-
getHistory(level: DyNTS_ScopedConfig_Level, key: string, options?: DyNTS_ScopedConfigSetOptions): Promise<
|
|
82
|
+
getHistory(level: DyNTS_ScopedConfig_Level, key: string, options?: DyNTS_ScopedConfigSetOptions): Promise<DyNTS_ScopedConfig[]>;
|
|
83
83
|
}
|
|
84
84
|
//# sourceMappingURL=dynts-scoped-config.control-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.control-service.d.ts","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.control-service.d.ts","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EACL,gCAAgC,EAEhC,+BAA+B,EAC/B,gCAAgC,EAChC,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qDAAqD,CAAC;AAa7D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,iCAAiC;IAE5C,OAAO,CAAC,MAAM,CAAC,SAAS,CAAoC;IAE5D,4CAA4C;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;IAEtE,4EAA4E;IAC5E,OAAO,CAAC,KAAK,CAA8F;IAE3G,4FAA4F;IAC5F,OAAO,CAAC,UAAU,CAAgB;IAElC,MAAM,CAAC,WAAW,IAAI,iCAAiC;IAYvD;;;;;;OAMG;IACG,OAAO,CAAC,CAAC,GAAG,uBAAuB,EACvC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,gCAAgC,CAAC,CAAC,CAAC,GAC5C,OAAO,CAAC,+BAA+B,CAAC,CAAC,CAAC,CAAC;IAU9C;;;;;OAKG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE,gCAAgC,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,+BAA+B,CAAA;KAAE,CAAC;IAYzH;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAuD1B,iFAAiF;IACjF,OAAO,CAAC,UAAU;IAalB;;;OAGG;YACW,oBAAoB;IA2BlC,gFAAgF;IAChF,OAAO,CAAC,QAAQ;IAOhB,gDAAgD;IAChD,eAAe,IAAI,IAAI;IAIvB,sGAAsG;IACtG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQlC;;;;;;;;OAQG;IACG,GAAG,CACP,KAAK,EAAE,wBAAwB,EAC/B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,kBAAkB,CAAC;IAkC9B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAc9B;;;OAGG;IACG,UAAU,CACd,KAAK,EAAE,wBAAwB,EAC/B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAOjC"}
|
|
@@ -176,7 +176,7 @@ class DyNTS_ScopedConfig_ControlService {
|
|
|
176
176
|
await findService.deleteData(existing._id);
|
|
177
177
|
}
|
|
178
178
|
// Új aktív rekord — a `value` Mixed.
|
|
179
|
-
const record = new dynts_scoped_config_data_model_1.
|
|
179
|
+
const record = new dynts_scoped_config_data_model_1.DyNTS_ScopedConfig({
|
|
180
180
|
level: level,
|
|
181
181
|
tableScope: options.tableScope,
|
|
182
182
|
scopeId: options.scopeId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.control-service.js","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts"],"names":[],"mappings":";;;AAGA,6FAAoF;AACpF,
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.control-service.js","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.control-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { DyFM_DBFilter, DyFM_DBFilterSimple } from '@futdevpro/fsm-dynamo';
|
|
|
2
2
|
import { DyNTS_ArchiveDataService } from '../../../_services/base/archive-data.service';
|
|
3
3
|
import { DyNTS_DataService } from '../../../_services/base/data.service';
|
|
4
4
|
import { DyNTS_ScopedConfig_Level } from '../_enums/dynts-scoped-config-level.enum';
|
|
5
|
-
import {
|
|
5
|
+
import { DyNTS_ScopedConfig } from '../_models/data-models/dynts-scoped-config.data-model';
|
|
6
6
|
/**
|
|
7
7
|
* `DyNTS_ScopedConfig_DataService` — a `dynts_scoped_config` collection CRUD + soft-delete history-rétege
|
|
8
8
|
* (BFR-AM-004). `extends DyNTS_DataService`; `addArchive: true` → a felülírt (régi) értékek
|
|
@@ -16,25 +16,25 @@ import { DyNTS_ScopedConfig_DataModel } from '../_models/data-models/dynts-scope
|
|
|
16
16
|
* mongoose_mixed_atomic_write): a `findOne→mutate→save` SILENT-DROP-ot ad a Mixed mezőkre, ezért az
|
|
17
17
|
* érték-frissítést a `setValue` `updateOne({ ... }, { $set: { value } })`-vel végzi.
|
|
18
18
|
*/
|
|
19
|
-
export declare class DyNTS_ScopedConfig_DataService extends DyNTS_DataService<
|
|
19
|
+
export declare class DyNTS_ScopedConfig_DataService extends DyNTS_DataService<DyNTS_ScopedConfig> {
|
|
20
20
|
constructor(set: {
|
|
21
|
-
data?:
|
|
21
|
+
data?: DyNTS_ScopedConfig;
|
|
22
22
|
issuer: string;
|
|
23
23
|
});
|
|
24
24
|
/**
|
|
25
25
|
* Az archív (soft-delete-elt) rekordokhoz tartozó data-service (a base override-ja). A
|
|
26
26
|
* `DyNTS_DataService.deleteData` ezen át archiválja a felülírt aktív rekordokat (history).
|
|
27
27
|
*/
|
|
28
|
-
getArchiveDataService(): DyNTS_ArchiveDataService<
|
|
28
|
+
getArchiveDataService(): DyNTS_ArchiveDataService<DyNTS_ScopedConfig>;
|
|
29
29
|
/**
|
|
30
30
|
* Egy adott feloldási-kulcson (`level`+`tableScope`+`scopeId`+`key`) az AKTÍV (nem soft-delete-elt)
|
|
31
31
|
* rekord. Az aktív rekordon a `_deleted` Date soft-delete marker nincs beállítva.
|
|
32
32
|
*/
|
|
33
|
-
findActive(filter: DyFM_DBFilter<
|
|
33
|
+
findActive(filter: DyFM_DBFilter<DyNTS_ScopedConfig>): Promise<DyNTS_ScopedConfig>;
|
|
34
34
|
/**
|
|
35
35
|
* Az adott kontextusra konfigurált ÖSSZES aktív rekord (a `resolveAll` egy Mongo-köre).
|
|
36
36
|
*/
|
|
37
|
-
findActiveList(filter: DyFM_DBFilter<
|
|
37
|
+
findActiveList(filter: DyFM_DBFilter<DyNTS_ScopedConfig>): Promise<DyNTS_ScopedConfig[]>;
|
|
38
38
|
/**
|
|
39
39
|
* Egy létező aktív rekord `value`-jának ATOMIKUS frissítése (`$set`). A Mixed mező `findOne→mutate→
|
|
40
40
|
* save` útján SILENT-DROP-ot adna; a `$set` ezt elkerüli (memory: mongoose_mixed_atomic_write). A
|
|
@@ -49,6 +49,6 @@ export declare class DyNTS_ScopedConfig_DataService extends DyNTS_DataService<Dy
|
|
|
49
49
|
static levelKeyFilter(level: DyNTS_ScopedConfig_Level, key: string, set: {
|
|
50
50
|
tableScope?: string;
|
|
51
51
|
scopeId?: string;
|
|
52
|
-
}): DyFM_DBFilterSimple<
|
|
52
|
+
}): DyFM_DBFilterSimple<DyNTS_ScopedConfig>;
|
|
53
53
|
}
|
|
54
54
|
//# sourceMappingURL=dynts-scoped-config.data-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.data-service.d.ts","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.data-service.d.ts","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,OAAO,EACL,kBAAkB,EAEnB,MAAM,uDAAuD,CAAC;AAE/D;;;;;;;;;;;;GAYG;AACH,qBAAa,8BAA+B,SAAQ,iBAAiB,CAAC,kBAAkB,CAAC;gBAGrF,GAAG,EAAE;QACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC;KAChB;IASH;;;OAGG;IACM,qBAAqB,IAAI,wBAAwB,CAAC,kBAAkB,CAAC;IAQ9E;;;OAGG;IACG,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIxF;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAI9F;;;;OAIG;IACG,QAAQ,CACZ,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,EACd,KAAK,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAClE,OAAO,CAAC,IAAI,CAAC;IAchB,mGAAmG;IACnG,MAAM,CAAC,cAAc,CACnB,KAAK,EAAE,wBAAwB,EAC/B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7C,mBAAmB,CAAC,kBAAkB,CAAC;CAa3C"}
|
|
@@ -20,14 +20,14 @@ const dynts_scoped_config_data_model_1 = require("../_models/data-models/dynts-s
|
|
|
20
20
|
*/
|
|
21
21
|
class DyNTS_ScopedConfig_DataService extends data_service_1.DyNTS_DataService {
|
|
22
22
|
constructor(set) {
|
|
23
|
-
super(set.data instanceof dynts_scoped_config_data_model_1.
|
|
23
|
+
super(set.data instanceof dynts_scoped_config_data_model_1.DyNTS_ScopedConfig ? set.data : new dynts_scoped_config_data_model_1.DyNTS_ScopedConfig(set.data), dynts_scoped_config_data_model_1.DyNTS_scopedConfig_dataParams, set.issuer);
|
|
24
24
|
}
|
|
25
25
|
/**
|
|
26
26
|
* Az archív (soft-delete-elt) rekordokhoz tartozó data-service (a base override-ja). A
|
|
27
27
|
* `DyNTS_DataService.deleteData` ezen át archiválja a felülírt aktív rekordokat (history).
|
|
28
28
|
*/
|
|
29
29
|
getArchiveDataService() {
|
|
30
|
-
return new archive_data_service_1.DyNTS_ArchiveDataService(this.data, dynts_scoped_config_data_model_1.
|
|
30
|
+
return new archive_data_service_1.DyNTS_ArchiveDataService(this.data, dynts_scoped_config_data_model_1.DyNTS_scopedConfig_dataParams, this.issuer);
|
|
31
31
|
}
|
|
32
32
|
/**
|
|
33
33
|
* Egy adott feloldási-kulcson (`level`+`tableScope`+`scopeId`+`key`) az AKTÍV (nem soft-delete-elt)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-scoped-config.data-service.js","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts"],"names":[],"mappings":";;;AAGA,uFAAwF;AACxF,uEAAyE;AACzE,6FAAoF;AACpF,0GAG+D;AAE/D;;;;;;;;;;;;GAYG;AACH,MAAa,8BAA+B,SAAQ,
|
|
1
|
+
{"version":3,"file":"dynts-scoped-config.data-service.js","sourceRoot":"","sources":["../../../../src/_modules/scoped-config/_services/dynts-scoped-config.data-service.ts"],"names":[],"mappings":";;;AAGA,uFAAwF;AACxF,uEAAyE;AACzE,6FAAoF;AACpF,0GAG+D;AAE/D;;;;;;;;;;;;GAYG;AACH,MAAa,8BAA+B,SAAQ,gCAAqC;IAEvF,YACE,GAGC;QAED,KAAK,CACH,GAAG,CAAC,IAAI,YAAY,mDAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,mDAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,EACpF,8DAA6B,EAC7B,GAAG,CAAC,MAAM,CACX,CAAC;IACJ,CAAC;IAED;;;OAGG;IACM,qBAAqB;QAC5B,OAAO,IAAI,+CAAwB,CACjC,IAAI,CAAC,IAAI,EACT,8DAA6B,EAC7B,IAAI,CAAC,MAAM,CACZ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,MAAyC;QACxD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,MAAyC;QAC5D,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CACZ,EAAU,EACV,KAAc,EACd,QAAiE,EAAE;QAEnE,MAAM,IAAI,CAAC,UAAU,CAAC;YACpB,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;YACrB,MAAM,EAAE;gBACN,IAAI,EAAE;oBACJ,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,WAAW,EAAE,KAAK,CAAC,WAAW;oBAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,mGAAmG;IACnG,MAAM,CAAC,cAAc,CACnB,KAA+B,EAC/B,GAAW,EACX,GAA8C;QAE9C,MAAM,MAAM,GAA4C,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QAEnF,IAAI,KAAK,KAAK,yDAAwB,CAAC,KAAK,IAAI,KAAK,KAAK,yDAAwB,CAAC,KAAK,EAAE,CAAC;YACzF,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QACrC,CAAC;QAED,IAAI,KAAK,KAAK,yDAAwB,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC/B,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAnFD,wEAmFC"}
|
package/package.json
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import * as ts from 'typescript';
|
|
2
|
+
|
|
2
3
|
import { DyFM_Log } from '@futdevpro/fsm-dynamo';
|
|
4
|
+
|
|
3
5
|
import { DyNTS_DAI_CodeChunk, DyNTS_DAI_CodeChunkType } from '../_models/interfaces/dai-code-chunk.interface';
|
|
4
6
|
|
|
5
7
|
/** A kód-chunker méret-paraméterei (a FAM/CCAP konstansokkal egyező default-ok). */
|
|
@@ -80,13 +82,14 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
80
82
|
* @returns A szemantikus kód-chunkok listája (0-alapú `chunkIndex`-szel).
|
|
81
83
|
*/
|
|
82
84
|
static chunkTs(code: string, opts?: DyNTS_DAI_CodeChunking_Options): DyNTS_DAI_CodeChunk[] {
|
|
83
|
-
if (!code
|
|
85
|
+
if (!code?.trim()) {
|
|
84
86
|
return [];
|
|
85
87
|
}
|
|
86
88
|
|
|
87
89
|
const sizing: DyNTS_DAI_CodeChunking_Sizing = this.resolveSizing(opts);
|
|
88
90
|
|
|
89
91
|
let blocks: DyNTS_DAI_CodeBlock[] = [];
|
|
92
|
+
|
|
90
93
|
try {
|
|
91
94
|
const sourceFile: ts.SourceFile = ts.createSourceFile(
|
|
92
95
|
'chunk-input.ts',
|
|
@@ -95,6 +98,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
95
98
|
/* setParentNodes */ true,
|
|
96
99
|
ts.ScriptKind.TSX
|
|
97
100
|
);
|
|
101
|
+
|
|
98
102
|
blocks = this.identifyBlocks(sourceFile, code, sizing);
|
|
99
103
|
} catch (error) {
|
|
100
104
|
// Parse-hiba (degenerált forrás) → a tiny-fallback veszi át lentebb.
|
|
@@ -114,6 +118,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
114
118
|
const lineStartOffsets: number[] = this.computeLineStartOffsets(code);
|
|
115
119
|
|
|
116
120
|
const chunks: DyNTS_DAI_CodeChunk[] = [];
|
|
121
|
+
|
|
117
122
|
for (const block of blocks) {
|
|
118
123
|
// Zaj-szűrés: CSAK a névtelen `generic` blokkokat dobjuk a minChunkSize alatt. A nevesített
|
|
119
124
|
// szemantikus deklarációk (type-alias / rövid function / class-fej / metódus / interface /
|
|
@@ -156,11 +161,13 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
156
161
|
if (this.isTsLike(filename)) {
|
|
157
162
|
return this.chunkTs(content, opts);
|
|
158
163
|
}
|
|
164
|
+
|
|
159
165
|
// Nem-kód (pl. .md / .txt / ismeretlen): nyers fallback chunkok — a tartalmat megőrizzük,
|
|
160
166
|
// de NEM próbáljuk szemantikusan darabolni (a markdown-darabolás külön util-é).
|
|
161
|
-
if (!content
|
|
167
|
+
if (!content?.trim()) {
|
|
162
168
|
return [];
|
|
163
169
|
}
|
|
170
|
+
|
|
164
171
|
return this.buildFallbackChunks(content, this.resolveSizing(opts));
|
|
165
172
|
}
|
|
166
173
|
|
|
@@ -174,6 +181,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
174
181
|
const maxChunkSize: number = Math.max(1, opts?.maxChunkSize ?? this.DEFAULT_MAX_CHUNK_SIZE);
|
|
175
182
|
const overlap: number = Math.max(0, Math.min(opts?.overlap ?? this.DEFAULT_OVERLAP, maxChunkSize - 1));
|
|
176
183
|
const minChunkSize: number = Math.max(0, opts?.minChunkSize ?? this.DEFAULT_MIN_CHUNK_SIZE);
|
|
184
|
+
|
|
177
185
|
return { maxChunkSize: maxChunkSize, overlap: overlap, minChunkSize: minChunkSize };
|
|
178
186
|
}
|
|
179
187
|
|
|
@@ -198,6 +206,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
198
206
|
return;
|
|
199
207
|
}
|
|
200
208
|
const text: string = code.substring(importStart, importEnd);
|
|
209
|
+
|
|
201
210
|
if (text.trim().length) {
|
|
202
211
|
blocks.push({
|
|
203
212
|
text: text,
|
|
@@ -215,6 +224,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
215
224
|
for (const statement of sourceFile.statements) {
|
|
216
225
|
if (this.isImportLike(statement)) {
|
|
217
226
|
const start: number = statement.getStart(sourceFile, /* includeJsDocComment */ true);
|
|
227
|
+
|
|
218
228
|
if (importStart < 0) {
|
|
219
229
|
importStart = start;
|
|
220
230
|
}
|
|
@@ -229,7 +239,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
229
239
|
const start: number = statement.getStart(sourceFile, /* includeJsDocComment */ true);
|
|
230
240
|
const end: number = statement.getEnd();
|
|
231
241
|
const text: string = code.substring(start, end);
|
|
232
|
-
const symbolSegments: string[] = detected.name ? [`${detected.chunkType}:${detected.name}`] : [];
|
|
242
|
+
const symbolSegments: string[] = detected.name ? [ `${detected.chunkType}:${detected.name}` ] : [];
|
|
233
243
|
|
|
234
244
|
// Nagy osztály → metódusonkénti bontás (osztály-fej + metódusok).
|
|
235
245
|
if (ts.isClassDeclaration(statement) && text.length > sizing.maxChunkSize) {
|
|
@@ -258,10 +268,12 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
258
268
|
if (ts.isImportDeclaration(statement) || ts.isImportEqualsDeclaration(statement)) {
|
|
259
269
|
return true;
|
|
260
270
|
}
|
|
271
|
+
|
|
261
272
|
// `export { ... } from '...'` / `export * from '...'` — csak ha van moduleSpecifier.
|
|
262
273
|
if (ts.isExportDeclaration(statement) && !!statement.moduleSpecifier) {
|
|
263
274
|
return true;
|
|
264
275
|
}
|
|
276
|
+
|
|
265
277
|
return false;
|
|
266
278
|
}
|
|
267
279
|
|
|
@@ -270,18 +282,23 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
270
282
|
if (ts.isClassDeclaration(statement)) {
|
|
271
283
|
return { chunkType: 'class', name: statement.name?.getText() };
|
|
272
284
|
}
|
|
285
|
+
|
|
273
286
|
if (ts.isInterfaceDeclaration(statement)) {
|
|
274
287
|
return { chunkType: 'interface', name: statement.name.getText() };
|
|
275
288
|
}
|
|
289
|
+
|
|
276
290
|
if (ts.isEnumDeclaration(statement)) {
|
|
277
291
|
return { chunkType: 'enum', name: statement.name.getText() };
|
|
278
292
|
}
|
|
293
|
+
|
|
279
294
|
if (ts.isTypeAliasDeclaration(statement)) {
|
|
280
295
|
return { chunkType: 'type', name: statement.name.getText() };
|
|
281
296
|
}
|
|
297
|
+
|
|
282
298
|
if (ts.isFunctionDeclaration(statement)) {
|
|
283
299
|
return { chunkType: 'function', name: statement.name?.getText() };
|
|
284
300
|
}
|
|
301
|
+
|
|
285
302
|
if (ts.isVariableStatement(statement)) {
|
|
286
303
|
const firstDecl: ts.VariableDeclaration | undefined = statement.declarationList.declarations[0];
|
|
287
304
|
const name: string | undefined = firstDecl && ts.isIdentifier(firstDecl.name)
|
|
@@ -291,8 +308,10 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
291
308
|
const initializer: ts.Expression | undefined = firstDecl?.initializer;
|
|
292
309
|
const isFn: boolean = !!initializer
|
|
293
310
|
&& (ts.isArrowFunction(initializer) || ts.isFunctionExpression(initializer));
|
|
311
|
+
|
|
294
312
|
return { chunkType: isFn ? 'function' : 'variable', name: name };
|
|
295
313
|
}
|
|
314
|
+
|
|
296
315
|
return { chunkType: 'generic', name: undefined };
|
|
297
316
|
}
|
|
298
317
|
|
|
@@ -311,18 +330,19 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
311
330
|
const classSegment: string = `class:${className ?? 'anonymous'}`;
|
|
312
331
|
const classStart: number = classDecl.getStart(sourceFile, /* includeJsDocComment */ true);
|
|
313
332
|
|
|
314
|
-
const members: ts.ClassElement[] = [...classDecl.members];
|
|
333
|
+
const members: ts.ClassElement[] = [ ...classDecl.members ];
|
|
315
334
|
|
|
316
335
|
// Osztály-fej: a class kezdetétől az első tag kezdetéig (dekorátorok/JSDoc + `class X {`-rész).
|
|
317
336
|
const headerEnd: number = members.length
|
|
318
337
|
? members[0].getStart(sourceFile, /* includeJsDocComment */ true)
|
|
319
338
|
: classDecl.getEnd();
|
|
320
339
|
const headerText: string = code.substring(classStart, headerEnd);
|
|
340
|
+
|
|
321
341
|
if (headerText.trim().length) {
|
|
322
342
|
blocks.push({
|
|
323
343
|
text: headerText,
|
|
324
344
|
chunkType: 'class',
|
|
325
|
-
symbolSegments: [classSegment],
|
|
345
|
+
symbolSegments: [ classSegment ],
|
|
326
346
|
symbolName: className,
|
|
327
347
|
charStart: classStart,
|
|
328
348
|
charEnd: headerEnd,
|
|
@@ -334,6 +354,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
334
354
|
const memberStart: number = member.getStart(sourceFile, /* includeJsDocComment */ true);
|
|
335
355
|
const memberEnd: number = member.getEnd();
|
|
336
356
|
const memberText: string = code.substring(memberStart, memberEnd);
|
|
357
|
+
|
|
337
358
|
if (!memberText.trim().length) {
|
|
338
359
|
continue;
|
|
339
360
|
}
|
|
@@ -349,7 +370,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
349
370
|
blocks.push({
|
|
350
371
|
text: memberText,
|
|
351
372
|
chunkType: memberKind,
|
|
352
|
-
symbolSegments: [classSegment, memberSegment],
|
|
373
|
+
symbolSegments: [ classSegment, memberSegment ],
|
|
353
374
|
symbolName: memberName,
|
|
354
375
|
charStart: memberStart,
|
|
355
376
|
charEnd: memberEnd,
|
|
@@ -367,6 +388,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
367
388
|
) {
|
|
368
389
|
return 'method';
|
|
369
390
|
}
|
|
391
|
+
|
|
370
392
|
return 'variable';
|
|
371
393
|
}
|
|
372
394
|
|
|
@@ -378,6 +400,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
378
400
|
): DyNTS_DAI_CodeChunk {
|
|
379
401
|
const lineStart: number = this.lineOfOffset(block.charStart, lineStartOffsets);
|
|
380
402
|
const lineEnd: number = this.lineOfOffset(Math.max(block.charStart, block.charEnd - 1), lineStartOffsets);
|
|
403
|
+
|
|
381
404
|
return {
|
|
382
405
|
content: block.text,
|
|
383
406
|
chunkType: block.chunkType,
|
|
@@ -448,6 +471,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
448
471
|
*/
|
|
449
472
|
private static buildFallbackChunks(content: string, sizing: DyNTS_DAI_CodeChunking_Sizing): DyNTS_DAI_CodeChunk[] {
|
|
450
473
|
const trimmed: string = content.trim();
|
|
474
|
+
|
|
451
475
|
if (!trimmed) {
|
|
452
476
|
return [];
|
|
453
477
|
}
|
|
@@ -457,6 +481,7 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
457
481
|
// Kis tartalom → egyetlen fallback chunk.
|
|
458
482
|
if (content.length <= sizing.maxChunkSize) {
|
|
459
483
|
const lineEnd: number = this.lineOfOffset(Math.max(0, content.length - 1), lineStartOffsets);
|
|
484
|
+
|
|
460
485
|
return [{
|
|
461
486
|
content: content,
|
|
462
487
|
chunkType: 'fallback',
|
|
@@ -481,7 +506,9 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
481
506
|
charEnd: content.length,
|
|
482
507
|
};
|
|
483
508
|
const out: DyNTS_DAI_CodeChunk[] = [];
|
|
509
|
+
|
|
484
510
|
this.splitLargeBlock(fallbackBlock, sizing, out, lineStartOffsets);
|
|
511
|
+
|
|
485
512
|
return out;
|
|
486
513
|
}
|
|
487
514
|
|
|
@@ -491,12 +518,14 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
491
518
|
* konverziót ad a chunkokhoz.
|
|
492
519
|
*/
|
|
493
520
|
private static computeLineStartOffsets(source: string): number[] {
|
|
494
|
-
const offsets: number[] = [0];
|
|
521
|
+
const offsets: number[] = [ 0 ];
|
|
522
|
+
|
|
495
523
|
for (let i: number = 0; i < source.length; i++) {
|
|
496
524
|
if (source[i] === '\n') {
|
|
497
525
|
offsets.push(i + 1);
|
|
498
526
|
}
|
|
499
527
|
}
|
|
528
|
+
|
|
500
529
|
return offsets;
|
|
501
530
|
}
|
|
502
531
|
|
|
@@ -507,14 +536,17 @@ export class DyNTS_DAI_CodeChunking_Util {
|
|
|
507
536
|
private static lineOfOffset(offset: number, lineStartOffsets: number[]): number {
|
|
508
537
|
let lo: number = 0;
|
|
509
538
|
let hi: number = lineStartOffsets.length - 1;
|
|
539
|
+
|
|
510
540
|
while (lo < hi) {
|
|
511
541
|
const mid: number = (lo + hi + 1) >> 1;
|
|
542
|
+
|
|
512
543
|
if (lineStartOffsets[mid] <= offset) {
|
|
513
544
|
lo = mid;
|
|
514
545
|
} else {
|
|
515
546
|
hi = mid - 1;
|
|
516
547
|
}
|
|
517
548
|
}
|
|
549
|
+
|
|
518
550
|
return lo + 1;
|
|
519
551
|
}
|
|
520
552
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as crypto from 'crypto';
|
|
2
|
-
|
|
3
2
|
import { CreateEmbeddingResponse } from 'openai/resources';
|
|
3
|
+
|
|
4
4
|
import { DyFM_AI_Provider, DyFM_AI_ProviderCapabilities, DyFM_AI_Config } from '@futdevpro/fsm-dynamo/ai';
|
|
5
5
|
import { DyFM_DAI_EmbeddingInfo } from '@futdevpro/fsm-dynamo/ai/document-ai';
|
|
6
6
|
|
|
7
|
-
import { DyNTS_AI_Embedding_ServiceBase } from './ai-embedding.service-base';
|
|
8
7
|
import { DyNTS_AI_CostEventCallback } from '../_models/interfaces/dynts-ai-cost-event-callback.interface';
|
|
8
|
+
import { DyNTS_AI_Embedding_ServiceBase } from './ai-embedding.service-base';
|
|
9
9
|
|
|
10
10
|
/** A mock-embedding default dimenziója (kicsi, hogy a teszt-pool gyors legyen, de elég a koszinuszhoz). */
|
|
11
11
|
export const DyNTS_AI_MOCK_EMBEDDING_DIMS: number = 64;
|
|
@@ -61,6 +61,7 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
61
61
|
constructor(set?: DyNTS_AI_Embedding_MockSettings) {
|
|
62
62
|
super();
|
|
63
63
|
this.dims = set?.dims && set.dims > 0 ? set.dims : DyNTS_AI_MOCK_EMBEDDING_DIMS;
|
|
64
|
+
|
|
64
65
|
if (set?.onCostEvent) {
|
|
65
66
|
this.onCostEvent = set.onCostEvent;
|
|
66
67
|
}
|
|
@@ -69,6 +70,7 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
69
70
|
/** A mock-nak nincs külső config-ja; a `setup` a dimenzió override-jára szolgál (config.dimensions). */
|
|
70
71
|
setup(config: DyFM_AI_Config): void {
|
|
71
72
|
const dims: unknown = Reflect.get(config ?? {}, 'dimensions');
|
|
73
|
+
|
|
72
74
|
if (typeof dims === 'number' && dims > 0) {
|
|
73
75
|
this.dims = dims;
|
|
74
76
|
}
|
|
@@ -90,11 +92,12 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
90
92
|
const vector: number[] = this.deterministicVector(`${set.model}::${set.text ?? ''}`);
|
|
91
93
|
const durationMs: number = Date.now() - start;
|
|
92
94
|
|
|
93
|
-
this.emitMockCostEvent('embedding-single', set.model, [set.text ?? ''], durationMs, set.issuer);
|
|
95
|
+
this.emitMockCostEvent('embedding-single', set.model, [ set.text ?? '' ], durationMs, set.issuer);
|
|
94
96
|
|
|
95
97
|
if (set.fullResponse) {
|
|
96
|
-
return this.toResponse([vector], set.model, [set.text ?? '']);
|
|
98
|
+
return this.toResponse([ vector ], set.model, [ set.text ?? '' ]);
|
|
97
99
|
}
|
|
100
|
+
|
|
98
101
|
return vector;
|
|
99
102
|
}
|
|
100
103
|
|
|
@@ -120,6 +123,7 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
120
123
|
if (set.fullResponse) {
|
|
121
124
|
return this.toResponse(vectors, set.model, texts);
|
|
122
125
|
}
|
|
126
|
+
|
|
123
127
|
return vectors;
|
|
124
128
|
}
|
|
125
129
|
|
|
@@ -148,31 +152,38 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
148
152
|
protected deterministicVector(seed: string): number[] {
|
|
149
153
|
const hash: Buffer = crypto.createHash('sha256').update(seed).digest();
|
|
150
154
|
const vector: number[] = [];
|
|
155
|
+
|
|
151
156
|
for (let i = 0; i < this.dims; i++) {
|
|
152
157
|
const byte: number = hash[i % hash.length];
|
|
153
158
|
const mix: number = hash[(i * 7 + 3) % hash.length];
|
|
154
159
|
const combined: number = (byte ^ mix) & 0xff;
|
|
160
|
+
|
|
155
161
|
vector.push((combined / 255) * 2 - 1);
|
|
156
162
|
}
|
|
163
|
+
|
|
157
164
|
return this.l2Normalize(vector);
|
|
158
165
|
}
|
|
159
166
|
|
|
160
167
|
/** L2-normalizálás (egységhossz). Nulla-vektor → változatlan (elkerüli a 0-osztást). */
|
|
161
168
|
protected l2Normalize(vector: number[]): number[] {
|
|
162
169
|
let sumSq: number = 0;
|
|
170
|
+
|
|
163
171
|
for (const value of vector) {
|
|
164
172
|
sumSq += value * value;
|
|
165
173
|
}
|
|
166
174
|
const norm: number = Math.sqrt(sumSq);
|
|
175
|
+
|
|
167
176
|
if (!norm) {
|
|
168
177
|
return vector;
|
|
169
178
|
}
|
|
179
|
+
|
|
170
180
|
return vector.map((value) => value / norm);
|
|
171
181
|
}
|
|
172
182
|
|
|
173
183
|
/** OpenAI-alakú válasz-objektum a vektorokból (a `fullResponse=true` ághoz). */
|
|
174
184
|
protected toResponse(vectors: number[][], model: string, texts: string[]): CreateEmbeddingResponse {
|
|
175
185
|
const tokens: number = this.estimateTokens(texts);
|
|
186
|
+
|
|
176
187
|
return {
|
|
177
188
|
object: 'list',
|
|
178
189
|
model: model,
|
|
@@ -193,6 +204,7 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
193
204
|
issuer: string,
|
|
194
205
|
): void {
|
|
195
206
|
const tokens: number = this.estimateTokens(texts);
|
|
207
|
+
|
|
196
208
|
this.emitCostEvent({
|
|
197
209
|
callType: callType,
|
|
198
210
|
provider: this.costProvider,
|
|
@@ -211,9 +223,11 @@ export class DyNTS_AI_Embedding_MockService extends DyNTS_AI_Embedding_ServiceBa
|
|
|
211
223
|
/** Becsült (fake) token-szám: 4 char ≈ 1 token. */
|
|
212
224
|
protected estimateTokens(texts: string[]): number {
|
|
213
225
|
let chars: number = 0;
|
|
226
|
+
|
|
214
227
|
for (const text of texts) {
|
|
215
228
|
chars += (text ?? '').length;
|
|
216
229
|
}
|
|
230
|
+
|
|
217
231
|
return Math.max(1, Math.ceil(chars / 4));
|
|
218
232
|
}
|
|
219
233
|
}
|
|
@@ -60,12 +60,14 @@ export class DyNTS_AI_EmbeddingProvider_Registry {
|
|
|
60
60
|
});
|
|
61
61
|
case 'lmstudio': {
|
|
62
62
|
const baseUrl: string | undefined = options?.lmStudioSettings?.baseUrl ?? process.env.LMSTUDIO_BASE_URL;
|
|
63
|
+
|
|
63
64
|
if (!baseUrl) {
|
|
64
65
|
throw new Error(
|
|
65
66
|
'DyNTS_AI_EmbeddingProvider_Registry: the lmstudio provider was selected but no baseUrl '
|
|
66
67
|
+ 'was provided (set lmStudioSettings.baseUrl or the LMSTUDIO_BASE_URL env var).',
|
|
67
68
|
);
|
|
68
69
|
}
|
|
70
|
+
|
|
69
71
|
return new DyNTS_LMStudio_Embedding_ControlService({
|
|
70
72
|
baseUrl: baseUrl,
|
|
71
73
|
apiKey: options?.lmStudioSettings?.apiKey ?? process.env.LMSTUDIO_API_KEY,
|
|
@@ -86,6 +88,7 @@ export class DyNTS_AI_EmbeddingProvider_Registry {
|
|
|
86
88
|
*/
|
|
87
89
|
static normalizeKey(provider?: string): DyNTS_AI_EmbeddingProviderKey {
|
|
88
90
|
const raw: string = (provider ?? process.env.AI_EMBEDDING_PROVIDER ?? 'openai').trim().toLowerCase();
|
|
91
|
+
|
|
89
92
|
switch (raw) {
|
|
90
93
|
case 'openai':
|
|
91
94
|
case 'open-ai':
|
|
@@ -100,6 +103,7 @@ export class DyNTS_AI_EmbeddingProvider_Registry {
|
|
|
100
103
|
case 'fake':
|
|
101
104
|
case 'test':
|
|
102
105
|
return 'mock';
|
|
106
|
+
|
|
103
107
|
default:
|
|
104
108
|
throw new Error(
|
|
105
109
|
`DyNTS_AI_EmbeddingProvider_Registry: unknown embedding provider '${raw}'. `
|