@m4l/layouts 0.0.14 → 0.0.17

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.
@@ -68,7 +68,8 @@ function MasterDetailLayout(props) {
68
68
  urlIcon,
69
69
  masterComponent,
70
70
  componentsDictionary,
71
- breadcrumbLinks
71
+ breadcrumbLinks,
72
+ privileges
72
73
  } = props;
73
74
  const {
74
75
  host_static_assets,
@@ -150,6 +151,7 @@ function MasterDetailLayout(props) {
150
151
  moduleNameField,
151
152
  urlIcon,
152
153
  initialModuleActions: finalModuleActions,
154
+ privileges,
153
155
  componentsDictionary: finalComponentsDictionary,
154
156
  breadcrumbLinks,
155
157
  children: /* @__PURE__ */ jsx(SplitLayout, {
@@ -3,7 +3,7 @@ import type { ReactNode } from 'react';
3
3
  import type { ModuleAction } from '../../types';
4
4
  export interface ModuleLayoutContextStateProps {
5
5
  urlIcon: string;
6
- moduleId: number;
6
+ moduleId: string;
7
7
  moduleNameField: string;
8
8
  breadcrumbLinks: TLink[];
9
9
  }
@@ -1,7 +1,7 @@
1
1
  import { BoxIcon, Breadcrumbs as Breadcrumbs$1, MenuActions, useModal, ModalProvider, getModalDialogComponentsDictionary } from "@m4l/components";
2
2
  import { createContext, useState, useMemo, forwardRef, useRef, useImperativeHandle } from "react";
3
3
  import { styled, useTheme } from "@mui/material/styles";
4
- import { voidFunction, useModuleDictionary, useFlagsPresent, FlagsProvider, ModuleDictionaryProvider } from "@m4l/core";
4
+ import { voidFunction, useModuleDictionary, useFlagsPresent, FlagsProvider, ModuleDictionaryProvider, ModulePrivilegesProvider } from "@m4l/core";
5
5
  import { Skeleton, Typography, IconButton } from "@mui/material";
6
6
  import { u as useResponsiveDesktop } from "../../vendor.js";
7
7
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
@@ -178,7 +178,7 @@ function SKTModuleHeader() {
178
178
  });
179
179
  }
180
180
  const initialState = {
181
- moduleId: 0,
181
+ moduleId: "",
182
182
  moduleNameField: "module_name",
183
183
  urlIcon: "",
184
184
  moduleActions: [],
@@ -340,7 +340,8 @@ const ModuleLayout = forwardRef((props, ref) => {
340
340
  urlIcon,
341
341
  children,
342
342
  componentsDictionary,
343
- breadcrumbLinks
343
+ breadcrumbLinks,
344
+ privileges
344
345
  } = props;
345
346
  const moduleRef = useRef(null);
346
347
  const openModal = (modalOpenProps) => {
@@ -354,16 +355,19 @@ const ModuleLayout = forwardRef((props, ref) => {
354
355
  children: /* @__PURE__ */ jsx(ModuleDictionaryProvider, {
355
356
  moduleId,
356
357
  componentsDictionary,
357
- children: /* @__PURE__ */ jsx(ModuleProvider, {
358
- moduleId,
359
- urlIcon,
360
- moduleNameField,
361
- initialModuleActions,
362
- breadcrumbLinks,
363
- children: /* @__PURE__ */ jsx(ModalProvider, {
364
- children: /* @__PURE__ */ jsx(Module, {
365
- ref: moduleRef,
366
- children
358
+ children: /* @__PURE__ */ jsx(ModulePrivilegesProvider, {
359
+ queryPrivileges: privileges,
360
+ children: /* @__PURE__ */ jsx(ModuleProvider, {
361
+ moduleId,
362
+ urlIcon,
363
+ moduleNameField,
364
+ initialModuleActions,
365
+ breadcrumbLinks,
366
+ children: /* @__PURE__ */ jsx(ModalProvider, {
367
+ children: /* @__PURE__ */ jsx(Module, {
368
+ ref: moduleRef,
369
+ children
370
+ })
367
371
  })
368
372
  })
369
373
  })
@@ -16,9 +16,10 @@ export interface ModuleAction extends MenuAction {
16
16
  className?: string;
17
17
  }
18
18
  export interface ModuleLayoutProps extends HeaderProps {
19
- moduleId: number;
19
+ moduleId: string;
20
20
  urlIcon: string;
21
21
  moduleNameField?: string;
22
+ privileges: string[];
22
23
  breadcrumbLinks: TLink[];
23
24
  initialModuleActions: ModuleAction[];
24
25
  componentsDictionary: string[];
@@ -4,7 +4,7 @@ export interface DomainStyleOptions {
4
4
  company_logo_normal_url: string;
5
5
  }
6
6
  export interface NoAuthModuleLayoutProviderProps {
7
- moduleId: number;
7
+ moduleId: string;
8
8
  children: ReactNode;
9
9
  }
10
10
  export interface NoAuthModuleLayoutContextProps extends Pick<NoAuthModuleLayoutProviderProps, 'moduleId'> {
@@ -151,7 +151,7 @@ const ModuleWrapper = (props) => {
151
151
  });
152
152
  };
153
153
  const initialState = {
154
- moduleId: 0,
154
+ moduleId: "",
155
155
  styleOptions: {
156
156
  company_logo_small_url: "",
157
157
  company_logo_normal_url: ""
@@ -4,7 +4,7 @@ export interface ContainerProps {
4
4
  }
5
5
  export declare type MenuActionType = 'main' | 'allways' | 'normal';
6
6
  export interface NoAuthModuleLayoutProps {
7
- moduleId: number;
7
+ moduleId: string;
8
8
  moduleName?: string;
9
9
  componentsDictionary: string[];
10
10
  children: ReactNode;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@m4l/layouts",
3
3
  "private": false,
4
- "version": "0.0.14",
4
+ "version": "0.0.17",
5
5
  "license": "UNLICENSED",
6
6
  "scripts": {
7
7
  "dev": "vite",
@@ -14,7 +14,7 @@
14
14
  "format": "npm run prettier:fix && npm run lint:fix"
15
15
  },
16
16
  "dependencies": {
17
- "@m4l/components": "^0.0.36",
17
+ "@m4l/components": "^0.0.39",
18
18
  "react": "^17.0.0 || 18.x",
19
19
  "react-dom": "^18.0.0"
20
20
  },