sml-baseline 1.3.6 → 1.3.8

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 (34) hide show
  1. package/LICENSE +674 -674
  2. package/README.md +53 -53
  3. package/dist/common/core/SmlBaseService.d.ts +5 -5
  4. package/dist/common/utility/dto/filter-options-dto.js +1 -1
  5. package/dist/common/utility/dto/filter-options-dto.js.map +1 -1
  6. package/dist/factoryViewModules/smlimagemapview.module.d.ts +1 -0
  7. package/dist/factoryViewModules/smlimagemapview.module.js +98 -0
  8. package/dist/factoryViewModules/smlimagemapview.module.js.map +1 -0
  9. package/dist/factoryViewModules/smltimelineview.module.d.ts +1 -0
  10. package/dist/factoryViewModules/smltimelineview.module.js +84 -0
  11. package/dist/factoryViewModules/smltimelineview.module.js.map +1 -0
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.js +6 -2
  14. package/dist/index.js.map +1 -1
  15. package/dist/smlcustomcode/smlcustomcode.controller.js +30 -30
  16. package/dist/smlcustomfunction/smlcustomfunction.service.js +2 -2
  17. package/dist/smlform/dto/item.dto.d.ts +1 -0
  18. package/dist/smlform/dto/item.dto.js +10 -0
  19. package/dist/smlform/dto/item.dto.js.map +1 -1
  20. package/dist/tsconfig.build.tsbuildinfo +1 -1
  21. package/dist/tsconfig.tsbuildinfo +1 -1
  22. package/package.json +125 -125
  23. package/dist/viewschema/schemas/dashboard.schema.d.ts +0 -322
  24. package/dist/viewschema/schemas/dashboard.schema.js +0 -98
  25. package/dist/viewschema/schemas/dashboard.schema.js.map +0 -1
  26. package/dist/viewschema/viewschema.controller.d.ts +0 -6
  27. package/dist/viewschema/viewschema.controller.js +0 -45
  28. package/dist/viewschema/viewschema.controller.js.map +0 -1
  29. package/dist/viewschema/viewschema.module.d.ts +0 -2
  30. package/dist/viewschema/viewschema.module.js +0 -23
  31. package/dist/viewschema/viewschema.module.js.map +0 -1
  32. package/dist/viewschema/viewschema.service.d.ts +0 -13
  33. package/dist/viewschema/viewschema.service.js +0 -77
  34. package/dist/viewschema/viewschema.service.js.map +0 -1
