@internetarchive/histogram-date-range 1.4.0 → 1.4.1

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/tsconfig.json CHANGED
@@ -1,21 +1,21 @@
1
- {
2
- "compilerOptions": {
3
- "target": "es2018",
4
- "module": "esnext",
5
- "moduleResolution": "node",
6
- "noEmitOnError": true,
7
- "lib": ["es2017", "dom"],
8
- "strict": true,
9
- "esModuleInterop": false,
10
- "allowSyntheticDefaultImports": true,
11
- "experimentalDecorators": true,
12
- "importHelpers": true,
13
- "outDir": "dist",
14
- "sourceMap": true,
15
- "inlineSources": true,
16
- "rootDir": "./",
17
- "declaration": true
18
- },
19
- "include": ["**/*.ts"],
20
- "exclude": ["node_modules", "dist"]
21
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2018",
4
+ "module": "esnext",
5
+ "moduleResolution": "node",
6
+ "noEmitOnError": true,
7
+ "lib": ["es2017", "dom"],
8
+ "strict": true,
9
+ "esModuleInterop": false,
10
+ "allowSyntheticDefaultImports": true,
11
+ "experimentalDecorators": true,
12
+ "importHelpers": true,
13
+ "outDir": "dist",
14
+ "sourceMap": true,
15
+ "inlineSources": true,
16
+ "rootDir": "./",
17
+ "declaration": true
18
+ },
19
+ "include": ["**/*.ts"],
20
+ "exclude": ["node_modules", "dist"]
21
+ }
@@ -1,28 +1,28 @@
1
- // import { hmrPlugin, presets } from '@open-wc/dev-server-hmr';
2
-
3
- /** Use Hot Module replacement by adding --hmr to the start command */
4
- const hmr = process.argv.includes('--hmr');
5
-
6
- export default /** @type {import('@web/dev-server').DevServerConfig} */ ({
7
- nodeResolve: true,
8
- open: '/demo/',
9
- watch: !hmr,
10
-
11
- /** Compile JS for older browsers. Requires @web/dev-server-esbuild plugin */
12
- // esbuildTarget: 'auto'
13
-
14
- /** Set appIndex to enable SPA routing */
15
- // appIndex: 'demo/index.html',
16
-
17
- /** Confgure bare import resolve plugin */
18
- // nodeResolve: {
19
- // exportConditions: ['browser', 'development']
20
- // },
21
-
22
- plugins: [
23
- /** Use Hot Module Replacement by uncommenting. Requires @open-wc/dev-server-hmr plugin */
24
- // hmr && hmrPlugin({ exclude: ['**/*/node_modules/**/*'], presets: [presets.litElement] }),
25
- ],
26
-
27
- // See documentation for all available options
28
- });
1
+ // import { hmrPlugin, presets } from '@open-wc/dev-server-hmr';
2
+
3
+ /** Use Hot Module replacement by adding --hmr to the start command */
4
+ const hmr = process.argv.includes('--hmr');
5
+
6
+ export default /** @type {import('@web/dev-server').DevServerConfig} */ ({
7
+ nodeResolve: true,
8
+ open: '/demo/',
9
+ watch: !hmr,
10
+
11
+ /** Compile JS for older browsers. Requires @web/dev-server-esbuild plugin */
12
+ // esbuildTarget: 'auto'
13
+
14
+ /** Set appIndex to enable SPA routing */
15
+ // appIndex: 'demo/index.html',
16
+
17
+ /** Confgure bare import resolve plugin */
18
+ // nodeResolve: {
19
+ // exportConditions: ['browser', 'development']
20
+ // },
21
+
22
+ plugins: [
23
+ /** Use Hot Module Replacement by uncommenting. Requires @open-wc/dev-server-hmr plugin */
24
+ // hmr && hmrPlugin({ exclude: ['**/*/node_modules/**/*'], presets: [presets.litElement] }),
25
+ ],
26
+
27
+ // See documentation for all available options
28
+ });
@@ -1,29 +1,29 @@
1
- // import { playwrightLauncher } from '@web/test-runner-playwright';
2
-
3
- export default /** @type {import("@web/test-runner").TestRunnerConfig} */ ({
4
- files: 'dist/test/**/*.test.js',
5
- nodeResolve: true,
6
-
7
- /** Compile JS for older browsers. Requires @web/dev-server-esbuild plugin */
8
- // esbuildTarget: 'auto',
9
-
10
- /** Confgure bare import resolve plugin */
11
- // nodeResolve: {
12
- // exportConditions: ['browser', 'development']
13
- // },
14
-
15
- /** Amount of browsers to run concurrently */
16
- // concurrentBrowsers: 2,
17
-
18
- /** Amount of test files per browser to test concurrently */
19
- // concurrency: 1,
20
-
21
- /** Browsers to run tests on */
22
- // browsers: [
23
- // playwrightLauncher({ product: 'chromium' }),
24
- // playwrightLauncher({ product: 'firefox' }),
25
- // playwrightLauncher({ product: 'webkit' }),
26
- // ],
27
-
28
- // See documentation for all available options
29
- });
1
+ // import { playwrightLauncher } from '@web/test-runner-playwright';
2
+
3
+ export default /** @type {import("@web/test-runner").TestRunnerConfig} */ ({
4
+ files: 'dist/test/**/*.test.js',
5
+ nodeResolve: true,
6
+
7
+ /** Compile JS for older browsers. Requires @web/dev-server-esbuild plugin */
8
+ // esbuildTarget: 'auto',
9
+
10
+ /** Confgure bare import resolve plugin */
11
+ // nodeResolve: {
12
+ // exportConditions: ['browser', 'development']
13
+ // },
14
+
15
+ /** Amount of browsers to run concurrently */
16
+ // concurrentBrowsers: 2,
17
+
18
+ /** Amount of test files per browser to test concurrently */
19
+ // concurrency: 1,
20
+
21
+ /** Browsers to run tests on */
22
+ // browsers: [
23
+ // playwrightLauncher({ product: 'chromium' }),
24
+ // playwrightLauncher({ product: 'firefox' }),
25
+ // playwrightLauncher({ product: 'webkit' }),
26
+ // ],
27
+
28
+ // See documentation for all available options
29
+ });
@@ -1,20 +0,0 @@
1
- import { LitElement, TemplateResult } from 'lit';
2
- import '../../src/histogram-date-range';
3
- interface DataSource {
4
- minDate: unknown;
5
- maxDate: unknown;
6
- minSelectedDate: unknown;
7
- maxSelectedDate: unknown;
8
- bins: number[];
9
- barScalingFunction?: (input: number) => number;
10
- }
11
- /**
12
- * This is mainly to test the histogram-date-range within
13
- * a lit-element.
14
- */
15
- export declare class LitHistogramWrapper extends LitElement {
16
- dataSource: DataSource;
17
- render(): TemplateResult;
18
- private randomize;
19
- }
20
- export {};
@@ -1,59 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement, html, nothing } from 'lit';
3
- import { customElement, state } from 'lit/decorators.js';
4
- import '../../src/histogram-date-range';
5
- /**
6
- * This is mainly to test the histogram-date-range within
7
- * a lit-element.
8
- */
9
- let LitHistogramWrapper = class LitHistogramWrapper extends LitElement {
10
- constructor() {
11
- super(...arguments);
12
- this.dataSource = {
13
- minDate: 1955,
14
- maxDate: 2000,
15
- minSelectedDate: 1955,
16
- maxSelectedDate: 2000,
17
- bins: [
18
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
19
- ],
20
- };
21
- }
22
- render() {
23
- var _a, _b, _c, _d, _e, _f, _g;
24
- return html `
25
- <histogram-date-range
26
- .minDate=${(_a = this.dataSource) === null || _a === void 0 ? void 0 : _a.minDate}
27
- .maxDate=${(_b = this.dataSource) === null || _b === void 0 ? void 0 : _b.maxDate}
28
- .minSelectedDate=${(_c = this.dataSource) === null || _c === void 0 ? void 0 : _c.minSelectedDate}
29
- .maxSelectedDate=${(_d = this.dataSource) === null || _d === void 0 ? void 0 : _d.maxSelectedDate}
30
- .updateDelay=${1000}
31
- .bins=${(_e = this.dataSource) === null || _e === void 0 ? void 0 : _e.bins}
32
- .barScalingFunction=${(_g = (_f = this.dataSource) === null || _f === void 0 ? void 0 : _f.barScalingFunction) !== null && _g !== void 0 ? _g : nothing}
33
- ></histogram-date-range>
34
-
35
- <button @click=${this.randomize}>Randomize</button>
36
- `;
37
- }
38
- randomize() {
39
- const minDate = Math.round(Math.random() * 1000);
40
- const maxDate = minDate + Math.round(Math.random() * 1000);
41
- // generate random bins
42
- const bins = Array.from({ length: 20 }, () => Math.floor(Math.random() * minDate));
43
- this.dataSource = {
44
- minDate,
45
- maxDate,
46
- minSelectedDate: minDate,
47
- maxSelectedDate: maxDate,
48
- bins: bins,
49
- };
50
- }
51
- };
52
- __decorate([
53
- state()
54
- ], LitHistogramWrapper.prototype, "dataSource", void 0);
55
- LitHistogramWrapper = __decorate([
56
- customElement('lit-histogram-wrapper')
57
- ], LitHistogramWrapper);
58
- export { LitHistogramWrapper };
59
- //# sourceMappingURL=list-histogram-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-histogram-wrapper.js","sourceRoot":"","sources":["../../../demo/js/list-histogram-wrapper.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAkB,OAAO,EAAE,MAAM,KAAK,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,gCAAgC,CAAC;AAWxC;;;GAGG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,UAAU;IAA5C;;QACI,eAAU,GAAe;YAChC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,IAAI,EAAE;gBACJ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;aACtE;SACF,CAAC;IAiCJ,CAAC;IA/BC,MAAM;;QACJ,OAAO,IAAI,CAAA;;mBAEI,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO;mBACxB,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO;2BAChB,MAAA,IAAI,CAAC,UAAU,0CAAE,eAAe;2BAChC,MAAA,IAAI,CAAC,UAAU,0CAAE,eAAe;uBACpC,IAAI;gBACX,MAAA,IAAI,CAAC,UAAU,0CAAE,IAAI;8BACP,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,kBAAkB,mCAAI,OAAO;;;uBAGrD,IAAI,CAAC,SAAS;KAChC,CAAC;IACJ,CAAC;IAEO,SAAS;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QAC3D,uBAAuB;QACvB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CACpC,CAAC;QACF,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO;YACP,OAAO;YACP,eAAe,EAAE,OAAO;YACxB,eAAe,EAAE,OAAO;YACxB,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;CACF,CAAA;AAzCU;IAAR,KAAK,EAAE;uDAQN;AATS,mBAAmB;IAD/B,aAAa,CAAC,uBAAuB,CAAC;GAC1B,mBAAmB,CA0C/B","sourcesContent":["import { LitElement, html, TemplateResult, nothing } from 'lit';\r\nimport { customElement, state } from 'lit/decorators.js';\r\nimport '../../src/histogram-date-range';\r\n\r\ninterface DataSource {\r\n minDate: unknown;\r\n maxDate: unknown;\r\n minSelectedDate: unknown;\r\n maxSelectedDate: unknown;\r\n bins: number[];\r\n barScalingFunction?: (input: number) => number;\r\n}\r\n\r\n/**\r\n * This is mainly to test the histogram-date-range within\r\n * a lit-element.\r\n */\r\n@customElement('lit-histogram-wrapper')\r\nexport class LitHistogramWrapper extends LitElement {\r\n @state() dataSource: DataSource = {\r\n minDate: 1955,\r\n maxDate: 2000,\r\n minSelectedDate: 1955,\r\n maxSelectedDate: 2000,\r\n bins: [\r\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,\r\n ],\r\n };\r\n\r\n render(): TemplateResult {\r\n return html`\r\n <histogram-date-range\r\n .minDate=${this.dataSource?.minDate}\r\n .maxDate=${this.dataSource?.maxDate}\r\n .minSelectedDate=${this.dataSource?.minSelectedDate}\r\n .maxSelectedDate=${this.dataSource?.maxSelectedDate}\r\n .updateDelay=${1000}\r\n .bins=${this.dataSource?.bins}\r\n .barScalingFunction=${this.dataSource?.barScalingFunction ?? nothing}\r\n ></histogram-date-range>\r\n\r\n <button @click=${this.randomize}>Randomize</button>\r\n `;\r\n }\r\n\r\n private randomize() {\r\n const minDate = Math.round(Math.random() * 1000);\r\n const maxDate = minDate + Math.round(Math.random() * 1000);\r\n // generate random bins\r\n const bins = Array.from({ length: 20 }, () =>\r\n Math.floor(Math.random() * minDate)\r\n );\r\n this.dataSource = {\r\n minDate,\r\n maxDate,\r\n minSelectedDate: minDate,\r\n maxSelectedDate: maxDate,\r\n bins: bins,\r\n };\r\n }\r\n}\r\n"]}
@@ -1,21 +0,0 @@
1
- import { LitElement, TemplateResult } from 'lit';
2
- import '../../src/histogram-date-range';
3
- interface DataSource {
4
- minDate: unknown;
5
- maxDate: unknown;
6
- minSelectedDate: unknown;
7
- maxSelectedDate: unknown;
8
- bins: number[];
9
- }
10
- /**
11
- * This is mainly to test the histogram-date-range within
12
- * a lit-element.
13
- */
14
- export declare class LitHistogramWrapper extends LitElement {
15
- barScaling?: 'linear' | 'logarithmic';
16
- dataSource: DataSource;
17
- render(): TemplateResult;
18
- private randomize;
19
- static get styles(): import("lit").CSSResult;
20
- }
21
- export {};
@@ -1,73 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { LitElement, html, css, nothing } from 'lit';
3
- import { customElement, property, state } from 'lit/decorators.js';
4
- import '../../src/histogram-date-range';
5
- const IDENTITY_FN = (x) => x;
6
- /**
7
- * This is mainly to test the histogram-date-range within
8
- * a lit-element.
9
- */
10
- let LitHistogramWrapper = class LitHistogramWrapper extends LitElement {
11
- constructor() {
12
- super(...arguments);
13
- this.dataSource = {
14
- minDate: 1955,
15
- maxDate: 2000,
16
- minSelectedDate: 1955,
17
- maxSelectedDate: 2000,
18
- bins: [
19
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
20
- ],
21
- };
22
- }
23
- render() {
24
- var _a, _b, _c, _d, _e;
25
- const scalingFn = this.barScaling === 'linear' ? IDENTITY_FN : nothing;
26
- return html `
27
- <histogram-date-range
28
- .minDate=${(_a = this.dataSource) === null || _a === void 0 ? void 0 : _a.minDate}
29
- .maxDate=${(_b = this.dataSource) === null || _b === void 0 ? void 0 : _b.maxDate}
30
- .minSelectedDate=${(_c = this.dataSource) === null || _c === void 0 ? void 0 : _c.minSelectedDate}
31
- .maxSelectedDate=${(_d = this.dataSource) === null || _d === void 0 ? void 0 : _d.maxSelectedDate}
32
- .updateDelay=${1000}
33
- .bins=${(_e = this.dataSource) === null || _e === void 0 ? void 0 : _e.bins}
34
- .barScalingFunction=${scalingFn}
35
- ></histogram-date-range>
36
-
37
- <button @click=${this.randomize}>Randomize</button>
38
- `;
39
- }
40
- randomize() {
41
- const minDate = Math.round(Math.random() * 1000);
42
- const maxDate = minDate + Math.round(Math.random() * 1000);
43
- // generate random bins
44
- const bins = Array.from({ length: 20 }, () => Math.floor(Math.random() * minDate));
45
- this.dataSource = {
46
- minDate,
47
- maxDate,
48
- minSelectedDate: minDate,
49
- maxSelectedDate: maxDate,
50
- bins: bins,
51
- };
52
- }
53
- static get styles() {
54
- return css `
55
- :host {
56
- display: flex;
57
- flex-direction: column;
58
- align-items: center;
59
- }
60
- `;
61
- }
62
- };
63
- __decorate([
64
- property({ type: String })
65
- ], LitHistogramWrapper.prototype, "barScaling", void 0);
66
- __decorate([
67
- state()
68
- ], LitHistogramWrapper.prototype, "dataSource", void 0);
69
- LitHistogramWrapper = __decorate([
70
- customElement('lit-histogram-wrapper')
71
- ], LitHistogramWrapper);
72
- export { LitHistogramWrapper };
73
- //# sourceMappingURL=lit-histogram-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lit-histogram-wrapper.js","sourceRoot":"","sources":["../../../demo/js/lit-histogram-wrapper.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAkB,OAAO,EAAE,MAAM,KAAK,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,gCAAgC,CAAC;AAUxC,MAAM,WAAW,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC;AAErC;;;GAGG;AAEI,IAAM,mBAAmB,GAAzB,MAAM,mBAAoB,SAAQ,UAAU;IAA5C;;QAGI,eAAU,GAAe;YAChC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI;YACrB,eAAe,EAAE,IAAI;YACrB,IAAI,EAAE;gBACJ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;aACtE;SACF,CAAC;IA4CJ,CAAC;IA1CC,MAAM;;QACJ,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;QACvE,OAAO,IAAI,CAAA;;mBAEI,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO;mBACxB,MAAA,IAAI,CAAC,UAAU,0CAAE,OAAO;2BAChB,MAAA,IAAI,CAAC,UAAU,0CAAE,eAAe;2BAChC,MAAA,IAAI,CAAC,UAAU,0CAAE,eAAe;uBACpC,IAAI;gBACX,MAAA,IAAI,CAAC,UAAU,0CAAE,IAAI;8BACP,SAAS;;;uBAGhB,IAAI,CAAC,SAAS;KAChC,CAAC;IACJ,CAAC;IAEO,SAAS;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QAC3D,uBAAuB;QACvB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CACpC,CAAC;QACF,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO;YACP,OAAO;YACP,eAAe,EAAE,OAAO;YACxB,eAAe,EAAE,OAAO;YACxB,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;KAMT,CAAC;IACJ,CAAC;CACF,CAAA;AAtD6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;uDAAuC;AAEzD;IAAR,KAAK,EAAE;uDAQN;AAXS,mBAAmB;IAD/B,aAAa,CAAC,uBAAuB,CAAC;GAC1B,mBAAmB,CAuD/B","sourcesContent":["import { LitElement, html, css, TemplateResult, nothing } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport '../../src/histogram-date-range';\n\ninterface DataSource {\n minDate: unknown;\n maxDate: unknown;\n minSelectedDate: unknown;\n maxSelectedDate: unknown;\n bins: number[];\n}\n\nconst IDENTITY_FN = (x: number) => x;\n\n/**\n * This is mainly to test the histogram-date-range within\n * a lit-element.\n */\n@customElement('lit-histogram-wrapper')\nexport class LitHistogramWrapper extends LitElement {\n @property({ type: String }) barScaling?: 'linear' | 'logarithmic';\n\n @state() dataSource: DataSource = {\n minDate: 1955,\n maxDate: 2000,\n minSelectedDate: 1955,\n maxSelectedDate: 2000,\n bins: [\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,\n ],\n };\n\n render(): TemplateResult {\n const scalingFn = this.barScaling === 'linear' ? IDENTITY_FN : nothing;\n return html`\n <histogram-date-range\n .minDate=${this.dataSource?.minDate}\n .maxDate=${this.dataSource?.maxDate}\n .minSelectedDate=${this.dataSource?.minSelectedDate}\n .maxSelectedDate=${this.dataSource?.maxSelectedDate}\n .updateDelay=${1000}\n .bins=${this.dataSource?.bins}\n .barScalingFunction=${scalingFn}\n ></histogram-date-range>\n\n <button @click=${this.randomize}>Randomize</button>\n `;\n }\n\n private randomize() {\n const minDate = Math.round(Math.random() * 1000);\n const maxDate = minDate + Math.round(Math.random() * 1000);\n // generate random bins\n const bins = Array.from({ length: 20 }, () =>\n Math.floor(Math.random() * minDate)\n );\n this.dataSource = {\n minDate,\n maxDate,\n minSelectedDate: minDate,\n maxSelectedDate: maxDate,\n bins: bins,\n };\n }\n\n static get styles() {\n return css`\n :host {\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n `;\n }\n}\n"]}