@aivenio/aquarium 2.3.2 → 2.5.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 (52) hide show
  1. package/dist/_variables.scss +49 -0
  2. package/dist/atoms.cjs +55 -0
  3. package/dist/atoms.mjs +55 -0
  4. package/dist/charts.cjs +1166 -325
  5. package/dist/charts.mjs +1167 -328
  6. package/dist/src/charts/AreaChart/AreaChart.d.ts +2 -1
  7. package/dist/src/charts/AreaChart/AreaChart.js +14 -30
  8. package/dist/src/charts/BarChart/BarChart.d.ts +2 -1
  9. package/dist/src/charts/BarChart/BarChart.js +17 -21
  10. package/dist/src/charts/DefaultPalette/DefaultPalette.d.ts +15 -0
  11. package/dist/src/charts/DefaultPalette/DefaultPalette.js +23 -0
  12. package/dist/src/charts/Legend/Legend.d.ts +4 -1
  13. package/dist/src/charts/Legend/Legend.js +25 -3
  14. package/dist/src/charts/LineChart/LineChart.d.ts +2 -1
  15. package/dist/src/charts/LineChart/LineChart.js +17 -32
  16. package/dist/src/charts/PieChart/DoughnutChart.d.ts +2 -1
  17. package/dist/src/charts/PieChart/DoughnutChart.js +16 -4
  18. package/dist/src/charts/PieChart/PieChart.d.ts +3 -2
  19. package/dist/src/charts/PieChart/PieChart.js +17 -2
  20. package/dist/src/charts/PieChart/renderPieChildren.d.ts +5 -1
  21. package/dist/src/charts/PieChart/renderPieChildren.js +7 -4
  22. package/dist/src/charts/Tooltip/Tooltip.js +2 -2
  23. package/dist/src/charts/{PieChart → Tooltip}/TooltipContentWrapper.d.ts +2 -1
  24. package/dist/src/charts/Tooltip/TooltipContentWrapper.js +37 -0
  25. package/dist/src/charts/hooks/index.d.ts +1 -0
  26. package/dist/src/charts/hooks/index.js +2 -0
  27. package/dist/src/charts/hooks/useDefaultColor.d.ts +1 -0
  28. package/dist/src/charts/hooks/useDefaultColor.js +7 -0
  29. package/dist/src/charts/hooks/useDefaultColor.spec.d.ts +1 -0
  30. package/dist/src/charts/hooks/useDefaultColor.spec.js +28 -0
  31. package/dist/src/charts/index.d.ts +2 -0
  32. package/dist/src/charts/index.js +3 -1
  33. package/dist/src/charts/lib/utils.d.ts +5 -1
  34. package/dist/src/charts/lib/utils.js +27 -1
  35. package/dist/src/molecules/Combobox/Combobox.d.ts +6 -5
  36. package/dist/src/molecules/Combobox/Combobox.js +21 -12
  37. package/dist/src/molecules/DatePicker/Calendar.js +2 -2
  38. package/dist/src/molecules/DatePicker/RangeCalendar.js +3 -3
  39. package/dist/src/molecules/MultiSelect/MultiSelect.d.ts +5 -11
  40. package/dist/src/molecules/MultiSelect/MultiSelect.js +2 -9
  41. package/dist/src/molecules/Section/Section.js +7 -2
  42. package/dist/src/molecules/Select/utils.d.ts +3 -0
  43. package/dist/src/molecules/Select/utils.js +7 -0
  44. package/dist/src/tokens/tokens.json +55 -0
  45. package/dist/styles.css +75 -20
  46. package/dist/system.cjs +143 -78
  47. package/dist/system.mjs +101 -36
  48. package/dist/tokens.json +55 -0
  49. package/dist/tsconfig.module.tsbuildinfo +1 -1
  50. package/dist/types/tailwindGenerated.d.ts +1 -1
  51. package/package.json +1 -1
  52. package/dist/src/charts/PieChart/TooltipContentWrapper.js +0 -31
package/dist/system.mjs CHANGED
@@ -5930,6 +5930,61 @@ var tokens_default = {
5930
5930
  intense: "rgba(197,0,1,1)"
5931
5931
  }
5932
5932
  },
