adminizer 4.3.0 → 4.3.2

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 (74) hide show
  1. package/controllers/add.js +7 -7
  2. package/controllers/addGroup.js +3 -3
  3. package/controllers/addUser.js +3 -3
  4. package/controllers/catalog/Catalog.js +2 -2
  5. package/controllers/ckeditorUpload.js +1 -1
  6. package/controllers/edit.js +7 -7
  7. package/controllers/editGroup.js +3 -3
  8. package/controllers/editUser.js +3 -3
  9. package/controllers/form.js +4 -4
  10. package/controllers/initUser.js +2 -2
  11. package/controllers/list.js +5 -5
  12. package/controllers/login.js +4 -4
  13. package/controllers/media-manager/ThumbController.js +1 -1
  14. package/controllers/media-manager/mediaManagerAdapter.js +1 -1
  15. package/controllers/media-manager/mediaManagerApi.js +1 -1
  16. package/controllers/navigation/edit.js +2 -2
  17. package/controllers/notifications/NotificationController.js +1 -1
  18. package/controllers/register.js +1 -1
  19. package/controllers/remove.js +4 -4
  20. package/controllers/view.js +8 -8
  21. package/helpers/accessRightsHelper.js +1 -1
  22. package/helpers/controllerHelper.js +1 -1
  23. package/helpers/fieldsHelper.js +3 -3
  24. package/helpers/formHelper.js +1 -1
  25. package/helpers/inertiaAddHelper.js +2 -2
  26. package/helpers/inertiaFromHelper.js +1 -1
  27. package/helpers/inertiaListHelper.js +1 -1
  28. package/helpers/menuHelper.js +1 -1
  29. package/helpers/translationHelper.js +2 -2
  30. package/index.d.ts +1 -1
  31. package/index.js +32 -32
  32. package/lib/Adminizer.js +28 -28
  33. package/lib/DataAccessor.js +3 -3
  34. package/lib/I18n.js +1 -1
  35. package/lib/PolicyManager.js +1 -1
  36. package/lib/catalog/Navigation.js +2 -2
  37. package/lib/controls/codeEditor/MonacoEditor.js +1 -1
  38. package/lib/controls/geojsoneditor/GeoEditor.js +1 -1
  39. package/lib/controls/jsoneditor/JsonEditor.js +1 -1
  40. package/lib/controls/markdown/ToastUiEditor.js +1 -1
  41. package/lib/controls/table/Handsontable.js +1 -1
  42. package/lib/controls/wysiwyg/CKeditor.js +1 -1
  43. package/lib/media-manager/DefaultMediaManager.js +3 -3
  44. package/lib/media-manager/Items.js +2 -2
  45. package/lib/media-manager/MediaManagerHandler.js +1 -1
  46. package/lib/model/AbstractModel.js +1 -1
  47. package/lib/model/ModelHandler.js +1 -1
  48. package/lib/model/adapter/sequelize.js +1 -1
  49. package/lib/model/adapter/waterline.js +1 -1
  50. package/lib/notifications/AbstractNotificationService.js +1 -1
  51. package/lib/notifications/GeneralNotificationService.js +2 -2
  52. package/lib/notifications/NotificationHandler.js +1 -1
  53. package/lib/notifications/SystemNotificationService.js +2 -2
  54. package/lib/requestProcessor.js +2 -2
  55. package/lib/widgets/abstractAction.js +1 -1
  56. package/lib/widgets/abstractInfo.js +1 -1
  57. package/lib/widgets/abstractLink.js +1 -1
  58. package/lib/widgets/abstractSwitch.js +1 -1
  59. package/migrations/index.js +1 -1
  60. package/migrations/umzugExports.js +1 -1
  61. package/package.json +2 -2
  62. package/system/Router.js +21 -21
  63. package/system/bindAuthorization.js +4 -4
  64. package/system/bindControls.js +6 -6
  65. package/system/bindDashboardWidgets.js +1 -1
  66. package/system/bindForms.js +1 -1
  67. package/system/bindInertia.js +3 -3
  68. package/system/bindMediaManager.js +1 -1
  69. package/system/bindModels.js +1 -1
  70. package/system/bindNavigation.js +1 -1
  71. package/system/bindNotifications.js +3 -3
  72. package/system/bindReqFunctions.js +3 -3
  73. package/system/bindTranslations.js +2 -2
  74. package/system/defaults.js +2 -2
