From bfe64c3810f3d80dbc6a4177257fb1eb5a65bcda Mon Sep 17 00:00:00 2001 From: Severin Landolt <41927988+severinlandolt@users.noreply.github.com> Date: Mon, 23 Oct 2023 16:27:17 +0200 Subject: [PATCH 1/2] feat: Switch component and axis tick improvements (#767) * fix ring color for date(range)picker * add onValueChange prop to textinput (#736) * feat: chore/updaterecharts (#762) * fix: select search on MultiSelect (#753) * feat: Switch component (#761) --------- Co-authored-by: Alexandre Rousseau Co-authored-by: mbauchet Co-authored-by: jzfrank <77217626+jzfrank@users.noreply.github.com> Co-authored-by: Laura Carvajal Co-authored-by: Severin Landolt --- package.json | 5 +- pnpm-lock.yaml | 171 +- .../chart-elements/AreaChart/AreaChart.tsx | 6 +- .../chart-elements/BarChart/BarChart.tsx | 5 +- .../chart-elements/LineChart/LineChart.tsx | 5 +- .../ScatterChart/ScatterChart.tsx | 8 +- .../chart-elements/common/BaseChartProps.tsx | 3 +- src/components/input-elements/BaseInput.tsx | 9 +- .../input-elements/DatePicker/DatePicker.tsx | 6 +- .../DateRangePicker/DateRangePicker.tsx | 6 +- .../MultiSelect/MultiSelect.tsx | 21 +- .../input-elements/Switch/Switch.tsx | 123 + src/components/input-elements/Switch/index.ts | 2 + src/components/input-elements/Tabs/Tab.tsx | 10 +- .../input-elements/TextInput/TextInput.tsx | 1 + src/components/input-elements/index.ts | 1 + src/lib/inputTypes.ts | 4 + .../chart-elements/AreaChart.stories.tsx | 26 +- .../chart-elements/BarChart.stories.tsx | 49 +- .../chart-elements/LineChart.stories.tsx | 22 + .../chart-elements/ScatterChart.stories.tsx | 30 + .../chart-elements/helpers/testData.tsx | 4876 +---------------- src/stories/input-elements/Switch.stories.tsx | 58 + .../input-elements/helpers/SimpleSwitch.tsx | 53 + .../helpers/SimpleTextInput.tsx | 6 +- tailwind.config.js | 2 +- 26 files changed, 788 insertions(+), 4720 deletions(-) create mode 100644 src/components/input-elements/Switch/Switch.tsx create mode 100644 src/components/input-elements/Switch/index.ts create mode 100644 src/stories/input-elements/Switch.stories.tsx create mode 100644 src/stories/input-elements/helpers/SimpleSwitch.tsx diff --git a/package.json b/package.json index d1f05b299..845a84a17 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "date-fns": "^2.28.0", "react-day-picker": "^8.7.1", "react-transition-group": "^4.4.5", - "recharts": "^2.7.1", + "recharts": "^2.9.0", "tailwind-merge": "^1.9.1" }, "devDependencies": { @@ -62,11 +62,12 @@ "@storybook/theming": "^7.4.6", "@testing-library/react": "^13.1.1", "@types/jest": "^27.4.1", + "@types/node": "^20.8.7", "@types/react": "^18.0.5", "@types/react-transition-group": "^4.4.5", "@typescript-eslint/eslint-plugin": "^6.7.5", "@typescript-eslint/parser": "^6.7.5", - "autoprefixer": "^10.4.4", + "autoprefixer": "^10.4.16", "babel-jest": "^27.5.1", "babel-loader": "^8.2.5", "conventional-changelog-conventionalcommits": "^5.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 384b4d9f0..80253073a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -24,8 +24,8 @@ dependencies: specifier: ^4.4.5 version: 4.4.5(react-dom@18.2.0)(react@18.2.0) recharts: - specifier: ^2.7.1 - version: 2.7.1(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + specifier: ^2.9.0 + version: 2.9.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) tailwind-merge: specifier: ^1.9.1 version: 1.13.1 @@ -115,6 +115,9 @@ devDependencies: '@types/jest': specifier: ^27.4.1 version: 27.5.2 + '@types/node': + specifier: ^20.8.7 + version: 20.8.7 '@types/react': specifier: ^18.0.5 version: 18.2.12 @@ -128,8 +131,8 @@ devDependencies: specifier: ^6.7.5 version: 6.7.5(eslint@8.51.0)(typescript@4.9.5) autoprefixer: - specifier: ^10.4.4 - version: 10.4.14(postcss@8.4.24) + specifier: ^10.4.16 + version: 10.4.16(postcss@8.4.24) babel-jest: specifier: ^27.5.1 version: 27.5.1(@babel/core@7.22.5) @@ -3326,7 +3329,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 jest-message-util: 27.5.1 jest-util: 27.5.1 @@ -3347,7 +3350,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.8.1 @@ -3384,7 +3387,7 @@ packages: dependencies: '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 jest-mock: 27.5.1 dev: true @@ -3394,7 +3397,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@sinonjs/fake-timers': 8.1.0 - '@types/node': 20.3.1 + '@types/node': 20.8.7 jest-message-util: 27.5.1 jest-mock: 27.5.1 jest-util: 27.5.1 @@ -3423,7 +3426,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -3537,7 +3540,7 @@ packages: dependencies: '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 '@types/yargs': 16.0.5 chalk: 4.1.2 dev: true @@ -3549,7 +3552,7 @@ packages: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 '@types/yargs': 17.0.28 chalk: 4.1.2 dev: true @@ -6013,19 +6016,19 @@ packages: resolution: {integrity: sha512-oyl4jvAfTGX9Bt6Or4H9ni1Z447/tQuxnZsytsCaExKlmJiU8sFgnIBRzJUpKwB5eWn9HuBYlUlVA74q/yN0eQ==} dependencies: '@types/connect': 3.4.36 - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/connect@3.4.36: resolution: {integrity: sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/cross-spawn@6.0.3: resolution: {integrity: sha512-BDAkU7WHHRHnvBf5z89lcvACsvkz/n7Tv+HyD/uW76O29HoH1Tk/W6iQrepaZVbisvlEek4ygwT8IW7ow9XLAA==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/d3-array@3.0.5: @@ -6119,7 +6122,7 @@ packages: /@types/express-serve-static-core@4.17.37: resolution: {integrity: sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 '@types/qs': 6.9.7 '@types/range-parser': 1.2.5 '@types/send': 0.17.2 @@ -6141,7 +6144,7 @@ packages: /@types/graceful-fs@4.1.6: resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/html-minifier-terser@6.1.0: @@ -6206,7 +6209,7 @@ packages: /@types/node-fetch@2.6.4: resolution: {integrity: sha512-1ZX9fcN4Rvkvgv4E6PAY5WXUFWFcRWxZa3EW83UjycOB9ljJCedb2CupIP4RZMEwF/M3eTcCihbBRgwtGbg5Rg==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 form-data: 3.0.1 dev: true @@ -6214,8 +6217,10 @@ packages: resolution: {integrity: sha512-8egDX8dE50XyXWH6C6PRCNkTP106DuUrvdrednFouDSmCi7IOvrqr0frznfZaHifHH/3aq/7a7v9N4wdXMqhBQ==} dev: true - /@types/node@20.3.1: - resolution: {integrity: sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==} + /@types/node@20.8.7: + resolution: {integrity: sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==} + dependencies: + undici-types: 5.25.3 dev: true /@types/normalize-package-data@2.4.1: @@ -6269,7 +6274,7 @@ packages: /@types/resolve@1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/scheduler@0.16.3: @@ -6284,7 +6289,7 @@ packages: resolution: {integrity: sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==} dependencies: '@types/mime': 1.3.3 - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/serve-static@1.15.3: @@ -6292,7 +6297,7 @@ packages: dependencies: '@types/http-errors': 2.0.2 '@types/mime': 3.0.2 - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /@types/stack-utils@2.0.1: @@ -6988,16 +6993,16 @@ packages: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: true - /autoprefixer@10.4.14(postcss@8.4.24): - resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} + /autoprefixer@10.4.16(postcss@8.4.24): + resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.21.8 - caniuse-lite: 1.0.30001502 - fraction.js: 4.2.0 + browserslist: 4.22.1 + caniuse-lite: 1.0.30001549 + fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.0 postcss: 8.4.24 @@ -7324,7 +7329,7 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001502 + caniuse-lite: 1.0.30001549 electron-to-chromium: 1.4.430 node-releases: 2.0.12 update-browserslist-db: 1.0.11(browserslist@4.21.8) @@ -7335,8 +7340,8 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001547 - electron-to-chromium: 1.4.548 + caniuse-lite: 1.0.30001549 + electron-to-chromium: 1.4.557 node-releases: 2.0.13 update-browserslist-db: 1.0.13(browserslist@4.22.1) dev: true @@ -7448,18 +7453,14 @@ packages: /caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: - browserslist: 4.21.8 - caniuse-lite: 1.0.30001502 + browserslist: 4.22.1 + caniuse-lite: 1.0.30001549 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 dev: true - /caniuse-lite@1.0.30001502: - resolution: {integrity: sha512-AZ+9tFXw1sS0o0jcpJQIXvFTOB/xGiQ4OQ2t98QX3NDn2EZTSRBC801gxrsGgViuq2ak/NLkNgSNEPtCr5lfKg==} - dev: true - - /caniuse-lite@1.0.30001547: - resolution: {integrity: sha512-W7CrtIModMAxobGhz8iXmDfuJiiKg1WADMO/9x7/CLNin5cpSbuBjooyoIUVB5eyCc36QuTVlkVa1iB2S5+/eA==} + /caniuse-lite@1.0.30001549: + resolution: {integrity: sha512-qRp48dPYSCYaP+KurZLhDYdVE+yEyht/3NlmcJgVQ2VMGt6JL36ndQ/7rgspdZsJuxDPFIo/OzBT2+GmIJ53BA==} dev: true /cardinal@2.1.1: @@ -7514,7 +7515,7 @@ packages: normalize-path: 3.0.0 readdirp: 3.6.0 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 /chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} @@ -7972,10 +7973,6 @@ packages: source-map: 0.6.1 dev: true - /css-unit-converter@1.1.2: - resolution: {integrity: sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==} - dev: false - /css-what@6.1.0: resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} engines: {node: '>= 6'} @@ -8523,8 +8520,8 @@ packages: resolution: {integrity: sha512-FytjTbGwz///F+ToZ5XSeXbbSaXalsVRXsz2mHityI5gfxft7ieW3HqFLkU5V1aIrY42aflICqbmFoDxW10etg==} dev: true - /electron-to-chromium@1.4.548: - resolution: {integrity: sha512-R77KD6mXv37DOyKLN/eW1rGS61N6yHOfapNSX9w+y9DdPG83l9Gkuv7qkCFZ4Ta4JPhrjgQfYbv4Y3TnM1Hi2Q==} + /electron-to-chromium@1.4.557: + resolution: {integrity: sha512-6x0zsxyMXpnMJnHrondrD3SuAeKcwij9S+83j2qHAQPXbGTDDfgImzzwgGlzrIcXbHQ42tkG4qA6U860cImNhw==} dev: true /emittery@0.8.1: @@ -9447,8 +9444,8 @@ packages: engines: {node: '>= 0.6'} dev: true - /fraction.js@4.2.0: - resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} + /fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} dev: true /fresh@0.5.2: @@ -9499,8 +9496,8 @@ packages: /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - /fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true @@ -10588,7 +10585,7 @@ packages: '@jest/environment': 27.5.1 '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 co: 4.6.0 dedent: 0.7.0 @@ -10713,7 +10710,7 @@ packages: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 jest-mock: 27.5.1 jest-util: 27.5.1 jsdom: 16.7.0 @@ -10731,7 +10728,7 @@ packages: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 jest-mock: 27.5.1 jest-util: 27.5.1 dev: true @@ -10747,7 +10744,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@types/graceful-fs': 4.1.6 - '@types/node': 20.3.1 + '@types/node': 20.8.7 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -10758,7 +10755,7 @@ packages: micromatch: 4.0.5 walker: 1.0.8 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: true /jest-haste-map@29.7.0: @@ -10767,7 +10764,7 @@ packages: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.6 - '@types/node': 20.3.1 + '@types/node': 20.8.7 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -10777,7 +10774,7 @@ packages: micromatch: 4.0.5 walker: 1.0.8 optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: true /jest-jasmine2@27.5.1: @@ -10788,7 +10785,7 @@ packages: '@jest/source-map': 27.5.1 '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 co: 4.6.0 expect: 27.5.1 @@ -10843,7 +10840,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 dev: true /jest-pnp-resolver@1.2.3(jest-resolve@27.5.1): @@ -10904,7 +10901,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 emittery: 0.8.1 graceful-fs: 4.2.11 @@ -10961,7 +10958,7 @@ packages: resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 graceful-fs: 4.2.11 dev: true @@ -11000,7 +10997,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 @@ -11012,7 +11009,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.6.3 - '@types/node': 20.3.1 + '@types/node': 20.8.7 chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 @@ -11037,7 +11034,7 @@ packages: dependencies: '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 20.3.1 + '@types/node': 20.8.7 ansi-escapes: 4.3.2 chalk: 4.1.2 jest-util: 27.5.1 @@ -11048,7 +11045,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 16.18.36 + '@types/node': 20.8.7 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -11057,7 +11054,7 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 20.3.1 + '@types/node': 20.8.7 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -12589,7 +12586,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 caniuse-api: 3.0.0 colord: 2.9.3 postcss: 8.4.24 @@ -12602,7 +12599,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 postcss: 8.4.24 postcss-value-parser: 4.2.0 dev: true @@ -12727,7 +12724,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 caniuse-api: 3.0.0 cssnano-utils: 3.1.0(postcss@8.4.24) postcss: 8.4.24 @@ -12762,7 +12759,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 cssnano-utils: 3.1.0(postcss@8.4.24) postcss: 8.4.24 postcss-value-parser: 4.2.0 @@ -12909,7 +12906,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 postcss: 8.4.24 postcss-value-parser: 4.2.0 dev: true @@ -12952,7 +12949,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 caniuse-api: 3.0.0 postcss: 8.4.24 dev: true @@ -12995,10 +12992,6 @@ packages: postcss-selector-parser: 6.0.13 dev: true - /postcss-value-parser@3.3.1: - resolution: {integrity: sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==} - dev: false - /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -13385,8 +13378,8 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /react-smooth@2.0.3(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-yl4y3XiMorss7ayF5QnBiSprig0+qFHui8uh7Hgg46QX5O+aRMRKlfGGNGLHno35JkQSvSYY8eCWkBfHfrSHfg==} + /react-smooth@2.0.5(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-BMP2Ad42tD60h0JW6BFaib+RJuV5dsXJK9Baxiv/HlNFjvRLqA9xrNKxVWnUIZPQfzUwGXIlU/dSYLU+54YGQA==} peerDependencies: prop-types: ^15.6.0 react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 @@ -13557,8 +13550,8 @@ packages: decimal.js-light: 2.5.1 dev: false - /recharts@2.7.1(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-lr4rVlyddTjhXbX6doElETM/2ya1BJ7L367rdAwMavL68DVn/Zkm1hcdlZtOX2QT2yaR8sQ5Ana66HPT7lFDIA==} + /recharts@2.9.0(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-cVgiAU3W5UrA8nRRV/N0JrudgZzY/vjkzrlShbH+EFo1vs4nMlXgshZWLI0DfDLmn4/p4pF7Lq7F5PU+K94Ipg==} engines: {node: '>=12'} peerDependencies: prop-types: ^15.6.0 @@ -13573,9 +13566,9 @@ packages: react-dom: 18.2.0(react@18.2.0) react-is: 16.13.1 react-resize-detector: 8.1.0(react-dom@18.2.0)(react@18.2.0) - react-smooth: 2.0.3(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) + react-smooth: 2.0.5(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) recharts-scale: 0.4.5 - reduce-css-calc: 2.1.8 + tiny-invariant: 1.3.1 victory-vendor: 36.6.11 dev: false @@ -13593,13 +13586,6 @@ packages: esprima: 4.0.1 dev: true - /reduce-css-calc@2.1.8: - resolution: {integrity: sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==} - dependencies: - css-unit-converter: 1.1.2 - postcss-value-parser: 3.3.1 - dev: false - /reflect.getprototypeof@1.0.4: resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} engines: {node: '>= 0.4'} @@ -13879,7 +13865,7 @@ packages: engines: {node: '>=10.0.0'} hasBin: true optionalDependencies: - fsevents: 2.3.2 + fsevents: 2.3.3 dev: true /run-applescript@5.0.0: @@ -14485,7 +14471,7 @@ packages: peerDependencies: postcss: ^8.2.15 dependencies: - browserslist: 4.21.8 + browserslist: 4.22.1 postcss: 8.4.24 postcss-selector-parser: 6.0.13 dev: true @@ -14801,7 +14787,6 @@ packages: /tiny-invariant@1.3.1: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} - dev: true /titleize@3.0.0: resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} @@ -15038,6 +15023,10 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /undici-types@5.25.3: + resolution: {integrity: sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==} + dev: true + /unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} diff --git a/src/components/chart-elements/AreaChart/AreaChart.tsx b/src/components/chart-elements/AreaChart/AreaChart.tsx index 7b3647fde..e101189b4 100644 --- a/src/components/chart-elements/AreaChart/AreaChart.tsx +++ b/src/components/chart-elements/AreaChart/AreaChart.tsx @@ -57,6 +57,7 @@ const AreaChart = React.forwardRef((props, ref) showXAxis = true, showYAxis = true, yAxisWidth = 56, + intervalType = "equidistantPreserveStart", showAnimation = false, animationDuration = 900, showTooltip = true, @@ -144,7 +145,6 @@ const AreaChart = React.forwardRef((props, ref) : undefined } > - {" "} {showGridLines ? ( ((props, ref) /> ) : null} ((props, ref) // dark "dark:fill-dark-tremor-content", )} - interval="preserveStartEnd" + interval={startEndOnly ? "preserveStartEnd" : intervalType} tickLine={false} axisLine={false} - padding={{ left: 10, right: 10 }} minTickGap={5} /> ((props, ref) => showXAxis = true, showYAxis = true, yAxisWidth = 56, + intervalType = "equidistantPreserveStart", showTooltip = true, showLegend = true, showGridLines = true, @@ -156,9 +157,10 @@ const BarChart = React.forwardRef((props, ref) => {layout !== "vertical" ? ( ((props, ref) => tickLine={false} axisLine={false} tickFormatter={valueFormatter} - padding={{ left: 10, right: 10 }} minTickGap={5} allowDecimals={allowDecimals} /> diff --git a/src/components/chart-elements/LineChart/LineChart.tsx b/src/components/chart-elements/LineChart/LineChart.tsx index a1242cd1b..8b2f1bcb8 100644 --- a/src/components/chart-elements/LineChart/LineChart.tsx +++ b/src/components/chart-elements/LineChart/LineChart.tsx @@ -54,6 +54,7 @@ const LineChart = React.forwardRef((props, ref) showXAxis = true, showYAxis = true, yAxisWidth = 56, + intervalType = "equidistantPreserveStart", animationDuration = 900, showAnimation = false, showTooltip = true, @@ -156,9 +157,10 @@ const LineChart = React.forwardRef((props, ref) /> ) : null} ((props, ref) )} tickLine={false} axisLine={false} - padding={{ left: 10, right: 10 }} minTickGap={5} /> ((props, showXAxis = true, showYAxis = true, yAxisWidth = 56, + intervalType = "equidistantPreserveStart", animationDuration = 900, showAnimation = false, showTooltip = true, @@ -190,6 +192,7 @@ const ScatterChart = React.forwardRef((props, } : undefined } + margin={{ left: 20, right: 20 }} > {showGridLines ? ( ((props, ((props, tickLine={false} tickFormatter={valueFormatter.x} axisLine={false} - padding={{ left: 0, right: 0 }} minTickGap={5} domain={xAxisDomain as AxisDomain} allowDataOverflow={true} diff --git a/src/components/chart-elements/common/BaseChartProps.tsx b/src/components/chart-elements/common/BaseChartProps.tsx index 5a505b826..fb9f4239f 100644 --- a/src/components/chart-elements/common/BaseChartProps.tsx +++ b/src/components/chart-elements/common/BaseChartProps.tsx @@ -1,4 +1,4 @@ -import { Color, ValueFormatter } from "../../../lib"; +import { Color, ValueFormatter, IntervalType } from "../../../lib"; import type BaseAnimationTimingProps from "./BaseAnimationTimingProps"; import { CustomTooltipType } from "./CustomTooltipProps"; @@ -23,6 +23,7 @@ interface BaseChartProps extends BaseAnimationTimingProps, React.HTMLAttributes< showXAxis?: boolean; showYAxis?: boolean; yAxisWidth?: number; + intervalType?: IntervalType; showTooltip?: boolean; showGradient?: boolean; showLegend?: boolean; diff --git a/src/components/input-elements/BaseInput.tsx b/src/components/input-elements/BaseInput.tsx index df23e328f..249d08944 100644 --- a/src/components/input-elements/BaseInput.tsx +++ b/src/components/input-elements/BaseInput.tsx @@ -13,6 +13,7 @@ export interface BaseInputProps extends React.InputHTMLAttributes void; makeInputClassName: (className: string) => string; } @@ -29,6 +30,8 @@ const BaseInput = React.forwardRef((props, ref stepper, makeInputClassName, className, + onChange, + onValueChange, ...other } = props; const [isFocused, setIsFocused] = useState(false); @@ -114,7 +117,7 @@ const BaseInput = React.forwardRef((props, ref className={tremorTwMerge( makeInputClassName("input"), // common - "w-full focus:outline-none focus:ring-0 border-none bg-transparent text-tremor-default", + "w-full focus:outline-none focus:ring-0 border-none bg-transparent text-tremor-default rounded-tremor-default", // light "text-tremor-content-emphasis", // dark @@ -130,6 +133,10 @@ const BaseInput = React.forwardRef((props, ref placeholder={placeholder} disabled={disabled} data-testid="base-input" + onChange={(e) => { + onChange?.(e); + onValueChange?.(e.target.value); + }} {...other} /> {type === "password" && !disabled ? ( diff --git a/src/components/input-elements/DatePicker/DatePicker.tsx b/src/components/input-elements/DatePicker/DatePicker.tsx index 43c50720c..2a8acdd8a 100644 --- a/src/components/input-elements/DatePicker/DatePicker.tsx +++ b/src/components/input-elements/DatePicker/DatePicker.tsx @@ -84,7 +84,7 @@ const DatePicker = React.forwardRef((props, ref as="div" className={tremorTwMerge( "relative w-full min-w-[10rem] text-tremor-default", - "focus:ring-2 focus:ring-tremor-brand-muted focus:dark:focus:ring-dark-tremor-brand-muted", + "focus:ring-2 focus:ring-tremor-brand-muted dark:focus:ring-dark-tremor-brand-muted", className, )} {...other} @@ -95,9 +95,9 @@ const DatePicker = React.forwardRef((props, ref // common "w-full outline-none text-left whitespace-nowrap truncate focus:ring-2 transition duration-100 rounded-tremor-default flex flex-nowrap", // light - "border-tremor-border shadow-tremor-input text-tremor-content-emphasis focus:border-tremor-brand-subtle", + "border-tremor-border shadow-tremor-input text-tremor-content-emphasis focus:border-tremor-brand-subtle focus:ring-tremor-brand-muted", // dark - "dark:border-dark-tremor-border dark:shadow-dark-tremor-input dark:text-dark-tremor-content-emphasis dark:focus:border-dark-tremor-brand-subtle", + "dark:border-dark-tremor-border dark:shadow-dark-tremor-input dark:text-dark-tremor-content-emphasis dark:focus:border-dark-tremor-brand-subtle dark:focus:ring-dark-tremor-brand-muted", spacing.lg.paddingLeft, isClearEnabled ? spacing.fourXl.paddingRight : spacing.twoXl.paddingRight, spacing.sm.paddingY, diff --git a/src/components/input-elements/DateRangePicker/DateRangePicker.tsx b/src/components/input-elements/DateRangePicker/DateRangePicker.tsx index 90c08da7b..f98cc7152 100644 --- a/src/components/input-elements/DateRangePicker/DateRangePicker.tsx +++ b/src/components/input-elements/DateRangePicker/DateRangePicker.tsx @@ -171,7 +171,7 @@ const DateRangePicker = React.forwardRef(( "w-full overflow-hidden", enableSelect ? "rounded-l-tremor-default" : "rounded-tremor-default", isCalendarButtonFocused && - "ring-2 ring-tremor-brand-muted dark:focus:ring-dark-tremor-brand-muted z-10", + "ring-2 ring-tremor-brand-muted dark:ring-dark-tremor-brand-muted z-10", )} >
@@ -183,9 +183,9 @@ const DateRangePicker = React.forwardRef(( // common "w-full outline-none text-left whitespace-nowrap truncate focus:ring-2 transition duration-100 rounded-l-tremor-default flex flex-nowrap", // light - "rounded-l-tremor-default border-tremor-border text-tremor-content-emphasis focus:border-tremor-brand-subtle", + "rounded-l-tremor-default border-tremor-border text-tremor-content-emphasis focus:border-tremor-brand-subtle focus:ring-tremor-brand-muted", // dark - "dark:border-dark-tremor-border dark:text-dark-tremor-content-emphasis dark:focus:border-dark-tremor-brand-subtle", + "dark:border-dark-tremor-border dark:text-dark-tremor-content-emphasis dark:focus:border-dark-tremor-brand-subtle dark:focus:ring-dark-tremor-brand-muted", enableSelect ? "rounded-l-tremor-default" : "rounded-tremor-default", spacing.lg.paddingLeft, isClearEnabled ? spacing.fourXl.paddingRight : spacing.twoXl.paddingRight, diff --git a/src/components/input-elements/MultiSelect/MultiSelect.tsx b/src/components/input-elements/MultiSelect/MultiSelect.tsx index 555eba0a2..5bae2e36e 100644 --- a/src/components/input-elements/MultiSelect/MultiSelect.tsx +++ b/src/components/input-elements/MultiSelect/MultiSelect.tsx @@ -43,6 +43,8 @@ const MultiSelect = React.forwardRef((props, r const Icon = icon; const [selectedValue, setSelectedValue] = useInternalState(defaultValue, value); + const optionsAvailable = getFilteredOptions("", children as React.ReactElement[]); + const [searchQuery, setSearchQuery] = useState(""); // checked if there are selected options @@ -51,8 +53,11 @@ const MultiSelect = React.forwardRef((props, r const hasSelection = selectedItems.length > 0; const filteredOptions = useMemo( - () => getFilteredOptions(searchQuery, children as React.ReactElement[]), - [searchQuery, children], + () => + searchQuery + ? getFilteredOptions(searchQuery, children as React.ReactElement[]) + : optionsAvailable, + [searchQuery, children, optionsAvailable], ); const handleReset = () => { @@ -60,6 +65,10 @@ const MultiSelect = React.forwardRef((props, r onValueChange?.([]); }; + const handleResetSearch = () => { + setSearchQuery(""); + }; + return ( ((props, r
{value.length > 0 ? (
- {filteredOptions + {optionsAvailable .filter((option) => value.includes(option.props.value)) .map((option, index) => { return ( @@ -279,9 +288,13 @@ const MultiSelect = React.forwardRef((props, r } }} onChange={(e) => setSearchQuery(e.target.value)} + value={searchQuery} />
- + {filteredOptions} diff --git a/src/components/input-elements/Switch/Switch.tsx b/src/components/input-elements/Switch/Switch.tsx new file mode 100644 index 000000000..a80864b82 --- /dev/null +++ b/src/components/input-elements/Switch/Switch.tsx @@ -0,0 +1,123 @@ +import { Switch as HeadlessSwitch } from "@headlessui/react"; +import { useInternalState } from "hooks"; +import { Color, colorPalette, getColorClassNames, makeClassName, tremorTwMerge } from "lib"; + +import React, { useState } from "react"; + +const makeSwitchClassName = makeClassName("Switch"); + +export interface SwitchProps extends Omit, "onChange"> { + checked?: boolean; + defaultChecked?: boolean; + onChange?: (value: boolean) => void; + color?: Color; + name?: string; + error?: boolean; + errorMessage?: string; + disabled?: boolean; + required?: boolean; + id?: string; +} + +const Switch = React.forwardRef((props, ref) => { + const { + checked, + defaultChecked = false, + onChange, + color = "blue", + name, + error, + errorMessage, + disabled, + required, + id, + ...other + } = props; + + const [isChecked, setIsChecked] = useInternalState(defaultChecked, checked); + const [isFocused, setIsFocused] = useState(false); + + return ( + <> +
+ { + e.preventDefault(); + }} + /> + { + setIsChecked(e); + onChange?.(e); + }} + disabled={disabled} + className={tremorTwMerge( + makeSwitchClassName("switch"), + "w-10 h-5 group relative inline-flex flex-shrink-0 cursor-pointer items-center justify-center rounded-tremor-full", + "focus:outline-none", + disabled ? "opacity-0 cursor-not-allowed" : "", + )} + onFocus={() => setIsFocused(true)} + onBlur={() => setIsFocused(false)} + id={id} + > + + Switch {isChecked ? "on" : "off"} + + +
+ {error && errorMessage ? ( +

+ {errorMessage} +

+ ) : null} + + ); +}); + +Switch.displayName = "Switch"; + +export default Switch; diff --git a/src/components/input-elements/Switch/index.ts b/src/components/input-elements/Switch/index.ts new file mode 100644 index 000000000..eaf14f132 --- /dev/null +++ b/src/components/input-elements/Switch/index.ts @@ -0,0 +1,2 @@ +export { default as Switch } from "./Switch"; +export type { SwitchProps } from "./Switch"; diff --git a/src/components/input-elements/Tabs/Tab.tsx b/src/components/input-elements/Tabs/Tab.tsx index 23db11927..cedcfcc91 100644 --- a/src/components/input-elements/Tabs/Tab.tsx +++ b/src/components/input-elements/Tabs/Tab.tsx @@ -1,11 +1,17 @@ "use client"; import { Tab as HeadlessTab } from "@headlessui/react"; -import { colorPalette, getColorClassNames, tremorTwMerge } from "lib"; +import { + colorPalette, + getColorClassNames, + tremorTwMerge, + makeClassName, + sizing, + spacing, +} from "lib"; import React, { useContext } from "react"; import { TabVariant, TabVariantContext } from "components/input-elements/Tabs/TabList"; import { BaseColorContext } from "contexts"; -import { makeClassName, sizing, spacing } from "lib"; import { Color } from "../../../lib/inputTypes"; const makeTabClassName = makeClassName("Tab"); diff --git a/src/components/input-elements/TextInput/TextInput.tsx b/src/components/input-elements/TextInput/TextInput.tsx index b60edd2e6..6811b2f80 100644 --- a/src/components/input-elements/TextInput/TextInput.tsx +++ b/src/components/input-elements/TextInput/TextInput.tsx @@ -7,6 +7,7 @@ export type TextInputProps = Omit void; icon?: React.ElementType | React.JSXElementConstructor; error?: boolean; errorMessage?: string; diff --git a/src/components/input-elements/index.ts b/src/components/input-elements/index.ts index 3229e5807..411be10be 100644 --- a/src/components/input-elements/index.ts +++ b/src/components/input-elements/index.ts @@ -7,3 +7,4 @@ export * from "./SearchSelect"; export * from "./Select"; export * from "./Tabs"; export * from "./TextInput"; +export * from "./Switch"; diff --git a/src/lib/inputTypes.ts b/src/lib/inputTypes.ts index 43e660cfb..ddc9ffd92 100644 --- a/src/lib/inputTypes.ts +++ b/src/lib/inputTypes.ts @@ -4,6 +4,10 @@ export type ValueFormatter = { export type CurveType = "linear" | "natural" | "monotone" | "step"; +export type Interval = "preserveStartEnd" | "equidistantPreserveStart"; + +export type IntervalType = "preserveStartEnd" | Interval; + const iconVariantValues = ["simple", "light", "shadow", "solid", "outlined"] as const; export type IconVariant = (typeof iconVariantValues)[number]; diff --git a/src/stories/chart-elements/AreaChart.stories.tsx b/src/stories/chart-elements/AreaChart.stories.tsx index b508b819b..a2f363d8e 100644 --- a/src/stories/chart-elements/AreaChart.stories.tsx +++ b/src/stories/chart-elements/AreaChart.stories.tsx @@ -9,6 +9,8 @@ import { simpleBaseChartData as data, simpleBaseChartDataWithNulls, singleAndMultipleData, + longBaseChartData, + longIndexBaseChartData, } from "./helpers/testData"; import { valueFormatter } from "./helpers/utils"; @@ -127,6 +129,26 @@ export const SingleAndMultipleDataAndOnValueChange: Story = { args: { data: singleAndMultipleData, onValueChange: (v: any) => alert(JSON.stringify(v)) }, }; +export const PreserveStartEnd: Story = { + args: { intervalType: "preserveStartEnd" }, +}; + +export const LongDataInput: Story = { + args: { data: longBaseChartData }, +}; + +export const LongDataInputAndPreserveStartEnd: Story = { + args: { data: longBaseChartData, intervalType: "preserveStartEnd" }, +}; + +export const LongIndexName: Story = { + args: { data: longIndexBaseChartData }, +}; + +export const LongIndexNameAndPreserveStartEnd: Story = { + args: { data: longIndexBaseChartData, intervalType: "preserveStartEnd" }, +}; + export const MultipleZeroValues: Story = { args: { data: [ @@ -136,12 +158,12 @@ export const MultipleZeroValues: Story = { "Successful Payments": 0, }, { - month: "Jun 21'", + month: "Jun 21", Sales: 2390, "Successful Payments": 0, }, { - month: "Jul 21'", + month: "Jul 21", Sales: 3490, "Successful Payments": 0, }, diff --git a/src/stories/chart-elements/BarChart.stories.tsx b/src/stories/chart-elements/BarChart.stories.tsx index f7193c28a..233a25f1a 100644 --- a/src/stories/chart-elements/BarChart.stories.tsx +++ b/src/stories/chart-elements/BarChart.stories.tsx @@ -5,7 +5,12 @@ import type { Meta, StoryObj } from "@storybook/react"; import { BarChart } from "components"; import { CustomTooltipType } from "components/chart-elements/common/CustomTooltipProps"; import { Color, currencyValueFormatter } from "lib"; -import { simpleBaseChartData as data, singleAndMultipleData } from "./helpers/testData"; +import { + simpleBaseChartData as data, + singleAndMultipleData, + longBaseChartData, + longIndexBaseChartData, +} from "./helpers/testData"; const meta: Meta = { title: "Components/Chart/BarChart", @@ -121,6 +126,48 @@ export const SingleAndMultipleDataAndOnValueChange: Story = { args: { data: singleAndMultipleData, onValueChange: (v: any) => alert(JSON.stringify(v)) }, }; +export const PreserveStartEnd: Story = { + args: { intervalType: "preserveStartEnd" }, +}; + +export const LongDataInput: Story = { + args: { data: longBaseChartData }, +}; + +export const LongDataInputAndPreserveStartEnd: Story = { + args: { data: longBaseChartData, intervalType: "preserveStartEnd" }, +}; + +export const LongIndexName: Story = { + args: { data: longIndexBaseChartData }, +}; + +export const LongIndexNameAndPreserveStartEnd: Story = { + args: { data: longIndexBaseChartData, intervalType: "preserveStartEnd" }, +}; + +export const MultipleZeroValues: Story = { + args: { + data: [ + { + month: "May 21", + Sales: 2390, + "Successful Payments": 0, + }, + { + month: "Jun 21", + Sales: 2390, + "Successful Payments": 0, + }, + { + month: "Jul 21", + Sales: 3490, + "Successful Payments": 0, + }, + ], + }, +}; + //Custom tooltips const customTooltipColors: Color[] = ["cyan"]; const customTooltipIndex = "month"; diff --git a/src/stories/chart-elements/LineChart.stories.tsx b/src/stories/chart-elements/LineChart.stories.tsx index c6b226b05..311ab661e 100644 --- a/src/stories/chart-elements/LineChart.stories.tsx +++ b/src/stories/chart-elements/LineChart.stories.tsx @@ -9,6 +9,8 @@ import { simpleBaseChartData as data, simpleBaseChartDataWithNulls, singleAndMultipleData, + longBaseChartData, + longIndexBaseChartData, } from "./helpers/testData"; import { valueFormatter } from "./helpers/utils"; @@ -116,6 +118,26 @@ export const SingleAndMultipleDataAndOnValueChange: Story = { args: { data: singleAndMultipleData, onValueChange: (v: any) => alert(JSON.stringify(v)) }, }; +export const PreserveStartEnd: Story = { + args: { intervalType: "preserveStartEnd" }, +}; + +export const LongDataInput: Story = { + args: { data: longBaseChartData }, +}; + +export const LongDataInputAndPreserveStartEnd: Story = { + args: { data: longBaseChartData, intervalType: "preserveStartEnd" }, +}; + +export const LongIndexName: Story = { + args: { data: longIndexBaseChartData }, +}; + +export const LongIndexNameAndPreserveStartEnd: Story = { + args: { data: longIndexBaseChartData, intervalType: "preserveStartEnd" }, +}; + //Custom tooltips const customTooltipColors: Color[] = ["cyan"]; const customTooltipIndex = "month"; diff --git a/src/stories/chart-elements/ScatterChart.stories.tsx b/src/stories/chart-elements/ScatterChart.stories.tsx index cfb5b4bc4..f2f04f63e 100644 --- a/src/stories/chart-elements/ScatterChart.stories.tsx +++ b/src/stories/chart-elements/ScatterChart.stories.tsx @@ -77,6 +77,10 @@ export const OnValueChange: Story = { }, }; +export const IntervalTypePreserve: Story = { + args: { intervalType: "preserveStartEnd" }, +}; + export const RichDataExample: Story = { args: { data: data2, @@ -92,6 +96,32 @@ export const RichDataExample: Story = { }, }; +export const PreserveStartEnd: Story = { + args: { intervalType: "preserveStartEnd" }, +}; + +export const MultipleZeroValues: Story = { + args: { + data: [ + { + month: "May 21", + Sales: 2390, + "Successful Payments": 0, + }, + { + month: "Jun 21", + Sales: 2390, + "Successful Payments": 0, + }, + { + month: "Jul 21", + Sales: 3490, + "Successful Payments": 0, + }, + ], + }, +}; + //Custom tooltips const customTooltipColors: Color[] = ["red", "green", "blue", "yellow"]; const customTooltipIndex = "location"; diff --git a/src/stories/chart-elements/helpers/testData.tsx b/src/stories/chart-elements/helpers/testData.tsx index dad19cb0e..8db475ab4 100644 --- a/src/stories/chart-elements/helpers/testData.tsx +++ b/src/stories/chart-elements/helpers/testData.tsx @@ -1,5962 +1,1642 @@ export const longBaseChartData = [ { - month: "Jan 21'", + month: "Jan 21", Sales: 4400, "Successful Payments": 5026, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 21'", + month: "Feb 21", Sales: 3612, "Successful Payments": 4181, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 21'", + month: "Mar 21", Sales: 145, "Successful Payments": 1131, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 21'", + month: "Apr 21", Sales: 5142, "Successful Payments": 2159, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 21'", + month: "May 21", Sales: 2743, "Successful Payments": 956, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 21'", + month: "Jun 21", Sales: 4496, "Successful Payments": 2838, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 21'", + month: "Jul 21", Sales: 4534, "Successful Payments": 3135, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 21'", + month: "Aug 21", Sales: 398, "Successful Payments": 3958, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 21'", + month: "Sep 21", Sales: 4953, "Successful Payments": 1448, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 21'", + month: "Oct 21", Sales: 3246, "Successful Payments": 3059, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 21'", + month: "Nov 21", Sales: 1980, "Successful Payments": 867, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 21'", + month: "Dec 21", Sales: 2775, "Successful Payments": 982, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 22'", + month: "Jan 22", Sales: 3869, "Successful Payments": 571, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 22'", + month: "Feb 22", Sales: 1219, "Successful Payments": 1813, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 22'", + month: "Mar 22", Sales: 3551, "Successful Payments": 2068, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 22'", + month: "Apr 22", Sales: 1969, "Successful Payments": 1155, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 22'", + month: "May 22", Sales: 3513, "Successful Payments": 4703, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 22'", + month: "Jun 22", Sales: 1524, "Successful Payments": 1176, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 22'", + month: "Jul 22", Sales: 1462, "Successful Payments": 4463, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 22'", + month: "Aug 22", Sales: 3828, "Successful Payments": 167, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 22'", + month: "Sep 22", Sales: 3110, "Successful Payments": 3903, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 22'", + month: "Oct 22", Sales: 2311, "Successful Payments": 3669, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 22'", + month: "Nov 22", Sales: 3821, "Successful Payments": 3376, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 22'", + month: "Dec 22", Sales: 5115, "Successful Payments": 4914, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 23'", + month: "Jan 23", Sales: 1413, "Successful Payments": 1872, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 23'", + month: "Feb 23", Sales: 1305, "Successful Payments": 4073, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 23'", + month: "Mar 23", Sales: 2218, "Successful Payments": 559, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 23'", + month: "Apr 23", Sales: 5051, "Successful Payments": 3968, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 23'", + month: "May 23", Sales: 3411, "Successful Payments": 4837, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 23'", + month: "Jun 23", Sales: 3464, "Successful Payments": 4570, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 23'", + month: "Jul 23", Sales: 1482, "Successful Payments": 1760, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 23'", + month: "Aug 23", Sales: 1180, "Successful Payments": 1806, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 23'", + month: "Sep 23", Sales: 1320, "Successful Payments": 4531, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 23'", + month: "Oct 23", Sales: 2860, "Successful Payments": 3168, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 23'", + month: "Nov 23", Sales: 672, "Successful Payments": 1499, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 23'", + month: "Dec 23", Sales: 995, "Successful Payments": 1146, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 24'", + month: "Jan 24", Sales: 2230, "Successful Payments": 2761, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 24'", + month: "Feb 24", Sales: 3019, "Successful Payments": 4286, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 24'", + month: "Mar 24", Sales: 4489, "Successful Payments": 1722, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 24'", + month: "Apr 24", Sales: 940, "Successful Payments": 3497, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 24'", + month: "May 24", Sales: 1973, "Successful Payments": 858, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 24'", + month: "Jun 24", Sales: 3195, "Successful Payments": 2873, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 24'", + month: "Jul 24", Sales: 3556, "Successful Payments": 391, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 24'", + month: "Aug 24", Sales: 4431, "Successful Payments": 3194, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 24'", + month: "Sep 24", Sales: 2693, "Successful Payments": 2404, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 24'", + month: "Oct 24", Sales: 3076, "Successful Payments": 2455, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 24'", + month: "Nov 24", Sales: 1908, "Successful Payments": 1209, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 24'", + month: "Dec 24", Sales: 3925, "Successful Payments": 1499, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 25'", + month: "Jan 25", Sales: 3842, "Successful Payments": 658, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 25'", + month: "Feb 25", Sales: 463, "Successful Payments": 637, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 25'", + month: "Mar 25", Sales: 4560, "Successful Payments": 1227, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 25'", + month: "Apr 25", Sales: 4702, "Successful Payments": 877, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 25'", + month: "May 25", Sales: 4622, "Successful Payments": 3463, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 25'", + month: "Jun 25", Sales: 3831, "Successful Payments": 1241, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 25'", + month: "Jul 25", Sales: 1276, "Successful Payments": 1618, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 25'", + month: "Aug 25", Sales: 4722, "Successful Payments": 3496, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 25'", + month: "Sep 25", Sales: 386, "Successful Payments": 5080, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 25'", + month: "Oct 25", Sales: 786, "Successful Payments": 179, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 25'", + month: "Nov 25", Sales: 883, "Successful Payments": 2458, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 25'", + month: "Dec 25", Sales: 5079, "Successful Payments": 3292, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 26'", + month: "Jan 26", Sales: 528, "Successful Payments": 1778, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 26'", + month: "Feb 26", Sales: 1039, "Successful Payments": 3136, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 26'", + month: "Mar 26", Sales: 4336, "Successful Payments": 264, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 26'", + month: "Apr 26", Sales: 1460, "Successful Payments": 426, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 26'", + month: "May 26", Sales: 3026, "Successful Payments": 2190, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 26'", + month: "Jun 26", Sales: 3758, "Successful Payments": 4651, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 26'", + month: "Jul 26", Sales: 170, "Successful Payments": 217, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 26'", + month: "Aug 26", Sales: 4784, "Successful Payments": 4014, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 26'", + month: "Sep 26", Sales: 3665, "Successful Payments": 4634, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 26'", + month: "Oct 26", Sales: 4041, "Successful Payments": 3762, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 26'", + month: "Nov 26", Sales: 969, "Successful Payments": 682, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 26'", + month: "Dec 26", Sales: 4068, "Successful Payments": 4044, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 27'", + month: "Jan 27", Sales: 2136, "Successful Payments": 824, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 27'", + month: "Feb 27", Sales: 3122, "Successful Payments": 2852, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 27'", + month: "Mar 27", Sales: 2931, "Successful Payments": 2205, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 27'", + month: "Apr 27", Sales: 517, "Successful Payments": 1112, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 27'", + month: "May 27", Sales: 3641, "Successful Payments": 1254, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 27'", + month: "Jun 27", Sales: 4115, "Successful Payments": 1336, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 27'", + month: "Jul 27", Sales: 3027, "Successful Payments": 3751, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 27'", + month: "Aug 27", Sales: 5069, "Successful Payments": 4319, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 27'", + month: "Sep 27", Sales: 4139, "Successful Payments": 1462, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 27'", + month: "Oct 27", Sales: 4424, "Successful Payments": 4044, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 27'", + month: "Nov 27", Sales: 1268, "Successful Payments": 3087, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 27'", + month: "Dec 27", Sales: 3590, "Successful Payments": 4176, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 28'", + month: "Jan 28", Sales: 4202, "Successful Payments": 1155, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 28'", + month: "Feb 28", Sales: 3543, "Successful Payments": 1596, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 28'", + month: "Mar 28", Sales: 4993, "Successful Payments": 4487, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 28'", + month: "Apr 28", Sales: 3035, "Successful Payments": 4952, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 28'", + month: "May 28", Sales: 285, "Successful Payments": 1839, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 28'", + month: "Jun 28", Sales: 1058, "Successful Payments": 2728, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 28'", + month: "Jul 28", Sales: 482, "Successful Payments": 3933, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 28'", + month: "Aug 28", Sales: 3508, "Successful Payments": 3357, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 28'", + month: "Sep 28", Sales: 1575, "Successful Payments": 1610, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 28'", + month: "Oct 28", Sales: 2815, "Successful Payments": 3759, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 28'", + month: "Nov 28", Sales: 2472, "Successful Payments": 1015, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 28'", + month: "Dec 28", Sales: 1825, "Successful Payments": 496, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 29'", + month: "Jan 29", Sales: 514, "Successful Payments": 4661, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 29'", + month: "Feb 29", Sales: 672, "Successful Payments": 1476, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 29'", + month: "Mar 29", Sales: 1255, "Successful Payments": 781, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 29'", + month: "Apr 29", Sales: 2507, "Successful Payments": 2985, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 29'", + month: "May 29", Sales: 1333, "Successful Payments": 714, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 29'", + month: "Jun 29", Sales: 5103, "Successful Payments": 4948, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 29'", + month: "Jul 29", Sales: 2306, "Successful Payments": 5054, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 29'", + month: "Aug 29", Sales: 3519, "Successful Payments": 1149, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 29'", + month: "Sep 29", Sales: 4068, "Successful Payments": 1012, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 29'", + month: "Oct 29", Sales: 1616, "Successful Payments": 740, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 29'", + month: "Nov 29", Sales: 403, "Successful Payments": 1843, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 29'", + month: "Dec 29", Sales: 2792, "Successful Payments": 988, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 30'", + month: "Jan 30", Sales: 4727, "Successful Payments": 1272, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 30'", + month: "Feb 30", Sales: 4911, "Successful Payments": 892, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 30'", + month: "Mar 30", Sales: 1603, "Successful Payments": 4490, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 30'", + month: "Apr 30", Sales: 2728, "Successful Payments": 4928, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 30'", + month: "May 30", Sales: 3696, "Successful Payments": 1040, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 30'", + month: "Jun 30", Sales: 3351, "Successful Payments": 1407, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 30'", + month: "Jul 30", Sales: 1960, "Successful Payments": 1132, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 30'", + month: "Aug 30", Sales: 1928, "Successful Payments": 3968, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 30'", + month: "Sep 30", Sales: 1977, "Successful Payments": 2742, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 30'", + month: "Oct 30", Sales: 2603, "Successful Payments": 182, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 30'", + month: "Nov 30", Sales: 1079, "Successful Payments": 999, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 30'", + month: "Dec 30", Sales: 2501, "Successful Payments": 3661, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 31'", + month: "Jan 31", Sales: 2975, "Successful Payments": 3461, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 31'", + month: "Feb 31", Sales: 296, "Successful Payments": 737, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 31'", + month: "Mar 31", Sales: 3986, "Successful Payments": 2366, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 31'", + month: "Apr 31", Sales: 2085, "Successful Payments": 3704, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 31'", + month: "May 31", Sales: 2333, "Successful Payments": 3056, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 31'", + month: "Jun 31", Sales: 256, "Successful Payments": 3338, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 31'", + month: "Jul 31", Sales: 449, "Successful Payments": 2095, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 31'", + month: "Aug 31", Sales: 975, "Successful Payments": 1714, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 31'", + month: "Sep 31", Sales: 4346, "Successful Payments": 1323, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 31'", + month: "Oct 31", Sales: 4407, "Successful Payments": 3066, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 31'", + month: "Nov 31", Sales: 5215, "Successful Payments": 3643, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 31'", + month: "Dec 31", Sales: 3021, "Successful Payments": 850, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 32'", + month: "Jan 32", Sales: 3373, "Successful Payments": 1793, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 32'", + month: "Feb 32", Sales: 2742, "Successful Payments": 1352, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 32'", + month: "Mar 32", Sales: 720, "Successful Payments": 1203, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 32'", + month: "Apr 32", Sales: 5002, "Successful Payments": 310, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 32'", + month: "May 32", Sales: 3405, "Successful Payments": 254, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 32'", + month: "Jun 32", Sales: 1065, "Successful Payments": 1183, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 32'", + month: "Jul 32", Sales: 4807, "Successful Payments": 1758, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 32'", + month: "Aug 32", Sales: 3850, "Successful Payments": 3150, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 32'", + month: "Sep 32", Sales: 3530, "Successful Payments": 4923, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 32'", + month: "Oct 32", Sales: 2895, "Successful Payments": 4767, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 32'", + month: "Nov 32", Sales: 1909, "Successful Payments": 4908, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 32'", + month: "Dec 32", Sales: 1776, "Successful Payments": 385, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 33'", + month: "Jan 33", Sales: 3108, "Successful Payments": 1484, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 33'", + month: "Feb 33", Sales: 3488, "Successful Payments": 4389, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 33'", + month: "Mar 33", Sales: 1010, "Successful Payments": 3971, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 33'", + month: "Apr 33", Sales: 3779, "Successful Payments": 5182, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 33'", + month: "May 33", Sales: 1595, "Successful Payments": 3604, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 33'", + month: "Jun 33", Sales: 3256, "Successful Payments": 4592, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 33'", + month: "Jul 33", Sales: 3920, "Successful Payments": 568, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 33'", + month: "Aug 33", Sales: 4521, "Successful Payments": 3269, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 33'", + month: "Sep 33", Sales: 977, "Successful Payments": 3448, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 33'", + month: "Oct 33", Sales: 3874, "Successful Payments": 3813, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 33'", + month: "Nov 33", Sales: 1431, "Successful Payments": 642, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 33'", + month: "Dec 33", Sales: 2735, "Successful Payments": 5057, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 34'", + month: "Jan 34", Sales: 3940, "Successful Payments": 3990, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 34'", + month: "Feb 34", Sales: 3982, "Successful Payments": 457, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 34'", + month: "Mar 34", Sales: 4382, "Successful Payments": 504, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 34'", + month: "Apr 34", Sales: 4832, "Successful Payments": 4964, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 34'", + month: "May 34", Sales: 3883, "Successful Payments": 4266, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 34'", + month: "Jun 34", Sales: 3740, "Successful Payments": 4395, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 34'", + month: "Jul 34", Sales: 4958, "Successful Payments": 2027, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 34'", + month: "Aug 34", Sales: 523, "Successful Payments": 1190, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 34'", + month: "Sep 34", Sales: 2062, "Successful Payments": 2328, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 34'", + month: "Oct 34", Sales: 371, "Successful Payments": 3029, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 34'", + month: "Nov 34", Sales: 2243, "Successful Payments": 5201, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 34'", + month: "Dec 34", Sales: 3091, "Successful Payments": 2705, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 35'", + month: "Jan 35", Sales: 2489, "Successful Payments": 2514, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 35'", + month: "Feb 35", Sales: 372, "Successful Payments": 2182, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 35'", + month: "Mar 35", Sales: 5195, "Successful Payments": 3913, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 35'", + month: "Apr 35", Sales: 3120, "Successful Payments": 466, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 35'", + month: "May 35", Sales: 2391, "Successful Payments": 5118, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 35'", + month: "Jun 35", Sales: 731, "Successful Payments": 4544, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 35'", + month: "Jul 35", Sales: 3070, "Successful Payments": 2037, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 35'", + month: "Aug 35", Sales: 2332, "Successful Payments": 565, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 35'", + month: "Sep 35", Sales: 2237, "Successful Payments": 2344, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 35'", + month: "Oct 35", Sales: 797, "Successful Payments": 759, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 35'", + month: "Nov 35", Sales: 819, "Successful Payments": 318, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 35'", + month: "Dec 35", Sales: 4213, "Successful Payments": 2206, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 36'", + month: "Jan 36", Sales: 1396, "Successful Payments": 5064, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 36'", + month: "Feb 36", Sales: 796, "Successful Payments": 1753, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 36'", + month: "Mar 36", Sales: 3034, "Successful Payments": 2392, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 36'", + month: "Apr 36", Sales: 4255, "Successful Payments": 3744, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 36'", + month: "May 36", Sales: 1646, "Successful Payments": 950, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 36'", + month: "Jun 36", Sales: 1298, "Successful Payments": 3106, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 36'", + month: "Jul 36", Sales: 4171, "Successful Payments": 3261, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 36'", + month: "Aug 36", Sales: 5071, "Successful Payments": 1507, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 36'", + month: "Sep 36", Sales: 2159, "Successful Payments": 2281, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 36'", + month: "Oct 36", Sales: 3749, "Successful Payments": 3600, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 36'", + month: "Nov 36", Sales: 807, "Successful Payments": 4300, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 36'", + month: "Dec 36", Sales: 5210, "Successful Payments": 2508, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 37'", + month: "Jan 37", Sales: 3039, "Successful Payments": 4666, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 37'", + month: "Feb 37", Sales: 837, "Successful Payments": 5142, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 37'", + month: "Mar 37", Sales: 2174, "Successful Payments": 1575, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 37'", + month: "Apr 37", Sales: 235, "Successful Payments": 4356, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 37'", + month: "May 37", Sales: 3107, "Successful Payments": 4315, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 37'", + month: "Jun 37", Sales: 4580, "Successful Payments": 3622, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 37'", + month: "Jul 37", Sales: 2259, "Successful Payments": 3271, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 37'", + month: "Aug 37", Sales: 1293, "Successful Payments": 4797, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 37'", + month: "Sep 37", Sales: 506, "Successful Payments": 2371, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 37'", + month: "Oct 37", Sales: 4375, "Successful Payments": 4833, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 37'", + month: "Nov 37", Sales: 3761, "Successful Payments": 3628, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 37'", + month: "Dec 37", Sales: 3444, "Successful Payments": 580, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jan 38'", + month: "Jan 38", Sales: 4747, "Successful Payments": 5152, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 38'", + month: "Feb 38", Sales: 1145, "Successful Payments": 161, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 38'", + month: "Mar 38", Sales: 2373, "Successful Payments": 2389, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 38'", + month: "Apr 38", Sales: 4420, "Successful Payments": 2918, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 38'", + month: "May 38", Sales: 3850, "Successful Payments": 3100, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 38'", + month: "Jun 38", Sales: 2842, "Successful Payments": 1320, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 38'", + month: "Jul 38", Sales: 2268, "Successful Payments": 477, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 38'", + month: "Aug 38", Sales: 4464, "Successful Payments": 787, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 38'", + month: "Sep 38", Sales: 210, "Successful Payments": 789, "This is an edge case": 100000000, Test: 5000, }, { - month: "Oct 38'", + month: "Oct 38", Sales: 2413, "Successful Payments": 3672, "This is an edge case": 100000000, Test: 5000, }, { - month: "Nov 38'", + month: "Nov 38", Sales: 2083, "Successful Payments": 3114, "This is an edge case": 100000000, Test: 5000, }, { - month: "Dec 38'", + month: "Dec 38", Sales: 4763, "Successful Payments": 1431, "This is an edge case": 100000000, Test: 5000, }, +]; + +export const simpleBaseChartData = [ { - month: "Jan 39'", - Sales: 464, - "Successful Payments": 3075, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 39'", - Sales: 2698, - "Successful Payments": 1647, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 39'", - Sales: 3540, - "Successful Payments": 637, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 39'", - Sales: 1498, - "Successful Payments": 4005, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 39'", - Sales: 3270, - "Successful Payments": 5235, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 39'", - Sales: 5185, - "Successful Payments": 1580, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 39'", - Sales: 1911, - "Successful Payments": 594, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 39'", - Sales: 3926, - "Successful Payments": 4347, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 39'", - Sales: 427, - "Successful Payments": 2504, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 39'", - Sales: 5084, - "Successful Payments": 1844, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 39'", - Sales: 3208, - "Successful Payments": 2768, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 39'", - Sales: 1210, - "Successful Payments": 1761, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 40'", - Sales: 4248, - "Successful Payments": 5243, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 40'", - Sales: 4895, - "Successful Payments": 2986, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 40'", - Sales: 2561, - "Successful Payments": 2190, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 40'", - Sales: 959, - "Successful Payments": 3940, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 40'", - Sales: 2224, - "Successful Payments": 601, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 40'", - Sales: 3528, - "Successful Payments": 2322, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 40'", - Sales: 3499, - "Successful Payments": 1081, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 40'", - Sales: 304, - "Successful Payments": 1455, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 40'", - Sales: 951, - "Successful Payments": 3713, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 40'", - Sales: 1688, - "Successful Payments": 2825, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 40'", - Sales: 821, - "Successful Payments": 4414, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 40'", - Sales: 1757, - "Successful Payments": 4470, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 41'", - Sales: 3831, - "Successful Payments": 284, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 41'", - Sales: 718, - "Successful Payments": 2695, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 41'", - Sales: 3261, - "Successful Payments": 2478, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 41'", - Sales: 4437, - "Successful Payments": 571, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 41'", - Sales: 3535, - "Successful Payments": 3087, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 41'", - Sales: 489, - "Successful Payments": 599, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 41'", - Sales: 5244, - "Successful Payments": 3123, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 41'", - Sales: 4929, - "Successful Payments": 4860, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 41'", - Sales: 3444, - "Successful Payments": 2684, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 41'", - Sales: 2573, - "Successful Payments": 3191, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 41'", - Sales: 2654, - "Successful Payments": 5115, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 41'", - Sales: 2831, - "Successful Payments": 1686, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 42'", - Sales: 4884, - "Successful Payments": 2690, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 42'", - Sales: 3581, - "Successful Payments": 3684, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 42'", - Sales: 5100, - "Successful Payments": 4455, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 42'", - Sales: 4347, - "Successful Payments": 2054, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 42'", - Sales: 5180, - "Successful Payments": 3113, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 42'", - Sales: 2610, - "Successful Payments": 193, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 42'", - Sales: 4263, - "Successful Payments": 2357, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 42'", - Sales: 2816, - "Successful Payments": 3154, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 42'", - Sales: 4220, - "Successful Payments": 120, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 42'", - Sales: 1348, - "Successful Payments": 2813, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 42'", - Sales: 4123, - "Successful Payments": 800, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 42'", - Sales: 3684, - "Successful Payments": 137, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 43'", - Sales: 1308, - "Successful Payments": 560, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 43'", - Sales: 2868, - "Successful Payments": 5099, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 43'", - Sales: 4954, - "Successful Payments": 4904, + month: "Jan 21", + Sales: 4000, + "Successful Payments": 3000, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 43'", - Sales: 2646, - "Successful Payments": 5167, + month: "Feb 21", + Sales: 3000, + "Successful Payments": 2000, "This is an edge case": 100000000, Test: 5000, }, { - month: "May 43'", - Sales: 1837, - "Successful Payments": 961, + month: "Mar 21", + Sales: 2000, + "Successful Payments": 1700, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jun 43'", - Sales: 3835, - "Successful Payments": 3119, + month: "Apr 21", + Sales: 2780, + "Successful Payments": 2500, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 43'", - Sales: 4883, - "Successful Payments": 4437, + month: "May 21", + Sales: 1890, + "Successful Payments": 1890, "This is an edge case": 100000000, Test: 5000, }, { - month: "Aug 43'", - Sales: 3387, - "Successful Payments": 3200, + month: "Jun 21", + Sales: 2390, + "Successful Payments": 2000, "This is an edge case": 100000000, Test: 5000, }, { - month: "Sep 43'", - Sales: 3639, - "Successful Payments": 865, + month: "Jul 21", + Sales: 3490, + "Successful Payments": 3000, "This is an edge case": 100000000, Test: 5000, }, +]; + +export const longIndexBaseChartData = [ { - month: "Oct 43'", - Sales: 5031, - "Successful Payments": 1003, - "This is an edge case": 100000000, - Test: 5000, + month: "Januar 2023", + Sales: 4000, + "Successful Payments": 3000, }, { - month: "Nov 43'", - Sales: 4072, - "Successful Payments": 3599, - "This is an edge case": 100000000, - Test: 5000, + month: "Februar 2023", + Sales: 3000, + "Successful Payments": 2000, }, { - month: "Dec 43'", - Sales: 1148, - "Successful Payments": 3398, - "This is an edge case": 100000000, - Test: 5000, + month: "Maerz 2023", + Sales: 2000, + "Successful Payments": 1700, }, { - month: "Jan 44'", - Sales: 4224, - "Successful Payments": 1300, - "This is an edge case": 100000000, - Test: 5000, + month: "April 2023", + Sales: 2780, + "Successful Payments": 2500, }, { - month: "Feb 44'", - Sales: 4807, - "Successful Payments": 1629, - "This is an edge case": 100000000, - Test: 5000, + month: "Mai 2023", + Sales: 3780, + "Successful Payments": 2200, }, { - month: "Mar 44'", - Sales: 212, - "Successful Payments": 4280, - "This is an edge case": 100000000, - Test: 5000, + month: "Juni 2023", + Sales: 4580, + "Successful Payments": 2100, }, { - month: "Apr 44'", - Sales: 3620, - "Successful Payments": 4394, - "This is an edge case": 100000000, - Test: 5000, + month: "Juli 2023", + Sales: 2280, + "Successful Payments": 4500, }, { - month: "May 44'", - Sales: 2702, - "Successful Payments": 1600, - "This is an edge case": 100000000, - Test: 5000, + month: "August 2023", + Sales: 2680, + "Successful Payments": 4500, }, { - month: "Jun 44'", - Sales: 4475, - "Successful Payments": 4010, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 44'", - Sales: 3791, - "Successful Payments": 523, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 44'", - Sales: 333, - "Successful Payments": 4564, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 44'", - Sales: 1913, - "Successful Payments": 1882, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 44'", - Sales: 2340, - "Successful Payments": 3279, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 44'", - Sales: 4618, - "Successful Payments": 1461, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 44'", - Sales: 5043, - "Successful Payments": 3272, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 45'", - Sales: 2373, - "Successful Payments": 803, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 45'", - Sales: 412, - "Successful Payments": 3818, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 45'", - Sales: 2520, - "Successful Payments": 930, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 45'", - Sales: 1699, - "Successful Payments": 348, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 45'", - Sales: 2316, - "Successful Payments": 1700, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 45'", - Sales: 2809, - "Successful Payments": 2896, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 45'", - Sales: 1941, - "Successful Payments": 3585, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 45'", - Sales: 2838, - "Successful Payments": 1697, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 45'", - Sales: 4053, - "Successful Payments": 1880, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 45'", - Sales: 1761, - "Successful Payments": 1232, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 45'", - Sales: 1728, - "Successful Payments": 4753, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 45'", - Sales: 1401, - "Successful Payments": 953, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 46'", - Sales: 3141, - "Successful Payments": 3392, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 46'", - Sales: 1880, - "Successful Payments": 1370, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 46'", - Sales: 3369, - "Successful Payments": 1641, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 46'", - Sales: 1862, - "Successful Payments": 4678, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 46'", - Sales: 622, - "Successful Payments": 5043, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 46'", - Sales: 3090, - "Successful Payments": 2964, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 46'", - Sales: 4898, - "Successful Payments": 4215, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 46'", - Sales: 2922, - "Successful Payments": 1492, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 46'", - Sales: 2354, - "Successful Payments": 4951, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 46'", - Sales: 2705, - "Successful Payments": 4036, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 46'", - Sales: 5066, - "Successful Payments": 3960, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 46'", - Sales: 228, - "Successful Payments": 3502, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 47'", - Sales: 2406, - "Successful Payments": 3865, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 47'", - Sales: 703, - "Successful Payments": 1093, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 47'", - Sales: 2497, - "Successful Payments": 538, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 47'", - Sales: 1993, - "Successful Payments": 1812, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 47'", - Sales: 3033, - "Successful Payments": 767, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 47'", - Sales: 5133, - "Successful Payments": 4920, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 47'", - Sales: 4699, - "Successful Payments": 3007, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 47'", - Sales: 2304, - "Successful Payments": 1909, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 47'", - Sales: 2262, - "Successful Payments": 2933, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 47'", - Sales: 1487, - "Successful Payments": 1379, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 47'", - Sales: 1189, - "Successful Payments": 443, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 47'", - Sales: 4195, - "Successful Payments": 4481, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 48'", - Sales: 5036, - "Successful Payments": 2916, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 48'", - Sales: 3053, - "Successful Payments": 1990, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 48'", - Sales: 1799, - "Successful Payments": 890, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 48'", - Sales: 1856, - "Successful Payments": 2980, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 48'", - Sales: 4210, - "Successful Payments": 3043, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 48'", - Sales: 3450, - "Successful Payments": 798, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 48'", - Sales: 703, - "Successful Payments": 2166, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 48'", - Sales: 2112, - "Successful Payments": 2461, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 48'", - Sales: 4002, - "Successful Payments": 4621, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 48'", - Sales: 651, - "Successful Payments": 4237, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 48'", - Sales: 2235, - "Successful Payments": 3667, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 48'", - Sales: 3716, - "Successful Payments": 4191, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 49'", - Sales: 2256, - "Successful Payments": 2044, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 49'", - Sales: 1473, - "Successful Payments": 1716, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 49'", - Sales: 4854, - "Successful Payments": 3075, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 49'", - Sales: 3920, - "Successful Payments": 2885, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 49'", - Sales: 264, - "Successful Payments": 2304, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 49'", - Sales: 1369, - "Successful Payments": 3726, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 49'", - Sales: 2453, - "Successful Payments": 625, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 49'", - Sales: 786, - "Successful Payments": 4026, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 49'", - Sales: 3794, - "Successful Payments": 5247, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 49'", - Sales: 978, - "Successful Payments": 1497, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 49'", - Sales: 3943, - "Successful Payments": 589, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 49'", - Sales: 3845, - "Successful Payments": 3077, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 50'", - Sales: 4186, - "Successful Payments": 3746, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 50'", - Sales: 2058, - "Successful Payments": 4898, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 50'", - Sales: 1352, - "Successful Payments": 2760, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 50'", - Sales: 3188, - "Successful Payments": 973, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 50'", - Sales: 4628, - "Successful Payments": 4428, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 50'", - Sales: 330, - "Successful Payments": 2331, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 50'", - Sales: 3576, - "Successful Payments": 1815, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 50'", - Sales: 1108, - "Successful Payments": 4253, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 50'", - Sales: 1346, - "Successful Payments": 4198, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 50'", - Sales: 610, - "Successful Payments": 3524, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 50'", - Sales: 1808, - "Successful Payments": 4312, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 50'", - Sales: 4762, - "Successful Payments": 1819, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 51'", - Sales: 2978, - "Successful Payments": 1258, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 51'", - Sales: 2708, - "Successful Payments": 2143, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 51'", - Sales: 4633, - "Successful Payments": 2617, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 51'", - Sales: 2574, - "Successful Payments": 1297, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 51'", - Sales: 4605, - "Successful Payments": 2332, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 51'", - Sales: 1979, - "Successful Payments": 3835, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 51'", - Sales: 3049, - "Successful Payments": 436, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 51'", - Sales: 645, - "Successful Payments": 1804, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 51'", - Sales: 3051, - "Successful Payments": 2753, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 51'", - Sales: 4161, - "Successful Payments": 640, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 51'", - Sales: 900, - "Successful Payments": 3672, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 51'", - Sales: 1411, - "Successful Payments": 3687, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 52'", - Sales: 585, - "Successful Payments": 975, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 52'", - Sales: 2990, - "Successful Payments": 4480, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 52'", - Sales: 3438, - "Successful Payments": 1903, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 52'", - Sales: 924, - "Successful Payments": 2605, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 52'", - Sales: 4168, - "Successful Payments": 3141, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 52'", - Sales: 1568, - "Successful Payments": 3469, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 52'", - Sales: 3878, - "Successful Payments": 4136, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 52'", - Sales: 1629, - "Successful Payments": 274, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 52'", - Sales: 1150, - "Successful Payments": 1638, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 52'", - Sales: 3762, - "Successful Payments": 4877, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 52'", - Sales: 3958, - "Successful Payments": 1572, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 52'", - Sales: 982, - "Successful Payments": 5170, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 53'", - Sales: 3007, - "Successful Payments": 407, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 53'", - Sales: 2908, - "Successful Payments": 2121, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 53'", - Sales: 2074, - "Successful Payments": 4489, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 53'", - Sales: 1417, - "Successful Payments": 3992, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 53'", - Sales: 1445, - "Successful Payments": 2929, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 53'", - Sales: 3849, - "Successful Payments": 3189, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 53'", - Sales: 1076, - "Successful Payments": 5010, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 53'", - Sales: 3533, - "Successful Payments": 1233, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 53'", - Sales: 2804, - "Successful Payments": 1022, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 53'", - Sales: 4618, - "Successful Payments": 894, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 53'", - Sales: 5067, - "Successful Payments": 3432, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 53'", - Sales: 3565, - "Successful Payments": 659, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 54'", - Sales: 2671, - "Successful Payments": 125, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 54'", - Sales: 2096, - "Successful Payments": 5193, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 54'", - Sales: 2975, - "Successful Payments": 1568, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 54'", - Sales: 535, - "Successful Payments": 4071, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 54'", - Sales: 3093, - "Successful Payments": 2332, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 54'", - Sales: 4001, - "Successful Payments": 3019, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 54'", - Sales: 5070, - "Successful Payments": 2075, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 54'", - Sales: 4207, - "Successful Payments": 5049, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 54'", - Sales: 3348, - "Successful Payments": 4764, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 54'", - Sales: 4960, - "Successful Payments": 1372, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 54'", - Sales: 4782, - "Successful Payments": 3598, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 54'", - Sales: 573, - "Successful Payments": 4895, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 55'", - Sales: 3756, - "Successful Payments": 4307, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 55'", - Sales: 2023, - "Successful Payments": 2328, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 55'", - Sales: 3038, - "Successful Payments": 1056, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 55'", - Sales: 3960, - "Successful Payments": 396, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 55'", - Sales: 297, - "Successful Payments": 4842, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 55'", - Sales: 2868, - "Successful Payments": 3193, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 55'", - Sales: 1314, - "Successful Payments": 2329, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 55'", - Sales: 915, - "Successful Payments": 1037, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 55'", - Sales: 5112, - "Successful Payments": 968, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 55'", - Sales: 5098, - "Successful Payments": 2584, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 55'", - Sales: 336, - "Successful Payments": 1269, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 55'", - Sales: 3088, - "Successful Payments": 1496, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 56'", - Sales: 5076, - "Successful Payments": 3000, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 56'", - Sales: 629, - "Successful Payments": 434, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 56'", - Sales: 586, - "Successful Payments": 675, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 56'", - Sales: 711, - "Successful Payments": 3671, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 56'", - Sales: 709, - "Successful Payments": 2765, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 56'", - Sales: 1800, - "Successful Payments": 1162, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 56'", - Sales: 2240, - "Successful Payments": 5139, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 56'", - Sales: 2253, - "Successful Payments": 2705, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 56'", - Sales: 1634, - "Successful Payments": 1331, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 56'", - Sales: 3479, - "Successful Payments": 1509, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 56'", - Sales: 970, - "Successful Payments": 2340, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 56'", - Sales: 1856, - "Successful Payments": 2144, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 57'", - Sales: 4026, - "Successful Payments": 2429, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 57'", - Sales: 4401, - "Successful Payments": 1405, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 57'", - Sales: 3542, - "Successful Payments": 4035, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 57'", - Sales: 2778, - "Successful Payments": 2039, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 57'", - Sales: 3778, - "Successful Payments": 3353, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 57'", - Sales: 2324, - "Successful Payments": 2307, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 57'", - Sales: 3312, - "Successful Payments": 4736, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 57'", - Sales: 1393, - "Successful Payments": 2351, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 57'", - Sales: 1783, - "Successful Payments": 3107, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 57'", - Sales: 2824, - "Successful Payments": 3019, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 57'", - Sales: 4526, - "Successful Payments": 706, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 57'", - Sales: 338, - "Successful Payments": 1773, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 58'", - Sales: 537, - "Successful Payments": 4123, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 58'", - Sales: 5145, - "Successful Payments": 4961, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 58'", - Sales: 3813, - "Successful Payments": 2150, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 58'", - Sales: 4923, - "Successful Payments": 2694, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 58'", - Sales: 753, - "Successful Payments": 2752, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 58'", - Sales: 4046, - "Successful Payments": 2677, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 58'", - Sales: 3601, - "Successful Payments": 406, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 58'", - Sales: 233, - "Successful Payments": 1907, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 58'", - Sales: 2468, - "Successful Payments": 3811, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 58'", - Sales: 4049, - "Successful Payments": 1791, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 58'", - Sales: 2202, - "Successful Payments": 1894, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 58'", - Sales: 4842, - "Successful Payments": 4378, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 59'", - Sales: 4393, - "Successful Payments": 2308, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 59'", - Sales: 5034, - "Successful Payments": 1180, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 59'", - Sales: 2029, - "Successful Payments": 305, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 59'", - Sales: 168, - "Successful Payments": 135, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 59'", - Sales: 251, - "Successful Payments": 4979, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 59'", - Sales: 5193, - "Successful Payments": 5231, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 59'", - Sales: 4132, - "Successful Payments": 1079, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 59'", - Sales: 1097, - "Successful Payments": 3097, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 59'", - Sales: 1227, - "Successful Payments": 5236, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 59'", - Sales: 4073, - "Successful Payments": 1672, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 59'", - Sales: 950, - "Successful Payments": 3990, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 59'", - Sales: 1081, - "Successful Payments": 4012, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 60'", - Sales: 3226, - "Successful Payments": 2045, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 60'", - Sales: 3978, - "Successful Payments": 644, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 60'", - Sales: 4493, - "Successful Payments": 2804, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 60'", - Sales: 393, - "Successful Payments": 122, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 60'", - Sales: 3806, - "Successful Payments": 4704, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 60'", - Sales: 1200, - "Successful Payments": 2943, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 60'", - Sales: 4633, - "Successful Payments": 4983, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 60'", - Sales: 911, - "Successful Payments": 320, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 60'", - Sales: 4676, - "Successful Payments": 1174, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 60'", - Sales: 637, - "Successful Payments": 4372, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 60'", - Sales: 1257, - "Successful Payments": 3676, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 60'", - Sales: 4697, - "Successful Payments": 174, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 61'", - Sales: 680, - "Successful Payments": 4169, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 61'", - Sales: 1399, - "Successful Payments": 1688, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 61'", - Sales: 3522, - "Successful Payments": 2071, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 61'", - Sales: 4529, - "Successful Payments": 452, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 61'", - Sales: 2416, - "Successful Payments": 2139, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 61'", - Sales: 3211, - "Successful Payments": 536, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 61'", - Sales: 862, - "Successful Payments": 4695, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 61'", - Sales: 4436, - "Successful Payments": 3441, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 61'", - Sales: 3726, - "Successful Payments": 3204, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 61'", - Sales: 4846, - "Successful Payments": 574, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 61'", - Sales: 3545, - "Successful Payments": 1589, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 61'", - Sales: 3802, - "Successful Payments": 3064, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 62'", - Sales: 2801, - "Successful Payments": 762, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 62'", - Sales: 2890, - "Successful Payments": 3868, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 62'", - Sales: 4984, - "Successful Payments": 2030, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 62'", - Sales: 1373, - "Successful Payments": 3982, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 62'", - Sales: 4131, - "Successful Payments": 3542, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 62'", - Sales: 4214, - "Successful Payments": 2157, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 62'", - Sales: 1869, - "Successful Payments": 4494, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 62'", - Sales: 1784, - "Successful Payments": 568, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 62'", - Sales: 1864, - "Successful Payments": 1941, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 62'", - Sales: 4142, - "Successful Payments": 5229, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 62'", - Sales: 3179, - "Successful Payments": 4758, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 62'", - Sales: 3197, - "Successful Payments": 2383, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 63'", - Sales: 2789, - "Successful Payments": 3037, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 63'", - Sales: 4519, - "Successful Payments": 3766, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 63'", - Sales: 905, - "Successful Payments": 4910, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 63'", - Sales: 2007, - "Successful Payments": 4573, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 63'", - Sales: 855, - "Successful Payments": 2428, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 63'", - Sales: 4388, - "Successful Payments": 4938, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 63'", - Sales: 1317, - "Successful Payments": 3588, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 63'", - Sales: 2133, - "Successful Payments": 4020, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 63'", - Sales: 3984, - "Successful Payments": 4566, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 63'", - Sales: 3742, - "Successful Payments": 3619, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 63'", - Sales: 3330, - "Successful Payments": 520, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 63'", - Sales: 1250, - "Successful Payments": 3026, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 64'", - Sales: 2489, - "Successful Payments": 4776, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 64'", - Sales: 2621, - "Successful Payments": 4383, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 64'", - Sales: 2160, - "Successful Payments": 3840, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 64'", - Sales: 265, - "Successful Payments": 2690, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 64'", - Sales: 1499, - "Successful Payments": 3105, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 64'", - Sales: 2421, - "Successful Payments": 3271, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 64'", - Sales: 228, - "Successful Payments": 5029, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 64'", - Sales: 1557, - "Successful Payments": 1437, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 64'", - Sales: 4748, - "Successful Payments": 2509, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 64'", - Sales: 1442, - "Successful Payments": 1705, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 64'", - Sales: 3301, - "Successful Payments": 279, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 64'", - Sales: 132, - "Successful Payments": 5057, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 65'", - Sales: 4186, - "Successful Payments": 3117, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 65'", - Sales: 2734, - "Successful Payments": 2856, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 65'", - Sales: 445, - "Successful Payments": 4856, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 65'", - Sales: 3321, - "Successful Payments": 3569, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 65'", - Sales: 4825, - "Successful Payments": 4806, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 65'", - Sales: 4022, - "Successful Payments": 4141, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 65'", - Sales: 548, - "Successful Payments": 3848, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 65'", - Sales: 3192, - "Successful Payments": 3884, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 65'", - Sales: 4365, - "Successful Payments": 172, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 65'", - Sales: 851, - "Successful Payments": 3463, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 65'", - Sales: 677, - "Successful Payments": 3915, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 65'", - Sales: 1495, - "Successful Payments": 290, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 66'", - Sales: 2954, - "Successful Payments": 238, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 66'", - Sales: 4345, - "Successful Payments": 3620, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 66'", - Sales: 4121, - "Successful Payments": 5054, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 66'", - Sales: 1396, - "Successful Payments": 5092, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 66'", - Sales: 973, - "Successful Payments": 4875, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 66'", - Sales: 2776, - "Successful Payments": 975, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 66'", - Sales: 1632, - "Successful Payments": 3415, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 66'", - Sales: 4299, - "Successful Payments": 4353, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 66'", - Sales: 1258, - "Successful Payments": 2631, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 66'", - Sales: 510, - "Successful Payments": 4896, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 66'", - Sales: 2691, - "Successful Payments": 3870, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 66'", - Sales: 985, - "Successful Payments": 3894, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 67'", - Sales: 3335, - "Successful Payments": 1577, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 67'", - Sales: 4130, - "Successful Payments": 2172, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 67'", - Sales: 4892, - "Successful Payments": 4163, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 67'", - Sales: 2975, - "Successful Payments": 4156, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 67'", - Sales: 4001, - "Successful Payments": 1672, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 67'", - Sales: 3160, - "Successful Payments": 3896, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 67'", - Sales: 563, - "Successful Payments": 2847, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 67'", - Sales: 2273, - "Successful Payments": 881, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 67'", - Sales: 2045, - "Successful Payments": 5196, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 67'", - Sales: 2312, - "Successful Payments": 2198, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 67'", - Sales: 4668, - "Successful Payments": 3362, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 67'", - Sales: 2976, - "Successful Payments": 2084, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 68'", - Sales: 1897, - "Successful Payments": 839, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 68'", - Sales: 3640, - "Successful Payments": 3131, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 68'", - Sales: 2087, - "Successful Payments": 3296, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 68'", - Sales: 2359, - "Successful Payments": 3411, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 68'", - Sales: 321, - "Successful Payments": 4014, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 68'", - Sales: 1674, - "Successful Payments": 4472, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 68'", - Sales: 2834, - "Successful Payments": 504, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 68'", - Sales: 2404, - "Successful Payments": 542, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 68'", - Sales: 3795, - "Successful Payments": 929, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 68'", - Sales: 3208, - "Successful Payments": 716, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 68'", - Sales: 330, - "Successful Payments": 5074, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 68'", - Sales: 4973, - "Successful Payments": 1297, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 69'", - Sales: 4059, - "Successful Payments": 3217, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 69'", - Sales: 1145, - "Successful Payments": 4561, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 69'", - Sales: 3470, - "Successful Payments": 4828, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 69'", - Sales: 3171, - "Successful Payments": 3150, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 69'", - Sales: 3607, - "Successful Payments": 1718, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 69'", - Sales: 1007, - "Successful Payments": 4938, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 69'", - Sales: 4036, - "Successful Payments": 1195, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 69'", - Sales: 365, - "Successful Payments": 3023, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 69'", - Sales: 4857, - "Successful Payments": 108, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 69'", - Sales: 3680, - "Successful Payments": 4932, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 69'", - Sales: 2089, - "Successful Payments": 3707, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 69'", - Sales: 3804, - "Successful Payments": 4353, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 70'", - Sales: 4066, - "Successful Payments": 2641, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 70'", - Sales: 3426, - "Successful Payments": 4061, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 70'", - Sales: 970, - "Successful Payments": 1070, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 70'", - Sales: 3795, - "Successful Payments": 1430, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 70'", - Sales: 2103, - "Successful Payments": 2341, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 70'", - Sales: 3646, - "Successful Payments": 3970, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 70'", - Sales: 1562, - "Successful Payments": 609, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 70'", - Sales: 1610, - "Successful Payments": 805, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 70'", - Sales: 4981, - "Successful Payments": 4841, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 70'", - Sales: 3225, - "Successful Payments": 1417, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 70'", - Sales: 429, - "Successful Payments": 4500, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 70'", - Sales: 2659, - "Successful Payments": 2748, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 71'", - Sales: 1465, - "Successful Payments": 4079, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 71'", - Sales: 2036, - "Successful Payments": 223, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 71'", - Sales: 1303, - "Successful Payments": 3914, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 71'", - Sales: 1744, - "Successful Payments": 4198, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 71'", - Sales: 869, - "Successful Payments": 3443, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 71'", - Sales: 2374, - "Successful Payments": 5086, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 71'", - Sales: 980, - "Successful Payments": 4676, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 71'", - Sales: 3480, - "Successful Payments": 2310, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 71'", - Sales: 5063, - "Successful Payments": 3702, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 71'", - Sales: 822, - "Successful Payments": 2827, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 71'", - Sales: 4798, - "Successful Payments": 1834, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 71'", - Sales: 276, - "Successful Payments": 3853, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 72'", - Sales: 289, - "Successful Payments": 1586, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 72'", - Sales: 1461, - "Successful Payments": 1242, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 72'", - Sales: 3065, - "Successful Payments": 4708, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 72'", - Sales: 1610, - "Successful Payments": 5250, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 72'", - Sales: 2472, - "Successful Payments": 894, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 72'", - Sales: 142, - "Successful Payments": 3455, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 72'", - Sales: 1786, - "Successful Payments": 2523, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 72'", - Sales: 1044, - "Successful Payments": 1396, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 72'", - Sales: 801, - "Successful Payments": 925, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 72'", - Sales: 504, - "Successful Payments": 1091, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 72'", - Sales: 4586, - "Successful Payments": 668, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 72'", - Sales: 3934, - "Successful Payments": 2620, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 73'", - Sales: 2937, - "Successful Payments": 1969, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 73'", - Sales: 3755, - "Successful Payments": 818, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 73'", - Sales: 4692, - "Successful Payments": 1726, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 73'", - Sales: 2320, - "Successful Payments": 4497, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 73'", - Sales: 2641, - "Successful Payments": 2815, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 73'", - Sales: 4380, - "Successful Payments": 223, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 73'", - Sales: 4187, - "Successful Payments": 4270, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 73'", - Sales: 1176, - "Successful Payments": 186, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 73'", - Sales: 4313, - "Successful Payments": 4435, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 73'", - Sales: 394, - "Successful Payments": 604, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 73'", - Sales: 1396, - "Successful Payments": 5033, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 73'", - Sales: 1614, - "Successful Payments": 1331, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 74'", - Sales: 5231, - "Successful Payments": 3345, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 74'", - Sales: 595, - "Successful Payments": 3745, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 74'", - Sales: 1137, - "Successful Payments": 3581, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 74'", - Sales: 3624, - "Successful Payments": 4798, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 74'", - Sales: 1248, - "Successful Payments": 813, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 74'", - Sales: 1941, - "Successful Payments": 4061, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 74'", - Sales: 2982, - "Successful Payments": 2792, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 74'", - Sales: 2492, - "Successful Payments": 4456, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 74'", - Sales: 301, - "Successful Payments": 4807, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 74'", - Sales: 3272, - "Successful Payments": 1726, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 74'", - Sales: 1558, - "Successful Payments": 3478, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 74'", - Sales: 4570, - "Successful Payments": 1087, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 75'", - Sales: 1265, - "Successful Payments": 803, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 75'", - Sales: 5047, - "Successful Payments": 635, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 75'", - Sales: 3875, - "Successful Payments": 3899, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 75'", - Sales: 4893, - "Successful Payments": 4980, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 75'", - Sales: 1883, - "Successful Payments": 1948, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 75'", - Sales: 1160, - "Successful Payments": 444, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 75'", - Sales: 957, - "Successful Payments": 2095, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 75'", - Sales: 4101, - "Successful Payments": 2022, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 75'", - Sales: 1311, - "Successful Payments": 2293, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 75'", - Sales: 2048, - "Successful Payments": 998, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 75'", - Sales: 4543, - "Successful Payments": 2598, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 75'", - Sales: 5006, - "Successful Payments": 1928, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 76'", - Sales: 2433, - "Successful Payments": 875, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 76'", - Sales: 963, - "Successful Payments": 3796, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 76'", - Sales: 1590, - "Successful Payments": 2418, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 76'", - Sales: 4256, - "Successful Payments": 3636, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 76'", - Sales: 3477, - "Successful Payments": 3703, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 76'", - Sales: 991, - "Successful Payments": 585, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 76'", - Sales: 2244, - "Successful Payments": 711, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 76'", - Sales: 2167, - "Successful Payments": 1661, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 76'", - Sales: 2495, - "Successful Payments": 235, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 76'", - Sales: 830, - "Successful Payments": 3255, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 76'", - Sales: 2171, - "Successful Payments": 2882, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 76'", - Sales: 4095, - "Successful Payments": 2056, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 77'", - Sales: 2181, - "Successful Payments": 3313, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 77'", - Sales: 2783, - "Successful Payments": 884, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 77'", - Sales: 1930, - "Successful Payments": 4413, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 77'", - Sales: 4590, - "Successful Payments": 785, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 77'", - Sales: 2812, - "Successful Payments": 4742, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 77'", - Sales: 189, - "Successful Payments": 4324, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 77'", - Sales: 4801, - "Successful Payments": 3820, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 77'", - Sales: 3091, - "Successful Payments": 295, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 77'", - Sales: 563, - "Successful Payments": 203, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 77'", - Sales: 2220, - "Successful Payments": 1325, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 77'", - Sales: 1607, - "Successful Payments": 1303, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 77'", - Sales: 3478, - "Successful Payments": 2951, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 78'", - Sales: 3387, - "Successful Payments": 1648, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 78'", - Sales: 804, - "Successful Payments": 142, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 78'", - Sales: 845, - "Successful Payments": 118, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 78'", - Sales: 1439, - "Successful Payments": 3161, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 78'", - Sales: 1662, - "Successful Payments": 1689, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 78'", - Sales: 140, - "Successful Payments": 5071, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 78'", - Sales: 1504, - "Successful Payments": 542, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 78'", - Sales: 3068, - "Successful Payments": 2081, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 78'", - Sales: 2013, - "Successful Payments": 2692, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 78'", - Sales: 669, - "Successful Payments": 471, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 78'", - Sales: 4839, - "Successful Payments": 4093, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 78'", - Sales: 713, - "Successful Payments": 4978, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 79'", - Sales: 1184, - "Successful Payments": 2235, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 79'", - Sales: 1358, - "Successful Payments": 4974, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 79'", - Sales: 3147, - "Successful Payments": 4987, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 79'", - Sales: 1133, - "Successful Payments": 2133, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 79'", - Sales: 1700, - "Successful Payments": 3916, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 79'", - Sales: 3944, - "Successful Payments": 4473, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 79'", - Sales: 2809, - "Successful Payments": 1375, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 79'", - Sales: 740, - "Successful Payments": 4564, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 79'", - Sales: 2446, - "Successful Payments": 4807, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 79'", - Sales: 1723, - "Successful Payments": 272, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 79'", - Sales: 1023, - "Successful Payments": 3404, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 79'", - Sales: 859, - "Successful Payments": 5207, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 80'", - Sales: 295, - "Successful Payments": 820, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 80'", - Sales: 4481, - "Successful Payments": 418, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 80'", - Sales: 2424, - "Successful Payments": 1185, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 80'", - Sales: 2549, - "Successful Payments": 1809, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 80'", - Sales: 5247, - "Successful Payments": 5036, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 80'", - Sales: 5039, - "Successful Payments": 2406, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 80'", - Sales: 1376, - "Successful Payments": 924, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 80'", - Sales: 3426, - "Successful Payments": 290, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 80'", - Sales: 3037, - "Successful Payments": 2747, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 80'", - Sales: 4308, - "Successful Payments": 3746, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 80'", - Sales: 2816, - "Successful Payments": 3656, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 80'", - Sales: 3479, - "Successful Payments": 2173, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 81'", - Sales: 2442, - "Successful Payments": 3339, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 81'", - Sales: 2604, - "Successful Payments": 1141, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 81'", - Sales: 2096, - "Successful Payments": 920, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 81'", - Sales: 2657, - "Successful Payments": 3903, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 81'", - Sales: 3868, - "Successful Payments": 4404, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 81'", - Sales: 2167, - "Successful Payments": 4933, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 81'", - Sales: 3215, - "Successful Payments": 4306, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 81'", - Sales: 4362, - "Successful Payments": 3142, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 81'", - Sales: 2698, - "Successful Payments": 5040, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 81'", - Sales: 3074, - "Successful Payments": 3197, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 81'", - Sales: 2425, - "Successful Payments": 2104, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 81'", - Sales: 1106, - "Successful Payments": 2511, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 82'", - Sales: 4949, - "Successful Payments": 324, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 82'", - Sales: 2562, - "Successful Payments": 1206, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 82'", - Sales: 1251, - "Successful Payments": 1176, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 82'", - Sales: 2671, - "Successful Payments": 624, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 82'", - Sales: 833, - "Successful Payments": 410, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 82'", - Sales: 5143, - "Successful Payments": 1120, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 82'", - Sales: 4456, - "Successful Payments": 2957, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 82'", - Sales: 1151, - "Successful Payments": 2533, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 82'", - Sales: 2934, - "Successful Payments": 4362, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 82'", - Sales: 3368, - "Successful Payments": 5104, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 82'", - Sales: 237, - "Successful Payments": 1055, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 82'", - Sales: 3974, - "Successful Payments": 2078, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 83'", - Sales: 858, - "Successful Payments": 3799, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 83'", - Sales: 3272, - "Successful Payments": 4647, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 83'", - Sales: 508, - "Successful Payments": 1474, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 83'", - Sales: 3491, - "Successful Payments": 3325, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 83'", - Sales: 2965, - "Successful Payments": 866, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 83'", - Sales: 1425, - "Successful Payments": 630, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 83'", - Sales: 4138, - "Successful Payments": 2285, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 83'", - Sales: 4925, - "Successful Payments": 4295, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 83'", - Sales: 3563, - "Successful Payments": 2631, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 83'", - Sales: 5021, - "Successful Payments": 3296, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 83'", - Sales: 2911, - "Successful Payments": 2725, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 83'", - Sales: 2100, - "Successful Payments": 4602, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 84'", - Sales: 126, - "Successful Payments": 4665, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 84'", - Sales: 1560, - "Successful Payments": 687, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 84'", - Sales: 2840, - "Successful Payments": 3435, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 84'", - Sales: 2077, - "Successful Payments": 2135, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 84'", - Sales: 5106, - "Successful Payments": 3874, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 84'", - Sales: 1069, - "Successful Payments": 3550, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 84'", - Sales: 4223, - "Successful Payments": 3785, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 84'", - Sales: 656, - "Successful Payments": 4867, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 84'", - Sales: 3582, - "Successful Payments": 4278, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 84'", - Sales: 3042, - "Successful Payments": 2361, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 84'", - Sales: 5195, - "Successful Payments": 4247, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 84'", - Sales: 3442, - "Successful Payments": 1738, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 85'", - Sales: 3803, - "Successful Payments": 644, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 85'", - Sales: 4143, - "Successful Payments": 2392, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 85'", - Sales: 1148, - "Successful Payments": 3725, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 85'", - Sales: 1944, - "Successful Payments": 1712, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 85'", - Sales: 1969, - "Successful Payments": 260, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 85'", - Sales: 5010, - "Successful Payments": 2130, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 85'", - Sales: 4221, - "Successful Payments": 575, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 85'", - Sales: 1458, - "Successful Payments": 4246, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 85'", - Sales: 3996, - "Successful Payments": 1534, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 85'", - Sales: 676, - "Successful Payments": 233, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 85'", - Sales: 2889, - "Successful Payments": 2616, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 85'", - Sales: 175, - "Successful Payments": 3949, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 86'", - Sales: 4804, - "Successful Payments": 2009, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 86'", - Sales: 2791, - "Successful Payments": 4415, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 86'", - Sales: 3238, - "Successful Payments": 3963, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 86'", - Sales: 4407, - "Successful Payments": 465, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 86'", - Sales: 2605, - "Successful Payments": 2197, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 86'", - Sales: 4540, - "Successful Payments": 3909, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 86'", - Sales: 1327, - "Successful Payments": 4853, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 86'", - Sales: 1519, - "Successful Payments": 1535, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 86'", - Sales: 1566, - "Successful Payments": 829, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 86'", - Sales: 1854, - "Successful Payments": 2056, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 86'", - Sales: 1623, - "Successful Payments": 4109, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 86'", - Sales: 3929, - "Successful Payments": 1071, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 87'", - Sales: 4894, - "Successful Payments": 3604, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 87'", - Sales: 2004, - "Successful Payments": 3227, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 87'", - Sales: 1971, - "Successful Payments": 1605, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 87'", - Sales: 495, - "Successful Payments": 1010, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 87'", - Sales: 794, - "Successful Payments": 2292, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 87'", - Sales: 3553, - "Successful Payments": 4373, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 87'", - Sales: 1807, - "Successful Payments": 2951, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 87'", - Sales: 5237, - "Successful Payments": 4574, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 87'", - Sales: 4841, - "Successful Payments": 4724, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 87'", - Sales: 2434, - "Successful Payments": 1206, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 87'", - Sales: 2072, - "Successful Payments": 3796, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 87'", - Sales: 1226, - "Successful Payments": 3764, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 88'", - Sales: 2954, - "Successful Payments": 518, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 88'", - Sales: 4409, - "Successful Payments": 2681, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 88'", - Sales: 1864, - "Successful Payments": 4783, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 88'", - Sales: 3277, - "Successful Payments": 1488, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 88'", - Sales: 3007, - "Successful Payments": 1483, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 88'", - Sales: 2923, - "Successful Payments": 1356, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 88'", - Sales: 3274, - "Successful Payments": 5086, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 88'", - Sales: 3067, - "Successful Payments": 2044, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 88'", - Sales: 3395, - "Successful Payments": 3398, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 88'", - Sales: 1006, - "Successful Payments": 369, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 88'", - Sales: 760, - "Successful Payments": 3276, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 88'", - Sales: 3458, - "Successful Payments": 3304, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 89'", - Sales: 493, - "Successful Payments": 4320, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 89'", - Sales: 1872, - "Successful Payments": 1740, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 89'", - Sales: 419, - "Successful Payments": 374, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 89'", - Sales: 3401, - "Successful Payments": 738, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 89'", - Sales: 1198, - "Successful Payments": 834, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 89'", - Sales: 3202, - "Successful Payments": 1300, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 89'", - Sales: 5196, - "Successful Payments": 2889, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 89'", - Sales: 3802, - "Successful Payments": 3621, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 89'", - Sales: 4221, - "Successful Payments": 895, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 89'", - Sales: 2614, - "Successful Payments": 1766, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 89'", - Sales: 975, - "Successful Payments": 4828, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 89'", - Sales: 1857, - "Successful Payments": 1218, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jan 90'", - Sales: 2080, - "Successful Payments": 1539, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 90'", - Sales: 2442, - "Successful Payments": 5142, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 90'", - Sales: 4050, - "Successful Payments": 290, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 90'", - Sales: 4913, - "Successful Payments": 3287, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 90'", - Sales: 399, - "Successful Payments": 4581, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 90'", - Sales: 126, - "Successful Payments": 2154, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 90'", - Sales: 3651, - "Successful Payments": 4422, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Aug 90'", - Sales: 4944, - "Successful Payments": 3062, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Sep 90'", - Sales: 4774, - "Successful Payments": 3185, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Oct 90'", - Sales: 3096, - "Successful Payments": 1512, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Nov 90'", - Sales: 2259, - "Successful Payments": 3659, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Dec 90'", - Sales: 4309, - "Successful Payments": 874, - "This is an edge case": 100000000, - Test: 5000, - }, -]; - -export const simpleBaseChartData = [ - { - month: "Jan 21'", - Sales: 4000, - "Successful Payments": 3000, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Feb 21'", - Sales: 3000, - "Successful Payments": 2000, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Mar 21'", - Sales: 2000, - "Successful Payments": 1700, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Apr 21'", - Sales: 2780, - "Successful Payments": 2500, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "May 21", - Sales: 1890, - "Successful Payments": 1890, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jun 21'", - Sales: 2390, - "Successful Payments": 2000, - "This is an edge case": 100000000, - Test: 5000, - }, - { - month: "Jul 21'", - Sales: 3490, - "Successful Payments": 3000, - "This is an edge case": 100000000, - Test: 5000, + month: "September 2023", + Sales: 2700, + "Successful Payments": 2900, }, ]; export const simpleBaseChartDataWithNulls = [ { - month: "Jan 21'", + month: "Jan 21", Sales: 4000, "Successful Payments": 3000, "This is an edge case": 100000000, Test: 5000, }, { - month: "Feb 21'", + month: "Feb 21", Sales: 3000, "Successful Payments": 2000, "This is an edge case": 100000000, Test: 5000, }, { - month: "Mar 21'", + month: "Mar 21", Sales: 2000, "Successful Payments": 1700, "This is an edge case": 100000000, Test: 5000, }, { - month: "Apr 21'", + month: "Apr 21", "Successful Payments": 2500, "This is an edge case": 100000000, Test: 5000, @@ -5968,14 +1648,14 @@ export const simpleBaseChartDataWithNulls = [ Test: 5000, }, { - month: "Jun 21'", + month: "Jun 21", Sales: 2390, "Successful Payments": 2000, "This is an edge case": 100000000, Test: 5000, }, { - month: "Jul 21'", + month: "Jul 21", Sales: 3490, "Successful Payments": 3000, "This is an edge case": 100000000, @@ -6024,12 +1704,12 @@ export const simpleSingleCategoryData = [ export const singleAndMultipleData = [ { - month: "Jan 21'", + month: "Jan 21", Sales: 4400, "Successful Payments": 5026, }, { - month: "Feb 21'", + month: "Feb 21", Sales: 3612, }, ]; diff --git a/src/stories/input-elements/Switch.stories.tsx b/src/stories/input-elements/Switch.stories.tsx new file mode 100644 index 000000000..8f25b7d08 --- /dev/null +++ b/src/stories/input-elements/Switch.stories.tsx @@ -0,0 +1,58 @@ +import type { Meta, StoryObj } from "@storybook/react"; +import { Switch } from "components"; +import { SimpleSwitch, SimpleIdSwitch } from "./helpers/SimpleSwitch"; + +const meta: Meta = { + title: "Components/Input/Switch", + component: Switch, +}; + +export default meta; +type Story = StoryObj; + +export const Uncontrolled: Story = { + args: {}, +}; + +export const DefaultChecked: Story = { + args: { + defaultChecked: true, + }, +}; + +export const Disabled: Story = { + args: { + disabled: true, + }, +}; + +export const CustomColor: Story = { + args: { + color: "emerald", + }, +}; + +export const Controlled: Story = { + render: SimpleSwitch, +}; + +export const Required: Story = { + render: SimpleSwitch, + args: { + required: true, + }, +}; + +export const Error: Story = { + args: { + error: true, + errorMessage: "Something is wrong", + }, +}; + +export const Id: Story = { + render: SimpleIdSwitch, + args: { + required: true, + }, +}; diff --git a/src/stories/input-elements/helpers/SimpleSwitch.tsx b/src/stories/input-elements/helpers/SimpleSwitch.tsx new file mode 100644 index 000000000..46d96633c --- /dev/null +++ b/src/stories/input-elements/helpers/SimpleSwitch.tsx @@ -0,0 +1,53 @@ +import { Button, Switch } from "components"; +import React from "react"; + +export const SimpleSwitch = (args: any) => { + const [checked, setChecked] = React.useState(false); + + return ( +
+
setChecked(false)}> + + + +
+ + + +
+ + +

{checked ? "On" : "Off"}

+
+ ); +}; + +export const SimpleIdSwitch = (args: any) => { + const [checked, setChecked] = React.useState(false); + + return ( +
+
setChecked(false)}> +
+ + +
+
+ + + +
+
+ +

{checked ? "On" : "Off"}

+
+ ); +}; diff --git a/src/stories/input-elements/helpers/SimpleTextInput.tsx b/src/stories/input-elements/helpers/SimpleTextInput.tsx index b390ad2c7..3022f829a 100644 --- a/src/stories/input-elements/helpers/SimpleTextInput.tsx +++ b/src/stories/input-elements/helpers/SimpleTextInput.tsx @@ -19,9 +19,13 @@ export const SimpleTextInput = (args: any) => {

Conrolled without onChange

setValue(e.target.value)} /> + + diff --git a/tailwind.config.js b/tailwind.config.js index b5e3e4971..734267fd1 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -54,7 +54,7 @@ module.exports = { emphasis: "#d1d5db", // gray-300 }, border: { - DEFAULT: "#1f2937", // gray-800 + DEFAULT: "#374151", // gray-700 }, ring: { DEFAULT: "#1f2937", // gray-800 From 2a0df8f1b5f6c7d180ce1cd14801cf994b7aa957 Mon Sep 17 00:00:00 2001 From: Severin Landolt <41927988+severinlandolt@users.noreply.github.com> Date: Tue, 24 Oct 2023 01:09:52 +0200 Subject: [PATCH 2/2] fix: tab colors (#768) --- src/components/input-elements/Tabs/Tab.tsx | 8 ++++++-- src/stories/input-elements/TabGroup.stories.tsx | 5 ++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/components/input-elements/Tabs/Tab.tsx b/src/components/input-elements/Tabs/Tab.tsx index cedcfcc91..ee198efdb 100644 --- a/src/components/input-elements/Tabs/Tab.tsx +++ b/src/components/input-elements/Tabs/Tab.tsx @@ -39,9 +39,13 @@ function getVariantStyles(tabVariant: TabVariant, color?: Color) { // common "border-transparent border rounded-tremor-small", // light - "ui-selected:border-tremor-border ui-selected:bg-tremor-background ui-selected:shadow-tremor-input hover:text-tremor-content-emphasis text-tremor-content", + "ui-selected:border-tremor-border ui-selected:bg-tremor-background ui-selected:shadow-tremor-input hover:text-tremor-content-emphasis ui-selected:text-tremor-brand", // dark - "dark:ui-selected:border-dark-tremor-border dark:ui-selected:bg-dark-tremor-background dark:ui-selected:shadow-dark-tremor-input dark:hover:text-dark-tremor-content-emphasis dark:text-dark-tremor-content", + "dark:ui-selected:border-dark-tremor-border dark:ui-selected:bg-dark-tremor-background dark:ui-selected:shadow-dark-tremor-input dark:hover:text-dark-tremor-content-emphasis dark:ui-selected:text-dark-tremor-brand", + // brand + color + ? getColorClassNames(color, colorPalette.text).selectTextColor + : "text-tremor-content dark:text-dark-tremor-content", spacing.md.paddingX, spacing.twoXs.paddingY, ); diff --git a/src/stories/input-elements/TabGroup.stories.tsx b/src/stories/input-elements/TabGroup.stories.tsx index 06809fed3..9186a4c11 100644 --- a/src/stories/input-elements/TabGroup.stories.tsx +++ b/src/stories/input-elements/TabGroup.stories.tsx @@ -67,12 +67,11 @@ function WithControlledStateTemplate({ ...args }) { } function TabSet({ showText = true, ...args }) { - const { color } = args; return ( <>
- - + +
);