@compill/admin 1.0.71 → 1.0.72

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/index.cjs.js CHANGED
@@ -18,10 +18,10 @@ var react = require('@soperio/react');
18
18
  var editor = require('@compill/editor');
19
19
  var admin = require('@compill/admin');
20
20
  var reactDom = require('react-dom');
21
+ var router = require('next/router');
21
22
  var table = require('@compill/table');
22
23
  var hooks = require('@compill/hooks');
23
24
  var env = require('@compill/env');
24
- var router = require('next/router');
25
25
  var reactQuery = require('@tanstack/react-query');
26
26
  var Image = require('next/image');
27
27
 
@@ -1135,18 +1135,27 @@ function Buttons$1({
1135
1135
  });
1136
1136
  }
1137
1137
 
1138
+ function useQueryField(queryField, useNextRouter) {
1139
+ if (useNextRouter) {
1140
+ const router$1 = router.useRouter();
1141
+ return router$1.query[queryField];
1142
+ }
1143
+ const {
1144
+ [queryField]: id
1145
+ } = reactRouterDom.useParams();
1146
+ return id;
1147
+ }
1138
1148
  function DetailsView(_a) {
1139
1149
  var {
1140
1150
  queryField,
1141
1151
  api,
1152
+ useNextRouter,
1142
1153
  processInput,
1143
1154
  screen,
1144
1155
  tabbed
1145
1156
  } = _a,
1146
- props = __rest$1(_a, ["queryField", "api", "processInput", "screen", "tabbed"]);
1147
- const {
1148
- [queryField]: id
1149
- } = reactRouterDom.useParams();
1157
+ props = __rest$1(_a, ["queryField", "api", "useNextRouter", "processInput", "screen", "tabbed"]);
1158
+ const id = useQueryField(queryField, useNextRouter);
1150
1159
  const ref = React__default["default"].useRef(null);
1151
1160
  return jsxRuntime.jsx(PageQueryStateContainer, Object.assign({
1152
1161
  api: api,
package/index.esm.js CHANGED
@@ -14,10 +14,10 @@ import { createContext as createContext$1, runIfFn, isFunction } from '@soperio/
14
14
  import { Editor } from '@compill/editor';
15
15
  import { PageSectionTitle as PageSectionTitle$1, ButtonBarDialogButton as ButtonBarDialogButton$1, TableRowActionButton as TableRowActionButton$1, DialogButton as DialogButton$1 } from '@compill/admin';
16
16
  import { createPortal } from 'react-dom';
17
+ import { useRouter } from 'next/router';
17
18
  import { TableContextProvider, useTableContext, Table } from '@compill/table';
18
19
  import { useOpenLink, useBoolean } from '@compill/hooks';
19
20
  import { Env } from '@compill/env';
20
- import { useRouter } from 'next/router';
21
21
  import { useQueryClient } from '@tanstack/react-query';
22
22
  import Image from 'next/image';
23
23
 
@@ -1125,18 +1125,27 @@ function Buttons$1({
1125
1125
  });
1126
1126
  }
1127
1127
 
1128
+ function useQueryField(queryField, useNextRouter) {
1129
+ if (useNextRouter) {
1130
+ const router = useRouter();
1131
+ return router.query[queryField];
1132
+ }
1133
+ const {
1134
+ [queryField]: id
1135
+ } = useParams();
1136
+ return id;
1137
+ }
1128
1138
  function DetailsView(_a) {
1129
1139
  var {
1130
1140
  queryField,
1131
1141
  api,
1142
+ useNextRouter,
1132
1143
  processInput,
1133
1144
  screen,
1134
1145
  tabbed
1135
1146
  } = _a,
1136
- props = __rest$1(_a, ["queryField", "api", "processInput", "screen", "tabbed"]);
1137
- const {
1138
- [queryField]: id
1139
- } = useParams();
1147
+ props = __rest$1(_a, ["queryField", "api", "useNextRouter", "processInput", "screen", "tabbed"]);
1148
+ const id = useQueryField(queryField, useNextRouter);
1140
1149
  const ref = React.useRef(null);
1141
1150
  return jsx(PageQueryStateContainer, Object.assign({
1142
1151
  api: api,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@compill/admin",
3
- "version": "1.0.71",
3
+ "version": "1.0.72",
4
4
  "module": "./index.esm.js",
5
5
  "main": "./index.cjs.js"
6
6
  }
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { SoperioComponent } from "@soperio/react";
3
3
  import { DetailsViewConfig } from "./types/DetailsView";
4
- export declare function DetailsView({ queryField, api, processInput, screen, tabbed, ...props }: DetailsViewConfig & {
4
+ export declare function DetailsView({ queryField, api, useNextRouter, processInput, screen, tabbed, ...props }: DetailsViewConfig & {
5
5
  tabbed?: boolean;
6
6
  } & SoperioComponent): JSX.Element;
@@ -7,6 +7,7 @@ export type DetailsViewConfig<T = any> = {
7
7
  type: "details";
8
8
  api: API<T>;
9
9
  queryField: string;
10
+ useNextRouter?: boolean;
10
11
  processInput?: (input: T) => any;
11
12
  screen: Screen | ((data: T) => Screen);
12
13
  };