5933
+ chartColors: {
5934
+ default: "rgba(180, 180, 187, 1)",
5935
+ primaryCategorical: {
5936
+ "0": "rgba(88, 101, 205, 1)",
5937
+ "1": "rgba(255, 53, 84, 1)",
5938
+ "2": "rgba(40, 180, 244, 1)",
5939
+ "3": "rgba(249, 106, 2, 1)",
5940
+ "4": "rgba(0, 179, 0, 1)",
5941
+ "5": "rgba(255, 193, 7, 1)"
5942
+ },
5943
+ secondaryCategorical: {
5944
+ "0": "rgba(53, 69, 190, 1)",
5945
+ "1": "rgba(253, 159, 0, 1)",
5946
+ "2": "rgba(255, 53, 84, 1)",
5947
+ "3": "rgba(0, 179, 0, 1)",
5948
+ "4": "rgba(243, 88, 13, 1)",
5949
+ "5": "rgba(3, 153, 227, 1)",
5950
+ "6": "rgba(231, 0, 0, 1)",
5951
+ "7": "rgba(34, 47, 149, 1)",
5952
+ "8": "rgba(255, 144, 3, 1)",
5953
+ "9": "rgba(228, 26, 74, 1)",
5954
+ "10": "rgba(0, 159, 0, 1)",
5955
+ "11": "rgba(235, 70, 16, 1)",
5956
+ "12": "rgba(1, 116, 186, 1)",
5957
+ "13": "rgba(197, 0, 1, 1)",
5958
+ "14": "rgba(225, 29, 22, 1)",
5959
+ "15": "rgba(170, 0, 0, 1)",
5960
+ "16": "rgba(2, 86, 154, 1)",
5961
+ "17": "rgba(167, 0, 69, 1)",
5962
+ "18": "rgba(0, 111, 0, 1)",
5963
+ "19": "rgba(254, 109, 0, 1)",
5964
+ "20": "rgba(14, 22, 82, 1)",
5965
+ "21": "rgba(88, 101, 205, 1)",
5966
+ "22": "rgba(255, 179, 0, 1)",
5967
+ "23": "rgba(255, 82, 117, 1)",
5968
+ "24": "rgba(0, 195, 0, 1)",
5969
+ "25": "rgba(249, 106, 2, 1)",
5970
+ "26": "rgba(40, 180, 244, 1)",
5971
+ "27": "rgba(230, 39, 40, 1)",
5972
+ "28": "rgba(129, 142, 236, 1)",
5973
+ "29": "rgba(255, 193, 7, 1)",
5974
+ "30": "rgba(255, 111, 148, 1)",
5975
+ "31": "rgba(96, 219, 87, 1)",
5976
+ "32": "rgba(252, 135, 26, 1)",
5977
+ "33": "rgba(127, 209, 247, 1)",
5978
+ "34": "rgba(224, 80, 79, 1)",
5979
+ "35": "rgba(185, 197, 239, 1)",
5980
+ "36": "rgba(253, 212, 77, 1)",
5981
+ "37": "rgba(255, 169, 201, 1)",
5982
+ "38": "rgba(137, 235, 128, 1)",
5983
+ "39": "rgba(250, 178, 110, 1)",
5984
+ "40": "rgba(180, 229, 251, 1)",
5985
+ "41": "rgba(255, 173, 179, 1)"
5986
+ }
5987
+ },
5933
5988
  colors: {
5934
5989
  white: "white",
5935
5990
  black: "black",
@@ -10192,6 +10247,14 @@ var Wrapper = React53.forwardRef(
10192
10247
  }
10193
10248
  );
10194
10249
 
10250
+ // src/molecules/Select/utils.ts
10251
+ var isOptionGroup = (val) => {
10252
+ return (val == null ? void 0 : val.label) !== void 0 && Array.isArray(val == null ? void 0 : val.options);
10253
+ };
10254
+ var hasOptionGroups = (val) => {
10255
+ return val.some(isOptionGroup);
10256
+ };
10257
+
10195
10258
  // src/molecules/Combobox/Combobox.tsx
10196
10259
  var import_smallCross2 = __toESM(require_smallCross());
10197
10260
  var ComboboxBase = (_a) => {
@@ -10241,18 +10304,19 @@ var ComboboxBase = (_a) => {
10241
10304
  "readOnly"
10242
10305
  ]);
10243
10306
  var _a2;
10307
+ const allOptions = hasOptionGroups(options) ? options.flatMap((g) => g.options) : options;
10244
10308
  const popoverRef = useRef6(null);
10245
10309
  const targetRef = useRef6(null);
10246
10310
  const menuRef = useRef6(null);
10247
10311
  const inputRef = useRef6(null);
10248
- const [inputItems, setInputItems] = useState6(options);
10312
+ const [inputItems, setInputItems] = useState6(allOptions);
10249
10313
  const [hasFocus, setFocus] = useState6(false);
