@mozaic-ds/web-components 0.7.0 → 0.9.0-beta
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/package.json +1 -1
- package/public/ClickOutside-63071e7a.js +15 -1
- package/public/ClickOutside-63071e7a.js.map +1 -1
- package/public/DataTableDefaultAction.nested-c37a5d51.js +762 -0
- package/public/DataTableDefaultAction.nested-c37a5d51.js.map +1 -0
- package/public/DataTableUtilities-313a448d.js +386 -0
- package/public/DataTableUtilities-313a448d.js.map +1 -0
- package/public/EventForward-8492ff62.js +109 -1
- package/public/EventForward-8492ff62.js.map +1 -1
- package/public/EventHandler-02058705.js +15 -1
- package/public/EventHandler-02058705.js.map +1 -1
- package/public/adeo/{DataTableDefaultAction.nested-90536fe3.js → DataTableDefaultAction.nested-ac2e3dbe.js} +2 -2
- package/public/adeo/{DataTableDefaultAction.nested-90536fe3.js.map → DataTableDefaultAction.nested-ac2e3dbe.js.map} +1 -1
- package/public/adeo/DataTableUtilities-313a448d.js +2 -0
- package/public/adeo/DataTableUtilities-313a448d.js.map +1 -0
- package/public/adeo/bundle.js +5 -0
- package/public/adeo/components/barchart/BarChart.svelte +3 -4
- package/public/adeo/components/chart/BarChart.js +1 -1
- package/public/adeo/components/chart/BarChart.js.map +1 -1
- package/public/adeo/components/datatable/DataTable.js +1 -1
- package/public/adeo/components/datatable/DataTable.js.map +1 -1
- package/public/adeo/components/datatable/DataTable.svelte +12 -0
- package/public/adeo/components/datatable/DataTableDefaultAction.nested.js +1 -1
- package/public/adeo/components/datatable/DataTableDefaultEdtion.nested.js +1 -1
- package/public/adeo/components/datatable/DataTableDefaultFilterTags.nested.js +1 -1
- package/public/adeo/components/datatable/DataTableFooter.nested.js +1 -1
- package/public/adeo/components/datatable/data.d.ts.map +1 -1
- package/public/adeo/components/datatable/datatable.types.d.ts +9 -2
- package/public/adeo/components/datatable/datatable.types.d.ts.map +1 -1
- package/public/adeo/components/header/Header.js +1 -1
- package/public/adeo/components/header/Header.js.map +1 -1
- package/public/adeo/components/header/Header.svelte +2 -2
- package/public/adeo/components/kpi/Kpi.js +2 -0
- package/public/adeo/components/kpi/Kpi.js.map +1 -0
- package/public/adeo/components/kpi/Kpi.svelte +232 -0
- package/public/adeo/components/sidebar/Sidebar.js +1 -1
- package/public/adeo/components/sidebar/Sidebar.js.map +1 -1
- package/public/adeo/components/sidebar/Sidebar.svelte +1 -1
- package/public/adeo/icons-storybook.js +16 -0
- package/public/adeo/main.d.ts +1 -0
- package/public/adeo/main.d.ts.map +1 -1
- package/public/adeo/utilities/DataTableUtilities.d.ts.map +1 -1
- package/public/adeo/utilities/DataTableUtilities.ts +22 -2
- package/public/array-5b770a93.js +13 -1
- package/public/array-5b770a93.js.map +1 -1
- package/public/axis-fbc0f7b5.js +174 -1
- package/public/axis-fbc0f7b5.js.map +1 -1
- package/public/band-d7a07d2c.js +186 -1
- package/public/band-d7a07d2c.js.map +1 -1
- package/public/bricoman/{DataTableDefaultAction.nested-928e5e2d.js → DataTableDefaultAction.nested-bcc599d1.js} +2 -2
- package/public/bricoman/{DataTableDefaultAction.nested-928e5e2d.js.map → DataTableDefaultAction.nested-bcc599d1.js.map} +1 -1
- package/public/bricoman/DataTableUtilities-313a448d.js +2 -0
- package/public/bricoman/DataTableUtilities-313a448d.js.map +1 -0
- package/public/bricoman/bundle.js +5 -0
- package/public/bricoman/components/barchart/BarChart.svelte +3 -4
- package/public/bricoman/components/chart/BarChart.js +1 -1
- package/public/bricoman/components/chart/BarChart.js.map +1 -1
- package/public/bricoman/components/datatable/DataTable.js +1 -1
- package/public/bricoman/components/datatable/DataTable.js.map +1 -1
- package/public/bricoman/components/datatable/DataTable.svelte +12 -0
- package/public/bricoman/components/datatable/DataTableDefaultAction.nested.js +1 -1
- package/public/bricoman/components/datatable/DataTableDefaultEdtion.nested.js +1 -1
- package/public/bricoman/components/datatable/DataTableDefaultFilterTags.nested.js +1 -1
- package/public/bricoman/components/datatable/DataTableFooter.nested.js +1 -1
- package/public/bricoman/components/datatable/data.d.ts.map +1 -1
- package/public/bricoman/components/datatable/datatable.types.d.ts +9 -2
- package/public/bricoman/components/datatable/datatable.types.d.ts.map +1 -1
- package/public/bricoman/components/header/Header.js +1 -1
- package/public/bricoman/components/header/Header.js.map +1 -1
- package/public/bricoman/components/header/Header.svelte +2 -2
- package/public/bricoman/components/kpi/Kpi.js +2 -0
- package/public/bricoman/components/kpi/Kpi.js.map +1 -0
- package/public/bricoman/components/kpi/Kpi.svelte +232 -0
- package/public/bricoman/components/sidebar/Sidebar.js +1 -1
- package/public/bricoman/components/sidebar/Sidebar.js.map +1 -1
- package/public/bricoman/components/sidebar/Sidebar.svelte +1 -1
- package/public/bricoman/icons-storybook.js +16 -0
- package/public/bricoman/main.d.ts +1 -0
- package/public/bricoman/main.d.ts.map +1 -1
- package/public/bricoman/utilities/DataTableUtilities.d.ts.map +1 -1
- package/public/bricoman/utilities/DataTableUtilities.ts +22 -2
- package/public/bundle.js +5 -0
- package/public/components/accordion/Accordion.js +365 -1
- package/public/components/accordion/Accordion.js.map +1 -1
- package/public/components/autocomplete/Autocomplete.js +1515 -1
- package/public/components/autocomplete/Autocomplete.js.map +1 -1
- package/public/components/badge/Badge.js +155 -1
- package/public/components/badge/Badge.js.map +1 -1
- package/public/components/badge/Badge.nested.js +101 -1
- package/public/components/badge/Badge.nested.js.map +1 -1
- package/public/components/barchart/BarChart.svelte +3 -4
- package/public/components/breadcrumb/Breadcrumb.js +372 -1
- package/public/components/breadcrumb/Breadcrumb.js.map +1 -1
- package/public/components/breadcrumb/Breadcrumb.nested.js +319 -1
- package/public/components/breadcrumb/Breadcrumb.nested.js.map +1 -1
- package/public/components/button/Button.js +1138 -1
- package/public/components/button/Button.js.map +1 -1
- package/public/components/card/Card.js +369 -1
- package/public/components/card/Card.js.map +1 -1
- package/public/components/chart/BarChart.js +583 -1
- package/public/components/chart/BarChart.js.map +1 -1
- package/public/components/chart/Donut.js +1189 -1
- package/public/components/chart/Donut.js.map +1 -1
- package/public/components/chart/GroupedBarChart.js +750 -1
- package/public/components/chart/GroupedBarChart.js.map +1 -1
- package/public/components/chart/LineChart.js +1731 -1
- package/public/components/chart/LineChart.js.map +1 -1
- package/public/components/chart/Radar.js +729 -1
- package/public/components/chart/Radar.js.map +1 -1
- package/public/components/chart/StackedBarChart.js +745 -1
- package/public/components/chart/StackedBarChart.js.map +1 -1
- package/public/components/checkbox/Checkbox.js +307 -1
- package/public/components/checkbox/Checkbox.js.map +1 -1
- package/public/components/checkboxgroup/checkboxGroup.js +404 -1
- package/public/components/checkboxgroup/checkboxGroup.js.map +1 -1
- package/public/components/datatable/DataTable.js +3098 -1
- package/public/components/datatable/DataTable.js.map +1 -1
- package/public/components/datatable/DataTable.svelte +12 -0
- package/public/components/datatable/DataTableDefaultAction.nested.js +4 -1
- package/public/components/datatable/DataTableDefaultAction.nested.js.map +1 -1
- package/public/components/datatable/DataTableDefaultEdtion.nested.js +164 -1
- package/public/components/datatable/DataTableDefaultEdtion.nested.js.map +1 -1
- package/public/components/datatable/DataTableDefaultFilterTags.nested.js +380 -1
- package/public/components/datatable/DataTableDefaultFilterTags.nested.js.map +1 -1
- package/public/components/datatable/DataTableDefaultSelection.nested.js +424 -1
- package/public/components/datatable/DataTableDefaultSelection.nested.js.map +1 -1
- package/public/components/datatable/DataTableDefaultSelectionLabel.nested.js +263 -1
- package/public/components/datatable/DataTableDefaultSelectionLabel.nested.js.map +1 -1
- package/public/components/datatable/DataTableFooter.nested.js +637 -1
- package/public/components/datatable/DataTableFooter.nested.js.map +1 -1
- package/public/components/datatable/data.d.ts.map +1 -1
- package/public/components/datatable/datatable.types.d.ts +9 -2
- package/public/components/datatable/datatable.types.d.ts.map +1 -1
- package/public/components/dropdown/Dropdown.js +1426 -1
- package/public/components/dropdown/Dropdown.js.map +1 -1
- package/public/components/field/Field.js +375 -1
- package/public/components/field/Field.js.map +1 -1
- package/public/components/fileuploader/FileUploader.js +603 -1
- package/public/components/fileuploader/FileUploader.js.map +1 -1
- package/public/components/fileuploader/ResultFile.nested.js +344 -1
- package/public/components/fileuploader/ResultFile.nested.js.map +1 -1
- package/public/components/flag/Flag.js +174 -1
- package/public/components/flag/Flag.js.map +1 -1
- package/public/components/header/Header.js +918 -1
- package/public/components/header/Header.js.map +1 -1
- package/public/components/header/Header.svelte +2 -2
- package/public/components/hero/Hero.js +271 -1
- package/public/components/hero/Hero.js.map +1 -1
- package/public/components/kpi/Kpi.js +405 -0
- package/public/components/kpi/Kpi.js.map +1 -0
- package/public/components/kpi/Kpi.svelte +232 -0
- package/public/components/layer/Layer.js +471 -1
- package/public/components/layer/Layer.js.map +1 -1
- package/public/components/link/Link.js +380 -1
- package/public/components/link/Link.js.map +1 -1
- package/public/components/listbox/Listbox.js +595 -1
- package/public/components/listbox/Listbox.js.map +1 -1
- package/public/components/listbox/Listbox.nested.js +629 -1
- package/public/components/listbox/Listbox.nested.js.map +1 -1
- package/public/components/loader/Loader.js +246 -1
- package/public/components/loader/Loader.js.map +1 -1
- package/public/components/loader/Loader.nested.js +176 -1
- package/public/components/loader/Loader.nested.js.map +1 -1
- package/public/components/modal/Modal.js +395 -1
- package/public/components/modal/Modal.js.map +1 -1
- package/public/components/notification/Notification.js +458 -1
- package/public/components/notification/Notification.js.map +1 -1
- package/public/components/optionbutton/OptionButton.js +316 -1
- package/public/components/optionbutton/OptionButton.js.map +1 -1
- package/public/components/overlay/Overlay.js +104 -1
- package/public/components/overlay/Overlay.js.map +1 -1
- package/public/components/overlay/OverlayLoader.js +151 -1
- package/public/components/overlay/OverlayLoader.js.map +1 -1
- package/public/components/pagination/Pagination.js +613 -1
- package/public/components/pagination/Pagination.js.map +1 -1
- package/public/components/passwordinput/PasswordInput.js +291 -1
- package/public/components/passwordinput/PasswordInput.js.map +1 -1
- package/public/components/phonenumber/PhoneNumber.js +6894 -1
- package/public/components/phonenumber/PhoneNumber.js.map +1 -1
- package/public/components/price/Price.js +768 -1
- package/public/components/price/Price.js.map +1 -1
- package/public/components/progressbar/ProgressBar.js +278 -1
- package/public/components/progressbar/ProgressBar.js.map +1 -1
- package/public/components/quantityselector/QuantitySelector.js +397 -1
- package/public/components/quantityselector/QuantitySelector.js.map +1 -1
- package/public/components/radio/Radio.js +273 -1
- package/public/components/radio/Radio.js.map +1 -1
- package/public/components/radiogroup/RadioGroup.js +414 -1
- package/public/components/radiogroup/RadioGroup.js.map +1 -1
- package/public/components/ratings/StarsInput.js +292 -1
- package/public/components/ratings/StarsInput.js.map +1 -1
- package/public/components/ratings/StarsResult.js +246 -1
- package/public/components/ratings/StarsResult.js.map +1 -1
- package/public/components/select/Select.js +451 -1
- package/public/components/select/Select.js.map +1 -1
- package/public/components/sidebar/Sidebar.js +784 -1
- package/public/components/sidebar/Sidebar.js.map +1 -1
- package/public/components/sidebar/Sidebar.svelte +1 -1
- package/public/components/sidebar/sidebar-feature-group.nested.js +594 -1
- package/public/components/sidebar/sidebar-feature-group.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-feature.nested.js +402 -1
- package/public/components/sidebar/sidebar-feature.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-section.nested.js +394 -1
- package/public/components/sidebar/sidebar-section.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-segment.nested.js +200 -1
- package/public/components/sidebar/sidebar-segment.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-separator.nested.js +49 -1
- package/public/components/sidebar/sidebar-separator.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-sub-features.nested.js +312 -1
- package/public/components/sidebar/sidebar-sub-features.nested.js.map +1 -1
- package/public/components/sidebar/sidebar-user.nested.js +733 -1
- package/public/components/sidebar/sidebar-user.nested.js.map +1 -1
- package/public/components/stepper/Stepper.js +371 -1
- package/public/components/stepper/Stepper.js.map +1 -1
- package/public/components/tabs/Tabs.js +615 -1
- package/public/components/tabs/Tabs.js.map +1 -1
- package/public/components/tabs/Tabs.nested.js +472 -1
- package/public/components/tabs/Tabs.nested.js.map +1 -1
- package/public/components/tag/Tag.js +665 -1
- package/public/components/tag/Tag.js.map +1 -1
- package/public/components/tag/Tag.nested.js +554 -1
- package/public/components/tag/Tag.nested.js.map +1 -1
- package/public/components/taglist/TagList.js +475 -1
- package/public/components/taglist/TagList.js.map +1 -1
- package/public/components/textarea/Textarea.js +303 -1
- package/public/components/textarea/Textarea.js.map +1 -1
- package/public/components/textinput/Textinput.js +497 -1
- package/public/components/textinput/Textinput.js.map +1 -1
- package/public/components/textinput/Textinput.nested.js +320 -1
- package/public/components/textinput/Textinput.nested.js.map +1 -1
- package/public/components/toggle/Toggle.js +278 -1
- package/public/components/toggle/Toggle.js.map +1 -1
- package/public/components/tooltip/Tooltip.js +173 -1
- package/public/components/tooltip/Tooltip.js.map +1 -1
- package/public/icons-storybook.js +16 -0
- package/public/index-c33b3772.js +873 -1
- package/public/index-c33b3772.js.map +1 -1
- package/public/linear-f46d7e9e.js +700 -1
- package/public/linear-f46d7e9e.js.map +1 -1
- package/public/main.d.ts +1 -0
- package/public/main.d.ts.map +1 -1
- package/public/path-1b5da959.js +186 -1
- package/public/path-1b5da959.js.map +1 -1
- package/public/sidebar-service-275bf9ef.js +129 -1
- package/public/sidebar-service-275bf9ef.js.map +1 -1
- package/public/symbol-b05a6e2b.js +169 -1
- package/public/symbol-b05a6e2b.js.map +1 -1
- package/public/transform-15d69d5d.js +2743 -1
- package/public/transform-15d69d5d.js.map +1 -1
- package/public/utilities/DataTableUtilities.d.ts.map +1 -1
- package/public/utilities/DataTableUtilities.ts +22 -2
- package/public/utilities/EventForward.js +136 -1
- package/public/utilities/EventForward.js.map +1 -1
- package/public/utilities/EventHandler.js +36 -1
- package/public/utilities/EventHandler.js.map +1 -1
- package/public/utilities/components/datatable/data.d.ts.map +1 -1
- package/public/utilities/components/datatable/datatable.types.d.ts +9 -2
- package/public/utilities/components/datatable/datatable.types.d.ts.map +1 -1
- package/public/utilities/main.d.ts +1 -0
- package/public/utilities/main.d.ts.map +1 -1
- package/public/utilities/stories/datatable/DataTable.stories.d.ts.map +1 -1
- package/public/utilities/stories/header/Header.stories.d.ts.map +1 -1
- package/public/utilities/stories/kpi/kpi.stories.d.ts +7 -0
- package/public/utilities/stories/kpi/kpi.stories.d.ts.map +1 -0
- package/public/utilities/utilities/DataTableUtilities.d.ts.map +1 -1
- package/public/DataTableDefaultAction.nested-483f8bb0.js +0 -2
- package/public/DataTableDefaultAction.nested-483f8bb0.js.map +0 -1
- package/public/DataTableUtilities-60220c78.js +0 -2
- package/public/DataTableUtilities-60220c78.js.map +0 -1
- package/public/adeo/DataTableUtilities-60220c78.js +0 -2
- package/public/adeo/DataTableUtilities-60220c78.js.map +0 -1
- package/public/bricoman/DataTableUtilities-60220c78.js +0 -2
- package/public/bricoman/DataTableUtilities-60220c78.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Donut.js","sources":["../../../node_modules/d3-shape/src/arc.js","../../../node_modules/d3-shape/src/descending.js","../../../node_modules/d3-shape/src/identity.js","../../../src/components/chart/Donut.svelte","../../../node_modules/d3-shape/src/pie.js"],"sourcesContent":["import constant from \"./constant.js\";\nimport {abs, acos, asin, atan2, cos, epsilon, halfPi, max, min, pi, sin, sqrt, tau} from \"./math.js\";\nimport {withPath} from \"./path.js\";\n\nfunction arcInnerRadius(d) {\n return d.innerRadius;\n}\n\nfunction arcOuterRadius(d) {\n return d.outerRadius;\n}\n\nfunction arcStartAngle(d) {\n return d.startAngle;\n}\n\nfunction arcEndAngle(d) {\n return d.endAngle;\n}\n\nfunction arcPadAngle(d) {\n return d && d.padAngle; // Note: optional!\n}\n\nfunction intersect(x0, y0, x1, y1, x2, y2, x3, y3) {\n var x10 = x1 - x0, y10 = y1 - y0,\n x32 = x3 - x2, y32 = y3 - y2,\n t = y32 * x10 - x32 * y10;\n if (t * t < epsilon) return;\n t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n return [x0 + t * x10, y0 + t * y10];\n}\n\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0, y0, x1, y1, r1, rc, cw) {\n var x01 = x0 - x1,\n y01 = y0 - y1,\n lo = (cw ? rc : -rc) / sqrt(x01 * x01 + y01 * y01),\n ox = lo * y01,\n oy = -lo * x01,\n x11 = x0 + ox,\n y11 = y0 + oy,\n x10 = x1 + ox,\n y10 = y1 + oy,\n x00 = (x11 + x10) / 2,\n y00 = (y11 + y10) / 2,\n dx = x10 - x11,\n dy = y10 - y11,\n d2 = dx * dx + dy * dy,\n r = r1 - rc,\n D = x11 * y10 - x10 * y11,\n d = (dy < 0 ? -1 : 1) * sqrt(max(0, r * r * d2 - D * D)),\n cx0 = (D * dy - dx * d) / d2,\n cy0 = (-D * dx - dy * d) / d2,\n cx1 = (D * dy + dx * d) / d2,\n cy1 = (-D * dx + dy * d) / d2,\n dx0 = cx0 - x00,\n dy0 = cy0 - y00,\n dx1 = cx1 - x00,\n dy1 = cy1 - y00;\n\n // Pick the closer of the two intersection points.\n // TODO Is there a faster way to determine which intersection to use?\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n\n return {\n cx: cx0,\n cy: cy0,\n x01: -ox,\n y01: -oy,\n x11: cx0 * (r1 / r - 1),\n y11: cy0 * (r1 / r - 1)\n };\n}\n\nexport default function() {\n var innerRadius = arcInnerRadius,\n outerRadius = arcOuterRadius,\n cornerRadius = constant(0),\n padRadius = null,\n startAngle = arcStartAngle,\n endAngle = arcEndAngle,\n padAngle = arcPadAngle,\n context = null,\n path = withPath(arc);\n\n function arc() {\n var buffer,\n r,\n r0 = +innerRadius.apply(this, arguments),\n r1 = +outerRadius.apply(this, arguments),\n a0 = startAngle.apply(this, arguments) - halfPi,\n a1 = endAngle.apply(this, arguments) - halfPi,\n da = abs(a1 - a0),\n cw = a1 > a0;\n\n if (!context) context = buffer = path();\n\n // Ensure that the outer radius is always larger than the inner radius.\n if (r1 < r0) r = r1, r1 = r0, r0 = r;\n\n // Is it a point?\n if (!(r1 > epsilon)) context.moveTo(0, 0);\n\n // Or is it a circle or annulus?\n else if (da > tau - epsilon) {\n context.moveTo(r1 * cos(a0), r1 * sin(a0));\n context.arc(0, 0, r1, a0, a1, !cw);\n if (r0 > epsilon) {\n context.moveTo(r0 * cos(a1), r0 * sin(a1));\n context.arc(0, 0, r0, a1, a0, cw);\n }\n }\n\n // Or is it a circular or annular sector?\n else {\n var a01 = a0,\n a11 = a1,\n a00 = a0,\n a10 = a1,\n da0 = da,\n da1 = da,\n ap = padAngle.apply(this, arguments) / 2,\n rp = (ap > epsilon) && (padRadius ? +padRadius.apply(this, arguments) : sqrt(r0 * r0 + r1 * r1)),\n rc = min(abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments)),\n rc0 = rc,\n rc1 = rc,\n t0,\n t1;\n\n // Apply padding? Note that since r1 ≥ r0, da1 ≥ da0.\n if (rp > epsilon) {\n var p0 = asin(rp / r0 * sin(ap)),\n p1 = asin(rp / r1 * sin(ap));\n if ((da0 -= p0 * 2) > epsilon) p0 *= (cw ? 1 : -1), a00 += p0, a10 -= p0;\n else da0 = 0, a00 = a10 = (a0 + a1) / 2;\n if ((da1 -= p1 * 2) > epsilon) p1 *= (cw ? 1 : -1), a01 += p1, a11 -= p1;\n else da1 = 0, a01 = a11 = (a0 + a1) / 2;\n }\n\n var x01 = r1 * cos(a01),\n y01 = r1 * sin(a01),\n x10 = r0 * cos(a10),\n y10 = r0 * sin(a10);\n\n // Apply rounded corners?\n if (rc > epsilon) {\n var x11 = r1 * cos(a11),\n y11 = r1 * sin(a11),\n x00 = r0 * cos(a00),\n y00 = r0 * sin(a00),\n oc;\n\n // Restrict the corner radius according to the sector angle. If this\n // intersection fails, it’s probably because the arc is too small, so\n // disable the corner radius entirely.\n if (da < pi) {\n if (oc = intersect(x01, y01, x00, y00, x11, y11, x10, y10)) {\n var ax = x01 - oc[0],\n ay = y01 - oc[1],\n bx = x11 - oc[0],\n by = y11 - oc[1],\n kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2),\n lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n rc0 = min(rc, (r0 - lc) / (kc - 1));\n rc1 = min(rc, (r1 - lc) / (kc + 1));\n } else {\n rc0 = rc1 = 0;\n }\n }\n }\n\n // Is the sector collapsed to a line?\n if (!(da1 > epsilon)) context.moveTo(x01, y01);\n\n // Does the sector’s outer ring have rounded corners?\n else if (rc1 > epsilon) {\n t0 = cornerTangents(x00, y00, x01, y01, r1, rc1, cw);\n t1 = cornerTangents(x11, y11, x10, y10, r1, rc1, cw);\n\n context.moveTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc1 < rc) context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r1, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !cw);\n context.arc(t1.cx, t1.cy, rc1, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the outer ring just a circular arc?\n else context.moveTo(x01, y01), context.arc(0, 0, r1, a01, a11, !cw);\n\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(r0 > epsilon) || !(da0 > epsilon)) context.lineTo(x10, y10);\n\n // Does the sector’s inner ring (or point) have rounded corners?\n else if (rc0 > epsilon) {\n t0 = cornerTangents(x10, y10, x11, y11, r0, -rc0, cw);\n t1 = cornerTangents(x01, y01, x00, y00, r0, -rc0, cw);\n\n context.lineTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc0 < rc) context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r0, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), cw);\n context.arc(t1.cx, t1.cy, rc0, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the inner ring just a circular arc?\n else context.arc(0, 0, r0, a10, a00, cw);\n }\n\n context.closePath();\n\n if (buffer) return context = null, buffer + \"\" || null;\n }\n\n arc.centroid = function() {\n var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2,\n a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - pi / 2;\n return [cos(a) * r, sin(a) * r];\n };\n\n arc.innerRadius = function(_) {\n return arguments.length ? (innerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : innerRadius;\n };\n\n arc.outerRadius = function(_) {\n return arguments.length ? (outerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : outerRadius;\n };\n\n arc.cornerRadius = function(_) {\n return arguments.length ? (cornerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : cornerRadius;\n };\n\n arc.padRadius = function(_) {\n return arguments.length ? (padRadius = _ == null ? null : typeof _ === \"function\" ? _ : constant(+_), arc) : padRadius;\n };\n\n arc.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : startAngle;\n };\n\n arc.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : endAngle;\n };\n\n arc.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : padAngle;\n };\n\n arc.context = function(_) {\n return arguments.length ? ((context = _ == null ? null : _), arc) : context;\n };\n\n return arc;\n}\n","export default function(a, b) {\n return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;\n}\n","export default function(d) {\n return d;\n}\n","<svelte:options tag=\"m-donut\" />\n\n<script lang=\"ts\">\n import { onMount } from 'svelte';\n\n import {\n select,\n arc as d3Arc,\n pie as d3Pie,\n interpolate,\n Selection,\n PieArcDatum,\n } from 'd3';\n import type { DonutData, ChartContext, LegendPosition } from './donut.types';\n import { EventHandler } from '../../utilities/EventHandler';\n export let data: string = '';\n $: parsedData = data ? (JSON.parse(data) as DonutData[]) : [];\n\n export let svgs: string;\n $: parsedSvgs = svgs\n ? (JSON.parse(svgs) as SVGElement[])\n : ([] as SVGElement[]);\n\n export let colors: string;\n $: parsedColors = colors\n ? JSON.parse(colors)\n : ['#605F9D', '#D9F0F3', '#EAEDEF', '#0B96CC', '#EA7315', '#EA302D'];\n\n export let title: string;\n export let legendseparator = ',';\n export let legendseparatorcount = '(';\n export let dimension = 250;\n export let padangle = 0.05;\n export let backgroundcolor = '#fff';\n export let delay = 500;\n export let legendposition: LegendPosition = 'right';\n\n $: count = parsedData\n ? parsedData\n .filter((d) => {\n return !d.checked;\n })\n .reduce((acc, item) => (acc += item.total), 0)\n : [];\n\n let chart: HTMLDivElement;\n let svg: Selection<SVGGElement, PieArcDatum<DonutData>, any, any>;\n\n let hasMounted = false;\n let eventHandler = new EventHandler();\n\n let tooltipData = {\n left: '0px',\n top: '0px',\n text: '',\n show: false,\n };\n\n const radius = dimension / 2;\n\n const arc = d3Arc<PieArcDatum<DonutData>>()\n .outerRadius(radius - 5)\n .innerRadius(radius - 60)\n .padAngle(padangle);\n\n const pie = d3Pie<DonutData>()\n .sort(null)\n .startAngle(1.1 * Math.PI)\n .endAngle(3.1 * Math.PI)\n .value((data) => data.total);\n\n $: if (data.length > 0 && hasMounted) {\n if (!svg) {\n svg = select<HTMLElement, PieArcDatum<DonutData>>(chart)\n .append('svg')\n .attr('width', dimension)\n .attr('height', dimension)\n .append('g')\n .attr(\n 'transform',\n 'translate(' + dimension / 2 + ',' + dimension / 2 + ')',\n );\n } else {\n svg.selectAll('path').remove();\n }\n\n renderChart();\n }\n\n const getTotal = () => {\n return parsedData\n ? parsedData\n .filter((d) => {\n return !d.checked;\n })\n .reduce((acc, item) => (acc += item.total), 0)\n : [];\n };\n\n const renderChart = () => {\n const paths = svg\n .selectAll('path')\n .data(pie(parsedData))\n .enter()\n .append('path')\n .attr('class', 'chart__arc')\n .attr('title', (d) => d.data.name)\n .attr('stroke', (d) => `${parsedColors[d.index]}`)\n .attr('stroke-width', '4px')\n .style('fill', (d) => {\n if (parsedSvgs.length > 0) {\n return `url(#${d.data.patternId})`;\n } else if (parsedColors.length > 0) {\n return `${parsedColors[d.index]}`;\n }\n return `${parsedColors[d.index]}`;\n });\n\n svg\n .append('svg:text')\n .attr('text-anchor', 'middle')\n .attr('font-size', '28')\n .attr('fill', '#333')\n .text(String(count));\n\n svg\n .append('svg:text')\n .attr('text-anchor', 'middle')\n .attr('font-size', '22')\n .attr('fill', '#333')\n .attr('dy', '1.5rem')\n .text(title);\n\n paths\n .transition()\n .delay((_d, index) => index * delay)\n .duration(delay)\n .attrTween('d', (d: PieArcDatum<DonutData>) => {\n if (d.data.total === 0) return () => '';\n\n const i = interpolate(d.startAngle + 0.1, d.endAngle);\n return (t: number) => {\n d.endAngle = i(t);\n return arc(d) || '';\n };\n });\n\n paths\n .on('mousemove', (e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n tooltipData = {\n left: e.pageX + 10 + 'px',\n top: e.pageY - 25 + 'px',\n text: chartEvent.data.customTooltip\n ? chartEvent.data.customTooltip\n : chartEvent.data.name,\n show: true,\n };\n })\n .on('mouseover', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n var current = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc === chartEvent;\n });\n\n var others = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc != chartEvent;\n });\n\n others.style('opacity', 0.7);\n current.style('transform', 'scale(1.02)');\n })\n .on('mouseout', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n var current = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc === chartEvent;\n });\n\n var others = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc != chartEvent;\n });\n\n others.style('opacity', 1);\n current.style('transform', 'scale(1)');\n tooltipData.show = false;\n })\n .on('click', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n eventHandler.dispatch('donut-clicked', chartEvent);\n });\n\n setTimeout(() => {\n updateChart(parsedData);\n }, delay * parsedData.length);\n };\n\n function updateChart(data: DonutData[]) {\n svg\n .selectAll('path')\n .data(pie(data))\n .transition()\n .duration(delay)\n .attr('stroke-width', (_d, i) => {\n return parsedData[i].checked ? '0px' : '4px';\n })\n .attrTween('d', function (d: PieArcDatum<DonutData>) {\n const i: any = interpolate((this as ChartContext)._current, d);\n (this as ChartContext)._current = i(0);\n return (t: number) => arc(i(t)) || '';\n });\n\n svg\n .selectAll('svg text')\n .filter(function () {\n return /^[0-9]/.test(select(this).text()); // Check if text begin with a \"C\"\n })\n .text(String(getTotal()));\n }\n\n function filterChart(name: string) {\n const updatedData = svg\n .selectAll('path')\n .data()\n .map((d, i) => {\n const data = (d as PieArcDatum<DonutData>).data;\n if (data.name === name) {\n parsedData[i].checked = !parsedData[i].checked;\n const total = data.total === 0 ? parsedData[i].total : 0;\n return { ...data, total };\n }\n return { ...data };\n });\n updateChart(updatedData);\n }\n\n function getLegendTextClasses(checked: boolean | undefined) {\n return `legend__text${checked ? ' legend__text--not-selected' : ''}`;\n }\n\n function getFillColor(\n data: DonutData,\n index: number,\n svgs: SVGElement[],\n colors: [],\n ) {\n if (svgs.length > 0) {\n return `url(#${data.patternId})`;\n } else if (colors.length > 0) {\n return parsedColors[index];\n }\n }\n\n function getLegendPosition(legendposition: LegendPosition) {\n switch (legendposition) {\n case 'top':\n return 'chart--top';\n break;\n case 'right':\n return 'chart--right';\n break;\n case 'bottom':\n return 'chart--bottom';\n break;\n case 'left':\n return 'chart--left';\n break;\n default:\n return 'chart--right';\n break;\n }\n }\n\n onMount(() => (hasMounted = true));\n</script>\n\n<div\n bind:this={chart}\n class=\"chart {getLegendPosition(legendposition)}\"\n style=\"background-color: {backgroundcolor};\"\n>\n <div class=\"legend\">\n {#each parsedData as data, i}\n <button class=\"legend__item\" on:click={() => filterChart(data.name)}>\n <svg class=\"legend__box\">\n <rect\n x=\"0\"\n y=\"0\"\n width=\"24\"\n height=\"16\"\n fill={getFillColor(data, i, parsedSvgs, parsedColors)}\n />\n </svg>\n <div>\n {#each data.name.split(legendseparator) as name}\n <p class={getLegendTextClasses(data.checked)}>\n {name.split(legendseparatorcount)[0]}\n {#if name.split(legendseparatorcount)[1]}\n <span class=\"legend__text--light\"\n >({name.split(legendseparatorcount)[1]}</span\n >\n {/if}\n </p>\n {/each}\n </div>\n </button>\n {/each}\n </div>\n\n {#if tooltipData.show}\n <div\n class=\"chart__tooltip\"\n style=\"left: {tooltipData.left}; top: {tooltipData.top};\"\n >\n {tooltipData.text}\n </div>\n {/if}\n</div>\n\n<div style=\"height: 0; width: 0;\" class=\"pattern\">\n {#each parsedSvgs as svg}\n {@html svg}\n {/each}\n</div>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/_all-settings';\n @import '@mozaic-ds/styles/typography/_t.headings';\n\n .opaque {\n opacity: 0.7;\n }\n\n .chart {\n display: flex;\n flex-wrap: wrap;\n background-color: $color-grey-000;\n justify-content: center;\n align-items: center;\n &--top {\n flex-direction: column;\n }\n &--right {\n flex-direction: row-reverse;\n }\n &--bottom {\n flex-direction: column-reverse;\n }\n &--left {\n flex-direction: row;\n }\n &__tooltip {\n position: absolute;\n width: auto;\n height: auto;\n background-color: $color-grey-700;\n border-radius: 4px;\n color: $color-grey-000;\n padding: magic-unit-rem(0.5) magic-unit-rem(1);\n text-align: center;\n }\n\n &__arc {\n cursor: pointer;\n transition: transform 0.3s ease;\n }\n }\n\n .legend {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n padding: 0 magic-unit-rem(1.5);\n height: 100%;\n margin: 0;\n color: $color-grey-999;\n\n &__title {\n padding: magic-unit-rem(0.75);\n white-space: nowrap;\n margin: 0;\n\n &--light {\n color: $color-grey-500;\n }\n }\n\n &__item {\n cursor: pointer;\n background: none;\n border: none;\n display: flex;\n flex-direction: row;\n margin-left: magic-unit-rem(0.75);\n margin-bottom: magic-unit-rem(0.25);\n font-size: $size-font-04;\n\n &:focus,\n &:hover {\n outline: 0;\n text-decoration: underline;\n }\n }\n\n &__box {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: magic-unit-rem(0.75);\n height: 16px;\n width: 24px;\n }\n &__text {\n width: fit-content;\n white-space: nowrap;\n margin: 0 0 magic-unit-rem(0.25) 0;\n padding: 0;\n\n &--light {\n color: $color-grey-500;\n }\n\n &--not-selected {\n text-decoration: line-through;\n }\n }\n }\n\n .pattern {\n z-index: -1;\n position: absolute;\n }\n</style>\n","import array from \"./array.js\";\nimport constant from \"./constant.js\";\nimport descending from \"./descending.js\";\nimport identity from \"./identity.js\";\nimport {tau} from \"./math.js\";\n\nexport default function() {\n var value = identity,\n sortValues = descending,\n sort = null,\n startAngle = constant(0),\n endAngle = constant(tau),\n padAngle = constant(0);\n\n function pie(data) {\n var i,\n n = (data = array(data)).length,\n j,\n k,\n sum = 0,\n index = new Array(n),\n arcs = new Array(n),\n a0 = +startAngle.apply(this, arguments),\n da = Math.min(tau, Math.max(-tau, endAngle.apply(this, arguments) - a0)),\n a1,\n p = Math.min(Math.abs(da) / n, padAngle.apply(this, arguments)),\n pa = p * (da < 0 ? -1 : 1),\n v;\n\n for (i = 0; i < n; ++i) {\n if ((v = arcs[index[i] = i] = +value(data[i], i, data)) > 0) {\n sum += v;\n }\n }\n\n // Optionally sort the arcs by previously-computed values or by data.\n if (sortValues != null) index.sort(function(i, j) { return sortValues(arcs[i], arcs[j]); });\n else if (sort != null) index.sort(function(i, j) { return sort(data[i], data[j]); });\n\n // Compute the arcs! They are stored in the original data's order.\n for (i = 0, k = sum ? (da - n * pa) / sum : 0; i < n; ++i, a0 = a1) {\n j = index[i], v = arcs[j], a1 = a0 + (v > 0 ? v * k : 0) + pa, arcs[j] = {\n data: data[j],\n index: i,\n value: v,\n startAngle: a0,\n endAngle: a1,\n padAngle: p\n };\n }\n\n return arcs;\n }\n\n pie.value = function(_) {\n return arguments.length ? (value = typeof _ === \"function\" ? _ : constant(+_), pie) : value;\n };\n\n pie.sortValues = function(_) {\n return arguments.length ? (sortValues = _, sort = null, pie) : sortValues;\n };\n\n pie.sort = function(_) {\n return arguments.length ? (sort = _, sortValues = null, pie) : sort;\n };\n\n pie.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : startAngle;\n };\n\n pie.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : endAngle;\n };\n\n pie.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : padAngle;\n };\n\n return pie;\n}\n"],"names":["arcInnerRadius","d","innerRadius","arcOuterRadius","outerRadius","arcStartAngle","startAngle","arcEndAngle","endAngle","arcPadAngle","padAngle","cornerTangents","x0","y0","x1","y1","r1","rc","cw","x01","y01","lo","sqrt","ox","oy","x11","y11","x10","y10","x00","y00","dx","dy","d2","r","D","max","cx0","cy0","cx1","cy1","dx0","dy0","dx1","dy1","cx","cy","d3Arc","cornerRadius","constant","padRadius","context","path","withPath","arc","buffer","r0","apply","this","arguments","a0","halfPi","a1","da","abs","epsilon","tau","moveTo","cos","sin","t0","t1","a01","a11","a00","a10","da0","da1","ap","rp","min","rc0","rc1","p0","asin","p1","oc","pi","x2","y2","x3","y3","x32","y32","t","intersect","ax","ay","bx","by","kc","acos","lc","atan2","lineTo","closePath","centroid","a","_","length","descending","b","NaN","identity","t1_value","ctx","split","insert","target","span","anchor","dirty","set_data","t0_value","show_if","getLegendTextClasses","checked","p","each_value_2","name","i","attr","rect","rect_fill_value","button","append","svg_1","div","t_value","text","set_style","left","top","html_tag","raw_value","if_block","show","create_if_block","div1","div1_class_value","getLegendPosition","div0","div2","legendposition","chart","svg","data","$$props","svgs","colors","title","legendseparator","legendseparatorcount","dimension","padangle","backgroundcolor","delay","hasMounted","eventHandler","EventHandler","tooltipData","radius","pie","value","sortValues","sort","j","k","v","n","array","sum","index","Array","arcs","Math","pa","d3Pie","PI","total","getTotal","parsedData","filter","reduce","acc","item","updateChart","selectAll","transition","duration","_d","attrTween","interpolate","_current","test","select","String","filterChart","updatedData","map","Object","assign","onMount","$$invalidate","JSON","parse","parsedSvgs","parsedColors","count","remove","paths","enter","style","patternId","on","e","chartEvent","pageX","pageY","customTooltip","_e","current","others","dispatch","setTimeout","renderChart","$$value"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Donut.js","sources":["../../../node_modules/d3-shape/src/arc.js","../../../node_modules/d3-shape/src/descending.js","../../../node_modules/d3-shape/src/identity.js","../../../node_modules/d3-shape/src/pie.js","../../../src/components/chart/Donut.svelte"],"sourcesContent":["import constant from \"./constant.js\";\nimport {abs, acos, asin, atan2, cos, epsilon, halfPi, max, min, pi, sin, sqrt, tau} from \"./math.js\";\nimport {withPath} from \"./path.js\";\n\nfunction arcInnerRadius(d) {\n return d.innerRadius;\n}\n\nfunction arcOuterRadius(d) {\n return d.outerRadius;\n}\n\nfunction arcStartAngle(d) {\n return d.startAngle;\n}\n\nfunction arcEndAngle(d) {\n return d.endAngle;\n}\n\nfunction arcPadAngle(d) {\n return d && d.padAngle; // Note: optional!\n}\n\nfunction intersect(x0, y0, x1, y1, x2, y2, x3, y3) {\n var x10 = x1 - x0, y10 = y1 - y0,\n x32 = x3 - x2, y32 = y3 - y2,\n t = y32 * x10 - x32 * y10;\n if (t * t < epsilon) return;\n t = (x32 * (y0 - y2) - y32 * (x0 - x2)) / t;\n return [x0 + t * x10, y0 + t * y10];\n}\n\n// Compute perpendicular offset line of length rc.\n// http://mathworld.wolfram.com/Circle-LineIntersection.html\nfunction cornerTangents(x0, y0, x1, y1, r1, rc, cw) {\n var x01 = x0 - x1,\n y01 = y0 - y1,\n lo = (cw ? rc : -rc) / sqrt(x01 * x01 + y01 * y01),\n ox = lo * y01,\n oy = -lo * x01,\n x11 = x0 + ox,\n y11 = y0 + oy,\n x10 = x1 + ox,\n y10 = y1 + oy,\n x00 = (x11 + x10) / 2,\n y00 = (y11 + y10) / 2,\n dx = x10 - x11,\n dy = y10 - y11,\n d2 = dx * dx + dy * dy,\n r = r1 - rc,\n D = x11 * y10 - x10 * y11,\n d = (dy < 0 ? -1 : 1) * sqrt(max(0, r * r * d2 - D * D)),\n cx0 = (D * dy - dx * d) / d2,\n cy0 = (-D * dx - dy * d) / d2,\n cx1 = (D * dy + dx * d) / d2,\n cy1 = (-D * dx + dy * d) / d2,\n dx0 = cx0 - x00,\n dy0 = cy0 - y00,\n dx1 = cx1 - x00,\n dy1 = cy1 - y00;\n\n // Pick the closer of the two intersection points.\n // TODO Is there a faster way to determine which intersection to use?\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n\n return {\n cx: cx0,\n cy: cy0,\n x01: -ox,\n y01: -oy,\n x11: cx0 * (r1 / r - 1),\n y11: cy0 * (r1 / r - 1)\n };\n}\n\nexport default function() {\n var innerRadius = arcInnerRadius,\n outerRadius = arcOuterRadius,\n cornerRadius = constant(0),\n padRadius = null,\n startAngle = arcStartAngle,\n endAngle = arcEndAngle,\n padAngle = arcPadAngle,\n context = null,\n path = withPath(arc);\n\n function arc() {\n var buffer,\n r,\n r0 = +innerRadius.apply(this, arguments),\n r1 = +outerRadius.apply(this, arguments),\n a0 = startAngle.apply(this, arguments) - halfPi,\n a1 = endAngle.apply(this, arguments) - halfPi,\n da = abs(a1 - a0),\n cw = a1 > a0;\n\n if (!context) context = buffer = path();\n\n // Ensure that the outer radius is always larger than the inner radius.\n if (r1 < r0) r = r1, r1 = r0, r0 = r;\n\n // Is it a point?\n if (!(r1 > epsilon)) context.moveTo(0, 0);\n\n // Or is it a circle or annulus?\n else if (da > tau - epsilon) {\n context.moveTo(r1 * cos(a0), r1 * sin(a0));\n context.arc(0, 0, r1, a0, a1, !cw);\n if (r0 > epsilon) {\n context.moveTo(r0 * cos(a1), r0 * sin(a1));\n context.arc(0, 0, r0, a1, a0, cw);\n }\n }\n\n // Or is it a circular or annular sector?\n else {\n var a01 = a0,\n a11 = a1,\n a00 = a0,\n a10 = a1,\n da0 = da,\n da1 = da,\n ap = padAngle.apply(this, arguments) / 2,\n rp = (ap > epsilon) && (padRadius ? +padRadius.apply(this, arguments) : sqrt(r0 * r0 + r1 * r1)),\n rc = min(abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments)),\n rc0 = rc,\n rc1 = rc,\n t0,\n t1;\n\n // Apply padding? Note that since r1 ≥ r0, da1 ≥ da0.\n if (rp > epsilon) {\n var p0 = asin(rp / r0 * sin(ap)),\n p1 = asin(rp / r1 * sin(ap));\n if ((da0 -= p0 * 2) > epsilon) p0 *= (cw ? 1 : -1), a00 += p0, a10 -= p0;\n else da0 = 0, a00 = a10 = (a0 + a1) / 2;\n if ((da1 -= p1 * 2) > epsilon) p1 *= (cw ? 1 : -1), a01 += p1, a11 -= p1;\n else da1 = 0, a01 = a11 = (a0 + a1) / 2;\n }\n\n var x01 = r1 * cos(a01),\n y01 = r1 * sin(a01),\n x10 = r0 * cos(a10),\n y10 = r0 * sin(a10);\n\n // Apply rounded corners?\n if (rc > epsilon) {\n var x11 = r1 * cos(a11),\n y11 = r1 * sin(a11),\n x00 = r0 * cos(a00),\n y00 = r0 * sin(a00),\n oc;\n\n // Restrict the corner radius according to the sector angle. If this\n // intersection fails, it’s probably because the arc is too small, so\n // disable the corner radius entirely.\n if (da < pi) {\n if (oc = intersect(x01, y01, x00, y00, x11, y11, x10, y10)) {\n var ax = x01 - oc[0],\n ay = y01 - oc[1],\n bx = x11 - oc[0],\n by = y11 - oc[1],\n kc = 1 / sin(acos((ax * bx + ay * by) / (sqrt(ax * ax + ay * ay) * sqrt(bx * bx + by * by))) / 2),\n lc = sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n rc0 = min(rc, (r0 - lc) / (kc - 1));\n rc1 = min(rc, (r1 - lc) / (kc + 1));\n } else {\n rc0 = rc1 = 0;\n }\n }\n }\n\n // Is the sector collapsed to a line?\n if (!(da1 > epsilon)) context.moveTo(x01, y01);\n\n // Does the sector’s outer ring have rounded corners?\n else if (rc1 > epsilon) {\n t0 = cornerTangents(x00, y00, x01, y01, r1, rc1, cw);\n t1 = cornerTangents(x11, y11, x10, y10, r1, rc1, cw);\n\n context.moveTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc1 < rc) context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc1, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r1, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), !cw);\n context.arc(t1.cx, t1.cy, rc1, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the outer ring just a circular arc?\n else context.moveTo(x01, y01), context.arc(0, 0, r1, a01, a11, !cw);\n\n // Is there no inner ring, and it’s a circular sector?\n // Or perhaps it’s an annular sector collapsed due to padding?\n if (!(r0 > epsilon) || !(da0 > epsilon)) context.lineTo(x10, y10);\n\n // Does the sector’s inner ring (or point) have rounded corners?\n else if (rc0 > epsilon) {\n t0 = cornerTangents(x10, y10, x11, y11, r0, -rc0, cw);\n t1 = cornerTangents(x01, y01, x00, y00, r0, -rc0, cw);\n\n context.lineTo(t0.cx + t0.x01, t0.cy + t0.y01);\n\n // Have the corners merged?\n if (rc0 < rc) context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t1.y01, t1.x01), !cw);\n\n // Otherwise, draw the two corners and the ring.\n else {\n context.arc(t0.cx, t0.cy, rc0, atan2(t0.y01, t0.x01), atan2(t0.y11, t0.x11), !cw);\n context.arc(0, 0, r0, atan2(t0.cy + t0.y11, t0.cx + t0.x11), atan2(t1.cy + t1.y11, t1.cx + t1.x11), cw);\n context.arc(t1.cx, t1.cy, rc0, atan2(t1.y11, t1.x11), atan2(t1.y01, t1.x01), !cw);\n }\n }\n\n // Or is the inner ring just a circular arc?\n else context.arc(0, 0, r0, a10, a00, cw);\n }\n\n context.closePath();\n\n if (buffer) return context = null, buffer + \"\" || null;\n }\n\n arc.centroid = function() {\n var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2,\n a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - pi / 2;\n return [cos(a) * r, sin(a) * r];\n };\n\n arc.innerRadius = function(_) {\n return arguments.length ? (innerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : innerRadius;\n };\n\n arc.outerRadius = function(_) {\n return arguments.length ? (outerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : outerRadius;\n };\n\n arc.cornerRadius = function(_) {\n return arguments.length ? (cornerRadius = typeof _ === \"function\" ? _ : constant(+_), arc) : cornerRadius;\n };\n\n arc.padRadius = function(_) {\n return arguments.length ? (padRadius = _ == null ? null : typeof _ === \"function\" ? _ : constant(+_), arc) : padRadius;\n };\n\n arc.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : startAngle;\n };\n\n arc.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : endAngle;\n };\n\n arc.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), arc) : padAngle;\n };\n\n arc.context = function(_) {\n return arguments.length ? ((context = _ == null ? null : _), arc) : context;\n };\n\n return arc;\n}\n","export default function(a, b) {\n return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;\n}\n","export default function(d) {\n return d;\n}\n","import array from \"./array.js\";\nimport constant from \"./constant.js\";\nimport descending from \"./descending.js\";\nimport identity from \"./identity.js\";\nimport {tau} from \"./math.js\";\n\nexport default function() {\n var value = identity,\n sortValues = descending,\n sort = null,\n startAngle = constant(0),\n endAngle = constant(tau),\n padAngle = constant(0);\n\n function pie(data) {\n var i,\n n = (data = array(data)).length,\n j,\n k,\n sum = 0,\n index = new Array(n),\n arcs = new Array(n),\n a0 = +startAngle.apply(this, arguments),\n da = Math.min(tau, Math.max(-tau, endAngle.apply(this, arguments) - a0)),\n a1,\n p = Math.min(Math.abs(da) / n, padAngle.apply(this, arguments)),\n pa = p * (da < 0 ? -1 : 1),\n v;\n\n for (i = 0; i < n; ++i) {\n if ((v = arcs[index[i] = i] = +value(data[i], i, data)) > 0) {\n sum += v;\n }\n }\n\n // Optionally sort the arcs by previously-computed values or by data.\n if (sortValues != null) index.sort(function(i, j) { return sortValues(arcs[i], arcs[j]); });\n else if (sort != null) index.sort(function(i, j) { return sort(data[i], data[j]); });\n\n // Compute the arcs! They are stored in the original data's order.\n for (i = 0, k = sum ? (da - n * pa) / sum : 0; i < n; ++i, a0 = a1) {\n j = index[i], v = arcs[j], a1 = a0 + (v > 0 ? v * k : 0) + pa, arcs[j] = {\n data: data[j],\n index: i,\n value: v,\n startAngle: a0,\n endAngle: a1,\n padAngle: p\n };\n }\n\n return arcs;\n }\n\n pie.value = function(_) {\n return arguments.length ? (value = typeof _ === \"function\" ? _ : constant(+_), pie) : value;\n };\n\n pie.sortValues = function(_) {\n return arguments.length ? (sortValues = _, sort = null, pie) : sortValues;\n };\n\n pie.sort = function(_) {\n return arguments.length ? (sort = _, sortValues = null, pie) : sort;\n };\n\n pie.startAngle = function(_) {\n return arguments.length ? (startAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : startAngle;\n };\n\n pie.endAngle = function(_) {\n return arguments.length ? (endAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : endAngle;\n };\n\n pie.padAngle = function(_) {\n return arguments.length ? (padAngle = typeof _ === \"function\" ? _ : constant(+_), pie) : padAngle;\n };\n\n return pie;\n}\n","<svelte:options tag=\"m-donut\" />\n\n<script lang=\"ts\">\n import { onMount } from 'svelte';\n\n import {\n select,\n arc as d3Arc,\n pie as d3Pie,\n interpolate,\n Selection,\n PieArcDatum,\n } from 'd3';\n import type { DonutData, ChartContext, LegendPosition } from './donut.types';\n import { EventHandler } from '../../utilities/EventHandler';\n export let data: string = '';\n $: parsedData = data ? (JSON.parse(data) as DonutData[]) : [];\n\n export let svgs: string;\n $: parsedSvgs = svgs\n ? (JSON.parse(svgs) as SVGElement[])\n : ([] as SVGElement[]);\n\n export let colors: string;\n $: parsedColors = colors\n ? JSON.parse(colors)\n : ['#605F9D', '#D9F0F3', '#EAEDEF', '#0B96CC', '#EA7315', '#EA302D'];\n\n export let title: string;\n export let legendseparator = ',';\n export let legendseparatorcount = '(';\n export let dimension = 250;\n export let padangle = 0.05;\n export let backgroundcolor = '#fff';\n export let delay = 500;\n export let legendposition: LegendPosition = 'right';\n\n $: count = parsedData\n ? parsedData\n .filter((d) => {\n return !d.checked;\n })\n .reduce((acc, item) => (acc += item.total), 0)\n : [];\n\n let chart: HTMLDivElement;\n let svg: Selection<SVGGElement, PieArcDatum<DonutData>, any, any>;\n\n let hasMounted = false;\n let eventHandler = new EventHandler();\n\n let tooltipData = {\n left: '0px',\n top: '0px',\n text: '',\n show: false,\n };\n\n const radius = dimension / 2;\n\n const arc = d3Arc<PieArcDatum<DonutData>>()\n .outerRadius(radius - 5)\n .innerRadius(radius - 60)\n .padAngle(padangle);\n\n const pie = d3Pie<DonutData>()\n .sort(null)\n .startAngle(1.1 * Math.PI)\n .endAngle(3.1 * Math.PI)\n .value((data) => data.total);\n\n $: if (data.length > 0 && hasMounted) {\n if (!svg) {\n svg = select<HTMLElement, PieArcDatum<DonutData>>(chart)\n .append('svg')\n .attr('width', dimension)\n .attr('height', dimension)\n .append('g')\n .attr(\n 'transform',\n 'translate(' + dimension / 2 + ',' + dimension / 2 + ')',\n );\n } else {\n svg.selectAll('path').remove();\n }\n\n renderChart();\n }\n\n const getTotal = () => {\n return parsedData\n ? parsedData\n .filter((d) => {\n return !d.checked;\n })\n .reduce((acc, item) => (acc += item.total), 0)\n : [];\n };\n\n const renderChart = () => {\n const paths = svg\n .selectAll('path')\n .data(pie(parsedData))\n .enter()\n .append('path')\n .attr('class', 'chart__arc')\n .attr('title', (d) => d.data.name)\n .attr('stroke', (d) => `${parsedColors[d.index]}`)\n .attr('stroke-width', '4px')\n .style('fill', (d) => {\n if (parsedSvgs.length > 0) {\n return `url(#${d.data.patternId})`;\n } else if (parsedColors.length > 0) {\n return `${parsedColors[d.index]}`;\n }\n return `${parsedColors[d.index]}`;\n });\n\n svg\n .append('svg:text')\n .attr('text-anchor', 'middle')\n .attr('font-size', '28')\n .attr('fill', '#333')\n .text(String(count));\n\n svg\n .append('svg:text')\n .attr('text-anchor', 'middle')\n .attr('font-size', '22')\n .attr('fill', '#333')\n .attr('dy', '1.5rem')\n .text(title);\n\n paths\n .transition()\n .delay((_d, index) => index * delay)\n .duration(delay)\n .attrTween('d', (d: PieArcDatum<DonutData>) => {\n if (d.data.total === 0) return () => '';\n\n const i = interpolate(d.startAngle + 0.1, d.endAngle);\n return (t: number) => {\n d.endAngle = i(t);\n return arc(d) || '';\n };\n });\n\n paths\n .on('mousemove', (e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n tooltipData = {\n left: e.pageX + 10 + 'px',\n top: e.pageY - 25 + 'px',\n text: chartEvent.data.customTooltip\n ? chartEvent.data.customTooltip\n : chartEvent.data.name,\n show: true,\n };\n })\n .on('mouseover', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n var current = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc === chartEvent;\n });\n\n var others = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc != chartEvent;\n });\n\n others.style('opacity', 0.7);\n current.style('transform', 'scale(1.02)');\n })\n .on('mouseout', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n var current = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc === chartEvent;\n });\n\n var others = svg.selectAll('.chart__arc').filter(function (arc) {\n return arc != chartEvent;\n });\n\n others.style('opacity', 1);\n current.style('transform', 'scale(1)');\n tooltipData.show = false;\n })\n .on('click', (_e: MouseEvent, chartEvent: PieArcDatum<DonutData>) => {\n eventHandler.dispatch('donut-clicked', chartEvent);\n });\n\n setTimeout(() => {\n updateChart(parsedData);\n }, delay * parsedData.length);\n };\n\n function updateChart(data: DonutData[]) {\n svg\n .selectAll('path')\n .data(pie(data))\n .transition()\n .duration(delay)\n .attr('stroke-width', (_d, i) => {\n return parsedData[i].checked ? '0px' : '4px';\n })\n .attrTween('d', function (d: PieArcDatum<DonutData>) {\n const i: any = interpolate((this as ChartContext)._current, d);\n (this as ChartContext)._current = i(0);\n return (t: number) => arc(i(t)) || '';\n });\n\n svg\n .selectAll('svg text')\n .filter(function () {\n return /^[0-9]/.test(select(this).text()); // Check if text begin with a \"C\"\n })\n .text(String(getTotal()));\n }\n\n function filterChart(name: string) {\n const updatedData = svg\n .selectAll('path')\n .data()\n .map((d, i) => {\n const data = (d as PieArcDatum<DonutData>).data;\n if (data.name === name) {\n parsedData[i].checked = !parsedData[i].checked;\n const total = data.total === 0 ? parsedData[i].total : 0;\n return { ...data, total };\n }\n return { ...data };\n });\n updateChart(updatedData);\n }\n\n function getLegendTextClasses(checked: boolean | undefined) {\n return `legend__text${checked ? ' legend__text--not-selected' : ''}`;\n }\n\n function getFillColor(\n data: DonutData,\n index: number,\n svgs: SVGElement[],\n colors: [],\n ) {\n if (svgs.length > 0) {\n return `url(#${data.patternId})`;\n } else if (colors.length > 0) {\n return parsedColors[index];\n }\n }\n\n function getLegendPosition(legendposition: LegendPosition) {\n switch (legendposition) {\n case 'top':\n return 'chart--top';\n break;\n case 'right':\n return 'chart--right';\n break;\n case 'bottom':\n return 'chart--bottom';\n break;\n case 'left':\n return 'chart--left';\n break;\n default:\n return 'chart--right';\n break;\n }\n }\n\n onMount(() => (hasMounted = true));\n</script>\n\n<div\n bind:this={chart}\n class=\"chart {getLegendPosition(legendposition)}\"\n style=\"background-color: {backgroundcolor};\"\n>\n <div class=\"legend\">\n {#each parsedData as data, i}\n <button class=\"legend__item\" on:click={() => filterChart(data.name)}>\n <svg class=\"legend__box\">\n <rect\n x=\"0\"\n y=\"0\"\n width=\"24\"\n height=\"16\"\n fill={getFillColor(data, i, parsedSvgs, parsedColors)}\n />\n </svg>\n <div>\n {#each data.name.split(legendseparator) as name}\n <p class={getLegendTextClasses(data.checked)}>\n {name.split(legendseparatorcount)[0]}\n {#if name.split(legendseparatorcount)[1]}\n <span class=\"legend__text--light\"\n >({name.split(legendseparatorcount)[1]}</span\n >\n {/if}\n </p>\n {/each}\n </div>\n </button>\n {/each}\n </div>\n\n {#if tooltipData.show}\n <div\n class=\"chart__tooltip\"\n style=\"left: {tooltipData.left}; top: {tooltipData.top};\"\n >\n {tooltipData.text}\n </div>\n {/if}\n</div>\n\n<div style=\"height: 0; width: 0;\" class=\"pattern\">\n {#each parsedSvgs as svg}\n {@html svg}\n {/each}\n</div>\n\n<style lang=\"scss\">\n @import '@mozaic-ds/styles/settings-tools/_all-settings';\n @import '@mozaic-ds/styles/typography/_t.headings';\n\n .opaque {\n opacity: 0.7;\n }\n\n .chart {\n display: flex;\n flex-wrap: wrap;\n background-color: $color-grey-000;\n justify-content: center;\n align-items: center;\n &--top {\n flex-direction: column;\n }\n &--right {\n flex-direction: row-reverse;\n }\n &--bottom {\n flex-direction: column-reverse;\n }\n &--left {\n flex-direction: row;\n }\n &__tooltip {\n position: absolute;\n width: auto;\n height: auto;\n background-color: $color-grey-700;\n border-radius: 4px;\n color: $color-grey-000;\n padding: magic-unit-rem(0.5) magic-unit-rem(1);\n text-align: center;\n }\n\n &__arc {\n cursor: pointer;\n transition: transform 0.3s ease;\n }\n }\n\n .legend {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n padding: 0 magic-unit-rem(1.5);\n height: 100%;\n margin: 0;\n color: $color-grey-999;\n\n &__title {\n padding: magic-unit-rem(0.75);\n white-space: nowrap;\n margin: 0;\n\n &--light {\n color: $color-grey-500;\n }\n }\n\n &__item {\n cursor: pointer;\n background: none;\n border: none;\n display: flex;\n flex-direction: row;\n margin-left: magic-unit-rem(0.75);\n margin-bottom: magic-unit-rem(0.25);\n font-size: $size-font-04;\n\n &:focus,\n &:hover {\n outline: 0;\n text-decoration: underline;\n }\n }\n\n &__box {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: magic-unit-rem(0.75);\n height: 16px;\n width: 24px;\n }\n &__text {\n width: fit-content;\n white-space: nowrap;\n margin: 0 0 magic-unit-rem(0.25) 0;\n padding: 0;\n\n &--light {\n color: $color-grey-500;\n }\n\n &--not-selected {\n text-decoration: line-through;\n }\n }\n }\n\n .pattern {\n z-index: -1;\n position: absolute;\n }\n</style>\n"],"names":[],"mappings":"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"}
|