nanoplot 0.0.24 → 0.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bun.lockb +0 -0
- package/dist/index.css +1 -1
- package/dist/src/components/Bars/Bars.d.ts +5 -1
- package/dist/src/components/Bars/Bars.js +4 -0
- package/dist/src/components/Bars/components/HorizontalBars.js +33 -32
- package/dist/src/components/Bars/components/Rect.d.ts +2 -1
- package/dist/src/components/Bars/components/Rect.js +4 -4
- package/dist/src/components/Graph/Graph.js +27 -17
- package/dist/src/components/Legend/Legend.d.ts +1 -0
- package/dist/src/components/Pie/Pie.js +3 -7
- package/dist/src/components/Worldmap/Worldmap.d.ts +1 -0
- package/dist/src/components/XAxis/XAxis.d.ts +1 -0
- package/dist/src/components/YAxis/YAxis.d.ts +1 -0
- package/dist/src/hooks/use-graph/use-graph.d.ts +1 -0
- package/dist/src/utils/color/color.d.ts +5 -0
- package/dist/src/utils/color/color.js +7 -0
- package/dist/src/utils/domain/domain.js +23 -13
- package/dist/src/utils/path/path.js +3 -0
- package/dist/tsconfig.typings.tsbuildinfo +1 -1
- package/package.json +4 -3
package/bun.lockb
CHANGED
|
Binary file
|
package/dist/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-0{left:0}.left-\[50\%\]{left:50%}.right-2{right:.5rem}.top-16{top:4rem}.top-\[50\%\]{top:50%}.isolate{isolation:isolate}.z-10{z-index:10}.col-span-full{grid-column:1 / -1}.row-span-2{grid-row:span 2 / span 2}.row-start-1{grid-row-start:1}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.\!mt-0{margin-top:0!important}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[10px\]{margin-left:10px}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-\[10px\]{margin-top:10px}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[1090\/539\]{aspect-ratio:1090/539}.size-4{width:1rem;height:1rem}.h-0{height:0px}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[14px\]{height:14px}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-screen{max-height:100vh}.min-h-\[400px\]{min-height:400px}.min-h-\[600px\]{min-height:600px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-20{width:5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[14px\]{width:14px}.w-\[250px\]{width:250px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-screen{width:100vw}.min-w-32{min-width:8rem}.min-w-60{min-width:15rem}.min-w-\[4\.5rem\]{min-width:4.5rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.origin-center{transform-origin:center}.origin-top-right{transform-origin:top right}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border,.border-\[1px\]{border-width:1px}.border-b{border-bottom-width:1px}.border-dotted{border-style:dotted}.border-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-border-opacity: 1;border-color:hsl(14.2deg 70.71% 53.14% / var(--tw-border-opacity, 1))}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.\!bg-gray-200{--tw-bg-opacity: 1 !important;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))!important}.bg-\[hsl\(0deg\,0\%\,100\%\)\]{--tw-bg-opacity: 1;background-color:hsl(0deg 0% 100% / var(--tw-bg-opacity, 1))}.bg-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-bg-opacity: 1;background-color:hsl(347.29deg 47.58% 51.37% / var(--tw-bg-opacity, 1))}.bg-\[rgb\(247\,250\,251\)\]{--tw-bg-opacity: 1;background-color:rgb(247 250 251 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-current{background-color:currentColor}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-green-400\/70{background-color:#4ade80b3}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-opacity-60{--tw-bg-opacity: .6 }.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-gradient-from: hsl(347.29deg,47.58%,51.37%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(347.29deg 47.58% 51.37% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.to-\[\#CFCFCF\]{--tw-gradient-to: #CFCFCF var(--tw-gradient-to-position) }.to-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-gradient-to: hsl(14.2deg,70.71%,53.14%) var(--tw-gradient-to-position) }.fill-\[\#dfdfdf\]{fill:#dfdfdf}.fill-\[\#efefef\]{fill:#efefef}.fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{fill:#dc5b33}.fill-gray-500{fill:#6b7280}.fill-transparent{fill:transparent}.stroke-\[\#DFDFDF\]{stroke:#dfdfdf}.stroke-\[hsl\(0deg\,0\%\,100\%\)\]{stroke:#fff}.stroke-black{stroke:#000}.stroke-gray-300{stroke:#d1d5db}.stroke-gray-600{stroke:#4b5563}.stroke-white{stroke:#fff}.stroke-1{stroke-width:1}.stroke-2{stroke-width:2}.stroke-\[10\]{stroke-width:10}.stroke-\[5\]{stroke-width:5}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-\[80px\]{padding-bottom:80px}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-7xl{font-size:4.5rem;line-height:1}.text-\[0\.875rem\]{font-size:.875rem}.text-\[14px\]{font-size:14px}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[14px\]{line-height:14px}.leading-\[16px\]{line-height:16px}.text-\[hsl\(0deg\,0\%\,0\%\)\]{--tw-text-opacity: 1;color:hsl(0deg 0% 0% / var(--tw-text-opacity, 1))}.text-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-text-opacity: 1;color:hsl(14.2deg 70.71% 53.14% / var(--tw-text-opacity, 1))}.text-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-text-opacity: 1;color:hsl(347.29deg 47.58% 51.37% / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.accent-red-500{accent-color:#ef4444}.opacity-0{opacity:0}.opacity-\[0\.8\]{opacity:.8}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-500\/25{--tw-shadow-color: rgb(59 130 246 / .25);--tw-shadow: var(--tw-shadow-colored) }.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-opacity-5{--tw-ring-opacity: .05 }.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-100{--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.\[dominant-baseline\:hanging\]{dominant-baseline:hanging}.\[dominant-baseline\:middle\]{dominant-baseline:middle}.\[fill-opacity\:0\.7\]{fill-opacity:.7}.\[fill-opacity\:0\]{fill-opacity:0}.\[filter\:brightness\(300\%\)\]{filter:brightness(300%)}.\[filter\:invert\(1\)\]{filter:invert(1)}.\[font-size-adjust\:0\.08\]{font-size-adjust:.08}.\[font-size-adjust\:0\.12\]{font-size-adjust:.12}.\[grid-area\:graph\]{grid-area:graph}.\[resize\:both\]{resize:both}.\[stroke-opacity\:0\.1\]{stroke-opacity:.1}.\[stroke-opacity\:0\]{stroke-opacity:0}.\[text-anchor\:end\]{text-anchor:end}.\[text-anchor\:middle\]{text-anchor:middle}.\[text-anchor\:start\]{text-anchor:start}.\[vector-effect\:non-scaling-stroke\]{vector-effect:non-scaling-stroke}.\[writing-mode\:vertical-rl\]{writing-mode:vertical-rl}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]:hover{--tw-bg-opacity: 1;background-color:hsl(14.2deg 70.71% 53.14% / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:stroke-white:hover{stroke:#fff}.hover\:stroke-\[1\.5\]:hover{stroke-width:1.5}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(347.29deg 47.58% 51.37% / var(--tw-ring-opacity, 1)) }.focus\:ring-slate-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(148 163 184 / var(--tw-ring-opacity, 1)) }.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px }.focus\:ring-offset-slate-900:focus{--tw-ring-offset-color: #0f172a }.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.group:hover .group-hover\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:stroke-\[15\]{stroke-width:15}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:drop-shadow-\[0_0_50px_rgba\(0\,0\,0\,0\.5\)\]{--tw-drop-shadow: drop-shadow(0 0 50px rgba(0,0,0,.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.has-\[path\:hover\]\:z-\[1\]:has(path:hover){z-index:1}.has-\[path\:hover\]\:brightness-110:has(path:hover){--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width: 768px){.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:row-start-\[unset\]{grid-row-start:unset}.md\:mx-0{margin-left:0;margin-right:0}.md\:mx-6{margin-left:1.5rem;margin-right:1.5rem}.md\:min-h-\[unset\]{min-height:unset}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[40\%_1fr\]{grid-template-columns:40% 1fr}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:overflow-hidden{overflow:hidden}}@media (min-width: 1024px){.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:w-fit{width:-moz-fit-content;width:fit-content}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:justify-end{justify-content:flex-end}}.dark\:border-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]\/40:where(.dark,.dark *){border-color:#6ca7e466}.dark\:border-white:where(.dark,.dark *){--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:bg-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:hsl(209.65deg 52.15% 31.96% / var(--tw-bg-opacity, 1))}.dark\:bg-\[hsl\(210deg\,22\.22\%\,10\.59\%\)\]:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:hsl(210deg 22.22% 10.59% / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-red-200:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.dark\:from-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-gradient-from: hsl(209.65deg,52.15%,31.96%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(209.65deg 52.15% 31.96% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.dark\:to-\[\#3C3C3C\]:where(.dark,.dark *){--tw-gradient-to: #3C3C3C var(--tw-gradient-to-position) }.dark\:fill-\[\#111111\]:where(.dark,.dark *){fill:#111}.dark\:fill-\[\#1b1b1b\]:where(.dark,.dark *){fill:#1b1b1b}.dark\:fill-\[\#2d2d2d\]:where(.dark,.dark *){fill:#2d2d2d}.dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *){fill:#6ca7e4}.dark\:fill-gray-400:where(.dark,.dark *){fill:#9ca3af}.dark\:fill-white:where(.dark,.dark *){fill:#fff}.dark\:stroke-\[\#2D2D2D\]:where(.dark,.dark *){stroke:#2d2d2d}.dark\:stroke-\[\#2d2d2d\]:where(.dark,.dark *){stroke:#2d2d2d}.dark\:stroke-\[hsl\(210deg\,22\.22\%\,10\.59\%\)\]:where(.dark,.dark *){stroke:#151b21}.dark\:stroke-white:where(.dark,.dark *){stroke:#fff}.dark\:text-\[hsl\(0deg\,0\%\,100\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(0deg 0% 100% / var(--tw-text-opacity, 1))}.dark\:text-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(209.65deg 52.15% 31.96% / var(--tw-text-opacity, 1))}.dark\:text-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(210.5deg 68.97% 65.88% / var(--tw-text-opacity, 1))}.dark\:text-black:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-600:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.dark\:text-red-900:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.dark\:text-white:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:ring-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-ring-opacity: 1;--tw-ring-color: hsl(209.65deg 52.15% 31.96% / var(--tw-ring-opacity, 1)) }.dark\:\[filter\:brightness\(100\%\)\]:where(.dark,.dark *){filter:brightness(100%)}.dark\:\[filter\:invert\(0\)\]:where(.dark,.dark *){filter:invert(0)}.hover\:dark\:bg-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *):hover{--tw-bg-opacity: 1;background-color:hsl(210.5deg 68.97% 65.88% / var(--tw-bg-opacity, 1))}.\[\&\>svg\]\:opacity-30>svg{opacity:.3}.hover\:\[\&\>svg\]\:scale-110>svg:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:\[\&\>svg\]\:opacity-60>svg:hover{opacity:.6}.has-\[path\:hover\]\:\[\&_\.label-path\]\:stroke-current .label-path:has(path:hover){stroke:currentColor}.\[\&_g\>\*\]\:fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\] g>*{fill:#dc5b33}.\[\&_g\>\*\]\:dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *) g>*{fill:#6ca7e4}.\[\&_g\>_path\]\:fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\] g>path{fill:#dc5b33}.\[\&_g\>_path\]\:dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *) g>path{fill:#6ca7e4}.\[\&_svg\]\:opacity-100 svg{opacity:1}
|
|
1
|
+
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.left-0{left:0}.left-\[50\%\]{left:50%}.right-2{right:.5rem}.top-16{top:4rem}.top-\[50\%\]{top:50%}.isolate{isolation:isolate}.z-10{z-index:10}.col-span-full{grid-column:1 / -1}.row-span-2{grid-row:span 2 / span 2}.row-start-1{grid-row-start:1}.m-3{margin:.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.\!mt-0{margin-top:0!important}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[10px\]{margin-left:10px}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-\[10px\]{margin-top:10px}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[1090\/539\]{aspect-ratio:1090/539}.size-4{width:1rem;height:1rem}.h-0{height:0px}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[14px\]{height:14px}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-screen{max-height:100vh}.min-h-\[100vh\]{min-height:100vh}.min-h-\[400px\]{min-height:400px}.min-h-\[600px\]{min-height:600px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-20{width:5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[14px\]{width:14px}.w-\[250px\]{width:250px}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-screen{width:100vw}.min-w-32{min-width:8rem}.min-w-60{min-width:15rem}.min-w-\[4\.5rem\]{min-width:4.5rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.origin-center{transform-origin:center}.origin-top-right{transform-origin:top right}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-180{--tw-rotate: -180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.overflow-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.text-nowrap{text-wrap:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.border,.border-\[1px\]{border-width:1px}.border-b{border-bottom-width:1px}.border-dotted{border-style:dotted}.border-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-border-opacity: 1;border-color:hsl(14.2deg 70.71% 53.14% / var(--tw-border-opacity, 1))}.border-black{--tw-border-opacity: 1;border-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.\!bg-gray-200{--tw-bg-opacity: 1 !important;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))!important}.bg-\[hsl\(0deg\,0\%\,100\%\)\]{--tw-bg-opacity: 1;background-color:hsl(0deg 0% 100% / var(--tw-bg-opacity, 1))}.bg-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-bg-opacity: 1;background-color:hsl(347.29deg 47.58% 51.37% / var(--tw-bg-opacity, 1))}.bg-\[rgb\(247\,250\,251\)\]{--tw-bg-opacity: 1;background-color:rgb(247 250 251 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-current{background-color:currentColor}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-green-400\/70{background-color:#4ade80b3}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-opacity-60{--tw-bg-opacity: .6 }.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-gradient-from: hsl(347.29deg,47.58%,51.37%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(347.29deg 47.58% 51.37% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.to-\[\#CFCFCF\]{--tw-gradient-to: #CFCFCF var(--tw-gradient-to-position) }.to-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-gradient-to: hsl(14.2deg,70.71%,53.14%) var(--tw-gradient-to-position) }.fill-\[\#dfdfdf\]{fill:#dfdfdf}.fill-\[\#efefef\]{fill:#efefef}.fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{fill:#dc5b33}.fill-gray-500{fill:#6b7280}.fill-transparent{fill:transparent}.stroke-\[\#DFDFDF\]{stroke:#dfdfdf}.stroke-\[hsl\(0deg\,0\%\,100\%\)\]{stroke:#fff}.stroke-black{stroke:#000}.stroke-gray-300{stroke:#d1d5db}.stroke-gray-600{stroke:#4b5563}.stroke-white{stroke:#fff}.stroke-1{stroke-width:1}.stroke-2{stroke-width:2}.stroke-\[10\]{stroke-width:10}.stroke-\[5\]{stroke-width:5}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-\[80px\]{padding-bottom:80px}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-4{padding-right:1rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-7xl{font-size:4.5rem;line-height:1}.text-\[0\.875rem\]{font-size:.875rem}.text-\[14px\]{font-size:14px}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[14px\]{line-height:14px}.leading-\[16px\]{line-height:16px}.text-\[hsl\(0deg\,0\%\,0\%\)\]{--tw-text-opacity: 1;color:hsl(0deg 0% 0% / var(--tw-text-opacity, 1))}.text-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]{--tw-text-opacity: 1;color:hsl(14.2deg 70.71% 53.14% / var(--tw-text-opacity, 1))}.text-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]{--tw-text-opacity: 1;color:hsl(347.29deg 47.58% 51.37% / var(--tw-text-opacity, 1))}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.accent-red-500{accent-color:#ef4444}.opacity-0{opacity:0}.opacity-\[0\.8\]{opacity:.8}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-blue-500\/25{--tw-shadow-color: rgb(59 130 246 / .25);--tw-shadow: var(--tw-shadow-colored) }.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-opacity-5{--tw-ring-opacity: .05 }.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.brightness-100{--tw-brightness: brightness(1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.\[dominant-baseline\:hanging\]{dominant-baseline:hanging}.\[dominant-baseline\:middle\]{dominant-baseline:middle}.\[fill-opacity\:0\.7\]{fill-opacity:.7}.\[fill-opacity\:0\]{fill-opacity:0}.\[filter\:brightness\(300\%\)\]{filter:brightness(300%)}.\[filter\:invert\(1\)\]{filter:invert(1)}.\[font-size-adjust\:0\.08\]{font-size-adjust:.08}.\[font-size-adjust\:0\.12\]{font-size-adjust:.12}.\[grid-area\:graph\]{grid-area:graph}.\[resize\:both\]{resize:both}.\[stroke-opacity\:0\.1\]{stroke-opacity:.1}.\[stroke-opacity\:0\]{stroke-opacity:0}.\[text-anchor\:end\]{text-anchor:end}.\[text-anchor\:middle\]{text-anchor:middle}.\[text-anchor\:start\]{text-anchor:start}.\[vector-effect\:non-scaling-stroke\]{vector-effect:non-scaling-stroke}.\[writing-mode\:vertical-rl\]{writing-mode:vertical-rl}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\]:hover{--tw-bg-opacity: 1;background-color:hsl(14.2deg 70.71% 53.14% / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:stroke-white:hover{stroke:#fff}.hover\:stroke-\[1\.5\]:hover{stroke-width:1.5}.hover\:text-black:hover{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[hsl\(347\.29deg\,47\.58\%\,51\.37\%\)\]:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(347.29deg 47.58% 51.37% / var(--tw-ring-opacity, 1)) }.focus\:ring-slate-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(148 163 184 / var(--tw-ring-opacity, 1)) }.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px }.focus\:ring-offset-slate-900:focus{--tw-ring-offset-color: #0f172a }.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:hidden{display:none}.group:hover .group-hover\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:stroke-\[15\]{stroke-width:15}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:drop-shadow-\[0_0_50px_rgba\(0\,0\,0\,0\.5\)\]{--tw-drop-shadow: drop-shadow(0 0 50px rgba(0,0,0,.5));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.has-\[path\:hover\]\:z-\[1\]:has(path:hover){z-index:1}.has-\[path\:hover\]\:brightness-110:has(path:hover){--tw-brightness: brightness(1.1);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (min-width: 768px){.md\:col-span-1{grid-column:span 1 / span 1}.md\:col-span-2{grid-column:span 2 / span 2}.md\:row-start-\[unset\]{grid-row-start:unset}.md\:mx-0{margin-left:0;margin-right:0}.md\:mx-6{margin-left:1.5rem;margin-right:1.5rem}.md\:min-h-\[unset\]{min-height:unset}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[40\%_1fr\]{grid-template-columns:40% 1fr}.md\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.md\:overflow-hidden{overflow:hidden}}@media (min-width: 1024px){.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:w-fit{width:-moz-fit-content;width:fit-content}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:justify-end{justify-content:flex-end}}.dark\:border-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]\/40:where(.dark,.dark *){border-color:#6ca7e466}.dark\:border-white:where(.dark,.dark *){--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.dark\:bg-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:hsl(209.65deg 52.15% 31.96% / var(--tw-bg-opacity, 1))}.dark\:bg-\[hsl\(210deg\,22\.22\%\,10\.59\%\)\]:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:hsl(210deg 22.22% 10.59% / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-red-200:where(.dark,.dark *){--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.dark\:from-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-gradient-from: hsl(209.65deg,52.15%,31.96%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(209.65deg 52.15% 31.96% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.dark\:to-\[\#3C3C3C\]:where(.dark,.dark *){--tw-gradient-to: #3C3C3C var(--tw-gradient-to-position) }.dark\:fill-\[\#111111\]:where(.dark,.dark *){fill:#111}.dark\:fill-\[\#1b1b1b\]:where(.dark,.dark *){fill:#1b1b1b}.dark\:fill-\[\#2d2d2d\]:where(.dark,.dark *){fill:#2d2d2d}.dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *){fill:#6ca7e4}.dark\:fill-gray-400:where(.dark,.dark *){fill:#9ca3af}.dark\:fill-white:where(.dark,.dark *){fill:#fff}.dark\:stroke-\[\#2D2D2D\]:where(.dark,.dark *){stroke:#2d2d2d}.dark\:stroke-\[\#2d2d2d\]:where(.dark,.dark *){stroke:#2d2d2d}.dark\:stroke-\[hsl\(210deg\,22\.22\%\,10\.59\%\)\]:where(.dark,.dark *){stroke:#151b21}.dark\:stroke-white:where(.dark,.dark *){stroke:#fff}.dark\:text-\[hsl\(0deg\,0\%\,100\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(0deg 0% 100% / var(--tw-text-opacity, 1))}.dark\:text-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(209.65deg 52.15% 31.96% / var(--tw-text-opacity, 1))}.dark\:text-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *){--tw-text-opacity: 1;color:hsl(210.5deg 68.97% 65.88% / var(--tw-text-opacity, 1))}.dark\:text-black:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-600:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.dark\:text-red-900:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.dark\:text-white:where(.dark,.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:ring-\[hsl\(209\.65deg\,52\.15\%\,31\.96\%\)\]:where(.dark,.dark *){--tw-ring-opacity: 1;--tw-ring-color: hsl(209.65deg 52.15% 31.96% / var(--tw-ring-opacity, 1)) }.dark\:\[filter\:brightness\(100\%\)\]:where(.dark,.dark *){filter:brightness(100%)}.dark\:\[filter\:invert\(0\)\]:where(.dark,.dark *){filter:invert(0)}.hover\:dark\:bg-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *):hover{--tw-bg-opacity: 1;background-color:hsl(210.5deg 68.97% 65.88% / var(--tw-bg-opacity, 1))}.\[\&\>svg\]\:opacity-30>svg{opacity:.3}.hover\:\[\&\>svg\]\:scale-110>svg:hover{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:\[\&\>svg\]\:opacity-60>svg:hover{opacity:.6}.has-\[path\:hover\]\:\[\&_\.label-path\]\:stroke-current .label-path:has(path:hover){stroke:currentColor}.\[\&_g\>\*\]\:fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\] g>*{fill:#dc5b33}.\[\&_g\>\*\]\:dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *) g>*{fill:#6ca7e4}.\[\&_g\>_path\]\:fill-\[hsl\(14\.2deg\,70\.71\%\,53\.14\%\)\] g>path{fill:#dc5b33}.\[\&_g\>_path\]\:dark\:fill-\[hsl\(210\.5deg\,68\.97\%\,65\.88\%\)\]:where(.dark,.dark *) g>path{fill:#6ca7e4}.\[\&_svg\]\:opacity-100 svg{opacity:1}
|
|
2
2
|
._base_17xbr_2{border-radius:5px;position:absolute;width:auto}._inner_17xbr_8{display:inline-block;position:relative;z-index:20;color:#fff;min-width:48px;max-width:28rem;padding:8px}._inner--center-top_17xbr_17{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 30 L 30 0 L 60 30 Z" /></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 10px,100% 10px,0 100%,100% 100%,0 15px,5px 10px,50% 0;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) 100%,20px 10px}._inner--left-top_17xbr_25{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 30 L 30 0 L 60 30 Z" /></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 10px,100% 10px,0 100%,100% 100%,0 15px,5px 10px,calc(10% - 10px) 0;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) 100%,20px 10px}._inner--right-top_17xbr_33{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 30 L 30 0 L 60 30 Z" /></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 10px,100% 10px,0 100%,100% 100%,0 15px,5px 10px,calc(90% + 10px) 0;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) 100%,20px 10px}._inner--left-middle_17xbr_41{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="10px" height="20px" viewBox="0 0 30 60" xmlns="http://www.w3.org/2000/svg"><path d="M 30 0 L 30 60 L 0 30 Z" /></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:10px 0,100% 0,10px 100%,100% 100%,10px 5px,15px 0,0 50%;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 10px),calc(100% - 20px) 100%,10px 20px}._inner--left-bottom_17xbr_49{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 0 L 60 0 L 30 30 Z"/></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 0,100% 0,0 calc(100% - 10px),100% calc(100% - 10px),0 5px,5px 0,calc(10% - 10px) 100%;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) calc(100% - 10px),20px 10px}._inner--right-bottom_17xbr_57{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 0 L 60 0 L 30 30 Z"/></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 0,100% 0,0 calc(100% - 10px),100% calc(100% - 10px),0 5px,5px 0,calc(90% + 10px) 100%;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) calc(100% - 10px),20px 10px}._inner--bottom-center_17xbr_65{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="20px" height="10px" viewBox="0 0 60 30" xmlns="http://www.w3.org/2000/svg"><path d="M 0 0 L 60 0 L 30 30 Z"/></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 0,100% 0,100% calc(100% - 9px),0 calc(100% - 9px),0 5px,5px 0,50% 100%;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,100% calc(100% - 20px),calc(100% - 10px) calc(100% - 9px),20px 10px}._inner--right-middle_17xbr_73{-webkit-mask-image:radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),radial-gradient(#fff 4.5px,rgba(255,255,255,0) 5px),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),url('data:image/svg+xml;utf8,<svg width="10px" height="20px" viewBox="0 0 30 60" xmlns="http://www.w3.org/2000/svg"><path d="M 0 0 L 0 60 L 30 30 Z" /></svg>');-webkit-mask-repeat:no-repeat;-webkit-mask-position:0 0,calc(100% - 10px) 0,0 100%,calc(100% - 10px) 100%,0 5px,5px 0,100% 50%;-webkit-mask-size:10px 10px,10px 10px,10px 10px,10px 10px,calc(100% - 10px) calc(100% - 10px),calc(100% - 20px) 100%,10px 20px}._inner--top_17xbr_81{padding-top:18px}._inner--bottom_17xbr_65{padding-bottom:18px}._inner--left_17xbr_25{padding-left:18px}._inner--right_17xbr_33{padding-right:18px}._title_17xbr_94{font-size:.875rem;font-weight:700;line-height:1.125rem;color:#c3c3c3;text-transform:uppercase;margin-bottom:12px}._description_17xbr_103{color:#fff;font-size:.875rem;font-weight:400;line-height:1.25rem}._triangle_17xbr_110{display:none;position:absolute;height:10px;width:20px;stroke-width:5;fill:transparent}._triangle--top-left_17xbr_118{top:0;left:10%;transform:translate(calc(-50% - 2px))}._triangle--top-right_17xbr_123{top:0;left:90%;transform:translate(calc(-50% + 2px))}._triangle--top-center_17xbr_128{top:0;left:50%;stroke-width:3;transform:translate(-50%)}._triangle--bottom-left_17xbr_134{top:100%;left:10%;transform:translate(calc(-50% - 2px),-100%)}._triangle--bottom-right_17xbr_139{top:100%;left:90%;transform:translate(calc(-50% + 2px),-100%)}._triangle--bottom-center_17xbr_144{top:100%;left:50%;stroke-width:2;transform:translate(-50%,-100%) scale(.9)}._tooltip_1bizk_1{display:none}._base_1bizk_6:has(svg path[data-iso=GF]:hover)>._tooltip_1bizk_1[data-iso=GF]{display:block}._base_1bizk_6:has(svg path[data-iso=MT]:hover)>._tooltip_1bizk_1[data-iso=MT]{display:block}._base_1bizk_6:has(svg path[data-iso="??"]:hover)>._tooltip_1bizk_1[data-iso="??"]{display:block}._base_1bizk_6:has(svg path[data-iso="???"]:hover)>._tooltip_1bizk_1[data-iso="???"]{display:block}._base_1bizk_6:has(svg path[data-iso=BN]:hover)>._tooltip_1bizk_1[data-iso=BN]{display:block}._base_1bizk_6:has(svg path[data-iso=PR]:hover)>._tooltip_1bizk_1[data-iso=PR]{display:block}._base_1bizk_6:has(svg path[data-iso=LU]:hover)>._tooltip_1bizk_1[data-iso=LU]{display:block}._base_1bizk_6:has(svg path[data-iso=BW]:hover)>._tooltip_1bizk_1[data-iso=BW]{display:block}._base_1bizk_6:has(svg path[data-iso=CF]:hover)>._tooltip_1bizk_1[data-iso=CF]{display:block}._base_1bizk_6:has(svg path[data-iso=DE]:hover)>._tooltip_1bizk_1[data-iso=DE]{display:block}._base_1bizk_6:has(svg path[data-iso=YE]:hover)>._tooltip_1bizk_1[data-iso=YE]{display:block}._base_1bizk_6:has(svg path[data-iso=OM]:hover)>._tooltip_1bizk_1[data-iso=OM]{display:block}._base_1bizk_6:has(svg path[data-iso=CG]:hover)>._tooltip_1bizk_1[data-iso=CG]{display:block}._base_1bizk_6:has(svg path[data-iso=PL]:hover)>._tooltip_1bizk_1[data-iso=PL]{display:block}._base_1bizk_6:has(svg path[data-iso=EH]:hover)>._tooltip_1bizk_1[data-iso=EH]{display:block}._base_1bizk_6:has(svg path[data-iso=GR]:hover)>._tooltip_1bizk_1[data-iso=GR]{display:block}._base_1bizk_6:has(svg path[data-iso=KG]:hover)>._tooltip_1bizk_1[data-iso=KG]{display:block}._base_1bizk_6:has(svg path[data-iso=RO]:hover)>._tooltip_1bizk_1[data-iso=RO]{display:block}._base_1bizk_6:has(svg path[data-iso=GN]:hover)>._tooltip_1bizk_1[data-iso=GN]{display:block}._base_1bizk_6:has(svg path[data-iso=GY]:hover)>._tooltip_1bizk_1[data-iso=GY]{display:block}._base_1bizk_6:has(svg path[data-iso=IS]:hover)>._tooltip_1bizk_1[data-iso=IS]{display:block}._base_1bizk_6:has(svg path[data-iso=SY]:hover)>._tooltip_1bizk_1[data-iso=SY]{display:block}._base_1bizk_6:has(svg path[data-iso=TN]:hover)>._tooltip_1bizk_1[data-iso=TN]{display:block}._base_1bizk_6:has(svg path[data-iso=GH]:hover)>._tooltip_1bizk_1[data-iso=GH]{display:block}._base_1bizk_6:has(svg path[data-iso=UY]:hover)>._tooltip_1bizk_1[data-iso=UY]{display:block}._base_1bizk_6:has(svg path[data-iso=BD]:hover)>._tooltip_1bizk_1[data-iso=BD]{display:block}._base_1bizk_6:has(svg path[data-iso=SN]:hover)>._tooltip_1bizk_1[data-iso=SN]{display:block}._base_1bizk_6:has(svg path[data-iso=HR]:hover)>._tooltip_1bizk_1[data-iso=HR]{display:block}._base_1bizk_6:has(svg path[data-iso=AT]:hover)>._tooltip_1bizk_1[data-iso=AT]{display:block}._base_1bizk_6:has(svg path[data-iso=NI]:hover)>._tooltip_1bizk_1[data-iso=NI]{display:block}._base_1bizk_6:has(svg path[data-iso=HU]:hover)>._tooltip_1bizk_1[data-iso=HU]{display:block}._base_1bizk_6:has(svg path[data-iso=HN]:hover)>._tooltip_1bizk_1[data-iso=HN]{display:block}._base_1bizk_6:has(svg path[data-iso=BG]:hover)>._tooltip_1bizk_1[data-iso=BG]{display:block}._base_1bizk_6:has(svg path[data-iso=JO]:hover)>._tooltip_1bizk_1[data-iso=JO]{display:block}._base_1bizk_6:has(svg path[data-iso=AZ]:hover)>._tooltip_1bizk_1[data-iso=AZ]{display:block}._base_1bizk_6:has(svg path[data-iso=LV]:hover)>._tooltip_1bizk_1[data-iso=LV]{display:block}._base_1bizk_6:has(svg path[data-iso=SR]:hover)>._tooltip_1bizk_1[data-iso=SR]{display:block}._base_1bizk_6:has(svg path[data-iso=PT]:hover)>._tooltip_1bizk_1[data-iso=PT]{display:block}._base_1bizk_6:has(svg path[data-iso=AE]:hover)>._tooltip_1bizk_1[data-iso=AE]{display:block}._base_1bizk_6:has(svg path[data-iso=IE]:hover)>._tooltip_1bizk_1[data-iso=IE]{display:block}._base_1bizk_6:has(svg path[data-iso=GT]:hover)>._tooltip_1bizk_1[data-iso=GT]{display:block}._base_1bizk_6:has(svg path[data-iso=RS]:hover)>._tooltip_1bizk_1[data-iso=RS]{display:block}._base_1bizk_6:has(svg path[data-iso=CZ]:hover)>._tooltip_1bizk_1[data-iso=CZ]{display:block}._base_1bizk_6:has(svg path[data-iso=KR]:hover)>._tooltip_1bizk_1[data-iso=KR]{display:block}._base_1bizk_6:has(svg path[data-iso=PA]:hover)>._tooltip_1bizk_1[data-iso=PA]{display:block}._base_1bizk_6:has(svg path[data-iso=LT]:hover)>._tooltip_1bizk_1[data-iso=LT]{display:block}._base_1bizk_6:has(svg path[data-iso=EE]:hover)>._tooltip_1bizk_1[data-iso=EE]{display:block}._base_1bizk_6:has(svg path[data-iso=DK]:hover)>._tooltip_1bizk_1[data-iso=DK]{display:block}._base_1bizk_6:has(svg path[data-iso=NL]:hover)>._tooltip_1bizk_1[data-iso=NL]{display:block}._base_1bizk_6:has(svg path[data-iso=SK]:hover)>._tooltip_1bizk_1[data-iso=SK]{display:block}._base_1bizk_6:has(svg path[data-iso=CR]:hover)>._tooltip_1bizk_1[data-iso=CR]{display:block}._base_1bizk_6:has(svg path[data-iso=BA]:hover)>._tooltip_1bizk_1[data-iso=BA]{display:block}._base_1bizk_6:has(svg path[data-iso=MD]:hover)>._tooltip_1bizk_1[data-iso=MD]{display:block}._base_1bizk_6:has(svg path[data-iso=CH]:hover)>._tooltip_1bizk_1[data-iso=CH]{display:block}._base_1bizk_6:has(svg path[data-iso=TG]:hover)>._tooltip_1bizk_1[data-iso=TG]{display:block}._base_1bizk_6:has(svg path[data-iso=LK]:hover)>._tooltip_1bizk_1[data-iso=LK]{display:block}._base_1bizk_6:has(svg path[data-iso=DO]:hover)>._tooltip_1bizk_1[data-iso=DO]{display:block}._base_1bizk_6:has(svg path[data-iso=BE]:hover)>._tooltip_1bizk_1[data-iso=BE]{display:block}._base_1bizk_6:has(svg path[data-iso=IL]:hover)>._tooltip_1bizk_1[data-iso=IL]{display:block}._base_1bizk_6:has(svg path[data-iso=FJ]:hover)>._tooltip_1bizk_1[data-iso=FJ]{display:block}._base_1bizk_6:has(svg path[data-iso=TW]:hover)>._tooltip_1bizk_1[data-iso=TW]{display:block}._base_1bizk_6:has(svg path[data-iso=HT]:hover)>._tooltip_1bizk_1[data-iso=HT]{display:block}._base_1bizk_6:has(svg path[data-iso=AL]:hover)>._tooltip_1bizk_1[data-iso=AL]{display:block}._base_1bizk_6:has(svg path[data-iso=LS]:hover)>._tooltip_1bizk_1[data-iso=LS]{display:block}._base_1bizk_6:has(svg path[data-iso=SI]:hover)>._tooltip_1bizk_1[data-iso=SI]{display:block}._base_1bizk_6:has(svg path[data-iso=BI]:hover)>._tooltip_1bizk_1[data-iso=BI]{display:block}._base_1bizk_6:has(svg path[data-iso=MK]:hover)>._tooltip_1bizk_1[data-iso=MK]{display:block}._base_1bizk_6:has(svg path[data-iso=ME]:hover)>._tooltip_1bizk_1[data-iso=ME]{display:block}._base_1bizk_6:has(svg path[data-iso=KW]:hover)>._tooltip_1bizk_1[data-iso=KW]{display:block}._base_1bizk_6:has(svg path[data-iso=GQ]:hover)>._tooltip_1bizk_1[data-iso=GQ]{display:block}._base_1bizk_6:has(svg path[data-iso=LB]:hover)>._tooltip_1bizk_1[data-iso=LB]{display:block}._base_1bizk_6:has(svg path[data-iso=CY]:hover)>._tooltip_1bizk_1[data-iso=CY]{display:block}._base_1bizk_6:has(svg path[data-iso=QA]:hover)>._tooltip_1bizk_1[data-iso=QA]{display:block}._base_1bizk_6:has(svg path[data-iso=JM]:hover)>._tooltip_1bizk_1[data-iso=JM]{display:block}._base_1bizk_6:has(svg path[data-iso=GM]:hover)>._tooltip_1bizk_1[data-iso=GM]{display:block}._base_1bizk_6:has(svg path[data-iso=RU]:hover)>._tooltip_1bizk_1[data-iso=RU]{display:block}._base_1bizk_6:has(svg path[data-iso=US]:hover)>._tooltip_1bizk_1[data-iso=US]{display:block}._base_1bizk_6:has(svg path[data-iso=CA]:hover)>._tooltip_1bizk_1[data-iso=CA]{display:block}._base_1bizk_6:has(svg path[data-iso=CN]:hover)>._tooltip_1bizk_1[data-iso=CN]{display:block}._base_1bizk_6:has(svg path[data-iso=BR]:hover)>._tooltip_1bizk_1[data-iso=BR]{display:block}._base_1bizk_6:has(svg path[data-iso=GL]:hover)>._tooltip_1bizk_1[data-iso=GL]{display:block}._base_1bizk_6:has(svg path[data-iso=AU]:hover)>._tooltip_1bizk_1[data-iso=AU]{display:block}._base_1bizk_6:has(svg path[data-iso=IN]:hover)>._tooltip_1bizk_1[data-iso=IN]{display:block}._base_1bizk_6:has(svg path[data-iso=ID]:hover)>._tooltip_1bizk_1[data-iso=ID]{display:block}._base_1bizk_6:has(svg path[data-iso=AR]:hover)>._tooltip_1bizk_1[data-iso=AR]{display:block}._base_1bizk_6:has(svg path[data-iso=KZ]:hover)>._tooltip_1bizk_1[data-iso=KZ]{display:block}._base_1bizk_6:has(svg path[data-iso=MX]:hover)>._tooltip_1bizk_1[data-iso=MX]{display:block}._base_1bizk_6:has(svg path[data-iso=DZ]:hover)>._tooltip_1bizk_1[data-iso=DZ]{display:block}._base_1bizk_6:has(svg path[data-iso=CD]:hover)>._tooltip_1bizk_1[data-iso=CD]{display:block}._base_1bizk_6:has(svg path[data-iso=NO]:hover)>._tooltip_1bizk_1[data-iso=NO]{display:block}._base_1bizk_6:has(svg path[data-iso=MN]:hover)>._tooltip_1bizk_1[data-iso=MN]{display:block}._base_1bizk_6:has(svg path[data-iso=SA]:hover)>._tooltip_1bizk_1[data-iso=SA]{display:block}._base_1bizk_6:has(svg path[data-iso=CL]:hover)>._tooltip_1bizk_1[data-iso=CL]{display:block}._base_1bizk_6:has(svg path[data-iso=ES]:hover)>._tooltip_1bizk_1[data-iso=ES]{display:block}._base_1bizk_6:has(svg path[data-iso=IR]:hover)>._tooltip_1bizk_1[data-iso=IR]{display:block}._base_1bizk_6:has(svg path[data-iso=ML]:hover)>._tooltip_1bizk_1[data-iso=ML]{display:block}._base_1bizk_6:has(svg path[data-iso=PE]:hover)>._tooltip_1bizk_1[data-iso=PE]{display:block}._base_1bizk_6:has(svg path[data-iso=JP]:hover)>._tooltip_1bizk_1[data-iso=JP]{display:block}._base_1bizk_6:has(svg path[data-iso=PK]:hover)>._tooltip_1bizk_1[data-iso=PK]{display:block}._base_1bizk_6:has(svg path[data-iso=SD]:hover)>._tooltip_1bizk_1[data-iso=SD]{display:block}._base_1bizk_6:has(svg path[data-iso=LY]:hover)>._tooltip_1bizk_1[data-iso=LY]{display:block}._base_1bizk_6:has(svg path[data-iso=ZA]:hover)>._tooltip_1bizk_1[data-iso=ZA]{display:block}._base_1bizk_6:has(svg path[data-iso=CO]:hover)>._tooltip_1bizk_1[data-iso=CO]{display:block}._base_1bizk_6:has(svg path[data-iso=NE]:hover)>._tooltip_1bizk_1[data-iso=NE]{display:block}._base_1bizk_6:has(svg path[data-iso=SE]:hover)>._tooltip_1bizk_1[data-iso=SE]{display:block}._base_1bizk_6:has(svg path[data-iso=MM]:hover)>._tooltip_1bizk_1[data-iso=MM]{display:block}._base_1bizk_6:has(svg path[data-iso=BO]:hover)>._tooltip_1bizk_1[data-iso=BO]{display:block}._base_1bizk_6:has(svg path[data-iso=VE]:hover)>._tooltip_1bizk_1[data-iso=VE]{display:block}._base_1bizk_6:has(svg path[data-iso=MR]:hover)>._tooltip_1bizk_1[data-iso=MR]{display:block}._base_1bizk_6:has(svg path[data-iso=UA]:hover)>._tooltip_1bizk_1[data-iso=UA]{display:block}._base_1bizk_6:has(svg path[data-iso=SO]:hover)>._tooltip_1bizk_1[data-iso=SO]{display:block}._base_1bizk_6:has(svg path[data-iso=FR]:hover)>._tooltip_1bizk_1[data-iso=FR]{display:block}._base_1bizk_6:has(svg path[data-iso=NZ]:hover)>._tooltip_1bizk_1[data-iso=NZ]{display:block}._base_1bizk_6:has(svg path[data-iso=AF]:hover)>._tooltip_1bizk_1[data-iso=AF]{display:block}._base_1bizk_6:has(svg path[data-iso=IT]:hover)>._tooltip_1bizk_1[data-iso=IT]{display:block}._base_1bizk_6:has(svg path[data-iso=PG]:hover)>._tooltip_1bizk_1[data-iso=PG]{display:block}._base_1bizk_6:has(svg path[data-iso=PH]:hover)>._tooltip_1bizk_1[data-iso=PH]{display:block}._base_1bizk_6:has(svg path[data-iso=TZ]:hover)>._tooltip_1bizk_1[data-iso=TZ]{display:block}._base_1bizk_6:has(svg path[data-iso=TH]:hover)>._tooltip_1bizk_1[data-iso=TH]{display:block}._base_1bizk_6:has(svg path[data-iso=EG]:hover)>._tooltip_1bizk_1[data-iso=EG]{display:block}._base_1bizk_6:has(svg path[data-iso=TR]:hover)>._tooltip_1bizk_1[data-iso=TR]{display:block}._base_1bizk_6:has(svg path[data-iso=NG]:hover)>._tooltip_1bizk_1[data-iso=NG]{display:block}._base_1bizk_6:has(svg path[data-iso=ZM]:hover)>._tooltip_1bizk_1[data-iso=ZM]{display:block}._base_1bizk_6:has(svg path[data-iso=MY]:hover)>._tooltip_1bizk_1[data-iso=MY]{display:block}._base_1bizk_6:has(svg path[data-iso=FI]:hover)>._tooltip_1bizk_1[data-iso=FI]{display:block}._base_1bizk_6:has(svg path[data-iso=VN]:hover)>._tooltip_1bizk_1[data-iso=VN]{display:block}._base_1bizk_6:has(svg path[data-iso=TM]:hover)>._tooltip_1bizk_1[data-iso=TM]{display:block}._base_1bizk_6:has(svg path[data-iso=EC]:hover)>._tooltip_1bizk_1[data-iso=EC]{display:block}._base_1bizk_6:has(svg path[data-iso=MA]:hover)>._tooltip_1bizk_1[data-iso=MA]{display:block}._base_1bizk_6:has(svg path[data-iso=MG]:hover)>._tooltip_1bizk_1[data-iso=MG]{display:block}._base_1bizk_6:has(svg path[data-iso=KE]:hover)>._tooltip_1bizk_1[data-iso=KE]{display:block}._base_1bizk_6:has(svg path[data-iso=IQ]:hover)>._tooltip_1bizk_1[data-iso=IQ]{display:block}._base_1bizk_6:has(svg path[data-iso=PY]:hover)>._tooltip_1bizk_1[data-iso=PY]{display:block}._base_1bizk_6:has(svg path[data-iso=GB]:hover)>._tooltip_1bizk_1[data-iso=GB]{display:block}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { ComponentProps } from "react";
|
|
2
2
|
import { HorizontalBars } from "./components/HorizontalBars";
|
|
3
3
|
import { VerticalBars } from "./components/VerticalBars";
|
|
4
|
+
import { GraphContext } from "../../hooks/use-graph/use-graph";
|
|
4
5
|
type VerticalProps = {
|
|
5
6
|
horizontal?: false;
|
|
6
7
|
} & ComponentProps<typeof VerticalBars>;
|
|
7
8
|
type HorizontalProps = {
|
|
8
9
|
horizontal?: true;
|
|
9
10
|
} & ComponentProps<typeof HorizontalBars>;
|
|
10
|
-
export declare const Bars:
|
|
11
|
+
export declare const Bars: {
|
|
12
|
+
(props: VerticalProps | HorizontalProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
context(ctx: GraphContext, props: VerticalProps | HorizontalProps): GraphContext;
|
|
14
|
+
};
|
|
11
15
|
export {};
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { HorizontalBars } from "./components/HorizontalBars";
|
|
3
3
|
import { VerticalBars } from "./components/VerticalBars";
|
|
4
|
+
import { ColorUtils } from "../../utils/color/color";
|
|
4
5
|
export const Bars = (props) => {
|
|
5
6
|
return props.horizontal ? _jsx(HorizontalBars, Object.assign({}, props)) : _jsx(VerticalBars, Object.assign({}, props));
|
|
6
7
|
};
|
|
8
|
+
Bars.context = (ctx, props) => {
|
|
9
|
+
return Object.assign(Object.assign({}, ctx), { colorFor: ColorUtils.schemes.segmented });
|
|
10
|
+
};
|
|
@@ -1,44 +1,45 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
1
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ColorUtils } from "../../../utils/color/color";
|
|
3
13
|
import { CoordinatesUtils } from "../../../utils/coordinates/coordinates";
|
|
4
14
|
import { GraphUtils } from "../../../utils/graph/graph";
|
|
5
15
|
import { useGraph } from "../../../hooks/use-graph/use-graph";
|
|
6
16
|
import { cx } from "../../../utils/cx/cx";
|
|
7
|
-
import {
|
|
8
|
-
|
|
17
|
+
import { ObjectUtils } from "../../../utils/object/object";
|
|
18
|
+
import { Rect } from "./Rect";
|
|
19
|
+
export const HorizontalBars = ({ children, size = 50, radius = 0, className }) => {
|
|
9
20
|
const context = useGraph();
|
|
10
21
|
if (!GraphUtils.isXYData(context.data))
|
|
11
22
|
return null;
|
|
12
23
|
const xForValue = CoordinatesUtils.xCoordinateFor(context);
|
|
13
24
|
const yForValue = CoordinatesUtils.yCoordinateFor(context);
|
|
14
|
-
const bars = context.data.map((bar,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const x1 = index === 0 ? 0 : coordinate[idx];
|
|
34
|
-
const x2 = index === 0 ? xy.x : coordinate[idx] + (0 + xy.x);
|
|
35
|
-
const candleRadius = groupBars.length === index + 1
|
|
36
|
-
? PathUtils.borderRadius({ x: x1, y: y1 }, { x: x2, y: y2 }, radius, true)
|
|
37
|
-
: `M ${x1} ${y1} L ${x1} ${y2} L ${x2} ${y2} L ${x2} ${y1}`;
|
|
38
|
-
// recorde the combined x coordinate (use for next stacked bar)
|
|
39
|
-
coordinate[idx] = index === 0 ? xy.x : coordinate[idx] + xy.x;
|
|
40
|
-
return (_jsx("path", { d: candleRadius, fill: bar.stroke, stroke: bar.stroke, vectorEffect: "non-scaling-stroke", strokeWidth: 1.5 }, idx + index + xy.y + xy.x));
|
|
41
|
-
});
|
|
42
|
-
});
|
|
25
|
+
const bars = context.data.flatMap((bar) => bar.data.map((xy) => { var _a, _b; return (Object.assign(Object.assign({}, bar), { group: (_b = (_a = bar.group) !== null && _a !== void 0 ? _a : bar.id) !== null && _b !== void 0 ? _b : bar.name, data: xy })); })); // bars excl segments.
|
|
26
|
+
const BAR_WIDTH = Math.floor((context.viewbox.y * (size / 100)) / new Set(bars.map((bar) => `${bar.data.y}|${bar.group}`)).size);
|
|
27
|
+
/* dataset is a single array of rect's with x1/x2/y1/y2; rect can be a segment of a bar (grouped) or a bar itself */
|
|
28
|
+
const dataset = context.domain.y
|
|
29
|
+
.flatMap(({ tick, coordinate }) => {
|
|
30
|
+
return Object.entries(ObjectUtils.groupBy(bars.filter((d) => d.data.y === tick), ({ group }) => group)).flatMap(([, barsForGroup], i, groups) => {
|
|
31
|
+
const y1 = coordinate + BAR_WIDTH * i - (BAR_WIDTH * Object.keys(groups).length) / 2;
|
|
32
|
+
return barsForGroup === null || barsForGroup === void 0 ? void 0 : barsForGroup.map((bar) => {
|
|
33
|
+
return Object.assign(Object.assign({}, bar), { x1: 0, x2: xForValue(bar.data.x), y1, y2: y1 + BAR_WIDTH });
|
|
34
|
+
}).map((segment, i, segments) => {
|
|
35
|
+
const previousX = segments.slice(0, i).reduce((acc, { x2 }) => acc + x2, 0);
|
|
36
|
+
return Object.assign(Object.assign({}, segment), { x1: previousX, x2: segment.x2 + previousX, radius: i === segments.length - 1 ? radius : undefined });
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
})
|
|
40
|
+
.filter((x) => !!x);
|
|
41
|
+
return (_jsxs("svg", { viewBox: `0 0 ${context.viewbox.x} ${context.viewbox.y}`, className: cx("[grid-area:graph] h-full w-full", className), preserveAspectRatio: "none", children: [dataset.map((_a, index) => {
|
|
42
|
+
var { x1, x2, y1, y2 } = _a, bar = __rest(_a, ["x1", "x2", "y1", "y2"]);
|
|
43
|
+
return (_jsx(Rect, { x1: x1, x2: x2, y2: y2, y1: y1, fill: String(bar.fill), stroke: bar.stroke, radius: bar.radius, glow: false, horizontal: true, className: "bars__rect" }, index));
|
|
43
44
|
}), children] }));
|
|
44
45
|
};
|
|
@@ -5,7 +5,8 @@ type Props = JSX.IntrinsicElements["path"] & {
|
|
|
5
5
|
y1: number;
|
|
6
6
|
y2: number;
|
|
7
7
|
radius?: number;
|
|
8
|
+
horizontal?: boolean;
|
|
8
9
|
glow?: boolean;
|
|
9
10
|
};
|
|
10
|
-
export declare const Rect: ({ x1, y1, x2, y2, radius, glow, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare const Rect: ({ x1, y1, x2, y2, radius, glow, horizontal, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
11
12
|
export {};
|
|
@@ -9,13 +9,13 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
9
9
|
}
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
13
13
|
import { useId } from "react";
|
|
14
14
|
import { LinearGradient } from "../../LinearGradient/LinearGradient";
|
|
15
15
|
import { PathUtils } from "../../../utils/path/path";
|
|
16
16
|
export const Rect = (_a) => {
|
|
17
17
|
var _b, _c;
|
|
18
|
-
var { x1, y1, x2, y2, radius, glow } = _a, rest = __rest(_a, ["x1", "y1", "x2", "y2", "radius", "glow"]);
|
|
18
|
+
var { x1, y1, x2, y2, radius, glow, horizontal = false } = _a, rest = __rest(_a, ["x1", "y1", "x2", "y2", "radius", "glow", "horizontal"]);
|
|
19
19
|
const fillId = useId();
|
|
20
20
|
const strokeId = useId();
|
|
21
21
|
const clip = useId();
|
|
@@ -23,6 +23,6 @@ export const Rect = (_a) => {
|
|
|
23
23
|
const glowId = useId();
|
|
24
24
|
const isFillGradient = (_b = rest.fill) === null || _b === void 0 ? void 0 : _b.includes("gradient");
|
|
25
25
|
const isGradientStroke = (_c = rest.stroke) === null || _c === void 0 ? void 0 : _c.includes("gradient");
|
|
26
|
-
const path = PathUtils.borderRadius({ x: x1, y: y1 }, { x: x2, y: y2 }, radius !== null && radius !== void 0 ? radius : 0);
|
|
27
|
-
return (_jsxs(
|
|
26
|
+
const path = PathUtils.borderRadius({ x: x1, y: y1 }, { x: x2, y: y2 }, radius !== null && radius !== void 0 ? radius : 0, horizontal);
|
|
27
|
+
return (_jsxs(_Fragment, { children: [_jsxs("defs", { children: [isFillGradient && rest.fill && _jsx(LinearGradient, { id: fillId, gradient: rest.fill }), isGradientStroke && rest.stroke && _jsx(LinearGradient, { id: strokeId, gradient: rest.stroke }), _jsx("path", { id: clipPath, d: path }), _jsx("clipPath", { id: clip, children: _jsx("use", { xlinkHref: "#" + clipPath }) })] }), glow && (_jsxs(_Fragment, { children: [_jsx("use", { xlinkHref: `#${glowId}`, filter: "blur(45px)", opacity: 0.5 }), _jsx("g", { id: glowId, children: _jsx("path", { fill: isFillGradient ? `url(#${fillId})` : rest.fill, stroke: "transparent", d: path, vectorEffect: "non-scaling-stroke", className: rest.className, strokeWidth: 5 }) })] })), _jsx("path", { fill: isFillGradient ? `url(#${fillId})` : rest.fill, stroke: isGradientStroke ? `url(#${strokeId})` : rest.stroke, d: path, vectorEffect: "non-scaling-stroke", strokeWidth: 10, className: rest.className, clipPath: `url(#${clip})` })] }));
|
|
28
28
|
};
|
|
@@ -26,22 +26,7 @@ export const Graph = ({ data = [], gap, children, interactions, style, className
|
|
|
26
26
|
id,
|
|
27
27
|
layout: { rows: "[graph] auto", columns: "[graph] auto" },
|
|
28
28
|
viewbox: { x: X_SCALE, y: Y_SCALE },
|
|
29
|
-
data:
|
|
30
|
-
? data.map((dp, i, dps) => {
|
|
31
|
-
var _a, _b, _c, _d, _e;
|
|
32
|
-
/*
|
|
33
|
-
Properties that can't be defaulted.
|
|
34
|
-
fill: - Fill can't be defaulted because Line graph uses fill: undefined to determine if it should be filled or not.
|
|
35
|
-
group - Group can't be defaulted to 'name' or 'id' because legend separates 'groups' by a divider.
|
|
36
|
-
*/
|
|
37
|
-
return Object.assign({ id: (_a = dp.id) !== null && _a !== void 0 ? _a : dp.name, stroke: (_b = dp.stroke) !== null && _b !== void 0 ? _b : ColorUtils.colorFor(i, dps.length), fill: dp.fill === true
|
|
38
|
-
? ((_c = dp.stroke) !== null && _c !== void 0 ? _c : ColorUtils.colorFor(i, dps.length))
|
|
39
|
-
: ((_e = (_d = dp.fill) !== null && _d !== void 0 ? _d : dp.stroke) !== null && _e !== void 0 ? _e : ColorUtils.colorFor(i, dps.length)) }, dp);
|
|
40
|
-
})
|
|
41
|
-
: data.map((dp, i, dps) => {
|
|
42
|
-
var _a, _b;
|
|
43
|
-
return Object.assign({ id: (_a = dp.id) !== null && _a !== void 0 ? _a : dp.name, stroke: (_b = dp.stroke) !== null && _b !== void 0 ? _b : ColorUtils.colorFor(i, dps.length) }, dp);
|
|
44
|
-
}),
|
|
29
|
+
data: data,
|
|
45
30
|
gap: { top: (_a = gap === null || gap === void 0 ? void 0 : gap.top) !== null && _a !== void 0 ? _a : 0, left: (_b = gap === null || gap === void 0 ? void 0 : gap.left) !== null && _b !== void 0 ? _b : 0, right: (_c = gap === null || gap === void 0 ? void 0 : gap.right) !== null && _c !== void 0 ? _c : 0, bottom: (_d = gap === null || gap === void 0 ? void 0 : gap.bottom) !== null && _d !== void 0 ? _d : 0 },
|
|
46
31
|
attributes: {
|
|
47
32
|
className: "@container/graph nanoplot relative grid h-full w-full isolate",
|
|
@@ -50,9 +35,34 @@ export const Graph = ({ data = [], gap, children, interactions, style, className
|
|
|
50
35
|
x: DomainUtils.x.ticks({ data, viewbox: { x: X_SCALE, y: Y_SCALE } }),
|
|
51
36
|
y: DomainUtils.y.ticks({ data, viewbox: { x: X_SCALE, y: Y_SCALE } }),
|
|
52
37
|
},
|
|
38
|
+
colorFor: ColorUtils.colorFor,
|
|
53
39
|
interactions: { hovered: (_e = interactions === null || interactions === void 0 ? void 0 : interactions.hovered) !== null && _e !== void 0 ? _e : [], pinned: (_f = interactions === null || interactions === void 0 ? void 0 : interactions.pinned) !== null && _f !== void 0 ? _f : [] },
|
|
54
40
|
});
|
|
55
|
-
return (_jsx("div", Object.assign({ id: id }, ctx.attributes, { style: Object.assign(Object.assign(Object.assign({}, style), ctx.attributes.style), { gridTemplateColumns: ctx.layout.columns, gridTemplateRows: ctx.layout.rows, padding: `${ctx.gap.top}px ${ctx.gap.right}px ${ctx.gap.bottom}px ${ctx.gap.left}px` }), className: cx(ctx.attributes.className, className), children: _jsx(GraphContextProvider, { value: ctx,
|
|
41
|
+
return (_jsx("div", Object.assign({ id: id }, ctx.attributes, { style: Object.assign(Object.assign(Object.assign({}, style), ctx.attributes.style), { gridTemplateColumns: ctx.layout.columns, gridTemplateRows: ctx.layout.rows, padding: `${ctx.gap.top}px ${ctx.gap.right}px ${ctx.gap.bottom}px ${ctx.gap.left}px` }), className: cx(ctx.attributes.className, className), children: _jsx(GraphContextProvider, { value: Object.assign(Object.assign({}, ctx), { data: GraphUtils.isXYData(data)
|
|
42
|
+
? data.map((dp, i, dps) => {
|
|
43
|
+
var _a, _b;
|
|
44
|
+
const fill = (() => {
|
|
45
|
+
var _a, _b, _c;
|
|
46
|
+
if (dp.fill === false)
|
|
47
|
+
return "transparent";
|
|
48
|
+
if (dp.fill === true)
|
|
49
|
+
return (_a = dp.stroke) !== null && _a !== void 0 ? _a : ctx.colorFor(i, dps.length);
|
|
50
|
+
return (_c = (_b = dp.fill) !== null && _b !== void 0 ? _b : dp.stroke) !== null && _c !== void 0 ? _c : ctx.colorFor(i, dps.length);
|
|
51
|
+
})();
|
|
52
|
+
return Object.assign({ id: (_a = dp.id) !== null && _a !== void 0 ? _a : dp.name, stroke: fill && !dp.stroke ? fill : ((_b = dp.stroke) !== null && _b !== void 0 ? _b : ctx.colorFor(i, dps.length)), fill: fill }, dp);
|
|
53
|
+
})
|
|
54
|
+
: data.map((dp, i, dps) => {
|
|
55
|
+
var _a, _b;
|
|
56
|
+
const fill = (() => {
|
|
57
|
+
var _a, _b, _c;
|
|
58
|
+
if (dp.fill === false)
|
|
59
|
+
return "transparent";
|
|
60
|
+
if (dp.fill === true)
|
|
61
|
+
return (_a = dp.stroke) !== null && _a !== void 0 ? _a : ctx.colorFor(i, dps.length);
|
|
62
|
+
return (_c = (_b = dp.fill) !== null && _b !== void 0 ? _b : dp.stroke) !== null && _c !== void 0 ? _c : ctx.colorFor(i, dps.length);
|
|
63
|
+
})();
|
|
64
|
+
return Object.assign({ id: (_a = dp.id) !== null && _a !== void 0 ? _a : dp.name, stroke: fill && !dp.stroke ? fill : ((_b = dp.stroke) !== null && _b !== void 0 ? _b : ctx.colorFor(i, dps.length)), fill: fill }, dp);
|
|
65
|
+
}) }), children: children }) })));
|
|
56
66
|
};
|
|
57
67
|
Graph.Row = (_a) => {
|
|
58
68
|
var { children } = _a, rest = __rest(_a, ["children"]);
|
|
@@ -4,7 +4,6 @@ import { useGraph } from "../../hooks/use-graph/use-graph";
|
|
|
4
4
|
import { GraphUtils } from "../../utils/graph/graph";
|
|
5
5
|
import { PieLoading } from "./components/PieLoading";
|
|
6
6
|
import { PieEmpty } from "./components/PieEmpty";
|
|
7
|
-
import { ColorUtils } from "../../utils/color/color";
|
|
8
7
|
import { MathUtils } from "../../utils/math/math";
|
|
9
8
|
import { PathUtils } from "../../utils/path/path";
|
|
10
9
|
import { cx } from "../../utils/cx/cx";
|
|
@@ -29,10 +28,7 @@ export const Pie = ({ donut, labels = true, loading, className, children }) => {
|
|
|
29
28
|
}
|
|
30
29
|
const paths = data
|
|
31
30
|
.toSorted((a, b) => Number(b.value) - Number(a.value))
|
|
32
|
-
.map((segment,
|
|
33
|
-
var _a, _b;
|
|
34
|
-
return (Object.assign(Object.assign({}, segment), { id: (_a = segment.name) !== null && _a !== void 0 ? _a : segment.name, value: Number(segment.value), stroke: (_b = segment.stroke) !== null && _b !== void 0 ? _b : ColorUtils.colorFor(i, segments.length), fill: typeof segment.fill === "string" ? segment.fill : ColorUtils.colorFor(i, segments.length) /* boolean fill not supported */ }));
|
|
35
|
-
})
|
|
31
|
+
.map((segment) => (Object.assign(Object.assign({}, segment), { value: Number(segment.value) })))
|
|
36
32
|
.map((segment, i, segments) => {
|
|
37
33
|
return Object.assign(Object.assign({}, segment), { previousTotalDegrees: segments
|
|
38
34
|
.slice(0, i)
|
|
@@ -62,8 +58,8 @@ export const Pie = ({ donut, labels = true, loading, className, children }) => {
|
|
|
62
58
|
const isCollisionFlipped = collisionPosition > 2;
|
|
63
59
|
const endLabelLine = PathUtils.polarToCartesian(CX, CX, PIE_RADIUS * (1.2 + 0.1 * ((isCollisionFlipped ? collisionPosition - 4 : collisionPosition) + 1)), segment.previousTotalDegrees + segment.degrees / (isSinglePie ? 0.75 : 2) + 180);
|
|
64
60
|
const isRightAligned = isCollisionFlipped || MathUtils.scale(endLabelLine.x, viewbox.x, 100) > 50;
|
|
65
|
-
const label = labels && (_jsxs(_Fragment, { children: [_jsx("path", { className: `stroke-[5] fill-transparent group-hover:stroke-[15] transform origin-center rotate-180 pie__segment-${segment.name}-path`, d: `M ${startLabelLine.x} ${startLabelLine.y} L ${endLabelLine.x} ${endLabelLine.y} ${isRightAligned ? "l 100 0" : "l -100 0"}`, stroke: segment.fill }, segment.name), _jsx("g", { className: cx(`text-7xl font-bold pointer-events-auto transform origin-center rotate-180 pie__segment-${segment.name}-label`), children: _jsxs("text", { "aria-label": `${segment.name}-label`, y: endLabelLine.y, x: endLabelLine.x, stroke: segment.stroke, fill: segment.fill, dx: isRightAligned ? 140 : -140, className: "[font-size-adjust:0.08]", style: { textAnchor: isRightAligned ? "start" : "end" }, children: [_jsx("tspan", { children: segment.name.length > 20 ? segment.name.slice(0, 20) + "..." : segment.name }), _jsxs("tspan", { dx: 25, children: [new Intl.NumberFormat("en-US", { minimumFractionDigits: 0, maximumFractionDigits: 2 }).format((segment.value / total) * 100), "%"] })] }) })] }));
|
|
66
|
-
const path = (_jsx("g", { className: "transform origin-center rotate-180", children: _jsx("path", { className: cx(`transition-all duration-200 ease-in-out scale-100 origin-center pointer-events-auto pie__segment-${segment.name}-path`, !donut && `group-hover:drop-shadow-[0_0_50px_rgba(0,0,0,0.5)] hover:scale-[1.02]`), d: PathUtils.describeArc(CX, CX, PIE_RADIUS, segment.previousTotalDegrees, segment.previousTotalDegrees + segment.degrees) + ` L ${CX} ${CX} Z`, fill: segment.fill, "data-degrees": segment.degrees }) }, i));
|
|
61
|
+
const label = labels && (_jsxs(_Fragment, { children: [_jsx("path", { className: `stroke-[5] fill-transparent group-hover:stroke-[15] transform origin-center rotate-180 pie__segment-${segment.name}-path`, d: `M ${startLabelLine.x} ${startLabelLine.y} L ${endLabelLine.x} ${endLabelLine.y} ${isRightAligned ? "l 100 0" : "l -100 0"}`, stroke: String(segment.fill) }, segment.name), _jsx("g", { className: cx(`text-7xl font-bold pointer-events-auto transform origin-center rotate-180 pie__segment-${segment.name}-label`), children: _jsxs("text", { "aria-label": `${segment.name}-label`, y: endLabelLine.y, x: endLabelLine.x, stroke: segment.stroke, fill: String(segment.fill), dx: isRightAligned ? 140 : -140, className: "[font-size-adjust:0.08]", style: { textAnchor: isRightAligned ? "start" : "end" }, children: [_jsx("tspan", { children: segment.name.length > 20 ? segment.name.slice(0, 20) + "..." : segment.name }), _jsxs("tspan", { dx: 25, children: [new Intl.NumberFormat("en-US", { minimumFractionDigits: 0, maximumFractionDigits: 2 }).format((segment.value / total) * 100), "%"] })] }) })] }));
|
|
62
|
+
const path = (_jsx("g", { className: "transform origin-center rotate-180", children: _jsx("path", { className: cx(`transition-all duration-200 ease-in-out scale-100 origin-center pointer-events-auto pie__segment-${segment.name}-path`, !donut && `group-hover:drop-shadow-[0_0_50px_rgba(0,0,0,0.5)] hover:scale-[1.02]`), d: PathUtils.describeArc(CX, CX, PIE_RADIUS, segment.previousTotalDegrees, segment.previousTotalDegrees + segment.degrees) + ` L ${CX} ${CX} Z`, fill: String(segment.fill), "data-degrees": segment.degrees }) }, i));
|
|
67
63
|
return {
|
|
68
64
|
id: segment.id,
|
|
69
65
|
path,
|
|
@@ -44,6 +44,7 @@ export declare const XAxis: {
|
|
|
44
44
|
y: number;
|
|
45
45
|
};
|
|
46
46
|
data: import("../../hooks/use-graph/use-graph").XYDataset | import("../../hooks/use-graph/use-graph").SegmentDataset;
|
|
47
|
+
colorFor: (index: number, datapoints: number) => string;
|
|
47
48
|
interactions: {
|
|
48
49
|
hovered: string[];
|
|
49
50
|
pinned: string[];
|
|
@@ -42,6 +42,7 @@ export declare const YAxis: {
|
|
|
42
42
|
y: number;
|
|
43
43
|
};
|
|
44
44
|
data: import("../../hooks/use-graph/use-graph").XYDataset | import("../../hooks/use-graph/use-graph").SegmentDataset;
|
|
45
|
+
colorFor: (index: number, datapoints: number) => string;
|
|
45
46
|
interactions: {
|
|
46
47
|
hovered: string[];
|
|
47
48
|
pinned: string[];
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
export declare const ColorUtils: {
|
|
2
|
+
schemes: {
|
|
3
|
+
sunset: (index: number) => string;
|
|
4
|
+
segmented: (index: number) => string;
|
|
5
|
+
regular: (index: number, length: number) => string;
|
|
6
|
+
};
|
|
2
7
|
colorFor: (index: number, length?: number) => string;
|
|
3
8
|
between: (color1: string, color2: string, percent: number) => string;
|
|
4
9
|
textFor: (color: string) => string;
|
|
@@ -12,6 +12,13 @@ const COLORS = [
|
|
|
12
12
|
{ fill: "#696aff", color: "white" },
|
|
13
13
|
];
|
|
14
14
|
export const ColorUtils = {
|
|
15
|
+
schemes: {
|
|
16
|
+
sunset: (index) => {
|
|
17
|
+
return ["#fecf03", "#fea81f", "#f48444", "#e4655f", "#cf4478", "#b32492", "#9224a5", "#6a22aa", "#421da0", "#0a1789"][index];
|
|
18
|
+
},
|
|
19
|
+
segmented: (index) => ColorUtils.colorFor(index) /* don't take into account length of dataset */,
|
|
20
|
+
regular: (index, length) => ColorUtils.colorFor(index, length),
|
|
21
|
+
},
|
|
15
22
|
colorFor: (index, length) => {
|
|
16
23
|
if (length) {
|
|
17
24
|
/* When length is provided, the goal is to pick colors that contrast well with each other for that many data points.*/
|
|
@@ -42,28 +42,38 @@ export const DomainUtils = {
|
|
|
42
42
|
to: "auto",
|
|
43
43
|
jumps: "auto",
|
|
44
44
|
}) => {
|
|
45
|
-
var _a, _b, _c, _d, _e
|
|
45
|
+
var _a, _b, _c, _d, _e;
|
|
46
46
|
if (!GraphUtils.isXYData(data) || data.length === 0)
|
|
47
47
|
return [];
|
|
48
48
|
const isDateTime = ((_c = (_b = (_a = data[0]) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.x) instanceof Date;
|
|
49
|
-
|
|
50
|
-
if (typeof ((_e = (_d = data[0]) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e[0].x) === "string" /* categorical dataset */ || isDistinctValues) {
|
|
51
|
-
const isCategoricalStrings = typeof ((_g = (_f = data[0]) === null || _f === void 0 ? void 0 : _f.data) === null || _g === void 0 ? void 0 : _g[0].x) === "string";
|
|
49
|
+
if (typeof ((_e = (_d = data[0]) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e[0].x) === "string" /* Categorical */) {
|
|
52
50
|
const xValues = Array.from(new Set(data.flatMap((line) => line.data.map((d) => d.x))));
|
|
53
51
|
const tickWidth = viewbox.x / xValues.length;
|
|
54
|
-
if (isCategoricalStrings) {
|
|
55
|
-
return xValues.map((tick, i) => ({
|
|
56
|
-
tick,
|
|
57
|
-
coordinate: i * tickWidth + tickWidth / 2,
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
52
|
return xValues.map((tick, i) => ({
|
|
61
53
|
tick,
|
|
62
|
-
coordinate:
|
|
54
|
+
coordinate: i * tickWidth + tickWidth / 2,
|
|
63
55
|
}));
|
|
64
56
|
}
|
|
65
57
|
const min = Math.min(...data.flatMap((line) => line.data.map((d) => +d.x)));
|
|
66
|
-
const max =
|
|
58
|
+
const max = (() => {
|
|
59
|
+
const grouped = data.some((d) => Boolean(d.group));
|
|
60
|
+
if (!grouped)
|
|
61
|
+
return Math.max(...data.flatMap((line) => line.data.map((d) => +d.x)));
|
|
62
|
+
/*
|
|
63
|
+
If it's grouped we need to sum the 'y' values for everyone in the same group for the same 'x'
|
|
64
|
+
This is the case for stacked-bars.
|
|
65
|
+
groupBy group; then group by x
|
|
66
|
+
Math.max(Sum y)
|
|
67
|
+
*/
|
|
68
|
+
return Object.entries(ObjectUtils.groupBy(data, ({ group }, index) => group !== null && group !== void 0 ? group : `|i${index}`)).reduce((max1, [, values]) => {
|
|
69
|
+
var _a;
|
|
70
|
+
const dataset = ObjectUtils.groupBy((_a = values === null || values === void 0 ? void 0 : values.flatMap(({ data }) => data)) !== null && _a !== void 0 ? _a : [], ({ y }) => y.toString());
|
|
71
|
+
const maxForDataset = Object.entries(dataset).reduce((max2, [, values2]) => {
|
|
72
|
+
return Math.max(max2, (values2 !== null && values2 !== void 0 ? values2 : []).reduce((total, { x }) => total + +x, 0));
|
|
73
|
+
}, 0);
|
|
74
|
+
return Math.max(max1, maxForDataset);
|
|
75
|
+
}, 0);
|
|
76
|
+
})();
|
|
67
77
|
if (min === max)
|
|
68
78
|
return [{ tick: min, coordinate: viewbox.x / 2 }];
|
|
69
79
|
const MIN = (() => {
|
|
@@ -134,7 +144,7 @@ export const DomainUtils = {
|
|
|
134
144
|
const distance = mx - mn;
|
|
135
145
|
if (jumps === "auto") {
|
|
136
146
|
/* pick number of jumps that doesn't result in a 'tick' being a decimal value if possible */
|
|
137
|
-
return ((_a = [
|
|
147
|
+
return ((_a = [6, 5, 7, 8, 9, 5, 4, 10, 11].find((jump) => distance % jump === 0)) !== null && _a !== void 0 ? _a : 9) + 1;
|
|
138
148
|
}
|
|
139
149
|
return jumps;
|
|
140
150
|
})();
|
|
@@ -147,6 +147,9 @@ export const PathUtils = {
|
|
|
147
147
|
},
|
|
148
148
|
borderRadius: (xy1, xy2, radius, horizontal = false) => {
|
|
149
149
|
const middle = horizontal ? xy2.y - xy1.y : xy2.x - xy1.x;
|
|
150
|
+
if (horizontal) {
|
|
151
|
+
return `M ${xy1.x} ${xy1.y} H ${xy2.x - radius} Q ${xy2.x} ${xy1.y} ${xy2.x} ${xy1.y + (radius > middle / 2 ? middle / 2 : radius)} L ${xy2.x} ${xy2.y - (radius > middle / 2 ? middle / 2 : radius)} Q ${xy2.x} ${xy2.y} ${xy2.x - radius} ${xy2.y} H ${xy1.x}`;
|
|
152
|
+
}
|
|
150
153
|
return `M ${xy1.x} ${xy1.y} V ${xy2.y + radius + radius} Q ${xy1.x} ${xy2.y} ${xy1.x + (radius > middle / 2 ? middle / 2 : radius)} ${xy2.y} L ${xy2.x - (radius > middle / 2 ? middle / 2 : radius)} ${xy2.y} Q ${xy2.x} ${xy2.y} ${xy2.x} ${xy2.y + radius + radius} L ${xy2.x} ${xy1.y} Z`;
|
|
151
154
|
},
|
|
152
155
|
};
|