adminizer 5.0.0-build.5 → 5.0.0-build.7

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 (129) hide show
  1. package/assets/{add-Bu8tQJ-4.js → add-DOjh2NLm.js} +1 -1
  2. package/assets/{add-group-DGu5duiB.js → add-group-B2FdiaVg.js} +1 -1
  3. package/assets/{add-user-CBxwz52X.js → add-user-C07In-rU.js} +1 -1
  4. package/assets/{app-layout-DWEZvQS6.js → app-layout-CvW8DKyk.js} +1 -1
  5. package/assets/app.js +34 -34
  6. package/assets/{catalog-hm4fq7Rc.js → catalog-CObbOCOb.js} +1 -1
  7. package/assets/controls/ckeditor.es.js +267 -264
  8. package/assets/controls/jsoneditor.es.js +13334 -13251
  9. package/assets/controls/leaflet.es.js +1023 -1004
  10. package/assets/controls/toast-ui.es.js +1825 -1817
  11. package/assets/{dashboard-D3tpXRmb.js → dashboard-DRxpsbtY.js} +1 -1
  12. package/assets/{history-ovGckMBV.js → history-srOjJz94.js} +1 -1
  13. package/assets/{list-VCPbebWA.js → list-BObKdaDd.js} +1 -1
  14. package/assets/manifest.json +24 -24
  15. package/assets/{module-BXHHDcbq.js → module-CdaN8Pkb.js} +1 -1
  16. package/assets/{notification-CgyQ2bvc.js → notification-DMwIGHiv.js} +1 -1
  17. package/assets/{user-filters-list-Chx6TKlb.js → user-filters-list-CnRaXLuv.js} +1 -1
  18. package/assets/{welcome-qcRgV8Fe.js → welcome-DrLD1BEN.js} +1 -1
  19. package/controllers/catalog/FrontendCatalogAdapter.d.ts +1 -1
  20. package/controllers/catalog/FrontentCatalogAdapter.d.ts +1 -1
  21. package/controllers/feedback/feedbackController.d.ts +1 -1
  22. package/controllers/history-actions/HistoryController.d.ts +1 -1
  23. package/controllers/media-manager/mediaManagerAdapter.d.ts +1 -1
  24. package/helpers/accessRightsHelper.d.ts +3 -3
  25. package/helpers/configHelper.d.ts +3 -3
  26. package/helpers/configHelper.js +8 -1
  27. package/helpers/controllerHelper.d.ts +2 -2
  28. package/helpers/fieldsHelper.d.ts +2 -2
  29. package/helpers/filterDatetimeHelper.d.ts +1 -1
  30. package/helpers/inertiaActionsHelper.d.ts +2 -2
  31. package/helpers/inertiaAddHelper.d.ts +4 -4
  32. package/helpers/inertiaGroupHelper.d.ts +3 -3
  33. package/helpers/inertiaListHelper.d.ts +3 -3
  34. package/helpers/inertiaMenuHelper.d.ts +2 -2
  35. package/helpers/inertiaUserHelper.d.ts +3 -3
  36. package/helpers/menuHelper.d.ts +2 -2
  37. package/helpers/translationHelper.d.ts +2 -2
  38. package/index.d.ts +58 -58
  39. package/interfaces/adminpanelConfig.d.ts +4 -4
  40. package/interfaces/global.d.ts +6 -6
  41. package/interfaces/internalModelAccess.d.ts +1 -1
  42. package/interfaces/listQueryBuilder.d.ts +1 -1
  43. package/interfaces/types.d.ts +2 -2
  44. package/lib/Adminizer.d.ts +25 -25
  45. package/lib/DataAccessor.d.ts +6 -6
  46. package/lib/DataAccessor.js +5 -1
  47. package/lib/MiddlewareManager.d.ts +1 -1
  48. package/lib/access-rights/AccessRightsHandler.d.ts +2 -2
  49. package/lib/ai-assistant/AbstractAiModelService.d.ts +2 -2
  50. package/lib/ai-assistant/AiAssistantHandler.d.ts +4 -4
  51. package/lib/app-manager/AdminizerApp.d.ts +10 -10
  52. package/lib/app-manager/AppManager.d.ts +2 -2
  53. package/lib/app-manager/AssetHandler.d.ts +2 -2
  54. package/lib/app-manager/ConfigLayerHandler.d.ts +2 -2
  55. package/lib/app-manager/ControllerHandler.d.ts +2 -2
  56. package/lib/catalog/AbstractCatalog.d.ts +1 -1
  57. package/lib/catalog/CatalogHandler.d.ts +1 -1
  58. package/lib/controls/ControlsHandler.d.ts +1 -1
  59. package/lib/controls/codeEditor/MonacoEditor.d.ts +1 -1
  60. package/lib/controls/geojsoneditor/GeoEditor.d.ts +1 -1
  61. package/lib/controls/jsoneditor/JsonEditor.d.ts +1 -1
  62. package/lib/controls/markdown/ToastUiEditor.d.ts +1 -1
  63. package/lib/controls/table/Handsontable.d.ts +1 -1
  64. package/lib/controls/wysiwyg/CKeditor.d.ts +1 -1
  65. package/lib/feedback/FeedbackHandler.d.ts +2 -2
  66. package/lib/filters/ConditionValidator.d.ts +1 -1
  67. package/lib/filters/FilterCustomFieldHandler.d.ts +2 -2
  68. package/lib/filters/FilterService.d.ts +4 -4
  69. package/lib/filters/index.d.ts +6 -6
  70. package/lib/history-actions/AbstractHistoryAdapter.d.ts +6 -6
  71. package/lib/history-actions/DefaultHistoryAdapter.d.ts +4 -4
  72. package/lib/history-actions/HistoryHandler.d.ts +1 -1
  73. package/lib/list-query-builder/ListQueryBuilder.d.ts +7 -7
  74. package/lib/media-manager/AbstractMediaManager.d.ts +2 -2
  75. package/lib/media-manager/MediaManagerHandler.d.ts +1 -1
  76. package/lib/media-manager/Thumb.d.ts +1 -1
  77. package/lib/media-manager/helpers/MediaManagerHelper.d.ts +5 -5
  78. package/lib/model/AbstractModel.d.ts +9 -4
  79. package/lib/model/InternalModelAccessFactory.d.ts +2 -2
  80. package/lib/model/ModelHandler.d.ts +3 -3
  81. package/lib/model/adapter/sequelize.d.ts +2 -2
  82. package/lib/model/adapter/sequelize.js +4 -2
  83. package/lib/model/adapter/typeorm.d.ts +2 -2
  84. package/lib/model/adapter/typeorm.js +1 -1
  85. package/lib/model/internalModelRepository.d.ts +2 -2
  86. package/lib/notifications/AbstractNotificationService.d.ts +4 -4
  87. package/lib/notifications/GeneralNotificationService.d.ts +2 -2
  88. package/lib/notifications/NotificationHandler.d.ts +2 -2
  89. package/lib/notifications/SystemNotificationService.d.ts +2 -2
  90. package/lib/requestProcessor.d.ts +1 -1
  91. package/lib/widgets/abstractAction.d.ts +1 -1
  92. package/lib/widgets/abstractCustom.d.ts +2 -2
  93. package/lib/widgets/abstractInfo.d.ts +1 -1
  94. package/lib/widgets/abstractLink.d.ts +2 -2
  95. package/lib/widgets/abstractSwitch.d.ts +1 -1
  96. package/lib/widgets/abstractWidgetBase.d.ts +1 -1
  97. package/lib/widgets/widgetHandler.d.ts +9 -9
  98. package/models/Filter.d.ts +1 -1
  99. package/models/FilterColumn.d.ts +1 -1
  100. package/models/Group.d.ts +1 -1
  101. package/models/HistoryActions.d.ts +1 -1
  102. package/models/MediaManagerAP.d.ts +2 -2
  103. package/models/MediaManagerAssociationsAP.d.ts +1 -1
  104. package/models/MediaManagerMetaAP.d.ts +1 -1
  105. package/models/User.d.ts +2 -2
  106. package/models/UserNotification.d.ts +1 -1
  107. package/package.json +1 -1
  108. package/services/FeedService.d.ts +3 -3
  109. package/system/Router.d.ts +1 -1
  110. package/system/Router.js +9 -1
  111. package/system/bindAccessRights.d.ts +1 -1
  112. package/system/bindAuthorization.d.ts +1 -1
  113. package/system/bindControls.d.ts +1 -1
  114. package/system/bindCors.d.ts +1 -1
  115. package/system/bindCustomFilterHandlers.d.ts +1 -1
  116. package/system/bindDashboardWidgets.d.ts +1 -1
  117. package/system/bindDev.d.ts +1 -1
  118. package/system/bindHistory.d.ts +1 -1
  119. package/system/bindInertia.d.ts +1 -1
  120. package/system/bindMediaManager.d.ts +1 -1
  121. package/system/bindNotifications.d.ts +1 -1
  122. package/system/bindReqFunctions.d.ts +1 -1
  123. package/system/bindTranslations.d.ts +1 -1
  124. package/system/buildInternalModelAccess.d.ts +3 -3
  125. package/system/defaults.d.ts +1 -1
  126. package/system/routePolicies.d.ts +1 -1
  127. package/system/systemModelContracts.d.ts +1 -1
  128. package/system/systemModelContracts.js +11 -7
  129. package/system/validateSystemModels.d.ts +1 -1