package/README.md CHANGED
@@ -1,53 +1,53 @@
1
- # sml-baseline
2
- Baseline features for the SML framework, pensati per essere esposti come un package npm che riutilizzi i moduli Nest già presenti nel repository.
3
-
4
- ## Descrizione della proposta npm
5
- Questo package espone i tool condivisi (controller di base, servizi CRUD e DTO di supporto) e i moduli applicativi (`smlentity`, `smlgrid`, `smlform`, ecc.) in modo che possano essere importati da altri progetti Nest. La build sfrutta lo schema Nest CLI già presente (`nest build`), mentre gli script `start:dev`, `lint`, `test` e `doc` sono configurati per esporre la stessa esperienza di sviluppo usata nel repository di partenza. È pensato per fornire:
6
-
7
- - **Moduli riutilizzabili** (es. `smlentity`, `smlgrid`, `smlquery`, `smlform`, ecc.) che espongono controller, service, DTO, entità Mongoose e schemi `MongooseModule.forFeature`.
8
- - **Utility comuni** (`common/config`, `common/constants`, `common/dto`, `common/interceptors`, `common/logger`, `common/utility`) che standardizzano configurazioni di query, risposte API, log e filtri globali.
9
- - **Controller/servizi di base** (`common/core`) che wrappano le operazioni CRUD con guardie, Swagger e gestione degli errori, pronti per essere estesi o istanziati dinamicamente tramite `createCrudController`.
10
-
11
- L’idea è che il package distribuisca questi moduli (esportandoli da un barrel `src/index.ts` o simile) in modo che un altro progetto Nest possa fare `import { SmlentityModule } from 'sml-baseline'` e avere subito tutta la logica di base.
12
-
13
- ## Gerarchia delle classi e dei file principali
14
- La struttura del repository può essere vista come una serie di moduli Nest affiancati da utility condivise:
15
-
16
- - `common/`
17
- - `core/`
18
- - `SmlBaseController.ts` / `SmlBaseService.ts`: controller e servizio astratti che gestiscono le rotte CRUD (`create`, `findAll`, `findOne`, `update`, `remove`) con serializzazione JSON e gestione degli errori standard Nest.
19
- - `CrudControllerFactory.ts` + `CrudOptions.ts`: helper che generano dinamicamente controller CRUD con guardie di autorizzazione (`AuthorizationGuard`, `RoleGuard`), decorator Swagger e versioning (es. `@Version('1')`).
20
- - `config/`: file JSON che definiscono filtri, limiti, paginazione, proiezioni e risposte standard per l’API REST.
21
- - `constants/`, `dto/`, `enum/`, `interceptors/`, `logger/`, `utility/`: costanti, DTO condivisi, enumerazioni, interceptor (es. per log o trasformazioni), logger basato su Winston e funzioni di utilità per la trasformazione dei payload.
22
-
23
- - Moduli funzionali (ognuno con `module`, `controller`, `service`, `dto`, `entities`):
24
- - `smlentity/`: gestisce le entità principali, include `SmlentityModule`, `SmlentityController`, `SmlentityService` (che crea query, form e grid di default), DTO per create/update e la definizione dell’entità Mongoose.
25
- - `smlgrid/`, `smlform/`, `smlquery/`, `smlappmenu/`, `smlattachments/`, `smlchart/`, `smlcomposedview/`, `smlconfig/`, `smlcustomcode/`, `smlcustomfunction/`, `smlentity-definition/`, `smlentity-manager/`, `smlflowpanels/`, `smlflowpanelanalistance/`, `smlnavigationpanels/`, `smlrecordlink/`, `smlrecordlock/`, `smlview/`, `smlproxy-query/`: ciascun modulo contiene i rispettivi controller, service e DTO, espone il proprio schema Mongoose e implementa la logica business-layer specifica (es. gestione di viste, pannelli, query proxy, link/lock dei record, pannelli di navigazione, ecc.).
26
-
27
- - Ogni modulo espone test (`*.controller.spec.ts`, `*.service.spec.ts`) pronti per essere riutilizzati in una pipeline CI/CD, e può essere registrato nel modulo principale dell’app Nest (es. `AppModule`) tramite importazione diretta.
28
-
29
- Con questa base, il package npm deve fornire un entrypoint documentato che spiega come installare (`npm install sml-baseline`), configurare (es. `@nestjs/config` + file JSON), e importare i moduli più usati per comporre un’applicazione SML completa su Nest.
30
-
31
- ## smlquery — Wildcard search
32
-
33
- L’endpoint `GET /smlquery/run-query/:code` supporta la ricerca con wildcard tramite il carattere `*` nei valori dei filtri.
34
-
35
- Il carattere `*` può essere usato in qualsiasi posizione della stringa e in qualsiasi numero:
36
-
37
- ```
38
- GET /smlquery/run-query/MY_QUERY?filters={"nome":"Mario*"}
39
- GET /smlquery/run-query/MY_QUERY?filters={"nome":"*rossi*"}
40
- GET /smlquery/run-query/MY_QUERY?filters={"nome":"Ma*rio*"}
41
- ```
42
-
43
- I valori con `*` vengono convertiti automaticamente in espressioni regolari case-insensitive prima dell’esecuzione della query MongoDB. La funzionalità è attiva sia su query `find` che su aggregation pipeline (stage `$match`).
44
-
45
- ### Selezione della versione del motore di query
46
-
47
- Il comportamento wildcard è implementato nella **V6** del motore di query ed è attivo per default. Per tornare alla **V5** (senza wildcard), impostare la variabile d’ambiente nel BE:
48
-
49
- ```
50
- SML_QUERY_ENGINE=5
51
- ```
52
-
53
- Se la variabile non è impostata o ha un valore diverso da `5`, viene usata la V6.
1
+ # sml-baseline
2
+ Baseline features for the SML framework, pensati per essere esposti come un package npm che riutilizzi i moduli Nest già presenti nel repository.
3
+
4
+ ## Descrizione della proposta npm
5
+ Questo package espone i tool condivisi (controller di base, servizi CRUD e DTO di supporto) e i moduli applicativi (`smlentity`, `smlgrid`, `smlform`, ecc.) in modo che possano essere importati da altri progetti Nest. La build sfrutta lo schema Nest CLI già presente (`nest build`), mentre gli script `start:dev`, `lint`, `test` e `doc` sono configurati per esporre la stessa esperienza di sviluppo usata nel repository di partenza. È pensato per fornire:
6
+
7
+ - **Moduli riutilizzabili** (es. `smlentity`, `smlgrid`, `smlquery`, `smlform`, ecc.) che espongono controller, service, DTO, entità Mongoose e schemi `MongooseModule.forFeature`.
8
+ - **Utility comuni** (`common/config`, `common/constants`, `common/dto`, `common/interceptors`, `common/logger`, `common/utility`) che standardizzano configurazioni di query, risposte API, log e filtri globali.
9
+ - **Controller/servizi di base** (`common/core`) che wrappano le operazioni CRUD con guardie, Swagger e gestione degli errori, pronti per essere estesi o istanziati dinamicamente tramite `createCrudController`.
10
+
11
+ L’idea è che il package distribuisca questi moduli (esportandoli da un barrel `src/index.ts` o simile) in modo che un altro progetto Nest possa fare `import { SmlentityModule } from 'sml-baseline'` e avere subito tutta la logica di base.
12
+
13
+ ## Gerarchia delle classi e dei file principali
14
+ La struttura del repository può essere vista come una serie di moduli Nest affiancati da utility condivise:
15
+
16
+ - `common/`
17
+ - `core/`
18
+ - `SmlBaseController.ts` / `SmlBaseService.ts`: controller e servizio astratti che gestiscono le rotte CRUD (`create`, `findAll`, `findOne`, `update`, `remove`) con serializzazione JSON e gestione degli errori standard Nest.
19
+ - `CrudControllerFactory.ts` + `CrudOptions.ts`: helper che generano dinamicamente controller CRUD con guardie di autorizzazione (`AuthorizationGuard`, `RoleGuard`), decorator Swagger e versioning (es. `@Version('1')`).
20
+ - `config/`: file JSON che definiscono filtri, limiti, paginazione, proiezioni e risposte standard per l’API REST.
21
+ - `constants/`, `dto/`, `enum/`, `interceptors/`, `logger/`, `utility/`: costanti, DTO condivisi, enumerazioni, interceptor (es. per log o trasformazioni), logger basato su Winston e funzioni di utilità per la trasformazione dei payload.
22
+
23
+ - Moduli funzionali (ognuno con `module`, `controller`, `service`, `dto`, `entities`):
24
+ - `smlentity/`: gestisce le entità principali, include `SmlentityModule`, `SmlentityController`, `SmlentityService` (che crea query, form e grid di default), DTO per create/update e la definizione dell’entità Mongoose.
25
+ - `smlgrid/`, `smlform/`, `smlquery/`, `smlappmenu/`, `smlattachments/`, `smlchart/`, `smlcomposedview/`, `smlconfig/`, `smlcustomcode/`, `smlcustomfunction/`, `smlentity-definition/`, `smlentity-manager/`, `smlflowpanels/`, `smlflowpanelanalistance/`, `smlnavigationpanels/`, `smlrecordlink/`, `smlrecordlock/`, `smlview/`, `smlproxy-query/`: ciascun modulo contiene i rispettivi controller, service e DTO, espone il proprio schema Mongoose e implementa la logica business-layer specifica (es. gestione di viste, pannelli, query proxy, link/lock dei record, pannelli di navigazione, ecc.).
26
+
27
+ - Ogni modulo espone test (`*.controller.spec.ts`, `*.service.spec.ts`) pronti per essere riutilizzati in una pipeline CI/CD, e può essere registrato nel modulo principale dell’app Nest (es. `AppModule`) tramite importazione diretta.
28
+
29
+ Con questa base, il package npm deve fornire un entrypoint documentato che spiega come installare (`npm install sml-baseline`), configurare (es. `@nestjs/config` + file JSON), e importare i moduli più usati per comporre un’applicazione SML completa su Nest.
30
+
31
+ ## smlquery — Wildcard search
32
+
33
+ L’endpoint `GET /smlquery/run-query/:code` supporta la ricerca con wildcard tramite il carattere `*` nei valori dei filtri.
34
+
35
+ Il carattere `*` può essere usato in qualsiasi posizione della stringa e in qualsiasi numero:
36
+
37
+ ```
38
+ GET /smlquery/run-query/MY_QUERY?filters={"nome":"Mario*"}
39
+ GET /smlquery/run-query/MY_QUERY?filters={"nome":"*rossi*"}
40
+ GET /smlquery/run-query/MY_QUERY?filters={"nome":"Ma*rio*"}
41
+ ```
42
+
43
+ I valori con `*` vengono convertiti automaticamente in espressioni regolari case-insensitive prima dell’esecuzione della query MongoDB. La funzionalità è attiva sia su query `find` che su aggregation pipeline (stage `$match`).
44
+
45
+ ### Selezione della versione del motore di query
46
+
47
+ Il comportamento wildcard è implementato nella **V6** del motore di query ed è attivo per default. Per tornare alla **V5** (senza wildcard), impostare la variabile d’ambiente nel BE:
48
+
49
+ ```
50
+ SML_QUERY_ENGINE=5
51
+ ```
52
+
53
+ Se la variabile non è impostata o ha un valore diverso da `5`, viene usata la V6.
@@ -2,14 +2,14 @@ import { Model } from 'mongoose';
2
2
  export declare class SmlBaseService<T> {
3
3
  protected readonly model: Model<T>;
4
4
  constructor(model: Model<T>);
5
- create(createDto: any): Promise<(import("mongoose").Document<unknown, {}, T> & Required<{
6
- _id: unknown;
7
- }> & {
8
- __v?: number;
9
- }) | (import("mongoose").Document<unknown, {}, T> & {
5
+ create(createDto: any): Promise<(import("mongoose").Document<unknown, {}, T> & {
10
6
  _id: import("mongoose").Types.ObjectId;
11
7
  } & {
12
8
  __v?: number;
9
+ }) | (import("mongoose").Document<unknown, {}, T> & Required<{
10
+ _id: unknown;
11
+ }> & {
12
+ __v?: number;
13
13
  })>;
14
14
  findAll(filters: any, limit: number, offset: number): Promise<import("mongoose").IfAny<T, any, import("mongoose").Document<unknown, {}, T> & import("mongoose").Default__v<import("mongoose").Require_id<T>>>[]>;
15
15
  findOne(id: string): Promise<import("mongoose").IfAny<T, any, import("mongoose").Document<unknown, {}, T> & import("mongoose").Default__v<import("mongoose").Require_id<T>>>>;
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.FilterOptionsDto = void 0;
13
13
  const swagger_1 = require("@nestjs/swagger");
14
14
  const class_validator_1 = require("class-validator");
15
- const sql_query_operators_enum_1 = require("../../enum/sql-query-operators.enum");
15
+ const sql_query_operators_enum_1 = require("../../../common/enum/sql-query-operators.enum");
16
16
  class FilterOptionsDto {
17
17
  constructor() {
18
18
  this.operator = sql_query_operators_enum_1.SqlQueryOperators.EQUALS;
@@ -1 +1 @@
1
- {"version":3,"file":"filter-options-dto.js","sourceRoot":"","sources":["../../../../src/common/utility/dto/filter-options-dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAA6C;AAC7C,kFAA6E;AAK7E,MAAa,gBAAgB;IAA7B;QAWI,aAAQ,GAAsB,4CAAiB,CAAC,MAAM,CAAA;IAU1D,CAAC;CAAA;AArBD,4CAqBC;AAVG;IANC,IAAA,4BAAU,GAAE;IACZ,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,4CAAiB;KAC1B,CAAC;;kDACoD;AAStD;IAJC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,aAAa;QAC1B,OAAO,EAAE,wBAAwB;KACpC,CAAC;;+CACQ"}
1
+ {"version":3,"file":"filter-options-dto.js","sourceRoot":"","sources":["../../../../src/common/utility/dto/filter-options-dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAA6C;AAC7C,uFAA6E;AAK7E,MAAa,gBAAgB;IAA7B;QAWI,aAAQ,GAAsB,4CAAiB,CAAC,MAAM,CAAA;IAU1D,CAAC;CAAA;AArBD,4CAqBC;AAVG;IANC,IAAA,4BAAU,GAAE;IACZ,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,GAAG;QACZ,IAAI,EAAE,4CAAiB;KAC1B,CAAC;;kDACoD;AAStD;IAJC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,aAAa;QAC1B,OAAO,EAAE,wBAAwB;KACpC,CAAC;;+CACQ"}
@@ -0,0 +1 @@
1
+ export declare const SmlimagemapviewModule: import("@nestjs/common").DynamicModule;
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SmlimagemapviewModule = void 0;
4
+ const CrudModuleFactory_1 = require("../common/core/CrudModuleFactory");
5
+ exports.SmlimagemapviewModule = (0, CrudModuleFactory_1.createCrudViewModule)({
6
+ path: "smlimagemapview",
7
+ viewType: "imagemap",
8
+ fields: [
9
+ {
10
+ name: "friendlyName",
11
+ type: "string",
12
+ required: false,
13
+ description: "Friendly name",
14
+ },
15
+ {
16
+ name: "title",
17
+ type: "string",
18
+ required: true,
19
+ description: "Title",
20
+ },
21
+ {
22
+ name: "viewId",
23
+ type: "string",
24
+ required: false,
25
+ description: "Unique view identifier (auto-generated if omitted)",
26
+ },
27
+ {
28
+ name: "viewType",
29
+ type: "string",
30
+ required: true,
31
+ description: "View type",
32
+ default: "imagemap",
33
+ },
34
+ {
35
+ name: "itemsQuery",
36
+ type: "string",
37
+ required: false,
38
+ description: "Query reference ID — returns the records to map as pins",
39
+ },
40
+ {
41
+ name: "itemsTitle",
42
+ type: "string",
43
+ required: false,
44
+ description: "Field name used as item title and as the link key between item and pin",
45
+ },
46
+ {
47
+ name: "itemsProps",
48
+ type: "string",
49
+ required: false,
50
+ description: "Comma-separated list of field names shown in the pin detail popup",
51
+ },
52
+ {
53
+ name: "image",
54
+ type: "string",
55
+ required: false,
56
+ description: "Background image — URL or base64 data URI. Stored per-record; overrides the view-level default.",
57
+ },
58
+ {
59
+ name: "points",
60
+ type: "array",
61
+ required: false,
62
+ description: "List of pins placed on the image",
63
+ children: [
64
+ {
65
+ name: "title",
66
+ type: "string",
67
+ required: true,
68
+ description: "Value of itemsTitle for the linked item",
69
+ },
70
+ {
71
+ name: "x",
72
+ type: "number",
73
+ required: true,
74
+ description: "Horizontal position as percentage of image width (0–100)",
75
+ },
76
+ {
77
+ name: "y",
78
+ type: "number",
79
+ required: true,
80
+ description: "Vertical position as percentage of image height (0–100)",
81
+ },
82
+ ],
83
+ },
84
+ {
85
+ name: "showTitle",
86
+ type: "string",
87
+ required: false,
88
+ description: "Show view title",
89
+ },
90
+ {
91
+ name: "documentation",
92
+ type: "string",
93
+ required: false,
94
+ description: "Rich-text documentation",
95
+ },
96
+ ],
97
+ });
98
+ //# sourceMappingURL=smlimagemapview.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smlimagemapview.module.js","sourceRoot":"","sources":["../../src/factoryViewModules/smlimagemapview.module.ts"],"names":[],"mappings":";;;AAAA,wEAAwE;AAE3D,QAAA,qBAAqB,GAAG,IAAA,wCAAoB,EAAC;IACxD,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE;QACN;YACE,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,eAAe;SAC7B;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,OAAO;SACrB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,oDAAoD;SAClE;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,UAAU;SACpB;QACD;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,yDAAyD;SACvE;QACD;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,wEAAwE;SACtF;QACD;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,mEAAmE;SACjF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,iGAAiG;SAC/G;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,yCAAyC;iBACvD;gBACD;oBACE,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,0DAA0D;iBACxE;gBACD;oBACE,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,WAAW,EAAE,yDAAyD;iBACvE;aACF;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,iBAAiB;SAC/B;QACD;YACE,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,yBAAyB;SACvC;KACF;CACF,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const SmltimelineviewModule: import("@nestjs/common").DynamicModule;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SmltimelineviewModule = void 0;
4
+ const CrudModuleFactory_1 = require("../common/core/CrudModuleFactory");
5
+ exports.SmltimelineviewModule = (0, CrudModuleFactory_1.createCrudViewModule)({
6
+ path: "smltimelineview",
7
+ viewType: "timelineView",
8
+ fields: [
9
+ {
10
+ name: "friendlyName",
11
+ type: "string",
12
+ required: false,
13
+ description: "Friendly name",
14
+ },
15
+ {
16
+ name: "title",
17
+ type: "string",
18
+ required: true,
19
+ description: "Title",
20
+ },
21
+ {
22
+ name: "viewId",
23
+ type: "string",
24
+ required: false,
25
+ description: "Unique view identifier (auto-generated if omitted)",
26
+ },
27
+ {
28
+ name: "viewType",
29
+ type: "string",
30
+ required: true,
31
+ description: "View type",
32
+ default: "timelineView",
33
+ },
34
+ {
35
+ name: "query",
36
+ type: "string",
37
+ required: true,
38
+ description: "Query reference ID — returns the records to display on the timeline",
39
+ },
40
+ {
41
+ name: "dateField",
42
+ type: "string",
43
+ required: true,
44
+ description: "Field name containing the date/timestamp of each point",
45
+ },
46
+ {
47
+ name: "labelField",
48
+ type: "string",
49
+ required: true,
50
+ description: "Field name used as the label for each point",
51
+ },
52
+ {
53
+ name: "detailFields",
54
+ type: "string",
55
+ required: false,
56
+ description: "Comma-separated list of field names shown in the detail popup",
57
+ },
58
+ {
59
+ name: "dateFormat",
60
+ type: "string",
61
+ required: false,
62
+ description: "Display format for dates (dayjs format tokens, default: DD/MM/YYYY HH:mm)",
63
+ },
64
+ {
65
+ name: "maxItems",
66
+ type: "number",
67
+ required: false,
68
+ description: "Maximum number of records to display (default: 30)",
69
+ },
70
+ {
71
+ name: "height",
72
+ type: "string",
73
+ required: false,
74
+ description: "CSS height of the scrollable timeline container (default: 600px)",
75
+ },
76
+ {
77
+ name: "showTitle",
78
+ type: "string",
79
+ required: false,
80
+ description: "Show view title",
81
+ },
82
+ ],
83
+ });
84
+ //# sourceMappingURL=smltimelineview.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smltimelineview.module.js","sourceRoot":"","sources":["../../src/factoryViewModules/smltimelineview.module.ts"],"names":[],"mappings":";;;AAAA,wEAAwE;AAE3D,QAAA,qBAAqB,GAAG,IAAA,wCAAoB,EAAC;IACxD,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE;QACN;YACE,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,eAAe;SAC7B;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,OAAO;SACrB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,oDAAoD;SAClE;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,cAAc;SACxB;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,qEAAqE;SACnF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,wDAAwD;SACtE;QACD;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,6CAA6C;SAC3D;QACD;YACE,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,+DAA+D;SAC7E;QACD;YACE,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,2EAA2E;SACzF;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,oDAAoD;SAClE;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kEAAkE;SAChF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,iBAAiB;SAC/B;KACF;CACF,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -16,6 +16,8 @@ export { SmlonlyofficeviewModule } from './factoryViewModules/smlonlyofficeview.
16
16
  export { SmlsupersetviewModule } from './factoryViewModules/smlsupersetview.module';
17
17
  export { SmlfaulttreeviewModule } from './factoryViewModules/smlfaulttreeview.module';
18
18
  export { SmlhtmldiffviewModule } from './factoryViewModules/smlhtmldiffview.module';
19
+ export { SmltimelineviewModule } from './factoryViewModules/smltimelineview.module';
20
+ export { SmlimagemapviewModule } from './factoryViewModules/smlimagemapview.module';
19
21
  export { createCrudViewModule, createCrudViewModules } from './common/core/CrudModuleFactory';
20
22
  export type { CrudViewModuleConfig } from './common/core/CrudModuleFactory';
21
23
  export { createDto, createUpdateDto, createDtoPair } from './common/core/DtoFactory';
package/dist/index.js CHANGED
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SmlattachmentService = exports.SmlappmenuService = exports.SmlqueryService = exports.SmlformService = exports.SmlgridService = exports.SmlentityService = exports.SmlchartFilterDto = exports.SmlformActionDto = exports.OpenViewMenuItemDto = exports.SmlgridActionDto = exports.SmlgridFilterDto = exports.SmlmassiveformModule = exports.SmliframeviewModule = exports.MdSystemCodesModule = exports.SmlSystemNotificationModule = exports.SmlviewModule = exports.SmlrecordlockModule = exports.SmlrecordlinkModule = exports.SmlProxyQueryModule = exports.NavigationPanelsModule = exports.FlowPanelsModule = exports.SmlflowpanelanalistanceModule = exports.SmlentityManagerModule = exports.SmlentityDefinitionModule = exports.SmlcustomfunctionModule = exports.SmlcustomcodeModule = exports.SmlconfigModule = exports.ViewRegistry = exports.createEntity = exports.createDtoPair = exports.createUpdateDto = exports.createDto = exports.createCrudViewModules = exports.createCrudViewModule = exports.SmlhtmldiffviewModule = exports.SmlfaulttreeviewModule = exports.SmlsupersetviewModule = exports.SmlonlyofficeviewModule = exports.SmlganttviewModule = exports.SmlstatusgridviewModule = exports.SmldatasheetviewModule = exports.SmldashboardviewModule = exports.SmlcomposedviewModule = exports.SmlchartModule = exports.SmlattachmentsModule = exports.SmlappmenuModule = exports.SmlqueryModule = exports.SmlformModule = exports.SmlgridModule = exports.SmlentityModule = void 0;
18
- exports.SmlmassiveformService = exports.SmliframeviewService = exports.MdSystemCodesService = exports.SmlSystemNotificationService = exports.SmlviewService = exports.SmlrecordlockService = exports.SmlrecordlinkService = exports.SmlProxyQueryService = exports.NavigationPanelsService = exports.FlowPanelsService = exports.SmlflowpanelanalistanceService = exports.SmlentityManagerService = exports.SmlentityDefinitionService = exports.SmlcustomfunctionService = exports.SmlcustomcodeService = exports.SmldashboardviewService = exports.SmlcomposedviewService = exports.SmlchartService = void 0;
17
+ exports.SmlqueryService = exports.SmlformService = exports.SmlgridService = exports.SmlentityService = exports.SmlchartFilterDto = exports.SmlformActionDto = exports.OpenViewMenuItemDto = exports.SmlgridActionDto = exports.SmlgridFilterDto = exports.SmlmassiveformModule = exports.SmliframeviewModule = exports.MdSystemCodesModule = exports.SmlSystemNotificationModule = exports.SmlviewModule = exports.SmlrecordlockModule = exports.SmlrecordlinkModule = exports.SmlProxyQueryModule = exports.NavigationPanelsModule = exports.FlowPanelsModule = exports.SmlflowpanelanalistanceModule = exports.SmlentityManagerModule = exports.SmlentityDefinitionModule = exports.SmlcustomfunctionModule = exports.SmlcustomcodeModule = exports.SmlconfigModule = exports.ViewRegistry = exports.createEntity = exports.createDtoPair = exports.createUpdateDto = exports.createDto = exports.createCrudViewModules = exports.createCrudViewModule = exports.SmlimagemapviewModule = exports.SmltimelineviewModule = exports.SmlhtmldiffviewModule = exports.SmlfaulttreeviewModule = exports.SmlsupersetviewModule = exports.SmlonlyofficeviewModule = exports.SmlganttviewModule = exports.SmlstatusgridviewModule = exports.SmldatasheetviewModule = exports.SmldashboardviewModule = exports.SmlcomposedviewModule = exports.SmlchartModule = exports.SmlattachmentsModule = exports.SmlappmenuModule = exports.SmlqueryModule = exports.SmlformModule = exports.SmlgridModule = exports.SmlentityModule = void 0;
18
+ exports.SmlmassiveformService = exports.SmliframeviewService = exports.MdSystemCodesService = exports.SmlSystemNotificationService = exports.SmlviewService = exports.SmlrecordlockService = exports.SmlrecordlinkService = exports.SmlProxyQueryService = exports.NavigationPanelsService = exports.FlowPanelsService = exports.SmlflowpanelanalistanceService = exports.SmlentityManagerService = exports.SmlentityDefinitionService = exports.SmlcustomfunctionService = exports.SmlcustomcodeService = exports.SmldashboardviewService = exports.SmlcomposedviewService = exports.SmlchartService = exports.SmlattachmentService = exports.SmlappmenuService = void 0;
19
19
  __exportStar(require("./common"), exports);
20
20
  __exportStar(require("./authentication"), exports);
21
21
  var smlentity_module_1 = require("./smlentity/smlentity.module");
@@ -50,6 +50,10 @@ var smlfaulttreeview_module_1 = require("./factoryViewModules/smlfaulttreeview.m
50
50
  Object.defineProperty(exports, "SmlfaulttreeviewModule", { enumerable: true, get: function () { return smlfaulttreeview_module_1.SmlfaulttreeviewModule; } });
51
51
  var smlhtmldiffview_module_1 = require("./factoryViewModules/smlhtmldiffview.module");
52
52
  Object.defineProperty(exports, "SmlhtmldiffviewModule", { enumerable: true, get: function () { return smlhtmldiffview_module_1.SmlhtmldiffviewModule; } });
53
+ var smltimelineview_module_1 = require("./factoryViewModules/smltimelineview.module");
54
+ Object.defineProperty(exports, "SmltimelineviewModule", { enumerable: true, get: function () { return smltimelineview_module_1.SmltimelineviewModule; } });
55
+ var smlimagemapview_module_1 = require("./factoryViewModules/smlimagemapview.module");
56
+ Object.defineProperty(exports, "SmlimagemapviewModule", { enumerable: true, get: function () { return smlimagemapview_module_1.SmlimagemapviewModule; } });
53
57
  var CrudModuleFactory_1 = require("./common/core/CrudModuleFactory");
54
58
  Object.defineProperty(exports, "createCrudViewModule", { enumerable: true, get: function () { return CrudModuleFactory_1.createCrudViewModule; } });
55
59
  Object.defineProperty(exports, "createCrudViewModules", { enumerable: true, get: function () { return CrudModuleFactory_1.createCrudViewModules; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -46,36 +46,36 @@ let SmlcustomcodeController = class SmlcustomcodeController {
46
46
  }
47
47
  getCustomCode(res) {
48
48
  try {
49
- const scriptContent = `const SMLFORM_CUSTOMCODE = {
50
- isEditable: function(formViewId, record, user){
51
- if(this[formViewId]){
52
- return this[formViewId].isEditable(record, user);
53
- }
54
-
55
- return true;
56
- },
57
-
58
- onValueChange: function(formViewId,record, user, dataIndex, newValue, oldValue){
59
- if(this[formViewId]){
60
- return this[formViewId].onValueChange(record, user, dataIndex, newValue, oldValue);
61
- }
62
- },
63
-
64
- 'smlform-e09d6ab5-5d99-4aef-b7c1-25d0629bdad0': {
65
-
66
- isEditable: function(record, user) {
67
- return true;
68
- },
69
-
70
- onValueChange: function(record, user, dataIndex, newValue, oldValue, conf) {
71
- if(dataIndex === 'category' && newValue === 'medium') {
72
- record['integerField'] = 25;
73
- conf.readOnly['integerField'] = true
74
- }
75
-
76
- return conf;
77
- }
78
- }
49
+ const scriptContent = `const SMLFORM_CUSTOMCODE = {
50
+ isEditable: function(formViewId, record, user){
51
+ if(this[formViewId]){
52
+ return this[formViewId].isEditable(record, user);
53
+ }
54
+
55
+ return true;
56
+ },
57
+
58
+ onValueChange: function(formViewId,record, user, dataIndex, newValue, oldValue){
59
+ if(this[formViewId]){
60
+ return this[formViewId].onValueChange(record, user, dataIndex, newValue, oldValue);
61
+ }
62
+ },
63
+
64
+ 'smlform-e09d6ab5-5d99-4aef-b7c1-25d0629bdad0': {
65
+
66
+ isEditable: function(record, user) {
67
+ return true;
68
+ },
69
+
70
+ onValueChange: function(record, user, dataIndex, newValue, oldValue, conf) {
71
+ if(dataIndex === 'category' && newValue === 'medium') {
72
+ record['integerField'] = 25;
73
+ conf.readOnly['integerField'] = true
74
+ }
75
+
76
+ return conf;
77
+ }
78
+ }
79
79
  }`;
80
80
  res.setHeader('Content-Type', 'application/javascript');
81
81
  res.setHeader('Content-Disposition', 'attachment; filename="sml-custom-code.js"');
@@ -179,8 +179,8 @@ let SmlcustomfunctionService = class SmlcustomfunctionService {
179
179
  }
180
180
  }
181
181
  getRawCode(name, params, body) {
182
- return `export function ${name}({${params.join(', ')}}) {
183
- ${body}
182
+ return `export function ${name}({${params.join(', ')}}) {
183
+ ${body}
184
184
  }`;
185
185
  }
186
186
  parseAndValidateFunction(rawCode) {
@@ -16,6 +16,7 @@ export declare class ItemDto {
16
16
  expectedMinValue?: number;
17
17
  onChange?: boolean;
18
18
  defaultValue?: string;
19
+ valueTemplate?: string;
19
20
  visibleIf?: string;
20
21
  watchFields?: string;
21
22
  parent: string[];
@@ -133,6 +133,16 @@ __decorate([
133
133
  (0, swagger_1.ApiProperty)(),
134
134
  __metadata("design:type", String)
135
135
  ], ItemDto.prototype, "defaultValue", void 0);
136
+ __decorate([
137
+ (0, class_validator_1.IsString)(),
138
+ (0, class_validator_1.IsOptional)(),
139
+ (0, class_transformer_1.Expose)(),
140
+ (0, swagger_1.ApiProperty)({
141
+ required: false,
142
+ description: 'For `hidden` items: FE template re-evaluated on deps change; result written into dataIndex and submitted (precedence over defaultValue).',
143
+ }),
144
+ __metadata("design:type", String)
145
+ ], ItemDto.prototype, "valueTemplate", void 0);
136
146
  __decorate([
137
147
  (0, class_validator_1.IsString)(),
138
148
  (0, class_validator_1.IsOptional)(),
@@ -1 +1 @@
1
- {"version":3,"file":"item.dto.js","sourceRoot":"","sources":["../../../src/smlform/dto/item.dto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"item.dto.js","sourceRoot":"","sources":["../../../src/smlform/dto/item.dto.ts"],"names":[],"mappings":"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"}