@mozaic-ds/web-components 0.5.0 → 0.6.0

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.
Files changed (198) hide show
  1. package/package.json +3 -3
  2. package/public/ClickOutside-63071e7a.js +1 -15
  3. package/public/ClickOutside-63071e7a.js.map +1 -1
  4. package/public/DataTableDefaultAction.nested-4da4dc44.js +1 -759
  5. package/public/DataTableDefaultAction.nested-4da4dc44.js.map +1 -1
  6. package/public/DataTableUtilities-60220c78.js +1 -370
  7. package/public/DataTableUtilities-60220c78.js.map +1 -1
  8. package/public/EventForward-8492ff62.js +1 -109
  9. package/public/EventForward-8492ff62.js.map +1 -1
  10. package/public/EventHandler-02058705.js +1 -15
  11. package/public/EventHandler-02058705.js.map +1 -1
  12. package/public/adeo/components/layer/Layer.js +1 -1
  13. package/public/adeo/components/layer/Layer.js.map +1 -1
  14. package/public/adeo/components/layer/Layer.svelte +2 -1
  15. package/public/adeo/components/phonenumber/PhoneNumber.js +1 -1
  16. package/public/adeo/components/phonenumber/PhoneNumber.js.map +1 -1
  17. package/public/adeo/components/phonenumber/PhoneNumber.svelte +72 -9
  18. package/public/adeo/components/quantityselector/QuantitySelector.js +1 -1
  19. package/public/adeo/components/quantityselector/QuantitySelector.js.map +1 -1
  20. package/public/adeo/components/quantityselector/QuantitySelector.svelte +6 -3
  21. package/public/array-5b770a93.js +1 -13
  22. package/public/array-5b770a93.js.map +1 -1
  23. package/public/axis-fbc0f7b5.js +1 -174
  24. package/public/axis-fbc0f7b5.js.map +1 -1
  25. package/public/band-d7a07d2c.js +1 -186
  26. package/public/band-d7a07d2c.js.map +1 -1
  27. package/public/bricoman/components/chart/Donut.js +1 -1
  28. package/public/bricoman/components/header/Header.js +1 -1
  29. package/public/bricoman/components/hero/Hero.js +1 -1
  30. package/public/bricoman/components/layer/Layer.js +1 -1
  31. package/public/bricoman/components/layer/Layer.js.map +1 -1
  32. package/public/bricoman/components/layer/Layer.svelte +2 -1
  33. package/public/bricoman/components/listbox/Listbox.js +1 -1
  34. package/public/bricoman/components/listbox/Listbox.nested.js +1 -1
  35. package/public/bricoman/components/phonenumber/PhoneNumber.js +1 -1
  36. package/public/bricoman/components/phonenumber/PhoneNumber.js.map +1 -1
  37. package/public/bricoman/components/phonenumber/PhoneNumber.svelte +72 -9
  38. package/public/bricoman/components/price/Price.js +1 -1
  39. package/public/bricoman/components/quantityselector/QuantitySelector.js +1 -1
  40. package/public/bricoman/components/quantityselector/QuantitySelector.js.map +1 -1
  41. package/public/bricoman/components/quantityselector/QuantitySelector.svelte +6 -3
  42. package/public/components/accordion/Accordion.js +1 -365
  43. package/public/components/accordion/Accordion.js.map +1 -1
  44. package/public/components/autocomplete/Autocomplete.js +1 -1515
  45. package/public/components/autocomplete/Autocomplete.js.map +1 -1
  46. package/public/components/badge/Badge.js +1 -155
  47. package/public/components/badge/Badge.js.map +1 -1
  48. package/public/components/badge/Badge.nested.js +1 -101
  49. package/public/components/badge/Badge.nested.js.map +1 -1
  50. package/public/components/breadcrumb/Breadcrumb.js +1 -372
  51. package/public/components/breadcrumb/Breadcrumb.js.map +1 -1
  52. package/public/components/breadcrumb/Breadcrumb.nested.js +1 -319
  53. package/public/components/breadcrumb/Breadcrumb.nested.js.map +1 -1
  54. package/public/components/button/Button.js +1 -1138
  55. package/public/components/button/Button.js.map +1 -1
  56. package/public/components/card/Card.js +1 -369
  57. package/public/components/card/Card.js.map +1 -1
  58. package/public/components/chart/BarChart.js +1 -582
  59. package/public/components/chart/BarChart.js.map +1 -1
  60. package/public/components/chart/Donut.js +1 -1189
  61. package/public/components/chart/Donut.js.map +1 -1
  62. package/public/components/chart/GroupedBarChart.js +1 -750
  63. package/public/components/chart/GroupedBarChart.js.map +1 -1
  64. package/public/components/chart/LineChart.js +1 -1731
  65. package/public/components/chart/LineChart.js.map +1 -1
  66. package/public/components/chart/Radar.js +1 -729
  67. package/public/components/chart/Radar.js.map +1 -1
  68. package/public/components/chart/StackedBarChart.js +1 -745
  69. package/public/components/chart/StackedBarChart.js.map +1 -1
  70. package/public/components/checkbox/Checkbox.js +1 -307
  71. package/public/components/checkbox/Checkbox.js.map +1 -1
  72. package/public/components/checkboxgroup/checkboxGroup.js +1 -404
  73. package/public/components/checkboxgroup/checkboxGroup.js.map +1 -1
  74. package/public/components/datatable/DataTable.js +1 -3064
  75. package/public/components/datatable/DataTable.js.map +1 -1
  76. package/public/components/datatable/DataTableDefaultAction.nested.js +1 -4
  77. package/public/components/datatable/DataTableDefaultAction.nested.js.map +1 -1
  78. package/public/components/datatable/DataTableDefaultEdtion.nested.js +1 -164
  79. package/public/components/datatable/DataTableDefaultEdtion.nested.js.map +1 -1
  80. package/public/components/datatable/DataTableDefaultFilterTags.nested.js +1 -380
  81. package/public/components/datatable/DataTableDefaultFilterTags.nested.js.map +1 -1
  82. package/public/components/datatable/DataTableDefaultSelection.nested.js +1 -424
  83. package/public/components/datatable/DataTableDefaultSelection.nested.js.map +1 -1
  84. package/public/components/datatable/DataTableDefaultSelectionLabel.nested.js +1 -263
  85. package/public/components/datatable/DataTableDefaultSelectionLabel.nested.js.map +1 -1
  86. package/public/components/datatable/DataTableFooter.nested.js +1 -637
  87. package/public/components/datatable/DataTableFooter.nested.js.map +1 -1
  88. package/public/components/dropdown/Dropdown.js +1 -1426
  89. package/public/components/dropdown/Dropdown.js.map +1 -1
  90. package/public/components/field/Field.js +1 -375
  91. package/public/components/field/Field.js.map +1 -1
  92. package/public/components/fileuploader/FileUploader.js +1 -555
  93. package/public/components/fileuploader/FileUploader.js.map +1 -1
  94. package/public/components/fileuploader/ResultFile.nested.js +1 -265
  95. package/public/components/fileuploader/ResultFile.nested.js.map +1 -1
  96. package/public/components/flag/Flag.js +1 -174
  97. package/public/components/flag/Flag.js.map +1 -1
  98. package/public/components/header/Header.js +1 -903
  99. package/public/components/header/Header.js.map +1 -1
  100. package/public/components/hero/Hero.js +1 -271
  101. package/public/components/hero/Hero.js.map +1 -1
  102. package/public/components/layer/Layer.js +1 -453
  103. package/public/components/layer/Layer.js.map +1 -1
  104. package/public/components/layer/Layer.svelte +2 -1
  105. package/public/components/link/Link.js +1 -380
  106. package/public/components/link/Link.js.map +1 -1
  107. package/public/components/listbox/Listbox.js +1 -595
  108. package/public/components/listbox/Listbox.js.map +1 -1
  109. package/public/components/listbox/Listbox.nested.js +1 -629
  110. package/public/components/listbox/Listbox.nested.js.map +1 -1
  111. package/public/components/loader/Loader.js +1 -246
  112. package/public/components/loader/Loader.js.map +1 -1
  113. package/public/components/loader/Loader.nested.js +1 -176
  114. package/public/components/loader/Loader.nested.js.map +1 -1
  115. package/public/components/modal/Modal.js +1 -395
  116. package/public/components/modal/Modal.js.map +1 -1
  117. package/public/components/notification/Notification.js +1 -458
  118. package/public/components/notification/Notification.js.map +1 -1
  119. package/public/components/optionbutton/OptionButton.js +1 -316
  120. package/public/components/optionbutton/OptionButton.js.map +1 -1
  121. package/public/components/overlay/Overlay.js +1 -104
  122. package/public/components/overlay/Overlay.js.map +1 -1
  123. package/public/components/overlay/OverlayLoader.js +1 -151
  124. package/public/components/overlay/OverlayLoader.js.map +1 -1
  125. package/public/components/pagination/Pagination.js +1 -613
  126. package/public/components/pagination/Pagination.js.map +1 -1
  127. package/public/components/passwordinput/PasswordInput.js +1 -291
  128. package/public/components/passwordinput/PasswordInput.js.map +1 -1
  129. package/public/components/phonenumber/PhoneNumber.js +1 -6894
  130. package/public/components/phonenumber/PhoneNumber.js.map +1 -1
  131. package/public/components/price/Price.js +1 -768
  132. package/public/components/price/Price.js.map +1 -1
  133. package/public/components/progressbar/ProgressBar.js +1 -278
  134. package/public/components/progressbar/ProgressBar.js.map +1 -1
  135. package/public/components/quantityselector/QuantitySelector.js +1 -333
  136. package/public/components/quantityselector/QuantitySelector.js.map +1 -1
  137. package/public/components/quantityselector/QuantitySelector.svelte +6 -3
  138. package/public/components/radio/Radio.js +1 -273
  139. package/public/components/radio/Radio.js.map +1 -1
  140. package/public/components/radiogroup/RadioGroup.js +1 -414
  141. package/public/components/radiogroup/RadioGroup.js.map +1 -1
  142. package/public/components/ratings/StarsInput.js +1 -292
  143. package/public/components/ratings/StarsInput.js.map +1 -1
  144. package/public/components/ratings/StarsResult.js +1 -246
  145. package/public/components/ratings/StarsResult.js.map +1 -1
  146. package/public/components/select/Select.js +1 -451
  147. package/public/components/select/Select.js.map +1 -1
  148. package/public/components/sidebar/Sidebar.js +1 -784
  149. package/public/components/sidebar/Sidebar.js.map +1 -1
  150. package/public/components/sidebar/sidebar-feature-group.nested.js +1 -594
  151. package/public/components/sidebar/sidebar-feature-group.nested.js.map +1 -1
  152. package/public/components/sidebar/sidebar-feature.nested.js +1 -402
  153. package/public/components/sidebar/sidebar-feature.nested.js.map +1 -1
  154. package/public/components/sidebar/sidebar-section.nested.js +1 -394
  155. package/public/components/sidebar/sidebar-section.nested.js.map +1 -1
  156. package/public/components/sidebar/sidebar-segment.nested.js +1 -200
  157. package/public/components/sidebar/sidebar-segment.nested.js.map +1 -1
  158. package/public/components/sidebar/sidebar-separator.nested.js +1 -49
  159. package/public/components/sidebar/sidebar-separator.nested.js.map +1 -1
  160. package/public/components/sidebar/sidebar-sub-features.nested.js +1 -312
  161. package/public/components/sidebar/sidebar-sub-features.nested.js.map +1 -1
  162. package/public/components/sidebar/sidebar-user.nested.js +1 -733
  163. package/public/components/sidebar/sidebar-user.nested.js.map +1 -1
  164. package/public/components/stepper/Stepper.js +1 -371
  165. package/public/components/stepper/Stepper.js.map +1 -1
  166. package/public/components/tabs/Tabs.js +1 -615
  167. package/public/components/tabs/Tabs.js.map +1 -1
  168. package/public/components/tabs/Tabs.nested.js +1 -472
  169. package/public/components/tabs/Tabs.nested.js.map +1 -1
  170. package/public/components/tag/Tag.js +1 -665
  171. package/public/components/tag/Tag.js.map +1 -1
  172. package/public/components/tag/Tag.nested.js +1 -554
  173. package/public/components/tag/Tag.nested.js.map +1 -1
  174. package/public/components/taglist/TagList.js +1 -475
  175. package/public/components/taglist/TagList.js.map +1 -1
  176. package/public/components/textarea/Textarea.js +1 -303
  177. package/public/components/textarea/Textarea.js.map +1 -1
  178. package/public/components/textinput/Textinput.js +1 -497
  179. package/public/components/textinput/Textinput.js.map +1 -1
  180. package/public/components/textinput/Textinput.nested.js +1 -320
  181. package/public/components/textinput/Textinput.nested.js.map +1 -1
  182. package/public/components/toggle/Toggle.js +1 -278
  183. package/public/components/toggle/Toggle.js.map +1 -1
  184. package/public/components/tooltip/Tooltip.js +1 -173
  185. package/public/components/tooltip/Tooltip.js.map +1 -1
  186. package/public/index-c33b3772.js +1 -873
  187. package/public/index-c33b3772.js.map +1 -1
  188. package/public/linear-f46d7e9e.js +1 -700
  189. package/public/linear-f46d7e9e.js.map +1 -1
  190. package/public/path-1b5da959.js +1 -186
  191. package/public/path-1b5da959.js.map +1 -1
  192. package/public/sidebar-service-275bf9ef.js +1 -129
  193. package/public/sidebar-service-275bf9ef.js.map +1 -1
  194. package/public/symbol-b05a6e2b.js +1 -169
  195. package/public/symbol-b05a6e2b.js.map +1 -1
  196. package/public/transform-15d69d5d.js +1 -2743
  197. package/public/transform-15d69d5d.js.map +1 -1
  198. package/public/utilities/stories/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"linear-f46d7e9e.js","sources":["../node_modules/d3-array/src/ascending.js","../node_modules/d3-array/src/descending.js","../node_modules/d3-array/src/bisector.js","../node_modules/d3-array/src/number.js","../node_modules/d3-array/src/bisect.js","../node_modules/d3-array/src/ticks.js","../node_modules/d3-interpolate/src/round.js","../node_modules/d3-format/src/formatDecimal.js","../node_modules/d3-format/src/exponent.js","../node_modules/d3-format/src/formatGroup.js","../node_modules/d3-format/src/formatNumerals.js","../node_modules/d3-format/src/formatSpecifier.js","../node_modules/d3-format/src/formatTrim.js","../node_modules/d3-format/src/formatPrefixAuto.js","../node_modules/d3-format/src/formatRounded.js","../node_modules/d3-format/src/formatTypes.js","../node_modules/d3-format/src/identity.js","../node_modules/d3-format/src/locale.js","../node_modules/d3-format/src/defaultLocale.js","../node_modules/d3-format/src/precisionFixed.js","../node_modules/d3-format/src/precisionPrefix.js","../node_modules/d3-format/src/precisionRound.js","../node_modules/d3-scale/src/init.js","../node_modules/d3-scale/src/constant.js","../node_modules/d3-scale/src/number.js","../node_modules/d3-scale/src/continuous.js","../node_modules/d3-scale/src/tickFormat.js","../node_modules/d3-scale/src/linear.js"],"sourcesContent":["export default function ascending(a, b) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","export default function descending(a, b) {\n return a == null || b == null ? NaN\n : b < a ? -1\n : b > a ? 1\n : b >= a ? 0\n : NaN;\n}\n","import ascending from \"./ascending.js\";\nimport descending from \"./descending.js\";\n\nexport default function bisector(f) {\n let compare1, compare2, delta;\n\n // If an accessor is specified, promote it to a comparator. In this case we\n // can test whether the search value is (self-) comparable. We can’t do this\n // for a comparator (except for specific, known comparators) because we can’t\n // tell if the comparator is symmetric, and an asymmetric comparator can’t be\n // used to test whether a single value is comparable.\n if (f.length !== 2) {\n compare1 = ascending;\n compare2 = (d, x) => ascending(f(d), x);\n delta = (d, x) => f(d) - x;\n } else {\n compare1 = f === ascending || f === descending ? f : zero;\n compare2 = f;\n delta = f;\n }\n\n function left(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function right(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) <= 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function center(a, x, lo = 0, hi = a.length) {\n const i = left(a, x, lo, hi - 1);\n return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;\n }\n\n return {left, center, right};\n}\n\nfunction zero() {\n return 0;\n}\n","export default function number(x) {\n return x === null ? NaN : +x;\n}\n\nexport function* numbers(values, valueof) {\n if (valueof === undefined) {\n for (let value of values) {\n if (value != null && (value = +value) >= value) {\n yield value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {\n yield value;\n }\n }\n }\n}\n","import ascending from \"./ascending.js\";\nimport bisector from \"./bisector.js\";\nimport number from \"./number.js\";\n\nconst ascendingBisect = bisector(ascending);\nexport const bisectRight = ascendingBisect.right;\nexport const bisectLeft = ascendingBisect.left;\nexport const bisectCenter = bisector(number).center;\nexport default bisectRight;\n","const e10 = Math.sqrt(50),\n e5 = Math.sqrt(10),\n e2 = Math.sqrt(2);\n\nfunction tickSpec(start, stop, count) {\n const step = (stop - start) / Math.max(0, count),\n power = Math.floor(Math.log10(step)),\n error = step / Math.pow(10, power),\n factor = error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1;\n let i1, i2, inc;\n if (power < 0) {\n inc = Math.pow(10, -power) / factor;\n i1 = Math.round(start * inc);\n i2 = Math.round(stop * inc);\n if (i1 / inc < start) ++i1;\n if (i2 / inc > stop) --i2;\n inc = -inc;\n } else {\n inc = Math.pow(10, power) * factor;\n i1 = Math.round(start / inc);\n i2 = Math.round(stop / inc);\n if (i1 * inc < start) ++i1;\n if (i2 * inc > stop) --i2;\n }\n if (i2 < i1 && 0.5 <= count && count < 2) return tickSpec(start, stop, count * 2);\n return [i1, i2, inc];\n}\n\nexport default function ticks(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n if (!(count > 0)) return [];\n if (start === stop) return [start];\n const reverse = stop < start, [i1, i2, inc] = reverse ? tickSpec(stop, start, count) : tickSpec(start, stop, count);\n if (!(i2 >= i1)) return [];\n const n = i2 - i1 + 1, ticks = new Array(n);\n if (reverse) {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) * inc;\n } else {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) * inc;\n }\n return ticks;\n}\n\nexport function tickIncrement(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n return tickSpec(start, stop, count)[2];\n}\n\nexport function tickStep(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n const reverse = stop < start, inc = reverse ? tickIncrement(stop, start, count) : tickIncrement(start, stop, count);\n return (reverse ? -1 : 1) * (inc < 0 ? 1 / -inc : inc);\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n","export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\")) < 0) return null; // NaN, ±Infinity\n var i, coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\",\n suffix = symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\";\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier)),\n e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n prefix = prefixes[8 + e / 3];\n return function(value) {\n return f(k * value) + prefix;\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step) {\n return Math.max(0, -exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, value) {\n return Math.max(0, Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3 - exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, max) {\n step = Math.abs(step), max = Math.abs(max) - step;\n return Math.max(0, exponent(max) - exponent(step)) + 1;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","export default function constants(x) {\n return function() {\n return x;\n };\n}\n","export default function number(x) {\n return +x;\n}\n","import {bisect} from \"d3-array\";\nimport {interpolate as interpolateValue, interpolateNumber, interpolateRound} from \"d3-interpolate\";\nimport constant from \"./constant.js\";\nimport number from \"./number.js\";\n\nvar unit = [0, 1];\n\nexport function identity(x) {\n return x;\n}\n\nfunction normalize(a, b) {\n return (b -= (a = +a))\n ? function(x) { return (x - a) / b; }\n : constant(isNaN(b) ? NaN : 0.5);\n}\n\nfunction clamper(a, b) {\n var t;\n if (a > b) t = a, a = b, b = t;\n return function(x) { return Math.max(a, Math.min(b, x)); };\n}\n\n// normalize(a, b)(x) takes a domain value x in [a,b] and returns the corresponding parameter t in [0,1].\n// interpolate(a, b)(t) takes a parameter t in [0,1] and returns the corresponding range value x in [a,b].\nfunction bimap(domain, range, interpolate) {\n var d0 = domain[0], d1 = domain[1], r0 = range[0], r1 = range[1];\n if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate(r1, r0);\n else d0 = normalize(d0, d1), r0 = interpolate(r0, r1);\n return function(x) { return r0(d0(x)); };\n}\n\nfunction polymap(domain, range, interpolate) {\n var j = Math.min(domain.length, range.length) - 1,\n d = new Array(j),\n r = new Array(j),\n i = -1;\n\n // Reverse descending domains.\n if (domain[j] < domain[0]) {\n domain = domain.slice().reverse();\n range = range.slice().reverse();\n }\n\n while (++i < j) {\n d[i] = normalize(domain[i], domain[i + 1]);\n r[i] = interpolate(range[i], range[i + 1]);\n }\n\n return function(x) {\n var i = bisect(domain, x, 1, j) - 1;\n return r[i](d[i](x));\n };\n}\n\nexport function copy(source, target) {\n return target\n .domain(source.domain())\n .range(source.range())\n .interpolate(source.interpolate())\n .clamp(source.clamp())\n .unknown(source.unknown());\n}\n\nexport function transformer() {\n var domain = unit,\n range = unit,\n interpolate = interpolateValue,\n transform,\n untransform,\n unknown,\n clamp = identity,\n piecewise,\n output,\n input;\n\n function rescale() {\n var n = Math.min(domain.length, range.length);\n if (clamp !== identity) clamp = clamper(domain[0], domain[n - 1]);\n piecewise = n > 2 ? polymap : bimap;\n output = input = null;\n return scale;\n }\n\n function scale(x) {\n return x == null || isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x)));\n }\n\n scale.invert = function(y) {\n return clamp(untransform((input || (input = piecewise(range, domain.map(transform), interpolateNumber)))(y)));\n };\n\n scale.domain = function(_) {\n return arguments.length ? (domain = Array.from(_, number), rescale()) : domain.slice();\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), rescale()) : range.slice();\n };\n\n scale.rangeRound = function(_) {\n return range = Array.from(_), interpolate = interpolateRound, rescale();\n };\n\n scale.clamp = function(_) {\n return arguments.length ? (clamp = _ ? true : identity, rescale()) : clamp !== identity;\n };\n\n scale.interpolate = function(_) {\n return arguments.length ? (interpolate = _, rescale()) : interpolate;\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n return function(t, u) {\n transform = t, untransform = u;\n return rescale();\n };\n}\n\nexport default function continuous() {\n return transformer()(identity, identity);\n}\n","import {tickStep} from \"d3-array\";\nimport {format, formatPrefix, formatSpecifier, precisionFixed, precisionPrefix, precisionRound} from \"d3-format\";\n\nexport default function tickFormat(start, stop, count, specifier) {\n var step = tickStep(start, stop, count),\n precision;\n specifier = formatSpecifier(specifier == null ? \",f\" : specifier);\n switch (specifier.type) {\n case \"s\": {\n var value = Math.max(Math.abs(start), Math.abs(stop));\n if (specifier.precision == null && !isNaN(precision = precisionPrefix(step, value))) specifier.precision = precision;\n return formatPrefix(specifier, value);\n }\n case \"\":\n case \"e\":\n case \"g\":\n case \"p\":\n case \"r\": {\n if (specifier.precision == null && !isNaN(precision = precisionRound(step, Math.max(Math.abs(start), Math.abs(stop))))) specifier.precision = precision - (specifier.type === \"e\");\n break;\n }\n case \"f\":\n case \"%\": {\n if (specifier.precision == null && !isNaN(precision = precisionFixed(step))) specifier.precision = precision - (specifier.type === \"%\") * 2;\n break;\n }\n }\n return format(specifier);\n}\n","import {ticks, tickIncrement} from \"d3-array\";\nimport continuous, {copy} from \"./continuous.js\";\nimport {initRange} from \"./init.js\";\nimport tickFormat from \"./tickFormat.js\";\n\nexport function linearish(scale) {\n var domain = scale.domain;\n\n scale.ticks = function(count) {\n var d = domain();\n return ticks(d[0], d[d.length - 1], count == null ? 10 : count);\n };\n\n scale.tickFormat = function(count, specifier) {\n var d = domain();\n return tickFormat(d[0], d[d.length - 1], count == null ? 10 : count, specifier);\n };\n\n scale.nice = function(count) {\n if (count == null) count = 10;\n\n var d = domain();\n var i0 = 0;\n var i1 = d.length - 1;\n var start = d[i0];\n var stop = d[i1];\n var prestep;\n var step;\n var maxIter = 10;\n\n if (stop < start) {\n step = start, start = stop, stop = step;\n step = i0, i0 = i1, i1 = step;\n }\n \n while (maxIter-- > 0) {\n step = tickIncrement(start, stop, count);\n if (step === prestep) {\n d[i0] = start\n d[i1] = stop\n return domain(d);\n } else if (step > 0) {\n start = Math.floor(start / step) * step;\n stop = Math.ceil(stop / step) * step;\n } else if (step < 0) {\n start = Math.ceil(start * step) / step;\n stop = Math.floor(stop * step) / step;\n } else {\n break;\n }\n prestep = step;\n }\n\n return scale;\n };\n\n return scale;\n}\n\nexport default function linear() {\n var scale = continuous();\n\n scale.copy = function() {\n return copy(scale, linear());\n };\n\n initRange.apply(scale, arguments);\n\n return linearish(scale);\n}\n"],"names":["number","identity","constant","interpolate","interpolateValue"],"mappings":"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"}
