@squiz/generic-browser-lib 1.67.2 → 1.67.4

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @squiz/generic-browser-lib
2
2
 
3
+ ## 1.67.4
4
+
5
+ ### Patch Changes
6
+
7
+ - cd70ef2: allow pass through of additional unspecified props to controlled component
8
+
9
+ ## 1.67.3
10
+
11
+ ### Patch Changes
12
+
13
+ - a63dfe8: Revise dependencies
14
+
3
15
  ## 1.67.2
4
16
 
5
17
  ### Patch Changes
@@ -10,5 +10,8 @@ export interface PreviewPanelProps {
10
10
  onClose: () => void;
11
11
  ResourceComponent?: React.ElementType;
12
12
  selectionCallback?: (param: any) => void;
13
+ resourceComponentProps?: {
14
+ [x: string]: any;
15
+ };
13
16
  }
14
- export declare const PreviewPanel: ({ resource, previewModalOverlayProps, modalState, onSelect, onClose, ResourceComponent, selectionCallback, }: PreviewPanelProps) => React.JSX.Element;
17
+ export declare const PreviewPanel: ({ resource, previewModalOverlayProps, modalState, onSelect, onClose, ResourceComponent, selectionCallback, resourceComponentProps, }: PreviewPanelProps) => React.JSX.Element;
@@ -31,7 +31,7 @@ const react_1 = __importStar(require("react"));
31
31
  const react_responsive_1 = require("react-responsive");
32
32
  const Icon_1 = require("../Icons/Icon");
33
33
  const PreviewModal_1 = __importDefault(require("./PreviewModal"));