10250
10314
  const updateInputItems = (query, selected) => {
10251
- const keys = typeof options[0] === "string" ? void 0 : optionKeys;
10315
+ const keys = typeof allOptions[0] === "string" ? void 0 : optionKeys;
10252
10316
  if (selected && itemToString(selected) === query) {
10253
- setInputItems(options);
10317
+ setInputItems(allOptions);
10254
10318
  } else {
10255
- setInputItems(query ? matchSorter(options, query, { keys }) : options);
10319
+ setInputItems(query ? matchSorter(allOptions, query, { keys }) : allOptions);
10256
10320
  }
10257
10321
  };
10258
10322
  const {
@@ -10304,6 +10368,20 @@ var ComboboxBase = (_a) => {
10304
10368
  toggle: toggleMenu,
10305
10369
  setOpen: (isOpen2) => isOpen2 ? openMenu() : closeMenu()
10306
10370
  };
10371
+ const renderGroup = (group) => {
10372
+ const groupInputItems = group.options.filter((o) => inputItems.includes(o));
10373
+ return groupInputItems.length > 0 ? /* @__PURE__ */ React54.createElement(React54.Fragment, {
10374
+ key: group.label
10375
+ }, /* @__PURE__ */ React54.createElement(Select.Group, null, group.label), groupInputItems.map((opt) => renderItem(opt, inputItems.indexOf(opt)))) : null;
10376
+ };
10377
+ const renderItem = (item, index) => {
10378
+ var _a3;
10379
+ return /* @__PURE__ */ React54.createElement(Select.Item, __spreadValues({
10380
+ key: (_a3 = getOptionKey == null ? void 0 : getOptionKey(item)) != null ? _a3 : itemToString(item),
10381
+ selected: item === selectedItem,
10382
+ highlighted: index === highlightedIndex || item === selectedItem
10383
+ }, getItemProps({ item, index })), renderOption(item));
10384
+ };
10307
10385
  useEffect6(() => {
10308
10386
  updateInputItems(inputValue, selectedItem);
10309
10387
  }, [JSON.stringify(options)]);
@@ -10344,19 +10422,18 @@ var ComboboxBase = (_a) => {
10344
10422
  })), !readOnly && /* @__PURE__ */ React54.createElement(Box.Flex, {
10345
10423
  alignItems: "center",
10346
10424
  gap: "2"
10347
- }, !!inputProps.value && !disabled && /* @__PURE__ */ React54.createElement("div", {
10348
- className: tw("group-hover:opacity-100", {
10425
+ }, !!inputProps.value && !disabled && /* @__PURE__ */ React54.createElement(Button.Icon, {
10426
+ UNSAFE_className: tw("group-hover:opacity-100 py-1", {
10349
10427
  "opacity-0": !hasFocus,
10350
10428
  "opacity-100": hasFocus
10351
- })
10352
- }, /* @__PURE__ */ React54.createElement(Button.Icon, {
10429
+ }),
10353
10430
  icon: import_smallCross2.default,
10354
10431
  onClick: () => selectItem(null),
10355
10432
  onFocus: () => setFocus(true),
10356
10433
  onBlur: () => setFocus(false),
10357
10434
  "aria-label": "Clear selection",
10358
10435
  dense: true
10359
- })), /* @__PURE__ */ React54.createElement(Select.Toggle, __spreadValues({
10436
+ }), /* @__PURE__ */ React54.createElement(Select.Toggle, __spreadValues({
10360
10437
  hasFocus,
10361
10438
  isOpen
10362
10439
  }, getToggleButtonProps({ disabled }))))), isOpen && /* @__PURE__ */ React54.createElement(PopoverOverlay, {
@@ -10369,14 +10446,7 @@ var ComboboxBase = (_a) => {
10369
10446
  style: { width: (_a2 = targetRef.current) == null ? void 0 : _a2.offsetWidth }
10370
10447
  }, /* @__PURE__ */ React54.createElement(Select.Menu, __spreadValues({
10371
10448
  maxHeight
10372
- }, menuProps), hasNoResults && /* @__PURE__ */ React54.createElement(Select.NoResults, null, emptyState), inputItems.map((item, index) => {
10373
- var _a3;
10374
- return /* @__PURE__ */ React54.createElement(Select.Item, __spreadValues({
10375
- key: (_a3 = getOptionKey == null ? void 0 : getOptionKey(item)) != null ? _a3 : itemToString(item),
10376
- selected: item === selectedItem,
10377
- highlighted: index === highlightedIndex || item === selectedItem
10378
- }, getItemProps({ item, index })), renderOption(item));
10379
- }))));
10449
+ }, menuProps), hasNoResults && /* @__PURE__ */ React54.createElement(Select.NoResults, null, emptyState), inputItems.length > 0 && !hasOptionGroups(options) && inputItems.map(renderItem), inputItems.length > 0 && hasOptionGroups(options) && options.map(renderGroup))));
10380
10450
  };