@@ -1,10 +1,10 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { RequestProcessor } from "../lib/requestProcessor";
3
- import { FieldsHelper } from "../helpers/fieldsHelper";
4
- import { saveRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper";
5
- import { DataAccessor } from "../lib/DataAccessor";
6
- import { Adminizer } from "../lib/Adminizer";
7
- import inertiaAddHelper from "../helpers/inertiaAddHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { RequestProcessor } from "../lib/requestProcessor.js";
3
+ import { FieldsHelper } from "../helpers/fieldsHelper.js";
4
+ import { saveRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper.js";
5
+ import { DataAccessor } from "../lib/DataAccessor.js";
6
+ import { Adminizer } from "../lib/Adminizer.js";
7
+ import inertiaAddHelper from "../helpers/inertiaAddHelper.js";
8
8
  export default async function add(req, res) {
9
9
  let entity = ControllerHelper.findEntityObject(req);
10
10
  if (!entity.model) {
@@ -1,6 +1,6 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { Adminizer } from "../lib/Adminizer";
3
- import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
+ import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper.js";
4
4
  export default async function addGroup(req, res) {
5
5
  let entity = ControllerHelper.findEntityObject(req);
6
6
  if (req.adminizer.config.auth.enable) {
@@ -1,7 +1,7 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { Adminizer } from "../lib/Adminizer";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
3
  import { generate } from 'password-hash';
4
- import { inertiaUserHelper } from "../helpers/inertiaUserHelper";
4
+ import { inertiaUserHelper } from "../helpers/inertiaUserHelper.js";
5
5
  export default async function (req, res) {
6
6
  let entity = ControllerHelper.findEntityObject(req);
7
7
  if (req.adminizer.config.auth.enable) {
@@ -1,5 +1,5 @@
1
- import { FrontendCatalog, FrontendCatalogUtils } from "./FrontendCatalogAdapter";
2
- import { Adminizer } from "../../lib/Adminizer";
1
+ import { FrontendCatalog, FrontendCatalogUtils } from "./FrontendCatalogAdapter.js";
2
+ import { Adminizer } from "../../lib/Adminizer.js";
3
3
  export async function catalogController(req, res) {
4
4
  const slug = req.params.slug;
5
5
  let id = req.params.id ? req.params.id : '';
@@ -1,4 +1,4 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
2
  import * as fs from "fs";
3
3
  import multer from "multer";
4
4
  export async function ckEditorUpload(req, res) {
@@ -1,10 +1,10 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { RequestProcessor } from "../lib/requestProcessor";
3
- import { FieldsHelper } from "../helpers/fieldsHelper";
4
- import { getRelationsMediaManager, saveRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper";
5
- import { DataAccessor } from "../lib/DataAccessor";
6
- import { Adminizer } from "../lib/Adminizer";
7
- import inertiaAddHelper from "../helpers/inertiaAddHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { RequestProcessor } from "../lib/requestProcessor.js";
3
+ import { FieldsHelper } from "../helpers/fieldsHelper.js";
4
+ import { getRelationsMediaManager, saveRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper.js";
5
+ import { DataAccessor } from "../lib/DataAccessor.js";
6
+ import { Adminizer } from "../lib/Adminizer.js";
7
+ import inertiaAddHelper from "../helpers/inertiaAddHelper.js";
8
8
  export default async function edit(req, res) {
9
9
  //Check id
10
10
  if (!req.params.id) {
@@ -1,6 +1,6 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { Adminizer } from "../lib/Adminizer";
3
- import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
+ import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper.js";
4
4
  export default async function editGroup(req, res) {
5
5
  let entity = ControllerHelper.findEntityObject(req);
6
6
  if (req.adminizer.config.auth.enable) {
@@ -1,7 +1,7 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { Adminizer } from "../lib/Adminizer";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
3
  import { generate } from "password-hash";
4
- import { inertiaUserHelper } from "../helpers/inertiaUserHelper";
4
+ import { inertiaUserHelper } from "../helpers/inertiaUserHelper.js";
5
5
  export default async function (req, res) {
6
6
  let entity = ControllerHelper.findEntityObject(req);
7
7
  if (req.adminizer.config.auth.enable) {
@@ -1,7 +1,7 @@
1
- import { FormHelper } from "../helpers/formHelper";
2
- import { Adminizer } from "../lib/Adminizer";
3
- import inertiaFormHelper from "../helpers/inertiaFromHelper";
4
- import { getRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper";
1
+ import { FormHelper } from "../helpers/formHelper.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
+ import inertiaFormHelper from "../helpers/inertiaFromHelper.js";
4
+ import { getRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper.js";
5
5
  export default async function form(req, res) {
6
6
  let slug = req.params.slug;
7
7
  // Check slug
@@ -1,6 +1,6 @@
1
- import { Adminizer } from "../lib/Adminizer";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
2
  import { generate } from "password-hash";
3
- import { inertiaInitUserHelper } from "../helpers/inertiaAutHelper";
3
+ import { inertiaInitUserHelper } from "../helpers/inertiaAutHelper.js";
4
4
  export default async function initUser(req, res) {
5
5
  if (!req.adminizer.config.auth.enable) {
6
6
  return res.redirect(`${req.adminizer.config.routePrefix}/`);
@@ -1,8 +1,8 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { DataAccessor } from "../lib/DataAccessor";
3
- import { NodeTable } from "../lib/datatable/NodeTable";
4
- import { Adminizer } from "../lib/Adminizer";
5
- import { inertiaListHelper } from "../helpers/inertiaListHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { DataAccessor } from "../lib/DataAccessor.js";
3
+ import { NodeTable } from "../lib/datatable/NodeTable.js";
4
+ import { Adminizer } from "../lib/Adminizer.js";
5
+ import { inertiaListHelper } from "../helpers/inertiaListHelper.js";
6
6
  export default async function list(req, res) {
7
7
  let entity = ControllerHelper.findEntityObject(req);
8
8
  if (!entity.model) {
@@ -1,8 +1,8 @@
1
- import { POWCaptcha } from "../lib/POWCaptcha";
1
+ import { POWCaptcha } from "../lib/POWCaptcha.js";
2
2
  import passwordHash from "password-hash";
3
- import { inertiaLoginHelper } from "../helpers/inertiaAutHelper";
4
- import { Adminizer } from "../lib/Adminizer";
5
- import { signUser } from "../lib/helper/jwt";
3
+ import { inertiaLoginHelper } from "../helpers/inertiaAutHelper.js";
4
+ import { Adminizer } from "../lib/Adminizer.js";
5
+ import { signUser } from "../lib/helper/jwt.js";
6
6
  import { serialize } from "cookie";
7
7
  export default async function login(req, res) {
8
8
  const powCaptcha = new POWCaptcha();
@@ -1,4 +1,4 @@
1
- import { MediaManagerThumb } from "../../lib/media-manager/Thumb";
1
+ import { MediaManagerThumb } from "../../lib/media-manager/Thumb.js";
2
2
  export async function thumbController(req, res) {
3
3
  const method = req.method.toUpperCase();
4
4
  const id = req.query.id;
@@ -1,4 +1,4 @@
1
- import { randomFileName } from "../../lib/media-manager/helpers/MediaManagerHelper";
1
+ import { randomFileName } from "../../lib/media-manager/helpers/MediaManagerHelper.js";
2
2
  import fs from "fs";
3
3
  import multer from 'multer';
4
4
  export class MediaManagerAdapter {
@@ -1,4 +1,4 @@
1
- import { MediaManagerAdapter } from "./mediaManagerAdapter";
1
+ import { MediaManagerAdapter } from "./mediaManagerAdapter.js";
2
2
  export async function mediaManagerController(req, res) {
3
3
  const method = req.method.toUpperCase();
4
4
  let id = req.params.id ? req.params.id : '';
@@ -1,5 +1,5 @@
1
- import { ControllerHelper } from "../../helpers/controllerHelper";
2
- import { DataAccessor } from "../../lib/DataAccessor";
1
+ import { ControllerHelper } from "../../helpers/controllerHelper.js";
2
+ import { DataAccessor } from "../../lib/DataAccessor.js";
3
3
  export default async function edit(req, res) {
4
4
  if (req.adminizer.config.auth.enable) {
5
5
  if (!req.user) {
@@ -1,4 +1,4 @@
1
- import { Adminizer } from '../../lib/Adminizer';
1
+ import { Adminizer } from '../../lib/Adminizer.js';
2
2
  export class NotificationController {
3
3
  static async search(req, res) {
4
4
  NotificationController.checkNotifPermission(req, res);
@@ -1,5 +1,5 @@
1
1
  import { generate } from "password-hash";
2
- import { inertiaRegisterHelper } from "../helpers/inertiaAutHelper";
2
+ import { inertiaRegisterHelper } from "../helpers/inertiaAutHelper.js";
3
3
  export default async function register(req, res) {
4
4
  if (!req.adminizer.config.auth.enable || req.adminizer.config.registration?.enable !== true) {
5
5
  return res.redirect(`${req.adminizer.config.routePrefix}/`);
@@ -1,7 +1,7 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { deleteRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper";
3
- import { DataAccessor } from "../lib/DataAccessor";
4
- import { Adminizer } from "../lib/Adminizer";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { deleteRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper.js";
3
+ import { DataAccessor } from "../lib/DataAccessor.js";
4
+ import { Adminizer } from "../lib/Adminizer.js";
5
5
  export default async function remove(req, res) {
6
6
  // Checking id of the record
7
7
  if (!req.params.id) {
@@ -1,11 +1,11 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { DataAccessor } from "../lib/DataAccessor";
3
- import { Adminizer } from "../lib/Adminizer";
4
- import { inertiaUserHelper } from "../helpers/inertiaUserHelper";
5
- import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper";
6
- import inertiaAddHelper from "../helpers/inertiaAddHelper";
7
- import { FieldsHelper } from "../helpers/fieldsHelper";
8
- import { getRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { DataAccessor } from "../lib/DataAccessor.js";
3
+ import { Adminizer } from "../lib/Adminizer.js";
4
+ import { inertiaUserHelper } from "../helpers/inertiaUserHelper.js";
5
+ import { inertiaGroupHelper } from "../helpers/inertiaGroupHelper.js";
6
+ import inertiaAddHelper from "../helpers/inertiaAddHelper.js";
7
+ import { FieldsHelper } from "../helpers/fieldsHelper.js";
8
+ import { getRelationsMediaManager } from "../lib/media-manager/helpers/MediaManagerHelper.js";
9
9
  export default async function view(req, res) {
10
10
  // Check id
11
11
  if (!req.params.id) {
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../lib/Adminizer";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
2
  export class AccessRightsHelper {
3
3
  _tokens = [];
4
4
  adminizer;
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../lib/Adminizer";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
2
  export class ControllerHelper {
3
3
  /**
4
4
  * Default configuration for entity
@@ -1,6 +1,6 @@
1
- import { DataAccessor } from "../lib/DataAccessor";
2
- import { Adminizer } from "../lib/Adminizer";
3
- import { isObject } from "./JsUtils";
1
+ import { DataAccessor } from "../lib/DataAccessor.js";
2
+ import { Adminizer } from "../lib/Adminizer.js";
3
+ import { isObject } from "./JsUtils.js";
4
4
  export class FieldsHelper {
5
5
  /**
6
6
  * Load list of records for all associations into `fields`
@@ -1,6 +1,6 @@
1
1
  import * as path from "path";
2
2
  import * as fs from "fs";
3
- import { Adminizer } from "../lib/Adminizer";
3
+ import { Adminizer } from "../lib/Adminizer.js";
4
4
  export class FormHelper {
5
5
  static get(adminizer, slug) {
6
6
  if (adminizer.config.forms) {
@@ -1,6 +1,6 @@
1
- import inertiaActionsHelper from "./inertiaActionsHelper";
1
+ import inertiaActionsHelper from "./inertiaActionsHelper.js";
2
2
  import chalk from "chalk";
3
- import { isObject } from "./JsUtils";
3
+ import { isObject } from "./JsUtils.js";
4
4
  export default function inertiaAddHelper(req, entity, fields, record, view = false) {
5
5
  const actionType = 'add';
6
6
  let props = {
@@ -1,4 +1,4 @@
1
- import { inputText, setSelectMany, getControlsOptions } from "./inertiaAddHelper";
1
+ import { inputText, setSelectMany, getControlsOptions } from "./inertiaAddHelper.js";
2
2
  export default function inertiaFormHelper(req, postLink, formData) {
3
3
  let props = {
4
4
  fields: [],
@@ -1,4 +1,4 @@
1
- import inertiaActionsHelper from "./inertiaActionsHelper";
1
+ import inertiaActionsHelper from "./inertiaActionsHelper.js";
2
2
  export function inertiaListHelper(entity, req, fields) {
3
3
  const actionType = 'list';
4
4
  let props = {
@@ -1,4 +1,4 @@
1
- import { GroupsAccessRightsHelper } from "./accessRightsHelper";
1
+ import { GroupsAccessRightsHelper } from "./accessRightsHelper.js";
2
2
  export class MenuHelper {
3
3
  config;
4
4
  constructor(config) {
@@ -1,7 +1,7 @@
1
1
  import * as path from "path";
2
2
  import * as fs from "fs";
3
- import { Adminizer } from "../lib/Adminizer";
4
- import { I18n } from "../lib/I18n";
3
+ import { Adminizer } from "../lib/Adminizer.js";
4
+ import { I18n } from "../lib/I18n.js";
5
5
  export class TranslationHelper {
6
6
  static loadTranslations(adminizer, translationsPath) {
7
7
  let translationsConfig = adminizer.config.translation;
package/index.d.ts CHANGED
@@ -25,7 +25,7 @@ export * from "./models/MediaManagerAP";
25
25
  export * from "./models/MediaManagerAssociationsAP";
26
26
  export * from "./models/MediaManagerMetaAP";
27
27
  export * from "./models/NavigationAP";
28
- export * from "./migrations";
28
+ export * from "./migrations/index";
29
29
  export * from "./system/bindNavigation";
30
30
  export * from "./lib/helper/jwt";
31
31
  export * from "./lib/notifications/AbstractNotificationService";
package/index.js CHANGED
@@ -1,32 +1,32 @@
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/Navigation";
12
- export * from "./lib/catalog/CatalogHandler";
13
- export * from "./lib/media-manager/MediaManagerHandler";
14
- export * from "./interfaces/adminpanelConfig";
15
- export * from "./interfaces/types";
16
- export * from "./interfaces/MaaterialIcons";
17
- export * from "./lib/model/AbstractModel";
18
- export * from "./lib/model/adapter/waterline";
19
- export * from "./lib/model/adapter/sequelize";
20
- export * from "./lib/media-manager/AbstractMediaManager";
21
- export * from "./lib/Adminizer";
22
- export * from "./models/GroupAP";
23
- export * from "./models/UserAP";
24
- export * from "./models/MediaManagerAP";
25
- export * from "./models/MediaManagerAssociationsAP";
26
- export * from "./models/MediaManagerMetaAP";
27
- export * from "./models/NavigationAP";
28
- export * from "./migrations";
29
- export * from "./system/bindNavigation";
30
- export * from "./lib/helper/jwt";
31
- export * from "./lib/notifications/AbstractNotificationService";
32
- export * from "./lib/POWCaptcha";
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/Navigation.js";
12
+ export * from "./lib/catalog/CatalogHandler.js";
13
+ export * from "./lib/media-manager/MediaManagerHandler.js";
14
+ export * from "./interfaces/adminpanelConfig.js";
15
+ export * from "./interfaces/types.js";
16
+ export * from "./interfaces/MaaterialIcons.js";
17
+ export * from "./lib/model/AbstractModel.js";
18
+ export * from "./lib/model/adapter/waterline.js";
19
+ export * from "./lib/model/adapter/sequelize.js";
20
+ export * from "./lib/media-manager/AbstractMediaManager.js";
21
+ export * from "./lib/Adminizer.js";
22
+ export * from "./models/GroupAP.js";
23
+ export * from "./models/UserAP.js";
24
+ export * from "./models/MediaManagerAP.js";
25
+ export * from "./models/MediaManagerAssociationsAP.js";
26
+ export * from "./models/MediaManagerMetaAP.js";
27
+ export * from "./models/NavigationAP.js";
28
+ export * from "./migrations/index.js";
29
+ export * from "./system/bindNavigation.js";
30
+ export * from "./lib/helper/jwt.js";
31
+ export * from "./lib/notifications/AbstractNotificationService.js";
32
+ export * from "./lib/POWCaptcha.js";
package/lib/Adminizer.js CHANGED
@@ -3,35 +3,35 @@ import cookieParser from 'cookie-parser';
3
3
  import * as path from "path";
4
4
  import winston from "winston";
5
5
  import EventEmitter from 'events';
6
- import PolicyManager from "./PolicyManager";
7
- import Router from "./../system/Router";
8
- import bindAssets from "../system/bindAssets";
9
- import bindDev from "../system/bindDev";
10
- import bindDashboardWidgets from "../system/bindDashboardWidgets";
11
- import { bindNavigation } from "../system/bindNavigation";
12
- import bindMediaManager from "../system/bindMediaManager";
13
- import bindAccessRights from "../system/bindAccessRights";
14
- import bindAuthorization from "../system/bindAuthorization";
15
- import bindModels from "../system/bindModels";
16
- import bindForms from "../system/bindForms";
17
- import bindTranslations from "../system/bindTranslations";
18
- import { ModelHandler } from "./model/ModelHandler";
19
- import { WidgetHandler } from "./widgets/widgetHandler";
20
- import { AccessRightsHelper } from "../helpers/accessRightsHelper";
21
- import bindReqFunctions from "../system/bindReqFunctions";
22
- import { ConfigHelper } from "../helpers/configHelper";
23
- import { I18n } from "./I18n";
24
- import { getDefaultConfig } from "../system/defaults";
25
- import bindExpressUtils from "../system/bindExpressUtils";
26
- import { bindInertia } from "../system/bindInertia";
27
- import { MenuHelper } from "../helpers/menuHelper";
28
- import { bindControls } from "../system/bindControls";
29
- import { ControlsHandler } from "./controls/ControlsHandler";
30
- import { CatalogHandler } from "./catalog/CatalogHandler";
6
+ import PolicyManager from "./PolicyManager.js";
7
+ import Router from "./../system/Router.js";
8
+ import bindAssets from "../system/bindAssets.js";
9
+ import bindDev from "../system/bindDev.js";
10
+ import bindDashboardWidgets from "../system/bindDashboardWidgets.js";
11
+ import { bindNavigation } from "../system/bindNavigation.js";
12
+ import bindMediaManager from "../system/bindMediaManager.js";
13
+ import bindAccessRights from "../system/bindAccessRights.js";
14
+ import bindAuthorization from "../system/bindAuthorization.js";
15
+ import bindModels from "../system/bindModels.js";
16
+ import bindForms from "../system/bindForms.js";
17
+ import bindTranslations from "../system/bindTranslations.js";
18
+ import { ModelHandler } from "./model/ModelHandler.js";
19
+ import { WidgetHandler } from "./widgets/widgetHandler.js";
20
+ import { AccessRightsHelper } from "../helpers/accessRightsHelper.js";
21
+ import bindReqFunctions from "../system/bindReqFunctions.js";
22
+ import { ConfigHelper } from "../helpers/configHelper.js";
23
+ import { I18n } from "./I18n.js";
24
+ import { getDefaultConfig } from "../system/defaults.js";
25
+ import bindExpressUtils from "../system/bindExpressUtils.js";
26
+ import { bindInertia } from "../system/bindInertia.js";
27
+ import { MenuHelper } from "../helpers/menuHelper.js";
28
+ import { bindControls } from "../system/bindControls.js";
29
+ import { ControlsHandler } from "./controls/ControlsHandler.js";
30
+ import { CatalogHandler } from "./catalog/CatalogHandler.js";
31
31
  import { v4 as uuid } from "uuid";
32
- import { bindNotifications } from "../system/bindNotifications";
33
- import { MediaManagerHandler } from "./media-manager/MediaManagerHandler";
34
- import { bindCors } from "../system/bindCors";
32
+ import { bindNotifications } from "../system/bindNotifications.js";
33
+ import { MediaManagerHandler } from "./media-manager/MediaManagerHandler.js";
34
+ import { bindCors } from "../system/bindCors.js";
35
35
  export class Adminizer {
36
36
  // Preconfigures
37
37
  /**
@@ -1,6 +1,6 @@
1
- import { ControllerHelper } from "../helpers/controllerHelper";
2
- import { Adminizer } from "./Adminizer";
3
- import { isObject } from "../helpers/JsUtils";
1
+ import { ControllerHelper } from "../helpers/controllerHelper.js";
2
+ import { Adminizer } from "./Adminizer.js";
3
+ import { isObject } from "../helpers/JsUtils.js";
4
4
  export class DataAccessor {
5
5
  adminizer;
6
6
  user;
package/lib/I18n.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import fs from "fs";
2
2
  import path from "path";
3
3
  import { vsprintf } from "sprintf-js";
4
- import { Adminizer } from "./Adminizer";
4
+ import { Adminizer } from "./Adminizer.js";
5
5
  export class I18n {
6
6
  devMode;
7
7
  static locales = {};
@@ -1,6 +1,6 @@
1
1
  import * as fs from "fs";
2
2
  import * as path from "path";
3
- import { Adminizer } from "./Adminizer";
3
+ import { Adminizer } from "./Adminizer.js";
4
4
  import { pathToFileURL } from "url";
5
5
  class PolicyManager {
6
6
  _adminizer;
@@ -1,6 +1,6 @@
1
- import { AbstractCatalog, AbstractGroup, AbstractItem } from "./AbstractCatalog";
1
+ import { AbstractCatalog, AbstractGroup, AbstractItem } from "./AbstractCatalog.js";
2
2
  import { v4 as uuid } from "uuid";
3
- import { Adminizer } from "../Adminizer";
3
+ import { Adminizer } from "../Adminizer.js";
4
4
  export class StorageService {
5
5
  storageMap = new Map();
6
6
  id;
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class MonacoEditor extends AbstractControls {
3
3
  config = {
4
4
  language: "javascript",
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class GeoEditor extends AbstractControls {
3
3
  config = {
4
4
  mode: "all"
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class JsonEditor extends AbstractControls {
3
3
  config = {};
4
4
  name = 'jsoneditor';
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class ToastUiEditor extends AbstractControls {
3
3
  config = {
4
4
  hideModeSwitch: true,
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class Handsontable extends AbstractControls {
3
3
  config = {
4
4
  rowHeaders: true,
@@ -1,4 +1,4 @@
1
- import { AbstractControls } from "../AbstractControls";
1
+ import { AbstractControls } from "../AbstractControls.js";
2
2
  export class CKeditor extends AbstractControls {
3
3
  name = 'ckeditor';
4
4
  type = 'wysiwyg';
@@ -1,6 +1,6 @@
1
- import { AbstractMediaManager, } from "./AbstractMediaManager";
2
- import { populateVariants } from "./helpers/MediaManagerHelper";
3
- import { ApplicationItem, ImageItem, TextItem, VideoItem } from "./Items";
1
+ import { AbstractMediaManager, } from "./AbstractMediaManager.js";
2
+ import { populateVariants } from "./helpers/MediaManagerHelper.js";
3
+ import { ApplicationItem, ImageItem, TextItem, VideoItem } from "./Items.js";
4
4
  export class DefaultMediaManager extends AbstractMediaManager {
5
5
  itemTypes = [];
6
6
  model = "mediamanagerap";
@@ -1,5 +1,5 @@
1
- import { File } from "./AbstractMediaManager";
2
- import { populateVariants, randomFileName } from "./helpers/MediaManagerHelper";
1
+ import { File } from "./AbstractMediaManager.js";
2
+ import { populateVariants, randomFileName } from "./helpers/MediaManagerHelper.js";
3
3
  import sizeOf from "image-size";
4
4
  import sharp from "sharp";
5
5
  import * as fs from 'fs';
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../Adminizer";
1
+ import { Adminizer } from "../Adminizer.js";
2
2
  export class MediaManagerHandler {
3
3
  managers = [];
4
4
  add(manager) {
@@ -1,4 +1,4 @@
1
- import { formatChanges, sanitizeForDiff } from "../../helpers/diffHelpers";
1
+ import { formatChanges, sanitizeForDiff } from "../../helpers/diffHelpers.js";
2
2
  import { diff } from "deep-object-diff";
3
3
  export class AbstractModel {
4
4
  modelname;
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../Adminizer";
1
+ import { Adminizer } from "../Adminizer.js";
2
2
  export class ModelHandler {
3
3
  models = new Map();
4
4
  add(modelName, modelInstance) {
@@ -1,5 +1,5 @@
1
1
  import { DataTypes, Op } from "sequelize";
2
- import { AbstractAdapter, AbstractModel } from "../AbstractModel";
2
+ import { AbstractAdapter, AbstractModel } from "../AbstractModel.js";
3
3
  import path from "path";
4
4
  import fs from "fs";
5
5
  import { pathToFileURL } from "url";
@@ -1,4 +1,4 @@
1
- import { AbstractAdapter, AbstractModel } from "../AbstractModel";
1
+ import { AbstractAdapter, AbstractModel } from "../AbstractModel.js";
2
2
  import { v4 as uuid } from "uuid";
3
3
  import Waterline from "waterline";
4
4
  import path from "node:path";
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from 'events';
2
- import { Adminizer } from '../Adminizer';
2
+ import { Adminizer } from '../Adminizer.js';
3
3
  /**
4
4
  * ░█████╗░██████╗░░██████╗████████╗██████╗░░█████╗░░█████╗░████████╗
5
5
  * ██╔══██╗██╔══██╗██╔════╝╚══██╔══╝██╔══██╗██╔══██╗██╔══██╗╚══██╔══╝
@@ -1,5 +1,5 @@
1
- import { AbstractNotificationService } from './AbstractNotificationService';
2
- import { Adminizer } from '../Adminizer';
1
+ import { AbstractNotificationService } from './AbstractNotificationService.js';
2
+ import { Adminizer } from '../Adminizer.js';
3
3
  export class GeneralNotificationService extends AbstractNotificationService {
4
4
  notificationClass = 'general';
5
5
  icon = 'info';
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from 'events';
2
- import { Adminizer } from '../Adminizer';
2
+ import { Adminizer } from '../Adminizer.js';
3
3
  export class NotificationHandler extends EventEmitter {
4
4
  services = new Map();
5
5
  constructor() {
@@ -1,5 +1,5 @@
1
- import { AbstractNotificationService } from './AbstractNotificationService';
2
- import { Adminizer } from '../Adminizer';
1
+ import { AbstractNotificationService } from './AbstractNotificationService.js';
2
+ import { Adminizer } from '../Adminizer.js';
3
3
  export class SystemNotificationService extends AbstractNotificationService {
4
4
  notificationClass = 'system';
5
5
  icon = 'settings';
@@ -1,5 +1,5 @@
1
- import { isObject } from "../helpers/JsUtils";
2
- import { Adminizer } from "./Adminizer";
1
+ import { isObject } from "../helpers/JsUtils.js";
2
+ import { Adminizer } from "./Adminizer.js";
3
3
  /**
4
4
  * Default helper that will contain all methods
5
5
  * that should help with processing request details and bind
@@ -1,4 +1,4 @@
1
- import { BaseWidget } from "./abstractWidgetBase";
1
+ import { BaseWidget } from "./abstractWidgetBase.js";
2
2
  export class ActionBase extends BaseWidget {
3
3
  widgetType = "action";
4
4
  }
@@ -1,4 +1,4 @@
1
- import { BaseWidget } from "./abstractWidgetBase";
1
+ import { BaseWidget } from "./abstractWidgetBase.js";
2
2
  export class InfoBase extends BaseWidget {
3
3
  widgetType = "info";
4
4
  /** Widget background css color */
@@ -1,4 +1,4 @@
1
- import { BaseWidget } from "./abstractWidgetBase";
1
+ import { BaseWidget } from "./abstractWidgetBase.js";
2
2
  export class LinkBase extends BaseWidget {
3
3
  widgetType = "link";
4
4
  }
@@ -1,4 +1,4 @@
1
- import { BaseWidget } from "./abstractWidgetBase";
1
+ import { BaseWidget } from "./abstractWidgetBase.js";
2
2
  export class SwitchBase extends BaseWidget {
3
3
  widgetType = "switcher";
4
4
  }
@@ -1,4 +1,4 @@
1
- import { umzugExports } from "./umzugExports";
1
+ import { umzugExports } from "./umzugExports.js";
2
2
  export const migrations = {
3
3
  umzug: umzugExports
4
4
  };
@@ -1,4 +1,4 @@
1
- import { up as up0001, down as down0001 } from "./umzug/0001";
1
+ import { up as up0001, down as down0001 } from "./umzug/0001.js";
2
2
  export const umzugExports = [
3
3
  {
4
4
  name: "0001",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "adminizer",
3
3
  "type": "module",
4
- "version": "4.3.0",
4
+ "version": "4.3.2",
5
5
  "main": "index.js",
6
6
  "exports": {
7
7
  ".": "./index.js",
@@ -18,7 +18,7 @@
18
18
  "dev:waterline:no-seed": "cross-env VITE_ENV=dev NO_SEED_DATA=true ORM=waterline tsx watch --tsconfig ./fixture/tsconfig.json ./fixture/index.ts",
19
19
  "dev:cors": "cross-env VITE_ENV=dev NO_SEED_DATA=true ORM=waterline FRONTEND_URL=http://localhost:8080 tsx watch --tsconfig ./fixture/tsconfig.json ./fixture/index.ts",
20
20
  "build:assets": "vite build",
21
- "compile:backend": "tsc -p src/tsconfig.json",
21
+ "compile:backend": "tsc -p src/tsconfig.json && node ./scripts/appendJsExtension.js",
22
22
  "compile:ui": "tsc -p tsconfig.ui.json",
23
23
  "watch:backend": "tsc -w -p src/tsconfig.json",
24
24
  "copy:backend": "node copy-backend.js",
package/system/Router.js CHANGED
@@ -1,24 +1,24 @@
1
- import _dashboard from "../controllers/dashboard";
2
- import _welcome from "../controllers/welcome";
3
- import _list from "../controllers/list";
4
- import _edit from "../controllers/edit";
5
- import _add from "../controllers/add";
6
- import _view from "../controllers/view";
7
- import _remove from "../controllers/remove";
8
- import { ckEditorUpload } from "../controllers/ckeditorUpload";
9
- import _form from "../controllers/form";
10
- import { widgetSwitchController } from "../controllers/widgets/switch";
11
- import _getAllWidgets from "../controllers/getAllWidgets";
12
- import _widgetsDB from "../controllers/widgetsDB";
13
- import { widgetInfoController } from '../controllers/widgets/Info';
14
- import { widgetActionController } from '../controllers/widgets/Action';
15
- import { widgetCustomController } from "../controllers/widgets/Custom";
16
- import { catalogController } from "../controllers/catalog/Catalog";
17
- import { mediaManagerController } from "../controllers/media-manager/mediaManagerApi";
18
- import { thumbController } from "../controllers/media-manager/ThumbController";
19
- import { Adminizer } from "../lib/Adminizer";
20
- import timezones from "../controllers/timezones";
21
- import { NotificationController } from "../controllers/notifications/NotificationController";
1
+ import _dashboard from "../controllers/dashboard.js";
2
+ import _welcome from "../controllers/welcome.js";
3
+ import _list from "../controllers/list.js";
4
+ import _edit from "../controllers/edit.js";
5
+ import _add from "../controllers/add.js";
6
+ import _view from "../controllers/view.js";
7
+ import _remove from "../controllers/remove.js";
8
+ import { ckEditorUpload } from "../controllers/ckeditorUpload.js";
9
+ import _form from "../controllers/form.js";
10
+ import { widgetSwitchController } from "../controllers/widgets/switch.js";
11
+ import _getAllWidgets from "../controllers/getAllWidgets.js";
12
+ import _widgetsDB from "../controllers/widgetsDB.js";
13
+ import { widgetInfoController } from '../controllers/widgets/Info.js';
14
+ import { widgetActionController } from '../controllers/widgets/Action.js';
15
+ import { widgetCustomController } from "../controllers/widgets/Custom.js";
16
+ import { catalogController } from "../controllers/catalog/Catalog.js";
17
+ import { mediaManagerController } from "../controllers/media-manager/mediaManagerApi.js";
18
+ import { thumbController } from "../controllers/media-manager/ThumbController.js";
19
+ import { Adminizer } from "../lib/Adminizer.js";
20
+ import timezones from "../controllers/timezones.js";
21
+ import { NotificationController } from "../controllers/notifications/NotificationController.js";
22
22
  export default class Router {
23
23
  static onlyOnce = false;
24
24
  /**
@@ -1,7 +1,7 @@
1
- import _login from "../controllers/login";
2
- import _register from "../controllers/register";
3
- import _initUser from "../controllers/initUser";
4
- import { Adminizer } from "../lib/Adminizer";
1
+ import _login from "../controllers/login.js";
2
+ import _register from "../controllers/register.js";
3
+ import _initUser from "../controllers/initUser.js";
4
+ import { Adminizer } from "../lib/Adminizer.js";
5
5
  import { generate } from "password-hash";
6
6
  export default async function bindAuthorization(adminizer) {
7
7
  let admins;
@@ -1,9 +1,9 @@
1
- import { CKeditor } from "../lib/controls/wysiwyg/CKeditor";
2
- import { ToastUiEditor } from "../lib/controls/markdown/ToastUiEditor";
3
- import { Handsontable } from "../lib/controls/table/Handsontable";
4
- import { JsonEditor } from "../lib/controls/jsoneditor/JsonEditor";
5
- import { MonacoEditor } from "../lib/controls/codeEditor/MonacoEditor";
6
- import { GeoEditor } from "../lib/controls/geojsoneditor/GeoEditor";
1
+ import { CKeditor } from "../lib/controls/wysiwyg/CKeditor.js";
2
+ import { ToastUiEditor } from "../lib/controls/markdown/ToastUiEditor.js";
3
+ import { Handsontable } from "../lib/controls/table/Handsontable.js";
4
+ import { JsonEditor } from "../lib/controls/jsoneditor/JsonEditor.js";
5
+ import { MonacoEditor } from "../lib/controls/codeEditor/MonacoEditor.js";
6
+ import { GeoEditor } from "../lib/controls/geojsoneditor/GeoEditor.js";
7
7
  export function bindControls(adminizer) {
8
8
  // bind wysiwyg
9
9
  adminizer.controlsHandler.add(new CKeditor(adminizer));
@@ -1,6 +1,6 @@
1
1
  import * as fs from 'fs';
2
2
  import * as path from 'path';
3
- import { Adminizer } from '../lib/Adminizer';
3
+ import { Adminizer } from '../lib/Adminizer.js';
4
4
  export default async function bindDashboardWidgets(adminizer) {
5
5
  if (adminizer.config.dashboard && typeof adminizer.config.dashboard !== "boolean" && adminizer.config.dashboard.autoloadWidgetsPath) {
6
6
  try {
@@ -1,5 +1,5 @@
1
1
  import * as fs from "fs";
2
- import { FormHelper } from "../helpers/formHelper";
2
+ import { FormHelper } from "../helpers/formHelper.js";
3
3
  export default async function bindForms(adminizer) {
4
4
  if (fs.existsSync(adminizer.config.forms.path)) {
5
5
  let formsDir = fs.readdirSync(adminizer.config.forms.path);
@@ -1,8 +1,8 @@
1
- import flash from "../lib/inertia/flash";
2
- import inertia from "../lib/inertia/inertiaAdapter";
1
+ import flash from "../lib/inertia/flash.js";
2
+ import inertia from "../lib/inertia/inertiaAdapter.js";
3
3
  import fs from "fs";
4
4
  import path from "node:path";
5
- import { InertiaMenuHelper } from "../helpers/inertiaMenuHelper";
5
+ import { InertiaMenuHelper } from "../helpers/inertiaMenuHelper.js";
6
6
  export function bindInertia(adminizer) {
7
7
  const viteRender = () => {
8
8
  if (process.env.VITE_ENV === 'dev') {
@@ -1,4 +1,4 @@
1
- import { DefaultMediaManager } from "../lib/media-manager/DefaultMediaManager";
1
+ import { DefaultMediaManager } from "../lib/media-manager/DefaultMediaManager.js";
2
2
  import serveStatic from "serve-static";
3
3
  import path from "path";
4
4
  export default function bindMediaManager(adminizer) {
@@ -1,4 +1,4 @@
1
- import { Adminizer } from "../lib/Adminizer";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
2
  import fs from 'node:fs';
3
3
  import path from 'node:path';
4
4
  export default async function bindModels(adminizer) {
@@ -1,4 +1,4 @@
1
- import { Navigation } from "../lib/catalog/Navigation";
1
+ import { Navigation } from "../lib/catalog/Navigation.js";
2
2
  export async function bindNavigation(adminizer) {
3
3
  if (adminizer.config.navigation) {
4
4
  try {
@@ -1,6 +1,6 @@
1
- import { NotificationHandler } from '../lib/notifications/NotificationHandler';
2
- import { GeneralNotificationService } from '../lib/notifications/GeneralNotificationService';
3
- import { SystemNotificationService } from '../lib/notifications/SystemNotificationService';
1
+ import { NotificationHandler } from '../lib/notifications/NotificationHandler.js';
2
+ import { GeneralNotificationService } from '../lib/notifications/GeneralNotificationService.js';
3
+ import { SystemNotificationService } from '../lib/notifications/SystemNotificationService.js';
4
4
  export async function bindNotifications(adminizer) {
5
5
  // Создаем хендлер
6
6
  adminizer.notificationHandler = new NotificationHandler();
@@ -1,7 +1,7 @@
1
- import { Adminizer } from "../lib/Adminizer";
2
- import { I18n } from "../lib/I18n";
1
+ import { Adminizer } from "../lib/Adminizer.js";
2
+ import { I18n } from "../lib/I18n.js";
3
3
  import { parse } from "cookie";
4
- import { verifyUser } from "../lib/helper/jwt";
4
+ import { verifyUser } from "../lib/helper/jwt.js";
5
5
  export default function bindReqFunctions(adminizer) {
6
6
  let bindReqFunctionsF = async function (req, res, next) {
7
7
  /**
@@ -1,6 +1,6 @@
1
- import { TranslationHelper } from "../helpers/translationHelper";
1
+ import { TranslationHelper } from "../helpers/translationHelper.js";
2
2
  import * as fs from "fs";
3
- import { Adminizer } from "../lib/Adminizer";
3
+ import { Adminizer } from "../lib/Adminizer.js";
4
4
  export default function bindTranslations(adminizer) {
5
5
  // load adminpanel translations
6
6
  TranslationHelper.loadTranslations(adminizer, `${adminizer.config.rootPath}/translations`);
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
- import { FileStorageHelper } from "../helpers/fileStorageHelper";
3
- import timezones from "../lib/timezones";
2
+ import { FileStorageHelper } from "../helpers/fileStorageHelper.js";
3
+ import timezones from "../lib/timezones.js";
4
4
  /**
5
5
  * Default admin config
6
6
  */