34
- const PreviewPanel = function ({ resource, previewModalOverlayProps, modalState, onSelect, onClose, ResourceComponent, selectionCallback, }) {
34
+ const PreviewPanel = function ({ resource, previewModalOverlayProps, modalState, onSelect, onClose, ResourceComponent, selectionCallback, resourceComponentProps = {}, }) {
35
35
  // Watch the media size to see if we are on mobile size
36
36
  const isMobile = (0, react_responsive_1.useMediaQuery)({ query: '(max-width: 640px)' });
37
37
  // If we are on mobile and the selected resource changes show the preview panel modal.
@@ -41,7 +41,7 @@ const PreviewPanel = function ({ resource, previewModalOverlayProps, modalState,
41
41
  }
42
42
  }, [resource, isMobile]);
43
43
  const previewPanel = resource && (react_1.default.createElement(react_1.default.Fragment, null,
44
- react_1.default.createElement("div", { className: "flex flex-col grow" }, ResourceComponent && react_1.default.createElement(ResourceComponent, { resource: resource, selectionCallback: selectionCallback })),
44
+ react_1.default.createElement("div", { className: "flex flex-col grow" }, ResourceComponent && (react_1.default.createElement(ResourceComponent, { ...resourceComponentProps, resource: resource, selectionCallback: selectionCallback }))),
45
45
  react_1.default.createElement("div", { className: "flex justify-end border-t border-gray-300" },
46
46
  react_1.default.createElement("button", { type: "button", onClick: () => onSelect(resource), className: "rounded text-sm text-white bg-blue-300 py-2 px-2.5 m-5 font-bold" }, "Select"))));
47
47
  return (react_1.default.createElement("div", { className: "squiz-gb-scope h-full" },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squiz/generic-browser-lib",
3
- "version": "1.67.2",
3
+ "version": "1.67.4",
4
4
  "description": "Package with reusable components used by resource/component browsers",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -20,44 +20,41 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "@mui/icons-material": "5.11.16",
23
+ "clsx": "^1.2.1",
23
24
  "react-aria": "3.23.1",
24
25
  "react-responsive": "9.0.2",
25
26
  "react-stately": "3.21.0"
26
27
  },
27
28
  "devDependencies": {
28
- "@storybook/addon-essentials": "^7.5.3",
29
- "@storybook/addon-interactions": "^7.5.3",
30
- "@storybook/addon-links": "^7.5.3",
31
- "@storybook/addon-styling": "1.0.1",
32
- "@storybook/blocks": "^7.5.3",
33
- "@storybook/react": "^7.5.3",
34
- "@storybook/react-vite": "^7.5.3",
29
+ "@react-types/shared": "^3.23.1",
30
+ "@storybook/addon-essentials": "^7.6.19",
31
+ "@storybook/addon-interactions": "^7.6.19",
32
+ "@storybook/addon-links": "^7.6.19",
33
+ "@storybook/addon-styling": "1.3.7",
34
+ "@storybook/blocks": "^7.6.19",
35
+ "@storybook/react": "^7.6.19",
36
+ "@storybook/react-vite": "^7.6.19",
35
37
  "@storybook/testing-library": "0.0.14-next.1",
36
38
  "@testing-library/jest-dom": "5.16.5",
37
39
  "@testing-library/react": "14.0.0",
38
40
  "@testing-library/user-event": "14.4.3",
39
- "@types/postcss-js": "4.0.0",
40
41
  "@types/react": "^18.2.45",
41
42
  "@types/react-dom": "^18.2.18",
42
- "@vitejs/plugin-react-swc": "3.0.0",
43
- "autoprefixer": "10.4.14",
43
+ "autoprefixer": "10.4.19",
44
44
  "esbuild": "0.17.17",
45
45
  "esbuild-sass-plugin": "2.8.0",
46
46
  "jest": "29.4.1",
47
47
  "jest-environment-jsdom": "29.4.1",
48
48
  "postcss": "8.4.31",
49
- "postcss-loader": "7.2.4",
50
49
  "postcss-nested": "6.0.1",
51
50
  "postcss-prefix-selector": "1.16.0",
52
- "prop-types": "15.8.1",
53
51
  "react": "18.2.0",
54
52
  "react-dom": "18.2.0",
55
- "rimraf": "4.1.2",
56
- "storybook": "^7.5.3",
53
+ "storybook": "^7.6.19",
57
54
  "tailwindcss": "3.3.1",
58
55
  "ts-jest": "29.0.5",
59
56
  "typescript": "4.9.3",
60
- "vite": "^4.5.0"
57
+ "vite": "^4.5.3"
61
58
  },
62
59
  "peerDependencies": {
63
60
  "@types/react": "^16.14.0 || ^17 || ^18",
@@ -74,6 +71,6 @@
74
71
  }
75
72
  },
76
73
  "volta": {
77
- "node": "18.15.0"
74
+ "extends": "../../package.json"
78
75
  }
79
76
  }
@@ -15,6 +15,9 @@ export interface PreviewPanelProps {
15
15
  onClose: () => void;
16
16
  ResourceComponent?: React.ElementType;
17
17
  selectionCallback?: (param: any) => void;
18
+ resourceComponentProps?: {
19
+ [x: string]: any;
20
+ };
18
21
  }
19
22
 
20
23
  export const PreviewPanel = function ({
@@ -25,6 +28,7 @@ export const PreviewPanel = function ({
25
28
  onClose,
26
29
  ResourceComponent,
27
30
  selectionCallback,
31
+ resourceComponentProps = {},
28
32
  }: PreviewPanelProps) {
29
33
  // Watch the media size to see if we are on mobile size
30
34
  const isMobile = useMediaQuery({ query: '(max-width: 640px)' });
@@ -39,7 +43,9 @@ export const PreviewPanel = function ({
39
43
  const previewPanel = resource && (
40
44
  <>
41
45
  <div className="flex flex-col grow">
42
- {ResourceComponent && <ResourceComponent resource={resource} selectionCallback={selectionCallback} />}
46
+ {ResourceComponent && (
47
+ <ResourceComponent {...resourceComponentProps} resource={resource} selectionCallback={selectionCallback} />
48
+ )}
43
49
  </div>
44
50
  <div className="flex justify-end border-t border-gray-300">
45
51
  <button