From 5358b16fb77dde2175f07949bee61b9bd36ae915 Mon Sep 17 00:00:00 2001
From: Grzegorz Chudzinski-Pawlowski
<112354940+grzegorz-cp@users.noreply.github.com>
Date: Tue, 10 Dec 2024 04:52:52 +1300
Subject: [PATCH 01/87] Charts: Adding line chart (#40466)
* Charts - Adding baaic line chart
* changelog
* Charts - Fixing pnpm lock
* Charts - Adding baaic pie semi circle chart
---
pnpm-lock.yaml | 966 ++++++++++++++++--
projects/js-packages/charts/README.md | 10 +-
.../charts/changelog/add-charts-basic-line | 4 +
projects/js-packages/charts/package.json | 29 +-
.../charts/src/components/bar-chart/index.tsx | 6 +-
.../src/components/line-chart/index.tsx | 1 +
.../line-chart/line-chart.module.scss | 15 +
.../src/components/line-chart/line-chart.tsx | 162 +++
.../line-chart/stories/index.stories.tsx | 34 +
.../pie-semi-circle-chart/index.tsx | 1 +
.../pie-semi-circle-chart.module.scss | 3 +
.../pie-semi-circle-chart.tsx | 93 ++
.../stories/index.stories.tsx | 52 +
.../charts/src/components/shared/types.d.ts | 32 +
projects/js-packages/charts/src/index.ts | 4 +-
15 files changed, 1302 insertions(+), 110 deletions(-)
create mode 100644 projects/js-packages/charts/changelog/add-charts-basic-line
create mode 100644 projects/js-packages/charts/src/components/line-chart/index.tsx
create mode 100644 projects/js-packages/charts/src/components/line-chart/line-chart.module.scss
create mode 100644 projects/js-packages/charts/src/components/line-chart/line-chart.tsx
create mode 100644 projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx
create mode 100644 projects/js-packages/charts/src/components/pie-semi-circle-chart/index.tsx
create mode 100644 projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.module.scss
create mode 100644 projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx
create mode 100644 projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx
create mode 100644 projects/js-packages/charts/src/components/shared/types.d.ts
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 37163dba4c345..00711e4c34617 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -287,28 +287,40 @@ importers:
projects/js-packages/charts:
dependencies:
+ '@react-spring/web':
+ specifier: 9.7.3
+ version: 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@visx/axis':
- specifier: ^3.8.0
+ specifier: ^3.12.0
version: 3.12.0(react@18.3.1)
'@visx/group':
- specifier: ^3.8.0
+ specifier: ^3.12.0
version: 3.12.0(react@18.3.1)
'@visx/scale':
- specifier: ^3.8.0
+ specifier: ^3.12.0
version: 3.12.0
'@visx/shape':
- specifier: ^3.8.0
+ specifier: ^3.12.0
+ version: 3.12.0(react@18.3.1)
+ '@visx/text':
+ specifier: 3.12.0
version: 3.12.0(react@18.3.1)
+ '@visx/xychart':
+ specifier: 3.12.0
+ version: 3.12.0(@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ clsx:
+ specifier: 2.1.1
+ version: 2.1.1
devDependencies:
'@storybook/blocks':
- specifier: 8.3.5
- version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)
+ specifier: 8.4.6
+ version: 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)
'@storybook/react':
- specifier: 8.3.5
- version: 8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)
+ specifier: 8.4.6
+ version: 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)(typescript@5.7.2)
'@types/react':
- specifier: 18.3.12
- version: 18.3.12
+ specifier: 18.3.13
+ version: 18.3.13
'@types/react-dom':
specifier: 18.3.1
version: 18.3.1
@@ -328,11 +340,11 @@ importers:
specifier: 18.3.1
version: 18.3.1(react@18.3.1)
storybook:
- specifier: 8.3.5
- version: 8.3.5
+ specifier: 8.4.6
+ version: 8.4.6
typescript:
- specifier: 5.0.4
- version: 5.0.4
+ specifier: 5.7.2
+ version: 5.7.2
projects/js-packages/components:
dependencies:
@@ -4994,6 +5006,10 @@ packages:
resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==}
engines: {node: '>=6.9.0'}
+ '@babel/compat-data@7.26.3':
+ resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==}
+ engines: {node: '>=6.9.0'}
+
'@babel/core@7.26.0':
resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==}
engines: {node: '>=6.9.0'}
@@ -5009,6 +5025,10 @@ packages:
resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==}
engines: {node: '>=6.9.0'}
+ '@babel/generator@7.26.3':
+ resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-annotate-as-pure@7.25.9':
resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==}
engines: {node: '>=6.9.0'}
@@ -5105,6 +5125,11 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
+ '@babel/parser@7.26.3':
+ resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
'@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9':
resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==}
engines: {node: '>=6.9.0'}
@@ -5625,10 +5650,18 @@ packages:
resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==}
engines: {node: '>=6.9.0'}
+ '@babel/traverse@7.26.3':
+ resolution: {integrity: sha512-yTmc8J+Sj8yLzwr4PD5Xb/WF3bOYu2C2OoSZPzbuqRm4n98XirsbzaX+GloeO376UnSYIYJ4NCanwV5/ugZkwA==}
+ engines: {node: '>=6.9.0'}
+
'@babel/types@7.26.0':
resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==}
engines: {node: '>=6.9.0'}
+ '@babel/types@7.26.3':
+ resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==}
+ engines: {node: '>=6.9.0'}
+
'@base2/pretty-print-object@1.0.1':
resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==}
@@ -5725,6 +5758,12 @@ packages:
cpu: [ppc64]
os: [aix]
+ '@esbuild/aix-ppc64@0.24.0':
+ resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/android-arm64@0.17.19':
resolution: {integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==}
engines: {node: '>=12'}
@@ -5737,6 +5776,12 @@ packages:
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm64@0.24.0':
+ resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm@0.17.19':
resolution: {integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==}
engines: {node: '>=12'}
@@ -5749,6 +5794,12 @@ packages:
cpu: [arm]
os: [android]
+ '@esbuild/android-arm@0.24.0':
+ resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-x64@0.17.19':
resolution: {integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==}
engines: {node: '>=12'}
@@ -5761,6 +5812,12 @@ packages:
cpu: [x64]
os: [android]
+ '@esbuild/android-x64@0.24.0':
+ resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/darwin-arm64@0.17.19':
resolution: {integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==}
engines: {node: '>=12'}
@@ -5773,6 +5830,12 @@ packages:
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-arm64@0.24.0':
+ resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.17.19':
resolution: {integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==}
engines: {node: '>=12'}
@@ -5785,6 +5848,12 @@ packages:
cpu: [x64]
os: [darwin]
+ '@esbuild/darwin-x64@0.24.0':
+ resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/freebsd-arm64@0.17.19':
resolution: {integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==}
engines: {node: '>=12'}
@@ -5797,6 +5866,12 @@ packages:
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-arm64@0.24.0':
+ resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.17.19':
resolution: {integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==}
engines: {node: '>=12'}
@@ -5809,6 +5884,12 @@ packages:
cpu: [x64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.24.0':
+ resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/linux-arm64@0.17.19':
resolution: {integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==}
engines: {node: '>=12'}
@@ -5821,6 +5902,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm64@0.24.0':
+ resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm@0.17.19':
resolution: {integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==}
engines: {node: '>=12'}
@@ -5833,6 +5920,12 @@ packages:
cpu: [arm]
os: [linux]
+ '@esbuild/linux-arm@0.24.0':
+ resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-ia32@0.17.19':
resolution: {integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==}
engines: {node: '>=12'}
@@ -5845,6 +5938,12 @@ packages:
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-ia32@0.24.0':
+ resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-loong64@0.17.19':
resolution: {integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==}
engines: {node: '>=12'}
@@ -5857,6 +5956,12 @@ packages:
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-loong64@0.24.0':
+ resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.17.19':
resolution: {integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==}
engines: {node: '>=12'}
@@ -5869,6 +5974,12 @@ packages:
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-mips64el@0.24.0':
+ resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.17.19':
resolution: {integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==}
engines: {node: '>=12'}
@@ -5881,6 +5992,12 @@ packages:
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-ppc64@0.24.0':
+ resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.17.19':
resolution: {integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==}
engines: {node: '>=12'}
@@ -5893,6 +6010,12 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-riscv64@0.24.0':
+ resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-s390x@0.17.19':
resolution: {integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==}
engines: {node: '>=12'}
@@ -5905,6 +6028,12 @@ packages:
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-s390x@0.24.0':
+ resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-x64@0.17.19':
resolution: {integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==}
engines: {node: '>=12'}
@@ -5917,6 +6046,12 @@ packages:
cpu: [x64]
os: [linux]
+ '@esbuild/linux-x64@0.24.0':
+ resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/netbsd-x64@0.17.19':
resolution: {integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==}
engines: {node: '>=12'}
@@ -5929,12 +6064,24 @@ packages:
cpu: [x64]
os: [netbsd]
+ '@esbuild/netbsd-x64@0.24.0':
+ resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/openbsd-arm64@0.23.1':
resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
+ '@esbuild/openbsd-arm64@0.24.0':
+ resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.17.19':
resolution: {integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==}
engines: {node: '>=12'}
@@ -5947,6 +6094,12 @@ packages:
cpu: [x64]
os: [openbsd]
+ '@esbuild/openbsd-x64@0.24.0':
+ resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/sunos-x64@0.17.19':
resolution: {integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==}
engines: {node: '>=12'}
@@ -5959,6 +6112,12 @@ packages:
cpu: [x64]
os: [sunos]
+ '@esbuild/sunos-x64@0.24.0':
+ resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/win32-arm64@0.17.19':
resolution: {integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==}
engines: {node: '>=12'}
@@ -5971,6 +6130,12 @@ packages:
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-arm64@0.24.0':
+ resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-ia32@0.17.19':
resolution: {integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==}
engines: {node: '>=12'}
@@ -5983,6 +6148,12 @@ packages:
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-ia32@0.24.0':
+ resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-x64@0.17.19':
resolution: {integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==}
engines: {node: '>=12'}
@@ -5995,6 +6166,12 @@ packages:
cpu: [x64]
os: [win32]
+ '@esbuild/win32-x64@0.24.0':
+ resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
'@eslint-community/eslint-utils@4.4.1':
resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -6817,6 +6994,18 @@ packages:
react-dom:
optional: true
+ '@storybook/blocks@8.4.6':
+ resolution: {integrity: sha512-Gzbx8hM7ZQIHlQELcFIMbY1v+r1Po4mlinq0QVPtKS4lBcW4eZIsesbxOaL+uFNrxb583TLFzXo0DbRPzS46sg==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ storybook: ^8.4.6
+ peerDependenciesMeta:
+ react:
+ optional: true
+ react-dom:
+ optional: true
+
'@storybook/builder-webpack5@8.3.5':
resolution: {integrity: sha512-rhmfdiSlDn3Arki7IMYk11PO29rYuYM4LZ8GlNqREU7VUl/8Vngo/jFIa4pKaIns3ql1RrwzO1wm9JvuL/4ydA==}
peerDependencies:
@@ -6836,6 +7025,11 @@ packages:
peerDependencies:
storybook: ^8.3.5
+ '@storybook/components@8.4.6':
+ resolution: {integrity: sha512-9tKSJJCyFT5RZMRGyozTBJkr9C9Yfk1nuOE9XbDEE1Z+3/IypKR9+iwc5mfNBStDNY+rxtYWNLKBb5GPR2yhzA==}
+ peerDependencies:
+ storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0
+
'@storybook/core-common@8.4.2':
resolution: {integrity: sha512-om+tWPdCDuL9zSioxE1EGaZw5c8yRjQTfaVBpWCxbGOMgbbFJXOcJ9oXwmVEQSbxEPY7RUmCXcVpO3N+N+xDKA==}
peerDependencies:
@@ -6854,6 +7048,14 @@ packages:
'@storybook/core@8.3.5':
resolution: {integrity: sha512-GOGfTvdioNa/n+Huwg4u/dsyYyBcM+gEcdxi3B7i5x4yJ3I912KoVshumQAOF2myKSRdI8h8aGWdx7nnjd0+5Q==}
+ '@storybook/core@8.4.6':
+ resolution: {integrity: sha512-WeojVtHy0/t50tzw/15S+DLzKsj8BN9yWdo3vJMvm+nflLFvfq1XvD9WGOWeaFp8E/o3AP+4HprXG0r42KEJtA==}
+ peerDependencies:
+ prettier: ^2 || ^3
+ peerDependenciesMeta:
+ prettier:
+ optional: true
+
'@storybook/csf-plugin@8.3.5':
resolution: {integrity: sha512-ODVqNXwJt90hG7QW8I9w/XUyOGlr0l7XltmIJgXwB/2cYDvaGu3JV5Ybg7O0fxPV8uXk7JlRuUD8ZYv5Low6pA==}
peerDependencies:
@@ -6867,6 +7069,9 @@ packages:
'@storybook/csf@0.1.11':
resolution: {integrity: sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==}
+ '@storybook/csf@0.1.12':
+ resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==}
+
'@storybook/global@5.0.0':
resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==}
@@ -6882,6 +7087,11 @@ packages:
peerDependencies:
storybook: ^8.3.5
+ '@storybook/manager-api@8.4.6':
+ resolution: {integrity: sha512-TsXlQ5m5rTl2KNT9icPFyy822AqXrx1QplZBt/L7cFn7SpqQKDeSta21FH7MG0piAvzOweXebVSqKngJ6cCWWQ==}
+ peerDependencies:
+ storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0
+
'@storybook/preset-react-webpack@8.3.5':
resolution: {integrity: sha512-laS9CiZrZ4CSnBTBfkBba3hmlDhzcjIfCvx8/rk3SZ+zh93NpqXixzRt6m0UH2po63dpdu21nXrsW5Cfs88Ypw==}
engines: {node: '>=18.0.0'}
@@ -6899,6 +7109,11 @@ packages:
peerDependencies:
storybook: ^8.3.5
+ '@storybook/preview-api@8.4.6':
+ resolution: {integrity: sha512-LbD+lR1FGvWaJBXteVx5xdgs1x1D7tyidBg2CsW2ex+cP0iJ176JgjPfutZxlWOfQnhfRYNnJ3WKoCIfxFOTKA==}
+ peerDependencies:
+ storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0
+
'@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0':
resolution: {integrity: sha512-KUqXC3oa9JuQ0kZJLBhVdS4lOneKTOopnNBK4tUAgoxWQ3u/IjzdueZjFr7gyBrXMoU6duutk3RQR9u8ZpYJ4Q==}
peerDependencies:
@@ -6912,6 +7127,13 @@ packages:
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
storybook: ^8.3.5
+ '@storybook/react-dom-shim@8.4.6':
+ resolution: {integrity: sha512-f7RM8GO++fqMxbjNdEzeGS1P821jXuwRnAraejk5hyjB5SqetauFxMwoFYEYfJXPaLX2qIubnIJ78hdJ/IBaEA==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ storybook: ^8.4.6
+
'@storybook/react-webpack5@8.3.5':
resolution: {integrity: sha512-J7jCxjCuWvRJrAtOwe4ij8rjfTGm1Dpsfbz8xar4ItVw7ikiyALr34E3FJzfgq7M40uGXZhvCl2IVRdGeiLmzg==}
engines: {node: '>=18.0.0'}
@@ -6939,6 +7161,21 @@ packages:
typescript:
optional: true
+ '@storybook/react@8.4.6':
+ resolution: {integrity: sha512-QAT23beoYNLhFGAXPimtuMErvpcI7eZbZ4AlLqW1fhiTZrRYw06cjC1bs9H3tODMcHH9LS5p3Wz9b29jtV2XGw==}
+ engines: {node: '>=18.0.0'}
+ peerDependencies:
+ '@storybook/test': 8.4.6
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
+ storybook: ^8.4.6
+ typescript: '>= 4.2.x'
+ peerDependenciesMeta:
+ '@storybook/test':
+ optional: true
+ typescript:
+ optional: true
+
'@storybook/source-loader@8.3.5':
resolution: {integrity: sha512-rQRWMqsM2PROeQxBCX23sDKdTMpdkub3A2Q3+6JhVzYRQodQrQDbzVRULq3G7RGXdktTkE+huVO4pLKaDa7PDw==}
peerDependencies:
@@ -6954,6 +7191,11 @@ packages:
peerDependencies:
storybook: ^8.3.5
+ '@storybook/theming@8.4.6':
+ resolution: {integrity: sha512-q7vDPN/mgj7cXIVQ9R1/V75hrzNgKkm2G0LjMo57//9/djQ+7LxvBsR1iScbFIRSEqppvMiBFzkts+2uXidySA==}
+ peerDependencies:
+ storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0
+
'@svgr/babel-plugin-add-jsx-attribute@7.0.0':
resolution: {integrity: sha512-khWbXesWIP9v8HuKCl2NU2HNAyqpSQ/vkIl36Nbn4HIwEYSRWL0H7Gs6idJdha2DkpFDWlsqMELvoCE8lfFY6Q==}
engines: {node: '>=14'}
@@ -7280,6 +7522,9 @@ packages:
'@types/d3-time@3.0.0':
resolution: {integrity: sha512-sZLCdHvBUcNby1cB6Fd3ZBrABbjz3v1Vm90nysCQ6Vt7vd6e/h9Lt7SiJUoEX0l4Dzc7P5llKyhqSi1ycSf1Hg==}
+ '@types/d3-voronoi@1.1.12':
+ resolution: {integrity: sha512-DauBl25PKZZ0WVJr42a6CNvI6efsdzofl9sajqZr2Gf5Gu733WkDdUGiPkUHXiUvYGzNNlFQde2wdZdfQPG+yw==}
+
'@types/debug@4.1.12':
resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
@@ -7433,6 +7678,9 @@ packages:
'@types/react@18.3.12':
resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==}
+ '@types/react@18.3.13':
+ resolution: {integrity: sha512-ii/gswMmOievxAJed4PAHT949bpYjPKXvXo1v6cRB/kqc2ZR4n+SgyCyvyc5Fec5ez8VnUumI1Vk7j6fRyRogg==}
+
'@types/resolve@1.20.2':
resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
@@ -7579,14 +7827,43 @@ packages:
resolution: {integrity: sha512-S4cL7Taa9yb5qbv+6wLgiKVZ03Qfkc4jGRuiUQMQ8HGBD5pcNRnHeYM33zBvJE4/zJGjJJ8GScB+WmTsn9mORw==}
hasBin: true
+ '@visx/annotation@3.12.0':
+ resolution: {integrity: sha512-ZH6Y4jfrb47iEUV9O2itU9TATE5IPzhs5qvP6J7vmv26qkqwDcuE7xN3S3l9R70WjyEKGbpO8js4EijA3FJWkA==}
+ peerDependencies:
+ react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0
+
'@visx/axis@3.12.0':
resolution: {integrity: sha512-8MoWpfuaJkhm2Yg+HwyytK8nk+zDugCqTT/tRmQX7gW4LYrHYLXFUXOzbDyyBakCVaUbUaAhVFxpMASJiQKf7A==}
peerDependencies:
react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0
+ '@visx/bounds@3.12.0':
+ resolution: {integrity: sha512-peAlNCUbYaaZ0IO6c1lDdEAnZv2iGPDiLIM8a6gu7CaMhtXZJkqrTh+AjidNcIqITktrICpGxJE/Qo9D099dvQ==}
+ peerDependencies:
+ react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0
+ react-dom: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0
+
'@visx/curve@3.12.0':
resolution: {integrity: sha512-Ng1mefXIzoIoAivw7dJ+ZZYYUbfuwXgZCgQynShr6ZIVw7P4q4HeQfJP3W24ON+1uCSrzoycHSXRelhR9SBPcw==}
+ '@visx/drag@3.12.0':
+ resolution: {integrity: sha512-LXOoPVw//YPjpYhDJYBsCYDuv1QimsXjDV98duH0aCy4V94ediXMQpe2wHq4pnlDobLEB71FjOZMFrbFmqtERg==}
+ peerDependencies:
+ react: ^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0
+
+ '@visx/event@3.12.0':
+ resolution: {integrity: sha512-9Lvw6qJ0Fi+y1vsC1WspfdIKCxHTb7oy59Uql1uBdPGT8zChP0vuxW0jQNQRDbKgoefj4pCXAFi8+MF1mEtVTw==}
+
+ '@visx/glyph@3.12.0':
+ resolution: {integrity: sha512-E9ST9MoPNyXQzjZxYYAGXT4CbBpnB90Qhx8UvUUM2/n/SZUNeH+m6UiB/CzT0jGK2b0lPHF91mlOiQ8JXBRhYg==}
+ peerDependencies:
+ react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0
+
+ '@visx/grid@3.12.0':
+ resolution: {integrity: sha512-L4ex2ooSYhwNIxJ3XFIKRhoSvEGjPc2Y3YCrtNB4TV5Ofdj4q0UMOsxfrH23Pr8HSHuQhb6VGMgYoK0LuWqDmQ==}
+ peerDependencies:
+ react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0
+
'@visx/group@3.12.0':
resolution: {integrity: sha512-Dye8iS1alVXPv7nj/7M37gJe6sSKqJLH7x6sEWAsRQ9clI0kFvjbKcKgF+U3aAVQr0NCohheFV+DtR8trfK/Ag==}
peerDependencies:
@@ -7595,6 +7872,17 @@ packages:
'@visx/point@3.12.0':
resolution: {integrity: sha512-I6UrHoJAEVbx3RORQNupgTiX5EzjuZpiwLPxn8L2mI5nfERotPKi1Yus12Cq2WtXqEBR/WgqTnoImlqOXBykcA==}
+ '@visx/react-spring@3.12.0':
+ resolution: {integrity: sha512-ehtmjFrUQx3g0mZ684M4LgI9UfQ84ZWD/m9tKfvXhEm1Vl8D4AjaZ4af1tTOg9S7vk2VlpxvVOVN7+t5pu0nSA==}
+ peerDependencies:
+ '@react-spring/web': ^9.4.5
+ react: ^16.3.0-0 || ^17.0.0 || ^18.0.0
+
+ '@visx/responsive@3.12.0':
+ resolution: {integrity: sha512-GV1BTYwAGlk/K5c9vH8lS2syPnTuIqEacI7L6LRPbsuaLscXMNi+i9fZyzo0BWvAdtRV8v6Urzglo++lvAXT1Q==}
+ peerDependencies:
+ react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0
+
'@visx/scale@3.12.0':
resolution: {integrity: sha512-+ubijrZ2AwWCsNey0HGLJ0YKNeC/XImEFsr9rM+Uef1CM3PNM43NDdNTrdBejSlzRq0lcfQPWYMYQFSlkLcPOg==}
@@ -7608,9 +7896,26 @@ packages:
peerDependencies:
react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0
+ '@visx/tooltip@3.12.0':
+ resolution: {integrity: sha512-pWhsYhgl0Shbeqf80qy4QCB6zpq6tQtMQQxKlh3UiKxzkkfl+Metaf9p0/S0HexNi4vewOPOo89xWx93hBeh3A==}
+ peerDependencies:
+ react: ^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0
+ react-dom: ^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0
+
'@visx/vendor@3.12.0':
resolution: {integrity: sha512-SVO+G0xtnL9dsNpGDcjCgoiCnlB3iLSM9KLz1sLbSrV7RaVXwY3/BTm2X9OWN1jH2a9M+eHt6DJ6sE6CXm4cUg==}
+ '@visx/voronoi@3.12.0':
+ resolution: {integrity: sha512-U3HWu6g5UjQchFDq8k/A4U9WrlN+80rAFPdGOUvIGOueQw9RmlZlNaeg8IJcQr2yk1s4O/VSpt3nR82zdINWMw==}
+ peerDependencies:
+ react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0
+
+ '@visx/xychart@3.12.0':
+ resolution: {integrity: sha512-itJ7qvj/STpVmHesVyo2vPOataBM1mgSaf9R6/s4Bpe340wZldfCJ+IqRcNgdtbBagz1Hlr/sRnla4tWE2yw9A==}
+ peerDependencies:
+ '@react-spring/web': ^9.4.5
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+
'@webassemblyjs/ast@1.14.1':
resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==}
@@ -8583,6 +8888,9 @@ packages:
caniuse-lite@1.0.30001680:
resolution: {integrity: sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==}
+ caniuse-lite@1.0.30001686:
+ resolution: {integrity: sha512-Y7deg0Aergpa24M3qLC5xjNklnKnhsmSyR/V89dLZ1n0ucJIFNs7PgR2Yfa/Zf6W79SbBicgtGxZr2juHkEUIA==}
+
capital-case@1.0.4:
resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==}
@@ -8907,6 +9215,10 @@ packages:
resolution: {integrity: sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==}
engines: {node: '>= 8'}
+ cross-spawn@7.0.6:
+ resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
+ engines: {node: '>= 8'}
+
crypto-js@4.2.0:
resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==}
@@ -9057,6 +9369,9 @@ packages:
resolution: {integrity: sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==}
engines: {node: '>=12'}
+ d3-interpolate-path@2.2.1:
+ resolution: {integrity: sha512-6qLLh/KJVzls0XtMsMpcxhqMhgVEN7VIbR/6YGZe2qlS8KDgyyVB20XcmGnDyB051HcefQXM/Tppa9vcANEA4Q==}
+
d3-interpolate@3.0.1:
resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==}
engines: {node: '>=12'}
@@ -9064,6 +9379,9 @@ packages:
d3-path@1.0.9:
resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==}
+ d3-path@2.0.0:
+ resolution: {integrity: sha512-ZwZQxKhBnv9yHaiWd6ZU4x5BtCQ7pXszEV9CU6kRgwIQVQGLMv1oiL4M+MK/n79sYzsj+gcgpPQSctJUsLN7fA==}
+
d3-scale@4.0.2:
resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==}
engines: {node: '>=12'}
@@ -9071,6 +9389,9 @@ packages:
d3-shape@1.3.7:
resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==}
+ d3-shape@2.1.0:
+ resolution: {integrity: sha512-PnjUqfM2PpskbSLTJvAzp2Wv4CZsnAgTfcVRTwW03QR3MkXF8Uo7B1y/lWkAsmbKwuecto++4NlsYcvYpXpTHA==}
+
d3-time-format@4.1.0:
resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==}
engines: {node: '>=12'}
@@ -9079,6 +9400,9 @@ packages:
resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==}
engines: {node: '>=12'}
+ d3-voronoi@1.1.4:
+ resolution: {integrity: sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg==}
+
damerau-levenshtein@1.0.8:
resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
@@ -9358,6 +9682,9 @@ packages:
electron-to-chromium@1.5.55:
resolution: {integrity: sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg==}
+ electron-to-chromium@1.5.69:
+ resolution: {integrity: sha512-zz4e7EbJqqtdQtwt61ZYKrfEYlV0HpGbIGRVFGOO9YBZIhg0BDXtBcWxpqyAm6oyPl2Zp8tc5FrPpCZQH/Yazg==}
+
elegant-spinner@1.0.1:
resolution: {integrity: sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ==}
engines: {node: '>=0.10.0'}
@@ -9503,6 +9830,11 @@ packages:
engines: {node: '>=18'}
hasBin: true
+ esbuild@0.24.0:
+ resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==}
+ engines: {node: '>=18'}
+ hasBin: true
+
escalade@3.2.0:
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
engines: {node: '>=6'}
@@ -10202,6 +10534,10 @@ packages:
gopd@1.0.1:
resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+ gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+
graceful-fs@4.2.11:
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
@@ -10242,10 +10578,18 @@ packages:
resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
engines: {node: '>= 0.4'}
+ has-proto@1.1.0:
+ resolution: {integrity: sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==}
+ engines: {node: '>= 0.4'}
+
has-symbols@1.0.3:
resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
engines: {node: '>= 0.4'}
+ has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+
has-tostringtag@1.0.2:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
@@ -11520,6 +11864,9 @@ packages:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
+ mitt@2.1.0:
+ resolution: {integrity: sha512-ILj2TpLiysu2wkBbWjAmww7TkZb65aiQO+DkVdUTBpBXq+MHYiETENkKFMtsJZX1Lf4pe4QOrTSjIfUwN5lRdg==}
+
mitt@3.0.1:
resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
@@ -11642,8 +11989,8 @@ packages:
resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==}
engines: {node: '>=0.10.0'}
- nwsapi@2.2.13:
- resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==}
+ nwsapi@2.2.16:
+ resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==}
nyc@15.1.0:
resolution: {integrity: sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==}
@@ -12338,8 +12685,8 @@ packages:
proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
- psl@1.10.0:
- resolution: {integrity: sha512-KSKHEbjAnpUuAUserOq0FxGXCUrzC3WniuSJhvdbs102rL55266ZcHBqLWOsG30spQMlPdpy7icATiAQehg/iA==}
+ psl@1.15.0:
+ resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==}
pump@3.0.2:
resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==}
@@ -12802,6 +13149,10 @@ packages:
resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==}
engines: {node: '>=10'}
+ resolve.exports@2.0.3:
+ resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==}
+ engines: {node: '>=10'}
+
resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
@@ -13195,6 +13546,15 @@ packages:
resolution: {integrity: sha512-hYQVtP2l+3kO8oKDn4fjXXQYxgTRsj/LaV6lUMJH0zt+OhVmDXKJLxmdUP4ieTm0T8wEbSYosFavgPcQZlxRfw==}
hasBin: true
+ storybook@8.4.6:
+ resolution: {integrity: sha512-J6juZSZT2u3PUW0QZYZZYxBq6zU5O0OrkSgkMXGMg/QrS9to9IHmt4FjEMEyACRbXo8POcB/fSXa3VpGe7bv3g==}
+ hasBin: true
+ peerDependencies:
+ prettier: ^2 || ^3
+ peerDependenciesMeta:
+ prettier:
+ optional: true
+
streamx@2.20.1:
resolution: {integrity: sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==}
@@ -13731,6 +14091,11 @@ packages:
engines: {node: '>=12.20'}
hasBin: true
+ typescript@5.7.2:
+ resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
uc.micro@2.1.0:
resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
@@ -14064,6 +14429,10 @@ packages:
resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
engines: {node: '>= 0.4'}
+ which-typed-array@1.1.16:
+ resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==}
+ engines: {node: '>= 0.4'}
+
which@1.3.1:
resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
hasBin: true
@@ -14436,20 +14805,22 @@ snapshots:
'@babel/compat-data@7.26.2': {}
+ '@babel/compat-data@7.26.3': {}
+
'@babel/core@7.26.0':
dependencies:
'@ampproject/remapping': 2.3.0
'@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.2
+ '@babel/generator': 7.26.3
'@babel/helper-compilation-targets': 7.25.9
'@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
'@babel/helpers': 7.26.0
- '@babel/parser': 7.26.2
+ '@babel/parser': 7.26.3
'@babel/template': 7.25.9
- '@babel/traverse': 7.25.9
- '@babel/types': 7.26.0
+ '@babel/traverse': 7.26.3
+ '@babel/types': 7.26.3
convert-source-map: 2.0.0
- debug: 4.3.4
+ debug: 4.3.7
gensync: 1.0.0-beta.2
json5: 2.2.3
semver: 6.3.1
@@ -14472,6 +14843,14 @@ snapshots:
'@jridgewell/trace-mapping': 0.3.25
jsesc: 3.0.2
+ '@babel/generator@7.26.3':
+ dependencies:
+ '@babel/parser': 7.26.3
+ '@babel/types': 7.26.3
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
+ jsesc: 3.0.2
+
'@babel/helper-annotate-as-pure@7.25.9':
dependencies:
'@babel/types': 7.26.0
@@ -14485,7 +14864,7 @@ snapshots:
'@babel/helper-compilation-targets@7.25.9':
dependencies:
- '@babel/compat-data': 7.26.2
+ '@babel/compat-data': 7.26.3
'@babel/helper-validator-option': 7.25.9
browserslist: 4.24.2
lru-cache: 5.1.1
@@ -14531,8 +14910,8 @@ snapshots:
'@babel/helper-module-imports@7.25.9':
dependencies:
- '@babel/traverse': 7.25.9
- '@babel/types': 7.26.0
+ '@babel/traverse': 7.26.3
+ '@babel/types': 7.26.3
transitivePeerDependencies:
- supports-color
@@ -14541,7 +14920,7 @@ snapshots:
'@babel/core': 7.26.0
'@babel/helper-module-imports': 7.25.9
'@babel/helper-validator-identifier': 7.25.9
- '@babel/traverse': 7.25.9
+ '@babel/traverse': 7.26.3
transitivePeerDependencies:
- supports-color
@@ -14600,12 +14979,16 @@ snapshots:
'@babel/helpers@7.26.0':
dependencies:
'@babel/template': 7.25.9
- '@babel/types': 7.26.0
+ '@babel/types': 7.26.3
'@babel/parser@7.26.2':
dependencies:
'@babel/types': 7.26.0
+ '@babel/parser@7.26.3':
+ dependencies:
+ '@babel/types': 7.26.3
+
'@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)':
dependencies:
'@babel/core': 7.26.0
@@ -15237,8 +15620,8 @@ snapshots:
'@babel/template@7.25.9':
dependencies:
'@babel/code-frame': 7.26.2
- '@babel/parser': 7.26.2
- '@babel/types': 7.26.0
+ '@babel/parser': 7.26.3
+ '@babel/types': 7.26.3
'@babel/traverse@7.25.9':
dependencies:
@@ -15252,12 +15635,29 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@babel/traverse@7.26.3':
+ dependencies:
+ '@babel/code-frame': 7.26.2
+ '@babel/generator': 7.26.3
+ '@babel/parser': 7.26.3
+ '@babel/template': 7.25.9
+ '@babel/types': 7.26.3
+ debug: 4.3.7
+ globals: 11.12.0
+ transitivePeerDependencies:
+ - supports-color
+
'@babel/types@7.26.0':
dependencies:
'@babel/helper-string-parser': 7.25.9
'@babel/helper-validator-identifier': 7.25.9
- '@base2/pretty-print-object@1.0.1': {}
+ '@babel/types@7.26.3':
+ dependencies:
+ '@babel/helper-string-parser': 7.25.9
+ '@babel/helper-validator-identifier': 7.25.9
+
+ '@base2/pretty-print-object@1.0.1': {}
'@bcoe/v8-coverage@0.2.3': {}
@@ -15412,141 +15812,213 @@ snapshots:
'@esbuild/aix-ppc64@0.23.1':
optional: true
+ '@esbuild/aix-ppc64@0.24.0':
+ optional: true
+
'@esbuild/android-arm64@0.17.19':
optional: true
'@esbuild/android-arm64@0.23.1':
optional: true
+ '@esbuild/android-arm64@0.24.0':
+ optional: true
+
'@esbuild/android-arm@0.17.19':
optional: true
'@esbuild/android-arm@0.23.1':
optional: true
+ '@esbuild/android-arm@0.24.0':
+ optional: true
+
'@esbuild/android-x64@0.17.19':
optional: true
'@esbuild/android-x64@0.23.1':
optional: true
+ '@esbuild/android-x64@0.24.0':
+ optional: true
+
'@esbuild/darwin-arm64@0.17.19':
optional: true
'@esbuild/darwin-arm64@0.23.1':
optional: true
+ '@esbuild/darwin-arm64@0.24.0':
+ optional: true
+
'@esbuild/darwin-x64@0.17.19':
optional: true
'@esbuild/darwin-x64@0.23.1':
optional: true
+ '@esbuild/darwin-x64@0.24.0':
+ optional: true
+
'@esbuild/freebsd-arm64@0.17.19':
optional: true
'@esbuild/freebsd-arm64@0.23.1':
optional: true
+ '@esbuild/freebsd-arm64@0.24.0':
+ optional: true
+
'@esbuild/freebsd-x64@0.17.19':
optional: true
'@esbuild/freebsd-x64@0.23.1':
optional: true
+ '@esbuild/freebsd-x64@0.24.0':
+ optional: true
+
'@esbuild/linux-arm64@0.17.19':
optional: true
'@esbuild/linux-arm64@0.23.1':
optional: true
+ '@esbuild/linux-arm64@0.24.0':
+ optional: true
+
'@esbuild/linux-arm@0.17.19':
optional: true
'@esbuild/linux-arm@0.23.1':
optional: true
+ '@esbuild/linux-arm@0.24.0':
+ optional: true
+
'@esbuild/linux-ia32@0.17.19':
optional: true
'@esbuild/linux-ia32@0.23.1':
optional: true
+ '@esbuild/linux-ia32@0.24.0':
+ optional: true
+
'@esbuild/linux-loong64@0.17.19':
optional: true
'@esbuild/linux-loong64@0.23.1':
optional: true
+ '@esbuild/linux-loong64@0.24.0':
+ optional: true
+
'@esbuild/linux-mips64el@0.17.19':
optional: true
'@esbuild/linux-mips64el@0.23.1':
optional: true
+ '@esbuild/linux-mips64el@0.24.0':
+ optional: true
+
'@esbuild/linux-ppc64@0.17.19':
optional: true
'@esbuild/linux-ppc64@0.23.1':
optional: true
+ '@esbuild/linux-ppc64@0.24.0':
+ optional: true
+
'@esbuild/linux-riscv64@0.17.19':
optional: true
'@esbuild/linux-riscv64@0.23.1':
optional: true
+ '@esbuild/linux-riscv64@0.24.0':
+ optional: true
+
'@esbuild/linux-s390x@0.17.19':
optional: true
'@esbuild/linux-s390x@0.23.1':
optional: true
+ '@esbuild/linux-s390x@0.24.0':
+ optional: true
+
'@esbuild/linux-x64@0.17.19':
optional: true
'@esbuild/linux-x64@0.23.1':
optional: true
+ '@esbuild/linux-x64@0.24.0':
+ optional: true
+
'@esbuild/netbsd-x64@0.17.19':
optional: true
'@esbuild/netbsd-x64@0.23.1':
optional: true
+ '@esbuild/netbsd-x64@0.24.0':
+ optional: true
+
'@esbuild/openbsd-arm64@0.23.1':
optional: true
+ '@esbuild/openbsd-arm64@0.24.0':
+ optional: true
+
'@esbuild/openbsd-x64@0.17.19':
optional: true
'@esbuild/openbsd-x64@0.23.1':
optional: true
+ '@esbuild/openbsd-x64@0.24.0':
+ optional: true
+
'@esbuild/sunos-x64@0.17.19':
optional: true
'@esbuild/sunos-x64@0.23.1':
optional: true
+ '@esbuild/sunos-x64@0.24.0':
+ optional: true
+
'@esbuild/win32-arm64@0.17.19':
optional: true
'@esbuild/win32-arm64@0.23.1':
optional: true
+ '@esbuild/win32-arm64@0.24.0':
+ optional: true
+
'@esbuild/win32-ia32@0.17.19':
optional: true
'@esbuild/win32-ia32@0.23.1':
optional: true
+ '@esbuild/win32-ia32@0.24.0':
+ optional: true
+
'@esbuild/win32-x64@0.17.19':
optional: true
'@esbuild/win32-x64@0.23.1':
optional: true
+ '@esbuild/win32-x64@0.24.0':
+ optional: true
+
'@eslint-community/eslint-utils@4.4.1(eslint@8.57.1)':
dependencies:
eslint: 8.57.1
@@ -15629,7 +16101,7 @@ snapshots:
'@jest/console@29.7.0':
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
jest-message-util: 29.7.0
jest-util: 29.7.0
@@ -15642,14 +16114,14 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.9.0
exit: 0.1.2
graceful-fs: 4.2.11
jest-changed-files: 29.7.0
- jest-config: 29.7.0(@types/node@20.17.9)
+ jest-config: 29.7.0(@types/node@22.10.1)
jest-haste-map: 29.7.0
jest-message-util: 29.7.0
jest-regex-util: 29.6.3
@@ -15678,7 +16150,7 @@ snapshots:
dependencies:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-mock: 29.7.0
'@jest/expect-utils@29.7.0':
@@ -15696,7 +16168,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-message-util: 29.7.0
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -15727,7 +16199,7 @@ snapshots:
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@jridgewell/trace-mapping': 0.3.25
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit: 0.1.2
@@ -15797,7 +16269,7 @@ snapshots:
'@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
'@types/yargs': 17.0.33
chalk: 4.1.2
@@ -16718,6 +17190,16 @@ snapshots:
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
+ '@storybook/blocks@8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)':
+ dependencies:
+ '@storybook/csf': 0.1.12
+ '@storybook/icons': 1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ storybook: 8.4.6
+ ts-dedent: 2.2.0
+ optionalDependencies:
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
'@storybook/builder-webpack5@8.3.5(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))':
dependencies:
'@storybook/core-webpack': 8.3.5(storybook@8.3.5)
@@ -16766,6 +17248,10 @@ snapshots:
dependencies:
storybook: 8.3.5
+ '@storybook/components@8.4.6(storybook@8.4.6)':
+ dependencies:
+ storybook: 8.4.6
+
'@storybook/core-common@8.4.2(storybook@8.3.5)':
dependencies:
storybook: 8.3.5
@@ -16800,6 +17286,24 @@ snapshots:
- supports-color
- utf-8-validate
+ '@storybook/core@8.4.6':
+ dependencies:
+ '@storybook/csf': 0.1.12
+ better-opn: 3.0.2
+ browser-assert: 1.2.1
+ esbuild: 0.24.0
+ esbuild-register: 3.6.0(esbuild@0.24.0)
+ jsdoc-type-pratt-parser: 4.1.0
+ process: 0.11.10
+ recast: 0.23.9
+ semver: 7.6.3
+ util: 0.12.5
+ ws: 8.18.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
'@storybook/csf-plugin@8.3.5(storybook@8.3.5)':
dependencies:
storybook: 8.3.5
@@ -16815,6 +17319,10 @@ snapshots:
dependencies:
type-fest: 2.19.0
+ '@storybook/csf@0.1.12':
+ dependencies:
+ type-fest: 2.19.0
+
'@storybook/global@5.0.0': {}
'@storybook/icons@1.2.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
@@ -16826,6 +17334,10 @@ snapshots:
dependencies:
storybook: 8.3.5
+ '@storybook/manager-api@8.4.6(storybook@8.4.6)':
+ dependencies:
+ storybook: 8.4.6
+
'@storybook/preset-react-webpack@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))':
dependencies:
'@storybook/core-webpack': 8.3.5(storybook@8.3.5)
@@ -16858,6 +17370,10 @@ snapshots:
dependencies:
storybook: 8.3.5
+ '@storybook/preview-api@8.4.6(storybook@8.4.6)':
+ dependencies:
+ storybook: 8.4.6
+
'@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.0.4)(webpack@5.94.0(webpack-cli@4.9.1))':
dependencies:
debug: 4.3.4
@@ -16878,6 +17394,12 @@ snapshots:
react-dom: 18.3.1(react@18.3.1)
storybook: 8.3.5
+ '@storybook/react-dom-shim@8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)':
+ dependencies:
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ storybook: 8.4.6
+
'@storybook/react-webpack5@8.3.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))':
dependencies:
'@storybook/builder-webpack5': 8.3.5(storybook@8.3.5)(typescript@5.0.4)(webpack-cli@4.9.1(webpack@5.94.0))
@@ -16926,6 +17448,20 @@ snapshots:
optionalDependencies:
typescript: 5.0.4
+ '@storybook/react@8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)(typescript@5.7.2)':
+ dependencies:
+ '@storybook/components': 8.4.6(storybook@8.4.6)
+ '@storybook/global': 5.0.0
+ '@storybook/manager-api': 8.4.6(storybook@8.4.6)
+ '@storybook/preview-api': 8.4.6(storybook@8.4.6)
+ '@storybook/react-dom-shim': 8.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.4.6)
+ '@storybook/theming': 8.4.6(storybook@8.4.6)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ storybook: 8.4.6
+ optionalDependencies:
+ typescript: 5.7.2
+
'@storybook/source-loader@8.3.5(storybook@8.3.5)':
dependencies:
'@storybook/csf': 0.1.11
@@ -16972,6 +17508,10 @@ snapshots:
dependencies:
storybook: 8.3.5
+ '@storybook/theming@8.4.6(storybook@8.4.6)':
+ dependencies:
+ storybook: 8.4.6
+
'@svgr/babel-plugin-add-jsx-attribute@7.0.0(@babel/core@7.26.0)':
dependencies:
'@babel/core': 7.26.0
@@ -17244,24 +17784,24 @@ snapshots:
'@types/babel__core@7.20.5':
dependencies:
- '@babel/parser': 7.26.2
- '@babel/types': 7.26.0
+ '@babel/parser': 7.26.3
+ '@babel/types': 7.26.3
'@types/babel__generator': 7.6.8
'@types/babel__template': 7.4.4
'@types/babel__traverse': 7.20.6
'@types/babel__generator@7.6.8':
dependencies:
- '@babel/types': 7.26.0
+ '@babel/types': 7.26.3
'@types/babel__template@7.4.4':
dependencies:
- '@babel/parser': 7.26.2
- '@babel/types': 7.26.0
+ '@babel/parser': 7.26.3
+ '@babel/types': 7.26.3
'@types/babel__traverse@7.20.6':
dependencies:
- '@babel/types': 7.26.0
+ '@babel/types': 7.26.3
'@types/body-parser@1.19.5':
dependencies:
@@ -17309,6 +17849,8 @@ snapshots:
'@types/d3-time@3.0.0': {}
+ '@types/d3-voronoi@1.1.12': {}
+
'@types/debug@4.1.12':
dependencies:
'@types/ms': 0.7.34
@@ -17344,7 +17886,7 @@ snapshots:
'@types/graceful-fs@4.1.9':
dependencies:
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
'@types/gradient-parser@0.1.3': {}
@@ -17386,7 +17928,7 @@ snapshots:
'@types/jsdom@20.0.1':
dependencies:
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
'@types/tough-cookie': 4.0.5
parse5: 7.2.1
@@ -17454,7 +17996,7 @@ snapshots:
'@types/react-dom@18.3.1':
dependencies:
- '@types/react': 18.3.12
+ '@types/react': 18.3.13
'@types/react-redux@7.1.34':
dependencies:
@@ -17483,6 +18025,11 @@ snapshots:
'@types/prop-types': 15.7.13
csstype: 3.1.3
+ '@types/react@18.3.13':
+ dependencies:
+ '@types/prop-types': 15.7.13
+ csstype: 3.1.3
+
'@types/resolve@1.20.2': {}
'@types/resolve@1.20.6': {}
@@ -17664,9 +18211,22 @@ snapshots:
'@vercel/ncc@0.36.1': {}
+ '@visx/annotation@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@types/react': 18.3.13
+ '@visx/drag': 3.12.0(react@18.3.1)
+ '@visx/group': 3.12.0(react@18.3.1)
+ '@visx/text': 3.12.0(react@18.3.1)
+ classnames: 2.5.1
+ prop-types: 15.8.1
+ react: 18.3.1
+ react-use-measure: 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ transitivePeerDependencies:
+ - react-dom
+
'@visx/axis@3.12.0(react@18.3.1)':
dependencies:
- '@types/react': 18.3.12
+ '@types/react': 18.3.13
'@visx/group': 3.12.0(react@18.3.1)
'@visx/point': 3.12.0
'@visx/scale': 3.12.0
@@ -17676,20 +18236,83 @@ snapshots:
prop-types: 15.8.1
react: 18.3.1
+ '@visx/bounds@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@types/react': 18.3.13
+ '@types/react-dom': 18.3.1
+ prop-types: 15.8.1
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
'@visx/curve@3.12.0':
dependencies:
'@types/d3-shape': 1.3.12
d3-shape: 1.3.7
+ '@visx/drag@3.12.0(react@18.3.1)':
+ dependencies:
+ '@types/react': 18.3.13
+ '@visx/event': 3.12.0
+ '@visx/point': 3.12.0
+ prop-types: 15.8.1
+ react: 18.3.1
+
+ '@visx/event@3.12.0':
+ dependencies:
+ '@types/react': 18.3.13
+ '@visx/point': 3.12.0
+
+ '@visx/glyph@3.12.0(react@18.3.1)':
+ dependencies:
+ '@types/d3-shape': 1.3.12
+ '@types/react': 18.3.13
+ '@visx/group': 3.12.0(react@18.3.1)
+ classnames: 2.5.1
+ d3-shape: 1.3.7
+ prop-types: 15.8.1
+ react: 18.3.1
+
+ '@visx/grid@3.12.0(react@18.3.1)':
+ dependencies:
+ '@types/react': 18.3.13
+ '@visx/curve': 3.12.0
+ '@visx/group': 3.12.0(react@18.3.1)
+ '@visx/point': 3.12.0
+ '@visx/scale': 3.12.0
+ '@visx/shape': 3.12.0(react@18.3.1)
+ classnames: 2.5.1
+ prop-types: 15.8.1
+ react: 18.3.1
+
'@visx/group@3.12.0(react@18.3.1)':
dependencies:
- '@types/react': 18.3.12
+ '@types/react': 18.3.13
classnames: 2.5.1
prop-types: 15.8.1
react: 18.3.1
'@visx/point@3.12.0': {}
+ '@visx/react-spring@3.12.0(@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@types/react': 18.3.13
+ '@visx/axis': 3.12.0(react@18.3.1)
+ '@visx/grid': 3.12.0(react@18.3.1)
+ '@visx/scale': 3.12.0
+ '@visx/text': 3.12.0(react@18.3.1)
+ classnames: 2.5.1
+ prop-types: 15.8.1
+ react: 18.3.1
+
+ '@visx/responsive@3.12.0(react@18.3.1)':
+ dependencies:
+ '@types/lodash': 4.17.13
+ '@types/react': 18.3.13
+ lodash: 4.17.21
+ prop-types: 15.8.1
+ react: 18.3.1
+
'@visx/scale@3.12.0':
dependencies:
'@visx/vendor': 3.12.0
@@ -17699,7 +18322,7 @@ snapshots:
'@types/d3-path': 1.0.11
'@types/d3-shape': 1.3.12
'@types/lodash': 4.17.13
- '@types/react': 18.3.12
+ '@types/react': 18.3.13
'@visx/curve': 3.12.0
'@visx/group': 3.12.0(react@18.3.1)
'@visx/scale': 3.12.0
@@ -17713,13 +18336,23 @@ snapshots:
'@visx/text@3.12.0(react@18.3.1)':
dependencies:
'@types/lodash': 4.17.13
- '@types/react': 18.3.12
+ '@types/react': 18.3.13
classnames: 2.5.1
lodash: 4.17.21
prop-types: 15.8.1
react: 18.3.1
reduce-css-calc: 1.3.0
+ '@visx/tooltip@3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@types/react': 18.3.13
+ '@visx/bounds': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ classnames: 2.5.1
+ prop-types: 15.8.1
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ react-use-measure: 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+
'@visx/vendor@3.12.0':
dependencies:
'@types/d3-array': 3.0.3
@@ -17742,6 +18375,43 @@ snapshots:
d3-time-format: 4.1.0
internmap: 2.0.3
+ '@visx/voronoi@3.12.0(react@18.3.1)':
+ dependencies:
+ '@types/d3-voronoi': 1.1.12
+ '@types/react': 18.3.13
+ classnames: 2.5.1
+ d3-voronoi: 1.1.4
+ prop-types: 15.8.1
+ react: 18.3.1
+
+ '@visx/xychart@3.12.0(@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@types/lodash': 4.17.13
+ '@types/react': 18.3.13
+ '@visx/annotation': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@visx/axis': 3.12.0(react@18.3.1)
+ '@visx/event': 3.12.0
+ '@visx/glyph': 3.12.0(react@18.3.1)
+ '@visx/grid': 3.12.0(react@18.3.1)
+ '@visx/react-spring': 3.12.0(@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
+ '@visx/responsive': 3.12.0(react@18.3.1)
+ '@visx/scale': 3.12.0
+ '@visx/shape': 3.12.0(react@18.3.1)
+ '@visx/text': 3.12.0(react@18.3.1)
+ '@visx/tooltip': 3.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@visx/vendor': 3.12.0
+ '@visx/voronoi': 3.12.0(react@18.3.1)
+ classnames: 2.5.1
+ d3-interpolate-path: 2.2.1
+ d3-shape: 2.1.0
+ lodash: 4.17.21
+ mitt: 2.1.0
+ prop-types: 15.8.1
+ react: 18.3.1
+ transitivePeerDependencies:
+ - react-dom
+
'@webassemblyjs/ast@1.14.1':
dependencies:
'@webassemblyjs/helper-numbers': 1.13.2
@@ -19709,7 +20379,7 @@ snapshots:
agent-base@6.0.2:
dependencies:
- debug: 4.3.4
+ debug: 4.3.7
transitivePeerDependencies:
- supports-color
@@ -19806,7 +20476,7 @@ snapshots:
anymatch@3.1.3:
dependencies:
normalize-path: 3.0.0
- picomatch: 2.2.3
+ picomatch: 2.3.1
append-transform@2.0.0:
dependencies:
@@ -19913,7 +20583,7 @@ snapshots:
ast-types@0.16.1:
dependencies:
- tslib: 2.5.0
+ tslib: 2.8.1
async@3.2.6: {}
@@ -20027,7 +20697,7 @@ snapshots:
babel-plugin-jest-hoist@29.6.3:
dependencies:
'@babel/template': 7.25.9
- '@babel/types': 7.26.0
+ '@babel/types': 7.26.3
'@types/babel__core': 7.20.5
'@types/babel__traverse': 7.20.6
@@ -20191,8 +20861,8 @@ snapshots:
browserslist@4.24.2:
dependencies:
- caniuse-lite: 1.0.30001680
- electron-to-chromium: 1.5.55
+ caniuse-lite: 1.0.30001686
+ electron-to-chromium: 1.5.69
node-releases: 2.0.18
update-browserslist-db: 1.1.1(browserslist@4.24.2)
@@ -20267,6 +20937,8 @@ snapshots:
caniuse-lite@1.0.30001680: {}
+ caniuse-lite@1.0.30001686: {}
+
capital-case@1.0.4:
dependencies:
no-case: 3.0.4
@@ -20693,6 +21365,12 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
+ cross-spawn@7.0.6:
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+
crypto-js@4.2.0: {}
crypto-random-string@2.0.0: {}
@@ -20853,12 +21531,16 @@ snapshots:
dependencies:
d3-array: 3.2.1
+ d3-interpolate-path@2.2.1: {}
+
d3-interpolate@3.0.1:
dependencies:
d3-color: 3.1.0
d3-path@1.0.9: {}
+ d3-path@2.0.0: {}
+
d3-scale@4.0.2:
dependencies:
d3-array: 3.2.1
@@ -20871,6 +21553,10 @@ snapshots:
dependencies:
d3-path: 1.0.9
+ d3-shape@2.1.0:
+ dependencies:
+ d3-path: 2.0.0
+
d3-time-format@4.1.0:
dependencies:
d3-time: 3.1.0
@@ -20879,6 +21565,8 @@ snapshots:
dependencies:
d3-array: 3.2.1
+ d3-voronoi@1.1.4: {}
+
damerau-levenshtein@1.0.8: {}
data-uri-to-buffer@6.0.2: {}
@@ -20982,7 +21670,7 @@ snapshots:
dependencies:
es-define-property: 1.0.0
es-errors: 1.3.0
- gopd: 1.0.1
+ gopd: 1.2.0
define-lazy-prop@2.0.0: {}
@@ -21146,6 +21834,8 @@ snapshots:
electron-to-chromium@1.5.55: {}
+ electron-to-chromium@1.5.69: {}
+
elegant-spinner@1.0.1: {}
email-validator@2.0.4: {}
@@ -21334,6 +22024,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ esbuild-register@3.6.0(esbuild@0.24.0):
+ dependencies:
+ debug: 4.3.4
+ esbuild: 0.24.0
+ transitivePeerDependencies:
+ - supports-color
+
esbuild@0.17.19:
optionalDependencies:
'@esbuild/android-arm': 0.17.19
@@ -21386,6 +22083,33 @@ snapshots:
'@esbuild/win32-ia32': 0.23.1
'@esbuild/win32-x64': 0.23.1
+ esbuild@0.24.0:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.24.0
+ '@esbuild/android-arm': 0.24.0
+ '@esbuild/android-arm64': 0.24.0
+ '@esbuild/android-x64': 0.24.0
+ '@esbuild/darwin-arm64': 0.24.0
+ '@esbuild/darwin-x64': 0.24.0
+ '@esbuild/freebsd-arm64': 0.24.0
+ '@esbuild/freebsd-x64': 0.24.0
+ '@esbuild/linux-arm': 0.24.0
+ '@esbuild/linux-arm64': 0.24.0
+ '@esbuild/linux-ia32': 0.24.0
+ '@esbuild/linux-loong64': 0.24.0
+ '@esbuild/linux-mips64el': 0.24.0
+ '@esbuild/linux-ppc64': 0.24.0
+ '@esbuild/linux-riscv64': 0.24.0
+ '@esbuild/linux-s390x': 0.24.0
+ '@esbuild/linux-x64': 0.24.0
+ '@esbuild/netbsd-x64': 0.24.0
+ '@esbuild/openbsd-arm64': 0.24.0
+ '@esbuild/openbsd-x64': 0.24.0
+ '@esbuild/sunos-x64': 0.24.0
+ '@esbuild/win32-arm64': 0.24.0
+ '@esbuild/win32-ia32': 0.24.0
+ '@esbuild/win32-x64': 0.24.0
+
escalade@3.2.0: {}
escape-html@1.0.3: {}
@@ -21761,7 +22485,7 @@ snapshots:
execa@5.1.1:
dependencies:
- cross-spawn: 7.0.5
+ cross-spawn: 7.0.6
get-stream: 6.0.1
human-signals: 2.1.0
is-stream: 2.0.1
@@ -22132,8 +22856,8 @@ snapshots:
dependencies:
es-errors: 1.3.0
function-bind: 1.1.2
- has-proto: 1.0.3
- has-symbols: 1.0.3
+ has-proto: 1.1.0
+ has-symbols: 1.1.0
hasown: 2.0.2
get-nonce@1.0.1: {}
@@ -22266,6 +22990,8 @@ snapshots:
dependencies:
get-intrinsic: 1.2.4
+ gopd@1.2.0: {}
+
graceful-fs@4.2.11: {}
gradient-parser@0.1.5: {}
@@ -22295,11 +23021,17 @@ snapshots:
has-proto@1.0.3: {}
+ has-proto@1.1.0:
+ dependencies:
+ call-bind: 1.0.7
+
has-symbols@1.0.3: {}
+ has-symbols@1.1.0: {}
+
has-tostringtag@1.0.2:
dependencies:
- has-symbols: 1.0.3
+ has-symbols: 1.1.0
hasha@5.2.2:
dependencies:
@@ -22419,7 +23151,7 @@ snapshots:
dependencies:
'@tootallnate/once': 2.0.0
agent-base: 6.0.2
- debug: 4.3.4
+ debug: 4.3.7
transitivePeerDependencies:
- supports-color
@@ -22433,7 +23165,7 @@ snapshots:
https-proxy-agent@5.0.1:
dependencies:
agent-base: 6.0.2
- debug: 4.3.4
+ debug: 4.3.7
transitivePeerDependencies:
- supports-color
@@ -22684,7 +23416,7 @@ snapshots:
is-typed-array@1.1.13:
dependencies:
- which-typed-array: 1.1.15
+ which-typed-array: 1.1.16
is-typedarray@1.0.0: {}
@@ -22735,7 +23467,7 @@ snapshots:
istanbul-lib-instrument@5.2.1:
dependencies:
'@babel/core': 7.26.0
- '@babel/parser': 7.26.2
+ '@babel/parser': 7.26.3
'@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.2
semver: 6.3.1
@@ -22745,7 +23477,7 @@ snapshots:
istanbul-lib-instrument@6.0.3:
dependencies:
'@babel/core': 7.26.0
- '@babel/parser': 7.26.2
+ '@babel/parser': 7.26.3
'@istanbuljs/schema': 0.1.3
istanbul-lib-coverage: 3.2.2
semver: 7.6.3
@@ -22769,7 +23501,7 @@ snapshots:
istanbul-lib-source-maps@4.0.1:
dependencies:
- debug: 4.3.4
+ debug: 4.3.7
istanbul-lib-coverage: 3.2.2
source-map: 0.6.1
transitivePeerDependencies:
@@ -22826,7 +23558,7 @@ snapshots:
'@jest/expect': 29.7.0
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
co: 4.6.0
dedent: 1.5.3
@@ -22858,7 +23590,7 @@ snapshots:
jest-config: 29.7.0
jest-util: 29.7.0
jest-validate: 29.7.0
- yargs: 17.6.2
+ yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -22877,7 +23609,7 @@ snapshots:
jest-config: 29.7.0(@types/node@20.17.9)
jest-util: 29.7.0
jest-validate: 29.7.0
- yargs: 17.6.2
+ yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
@@ -22942,6 +23674,36 @@ snapshots:
- babel-plugin-macros
- supports-color
+ jest-config@29.7.0(@types/node@22.10.1):
+ dependencies:
+ '@babel/core': 7.26.0
+ '@jest/test-sequencer': 29.7.0
+ '@jest/types': 29.6.3
+ babel-jest: 29.7.0(@babel/core@7.26.0)
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ deepmerge: 4.3.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ jest-circus: 29.7.0
+ jest-environment-node: 29.7.0
+ jest-get-type: 29.6.3
+ jest-regex-util: 29.6.3
+ jest-resolve: 29.7.0
+ jest-runner: 29.7.0
+ jest-util: 29.7.0
+ jest-validate: 29.7.0
+ micromatch: 4.0.8
+ parse-json: 5.2.0
+ pretty-format: 29.7.0
+ slash: 3.0.0
+ strip-json-comments: 3.1.1
+ optionalDependencies:
+ '@types/node': 22.10.1
+ transitivePeerDependencies:
+ - babel-plugin-macros
+ - supports-color
+
jest-diff@29.7.0:
dependencies:
chalk: 4.1.2
@@ -22967,7 +23729,7 @@ snapshots:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/jsdom': 20.0.1
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-mock: 29.7.0
jest-util: 29.7.0
jsdom: 20.0.3
@@ -22981,7 +23743,7 @@ snapshots:
'@jest/environment': 29.7.0
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -22998,7 +23760,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@types/graceful-fs': 4.1.9
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -23044,7 +23806,7 @@ snapshots:
jest-mock@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-util: 29.7.0
jest-playwright-preset@4.0.0(jest-circus@29.7.0)(jest-environment-node@29.7.0)(jest-runner@29.7.0)(jest@29.7.0):
@@ -23101,7 +23863,7 @@ snapshots:
jest-util: 29.7.0
jest-validate: 29.7.0
resolve: 1.22.8
- resolve.exports: 2.0.2
+ resolve.exports: 2.0.3
slash: 3.0.0
jest-runner@29.7.0:
@@ -23111,7 +23873,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
emittery: 0.13.1
graceful-fs: 4.2.11
@@ -23139,7 +23901,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
cjs-module-lexer: 1.4.1
collect-v8-coverage: 1.0.2
@@ -23164,10 +23926,10 @@ snapshots:
jest-snapshot@29.7.0:
dependencies:
'@babel/core': 7.26.0
- '@babel/generator': 7.26.2
+ '@babel/generator': 7.26.3
'@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0)
'@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0)
- '@babel/types': 7.26.0
+ '@babel/types': 7.26.3
'@jest/expect-utils': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
@@ -23189,11 +23951,11 @@ snapshots:
jest-util@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
chalk: 4.1.2
ci-info: 3.9.0
graceful-fs: 4.2.11
- picomatch: 2.2.3
+ picomatch: 2.3.1
jest-validate@29.7.0:
dependencies:
@@ -23219,7 +23981,7 @@ snapshots:
dependencies:
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
@@ -23234,7 +23996,7 @@ snapshots:
jest-worker@29.7.0:
dependencies:
- '@types/node': 20.17.9
+ '@types/node': 22.10.1
jest-util: 29.7.0
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -23310,7 +24072,7 @@ snapshots:
http-proxy-agent: 5.0.0
https-proxy-agent: 5.0.1
is-potential-custom-element-name: 1.0.1
- nwsapi: 2.2.13
+ nwsapi: 2.2.16
parse5: 7.2.1
saxes: 6.0.0
symbol-tree: 3.2.4
@@ -24040,6 +24802,8 @@ snapshots:
minipass@7.1.2: {}
+ mitt@2.1.0: {}
+
mitt@3.0.1: {}
mkdirp@0.5.6:
@@ -24127,7 +24891,7 @@ snapshots:
number-is-nan@1.0.1: {}
- nwsapi@2.2.13: {}
+ nwsapi@2.2.16: {}
nyc@15.1.0:
dependencies:
@@ -24863,7 +25627,7 @@ snapshots:
proxy-from-env@1.1.0: {}
- psl@1.10.0:
+ psl@1.15.0:
dependencies:
punycode: 2.3.1
@@ -25209,7 +25973,7 @@ snapshots:
esprima: 4.0.1
source-map: 0.6.1
tiny-invariant: 1.3.3
- tslib: 2.5.0
+ tslib: 2.8.1
rechoir@0.7.1:
dependencies:
@@ -25403,6 +26167,8 @@ snapshots:
resolve.exports@2.0.2: {}
+ resolve.exports@2.0.3: {}
+
resolve@1.22.8:
dependencies:
is-core-module: 2.15.1
@@ -25623,7 +26389,7 @@ snapshots:
es-errors: 1.3.0
function-bind: 1.1.2
get-intrinsic: 1.2.4
- gopd: 1.0.1
+ gopd: 1.2.0
has-property-descriptors: 1.0.2
set-function-name@2.0.2:
@@ -25845,6 +26611,14 @@ snapshots:
- supports-color
- utf-8-validate
+ storybook@8.4.6:
+ dependencies:
+ '@storybook/core': 8.4.6
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
streamx@2.20.1:
dependencies:
fast-fifo: 1.3.2
@@ -26244,7 +27018,7 @@ snapshots:
tough-cookie@4.1.4:
dependencies:
- psl: 1.10.0
+ psl: 1.15.0
punycode: 2.3.1
universalify: 0.2.0
url-parse: 1.5.10
@@ -26399,6 +27173,8 @@ snapshots:
typescript@5.0.4: {}
+ typescript@5.7.2: {}
+
uc.micro@2.1.0: {}
unbox-primitive@1.0.2:
@@ -26577,7 +27353,7 @@ snapshots:
is-arguments: 1.1.1
is-generator-function: 1.0.10
is-typed-array: 1.1.13
- which-typed-array: 1.1.15
+ which-typed-array: 1.1.16
utila@0.4.0: {}
@@ -26804,6 +27580,14 @@ snapshots:
gopd: 1.0.1
has-tostringtag: 1.0.2
+ which-typed-array@1.1.16:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.7
+ for-each: 0.3.3
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+
which@1.3.1:
dependencies:
isexe: 2.0.0
diff --git a/projects/js-packages/charts/README.md b/projects/js-packages/charts/README.md
index 91add458062f6..9657bc3631c67 100644
--- a/projects/js-packages/charts/README.md
+++ b/projects/js-packages/charts/README.md
@@ -1,7 +1,15 @@
-# charts
+# Automattic Charts
Display charts within Automattic products.
+## Storybook
+
+To see available charts, from the root of the monorepo follow these steps:
+
+1. Run `pnpm install` to install the dependencies.
+2. Run `cd projects/js-packages/charts` to navigate to the charts package.
+3. Run `pnpm run storybook` to start the storybook server.
+
## How to install charts
### Installation From Git Repo
diff --git a/projects/js-packages/charts/changelog/add-charts-basic-line b/projects/js-packages/charts/changelog/add-charts-basic-line
new file mode 100644
index 0000000000000..d9ac6c96a0e66
--- /dev/null
+++ b/projects/js-packages/charts/changelog/add-charts-basic-line
@@ -0,0 +1,4 @@
+Significance: patch
+Type: added
+
+Adding new chart type.
diff --git a/projects/js-packages/charts/package.json b/projects/js-packages/charts/package.json
index 547dcc0f2c995..ed17c4777f8ba 100644
--- a/projects/js-packages/charts/package.json
+++ b/projects/js-packages/charts/package.json
@@ -16,26 +16,31 @@
"scripts": {
"clean": "rm -rf node_modules",
"test": "jest --config=tests/jest.config.cjs",
- "test-coverage": "pnpm run test --coverage"
+ "test-coverage": "pnpm run test --coverage",
+ "storybook": "cd ../storybook && pnpm run storybook:dev"
},
"dependencies": {
- "@visx/axis": "^3.8.0",
- "@visx/group": "^3.8.0",
- "@visx/scale": "^3.8.0",
- "@visx/shape": "^3.8.0"
+ "@react-spring/web": "9.7.3",
+ "@visx/axis": "^3.12.0",
+ "@visx/group": "^3.12.0",
+ "@visx/scale": "^3.12.0",
+ "@visx/shape": "^3.12.0",
+ "@visx/text": "3.12.0",
+ "@visx/xychart": "3.12.0",
+ "clsx": "2.1.1"
},
"devDependencies": {
+ "@storybook/blocks": "8.4.6",
+ "@storybook/react": "8.4.6",
+ "@types/react": "18.3.13",
+ "@types/react-dom": "18.3.1",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-extended": "4.0.2",
- "typescript": "5.0.4",
- "@types/react": "18.3.12",
- "@types/react-dom": "18.3.1",
- "@storybook/react": "8.3.5",
- "@storybook/blocks": "8.3.5",
- "storybook": "8.3.5",
"react": "18.3.1",
- "react-dom": "18.3.1"
+ "react-dom": "18.3.1",
+ "storybook": "8.4.6",
+ "typescript": "5.7.2"
},
"peerDependencies": {
"react": "^17.0.0 || ^18.0.0",
diff --git a/projects/js-packages/charts/src/components/bar-chart/index.tsx b/projects/js-packages/charts/src/components/bar-chart/index.tsx
index 02288b8e1145e..4a855644c4396 100644
--- a/projects/js-packages/charts/src/components/bar-chart/index.tsx
+++ b/projects/js-packages/charts/src/components/bar-chart/index.tsx
@@ -2,11 +2,7 @@ import { AxisLeft, AxisBottom } from '@visx/axis';
import { Group } from '@visx/group';
import { scaleBand, scaleLinear } from '@visx/scale';
import { Bar } from '@visx/shape';
-
-export interface DataPoint {
- label: string;
- value: number;
-}
+import type { DataPoint } from '../shared/types';
type BarChartProps = {
data: DataPoint[];
diff --git a/projects/js-packages/charts/src/components/line-chart/index.tsx b/projects/js-packages/charts/src/components/line-chart/index.tsx
new file mode 100644
index 0000000000000..c1060d71648fd
--- /dev/null
+++ b/projects/js-packages/charts/src/components/line-chart/index.tsx
@@ -0,0 +1 @@
+export { default as LineChart } from './line-chart';
diff --git a/projects/js-packages/charts/src/components/line-chart/line-chart.module.scss b/projects/js-packages/charts/src/components/line-chart/line-chart.module.scss
new file mode 100644
index 0000000000000..2cc6da1a812ee
--- /dev/null
+++ b/projects/js-packages/charts/src/components/line-chart/line-chart.module.scss
@@ -0,0 +1,15 @@
+.line-chart {
+ position: relative;
+
+ &__tooltip {
+ padding: 0.5rem;
+
+ &-row {
+ margin-bottom: 0.25rem;
+
+ &:last-child {
+ margin-bottom: 0;
+ }
+ }
+ }
+}
diff --git a/projects/js-packages/charts/src/components/line-chart/line-chart.tsx b/projects/js-packages/charts/src/components/line-chart/line-chart.tsx
new file mode 100644
index 0000000000000..c6a87bdaa6b12
--- /dev/null
+++ b/projects/js-packages/charts/src/components/line-chart/line-chart.tsx
@@ -0,0 +1,162 @@
+import {
+ XYChart,
+ AnimatedLineSeries,
+ AnimatedAxis,
+ AnimatedGrid,
+ Tooltip,
+ buildChartTheme,
+} from '@visx/xychart';
+import clsx from 'clsx';
+import { FC } from 'react';
+import styles from './line-chart.module.scss';
+import type { DataPointDate } from '../shared/types';
+
+// TODO: revisit grid and axis options - accept as props for frid lines, axis, values: x, y, all, none
+
+type LineChartProps = {
+ /**
+ * Array of data points to display in the chart
+ */
+ data: DataPointDate[];
+ /**
+ * Width of the chart in pixels
+ */
+ width: number;
+ /**
+ * Height of the chart in pixels
+ */
+ height: number;
+ /**
+ * Chart margins
+ */
+ margin?: { top: number; right: number; bottom: number; left: number };
+ /**
+ * Color of the line
+ */
+ lineColor?: string;
+};
+
+// TODO: move to a provider
+// const customTheme = buildChartTheme( {
+// // Customize colors
+// colors: [ '#3182ce' ],
+// // Customize typography
+// // labelStyles: {
+// // fill: '#666',
+// // fontSize: 12,
+// // },
+// // Customize grid styles
+// gridStyles: {
+// stroke: '#e2e8f0',
+// strokeWidth: 1,
+// },
+// } );
+
+const customTheme = buildChartTheme( {
+ // colors
+ backgroundColor: 'lightblue', // used by Tooltip, Annotation
+ colors: [ '#3182ce' ], // categorical colors, mapped to series via `dataKey`s
+
+ // labels
+ // svgLabelBig?: SVGTextProps,
+ // svgLabelSmall?: SVGTextProps,
+ // htmlLabel?: HTMLTextStyles,
+
+ // lines
+ // xAxisLineStyles?: LineStyles,
+ // yAxisLineStyles?: LineStyles,
+ // xTickLineStyles?: LineStyles,
+ // yTickLineStyles?: LineStyles,
+ // tickLength: number,
+
+ // grid
+ // gridColor: string,
+ // gridColorDark: string, // used for axis baseline if x/yxAxisLineStyles not set
+ // gridStyles?: CSSProperties,
+ gridStyles: {
+ stroke: '#e2e8f0',
+ strokeWidth: 1,
+ },
+ tickLength: 0,
+ gridColor: '',
+ gridColorDark: '',
+} );
+
+// eslint-disable-next-line @typescript-eslint/no-explicit-any
+const renderTooltip: any = ( { tooltipData } ) => {
+ // TODO: fix any
+ const datum = tooltipData?.nearestDatum?.datum;
+ if ( ! datum ) {
+ return null;
+ }
+
+ return (
+
+
+ Date: { datum.date.toLocaleDateString() }
+
+
+ Value: { datum.value }
+
+
+ );
+};
+
+const formatDateTick = ( value: number ) => {
+ const date = new Date( value );
+ return date.toLocaleDateString( undefined, {
+ month: 'short',
+ day: 'numeric',
+ } );
+};
+
+// TODO: add support for multiple data sets
+
+const LineChart: FC< LineChartProps > = ( {
+ data,
+ width,
+ height,
+ margin = { top: 20, right: 20, bottom: 40, left: 40 },
+ lineColor = '#3182ce',
+} ) => {
+ const accessors = {
+ xAccessor: ( d: DataPointDate ) => d.date,
+ yAccessor: ( d: DataPointDate ) => d.value,
+ };
+
+ //
+ return (
+
+ );
+};
+
+export default LineChart;
diff --git a/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx
new file mode 100644
index 0000000000000..1ce2430c18365
--- /dev/null
+++ b/projects/js-packages/charts/src/components/line-chart/stories/index.stories.tsx
@@ -0,0 +1,34 @@
+import { LineChart } from '../index';
+import type { Meta } from '@storybook/react';
+
+const data = [
+ { date: new Date( '2023-01-01' ), value: 10 },
+ { date: new Date( '2023-02-01' ), value: 20 },
+ { date: new Date( '2023-03-01' ), value: 15 },
+ { date: new Date( '2023-04-01' ), value: 25 },
+];
+
+export default {
+ title: 'JS Packages/Charts/Line Chart',
+ component: LineChart,
+ parameters: {
+ layout: 'centered',
+ },
+ decorators: [
+ Story => (
+
+
+
+ ),
+ ],
+} satisfies Meta< typeof LineChart >;
+
+const Template = args => ;
+
+export const Default = Template.bind( {} );
+Default.args = {
+ width: 500,
+ height: 300,
+ margin: { top: 20, right: 20, bottom: 30, left: 40 },
+ data,
+};
diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/index.tsx b/projects/js-packages/charts/src/components/pie-semi-circle-chart/index.tsx
new file mode 100644
index 0000000000000..908977c7124ff
--- /dev/null
+++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/index.tsx
@@ -0,0 +1 @@
+export { default as PieSemiCircleChart } from './pie-semi-circle-chart';
diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.module.scss b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.module.scss
new file mode 100644
index 0000000000000..6ff61d27acf34
--- /dev/null
+++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.module.scss
@@ -0,0 +1,3 @@
+.pie-semi-circle-chart {
+ position: relative;
+}
diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx
new file mode 100644
index 0000000000000..86340e54eea84
--- /dev/null
+++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/pie-semi-circle-chart.tsx
@@ -0,0 +1,93 @@
+import { Group } from '@visx/group';
+import { Pie } from '@visx/shape';
+import { Text } from '@visx/text';
+import clsx from 'clsx';
+import { FC } from 'react';
+import styles from './pie-semi-circle-chart.module.scss';
+import type { DataPointPercentage } from '../shared/types';
+
+// TODO: convert hard-coded values to props
+
+interface PieSemiCircleChartProps {
+ /**
+ * Array of data points to display in the chart
+ */
+ data: DataPointPercentage[];
+ /**
+ * Width of the chart in pixels
+ */
+ width: number;
+ /**
+ * Height of the chart in pixels
+ */
+ height: number;
+ /**
+ * Label text to display above the chart
+ */
+ label: string;
+ /**
+ * Note text to display below the label
+ */
+ note: string;
+}
+
+const PieSemiCircleChart: FC< PieSemiCircleChartProps > = ( {
+ data,
+ width,
+ height,
+ label,
+ note,
+} ) => {
+ const centerX = width / 2;
+ const centerY = height;
+
+ const accessors = {
+ value: d => d.value,
+ sort: ( a, b ) => a.value - b.value,
+ fill: d => d.data.color,
+ };
+
+ return (
+
+
+
+ );
+};
+
+export default PieSemiCircleChart;
diff --git a/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx b/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx
new file mode 100644
index 0000000000000..5ebd227447aef
--- /dev/null
+++ b/projects/js-packages/charts/src/components/pie-semi-circle-chart/stories/index.stories.tsx
@@ -0,0 +1,52 @@
+import { PieSemiCircleChart } from '../index';
+import type { Meta } from '@storybook/react';
+
+const data = [
+ {
+ label: 'Windows',
+ value: 80000,
+ valueDisplay: '$80K',
+ percentage: 2,
+ color: '#3858E9',
+ },
+ {
+ label: 'MacOS',
+ value: 30000,
+ valueDisplay: '$30K',
+ percentage: 5,
+ color: '#80C8FF',
+ },
+ {
+ label: 'Linux',
+ value: 22000,
+ valueDisplay: '$22K',
+ percentage: 1,
+ color: '#B999FF',
+ },
+];
+
+export default {
+ title: 'JS Packages/Charts/Pie Semi Circle Chart',
+ component: PieSemiCircleChart,
+ parameters: {
+ layout: 'centered',
+ },
+ decorators: [
+ Story => (
+
+
+
+ ),
+ ],
+} satisfies Meta< typeof PieSemiCircleChart >;
+
+const Template = args => ;
+
+export const Default = Template.bind( {} );
+Default.args = {
+ width: 500,
+ height: 300,
+ data,
+ label: 'OS',
+ note: 'Windows +10%',
+};
diff --git a/projects/js-packages/charts/src/components/shared/types.d.ts b/projects/js-packages/charts/src/components/shared/types.d.ts
new file mode 100644
index 0000000000000..c4ced7b65e00c
--- /dev/null
+++ b/projects/js-packages/charts/src/components/shared/types.d.ts
@@ -0,0 +1,32 @@
+export type DataPoint = {
+ label: string;
+ value: number;
+};
+
+export type DataPointDate = {
+ date: Date;
+ value: number;
+};
+
+export type DataPointPercentage = {
+ /**
+ * Label for the data point
+ */
+ label: string;
+ /**
+ * Numerical value
+ */
+ value: number;
+ /**
+ * Formatted value for display
+ */
+ valueDisplay?: string;
+ /**
+ * Percentage value
+ */
+ percentage: number;
+ /**
+ * Color code for the segment
+ */
+ color?: string;
+};
diff --git a/projects/js-packages/charts/src/index.ts b/projects/js-packages/charts/src/index.ts
index 434514af8c761..c350cb2fc11b1 100644
--- a/projects/js-packages/charts/src/index.ts
+++ b/projects/js-packages/charts/src/index.ts
@@ -1,2 +1,4 @@
export { BarChart } from './components/bar-chart';
-export type { DataPoint } from './components/bar-chart';
+export { LineChart } from './components/line-chart';
+export { PieSemiCircleChart } from './components/pie-semi-circle-chart';
+export type * from './components/shared/types';
From df187120971e7e57337ba07adbb566f885316e4e Mon Sep 17 00:00:00 2001
From: Chris Jean
Date: Mon, 9 Dec 2024 09:55:14 -0600
Subject: [PATCH 02/87] Forms Block: Fix Broken URL Input Validation (#40490)
* Fix: Form Block URL Input Bad Validation
The `pattern` attribute for URL input validation does not match the PHP
regex used for validating input. This aligns the two types of validation
so that they validate or invalidate inputs in the same way.
* changelog
* Added Jetpack changelog.
* Added comments that the two URL validation regex's should be kept in sync.
---
.../changelog/fix-form-block-broken-url-input-validation | 4 ++++
.../forms/src/contact-form/class-contact-form-field.php | 4 +++-
.../changelog/fix-form-block-broken-url-input-validation | 4 ++++
3 files changed, 11 insertions(+), 1 deletion(-)
create mode 100644 projects/packages/forms/changelog/fix-form-block-broken-url-input-validation
create mode 100644 projects/plugins/jetpack/changelog/fix-form-block-broken-url-input-validation
diff --git a/projects/packages/forms/changelog/fix-form-block-broken-url-input-validation b/projects/packages/forms/changelog/fix-form-block-broken-url-input-validation
new file mode 100644
index 0000000000000..0e77ccb963690
--- /dev/null
+++ b/projects/packages/forms/changelog/fix-form-block-broken-url-input-validation
@@ -0,0 +1,4 @@
+Significance: patch
+Type: fixed
+
+Form Block: fixed validation of URL input types to allow query strings.
diff --git a/projects/packages/forms/src/contact-form/class-contact-form-field.php b/projects/packages/forms/src/contact-form/class-contact-form-field.php
index 7182e2550adaf..332bcc035a885 100644
--- a/projects/packages/forms/src/contact-form/class-contact-form-field.php
+++ b/projects/packages/forms/src/contact-form/class-contact-form-field.php
@@ -227,6 +227,7 @@ public function validate() {
switch ( $field_type ) {
case 'url':
if ( ! is_string( $field_value ) || empty( $field_value ) || ! preg_match(
+ // Changes to this regex should be synced with the regex in the render_url_field method of this class as both validate the same input. Note that this regex is in PCRE format.
'%^(?:(?:https?|ftp)://)?(?:\S+(?::\S*)?@|\d{1,3}(?:\.\d{1,3}){3}|(?:(?:[a-z\d\x{00a1}-\x{ffff}]+-?)*[a-z\d\x{00a1}-\x{ffff}]+)(?:\.(?:[a-z\d\x{00a1}-\x{ffff}]+-?)*[a-z\d\x{00a1}-\x{ffff}]+)*(?:\.[a-z\x{00a1}-\x{ffff}]{2,6}))(?::\d+)?(?:[^\s]*)?$%iu',
$field_value
) ) {
@@ -590,7 +591,8 @@ public function render_url_field( $id, $label, $value, $class, $required, $requi
'title' => $custom_validation_message,
'oninvalid' => 'setCustomValidity("' . $custom_validation_message . '")',
'oninput' => 'setCustomValidity("")',
- 'pattern' => '(([:\/a-zA-Z0-9_\-]+)?(\.[a-zA-Z0-9_\-\/]+)+)',
+ // Changes to this regex should be synced with the regex in the URL validation of the validate method of this class as both validate the same input. Note that this regex is in ECMAScript (JS) format.
+ 'pattern' => '(?:(?:[Hh][Tt][Tt][Pp][Ss]?|[Ff][Tt][Pp]):\/\/)?(?:\S+(?::\S*)?@|\d{1,3}(?:\.\d{1,3}){3}|(?:(?:[a-zA-Z\d\u00a1-\uffff]+-?)*[a-zA-Z\d\u00a1-\uffff]+)(?:\.(?:[a-zA-Z\d\u00a1-\uffff]+-?)*[a-zA-Z\d\u00a1-\uffff]+)*(?:\.[a-zA-Z\u00a1-\uffff]{2,6}))(?::\d+)?(?:[^\s]*)?',
'data-type-override' => 'url',
);
diff --git a/projects/plugins/jetpack/changelog/fix-form-block-broken-url-input-validation b/projects/plugins/jetpack/changelog/fix-form-block-broken-url-input-validation
new file mode 100644
index 0000000000000..18148f5e92c1e
--- /dev/null
+++ b/projects/plugins/jetpack/changelog/fix-form-block-broken-url-input-validation
@@ -0,0 +1,4 @@
+Significance: patch
+Type: bugfix
+
+Form Block: fixed validation of URL input types to allow query strings.
From 48167f7918197ccd9c92a2898c52df75cf4aa42c Mon Sep 17 00:00:00 2001
From: Brad Jorsch
Date: Mon, 9 Dec 2024 11:03:48 -0500
Subject: [PATCH 03/87] packages: Fix some JS lints ahead of the eslint 9
upgrade (#40497)
To make the eslint 9 upgrade PR smaller, let's fix some of the lints
that it'll complain about ahead of time.
---
.../update-packages-fix-eslint-9-lints | 5 ++
.../backup/src/js/components/Admin/index.js | 2 -
.../Admin/no-backup-capabilities.js | 1 -
.../components/backup-video-section/index.jsx | 1 -
.../js/components/review-request/index.tsx | 1 -
.../update-packages-fix-eslint-9-lints | 5 ++
.../util/register-jetpack-block.js | 1 +
.../src/contact-form/js/accessible-form.js | 74 +++++++++----------
.../src/contact-form/js/grunion-admin.js | 24 +++---
.../forms/src/contact-form/js/grunion.js | 6 +-
.../src/dashboard/inbox/bulk-actions-menu.js | 2 +-
.../inbox/export-modal/google-drive.js | 2 +-
.../dashboard/inbox/single-actions-menu.js | 2 +-
.../forms/src/dashboard/inbox/util.js | 2 +-
.../js/contact-form/contact-form.test.js | 1 +
.../update-packages-fix-eslint-9-lints | 5 ++
...-seen-seller-celebration-modal-context.tsx | 1 -
...s-seen-video-celebration-modal-context.tsx | 1 -
.../block-inserter-modifications/src/utils.js | 2 +-
.../features/block-theme-previews/modal.jsx | 1 -
.../jetpack-global-styles/src/store.js | 2 +-
.../wpcom-block-description-links/index.tsx | 3 +-
.../src/inline-support-link.tsx | 3 +-
.../wpcom-sidebar-notice.js | 2 +-
.../jetpack-mu-wpcom/verbum.webpack.config.js | 2 -
.../jetpack-mu-wpcom/webpack.config.js | 1 -
.../update-packages-fix-eslint-9-lints | 5 ++
.../masterbar/src/admin-menu/admin-menu.js | 2 +-
.../connected-product-card/index.tsx | 3 +-
.../stories/broken/index.stories.jsx | 2 -
.../evaluation-recommendations/index.tsx | 3 +-
.../stories/broken/index.stories.jsx | 1 -
.../stories/broken/index.stories.jsx | 1 -
.../backup-card/index.jsx | 1 -
.../stories/broken/index.stories.jsx | 1 -
.../stories/broken/index.stories.jsx | 1 -
.../stories/broken/index.stories.jsx | 1 -
.../_inc/data/products/use-activate.ts | 3 +-
.../products/use-install-standalone-plugin.ts | 3 +-
.../_inc/data/products/use-product.ts | 3 +-
.../products/use-products-by-ownership.ts | 6 +-
.../update-packages-fix-eslint-9-lints | 5 ++
.../update-packages-fix-eslint-9-lints | 5 ++
.../src/assets/js/deactivation.ts | 1 -
.../update-packages-fix-eslint-9-lints | 5 ++
.../components/sidebar/color-control.jsx | 2 -
.../sidebar/excluded-post-types-control.jsx | 4 +-
.../components/sidebar/sidebar-options.jsx | 2 -
.../customberg/components/sidebar/tabs.jsx | 1 -
.../components/sidebar/theme-control.jsx | 2 -
.../customberg/hooks/use-search-options.js | 3 +-
.../packages/search/src/customberg/index.jsx | 2 +-
.../src/dashboard/components/card/index.jsx | 1 -
.../components/pages/upsell-page/index.jsx | 1 -
.../components/record-meter/notice-box.jsx | 1 -
.../store/actions/jetpack-settings.js | 2 +-
.../search/src/dashboard/store/resolvers.js | 8 +-
.../update-packages-fix-eslint-9-lints | 5 ++
.../components/edit-video-details/index.tsx | 3 +-
.../edit-video-details/use-edit-details.ts | 3 +-
.../video-thumbnail-selector-modal/index.tsx | 3 +-
.../client/block-editor/blocks/video/edit.tsx | 4 +-
.../hooks/use-sync-media/index.ts | 3 +-
.../hooks/use-resumable-uploader/index.ts | 1 -
.../lib/resumable-file-uploader/index.ts | 1 -
.../src/client/lib/video-tracks/index.ts | 1 -
.../update-packages-fix-eslint-9-lints | 5 ++
.../src/dashboard/components/card/index.jsx | 1 -
.../store/actions/jetpack-settings.js | 2 +-
.../wordads/src/dashboard/store/resolvers.js | 2 +-
70 files changed, 133 insertions(+), 134 deletions(-)
create mode 100644 projects/packages/backup/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/forms/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/jetpack-mu-wpcom/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/masterbar/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/my-jetpack/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/plugin-deactivation/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/search/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/videopress/changelog/update-packages-fix-eslint-9-lints
create mode 100644 projects/packages/wordads/changelog/update-packages-fix-eslint-9-lints
diff --git a/projects/packages/backup/changelog/update-packages-fix-eslint-9-lints b/projects/packages/backup/changelog/update-packages-fix-eslint-9-lints
new file mode 100644
index 0000000000000..b3176fbef2f88
--- /dev/null
+++ b/projects/packages/backup/changelog/update-packages-fix-eslint-9-lints
@@ -0,0 +1,5 @@
+Significance: patch
+Type: fixed
+Comment: Fix some JS lints ahead of eslint 9 upgrade.
+
+
diff --git a/projects/packages/backup/src/js/components/Admin/index.js b/projects/packages/backup/src/js/components/Admin/index.js
index c05e00ab609f6..c10aac61a2df4 100644
--- a/projects/packages/backup/src/js/components/Admin/index.js
+++ b/projects/packages/backup/src/js/components/Admin/index.js
@@ -259,13 +259,11 @@ const ReviewMessage = connectionLoaded => {
strong: ,
}
) }
- // eslint-disable-next-line react/jsx-no-bind
href={ getRedirectUrl( 'jetpack-backup-new-review' ) }
onClick={ trackSendToReview }
requestReason={ requestReason }
reviewText={ reviewText }
dismissedReview={ dismissedReview }
- // eslint-disable-next-line react/jsx-no-bind
dismissMessage={ dismissMessage }
/>
diff --git a/projects/packages/backup/src/js/components/Admin/no-backup-capabilities.js b/projects/packages/backup/src/js/components/Admin/no-backup-capabilities.js
index ad02966d611ee..4533fd204dbe3 100644
--- a/projects/packages/backup/src/js/components/Admin/no-backup-capabilities.js
+++ b/projects/packages/backup/src/js/components/Admin/no-backup-capabilities.js
@@ -79,7 +79,6 @@ const NoBackupCapabilities = () => {
ctaText={ __( 'Get VaultPress Backup', 'jetpack-backup-pkg' ) }
icon="data:image/svg+xml,%3Csvg width='32' height='32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='m21.092 15.164.019-1.703v-.039c0-1.975-1.803-3.866-4.4-3.866-2.17 0-3.828 1.351-4.274 2.943l-.426 1.524-1.581-.065a2.92 2.92 0 0 0-.12-.002c-1.586 0-2.977 1.344-2.977 3.133 0 1.787 1.388 3.13 2.973 3.133H22.399c1.194 0 2.267-1.016 2.267-2.4 0-1.235-.865-2.19-1.897-2.368l-1.677-.29Zm-10.58-3.204a4.944 4.944 0 0 0-.201-.004c-2.75 0-4.978 2.298-4.978 5.133s2.229 5.133 4.978 5.133h12.088c2.357 0 4.267-1.97 4.267-4.4 0-2.18-1.538-3.99-3.556-4.339v-.06c0-3.24-2.865-5.867-6.4-5.867-2.983 0-5.49 1.871-6.199 4.404Z' fill='%23000'/%3E%3C/svg%3E"
infoText={ priceAfter === price ? basicInfoText : introductoryInfoText }
- // eslint-disable-next-line react/jsx-no-bind
onCtaClick={ sendToCart }
priceAfter={ priceAfter }
priceBefore={ price }
diff --git a/projects/packages/backup/src/js/components/backup-video-section/index.jsx b/projects/packages/backup/src/js/components/backup-video-section/index.jsx
index 8ddd40d73f2e0..94b6c5af762e1 100644
--- a/projects/packages/backup/src/js/components/backup-video-section/index.jsx
+++ b/projects/packages/backup/src/js/components/backup-video-section/index.jsx
@@ -66,7 +66,6 @@ const BackupVideoSection = ( {
/>
- { /* eslint-disable-next-line jsx-a11y/media-has-caption */ }