10381
10451
  var ComboboxBaseSkeleton = () => /* @__PURE__ */ React54.createElement(Skeleton, {
10382
10452
  height: 38
@@ -10655,7 +10725,7 @@ var hasIconProperty = (val) => {
10655
10725
  var _a;
10656
10726
  return typeof val === "string" || ((_a = val == null ? void 0 : val.icon) == null ? void 0 : _a.body) !== void 0;
10657
10727
  };
10658
- var hasOptionGroups = (val) => {
10728
+ var hasOptionGroups2 = (val) => {
10659
10729
  return !val.some((opt) => (opt == null ? void 0 : opt.label) === void 0 || !isArray(opt == null ? void 0 : opt.options));
10660
10730
  };
10661
10731
  var defaultRenderOption = (item, props, { selectedItem }, { getOptionKey, getValue, optionToString = getOptionLabelBuiltin }) => {
@@ -10737,7 +10807,7 @@ var _SelectBase = (props) => {
10737
10807
  const [hasFocus, setFocus] = useState8(false);
10738
10808
  const targetRef = useRef7(null);
10739
10809
  const menuRef = useRef7(null);
10740
- const items = hasOptionGroups(options) ? options.flatMap((g) => g.options) : options;
10810
+ const items = hasOptionGroups2(options) ? options.flatMap((g) => g.options) : options;
10741
10811
  const findItemByValue = (val) => {
10742
10812
  if (val === null) {
10743
10813
  return null;
@@ -10818,7 +10888,7 @@ var _SelectBase = (props) => {
10818
10888
  style: { width: (_b = targetRef.current) == null ? void 0 : _b.offsetWidth }
10819
10889
  }, /* @__PURE__ */ React58.createElement(Select.Menu, __spreadValues({
10820
10890
  maxHeight
10821
- }, menuProps), options.length === 0 && /* @__PURE__ */ React58.createElement(Select.EmptyStateContainer, null, emptyState), options.length > 0 && !hasOptionGroups(options) && options.map(renderItem), options.length > 0 && hasOptionGroups(options) && options.map(renderGroup), actions.length > 0 && /* @__PURE__ */ React58.createElement(React58.Fragment, null, /* @__PURE__ */ React58.createElement(Select.Divider, {
10891
+ }, menuProps), options.length === 0 && /* @__PURE__ */ React58.createElement(Select.EmptyStateContainer, null, emptyState), options.length > 0 && !hasOptionGroups2(options) && options.map(renderItem), options.length > 0 && hasOptionGroups2(options) && options.map(renderGroup), actions.length > 0 && /* @__PURE__ */ React58.createElement(React58.Fragment, null, /* @__PURE__ */ React58.createElement(Select.Divider, {
10822
10892
  onMouseOver: () => setHighlightedIndex(-1)
10823
10893
  }), actions.map((act, index) => /* @__PURE__ */ React58.createElement(Select.ActionItem, __spreadProps(__spreadValues({
10824
10894
  key: `${index}`
@@ -13128,7 +13198,7 @@ var import_chevronLeft4 = __toESM(require_chevronLeft());
13128
13198
  var import_chevronRight4 = __toESM(require_chevronRight());
13129
13199
  var cellStyles = tv4({
13130
13200
  extend: focusRing,
13131
- base: "w-8 h-8 typography-small cursor-default rounded flex items-center justify-center",
13201
+ base: "w-8 h-8 typography-small cursor-default rounded-md flex items-center justify-center outside-month:hidden",
13132
13202
  variants: {
13133
13203
  isSelected: {
13134
13204
  false: "text-default hover:bg-default pressed:bg-intense",
@@ -13307,7 +13377,7 @@ import {
13307
13377
  import { tv as tv5 } from "tailwind-variants";
13308
13378
  var cell = tv5({
13309
13379
  extend: focusRing,
13310
- base: "w-full h-full flex items-center justify-center rounded text-default",
13380
+ base: "w-full h-full flex items-center justify-center rounded-md text-default",
13311
13381
  variants: {
13312
13382
  selectionState: {
13313
13383
  none: "group-hover:bg-default group-pressed:bg-intense",
@@ -13335,9 +13405,9 @@ function RangeCalendar(props) {
13335
13405
  date,
13336
13406
  className: tw(
13337
13407
  "group w-8 h-8 typography-small outline outline-0 cursor-default",
13338
- "outside-month:text-inactive selected:bg-primary-default",
13408
+ "outside-month:hidden selected:bg-primary-default",
13339
13409
  "invalid:selected:bg-danger-default",
13340
- "selection-start:rounded-s selection-end:rounded-e"
13410
+ "selection-start:rounded-s-md selection-end:rounded-e-md"
13341
13411
  )
13342
13412
  }, (_a) => {
13343
13413
  var _b = _a, { formattedDate, isSelected, isSelectionStart, isSelectionEnd } = _b, rest = __objRest(_b, ["formattedDate", "isSelected", "isSelectionStart", "isSelectionEnd"]);
@@ -14997,19 +15067,11 @@ import React105, { useEffect as useEffect10, useRef as useRef13, useState as use
14997
15067
  import { ariaHideOutside as ariaHideOutside2 } from "@react-aria/overlays";
14998
15068
  import { useId as useId14 } from "@react-aria/utils";
14999
15069
  import { useCombobox as useCombobox2, useMultipleSelection } from "downshift";
15000
- import isArray4 from "lodash/isArray";
15001
15070
  import isEqual from "lodash/isEqual";
15002
15071
  import isNil2 from "lodash/isNil";
15003
- import isObject2 from "lodash/isObject";
15004
15072
  import omit16 from "lodash/omit";
15005
15073
  import omitBy from "lodash/omitBy";
15006
15074
  import { matchSorter as matchSorter2 } from "match-sorter";
15007
- var isOptionGroup = (option) => {
15008
- return isObject2(option) && "options" in option && isArray4(option.options);
15009
- };
15010
- var hasOptionGroups2 = (options) => {
15011
- return options.some(isOptionGroup);
15012
- };
15013
15075
  var MultiSelectBase = (_a) => {
15014
15076
  var _b = _a, {
15015
15077
  id,
@@ -15077,14 +15139,14 @@ var MultiSelectBase = (_a) => {
15077
15139
  );
15078
15140
  const keys = typeof options[0] === "string" ? void 0 : optionKeys;
15079
15141
  const selectedItemsAsStrings = selectedItems.map(itemToString);
15080
- const filteredOptions = hasOptionGroups2(options) ? options.map((option) => __spreadProps(__spreadValues({}, option), {
15142
+ const filteredOptions = hasOptionGroups(options) ? options.map((option) => __spreadProps(__spreadValues({}, option), {
15081
15143
  options: (inputValue ? matchSorter2(option.options, inputValue, { keys }) : option.options).filter(
15082
15144
  (opt) => !selectedItemsAsStrings.includes(itemToString(opt))
15083
15145
  )
15084
15146
  })) : (inputValue ? matchSorter2(options, inputValue, { keys }) : options).filter(
15085
15147
  (opt) => !selectedItemsAsStrings.includes(itemToString(opt))
15086
15148
  );
15087
- const flattenedOptions = hasOptionGroups2(filteredOptions) ? filteredOptions.flatMap((group) => group.options) : filteredOptions;
15149
+ const flattenedOptions = hasOptionGroups(filteredOptions) ? filteredOptions.flatMap((group) => group.options) : filteredOptions;
15088
15150
  const {
15089
15151
  isOpen,
15090
15152
  openMenu,
@@ -16096,6 +16158,7 @@ var Section4 = (props) => {
16096
16158
  const _collapsed = title ? props.collapsed : void 0;
16097
16159
  const _defaultCollapsed = title ? (_b = props.defaultCollapsed) != null ? _b : false : false;
16098
16160
  const [isCollapsed, setCollapsed] = React121.useState(_collapsed != null ? _collapsed : _defaultCollapsed);
16161
+ const [isResting, setResting] = React121.useState(true);
16099
16162
  const [ref, { height }] = useMeasure();
16100
16163
  const toggleAreaRef = useRef14(null);
16101
16164
  const menu = title ? (_c = props.menu) != null ? _c : void 0 : void 0;
@@ -16124,7 +16187,9 @@ var Section4 = (props) => {
16124
16187
  config: {
16125
16188
  duration: 150
16126
16189
  },
16127
- immediate: !_collapsible
16190
+ immediate: !_collapsible,
16191
+ onStart: () => setResting(false),
16192
+ onRest: () => setResting(true)
16128
16193
  }), { transform } = _f, spring = __objRest(_f, ["transform"]);
16129
16194
  const toggleId = useId17();
16130
16195
  const regionId = useId17();
@@ -16178,7 +16243,7 @@ var Section4 = (props) => {
16178
16243
  id: regionId,
16179
16244
  "aria-hidden": _collapsible ? isCollapsed ? true : void 0 : void 0,
16180
16245
  style: spring,
16181
- className: tw({ "overflow-hidden": _collapsible })
16246
+ className: tw({ "overflow-hidden": _collapsible && (isCollapsed || !isResting) })
16182
16247
  }, /* @__PURE__ */ React121.createElement("div", {
16183
16248
  ref
16184
16249
  }, hasTabs ? /* @__PURE__ */ React121.createElement(SectionTabs, __spreadProps(__spreadValues({}, children.props), {
package/dist/tokens.json CHANGED
@@ -93,6 +93,61 @@
93
93
  "intense": "rgba(197,0,1,1)"
94
94
  }
95
95
  },
96
+ "chartColors": {
97
+ "default": "rgba(180, 180, 187, 1)",
98
+ "primaryCategorical": {
99
+ "0": "rgba(88, 101, 205, 1)",
100
+ "1": "rgba(255, 53, 84, 1)",
101
+ "2": "rgba(40, 180, 244, 1)",
102
+ "3": "rgba(249, 106, 2, 1)",
103
+ "4": "rgba(0, 179, 0, 1)",
104
+ "5": "rgba(255, 193, 7, 1)"
105
+ },
106
+ "secondaryCategorical": {
107
+ "0": "rgba(53, 69, 190, 1)",
108
+ "1": "rgba(253, 159, 0, 1)",
109
+ "2": "rgba(255, 53, 84, 1)",
110
+ "3": "rgba(0, 179, 0, 1)",
111
+ "4": "rgba(243, 88, 13, 1)",
112
+ "5": "rgba(3, 153, 227, 1)",
113
+ "6": "rgba(231, 0, 0, 1)",
114
+ "7": "rgba(34, 47, 149, 1)",
115
+ "8": "rgba(255, 144, 3, 1)",
116
+ "9": "rgba(228, 26, 74, 1)",
117
+ "10": "rgba(0, 159, 0, 1)",
118
+ "11": "rgba(235, 70, 16, 1)",
119
+ "12": "rgba(1, 116, 186, 1)",
120
+ "13": "rgba(197, 0, 1, 1)",
121
+ "14": "rgba(225, 29, 22, 1)",
122
+ "15": "rgba(170, 0, 0, 1)",
123
+ "16": "rgba(2, 86, 154, 1)",
124
+ "17": "rgba(167, 0, 69, 1)",
125
+ "18": "rgba(0, 111, 0, 1)",
126
+ "19": "rgba(254, 109, 0, 1)",
127
+ "20": "rgba(14, 22, 82, 1)",
128
+ "21": "rgba(88, 101, 205, 1)",
129
+ "22": "rgba(255, 179, 0, 1)",
130
+ "23": "rgba(255, 82, 117, 1)",
131
+ "24": "rgba(0, 195, 0, 1)",
132
+ "25": "rgba(249, 106, 2, 1)",
133
+ "26": "rgba(40, 180, 244, 1)",
134
+ "27": "rgba(230, 39, 40, 1)",
135
+ "28": "rgba(129, 142, 236, 1)",
136
+ "29": "rgba(255, 193, 7, 1)",
137
+ "30": "rgba(255, 111, 148, 1)",
138
+ "31": "rgba(96, 219, 87, 1)",
139
+ "32": "rgba(252, 135, 26, 1)",
140
+ "33": "rgba(127, 209, 247, 1)",
141
+ "34": "rgba(224, 80, 79, 1)",
142
+ "35": "rgba(185, 197, 239, 1)",
143
+ "36": "rgba(253, 212, 77, 1)",
144
+ "37": "rgba(255, 169, 201, 1)",
145
+ "38": "rgba(137, 235, 128, 1)",
146
+ "39": "rgba(250, 178, 110, 1)",
147
+ "40": "rgba(180, 229, 251, 1)",
148
+ "41": "rgba(255, 173, 179, 1)"
149
+ }
150
+ },
96
151
  "colors": {
97
152
  "white": "white",
98
153
  "black": "black",