package/index.d.ts CHANGED
@@ -1,58 +1,58 @@
1
- export * from "./helpers/configHelper";
2
- export * from "./helpers/accessRightsHelper";
3
- export * from "./lib/widgets/abstractAction";
4
- export * from "./lib/widgets/abstractInfo";
5
- export * from "./lib/widgets/abstractCustom";
6
- export * from "./lib/widgets/abstractLink";
7
- export * from "./lib/widgets/abstractWidgetBase";
8
- export * from "./lib/widgets/abstractSwitch";
9
- export * from "./lib/widgets/widgetHandler";
10
- export * from "./lib/catalog/AbstractCatalog";
11
- export * from "./lib/catalog/CatalogHandler";
12
- export * from "./lib/catalog/CatalogTemplateComponentHandler";
13
- export * from "./lib/media-manager/MediaManagerHandler";
14
- export * from "./controllers/media-manager/mediaManagerAdapter";
15
- export * from "./interfaces/adminpanelConfig";
16
- export * from "./interfaces/types";
17
- export * from "./interfaces/queryCriteria";
18
- export * from "./interfaces/listQueryBuilder";
19
- export * from "./interfaces/internalModelAccess";
20
- export * from "./interfaces/MaaterialIcons";
21
- export * from "./lib/model/AbstractModel";
22
- export * from "./lib/model/InternalModelAccessFactory";
23
- export * from "./system/systemModelContracts";
24
- export * from "./lib/model/adapter/sequelize";
25
- export * from "./lib/model/adapter/typeorm";
26
- export * from "./lib/media-manager/AbstractMediaManager";
27
- export * from "./lib/controls/Control";
28
- export * from "./lib/controls/ControlsHandler";
29
- export * from "./lib/Adminizer";
30
- export * from "./lib/I18n";
31
- export * from "./models/Group";
32
- export * from "./models/User";
33
- export * from "./models/Filter";
34
- export * from "./models/FilterColumn";
35
- export * from "./models/HistoryActions";
36
- export * from "./models/Notification";
37
- export * from "./models/UserNotification";
38
- export * from "./models/MediaManagerAP";
39
- export * from "./models/MediaManagerAssociationsAP";
40
- export * from "./models/MediaManagerMetaAP";
41
- export * from "./policies/authPolicies";
42
- export * from "./lib/helper/jwt";
43
- export * from "./lib/notifications/AbstractNotificationService";
44
- export * from "./lib/POWCaptcha";
45
- export * from "./lib/ai-assistant/AbstractAiModelService";
46
- export * from "./lib/ai-assistant/AiAssistantHandler";
47
- export * from "./lib/DataAccessor";
48
- export * from "./lib/history-actions/AbstractHistoryAdapter";
49
- export * from "./lib/filters/CustomFilterHandler";
50
- export * from "./lib/feedback/AbstractFeedbackHandler";
51
- export * from "./lib/feedback/FeedbackHandler";
52
- export * from "./lib/app-manager/AdminizerApp";
53
- export * from "./lib/app-manager/AppManager";
54
- export * from "./lib/app-manager/ControllerHandler";
55
- export * from "./lib/app-manager/AssetHandler";
56
- export * from "./lib/app-manager/ConfigLayerHandler";
57
- export * from "./lib/access-rights/AccessRightsHandler";
58
- export * from "./lib/media-manager/helpers/MediaManagerHelper";
1
+ export * from "./helpers/configHelper.js";
2
+ export * from "./helpers/accessRightsHelper.js";
3
+ export * from "./lib/widgets/abstractAction.js";
4
+ export * from "./lib/widgets/abstractInfo.js";
5
+ export * from "./lib/widgets/abstractCustom.js";
6
+ export * from "./lib/widgets/abstractLink.js";
7
+ export * from "./lib/widgets/abstractWidgetBase.js";
8
+ export * from "./lib/widgets/abstractSwitch.js";
9
+ export * from "./lib/widgets/widgetHandler.js";
10
+ export * from "./lib/catalog/AbstractCatalog.js";
11
+ export * from "./lib/catalog/CatalogHandler.js";
12
+ export * from "./lib/catalog/CatalogTemplateComponentHandler.js";
13
+ export * from "./lib/media-manager/MediaManagerHandler.js";
14
+ export * from "./controllers/media-manager/mediaManagerAdapter.js";
15
+ export * from "./interfaces/adminpanelConfig.js";
16
+ export * from "./interfaces/types.js";
17
+ export * from "./interfaces/queryCriteria.js";
18
+ export * from "./interfaces/listQueryBuilder.js";
19
+ export * from "./interfaces/internalModelAccess.js";
20
+ export * from "./interfaces/MaaterialIcons.js";
21
+ export * from "./lib/model/AbstractModel.js";
22
+ export * from "./lib/model/InternalModelAccessFactory.js";
23
+ export * from "./system/systemModelContracts.js";
24
+ export * from "./lib/model/adapter/sequelize.js";
25
+ export * from "./lib/model/adapter/typeorm.js";
26
+ export * from "./lib/media-manager/AbstractMediaManager.js";
27
+ export * from "./lib/controls/Control.js";
28
+ export * from "./lib/controls/ControlsHandler.js";
29
+ export * from "./lib/Adminizer.js";
30
+ export * from "./lib/I18n.js";
31
+ export * from "./models/Group.js";
32
+ export * from "./models/User.js";
33
+ export * from "./models/Filter.js";
34
+ export * from "./models/FilterColumn.js";
35
+ export * from "./models/HistoryActions.js";
36
+ export * from "./models/Notification.js";
37
+ export * from "./models/UserNotification.js";
38
+ export * from "./models/MediaManagerAP.js";
39
+ export * from "./models/MediaManagerAssociationsAP.js";
40
+ export * from "./models/MediaManagerMetaAP.js";
41
+ export * from "./policies/authPolicies.js";
42
+ export * from "./lib/helper/jwt.js";
43
+ export * from "./lib/notifications/AbstractNotificationService.js";
44
+ export * from "./lib/POWCaptcha.js";
45
+ export * from "./lib/ai-assistant/AbstractAiModelService.js";
46
+ export * from "./lib/ai-assistant/AiAssistantHandler.js";
47
+ export * from "./lib/DataAccessor.js";
48
+ export * from "./lib/history-actions/AbstractHistoryAdapter.js";
49
+ export * from "./lib/filters/CustomFilterHandler.js";
50
+ export * from "./lib/feedback/AbstractFeedbackHandler.js";
51
+ export * from "./lib/feedback/FeedbackHandler.js";
52
+ export * from "./lib/app-manager/AdminizerApp.js";
53
+ export * from "./lib/app-manager/AppManager.js";
54
+ export * from "./lib/app-manager/ControllerHandler.js";
55
+ export * from "./lib/app-manager/AssetHandler.js";
56
+ export * from "./lib/app-manager/ConfigLayerHandler.js";
57
+ export * from "./lib/access-rights/AccessRightsHandler.js";
58
+ export * from "./lib/media-manager/helpers/MediaManagerHelper.js";
@@ -1,9 +1,9 @@
1
- import { MaterialIcon } from "./MaaterialIcons";
1
+ import { MaterialIcon } from "./MaaterialIcons.js";
2
2
  import { EditorOptions } from "@toast-ui/editor/types/editor";