1
+ {"version":3,"file":"linear-f46d7e9e.js","sources":["../node_modules/d3-array/src/ascending.js","../node_modules/d3-array/src/descending.js","../node_modules/d3-array/src/bisector.js","../node_modules/d3-array/src/bisect.js","../node_modules/d3-array/src/number.js","../node_modules/d3-array/src/ticks.js","../node_modules/d3-interpolate/src/round.js","../node_modules/d3-format/src/formatDecimal.js","../node_modules/d3-format/src/exponent.js","../node_modules/d3-format/src/formatSpecifier.js","../node_modules/d3-format/src/formatPrefixAuto.js","../node_modules/d3-format/src/formatRounded.js","../node_modules/d3-format/src/formatTypes.js","../node_modules/d3-format/src/identity.js","../node_modules/d3-format/src/locale.js","../node_modules/d3-format/src/defaultLocale.js","../node_modules/d3-format/src/formatGroup.js","../node_modules/d3-format/src/formatNumerals.js","../node_modules/d3-format/src/formatTrim.js","../node_modules/d3-scale/src/init.js","../node_modules/d3-scale/src/number.js","../node_modules/d3-scale/src/continuous.js","../node_modules/d3-scale/src/constant.js","../node_modules/d3-scale/src/tickFormat.js","../node_modules/d3-format/src/precisionPrefix.js","../node_modules/d3-format/src/precisionRound.js","../node_modules/d3-format/src/precisionFixed.js","../node_modules/d3-scale/src/linear.js"],"sourcesContent":["export default function ascending(a, b) {\n return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","export default function descending(a, b) {\n return a == null || b == null ? NaN\n : b < a ? -1\n : b > a ? 1\n : b >= a ? 0\n : NaN;\n}\n","import ascending from \"./ascending.js\";\nimport descending from \"./descending.js\";\n\nexport default function bisector(f) {\n let compare1, compare2, delta;\n\n // If an accessor is specified, promote it to a comparator. In this case we\n // can test whether the search value is (self-) comparable. We can’t do this\n // for a comparator (except for specific, known comparators) because we can’t\n // tell if the comparator is symmetric, and an asymmetric comparator can’t be\n // used to test whether a single value is comparable.\n if (f.length !== 2) {\n compare1 = ascending;\n compare2 = (d, x) => ascending(f(d), x);\n delta = (d, x) => f(d) - x;\n } else {\n compare1 = f === ascending || f === descending ? f : zero;\n compare2 = f;\n delta = f;\n }\n\n function left(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function right(a, x, lo = 0, hi = a.length) {\n if (lo < hi) {\n if (compare1(x, x) !== 0) return hi;\n do {\n const mid = (lo + hi) >>> 1;\n if (compare2(a[mid], x) <= 0) lo = mid + 1;\n else hi = mid;\n } while (lo < hi);\n }\n return lo;\n }\n\n function center(a, x, lo = 0, hi = a.length) {\n const i = left(a, x, lo, hi - 1);\n return i > lo && delta(a[i - 1], x) > -delta(a[i], x) ? i - 1 : i;\n }\n\n return {left, center, right};\n}\n\nfunction zero() {\n return 0;\n}\n","import ascending from \"./ascending.js\";\nimport bisector from \"./bisector.js\";\nimport number from \"./number.js\";\n\nconst ascendingBisect = bisector(ascending);\nexport const bisectRight = ascendingBisect.right;\nexport const bisectLeft = ascendingBisect.left;\nexport const bisectCenter = bisector(number).center;\nexport default bisectRight;\n","export default function number(x) {\n return x === null ? NaN : +x;\n}\n\nexport function* numbers(values, valueof) {\n if (valueof === undefined) {\n for (let value of values) {\n if (value != null && (value = +value) >= value) {\n yield value;\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {\n yield value;\n }\n }\n }\n}\n","const e10 = Math.sqrt(50),\n e5 = Math.sqrt(10),\n e2 = Math.sqrt(2);\n\nfunction tickSpec(start, stop, count) {\n const step = (stop - start) / Math.max(0, count),\n power = Math.floor(Math.log10(step)),\n error = step / Math.pow(10, power),\n factor = error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1;\n let i1, i2, inc;\n if (power < 0) {\n inc = Math.pow(10, -power) / factor;\n i1 = Math.round(start * inc);\n i2 = Math.round(stop * inc);\n if (i1 / inc < start) ++i1;\n if (i2 / inc > stop) --i2;\n inc = -inc;\n } else {\n inc = Math.pow(10, power) * factor;\n i1 = Math.round(start / inc);\n i2 = Math.round(stop / inc);\n if (i1 * inc < start) ++i1;\n if (i2 * inc > stop) --i2;\n }\n if (i2 < i1 && 0.5 <= count && count < 2) return tickSpec(start, stop, count * 2);\n return [i1, i2, inc];\n}\n\nexport default function ticks(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n if (!(count > 0)) return [];\n if (start === stop) return [start];\n const reverse = stop < start, [i1, i2, inc] = reverse ? tickSpec(stop, start, count) : tickSpec(start, stop, count);\n if (!(i2 >= i1)) return [];\n const n = i2 - i1 + 1, ticks = new Array(n);\n if (reverse) {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i2 - i) * inc;\n } else {\n if (inc < 0) for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) / -inc;\n else for (let i = 0; i < n; ++i) ticks[i] = (i1 + i) * inc;\n }\n return ticks;\n}\n\nexport function tickIncrement(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n return tickSpec(start, stop, count)[2];\n}\n\nexport function tickStep(start, stop, count) {\n stop = +stop, start = +start, count = +count;\n const reverse = stop < start, inc = reverse ? tickIncrement(stop, start, count) : tickIncrement(start, stop, count);\n return (reverse ? -1 : 1) * (inc < 0 ? 1 / -inc : inc);\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n","export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\")) < 0) return null; // NaN, ±Infinity\n var i, coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\",\n suffix = symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\";\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier)),\n e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n prefix = prefixes[8 + e / 3];\n return function(value) {\n return f(k * value) + prefix;\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","export default function number(x) {\n return +x;\n}\n","import {bisect} from \"d3-array\";\nimport {interpolate as interpolateValue, interpolateNumber, interpolateRound} from \"d3-interpolate\";\nimport constant from \"./constant.js\";\nimport number from \"./number.js\";\n\nvar unit = [0, 1];\n\nexport function identity(x) {\n return x;\n}\n\nfunction normalize(a, b) {\n return (b -= (a = +a))\n ? function(x) { return (x - a) / b; }\n : constant(isNaN(b) ? NaN : 0.5);\n}\n\nfunction clamper(a, b) {\n var t;\n if (a > b) t = a, a = b, b = t;\n return function(x) { return Math.max(a, Math.min(b, x)); };\n}\n\n// normalize(a, b)(x) takes a domain value x in [a,b] and returns the corresponding parameter t in [0,1].\n// interpolate(a, b)(t) takes a parameter t in [0,1] and returns the corresponding range value x in [a,b].\nfunction bimap(domain, range, interpolate) {\n var d0 = domain[0], d1 = domain[1], r0 = range[0], r1 = range[1];\n if (d1 < d0) d0 = normalize(d1, d0), r0 = interpolate(r1, r0);\n else d0 = normalize(d0, d1), r0 = interpolate(r0, r1);\n return function(x) { return r0(d0(x)); };\n}\n\nfunction polymap(domain, range, interpolate) {\n var j = Math.min(domain.length, range.length) - 1,\n d = new Array(j),\n r = new Array(j),\n i = -1;\n\n // Reverse descending domains.\n if (domain[j] < domain[0]) {\n domain = domain.slice().reverse();\n range = range.slice().reverse();\n }\n\n while (++i < j) {\n d[i] = normalize(domain[i], domain[i + 1]);\n r[i] = interpolate(range[i], range[i + 1]);\n }\n\n return function(x) {\n var i = bisect(domain, x, 1, j) - 1;\n return r[i](d[i](x));\n };\n}\n\nexport function copy(source, target) {\n return target\n .domain(source.domain())\n .range(source.range())\n .interpolate(source.interpolate())\n .clamp(source.clamp())\n .unknown(source.unknown());\n}\n\nexport function transformer() {\n var domain = unit,\n range = unit,\n interpolate = interpolateValue,\n transform,\n untransform,\n unknown,\n clamp = identity,\n piecewise,\n output,\n input;\n\n function rescale() {\n var n = Math.min(domain.length, range.length);\n if (clamp !== identity) clamp = clamper(domain[0], domain[n - 1]);\n piecewise = n > 2 ? polymap : bimap;\n output = input = null;\n return scale;\n }\n\n function scale(x) {\n return x == null || isNaN(x = +x) ? unknown : (output || (output = piecewise(domain.map(transform), range, interpolate)))(transform(clamp(x)));\n }\n\n scale.invert = function(y) {\n return clamp(untransform((input || (input = piecewise(range, domain.map(transform), interpolateNumber)))(y)));\n };\n\n scale.domain = function(_) {\n return arguments.length ? (domain = Array.from(_, number), rescale()) : domain.slice();\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), rescale()) : range.slice();\n };\n\n scale.rangeRound = function(_) {\n return range = Array.from(_), interpolate = interpolateRound, rescale();\n };\n\n scale.clamp = function(_) {\n return arguments.length ? (clamp = _ ? true : identity, rescale()) : clamp !== identity;\n };\n\n scale.interpolate = function(_) {\n return arguments.length ? (interpolate = _, rescale()) : interpolate;\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n return function(t, u) {\n transform = t, untransform = u;\n return rescale();\n };\n}\n\nexport default function continuous() {\n return transformer()(identity, identity);\n}\n","export default function constants(x) {\n return function() {\n return x;\n };\n}\n","import {tickStep} from \"d3-array\";\nimport {format, formatPrefix, formatSpecifier, precisionFixed, precisionPrefix, precisionRound} from \"d3-format\";\n\nexport default function tickFormat(start, stop, count, specifier) {\n var step = tickStep(start, stop, count),\n precision;\n specifier = formatSpecifier(specifier == null ? \",f\" : specifier);\n switch (specifier.type) {\n case \"s\": {\n var value = Math.max(Math.abs(start), Math.abs(stop));\n if (specifier.precision == null && !isNaN(precision = precisionPrefix(step, value))) specifier.precision = precision;\n return formatPrefix(specifier, value);\n }\n case \"\":\n case \"e\":\n case \"g\":\n case \"p\":\n case \"r\": {\n if (specifier.precision == null && !isNaN(precision = precisionRound(step, Math.max(Math.abs(start), Math.abs(stop))))) specifier.precision = precision - (specifier.type === \"e\");\n break;\n }\n case \"f\":\n case \"%\": {\n if (specifier.precision == null && !isNaN(precision = precisionFixed(step))) specifier.precision = precision - (specifier.type === \"%\") * 2;\n break;\n }\n }\n return format(specifier);\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, value) {\n return Math.max(0, Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3 - exponent(Math.abs(step)));\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step, max) {\n step = Math.abs(step), max = Math.abs(max) - step;\n return Math.max(0, exponent(max) - exponent(step)) + 1;\n}\n","import exponent from \"./exponent.js\";\n\nexport default function(step) {\n return Math.max(0, -exponent(Math.abs(step)));\n}\n","import {ticks, tickIncrement} from \"d3-array\";\nimport continuous, {copy} from \"./continuous.js\";\nimport {initRange} from \"./init.js\";\nimport tickFormat from \"./tickFormat.js\";\n\nexport function linearish(scale) {\n var domain = scale.domain;\n\n scale.ticks = function(count) {\n var d = domain();\n return ticks(d[0], d[d.length - 1], count == null ? 10 : count);\n };\n\n scale.tickFormat = function(count, specifier) {\n var d = domain();\n return tickFormat(d[0], d[d.length - 1], count == null ? 10 : count, specifier);\n };\n\n scale.nice = function(count) {\n if (count == null) count = 10;\n\n var d = domain();\n var i0 = 0;\n var i1 = d.length - 1;\n var start = d[i0];\n var stop = d[i1];\n var prestep;\n var step;\n var maxIter = 10;\n\n if (stop < start) {\n step = start, start = stop, stop = step;\n step = i0, i0 = i1, i1 = step;\n }\n \n while (maxIter-- > 0) {\n step = tickIncrement(start, stop, count);\n if (step === prestep) {\n d[i0] = start\n d[i1] = stop\n return domain(d);\n } else if (step > 0) {\n start = Math.floor(start / step) * step;\n stop = Math.ceil(stop / step) * step;\n } else if (step < 0) {\n start = Math.ceil(start * step) / step;\n stop = Math.floor(stop * step) / step;\n } else {\n break;\n }\n prestep = step;\n }\n\n return scale;\n };\n\n return scale;\n}\n\nexport default function linear() {\n var scale = continuous();\n\n scale.copy = function() {\n return copy(scale, linear());\n };\n\n initRange.apply(scale, arguments);\n\n return linearish(scale);\n}\n"],"names":["ascending","a","b","NaN","descending","bisector","f","compare1","compare2","delta","left","x","lo","hi","length","mid","d","zero","center","i","right","bisectRight","bisect","e10","Math","sqrt","e5","e2","tickSpec","start","stop","count","step","max","power","floor","log10","error","pow","factor","i1","i2","inc","round","tickIncrement","tickStep","reverse","interpolateRound","t","formatDecimalParts","p","toExponential","indexOf","coefficient","slice","exponent","abs","prefixExponent","re","formatSpecifier","specifier","match","exec","Error","FormatSpecifier","fill","align","sign","symbol","width","comma","precision","trim","type","this","undefined","formatRounded","Array","join","prototype","toString","formatTypes","toFixed","c","toLocaleString","replace","e","g","toPrecision","o","r","s","min","n","X","toUpperCase","identity$1","locale","format","formatPrefix","map","prefixes","formatLocale","grouping","thousands","group","identity","call","Number","value","j","push","substring","currencyPrefix","currency","currencySuffix","decimal","numerals","formatNumerals","String","percent","minus","nan","newFormat","prefix","test","toLowerCase","suffix","formatType","maybeSuffix","valuePrefix","valueSuffix","valueNegative","isNaN","out","i0","formatTrim","charCodeAt","Infinity","padding","k","initRange","domain","range","arguments","number","unit","normalize","bimap","interpolate","d0","d1","r0","r1","polymap","copy","source","target","clamp","unknown","transformer","transform","untransform","piecewise","output","input","interpolateValue","rescale","scale","invert","y","interpolateNumber","_","from","rangeRound","u","continuous","tickFormat","precisionPrefix","precisionRound","precisionFixed","linearish","ticks","nice","prestep","maxIter","ceil","linear","apply"],"mappings":"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"}
@@ -1,187 +1,2 @@
1
- const pi$1 = Math.PI,
2
- tau$1 = 2 * pi$1,
3
- epsilon$1 = 1e-6,
4
- tauEpsilon = tau$1 - epsilon$1;
5
-
6
- function append(strings) {
7
- this._ += strings[0];
8
- for (let i = 1, n = strings.length; i < n; ++i) {
9
- this._ += arguments[i] + strings[i];
10
- }
11
- }
12
-
13
- function appendRound(digits) {
14
- let d = Math.floor(digits);
15
- if (!(d >= 0)) throw new Error(`invalid digits: ${digits}`);
16
- if (d > 15) return append;
17
- const k = 10 ** d;
18
- return function(strings) {
19
- this._ += strings[0];
20
- for (let i = 1, n = strings.length; i < n; ++i) {
21
- this._ += Math.round(arguments[i] * k) / k + strings[i];
22
- }
23
- };
24
- }
25
-
26
- class Path {
27
- constructor(digits) {
28
- this._x0 = this._y0 = // start of current subpath
29
- this._x1 = this._y1 = null; // end of current subpath
30
- this._ = "";
31
- this._append = digits == null ? append : appendRound(digits);
32
- }
33
- moveTo(x, y) {
34
- this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}`;
35
- }
36
- closePath() {
37
- if (this._x1 !== null) {
38
- this._x1 = this._x0, this._y1 = this._y0;
39
- this._append`Z`;
40
- }
41
- }
42
- lineTo(x, y) {
43
- this._append`L${this._x1 = +x},${this._y1 = +y}`;
44
- }
45
- quadraticCurveTo(x1, y1, x, y) {
46
- this._append`Q${+x1},${+y1},${this._x1 = +x},${this._y1 = +y}`;
47
- }
48
- bezierCurveTo(x1, y1, x2, y2, x, y) {
49
- this._append`C${+x1},${+y1},${+x2},${+y2},${this._x1 = +x},${this._y1 = +y}`;
50
- }
51
- arcTo(x1, y1, x2, y2, r) {
52
- x1 = +x1, y1 = +y1, x2 = +x2, y2 = +y2, r = +r;
53
-
54
- // Is the radius negative? Error.
55
- if (r < 0) throw new Error(`negative radius: ${r}`);
56
-
57
- let x0 = this._x1,
58
- y0 = this._y1,
59
- x21 = x2 - x1,
60
- y21 = y2 - y1,
61
- x01 = x0 - x1,
62
- y01 = y0 - y1,
63
- l01_2 = x01 * x01 + y01 * y01;
64
-
65
- // Is this path empty? Move to (x1,y1).
66
- if (this._x1 === null) {
67
- this._append`M${this._x1 = x1},${this._y1 = y1}`;
68
- }
69
-
70
- // Or, is (x1,y1) coincident with (x0,y0)? Do nothing.
71
- else if (!(l01_2 > epsilon$1));
72
-
73
- // Or, are (x0,y0), (x1,y1) and (x2,y2) collinear?
74
- // Equivalently, is (x1,y1) coincident with (x2,y2)?
75
- // Or, is the radius zero? Line to (x1,y1).
76
- else if (!(Math.abs(y01 * x21 - y21 * x01) > epsilon$1) || !r) {
77
- this._append`L${this._x1 = x1},${this._y1 = y1}`;
78
- }
79
-
80
- // Otherwise, draw an arc!
81
- else {
82
- let x20 = x2 - x0,
83
- y20 = y2 - y0,
84
- l21_2 = x21 * x21 + y21 * y21,
85
- l20_2 = x20 * x20 + y20 * y20,
86
- l21 = Math.sqrt(l21_2),
87
- l01 = Math.sqrt(l01_2),
88
- l = r * Math.tan((pi$1 - Math.acos((l21_2 + l01_2 - l20_2) / (2 * l21 * l01))) / 2),
89
- t01 = l / l01,
90
- t21 = l / l21;
91
-
92
- // If the start tangent is not coincident with (x0,y0), line to.
93
- if (Math.abs(t01 - 1) > epsilon$1) {
94
- this._append`L${x1 + t01 * x01},${y1 + t01 * y01}`;
95
- }
96
-
97
- this._append`A${r},${r},0,0,${+(y01 * x20 > x01 * y20)},${this._x1 = x1 + t21 * x21},${this._y1 = y1 + t21 * y21}`;
98
- }
99
- }
100
- arc(x, y, r, a0, a1, ccw) {
101
- x = +x, y = +y, r = +r, ccw = !!ccw;
102
-
103
- // Is the radius negative? Error.
104
- if (r < 0) throw new Error(`negative radius: ${r}`);
105
-
106
- let dx = r * Math.cos(a0),
107
- dy = r * Math.sin(a0),
108
- x0 = x + dx,
109
- y0 = y + dy,
110
- cw = 1 ^ ccw,
111
- da = ccw ? a0 - a1 : a1 - a0;
112
-
113
- // Is this path empty? Move to (x0,y0).
114
- if (this._x1 === null) {
115
- this._append`M${x0},${y0}`;
116
- }
117
-
118
- // Or, is (x0,y0) not coincident with the previous point? Line to (x0,y0).
119
- else if (Math.abs(this._x1 - x0) > epsilon$1 || Math.abs(this._y1 - y0) > epsilon$1) {
120
- this._append`L${x0},${y0}`;
121
- }
122
-
123
- // Is this arc empty? We’re done.
124
- if (!r) return;
125
-
126
- // Does the angle go the wrong way? Flip the direction.
127
- if (da < 0) da = da % tau$1 + tau$1;
128
-
129
- // Is this a complete circle? Draw two arcs to complete the circle.
130
- if (da > tauEpsilon) {
131
- this._append`A${r},${r},0,1,${cw},${x - dx},${y - dy}A${r},${r},0,1,${cw},${this._x1 = x0},${this._y1 = y0}`;
132
- }
133
-
134
- // Is this arc non-empty? Draw an arc!
135
- else if (da > epsilon$1) {
136
- this._append`A${r},${r},0,${+(da >= pi$1)},${cw},${this._x1 = x + r * Math.cos(a1)},${this._y1 = y + r * Math.sin(a1)}`;
137
- }
138
- }
139
- rect(x, y, w, h) {
140
- this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}h${w = +w}v${+h}h${-w}Z`;
141
- }
142
- toString() {
143
- return this._;
144
- }
145
- }
146
-
147
- const abs = Math.abs;
148
- const atan2 = Math.atan2;
149
- const cos = Math.cos;
150
- const max = Math.max;
151
- const min = Math.min;
152
- const sin = Math.sin;
153
- const sqrt = Math.sqrt;
154
-
155
- const epsilon = 1e-12;
156
- const pi = Math.PI;
157
- const halfPi = pi / 2;
158
- const tau = 2 * pi;
159
-
160
- function acos(x) {
161
- return x > 1 ? 0 : x < -1 ? pi : Math.acos(x);
162
- }
163
-
164
- function asin(x) {
165
- return x >= 1 ? halfPi : x <= -1 ? -halfPi : Math.asin(x);
166
- }
167
-
168
- function withPath(shape) {
169
- let digits = 3;
170
-
171
- shape.digits = function(_) {
172
- if (!arguments.length) return digits;
173
- if (_ == null) {
174
- digits = null;
175
- } else {
176
- const d = Math.floor(_);
177
- if (!(d >= 0)) throw new RangeError(`invalid digits: ${_}`);
178
- digits = d;
179
- }
180
- return shape;
181
- };
182
-
183
- return () => new Path(digits);
184
- }
185
-
186
- export { sqrt as a, abs as b, cos as c, atan2 as d, epsilon as e, asin as f, acos as g, halfPi as h, max as i, min as m, pi as p, sin as s, tau as t, withPath as w };
1
+ const t=Math.PI,s=2*t,i=1e-6,h=s-i;function a(t){this._+=t[0];for(let s=1,i=t.length;s<i;++s)this._+=arguments[s]+t[s]}class n{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=null==t?a:function(t){let s=Math.floor(t);if(!(s>=0))throw new Error(`invalid digits: ${t}`);if(s>15)return a;const i=10**s;return function(t){this._+=t[0];for(let s=1,h=t.length;s<h;++s)this._+=Math.round(arguments[s]*i)/i+t[s]}}(t)}moveTo(t,s){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+s}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,s){this._append`L${this._x1=+t},${this._y1=+s}`}quadraticCurveTo(t,s,i,h){this._append`Q${+t},${+s},${this._x1=+i},${this._y1=+h}`}bezierCurveTo(t,s,i,h,a,n){this._append`C${+t},${+s},${+i},${+h},${this._x1=+a},${this._y1=+n}`}arcTo(s,h,a,n,e){if(s=+s,h=+h,a=+a,n=+n,(e=+e)<0)throw new Error(`negative radius: ${e}`);let _=this._x1,$=this._y1,r=a-s,o=n-h,l=_-s,p=$-h,M=l*l+p*p;if(null===this._x1)this._append`M${this._x1=s},${this._y1=h}`;else if(M>i)if(Math.abs(p*r-o*l)>i&&e){let u=a-_,c=n-$,d=r*r+o*o,x=u*u+c*c,f=Math.sqrt(d),y=Math.sqrt(M),g=e*Math.tan((t-Math.acos((d+M-x)/(2*f*y)))/2),w=g/y,v=g/f;Math.abs(w-1)>i&&this._append`L${s+w*l},${h+w*p}`,this._append`A${e},${e},0,0,${+(p*u>l*c)},${this._x1=s+v*r},${this._y1=h+v*o}`}else this._append`L${this._x1=s},${this._y1=h}`;else;}arc(a,n,e,_,$,r){if(a=+a,n=+n,r=!!r,(e=+e)<0)throw new Error(`negative radius: ${e}`);let o=e*Math.cos(_),l=e*Math.sin(_),p=a+o,M=n+l,u=1^r,c=r?_-$:$-_;null===this._x1?this._append`M${p},${M}`:(Math.abs(this._x1-p)>i||Math.abs(this._y1-M)>i)&&this._append`L${p},${M}`,e&&(c<0&&(c=c%s+s),c>h?this._append`A${e},${e},0,1,${u},${a-o},${n-l}A${e},${e},0,1,${u},${this._x1=p},${this._y1=M}`:c>i&&this._append`A${e},${e},0,${+(c>=t)},${u},${this._x1=a+e*Math.cos($)},${this._y1=n+e*Math.sin($)}`)}rect(t,s,i,h){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+s}h${i=+i}v${+h}h${-i}Z`}toString(){return this._}}const e=Math.abs,_=Math.atan2,$=Math.cos,r=Math.max,o=Math.min,l=Math.sin,p=Math.sqrt,M=1e-12,u=Math.PI,c=u/2,d=2*u;function x(t){return t>1?0:t<-1?u:Math.acos(t)}function f(t){return t>=1?c:t<=-1?-c:Math.asin(t)}function y(t){let s=3;return t.digits=function(i){if(!arguments.length)return s;if(null==i)s=null;else{const t=Math.floor(i);if(!(t>=0))throw new RangeError(`invalid digits: ${i}`);s=t}return t},()=>new n(s)}export{p as a,e as b,$ as c,_ as d,M as e,f,x as g,c as h,r as i,o as m,u as p,l as s,d as t,y as w};
187
2
  //# sourceMappingURL=path-1b5da959.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"path-1b5da959.js","sources":["../node_modules/d3-path/src/path.js","../node_modules/d3-shape/src/math.js","../node_modules/d3-shape/src/path.js"],"sourcesContent":["const pi = Math.PI,\n tau = 2 * pi,\n epsilon = 1e-6,\n tauEpsilon = tau - epsilon;\n\nfunction append(strings) {\n this._ += strings[0];\n for (let i = 1, n = strings.length; i < n; ++i) {\n this._ += arguments[i] + strings[i];\n }\n}\n\nfunction appendRound(digits) {\n let d = Math.floor(digits);\n if (!(d >= 0)) throw new Error(`invalid digits: ${digits}`);\n if (d > 15) return append;\n const k = 10 ** d;\n return function(strings) {\n this._ += strings[0];\n for (let i = 1, n = strings.length; i < n; ++i) {\n this._ += Math.round(arguments[i] * k) / k + strings[i];\n }\n };\n}\n\nexport class Path {\n constructor(digits) {\n this._x0 = this._y0 = // start of current subpath\n this._x1 = this._y1 = null; // end of current subpath\n this._ = \"\";\n this._append = digits == null ? append : appendRound(digits);\n }\n moveTo(x, y) {\n this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}`;\n }\n closePath() {\n if (this._x1 !== null) {\n this._x1 = this._x0, this._y1 = this._y0;\n this._append`Z`;\n }\n }\n lineTo(x, y) {\n this._append`L${this._x1 = +x},${this._y1 = +y}`;\n }\n quadraticCurveTo(x1, y1, x, y) {\n this._append`Q${+x1},${+y1},${this._x1 = +x},${this._y1 = +y}`;\n }\n bezierCurveTo(x1, y1, x2, y2, x, y) {\n this._append`C${+x1},${+y1},${+x2},${+y2},${this._x1 = +x},${this._y1 = +y}`;\n }\n arcTo(x1, y1, x2, y2, r) {\n x1 = +x1, y1 = +y1, x2 = +x2, y2 = +y2, r = +r;\n\n // Is the radius negative? Error.\n if (r < 0) throw new Error(`negative radius: ${r}`);\n\n let x0 = this._x1,\n y0 = this._y1,\n x21 = x2 - x1,\n y21 = y2 - y1,\n x01 = x0 - x1,\n y01 = y0 - y1,\n l01_2 = x01 * x01 + y01 * y01;\n\n // Is this path empty? Move to (x1,y1).\n if (this._x1 === null) {\n this._append`M${this._x1 = x1},${this._y1 = y1}`;\n }\n\n // Or, is (x1,y1) coincident with (x0,y0)? Do nothing.\n else if (!(l01_2 > epsilon));\n\n // Or, are (x0,y0), (x1,y1) and (x2,y2) collinear?\n // Equivalently, is (x1,y1) coincident with (x2,y2)?\n // Or, is the radius zero? Line to (x1,y1).\n else if (!(Math.abs(y01 * x21 - y21 * x01) > epsilon) || !r) {\n this._append`L${this._x1 = x1},${this._y1 = y1}`;\n }\n\n // Otherwise, draw an arc!\n else {\n let x20 = x2 - x0,\n y20 = y2 - y0,\n l21_2 = x21 * x21 + y21 * y21,\n l20_2 = x20 * x20 + y20 * y20,\n l21 = Math.sqrt(l21_2),\n l01 = Math.sqrt(l01_2),\n l = r * Math.tan((pi - Math.acos((l21_2 + l01_2 - l20_2) / (2 * l21 * l01))) / 2),\n t01 = l / l01,\n t21 = l / l21;\n\n // If the start tangent is not coincident with (x0,y0), line to.\n if (Math.abs(t01 - 1) > epsilon) {\n this._append`L${x1 + t01 * x01},${y1 + t01 * y01}`;\n }\n\n this._append`A${r},${r},0,0,${+(y01 * x20 > x01 * y20)},${this._x1 = x1 + t21 * x21},${this._y1 = y1 + t21 * y21}`;\n }\n }\n arc(x, y, r, a0, a1, ccw) {\n x = +x, y = +y, r = +r, ccw = !!ccw;\n\n // Is the radius negative? Error.\n if (r < 0) throw new Error(`negative radius: ${r}`);\n\n let dx = r * Math.cos(a0),\n dy = r * Math.sin(a0),\n x0 = x + dx,\n y0 = y + dy,\n cw = 1 ^ ccw,\n da = ccw ? a0 - a1 : a1 - a0;\n\n // Is this path empty? Move to (x0,y0).\n if (this._x1 === null) {\n this._append`M${x0},${y0}`;\n }\n\n // Or, is (x0,y0) not coincident with the previous point? Line to (x0,y0).\n else if (Math.abs(this._x1 - x0) > epsilon || Math.abs(this._y1 - y0) > epsilon) {\n this._append`L${x0},${y0}`;\n }\n\n // Is this arc empty? We’re done.\n if (!r) return;\n\n // Does the angle go the wrong way? Flip the direction.\n if (da < 0) da = da % tau + tau;\n\n // Is this a complete circle? Draw two arcs to complete the circle.\n if (da > tauEpsilon) {\n this._append`A${r},${r},0,1,${cw},${x - dx},${y - dy}A${r},${r},0,1,${cw},${this._x1 = x0},${this._y1 = y0}`;\n }\n\n // Is this arc non-empty? Draw an arc!\n else if (da > epsilon) {\n this._append`A${r},${r},0,${+(da >= pi)},${cw},${this._x1 = x + r * Math.cos(a1)},${this._y1 = y + r * Math.sin(a1)}`;\n }\n }\n rect(x, y, w, h) {\n this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}h${w = +w}v${+h}h${-w}Z`;\n }\n toString() {\n return this._;\n }\n}\n\nexport function path() {\n return new Path;\n}\n\n// Allow instanceof d3.path\npath.prototype = Path.prototype;\n\nexport function pathRound(digits = 3) {\n return new Path(+digits);\n}\n","export const abs = Math.abs;\nexport const atan2 = Math.atan2;\nexport const cos = Math.cos;\nexport const max = Math.max;\nexport const min = Math.min;\nexport const sin = Math.sin;\nexport const sqrt = Math.sqrt;\n\nexport const epsilon = 1e-12;\nexport const pi = Math.PI;\nexport const halfPi = pi / 2;\nexport const tau = 2 * pi;\n\nexport function acos(x) {\n return x > 1 ? 0 : x < -1 ? pi : Math.acos(x);\n}\n\nexport function asin(x) {\n return x >= 1 ? halfPi : x <= -1 ? -halfPi : Math.asin(x);\n}\n","import {Path} from \"d3-path\";\n\nexport function withPath(shape) {\n let digits = 3;\n\n shape.digits = function(_) {\n if (!arguments.length) return digits;\n if (_ == null) {\n digits = null;\n } else {\n const d = Math.floor(_);\n if (!(d >= 0)) throw new RangeError(`invalid digits: ${_}`);\n digits = d;\n }\n return shape;\n };\n\n return () => new Path(digits);\n}\n"],"names":["pi","tau","epsilon"],"mappings":"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"}
1
+ {"version":3,"file":"path-1b5da959.js","sources":["../node_modules/d3-path/src/path.js","../node_modules/d3-shape/src/math.js","../node_modules/d3-shape/src/path.js"],"sourcesContent":["const pi = Math.PI,\n tau = 2 * pi,\n epsilon = 1e-6,\n tauEpsilon = tau - epsilon;\n\nfunction append(strings) {\n this._ += strings[0];\n for (let i = 1, n = strings.length; i < n; ++i) {\n this._ += arguments[i] + strings[i];\n }\n}\n\nfunction appendRound(digits) {\n let d = Math.floor(digits);\n if (!(d >= 0)) throw new Error(`invalid digits: ${digits}`);\n if (d > 15) return append;\n const k = 10 ** d;\n return function(strings) {\n this._ += strings[0];\n for (let i = 1, n = strings.length; i < n; ++i) {\n this._ += Math.round(arguments[i] * k) / k + strings[i];\n }\n };\n}\n\nexport class Path {\n constructor(digits) {\n this._x0 = this._y0 = // start of current subpath\n this._x1 = this._y1 = null; // end of current subpath\n this._ = \"\";\n this._append = digits == null ? append : appendRound(digits);\n }\n moveTo(x, y) {\n this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}`;\n }\n closePath() {\n if (this._x1 !== null) {\n this._x1 = this._x0, this._y1 = this._y0;\n this._append`Z`;\n }\n }\n lineTo(x, y) {\n this._append`L${this._x1 = +x},${this._y1 = +y}`;\n }\n quadraticCurveTo(x1, y1, x, y) {\n this._append`Q${+x1},${+y1},${this._x1 = +x},${this._y1 = +y}`;\n }\n bezierCurveTo(x1, y1, x2, y2, x, y) {\n this._append`C${+x1},${+y1},${+x2},${+y2},${this._x1 = +x},${this._y1 = +y}`;\n }\n arcTo(x1, y1, x2, y2, r) {\n x1 = +x1, y1 = +y1, x2 = +x2, y2 = +y2, r = +r;\n\n // Is the radius negative? Error.\n if (r < 0) throw new Error(`negative radius: ${r}`);\n\n let x0 = this._x1,\n y0 = this._y1,\n x21 = x2 - x1,\n y21 = y2 - y1,\n x01 = x0 - x1,\n y01 = y0 - y1,\n l01_2 = x01 * x01 + y01 * y01;\n\n // Is this path empty? Move to (x1,y1).\n if (this._x1 === null) {\n this._append`M${this._x1 = x1},${this._y1 = y1}`;\n }\n\n // Or, is (x1,y1) coincident with (x0,y0)? Do nothing.\n else if (!(l01_2 > epsilon));\n\n // Or, are (x0,y0), (x1,y1) and (x2,y2) collinear?\n // Equivalently, is (x1,y1) coincident with (x2,y2)?\n // Or, is the radius zero? Line to (x1,y1).\n else if (!(Math.abs(y01 * x21 - y21 * x01) > epsilon) || !r) {\n this._append`L${this._x1 = x1},${this._y1 = y1}`;\n }\n\n // Otherwise, draw an arc!\n else {\n let x20 = x2 - x0,\n y20 = y2 - y0,\n l21_2 = x21 * x21 + y21 * y21,\n l20_2 = x20 * x20 + y20 * y20,\n l21 = Math.sqrt(l21_2),\n l01 = Math.sqrt(l01_2),\n l = r * Math.tan((pi - Math.acos((l21_2 + l01_2 - l20_2) / (2 * l21 * l01))) / 2),\n t01 = l / l01,\n t21 = l / l21;\n\n // If the start tangent is not coincident with (x0,y0), line to.\n if (Math.abs(t01 - 1) > epsilon) {\n this._append`L${x1 + t01 * x01},${y1 + t01 * y01}`;\n }\n\n this._append`A${r},${r},0,0,${+(y01 * x20 > x01 * y20)},${this._x1 = x1 + t21 * x21},${this._y1 = y1 + t21 * y21}`;\n }\n }\n arc(x, y, r, a0, a1, ccw) {\n x = +x, y = +y, r = +r, ccw = !!ccw;\n\n // Is the radius negative? Error.\n if (r < 0) throw new Error(`negative radius: ${r}`);\n\n let dx = r * Math.cos(a0),\n dy = r * Math.sin(a0),\n x0 = x + dx,\n y0 = y + dy,\n cw = 1 ^ ccw,\n da = ccw ? a0 - a1 : a1 - a0;\n\n // Is this path empty? Move to (x0,y0).\n if (this._x1 === null) {\n this._append`M${x0},${y0}`;\n }\n\n // Or, is (x0,y0) not coincident with the previous point? Line to (x0,y0).\n else if (Math.abs(this._x1 - x0) > epsilon || Math.abs(this._y1 - y0) > epsilon) {\n this._append`L${x0},${y0}`;\n }\n\n // Is this arc empty? We’re done.\n if (!r) return;\n\n // Does the angle go the wrong way? Flip the direction.\n if (da < 0) da = da % tau + tau;\n\n // Is this a complete circle? Draw two arcs to complete the circle.\n if (da > tauEpsilon) {\n this._append`A${r},${r},0,1,${cw},${x - dx},${y - dy}A${r},${r},0,1,${cw},${this._x1 = x0},${this._y1 = y0}`;\n }\n\n // Is this arc non-empty? Draw an arc!\n else if (da > epsilon) {\n this._append`A${r},${r},0,${+(da >= pi)},${cw},${this._x1 = x + r * Math.cos(a1)},${this._y1 = y + r * Math.sin(a1)}`;\n }\n }\n rect(x, y, w, h) {\n this._append`M${this._x0 = this._x1 = +x},${this._y0 = this._y1 = +y}h${w = +w}v${+h}h${-w}Z`;\n }\n toString() {\n return this._;\n }\n}\n\nexport function path() {\n return new Path;\n}\n\n// Allow instanceof d3.path\npath.prototype = Path.prototype;\n\nexport function pathRound(digits = 3) {\n return new Path(+digits);\n}\n","export const abs = Math.abs;\nexport const atan2 = Math.atan2;\nexport const cos = Math.cos;\nexport const max = Math.max;\nexport const min = Math.min;\nexport const sin = Math.sin;\nexport const sqrt = Math.sqrt;\n\nexport const epsilon = 1e-12;\nexport const pi = Math.PI;\nexport const halfPi = pi / 2;\nexport const tau = 2 * pi;\n\nexport function acos(x) {\n return x > 1 ? 0 : x < -1 ? pi : Math.acos(x);\n}\n\nexport function asin(x) {\n return x >= 1 ? halfPi : x <= -1 ? -halfPi : Math.asin(x);\n}\n","import {Path} from \"d3-path\";\n\nexport function withPath(shape) {\n let digits = 3;\n\n shape.digits = function(_) {\n if (!arguments.length) return digits;\n if (_ == null) {\n digits = null;\n } else {\n const d = Math.floor(_);\n if (!(d >= 0)) throw new RangeError(`invalid digits: ${_}`);\n digits = d;\n }\n return shape;\n };\n\n return () => new Path(digits);\n}\n"],"names":["pi","Math","PI","tau","epsilon","tauEpsilon","append","strings","this","_","i","n","length","arguments","Path","constructor","digits","_x0","_y0","_x1","_y1","_append","d","floor","Error","k","round","appendRound","moveTo","x","y","closePath","lineTo","quadraticCurveTo","x1","y1","bezierCurveTo","x2","y2","arcTo","r","x0","y0","x21","y21","x01","y01","l01_2","abs","x20","y20","l21_2","l20_2","l21","sqrt","l01","l","tan","acos","t01","t21","arc","a0","a1","ccw","dx","cos","dy","sin","cw","da","rect","w","h","toString","atan2","max","min","halfPi","asin","withPath","shape","RangeError"],"mappings":"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"}
@@ -1,130 +1,2 @@
1
- import { n as noop, s as safe_not_equal } from './index-c33b3772.js';
2
-
3
- const subscriber_queue = [];
4
- /**
5
- * Create a `Writable` store that allows both updating and reading by subscription.
6
- * @param {*=}value initial value
7
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
8
- */
9
- function writable(value, start = noop) {
10
- let stop;
11
- const subscribers = new Set();
12
- function set(new_value) {
13
- if (safe_not_equal(value, new_value)) {
14
- value = new_value;
15
- if (stop) { // store is ready
16
- const run_queue = !subscriber_queue.length;
17
- for (const subscriber of subscribers) {
18
- subscriber[1]();
19
- subscriber_queue.push(subscriber, value);
20
- }
21
- if (run_queue) {
22
- for (let i = 0; i < subscriber_queue.length; i += 2) {
23
- subscriber_queue[i][0](subscriber_queue[i + 1]);
24
- }
25
- subscriber_queue.length = 0;
26
- }
27
- }
28
- }
29
- }
30
- function update(fn) {
31
- set(fn(value));
32
- }
33
- function subscribe(run, invalidate = noop) {
34
- const subscriber = [run, invalidate];
35
- subscribers.add(subscriber);
36
- if (subscribers.size === 1) {
37
- stop = start(set) || noop;
38
- }
39
- run(value);
40
- return () => {
41
- subscribers.delete(subscriber);
42
- if (subscribers.size === 0 && stop) {
43
- stop();
44
- stop = null;
45
- }
46
- };
47
- }
48
- return { set, update, subscribe };
49
- }
50
-
51
- const sidebar = writable();
52
- let parsedData;
53
- function updateSidebarData(data) {
54
- if (data) {
55
- parsedData = typeof data === 'string' ? JSON.parse(data) : data;
56
- sidebar.set(parsedData);
57
- }
58
- }
59
- const isSidebarOpen = writable(false);
60
- function toggleSidebar(state) {
61
- if (typeof state === 'boolean') {
62
- isSidebarOpen.set(state);
63
- }
64
- else {
65
- isSidebarOpen.update(state => !state);
66
- }
67
- }
68
- const selectedFeature = writable();
69
- function selectFeature(code) {
70
- var _a, _b, _c;
71
- if (!parsedData) {
72
- return;
73
- }
74
- let items = [
75
- ...((_a = parsedData.FEATURES) !== null && _a !== void 0 ? _a : []),
76
- ...((_b = flatten(parsedData.UTILITIES)) !== null && _b !== void 0 ? _b : []),
77
- ...((_c = parsedData.USER_FEATURES) !== null && _c !== void 0 ? _c : []),
78
- ];
79
- if (parsedData.HOME) {
80
- items = [
81
- ...items,
82
- parsedData.HOME
83
- ];
84
- }
85
- if (!items.length) {
86
- return;
87
- }
88
- if (!code) {
89
- selectedFeature.set(undefined);
90
- return;
91
- }
92
- const tree = findMenuTreeWithCode(items, code);
93
- if (tree.length) {
94
- selectedFeature.set({
95
- lv0: tree[0],
96
- lv1: tree[1],
97
- lv2: tree[2]
98
- });
99
- }
100
- else {
101
- selectedFeature.set(undefined);
102
- }
103
- }
104
- function findMenuTreeWithCode(items, code) {
105
- const selection = [];
106
- for (const item of items) {
107
- if (item.code === code) {
108
- selection.push(item);
109
- return selection;
110
- }
111
- else if (item.items) {
112
- const prevSelection = findMenuTreeWithCode(item.items, code);
113
- if (prevSelection.length) {
114
- return [
115
- item,
116
- ...prevSelection
117
- ];
118
- }
119
- }
120
- }
121
- return selection;
122
- }
123
- function flatten(arrayOfArrays) {
124
- return arrayOfArrays.reduce((accumulator, array) => {
125
- return [...accumulator, ...array];
126
- }, []);
127
- }
128
-
129
- export { selectFeature as a, sidebar as b, isSidebarOpen as i, selectedFeature as s, toggleSidebar as t, updateSidebarData as u };
1
+ import{n as t,s as n}from"./index-c33b3772.js";const e=[];function o(o,s=t){let i;const r=new Set;function u(t){if(n(o,t)&&(o=t,i)){const t=!e.length;for(const t of r)t[1](),e.push(t,o);if(t){for(let t=0;t<e.length;t+=2)e[t][0](e[t+1]);e.length=0}}}return{set:u,update:function(t){u(t(o))},subscribe:function(n,e=t){const c=[n,e];return r.add(c),1===r.size&&(i=s(u)||t),n(o),()=>{r.delete(c),0===r.size&&i&&(i(),i=null)}}}}const s=o();let i;function r(t){t&&(i="string"==typeof t?JSON.parse(t):t,s.set(i))}const u=o(!1);function c(t){"boolean"==typeof t?u.set(t):u.update((t=>!t))}const f=o();function l(t){var n,e,o;if(!i)return;let s=[...null!==(n=i.FEATURES)&&void 0!==n?n:[],...null!==(r=i.UTILITIES,e=r.reduce(((t,n)=>[...t,...n]),[]))&&void 0!==e?e:[],...null!==(o=i.USER_FEATURES)&&void 0!==o?o:[]];var r;if(i.HOME&&(s=[...s,i.HOME]),!s.length)return;if(!t)return void f.set(void 0);const u=a(s,t);u.length?f.set({lv0:u[0],lv1:u[1],lv2:u[2]}):f.set(void 0)}function a(t,n){const e=[];for(const o of t){if(o.code===n)return e.push(o),e;if(o.items){const t=a(o.items,n);if(t.length)return[o,...t]}}return e}export{l as a,s as b,u as i,f as s,c as t,r as u};
130
2
  //# sourceMappingURL=sidebar-service-275bf9ef.js.map