muffin-admin 1.45.6 → 1.45.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.
package/dist/types.d.ts CHANGED
@@ -30,11 +30,11 @@ export type AdminResourceProps = {
30
30
  name: string;
31
31
  icon?: string;
32
32
  label: string;
33
- create: AdminInput[];
33
+ create: AdminInput[] | false;
34
34
  edit: {
35
35
  actions: AdminAction[];
36
36
  inputs: AdminInput[];
37
- };
37
+ } | false;
38
38
  list: {
39
39
  limit: number;
40
40
  limitMax: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "muffin-admin",
3
- "version": "1.45.6",
3
+ "version": "1.45.8",
4
4
  "description": "NPM package for https://github.com/klen/muffin-admin",
5
5
  "files": [
6
6
  "src",
@@ -15,8 +15,8 @@ export function MuffinResource({
15
15
  <Resource
16
16
  name={name}
17
17
  icon={findIcon(icon)}
18
- create={buildAdmin(["create", name], createProps)}
19
- edit={buildAdmin(["edit", name], editProps)}
18
+ create={createProps ? buildAdmin(["create", name], createProps) : undefined}
19
+ edit={editProps ? buildAdmin(["edit", name], editProps) : undefined}
20
20
  list={buildAdmin(["list", name], listProps)}
21
21
  show={buildAdmin(["show", name], showProps)}
22
22
  {...props}
@@ -12,17 +12,20 @@ import { ActionButton } from "./buttons"
12
12
  import { AdminAction, AdminOpts, AdminResourceProps } from "./types"
13
13
  import { AdminPropsContext, buildAdmin, setupAdmin } from "./utils"
14
14
 
15
- export function MuffinResourceEdit({ actions, inputs, ...props }: AdminResourceProps["edit"]) {
15
+ export function MuffinResourceEdit(props: AdminResourceProps["edit"]) {
16
16
  const resourceName = useResourceContext()
17
17
  const {
18
18
  adminProps: { mutationMode },
19
19
  } = useContext(AdminPropsContext) as AdminOpts
20
20
 
21
+ if (!props) return null
22
+ const { actions, inputs, ...opts } = props
23
+
21
24
  return (
22
25
  <Edit
23
26
  actions={buildAdmin(["edit-actions", resourceName], actions)}
24
27
  mutationMode={mutationMode || "optimistic"}
25
- {...props}
28
+ {...opts}
26
29
  >
27
30
  <SimpleForm>{buildAdmin(["edit-inputs", resourceName], inputs)}</SimpleForm>
28
31
  </Edit>
@@ -10,12 +10,12 @@ export function LinkAction({ field, icon, ...props }: AdminShowLink & { resource
10
10
  const currentResource = useResourceContext()
11
11
  if (!record) return null
12
12
 
13
- icon = icon || adminProps?.resources[props.resource]?.icon
13
+ const resource = adminProps?.resources.find((r) => r.name === props.resource)
14
14
 
15
15
  return (
16
16
  <LinkButton
17
17
  {...props}
18
- icon={icon}
18
+ icon={icon || resource?.icon}
19
19
  filters={{ [currentResource]: encodeURIComponent(record[field || "id"]) }}
20
20
  />
21
21
  )
package/src/types.ts CHANGED
@@ -29,11 +29,13 @@ export type AdminResourceProps = {
29
29
  name: string
30
30
  icon?: string
31
31
  label: string
32
- create: AdminInput[]
33
- edit: {
34
- actions: AdminAction[]
35
- inputs: AdminInput[]
36
- }
32
+ create: AdminInput[] | false
33
+ edit:
34
+ | {
35
+ actions: AdminAction[]
36
+ inputs: AdminInput[]
37
+ }
38
+ | false
37
39
  list: {
38
40
  limit: number
39
41
  limitMax: number