3
3
  import { GridSettings as HandsontableSettings } from "handsontable/settings";
4
- import { Group } from "../models/Group";
5
- import { User } from "../models/User";
6
- import { InternalModelAccessMap } from "./internalModelAccess";
4
+ import { Group } from "../models/Group.js";
5
+ import { User } from "../models/User.js";
6
+ import { InternalModelAccessMap } from "./internalModelAccess.js";
7
7
  /**
8
8
  * Controller function type - async function that handles requests and returns a response
9
9
  */
@@ -1,11 +1,11 @@
1
- import { Adminizer } from "../lib/Adminizer";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
2
  import { NextFunction, Request, Response } from "express";
3
3
  import multer from "multer";
4
- import { I18n } from "../lib/I18n";
5
- import { Inertia } from "../lib/inertia/inertiaAdapter";
6
- import { Flash } from "../lib/inertia/flash";
7
- import { User } from "../models/User";
8
- import { AppRuntime } from "../lib/app-manager/AdminizerApp";
4
+ import { I18n } from "../lib/I18n.js";
5
+ import { Inertia } from "../lib/inertia/inertiaAdapter.js";
6
+ import { Flash } from "../lib/inertia/flash.js";
7
+ import { User } from "../models/User.js";
8
+ import { AppRuntime } from "../lib/app-manager/AdminizerApp.js";
9
9
  declare global {
10
10
  /** @deprecated use import from TS model decalration */
11
11
  type ModelsAP = {
@@ -1,4 +1,4 @@
1
- import { IsAny, QueryCriteria } from "./queryCriteria";
1
+ import { IsAny, QueryCriteria } from "./queryCriteria.js";
2
2
  export type InternalModelAccessScope = string;
3
3
  export type InternalModelAccessMap = Record<InternalModelAccessScope, string[]>;
4
4
  export type InternalModelRelationId = string | number;
@@ -1,4 +1,4 @@
1
- import { FilterCondition } from "../models/Filter";
1
+ import { FilterCondition } from "../models/Filter.js";
2
2
  /**
3
3
  * Input format for list/feed/export query builder.
4
4
  * This is not the internal model query language.
@@ -1,5 +1,5 @@
1
- import { AbstractModel } from "../lib/model/AbstractModel";
2
- import { ModelConfig } from "./adminpanelConfig";
1
+ import { AbstractModel } from "../lib/model/AbstractModel.js";
2
+ import { ModelConfig } from "./adminpanelConfig.js";
3
3
  export interface ModelResource {
4
4
  name: string;
5
5
  config?: ModelConfig;
@@ -1,32 +1,32 @@
1
1
  import express, { Express } from "express";
2
2
  import winston from "winston";
3
3
  import EventEmitter from 'events';
4
- import { AdminpanelConfig } from "../interfaces/adminpanelConfig";
5
- import MiddlewareManager from "./MiddlewareManager";
6
- import Router from "./../system/Router";
7
- import { ModelHandler } from "./model/ModelHandler";
8
- import { WidgetHandler } from "./widgets/widgetHandler";
9
- import { AccessRightsHelper } from "../helpers/accessRightsHelper";
10
- import { ConfigHelper } from "../helpers/configHelper";
11
- import { I18n } from "./I18n";
12
- import { AbstractAdapter } from "./model/AbstractModel";
4
+ import { AdminpanelConfig } from "../interfaces/adminpanelConfig.js";
5
+ import MiddlewareManager from "./MiddlewareManager.js";
6
+ import Router from "./../system/Router.js";
7
+ import { ModelHandler } from "./model/ModelHandler.js";
8
+ import { WidgetHandler } from "./widgets/widgetHandler.js";
9
+ import { AccessRightsHelper } from "../helpers/accessRightsHelper.js";
10
+ import { ConfigHelper } from "../helpers/configHelper.js";
11
+ import { I18n } from "./I18n.js";
12
+ import { AbstractAdapter } from "./model/AbstractModel.js";
13
13
  import type { ViteDevServer } from 'vite';
14
- import { MenuHelper } from "../helpers/menuHelper";
15
- import { ControlsHandler } from "./controls/ControlsHandler";
16
- import { CatalogHandler } from "./catalog/CatalogHandler";
17
- import { CatalogTemplateComponentHandler } from "./catalog/CatalogTemplateComponentHandler";
18
- import { AiAssistantHandler } from './ai-assistant/AiAssistantHandler';
19
- import { NotificationHandler } from './notifications/NotificationHandler';
20
- import { INotification } from "../interfaces/types";
21
- import { MediaManagerHandler } from "./media-manager/MediaManagerHandler";
22
- import { HistoryHandler } from "./history-actions/HistoryHandler";
23
- import { CustomFilterHandler } from "./filters/CustomFilterHandler";
24
- import { FeedbackHandler } from "./feedback/FeedbackHandler";
25
- import { AppManager } from "./app-manager/AppManager";
26
- import { ControllerHandler } from "./app-manager/ControllerHandler";
27
- import { AssetHandler } from "./app-manager/AssetHandler";
28
- import { ConfigLayerHandler } from "./app-manager/ConfigLayerHandler";
29
- import { AccessRightsHandler } from "./access-rights/AccessRightsHandler";
14
+ import { MenuHelper } from "../helpers/menuHelper.js";
15
+ import { ControlsHandler } from "./controls/ControlsHandler.js";
16
+ import { CatalogHandler } from "./catalog/CatalogHandler.js";
17
+ import { CatalogTemplateComponentHandler } from "./catalog/CatalogTemplateComponentHandler.js";
18
+ import { AiAssistantHandler } from './ai-assistant/AiAssistantHandler.js';
19
+ import { NotificationHandler } from './notifications/NotificationHandler.js';
20
+ import { INotification } from "../interfaces/types.js";
21
+ import { MediaManagerHandler } from "./media-manager/MediaManagerHandler.js";
22
+ import { HistoryHandler } from "./history-actions/HistoryHandler.js";
23
+ import { CustomFilterHandler } from "./filters/CustomFilterHandler.js";
24
+ import { FeedbackHandler } from "./feedback/FeedbackHandler.js";
25
+ import { AppManager } from "./app-manager/AppManager.js";
26
+ import { ControllerHandler } from "./app-manager/ControllerHandler.js";
27
+ import { AssetHandler } from "./app-manager/AssetHandler.js";
28
+ import { ConfigLayerHandler } from "./app-manager/ConfigLayerHandler.js";
29
+ import { AccessRightsHandler } from "./access-rights/AccessRightsHandler.js";
30
30
  export declare function createAdminizerLogger(): winston.Logger;
31
31
  export interface EmitAsyncOptions {
32
32
  /**
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * The class manages the interaction between the user and the database entry, taking into account user permissions and the main config file settings.
3
3
  */
4
- import { ModelResource } from "../interfaces/types";
5
- import { ActionType } from "../interfaces/adminpanelConfig";
6
- import { Fields } from "../helpers/fieldsHelper";
7
- import { Adminizer } from "./Adminizer";
8
- import { User } from "../models/User";
9
- import { QueryCriteria } from "../interfaces/queryCriteria";
4
+ import { ModelResource } from "../interfaces/types.js";
5
+ import { ActionType } from "../interfaces/adminpanelConfig.js";
6
+ import { Fields } from "../helpers/fieldsHelper.js";
7
+ import { Adminizer } from "./Adminizer.js";
8
+ import { User } from "../models/User.js";
9
+ import { QueryCriteria } from "../interfaces/queryCriteria.js";
10
10
  export declare class DataAccessor {
11
11
  readonly adminizer: Adminizer;
12
12
  user: User;
@@ -157,7 +157,11 @@ export class DataAccessor {
157
157
  // Set required and type attributes
158
158
  fldConfig.required = Boolean(fldConfig.required ?? modelField.required);
159
159
  // Default type for field. Could be fetched from config file or model if not defined in config file.
160
- fldConfig.type = (fldConfig.type || modelField.type).toLowerCase();
160
+ // The model layer has a single temporal type (`date`), the UI distinguishes
161
+ // date/datetime/time. Default to `datetime` so the time part survives editing;
162
+ // a date-only column can be narrowed with `type: "date"` in the model config.
163
+ const modelFieldType = modelField.type === "date" ? "datetime" : modelField.type;
164
+ fldConfig.type = (fldConfig.type || modelFieldType).toLowerCase();
161
165
  // Normalize final configuration (fldConfig is always an object here, normalize never returns undefined)
162
166
  fldConfig = this.adminizer.configHelper.normalizeFieldConfig(this.adminizer, fldConfig, key, modelField);
163
167
  // Add new field to result set
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "./Adminizer";
1
+ import { Adminizer } from "./Adminizer.js";
2
2
  declare class MiddlewareManager {
3
3
  private readonly _adminizer;
4
4
  constructor(adminizer: Adminizer);
@@ -1,5 +1,5 @@
1
- import type { AccessRightsToken } from "../../interfaces/types";
2
- import type { Adminizer } from "../Adminizer";
1
+ import type { AccessRightsToken } from "../../interfaces/types.js";
2
+ import type { Adminizer } from "../Adminizer.js";
3
3
  export interface AccessRightsRecord {
4
4
  id: string;
5
5
  appName: string;
@@ -1,5 +1,5 @@
1
- import { AiAssistantMessage, AiAssistantModelInfo } from '../../interfaces/types';
2
- import { User } from '../../models/User';
1
+ import { AiAssistantMessage, AiAssistantModelInfo } from '../../interfaces/types.js';
2
+ import { User } from '../../models/User.js';
3
3
  /**
4
4
  * Base class for AI assistant models. App modules register access rights
5
5
  * and expose model metadata through this service.
@@ -1,7 +1,7 @@
1
- import { Adminizer } from '../Adminizer';
2
- import { AbstractAiModelService } from './AbstractAiModelService';
3
- import { AiAssistantMessage, AiAssistantModelInfo } from '../../interfaces/types';
4
- import { User } from '../../models/User';
1
+ import { Adminizer } from '../Adminizer.js';
2
+ import { AbstractAiModelService } from './AbstractAiModelService.js';
3
+ import { AiAssistantMessage, AiAssistantModelInfo } from '../../interfaces/types.js';
4
+ import { User } from '../../models/User.js';
5
5
  export declare class AiAssistantHandler {
6
6
  private readonly adminizer;
7
7
  private readonly models;
@@ -1,13 +1,13 @@
1
- import type { ActionType, AdminpanelConfig, AdminpanelIcon, ModelConfig } from "../../interfaces/adminpanelConfig";
2
- import type { AccessRightsToken, INotification, ModelResource } from "../../interfaces/types";
3
- import type { AbstractCatalog } from "../catalog/AbstractCatalog";
4
- import type { CatalogTemplateComponentResource } from "../catalog/CatalogTemplateComponentHandler";
5
- import type { AppModelAccess } from "../model/ModelHandler";
6
- import type { AbstractMediaManager } from "../media-manager/AbstractMediaManager";
7
- import type { Config, ControlType } from "../controls/Control";
8
- import type { User } from "../../models/User";
9
- import type { DataAccessor } from "../DataAccessor";
10
- import type { AbstractAiModelService } from "../ai-assistant/AbstractAiModelService";
1
+ import type { ActionType, AdminpanelConfig, AdminpanelIcon, ModelConfig } from "../../interfaces/adminpanelConfig.js";
2
+ import type { AccessRightsToken, INotification, ModelResource } from "../../interfaces/types.js";
3
+ import type { AbstractCatalog } from "../catalog/AbstractCatalog.js";
4
+ import type { CatalogTemplateComponentResource } from "../catalog/CatalogTemplateComponentHandler.js";
5
+ import type { AppModelAccess } from "../model/ModelHandler.js";
6
+ import type { AbstractMediaManager } from "../media-manager/AbstractMediaManager.js";
7
+ import type { Config, ControlType } from "../controls/Control.js";
8
+ import type { User } from "../../models/User.js";
9
+ import type { DataAccessor } from "../DataAccessor.js";
10
+ import type { AbstractAiModelService } from "../ai-assistant/AbstractAiModelService.js";
11
11
  export type AppDisposer = () => void | Promise<void>;
12
12
  export type AppEventName = string | symbol;
13
13
  export type AppEventHandler<TPayload = any> = (payload: TPayload, runtime: AppRuntime) => void | Promise<void>;
@@ -1,5 +1,5 @@
1
- import { Adminizer } from "../Adminizer";
2
- import { AbstractAdminizerApp, AppRuntime, AppRuntimeAppState } from "./AdminizerApp";
1
+ import { Adminizer } from "../Adminizer.js";
2
+ import { AbstractAdminizerApp, AppRuntime, AppRuntimeAppState } from "./AdminizerApp.js";
3
3
  export type AppState = AppRuntimeAppState;
4
4
  export declare class AppManager {
5
5
  private adminizer;
@@ -1,5 +1,5 @@
1
- import type { Adminizer } from "../Adminizer";
2
- import type { AppAsset } from "./AdminizerApp";
1
+ import type { Adminizer } from "../Adminizer.js";
2
+ import type { AppAsset } from "./AdminizerApp.js";
3
3
  interface AssetRecord {
4
4
  id: string;
5
5
  appName: string;
@@ -1,5 +1,5 @@
1
- import type { Adminizer } from "../Adminizer";
2
- import type { AppConfigPatch } from "./AdminizerApp";
1
+ import type { Adminizer } from "../Adminizer.js";
2
+ import type { AppConfigPatch } from "./AdminizerApp.js";
3
3
  export interface ConfigLayerRecord {
4
4
  id: string;
5
5
  appName: string;
@@ -1,5 +1,5 @@
1
- import type { Adminizer } from "../Adminizer";
2
- import type { AppController, AppControllerMethod } from "./AdminizerApp";
1
+ import type { Adminizer } from "../Adminizer.js";
2
+ import type { AppController, AppControllerMethod } from "./AdminizerApp.js";
3
3
  interface ControllerRecord {
4
4
  id: string;
5
5
  appName: string;
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../Adminizer";
1
+ import { Adminizer } from "../Adminizer.js";
2
2
  export interface CatalogStorageServices {
3
3
  }
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { AbstractCatalog } from "./AbstractCatalog";
1
+ import { AbstractCatalog } from "./AbstractCatalog.js";
2
2
  export interface CatalogRecord {
3
3
  id: string;
4
4
  appName: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType } from "./Control";
1
+ import { Control, ControlType } from "./Control.js";
2
2
  export declare class ControlsHandler {
3
3
  private controls;
4
4
  add(control: Control): void;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Config, Path } from "../Control";
1
+ import { Control, ControlType, Config, Path } from "../Control.js";
2
2
  export declare class MonacoEditor implements Control {
3
3
  readonly config: Config;
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Config, Path } from "../Control";
1
+ import { Control, ControlType, Config, Path } from "../Control.js";
2
2
  export declare class GeoEditor implements Control {
3
3
  readonly config: Config;
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Path, Config } from "../Control";
1
+ import { Control, ControlType, Path, Config } from "../Control.js";
2
2
  export declare class JsonEditor implements Control {
3
3
  readonly config: Record<string, string | string[] | object | number | boolean>;
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Path, Config } from "../Control";
1
+ import { Control, ControlType, Path, Config } from "../Control.js";
2
2
  export declare class ToastUiEditor implements Control {
3
3
  readonly config: Record<string, string | string[] | object | number | boolean>;
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Config, Path } from "../Control";
1
+ import { Control, ControlType, Config, Path } from "../Control.js";
2
2
  export declare class Handsontable implements Control {
3
3
  readonly config: Config;
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { Control, ControlType, Config, Path } from "../Control";
1
+ import { Control, ControlType, Config, Path } from "../Control.js";
2
2
  export declare class CKeditor implements Control {
3
3
  readonly name: string;
4
4
  readonly type: ControlType;
@@ -1,5 +1,5 @@
1
- import { Adminizer } from '../Adminizer';
2
- import { AbstractFeedbackHandler } from './AbstractFeedbackHandler';
1
+ import { Adminizer } from '../Adminizer.js';
2
+ import { AbstractFeedbackHandler } from './AbstractFeedbackHandler.js';
3
3
  export declare class FeedbackHandler {
4
4
  private handler;
5
5
  private adminizer;
@@ -1,4 +1,4 @@
1
- import { FilterCondition, FilterOperator } from '../../models/Filter';
1
+ import { FilterCondition, FilterOperator } from '../../models/Filter.js';
2
2
  /**
3
3
  * Security event types for logging suspicious filter attempts
4
4
  */
@@ -1,2 +1,2 @@
1
- export * from './CustomFilterHandler';
2
- export { default } from './CustomFilterHandler';
1
+ export * from './CustomFilterHandler.js';
2
+ export { default } from './CustomFilterHandler.js';
@@ -1,7 +1,7 @@
1
- import { Adminizer } from '../Adminizer';
2
- import { Filter } from '../../models/Filter';
3
- import { FilterColumn } from '../../models/FilterColumn';
4
- import { User } from '../../models/User';
1
+ import { Adminizer } from '../Adminizer.js';
2
+ import { Filter } from '../../models/Filter.js';
3
+ import { FilterColumn } from '../../models/FilterColumn.js';
4
+ import { User } from '../../models/User.js';
5
5
  /**
6
6
  * FilterService - manages filter operations
7
7
  *
@@ -1,6 +1,6 @@
1
- export { FilterService, default as FilterServiceDefault } from './FilterService';
2
- export { CustomFilterHandler, default as CustomFilterHandlerDefault } from './CustomFilterHandler';
3
- export { AbstractCustomFilter } from './CustomFilterHandler';
4
- export type { FilterCustomFieldCondition, RegisterOptions, FilterCustomFieldInputConfig, FilterCustomFieldInputDefinition, FilterCustomFieldInputType } from './CustomFilterHandler';
5
- export { ConditionValidator, default as ConditionValidatorDefault } from './ConditionValidator';
6
- export type { ValidationResult, ValidationError, FieldConfig, SecurityEvent, SecurityEventType } from './ConditionValidator';
1
+ export { FilterService, default as FilterServiceDefault } from './FilterService.js';
2
+ export { CustomFilterHandler, default as CustomFilterHandlerDefault } from './CustomFilterHandler.js';
3
+ export { AbstractCustomFilter } from './CustomFilterHandler.js';
4
+ export type { FilterCustomFieldCondition, RegisterOptions, FilterCustomFieldInputConfig, FilterCustomFieldInputDefinition, FilterCustomFieldInputType } from './CustomFilterHandler.js';
5
+ export { ConditionValidator, default as ConditionValidatorDefault } from './ConditionValidator.js';
6
+ export type { ValidationResult, ValidationError, FieldConfig, SecurityEvent, SecurityEventType } from './ConditionValidator.js';
@@ -1,9 +1,9 @@
1
- import { HistoryActions } from "../../models/HistoryActions";
2
- import { User } from "../../models/User";
3
- import { Adminizer } from "../Adminizer";
4
- import { Fields } from "../../helpers/fieldsHelper";
5
- import { ActionType } from "../../interfaces/adminpanelConfig";
6
- import { ModelResource } from "../../interfaces/types";
1
+ import { HistoryActions } from "../../models/HistoryActions.js";
2
+ import { User } from "../../models/User.js";
3
+ import { Adminizer } from "../Adminizer.js";
4
+ import { Fields } from "../../helpers/fieldsHelper.js";
5
+ import { ActionType } from "../../interfaces/adminpanelConfig.js";
6
+ import { ModelResource } from "../../interfaces/types.js";
7
7
  /**
8
8
  * Abstract base class for handling history operations in the AdminPanel.
9
9
  * Provides common methods and structure for retrieving, filtering, and formatting historical data.
@@ -1,7 +1,7 @@
1
- import { HistoryActions } from "../../models/HistoryActions";
2
- import { User } from "../../models/User";
3
- import { Adminizer } from "../Adminizer";
4
- import { AbstractHistoryAdapter } from "./AbstractHistoryAdapter";
1
+ import { HistoryActions } from "../../models/HistoryActions.js";
2
+ import { User } from "../../models/User.js";
3
+ import { Adminizer } from "../Adminizer.js";
4
+ import { AbstractHistoryAdapter } from "./AbstractHistoryAdapter.js";
5
5
  export declare class DefaultHistoryAdapter extends AbstractHistoryAdapter {
6
6
  id: string;
7
7
  model: string;
@@ -1,4 +1,4 @@
1
- import { AbstractHistoryAdapter } from "./AbstractHistoryAdapter";
1
+ import { AbstractHistoryAdapter } from "./AbstractHistoryAdapter.js";
2
2
  export declare class HistoryHandler {
3
3
  private adapters;
4
4
  add(adapter: AbstractHistoryAdapter): void;
@@ -1,10 +1,10 @@
1
- import { Fields } from '../../helpers/fieldsHelper';
2
- import { AbstractModel } from '../model/AbstractModel';
3
- import { DataAccessor } from '../DataAccessor';
4
- import { FilterOperator } from '../../models/Filter';
5
- import { CustomFilterHandler } from '../filters/CustomFilterHandler';
6
- import { ListQueryBuilderParams, ListQueryBuilderResult } from '../../interfaces/listQueryBuilder';
7
- import { CriteriaWhere } from '../../interfaces/queryCriteria';
1
+ import { Fields } from '../../helpers/fieldsHelper.js';
2
+ import { AbstractModel } from '../model/AbstractModel.js';
3
+ import { DataAccessor } from '../DataAccessor.js';
4
+ import { FilterOperator } from '../../models/Filter.js';
5
+ import { CustomFilterHandler } from '../filters/CustomFilterHandler.js';
6
+ import { ListQueryBuilderParams, ListQueryBuilderResult } from '../../interfaces/listQueryBuilder.js';
7
+ import { CriteriaWhere } from '../../interfaces/queryCriteria.js';
8
8
  /**
9
9
  * Security limits for filter conditions
10
10
  */
@@ -1,5 +1,5 @@
1
- import type { MediaManagerMetaAP } from "../../models/MediaManagerMetaAP";
2
- import { Adminizer } from "../Adminizer";
1
+ import type { MediaManagerMetaAP } from "../../models/MediaManagerMetaAP.js";
2
+ import { Adminizer } from "../Adminizer.js";
3
3
  export interface MediaManagerItem {
4
4
  id?: string;
5
5
  parent: string | null;
@@ -1,4 +1,4 @@
1
- import { AbstractMediaManager } from "./AbstractMediaManager";
1
+ import { AbstractMediaManager } from "./AbstractMediaManager.js";
2
2
  export declare class MediaManagerHandler {
3
3
  private managers;
4
4
  add(manager: AbstractMediaManager): void;
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../Adminizer";
1
+ import { Adminizer } from "../Adminizer.js";
2
2
  export declare class MediaManagerThumb {
3
3
  static getThumb(id: string, managerId: string, adminizer: Adminizer): Promise<NonSharedBuffer>;
4
4
  }
@@ -1,8 +1,8 @@
1
- import { Fields } from "../../../helpers/fieldsHelper";
2
- import { MediaManagerWidgetData, MediaManagerItem, MediaManagerWidgetItem, MediaManagerWidgetJSON } from "../AbstractMediaManager";
3
- import { BaseFieldConfig } from "../../../interfaces/adminpanelConfig";
4
- import { Adminizer } from "../../Adminizer";
5
- import type { AppRuntime } from "../../app-manager/AdminizerApp";
1
+ import { Fields } from "../../../helpers/fieldsHelper.js";
2
+ import { MediaManagerWidgetData, MediaManagerItem, MediaManagerWidgetItem, MediaManagerWidgetJSON } from "../AbstractMediaManager.js";
3
+ import { BaseFieldConfig } from "../../../interfaces/adminpanelConfig.js";
4
+ import { Adminizer } from "../../Adminizer.js";
5
+ import type { AppRuntime } from "../../app-manager/AdminizerApp.js";
6
6
  type PostParams = Record<string, string | number | boolean | object | string[] | number[] | null>;
7
7
  export declare function isMediaManagerFieldConfig(fieldConfig: BaseFieldConfig): boolean;
8
8
  export declare function normalizeMediaManagerWidgetData(value: PostParams[string] | undefined, prop: string): MediaManagerWidgetData[];
@@ -1,8 +1,13 @@
1
- import { DataAccessor } from "../DataAccessor";
2
- import { QueryCriteria } from "../../interfaces/queryCriteria";
3
- import { InternalModelRepository } from "../../interfaces/internalModelAccess";
1
+ import { DataAccessor } from "../DataAccessor.js";
2
+ import { QueryCriteria } from "../../interfaces/queryCriteria.js";
3
+ import { InternalModelRepository } from "../../interfaces/internalModelAccess.js";
4
4
  export interface Attribute {
5
- type: 'association' | 'association-many' | 'number' | 'json' | 'string' | 'boolean' | 'ref';
5
+ /**
6
+ * `date` covers every temporal column (date, time, timestamp). It is deliberately
7
+ * separate from `string`: dates must not take part in LIKE search, and the UI
8
+ * renders them with date controls.
9
+ */
10
+ type: 'association' | 'association-many' | 'number' | 'json' | 'string' | 'boolean' | 'date' | 'ref';
6
11
  required?: boolean;
7
12
  unique?: boolean;
8
13
  defaultsTo?: any;