@bundle-stats/ui 4.13.0-beta.3 → 4.13.0-beta.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.
@@ -41,7 +41,12 @@ const total_size_type_title_1 = require("../total-size-type-title");
41
41
  const metrics_table_1 = require("../metrics-table");
42
42
  const component_link_1 = require("../component-link");
43
43
  const bundle_assets_totals_module_css_1 = __importDefault(require("./bundle-assets-totals.module.css"));
44
- const BundleAssetsTotals = ({ className, jobs, customComponentLink: CustomComponentLink, ...restProps }) => {
44
+ function defaultOnTreemapItemClick(params, history) {
45
+ const { section, queryParams } = params;
46
+ const nextUrl = `${constants_1.SECTION_URLS[section]}?${queryParams}`;
47
+ history.push(nextUrl);
48
+ }
49
+ const BundleAssetsTotals = ({ className, jobs, customComponentLink: CustomComponentLink, onTreemapItemClick = defaultOnTreemapItemClick, ...restProps }) => {
45
50
  const [displayType, setDisplayType] = (0, metrics_display_type_1.useMetricsDisplayType)();
46
51
  const history = (0, react_router_dom_1.useHistory)();
47
52
  const items = webpack.compareBySection.sizes(jobs);
@@ -53,9 +58,8 @@ const BundleAssetsTotals = ({ className, jobs, customComponentLink: CustomCompon
53
58
  const handleMetricsTreemapItemClick = (0, react_1.useCallback)((entryId) => {
54
59
  const fileType = constants_1.ASSETS_SIZES_FILE_TYPE_MAP[entryId];
55
60
  const { section, params } = (0, utils_1.getBundleAssetsFileTypeComponentLink)(fileType, '');
56
- const search = (0, utils_1.getComponentStateQueryString)(params);
57
- const nextUrl = `${constants_1.SECTION_URLS[section]}?${search}`;
58
- history.push(nextUrl);
61
+ const queryParams = (0, utils_1.getComponentStateQueryString)(params);
62
+ onTreemapItemClick({ entryId, section, queryParams }, history);
59
63
  }, [history]);
60
64
  return (react_1.default.createElement("div", { className: className },
61
65
  react_1.default.createElement(toolbar_1.Toolbar, { className: bundle_assets_totals_module_css_1.default.toolbar, renderActions: () => (react_1.default.createElement(metrics_display_selector_1.MetricsDisplaySelector, { onSelect: setDisplayType, value: displayType })) },
@@ -68,10 +72,12 @@ exports.BundleAssetsTotals.defaultProps = {
68
72
  className: '',
69
73
  jobs: [],
70
74
  customComponentLink: component_link_1.ComponentLink,
75
+ onTreemapItemClick: defaultOnTreemapItemClick,
71
76
  };
72
77
  exports.BundleAssetsTotals.propTypes = {
73
78
  className: prop_types_1.default.string,
74
79
  jobs: prop_types_1.default.array,
75
80
  customComponentLink: prop_types_1.default.elementType,
81
+ onTreemapItemClick: prop_types_1.default.func,
76
82
  };
77
83
  //# sourceMappingURL=bundle-assets-totals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-assets-totals.js","sourceRoot":"","sources":["../../../src/components/bundle-assets-totals/bundle-assets-totals.jsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA2C;AAC3C,4DAAmC;AACnC,uDAA8C;AAC9C,+CAG6B;AAC7B,6EAA+D;AAE/D,+CAA+F;AAC/F,2EAAyE;AACzE,8CAA2C;AAC3C,wDAAoD;AACpD,0EAAqE;AACrE,oEAA8D;AAC9D,oDAAgD;AAChD,sDAAkD;AAClD,wGAAoD;AAE7C,MAAM,kBAAkB,GAAG,CAAC,EACjC,SAAS,EACT,IAAI,EACJ,mBAAmB,EAAE,mBAAmB,EACxC,GAAG,SAAS,EACb,EAAE,EAAE;IACH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,4CAAqB,GAAE,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAA,6BAAU,GAAE,CAAC;IAE7B,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnD,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,EAAE;QAC/B,MAAM,QAAQ,GAAG,sCAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAA,4CAAoC,EAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAE9F,OAAO,CACL,8BAAC,mBAAmB,IAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,IAChE,IAAI,CAAC,KAAK,CACS,CACvB,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,6BAA6B,GAAG,IAAA,mBAAW,EAC/C,CAAC,OAAO,EAAE,EAAE;QACV,MAAM,QAAQ,GAAG,sCAA0B,CAAC,OAAO,CAAC,CAAC;QACrD,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAA,4CAAoC,EAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAG,IAAA,oCAA4B,EAAC,MAAM,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,GAAG,wBAAY,CAAC,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC;QAErD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,OAAO,CACL,uCAAK,SAAS,EAAE,SAAS;QACvB,8BAAC,iBAAO,IACN,SAAS,EAAE,yCAAG,CAAC,OAAO,EACtB,aAAa,EAAE,GAAG,EAAE,CAAC,CACnB,8BAAC,iDAAsB,IAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,GAAI,CACzE;YAED,8BAAC,0CAAkB,OAAG,CACd;QACT,WAAW,KAAK,8BAAkB,CAAC,KAAK,IAAI,CAC3C,8BAAC,4BAAY,IACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,aAAa,WACT,SAAS,GACb,CACH;QACA,WAAW,KAAK,8BAAkB,CAAC,OAAO,IAAI,CAC7C,8BAAC,gCAAc,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,6BAA6B,GAAI,CAC7E,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AA1DW,QAAA,kBAAkB,sBA0D7B;AAEF,0BAAkB,CAAC,YAAY,GAAG;IAChC,SAAS,EAAE,EAAE;IACb,IAAI,EAAE,EAAE;IACR,mBAAmB,EAAE,8BAAa;CACnC,CAAC;AAEF,0BAAkB,CAAC,SAAS,GAAG;IAE7B,SAAS,EAAE,oBAAS,CAAC,MAAM;IAG3B,IAAI,EAAE,oBAAS,CAAC,KAAK;IAErB,mBAAmB,EAAE,oBAAS,CAAC,WAAW;CAC3C,CAAC"}
1
+ {"version":3,"file":"bundle-assets-totals.js","sourceRoot":"","sources":["../../../src/components/bundle-assets-totals/bundle-assets-totals.jsx"],"names":[],"mappings":"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"}
@@ -12,7 +12,12 @@ import { TotalSizeTypeTitle } from '../total-size-type-title';
12
12
  import { MetricsTable } from '../metrics-table';
13
13
  import { ComponentLink } from '../component-link';
14
14
  import css from './bundle-assets-totals.module.css';
15
- export const BundleAssetsTotals = ({ className, jobs, customComponentLink: CustomComponentLink, ...restProps }) => {
15
+ function defaultOnTreemapItemClick(params, history) {
16
+ const { section, queryParams } = params;
17
+ const nextUrl = `${SECTION_URLS[section]}?${queryParams}`;
18
+ history.push(nextUrl);
19
+ }
20
+ export const BundleAssetsTotals = ({ className, jobs, customComponentLink: CustomComponentLink, onTreemapItemClick = defaultOnTreemapItemClick, ...restProps }) => {
16
21
  const [displayType, setDisplayType] = useMetricsDisplayType();
17
22
  const history = useHistory();
18
23
  const items = webpack.compareBySection.sizes(jobs);
@@ -24,9 +29,8 @@ export const BundleAssetsTotals = ({ className, jobs, customComponentLink: Custo
24
29
  const handleMetricsTreemapItemClick = useCallback((entryId) => {
25
30
  const fileType = ASSETS_SIZES_FILE_TYPE_MAP[entryId];
26
31
  const { section, params } = getBundleAssetsFileTypeComponentLink(fileType, '');
27
- const search = getComponentStateQueryString(params);
28
- const nextUrl = `${SECTION_URLS[section]}?${search}`;
29
- history.push(nextUrl);
32
+ const queryParams = getComponentStateQueryString(params);
33
+ onTreemapItemClick({ entryId, section, queryParams }, history);
30
34
  }, [history]);
31
35
  return (React.createElement("div", { className: className },
32
36
  React.createElement(Toolbar, { className: css.toolbar, renderActions: () => (React.createElement(MetricsDisplaySelector, { onSelect: setDisplayType, value: displayType })) },
@@ -38,10 +42,12 @@ BundleAssetsTotals.defaultProps = {
38
42
  className: '',
39
43
  jobs: [],
40
44
  customComponentLink: ComponentLink,
45
+ onTreemapItemClick: defaultOnTreemapItemClick,
41
46
  };
42
47
  BundleAssetsTotals.propTypes = {
43
48
  className: PropTypes.string,
44
49
  jobs: PropTypes.array,
45
50
  customComponentLink: PropTypes.elementType,
51
+ onTreemapItemClick: PropTypes.func,
46
52
  };
47
53
  //# sourceMappingURL=bundle-assets-totals.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-assets-totals.js","sourceRoot":"","sources":["../../../src/components/bundle-assets-totals/bundle-assets-totals.jsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle-assets-totals.js","sourceRoot":"","sources":["../../../src/components/bundle-assets-totals/bundle-assets-totals.jsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bundle-stats/ui",
3
- "version": "4.13.0-beta.3",
3
+ "version": "4.13.0-beta.4",
4
4
  "description": "UI components for BundleStats projects.",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-esm/index.js",
@@ -73,12 +73,12 @@
73
73
  "react-router-dom": "^5.0.0"
74
74
  },
75
75
  "dependencies": {
76
- "@bundle-stats/utils": "^4.13.0-beta.3",
76
+ "@bundle-stats/utils": "4.13.0-beta.4",
77
77
  "ariakit": "2.0.0-next.44",
78
78
  "d3": "^7.8.5",
79
79
  "modern-css-reset": "1.4.0",
80
80
  "react-use": "^17.5.0",
81
81
  "use-query-params": "2.2.1"
82
82
  },
83
- "gitHead": "01131490d9a0d5e90c3010a384efb3121e41b53a"
83
+ "gitHead": "55b9a841ea0f913feebeb02fb087ac0173eed2d3"
84
84
  }
@@ -17,10 +17,23 @@ import { MetricsTable } from '../metrics-table';
17
17
  import { ComponentLink } from '../component-link';
18
18
  import css from './bundle-assets-totals.module.css';
19
19
 
20
+ /**
21
+ * @param {object} params
22
+ * @param {string} params.entryId
23
+ * @param {string} params.section
24
+ * @param {string} params.queryParams
25
+ */
26
+ function defaultOnTreemapItemClick(params, history) {
27
+ const { section, queryParams } = params;
28
+ const nextUrl = `${SECTION_URLS[section]}?${queryParams}`;
29
+ history.push(nextUrl);
30
+ }
31
+
20
32
  export const BundleAssetsTotals = ({
21
33
  className,
22
34
  jobs,
23
35
  customComponentLink: CustomComponentLink,
36
+ onTreemapItemClick = defaultOnTreemapItemClick,
24
37
  ...restProps
25
38
  }) => {
26
39
  const [displayType, setDisplayType] = useMetricsDisplayType();
@@ -43,10 +56,8 @@ export const BundleAssetsTotals = ({
43
56
  (entryId) => {
44
57
  const fileType = ASSETS_SIZES_FILE_TYPE_MAP[entryId];
45
58
  const { section, params } = getBundleAssetsFileTypeComponentLink(fileType, '');
46
- const search = getComponentStateQueryString(params);
47
- const nextUrl = `${SECTION_URLS[section]}?${search}`;
48
-
49
- history.push(nextUrl);
59
+ const queryParams = getComponentStateQueryString(params);
60
+ onTreemapItemClick({ entryId, section, queryParams }, history);
50
61
  },
51
62
  [history],
52
63
  );
@@ -81,6 +92,7 @@ BundleAssetsTotals.defaultProps = {
81
92
  className: '',
82
93
  jobs: [],
83
94
  customComponentLink: ComponentLink,
95
+ onTreemapItemClick: defaultOnTreemapItemClick,
84
96
  };
85
97
 
86
98
  BundleAssetsTotals.propTypes = {
@@ -91,4 +103,6 @@ BundleAssetsTotals.propTypes = {
91
103
  jobs: PropTypes.array, // eslint-disable-line react/forbid-prop-types
92
104
 
93
105
  customComponentLink: PropTypes.elementType,
106
+
107
+ onTreemapItemClick: PropTypes.func,
94
108
  };
@@ -1,14 +1,16 @@
1
- export function BundleAssetsTotals({ className, jobs, customComponentLink: CustomComponentLink, ...restProps }: {
1
+ export function BundleAssetsTotals({ className, jobs, customComponentLink: CustomComponentLink, onTreemapItemClick, ...restProps }: {
2
2
  [x: string]: any;
3
3
  className: any;
4
4
  jobs: any;
5
5
  customComponentLink: any;
6
+ onTreemapItemClick?: typeof defaultOnTreemapItemClick | undefined;
6
7
  }): React.JSX.Element;
7
8
  export namespace BundleAssetsTotals {
8
9
  namespace defaultProps {
9
10
  export let className: string;
10
11
  export let jobs: never[];
11
12
  export { ComponentLink as customComponentLink };
13
+ export { defaultOnTreemapItemClick as onTreemapItemClick };
12
14
  }
13
15
  namespace propTypes {
14
16
  let className_1: PropTypes.Requireable<string>;
@@ -16,8 +18,15 @@ export namespace BundleAssetsTotals {
16
18
  let jobs_1: PropTypes.Requireable<any[]>;
17
19
  export { jobs_1 as jobs };
18
20
  export let customComponentLink: PropTypes.Requireable<PropTypes.ReactComponentLike>;
21
+ export let onTreemapItemClick: PropTypes.Requireable<(...args: any[]) => any>;
19
22
  }
20
23
  }
24
+ declare function defaultOnTreemapItemClick(params: {
25
+ entryId: string;
26
+ section: string;
27
+ queryParams: string;
28
+ }, history: any): void;
21
29
  import React from 'react';
22
30
  import { ComponentLink } from '../component-link';
23
31
  import PropTypes from 'prop-types';
32
+ export {};