@foxford/ui 2.59.0-beta-92b12b1-20250115 → 2.61.0-beta-5e98b7f-20250131

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 (318) hide show
  1. package/components/Accordion/Accordion.js +1 -1
  2. package/components/Accordion/Accordion.js.map +1 -1
  3. package/components/Accordion/Accordion.mjs +1 -1
  4. package/components/Accordion/Accordion.mjs.map +1 -1
  5. package/components/ActionBtn/ActionBtn.js +1 -1
  6. package/components/Alert/Alert.js +1 -1
  7. package/components/Alert/Alert.js.map +1 -1
  8. package/components/Alert/Alert.mjs +1 -1
  9. package/components/Alert/Alert.mjs.map +1 -1
  10. package/components/Alert/CountdownCircle.js +1 -1
  11. package/components/Amount/Amount.js +1 -1
  12. package/components/Anchor/Anchor.js +1 -1
  13. package/components/Anchor/style.js +1 -1
  14. package/components/Anchor/style.js.map +1 -1
  15. package/components/Anchor/style.mjs +1 -1
  16. package/components/Anchor/style.mjs.map +1 -1
  17. package/components/Arrow/Arrow.js +1 -1
  18. package/components/Arrow/style.js +1 -1
  19. package/components/Arrow/style.js.map +1 -1
  20. package/components/Arrow/style.mjs +1 -1
  21. package/components/Arrow/style.mjs.map +1 -1
  22. package/components/ArrowBadge/ArrowBadge.js +1 -1
  23. package/components/Avatar/Avatar.js +1 -1
  24. package/components/Badge/Badge.js +1 -1
  25. package/components/Button/Button.js +1 -1
  26. package/components/Button/style.js +1 -1
  27. package/components/Button/style.js.map +1 -1
  28. package/components/Button/style.mjs +1 -1
  29. package/components/Button/style.mjs.map +1 -1
  30. package/components/Checkbox/Checkbox.js +1 -1
  31. package/components/Checkbox/Group.js +1 -1
  32. package/components/Checkbox/style.js +1 -1
  33. package/components/Checkbox/style.js.map +1 -1
  34. package/components/Checkbox/style.mjs +1 -1
  35. package/components/Checkbox/style.mjs.map +1 -1
  36. package/components/Chip/Chip.js +1 -1
  37. package/components/Chip/style.js +1 -1
  38. package/components/Chip/style.js.map +1 -1
  39. package/components/Chip/style.mjs +1 -1
  40. package/components/Chip/style.mjs.map +1 -1
  41. package/components/Container/Container.js +1 -1
  42. package/components/ContextMenu/ContextMenu.js +1 -1
  43. package/components/ContextMenu/Item.js +1 -1
  44. package/components/ContextMenu.Multilevel/ContextMenu.Multilevel.js +1 -1
  45. package/components/ContextMenu.Multilevel/Controls.js +1 -1
  46. package/components/ContextMenu.Multilevel/Heading.js +1 -1
  47. package/components/ContextMenu.Multilevel/SubHeading.js +1 -1
  48. package/components/Dialog/Dialog.js +1 -1
  49. package/components/Dialog/Dialog.js.map +1 -1
  50. package/components/Dialog/Dialog.mjs.map +1 -1
  51. package/components/DialogComponent/DialogComponent.js +1 -1
  52. package/components/DialogComponent/DialogComponent.js.map +1 -1
  53. package/components/DialogComponent/DialogComponent.mjs +1 -1
  54. package/components/DialogComponent/DialogComponent.mjs.map +1 -1
  55. package/components/DialogComponent/DialogContainer.js +1 -1
  56. package/components/Dropdown/Dropdown.js +1 -1
  57. package/components/Dropdown/Dropdown.js.map +1 -1
  58. package/components/Dropdown/Dropdown.mjs +1 -1
  59. package/components/Dropdown/Dropdown.mjs.map +1 -1
  60. package/components/Dropdown/DropdownMenu.js +1 -1
  61. package/components/Dropdown/DropdownMenu.js.map +1 -1
  62. package/components/Dropdown/DropdownMenu.mjs +1 -1
  63. package/components/Dropdown/DropdownMenu.mjs.map +1 -1
  64. package/components/Dropdown/DropdownMenuNoOptions.js +1 -1
  65. package/components/Dropdown/style.js +1 -1
  66. package/components/Dropdown/style.js.map +1 -1
  67. package/components/Dropdown/style.mjs +1 -1
  68. package/components/Dropdown/style.mjs.map +1 -1
  69. package/components/FormInput/FormInput.js +1 -1
  70. package/components/FormInput/FormInput.js.map +1 -1
  71. package/components/FormInput/FormInput.mjs +1 -1
  72. package/components/FormInput/FormInput.mjs.map +1 -1
  73. package/components/FormInputLabel/FormInputLabel.js +1 -1
  74. package/components/FormInputLabel/style.js +1 -1
  75. package/components/FormInputLabel/style.js.map +1 -1
  76. package/components/FormInputLabel/style.mjs +1 -1
  77. package/components/FormInputLabel/style.mjs.map +1 -1
  78. package/components/FormLabel/FormLabel.js +1 -1
  79. package/components/FormLabel/style.js +1 -1
  80. package/components/FormLabel/style.js.map +1 -1
  81. package/components/FormLabel/style.mjs +1 -1
  82. package/components/FormLabel/style.mjs.map +1 -1
  83. package/components/Icon/Icon.js +1 -1
  84. package/components/Icon/Icon.js.map +1 -1
  85. package/components/Icon/Icon.mjs +1 -1
  86. package/components/Icon/Icon.mjs.map +1 -1
  87. package/components/Icon/list/icon-pack.js +1 -1
  88. package/components/Icon/list/icon-pack.js.map +1 -1
  89. package/components/Icon/list/icon-pack.mjs +1 -1
  90. package/components/Icon/list/icon-pack.mjs.map +1 -1
  91. package/components/IconButton/IconButton.js +1 -1
  92. package/components/IconButton/style.js +1 -1
  93. package/components/IconButton/style.js.map +1 -1
  94. package/components/IconButton/style.mjs +1 -1
  95. package/components/IconButton/style.mjs.map +1 -1
  96. package/components/Indicator/Indicator.js +1 -1
  97. package/components/Input/Input.js +1 -1
  98. package/components/Input/Input.js.map +1 -1
  99. package/components/Input/Input.mjs +1 -1
  100. package/components/Input/Input.mjs.map +1 -1
  101. package/components/Input/style.js +1 -1
  102. package/components/Input/style.js.map +1 -1
  103. package/components/Input/style.mjs +1 -1
  104. package/components/Input/style.mjs.map +1 -1
  105. package/components/Input.Phone/Input.Phone.js +1 -1
  106. package/components/Input.Phone/Input.Phone.js.map +1 -1
  107. package/components/Input.Phone/Input.Phone.mjs.map +1 -1
  108. package/components/InputCheckbox/InputCheckbox.js +1 -1
  109. package/components/InputRadio/InputRadio.js +1 -1
  110. package/components/ListItem/ListItem.js +1 -1
  111. package/components/Menu/Menu.js +1 -1
  112. package/components/Menu/Menu.js.map +1 -1
  113. package/components/Menu/Menu.mjs.map +1 -1
  114. package/components/MenuComponent/MenuComponent.js +1 -1
  115. package/components/MenuContainer/MenuContainer.js +1 -1
  116. package/components/MenuDivider/MenuDivider.js +1 -1
  117. package/components/MenuList/MenuList.js +1 -1
  118. package/components/Modal/Close.js +1 -1
  119. package/components/Modal/Modal.js +1 -1
  120. package/components/Modal/Modal.js.map +1 -1
  121. package/components/Modal/Modal.mjs.map +1 -1
  122. package/components/Modal/adapter.js +1 -1
  123. package/components/Notification/Notification.js +1 -1
  124. package/components/Paper/Paper.js +1 -1
  125. package/components/Popover/Popover.js +1 -1
  126. package/components/Popover/Popover.js.map +1 -1
  127. package/components/Popover/Popover.mjs.map +1 -1
  128. package/components/PopoverComponent/PopoverComponent.js +1 -1
  129. package/components/PopoverComponent/style.js +1 -1
  130. package/components/PopoverComponent/style.js.map +1 -1
  131. package/components/PopoverComponent/style.mjs +1 -1
  132. package/components/PopoverComponent/style.mjs.map +1 -1
  133. package/components/Progress/Progress.js +1 -1
  134. package/components/Progress/style.js +1 -1
  135. package/components/Progress/style.js.map +1 -1
  136. package/components/Progress/style.mjs +1 -1
  137. package/components/Progress/style.mjs.map +1 -1
  138. package/components/Progress.Circle/Progress.Circle.js +1 -1
  139. package/components/Progress.Segmented/Progress.Segmented.js +1 -1
  140. package/components/Radio/Group.js +1 -1
  141. package/components/Radio/Radio.js +1 -1
  142. package/components/Scrollable/Scrollable.js +1 -1
  143. package/components/Section/Section.js +1 -1
  144. package/components/Select/Select.js +1 -1
  145. package/components/Select/Select.js.map +1 -1
  146. package/components/Select/Select.mjs.map +1 -1
  147. package/components/Select/style.js +1 -1
  148. package/components/Select/style.js.map +1 -1
  149. package/components/Select/style.mjs +1 -1
  150. package/components/Select/style.mjs.map +1 -1
  151. package/components/Separator/Separator.js +1 -1
  152. package/components/Separator/SeparatorText.js +1 -1
  153. package/components/Skeleton/Skeleton.js +1 -1
  154. package/components/Spacer/Spacer.js +1 -1
  155. package/components/Spinner/Spinner.js +1 -1
  156. package/components/Switch/Knob.js +1 -1
  157. package/components/Switch/Switch.js +1 -1
  158. package/components/Switch/style.js +1 -1
  159. package/components/Switch/style.js.map +1 -1
  160. package/components/Switch/style.mjs +1 -1
  161. package/components/Switch/style.mjs.map +1 -1
  162. package/components/Switcher/Switcher.js +1 -1
  163. package/components/Switcher/style.js +1 -1
  164. package/components/Switcher/style.js.map +1 -1
  165. package/components/Switcher/style.mjs +1 -1
  166. package/components/Switcher/style.mjs.map +1 -1
  167. package/components/Tab/Tab.js +1 -1
  168. package/components/Tab/style.js +1 -1
  169. package/components/Tab/style.js.map +1 -1
  170. package/components/Tab/style.mjs +1 -1
  171. package/components/Tab/style.mjs.map +1 -1
  172. package/components/Tabs/Tabs.js +1 -1
  173. package/components/Tag/Tag.js +1 -1
  174. package/components/Text/Ellipsis.js +1 -1
  175. package/components/Text/Ellipsis.js.map +1 -1
  176. package/components/Text/Ellipsis.mjs +1 -1
  177. package/components/Text/Ellipsis.mjs.map +1 -1
  178. package/components/Text/Text.js +1 -1
  179. package/components/Text/style.js +1 -1
  180. package/components/Text/style.js.map +1 -1
  181. package/components/Text/style.mjs +1 -1
  182. package/components/Text/style.mjs.map +1 -1
  183. package/components/Text.Ellipse/Text.Ellipse.js +1 -1
  184. package/components/Text.Heading/Text.Heading.js +1 -1
  185. package/components/Textarea/Textarea.js +1 -1
  186. package/components/Textarea/Textarea.js.map +1 -1
  187. package/components/Textarea/Textarea.mjs +1 -1
  188. package/components/Textarea/Textarea.mjs.map +1 -1
  189. package/components/Tooltip/Tooltip.js +1 -1
  190. package/components/Tooltip/Tooltip.js.map +1 -1
  191. package/components/Tooltip/Tooltip.mjs +1 -1
  192. package/components/Tooltip/Tooltip.mjs.map +1 -1
  193. package/components/Tooltip/TooltipWrapper.js +1 -1
  194. package/components/Tooltip/default-constants.js.map +1 -1
  195. package/components/Tooltip/default-constants.mjs.map +1 -1
  196. package/components/TooltipComponent/TooltipComponent.js +1 -1
  197. package/components/TooltipComponent/style.js +1 -1
  198. package/components/TooltipComponent/style.js.map +1 -1
  199. package/components/TooltipComponent/style.mjs +1 -1
  200. package/components/TooltipComponent/style.mjs.map +1 -1
  201. package/components/Visibility/Visibility.js +1 -1
  202. package/dts/index.d.ts +273 -3560
  203. package/hocs/withMergedProps.js +1 -1
  204. package/hocs/withTranslation.js +1 -1
  205. package/hooks/useResizeObserver.js +2 -0
  206. package/hooks/useResizeObserver.js.map +1 -0
  207. package/hooks/useResizeObserver.mjs +2 -0
  208. package/hooks/useResizeObserver.mjs.map +1 -0
  209. package/package.json +16 -8
  210. package/theme/theme-provider.js +1 -1
  211. package/_virtual/ResizeObserver.js +0 -2
  212. package/_virtual/ResizeObserver.js.map +0 -1
  213. package/_virtual/ResizeObserver.mjs +0 -2
  214. package/_virtual/ResizeObserver.mjs.map +0 -1
  215. package/_virtual/_commonjsHelpers.js +0 -2
  216. package/_virtual/_commonjsHelpers.js.map +0 -1
  217. package/_virtual/_commonjsHelpers.mjs +0 -2
  218. package/_virtual/_commonjsHelpers.mjs.map +0 -1
  219. package/_virtual/index.js +0 -2
  220. package/_virtual/index.js.map +0 -1
  221. package/_virtual/index.mjs +0 -2
  222. package/_virtual/index.mjs.map +0 -1
  223. package/_virtual/index2.js +0 -2
  224. package/_virtual/index2.js.map +0 -1
  225. package/_virtual/index2.mjs +0 -2
  226. package/_virtual/index2.mjs.map +0 -1
  227. package/_virtual/index3.js +0 -2
  228. package/_virtual/index3.js.map +0 -1
  229. package/_virtual/index3.mjs +0 -2
  230. package/_virtual/index3.mjs.map +0 -1
  231. package/_virtual/index4.js +0 -2
  232. package/_virtual/index4.js.map +0 -1
  233. package/_virtual/index4.mjs +0 -2
  234. package/_virtual/index4.mjs.map +0 -1
  235. package/_virtual/index5.js +0 -2
  236. package/_virtual/index5.js.map +0 -1
  237. package/_virtual/index5.mjs +0 -2
  238. package/_virtual/index5.mjs.map +0 -1
  239. package/_virtual/index6.js +0 -2
  240. package/_virtual/index6.js.map +0 -1
  241. package/_virtual/index6.mjs +0 -2
  242. package/_virtual/index6.mjs.map +0 -1
  243. package/_virtual/index7.js +0 -2
  244. package/_virtual/index7.js.map +0 -1
  245. package/_virtual/index7.mjs +0 -2
  246. package/_virtual/index7.mjs.map +0 -1
  247. package/_virtual/index8.js +0 -2
  248. package/_virtual/index8.js.map +0 -1
  249. package/_virtual/index8.mjs +0 -2
  250. package/_virtual/index8.mjs.map +0 -1
  251. package/_virtual/purify.js +0 -2
  252. package/_virtual/purify.js.map +0 -1
  253. package/_virtual/purify.mjs +0 -2
  254. package/_virtual/purify.mjs.map +0 -1
  255. package/_virtual/tinycolor.js +0 -2
  256. package/_virtual/tinycolor.js.map +0 -1
  257. package/_virtual/tinycolor.mjs +0 -2
  258. package/_virtual/tinycolor.mjs.map +0 -1
  259. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/components.json.js +0 -2
  260. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/components.json.js.map +0 -1
  261. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/components.json.mjs +0 -2
  262. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/components.json.mjs.map +0 -1
  263. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CheckCircleFill/index.js +0 -2
  264. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CheckCircleFill/index.js.map +0 -1
  265. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CheckCircleFill/index.mjs +0 -2
  266. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CheckCircleFill/index.mjs.map +0 -1
  267. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ChevronDown/index.js +0 -2
  268. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ChevronDown/index.js.map +0 -1
  269. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ChevronDown/index.mjs +0 -2
  270. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ChevronDown/index.mjs.map +0 -1
  271. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/Close/index.js +0 -2
  272. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/Close/index.js.map +0 -1
  273. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/Close/index.mjs +0 -2
  274. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/Close/index.mjs.map +0 -1
  275. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CloseCirlceFill/index.js +0 -2
  276. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CloseCirlceFill/index.js.map +0 -1
  277. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CloseCirlceFill/index.mjs +0 -2
  278. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/CloseCirlceFill/index.mjs.map +0 -1
  279. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/LoaderFill/index.js +0 -2
  280. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/LoaderFill/index.js.map +0 -1
  281. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/LoaderFill/index.mjs +0 -2
  282. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/LoaderFill/index.mjs.map +0 -1
  283. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/NotifFill/index.js +0 -2
  284. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/NotifFill/index.js.map +0 -1
  285. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/NotifFill/index.mjs +0 -2
  286. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/NotifFill/index.mjs.map +0 -1
  287. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ResizeHandle/index.js +0 -2
  288. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ResizeHandle/index.js.map +0 -1
  289. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ResizeHandle/index.mjs +0 -2
  290. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/ResizeHandle/index.mjs.map +0 -1
  291. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/WarningTriangleFill/index.js +0 -2
  292. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/WarningTriangleFill/index.js.map +0 -1
  293. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/WarningTriangleFill/index.mjs +0 -2
  294. package/external/.pnpm/@foxford_icon-pack@0.11.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@foxford/icon-pack/icons/WarningTriangleFill/index.mjs.map +0 -1
  295. package/external/.pnpm/dompurify@3.1.6/node_modules/dompurify/dist/purify.js +0 -2
  296. package/external/.pnpm/dompurify@3.1.6/node_modules/dompurify/dist/purify.js.map +0 -1
  297. package/external/.pnpm/dompurify@3.1.6/node_modules/dompurify/dist/purify.mjs +0 -2
  298. package/external/.pnpm/dompurify@3.1.6/node_modules/dompurify/dist/purify.mjs.map +0 -1
  299. package/external/.pnpm/fuse.js@7.0.0/node_modules/fuse.js/dist/fuse.js +0 -2
  300. package/external/.pnpm/fuse.js@7.0.0/node_modules/fuse.js/dist/fuse.js.map +0 -1
  301. package/external/.pnpm/fuse.js@7.0.0/node_modules/fuse.js/dist/fuse.mjs +0 -2
  302. package/external/.pnpm/fuse.js@7.0.0/node_modules/fuse.js/dist/fuse.mjs.map +0 -1
  303. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/index.browser.js +0 -2
  304. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/index.browser.js.map +0 -1
  305. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/index.browser.mjs +0 -2
  306. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/index.browser.mjs.map +0 -1
  307. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/url-alphabet/index.js +0 -2
  308. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/url-alphabet/index.js.map +0 -1
  309. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/url-alphabet/index.mjs +0 -2
  310. package/external/.pnpm/nanoid@5.0.9/node_modules/nanoid/url-alphabet/index.mjs.map +0 -1
  311. package/external/.pnpm/resize-observer-polyfill@1.5.1/node_modules/resize-observer-polyfill/dist/ResizeObserver.js +0 -2
  312. package/external/.pnpm/resize-observer-polyfill@1.5.1/node_modules/resize-observer-polyfill/dist/ResizeObserver.js.map +0 -1
  313. package/external/.pnpm/resize-observer-polyfill@1.5.1/node_modules/resize-observer-polyfill/dist/ResizeObserver.mjs +0 -2
  314. package/external/.pnpm/resize-observer-polyfill@1.5.1/node_modules/resize-observer-polyfill/dist/ResizeObserver.mjs.map +0 -1
  315. package/external/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.js +0 -2
  316. package/external/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.js.map +0 -1
  317. package/external/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.mjs +0 -2
  318. package/external/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"tinycolor.js","sources":["../../../../../../../node_modules/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.js"],"sourcesContent":["// TinyColor v1.4.2\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\n(function(Math) {\n\nvar trimLeft = /^\\s+/,\n trimRight = /\\s+$/,\n tinyCounter = 0,\n mathRound = Math.round,\n mathMin = Math.min,\n mathMax = Math.max,\n mathRandom = Math.random;\n\nfunction tinycolor (color, opts) {\n\n color = (color) ? color : '';\n opts = opts || { };\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n\n var rgb = inputToRGB(color);\n this._originalInput = color,\n this._r = rgb.r,\n this._g = rgb.g,\n this._b = rgb.b,\n this._a = rgb.a,\n this._roundA = mathRound(100*this._a) / 100,\n this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this._r < 1) { this._r = mathRound(this._r); }\n if (this._g < 1) { this._g = mathRound(this._g); }\n if (this._b < 1) { this._b = mathRound(this._b); }\n\n this._ok = rgb.ok;\n this._tc_id = tinyCounter++;\n}\n\ntinycolor.prototype = {\n isDark: function() {\n return this.getBrightness() < 128;\n },\n isLight: function() {\n return !this.isDark();\n },\n isValid: function() {\n return this._ok;\n },\n getOriginalInput: function() {\n return this._originalInput;\n },\n getFormat: function() {\n return this._format;\n },\n getAlpha: function() {\n return this._a;\n },\n getBrightness: function() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r/255;\n GsRGB = rgb.g/255;\n BsRGB = rgb.b/255;\n\n if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}\n if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}\n if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}\n return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);\n },\n setAlpha: function(value) {\n this._a = boundAlpha(value);\n this._roundA = mathRound(100*this._a) / 100;\n return this;\n },\n toHsv: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };\n },\n toHsvString: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);\n return (this._a == 1) ?\n \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" :\n \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \"+ this._roundA + \")\";\n },\n toHsl: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };\n },\n toHslString: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);\n return (this._a == 1) ?\n \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" :\n \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \"+ this._roundA + \")\";\n },\n toHex: function(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function(allow3Char) {\n return '#' + this.toHex(allow3Char);\n },\n toHex8: function(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function(allow4Char) {\n return '#' + this.toHex8(allow4Char);\n },\n toRgb: function() {\n return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };\n },\n toRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \")\" :\n \"rgba(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function() {\n return { r: mathRound(bound01(this._r, 255) * 100) + \"%\", g: mathRound(bound01(this._g, 255) * 100) + \"%\", b: mathRound(bound01(this._b, 255) * 100) + \"%\", a: this._a };\n },\n toPercentageRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%)\" :\n \"rgba(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function() {\n if (this._a === 0) {\n return \"transparent\";\n }\n\n if (this._a < 1) {\n return false;\n }\n\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function(secondColor) {\n var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n\n return \"progid:DXImageTransform.Microsoft.gradient(\"+gradientType+\"startColorstr=\"+hex8String+\",endColorstr=\"+secondHex8String+\")\";\n },\n toString: function(format) {\n var formatSet = !!format;\n format = format || this._format;\n\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n\n return formattedString || this.toHexString();\n },\n clone: function() {\n return tinycolor(this.toString());\n },\n\n _applyModification: function(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function() {\n return this._applyModification(lighten, arguments);\n },\n brighten: function() {\n return this._applyModification(brighten, arguments);\n },\n darken: function() {\n return this._applyModification(darken, arguments);\n },\n desaturate: function() {\n return this._applyModification(desaturate, arguments);\n },\n saturate: function() {\n return this._applyModification(saturate, arguments);\n },\n greyscale: function() {\n return this._applyModification(greyscale, arguments);\n },\n spin: function() {\n return this._applyModification(spin, arguments);\n },\n\n _applyCombination: function(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function() {\n return this._applyCombination(analogous, arguments);\n },\n complement: function() {\n return this._applyCombination(complement, arguments);\n },\n monochromatic: function() {\n return this._applyCombination(monochromatic, arguments);\n },\n splitcomplement: function() {\n return this._applyCombination(splitcomplement, arguments);\n },\n triad: function() {\n return this._applyCombination(triad, arguments);\n },\n tetrad: function() {\n return this._applyCombination(tetrad, arguments);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function(color, opts) {\n if (typeof color == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n }\n else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n\n if (typeof color == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n\n a = boundAlpha(a);\n\n return {\n ok: ok,\n format: color.format || format,\n r: mathMin(255, mathMax(rgb.r, 0)),\n g: mathMin(255, mathMax(rgb.g, 0)),\n b: mathMin(255, mathMax(rgb.b, 0)),\n a: a\n };\n}\n\n\n// Conversion Functions\n// --------------------\n\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n\n// `rgbToRgb`\n// Handle bounds / percentage checking to conform to CSS color spec\n// <http://www.w3.org/TR/css3-color/>\n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b){\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// `rgbToHsl`\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if(max == min) {\n h = s = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n\n h /= 6;\n }\n\n return { h: h, s: s, l: l };\n}\n\n// `hslToRgb`\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n\n function hue2rgb(p, q, t) {\n if(t < 0) t += 1;\n if(t > 1) t -= 1;\n if(t < 1/6) return p + (q - p) * 6 * t;\n if(t < 1/2) return q;\n if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;\n return p;\n }\n\n if(s === 0) {\n r = g = b = l; // achromatic\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHsv`\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, v = max;\n\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if(max == min) {\n h = 0; // achromatic\n }\n else {\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n\n// `hsvToRgb`\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\n function hsvToRgb(h, s, v) {\n\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHex`\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToHex`\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16)),\n pad2(convertDecimalToHex(a))\n ];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToArgbHex`\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n return hex.join(\"\");\n}\n\n// `equals`\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) { return false; }\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\n\ntinycolor.random = function() {\n return tinycolor.fromRatio({\n r: mathRandom(),\n g: mathRandom(),\n b: mathRandom()\n });\n};\n\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>\n\nfunction desaturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction saturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\n\nfunction lighten (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\nfunction brighten(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var rgb = tinycolor(color).toRgb();\n rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));\n rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));\n rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));\n return tinycolor(rgb);\n}\n\nfunction darken (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>\n\nfunction complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\n\nfunction triad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction tetrad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),\n tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})\n ];\n}\n\nfunction analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n\n for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\n\nfunction monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h, s = hsv.s, v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n\n while (results--) {\n ret.push(tinycolor({ h: h, s: s, v: v}));\n v = (v + modification) % 1;\n }\n\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function(color1, color2, amount) {\n amount = (amount === 0) ? 0 : (amount || 50);\n\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n\n var p = amount / 100;\n\n var rgba = {\n r: ((rgb2.r - rgb1.r) * p) + rgb1.r,\n g: ((rgb2.g - rgb1.g) * p) + rgb1.g,\n b: ((rgb2.b - rgb1.b) * p) + rgb1.b,\n a: ((rgb2.a - rgb1.a) * p) + rgb1.a\n };\n\n return tinycolor(rgba);\n};\n\n\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n\n// `contrast`\n// Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\ntinycolor.readability = function(color1, color2) {\n var c1 = tinycolor(color1);\n var c2 = tinycolor(color2);\n return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);\n};\n\n// `isReadable`\n// Ensure that foreground and background color combinations meet WCAG2 guidelines.\n// The third argument is an optional Object.\n// the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';\n// the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.\n// If the entire object is absent, isReadable defaults to {level:\"AA\",size:\"small\"}.\n\n// *Example*\n// tinycolor.isReadable(\"#000\", \"#111\") => false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function(color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n\n out = false;\n\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n\n};\n\n// `mostReadable`\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function(baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size ;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors ;\n level = args.level;\n size = args.size;\n\n for (var i= 0; i < colorList.length ; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n\n if (tinycolor.isReadable(baseColor, bestColor, {\"level\":level,\"size\":size}) || !includeFallbackColors) {\n return bestColor;\n }\n else {\n args.includeFallbackColors=false;\n return tinycolor.mostReadable(baseColor,[\"#fff\", \"#000\"],args);\n }\n};\n\n\n// Big List of Colors\n// ------------------\n// <http://www.w3.org/TR/css3-color/#svg-color>\nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\n darkblue: \"00008b\",\n darkcyan: \"008b8b\",\n darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\",\n darkgreen: \"006400\",\n darkgrey: \"a9a9a9\",\n darkkhaki: \"bdb76b\",\n darkmagenta: \"8b008b\",\n darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\",\n darkorchid: \"9932cc\",\n darkred: \"8b0000\",\n darksalmon: \"e9967a\",\n darkseagreen: \"8fbc8f\",\n darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\",\n darkslategrey: \"2f4f4f\",\n darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\",\n deeppink: \"ff1493\",\n deepskyblue: \"00bfff\",\n dimgray: \"696969\",\n dimgrey: \"696969\",\n dodgerblue: \"1e90ff\",\n firebrick: \"b22222\",\n floralwhite: \"fffaf0\",\n forestgreen: \"228b22\",\n fuchsia: \"f0f\",\n gainsboro: \"dcdcdc\",\n ghostwhite: \"f8f8ff\",\n gold: \"ffd700\",\n goldenrod: \"daa520\",\n gray: \"808080\",\n green: \"008000\",\n greenyellow: \"adff2f\",\n grey: \"808080\",\n honeydew: \"f0fff0\",\n hotpink: \"ff69b4\",\n indianred: \"cd5c5c\",\n indigo: \"4b0082\",\n ivory: \"fffff0\",\n khaki: \"f0e68c\",\n lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\n lightgoldenrodyellow: \"fafad2\",\n lightgray: \"d3d3d3\",\n lightgreen: \"90ee90\",\n lightgrey: \"d3d3d3\",\n lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\",\n lightseagreen: \"20b2aa\",\n lightskyblue: \"87cefa\",\n lightslategray: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\n mediumaquamarine: \"66cdaa\",\n mediumblue: \"0000cd\",\n mediumorchid: \"ba55d3\",\n mediumpurple: \"9370db\",\n mediumseagreen: \"3cb371\",\n mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\",\n mediumturquoise: \"48d1cc\",\n mediumvioletred: \"c71585\",\n midnightblue: \"191970\",\n mintcream: \"f5fffa\",\n mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\",\n navajowhite: \"ffdead\",\n navy: \"000080\",\n oldlace: \"fdf5e6\",\n olive: \"808000\",\n olivedrab: \"6b8e23\",\n orange: \"ffa500\",\n orangered: \"ff4500\",\n orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\",\n palegreen: \"98fb98\",\n paleturquoise: \"afeeee\",\n palevioletred: \"db7093\",\n papayawhip: \"ffefd5\",\n peachpuff: \"ffdab9\",\n peru: \"cd853f\",\n pink: \"ffc0cb\",\n plum: \"dda0dd\",\n powderblue: \"b0e0e6\",\n purple: \"800080\",\n rebeccapurple: \"663399\",\n red: \"f00\",\n rosybrown: \"bc8f8f\",\n royalblue: \"4169e1\",\n saddlebrown: \"8b4513\",\n salmon: \"fa8072\",\n sandybrown: \"f4a460\",\n seagreen: \"2e8b57\",\n seashell: \"fff5ee\",\n sienna: \"a0522d\",\n silver: \"c0c0c0\",\n skyblue: \"87ceeb\",\n slateblue: \"6a5acd\",\n slategray: \"708090\",\n slategrey: \"708090\",\n snow: \"fffafa\",\n springgreen: \"00ff7f\",\n steelblue: \"4682b4\",\n tan: \"d2b48c\",\n teal: \"008080\",\n thistle: \"d8bfd8\",\n tomato: \"ff6347\",\n turquoise: \"40e0d0\",\n violet: \"ee82ee\",\n wheat: \"f5deb3\",\n white: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via `hexNames[hex]`\nvar hexNames = tinycolor.hexNames = flip(names);\n\n\n// Utilities\n// ---------\n\n// `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`\nfunction flip(o) {\n var flipped = { };\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) { n = \"100%\"; }\n\n var processPercent = isPercentage(n);\n n = mathMin(max, mathMax(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return (n % max) / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return mathMin(1, mathMax(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf('.') != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf('%') != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? '0' + c : '' + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = (n * 100) + \"%\";\n }\n\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return (parseIntFromHex(h) / 255);\n}\n\nvar matchers = (function() {\n\n // <http://www.w3.org/TR/css3-values/#integers>\n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // <http://www.w3.org/TR/css3-values/#number-value>\n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n})();\n\n// `isValidCSSUnit`\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see `matchers` above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// `stringInputToObject`\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\nfunction stringInputToObject(color) {\n\n color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color == 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: \"name\" };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if ((match = matchers.rgb.exec(color))) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n if ((match = matchers.rgba.exec(color))) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n if ((match = matchers.hsl.exec(color))) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n if ((match = matchers.hsla.exec(color))) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n if ((match = matchers.hsv.exec(color))) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n if ((match = matchers.hsva.exec(color))) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n if ((match = matchers.hex8.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex6.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if ((match = matchers.hex4.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n a: convertHexToDecimal(match[4] + '' + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex3.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n\n return false;\n}\n\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\"level\":\"AA\", \"size\":\"small\"};\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\"level\":level, \"size\":size};\n}\n\n// Node: Export function\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports = tinycolor;\n}\n// AMD/requirejs: Define the module\nelse if (typeof define === 'function' && define.amd) {\n define(function () {return tinycolor;});\n}\n// Browser: Expose to window\nelse {\n window.tinycolor = tinycolor;\n}\n\n})(Math);\n"],"names":["Math","trimLeft","trimRight","tinyCounter","mathRound","round","mathMin","min","mathMax","max","mathRandom","random","tinycolor","color","opts","this","rgb","r","g","b","a","s","v","l","ok","format","replace","toLowerCase","named","names","match","matchers","exec","rgba","hsl","h","hsla","hsv","hsva","hex8","parseIntFromHex","convertHexToDecimal","hex6","hex4","hex3","stringInputToObject","isValidCSSUnit","bound01","String","substr","convertToPercentage","i","floor","f","p","q","t","mod","hsvToRgb","hue2rgb","hslToRgb","hasOwnProperty","boundAlpha","inputToRGB","_originalInput","_r","_g","_b","_a","_roundA","_format","_gradientType","gradientType","_ok","_tc_id","rgbToHsl","d","rgbToHsv","rgbToHex","allow3Char","hex","pad2","toString","charAt","join","rgbaToArgbHex","convertDecimalToHex","desaturate","amount","toHsl","clamp01","saturate","greyscale","lighten","brighten","toRgb","darken","spin","hue","complement","triad","tetrad","splitcomplement","analogous","results","slices","part","ret","push","monochromatic","toHsv","modification","prototype","isDark","getBrightness","isLight","isValid","getOriginalInput","getFormat","getAlpha","getLuminance","RsRGB","GsRGB","BsRGB","pow","setAlpha","value","toHsvString","toHslString","toHex","toHexString","toHex8","allow4Char","rgbaToHex","toHex8String","toRgbString","toPercentageRgb","toPercentageRgbString","toName","hexNames","toFilter","secondColor","hex8String","secondHex8String","formatSet","formattedString","clone","_applyModification","fn","args","apply","concat","slice","call","arguments","_applyCombination","fromRatio","newColor","equals","color1","color2","mix","rgb1","rgb2","readability","c1","c2","isReadable","wcag2","wcag2Parms","out","parms","level","size","toUpperCase","mostReadable","baseColor","colorList","bestColor","bestScore","includeFallbackColors","length","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","o","flipped","flip","parseFloat","isNaN","n","indexOf","isOnePointZero","processPercent","isPercentage","parseInt","abs","val","c","PERMISSIVE_MATCH3","CSS_UNIT","PERMISSIVE_MATCH4","RegExp","module","exports","window"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- import{getDefaultExportFromCjs}from'../../../../../_virtual/_commonjsHelpers.mjs';import{__module as tinycolor$1}from'../../../../../_virtual/tinycolor.mjs';var module;module=tinycolor$1,function(r){var t=/^\s+/,e=/\s+$/,n=0,a=r.round,o=r.min,i=r.max,s=r.random;function tinycolor(s,c){if(c=c||{},(s=s||'')instanceof tinycolor)return s;if(!(this instanceof tinycolor))return new tinycolor(s,c);var h=(n=>{var a={r:0,g:0,b:0};var s=1;var c=null;var h=null;var u=null;var g=!1;var d=!1;var b,p;return typeof n=="string"&&(n=(r=>{r=r.replace(t,'').replace(e,'').toLowerCase();var n=!1;if(l[r])r=l[r],n=!0;else if(r=='transparent')return{r:0,g:0,b:0,a:0,format:"name"};var a;return(a=f.rgb.exec(r))?{r:a[1],g:a[2],b:a[3]}:(a=f.rgba.exec(r))?{r:a[1],g:a[2],b:a[3],a:a[4]}:(a=f.hsl.exec(r))?{h:a[1],s:a[2],l:a[3]}:(a=f.hsla.exec(r))?{h:a[1],s:a[2],l:a[3],a:a[4]}:(a=f.hsv.exec(r))?{h:a[1],s:a[2],v:a[3]}:(a=f.hsva.exec(r))?{h:a[1],s:a[2],v:a[3],a:a[4]}:(a=f.hex8.exec(r))?{r:parseIntFromHex(a[1]),g:parseIntFromHex(a[2]),b:parseIntFromHex(a[3]),a:convertHexToDecimal(a[4]),format:n?"name":"hex8"}:(a=f.hex6.exec(r))?{r:parseIntFromHex(a[1]),g:parseIntFromHex(a[2]),b:parseIntFromHex(a[3]),format:n?"name":"hex"}:(a=f.hex4.exec(r))?{r:parseIntFromHex(a[1]+''+a[1]),g:parseIntFromHex(a[2]+''+a[2]),b:parseIntFromHex(a[3]+''+a[3]),a:convertHexToDecimal(a[4]+''+a[4]),format:n?"name":"hex8"}:!!(a=f.hex3.exec(r))&&{r:parseIntFromHex(a[1]+''+a[1]),g:parseIntFromHex(a[2]+''+a[2]),b:parseIntFromHex(a[3]+''+a[3]),format:n?"name":"hex"}})(n)),typeof n=="object"&&(isValidCSSUnit(n.r)&&isValidCSSUnit(n.g)&&isValidCSSUnit(n.b)?(b=n.g,p=n.b,a={r:bound01(n.r,255)*255,g:bound01(b,255)*255,b:bound01(p,255)*255},g=!0,d=String(n.r).substr(-1)==="%"?"prgb":"rgb"):isValidCSSUnit(n.h)&&isValidCSSUnit(n.s)&&isValidCSSUnit(n.v)?(c=convertToPercentage(n.s),h=convertToPercentage(n.v),a=((t,e,n)=>{t=bound01(t,360)*6,e=bound01(e,100),n=bound01(n,100);var a=r.floor(t),o=t-a,i=n*(1-e),s=n*(1-o*e),l=n*(1-(1-o)*e),c=a%6;return{r:[n,s,i,i,l,n][c]*255,g:[l,n,n,s,i,i][c]*255,b:[i,i,l,n,n,s][c]*255}})(n.h,c,h),g=!0,d="hsv"):isValidCSSUnit(n.h)&&isValidCSSUnit(n.s)&&isValidCSSUnit(n.l)&&(c=convertToPercentage(n.s),u=convertToPercentage(n.l),a=((r,t,e)=>{var n,a,o;function hue2rgb(r,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?r+6*(t-r)*e:e<.5?t:e<2/3?r+(t-r)*(2/3-e)*6:r}if(r=bound01(r,360),t=bound01(t,100),e=bound01(e,100),t===0)n=a=o=e;else{var i=e<.5?e*(1+t):e+t-e*t;var s=2*e-i;n=hue2rgb(s,i,r+1/3),a=hue2rgb(s,i,r),o=hue2rgb(s,i,r-1/3)}return{r:n*255,g:a*255,b:o*255}})(n.h,c,u),g=!0,d="hsl"),n.hasOwnProperty("a")&&(s=n.a)),s=boundAlpha(s),{ok:g,format:n.format||d,r:o(255,i(a.r,0)),g:o(255,i(a.g,0)),b:o(255,i(a.b,0)),a:s}})(s);this._originalInput=s,this._r=h.r,this._g=h.g,this._b=h.b,this._a=h.a,this._roundA=a(100*this._a)/100,this._format=c.format||h.format,this._gradientType=c.gradientType,this._r<1&&(this._r=a(this._r)),this._g<1&&(this._g=a(this._g)),this._b<1&&(this._b=a(this._b)),this._ok=h.ok,this._tc_id=n++}function rgbToHsl(r,t,e){r=bound01(r,255),t=bound01(t,255),e=bound01(e,255);var n=i(r,t,e),a=o(r,t,e);var s,l,c=(n+a)/2;if(n==a)s=l=0;else{var f=n-a;switch(l=c>.5?f/(2-n-a):f/(n+a),n){case r:s=(t-e)/f+(t<e?6:0);break;case t:s=(e-r)/f+2;break;case e:s=(r-t)/f+4}s/=6}return{h:s,s:l,l:c}}function rgbToHsv(r,t,e){r=bound01(r,255),t=bound01(t,255),e=bound01(e,255);var n=i(r,t,e),a=o(r,t,e);var s,l,c=n;var f=n-a;if(l=n===0?0:f/n,n==a)s=0;else{switch(n){case r:s=(t-e)/f+(t<e?6:0);break;case t:s=(e-r)/f+2;break;case e:s=(r-t)/f+4}s/=6}return{h:s,s:l,v:c}}function rgbToHex(r,t,e,n){var o=[pad2(a(r).toString(16)),pad2(a(t).toString(16)),pad2(a(e).toString(16))];return n&&o[0].charAt(0)==o[0].charAt(1)&&o[1].charAt(0)==o[1].charAt(1)&&o[2].charAt(0)==o[2].charAt(1)?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0):o.join("")}function rgbaToArgbHex(r,t,e,n){return[pad2(convertDecimalToHex(n)),pad2(a(r).toString(16)),pad2(a(t).toString(16)),pad2(a(e).toString(16))].join("")}function desaturate(r,t){t=t===0?0:t||10;var e=tinycolor(r).toHsl();return e.s-=t/100,e.s=clamp01(e.s),tinycolor(e)}function saturate(r,t){t=t===0?0:t||10;var e=tinycolor(r).toHsl();return e.s+=t/100,e.s=clamp01(e.s),tinycolor(e)}function greyscale(r){return tinycolor(r).desaturate(100)}function lighten(r,t){t=t===0?0:t||10;var e=tinycolor(r).toHsl();return e.l+=t/100,e.l=clamp01(e.l),tinycolor(e)}function brighten(r,t){t=t===0?0:t||10;var e=tinycolor(r).toRgb();return e.r=i(0,o(255,e.r-a(-t/100*255))),e.g=i(0,o(255,e.g-a(-t/100*255))),e.b=i(0,o(255,e.b-a(-t/100*255))),tinycolor(e)}function darken(r,t){t=t===0?0:t||10;var e=tinycolor(r).toHsl();return e.l-=t/100,e.l=clamp01(e.l),tinycolor(e)}function spin(r,t){var e=tinycolor(r).toHsl();var n=(e.h+t)%360;return e.h=n<0?360+n:n,tinycolor(e)}function complement(r){var t=tinycolor(r).toHsl();return t.h=(t.h+180)%360,tinycolor(t)}function triad(r){var t=tinycolor(r).toHsl();var e=t.h;return[tinycolor(r),tinycolor({h:(e+120)%360,s:t.s,l:t.l}),tinycolor({h:(e+240)%360,s:t.s,l:t.l})]}function tetrad(r){var t=tinycolor(r).toHsl();var e=t.h;return[tinycolor(r),tinycolor({h:(e+90)%360,s:t.s,l:t.l}),tinycolor({h:(e+180)%360,s:t.s,l:t.l}),tinycolor({h:(e+270)%360,s:t.s,l:t.l})]}function splitcomplement(r){var t=tinycolor(r).toHsl();var e=t.h;return[tinycolor(r),tinycolor({h:(e+72)%360,s:t.s,l:t.l}),tinycolor({h:(e+216)%360,s:t.s,l:t.l})]}function analogous(r,t,e){t=t||6,e=e||30;var n=tinycolor(r).toHsl();var a=360/e;var o=[tinycolor(r)];for(n.h=(n.h-(a*t>>1)+720)%360;--t;)n.h=(n.h+a)%360,o.push(tinycolor(n));return o}function monochromatic(r,t){t=t||6;var e=tinycolor(r).toHsv();var n=e.h,a=e.s,o=e.v;var i=[];var s=1/t;for(;t--;)i.push(tinycolor({h:n,s:a,v:o})),o=(o+s)%1;return i}tinycolor.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var r=this.toRgb();return(r.r*299+r.g*587+r.b*114)/1e3},getLuminance:function(){var t=this.toRgb();var e,n,a;return n=t.g/255,a=t.b/255,.2126*((e=t.r/255)<=.03928?e/12.92:r.pow((e+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:r.pow((n+.055)/1.055,2.4))+.0722*(a<=.03928?a/12.92:r.pow((a+.055)/1.055,2.4))},setAlpha:function(r){return this._a=boundAlpha(r),this._roundA=a(100*this._a)/100,this},toHsv:function(){var r=rgbToHsv(this._r,this._g,this._b);return{h:r.h*360,s:r.s,v:r.v,a:this._a}},toHsvString:function(){var r=rgbToHsv(this._r,this._g,this._b);var t=a(r.h*360),e=a(r.s*100),n=a(r.v*100);return this._a==1?"hsv("+t+", "+e+"%, "+n+"%)":"hsva("+t+", "+e+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var r=rgbToHsl(this._r,this._g,this._b);return{h:r.h*360,s:r.s,l:r.l,a:this._a}},toHslString:function(){var r=rgbToHsl(this._r,this._g,this._b);var t=a(r.h*360),e=a(r.s*100),n=a(r.l*100);return this._a==1?"hsl("+t+", "+e+"%, "+n+"%)":"hsla("+t+", "+e+"%, "+n+"%, "+this._roundA+")"},toHex:function(r){return rgbToHex(this._r,this._g,this._b,r)},toHexString:function(r){return'#'+this.toHex(r)},toHex8:function(r){return((r,t,e,n,o)=>{var i=[pad2(a(this._r).toString(16)),pad2(a(t).toString(16)),pad2(a(e).toString(16)),pad2(convertDecimalToHex(n))];return o&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0):i.join("")})(0,this._g,this._b,this._a,r)},toHex8String:function(r){return'#'+this.toHex8(r)},toRgb:function(){return{r:a(this._r),g:a(this._g),b:a(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+a(this._r)+", "+a(this._g)+", "+a(this._b)+")":"rgba("+a(this._r)+", "+a(this._g)+", "+a(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:a(bound01(this._r,255)*100)+"%",g:a(bound01(this._g,255)*100)+"%",b:a(bound01(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+a(bound01(this._r,255)*100)+"%, "+a(bound01(this._g,255)*100)+"%, "+a(bound01(this._b,255)*100)+"%)":"rgba("+a(bound01(this._r,255)*100)+"%, "+a(bound01(this._g,255)*100)+"%, "+a(bound01(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":!(this._a<1)&&(c[rgbToHex(this._r,this._g,this._b,!0)]||!1)},toFilter:function(r){var t='#'+rgbaToArgbHex(this._r,this._g,this._b,this._a);var e=t;var n=this._gradientType?"GradientType = 1, ":"";if(r){var a=tinycolor(r);e='#'+rgbaToArgbHex(a._r,a._g,a._b,a._a)}return"progid:DXImageTransform.Microsoft.gradient("+n+"startColorstr="+t+",endColorstr="+e+")"},toString:function(r){var t=!!r;r=r||this._format;var e=!1;return t||!(this._a<1&&this._a>=0)||r!=="hex"&&r!=="hex6"&&r!=="hex3"&&r!=="hex4"&&r!=="hex8"&&r!=="name"?(r==="rgb"&&(e=this.toRgbString()),r==="prgb"&&(e=this.toPercentageRgbString()),r!=="hex"&&r!=="hex6"||(e=this.toHexString()),r==="hex3"&&(e=this.toHexString(!0)),r==="hex4"&&(e=this.toHex8String(!0)),r==="hex8"&&(e=this.toHex8String()),r==="name"&&(e=this.toName()),r==="hsl"&&(e=this.toHslString()),r==="hsv"&&(e=this.toHsvString()),e||this.toHexString()):r==="name"&&this._a===0?this.toName():this.toRgbString()},clone:function(){return tinycolor(this.toString())},_applyModification:function(r,t){var e=r.apply(null,[this].concat([].slice.call(t)));return this._r=e._r,this._g=e._g,this._b=e._b,this.setAlpha(e._a),this},lighten:function(){return this._applyModification(lighten,arguments)},brighten:function(){return this._applyModification(brighten,arguments)},darken:function(){return this._applyModification(darken,arguments)},desaturate:function(){return this._applyModification(desaturate,arguments)},saturate:function(){return this._applyModification(saturate,arguments)},greyscale:function(){return this._applyModification(greyscale,arguments)},spin:function(){return this._applyModification(spin,arguments)},_applyCombination:function(r,t){return r.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(analogous,arguments)},complement:function(){return this._applyCombination(complement,arguments)},monochromatic:function(){return this._applyCombination(monochromatic,arguments)},splitcomplement:function(){return this._applyCombination(splitcomplement,arguments)},triad:function(){return this._applyCombination(triad,arguments)},tetrad:function(){return this._applyCombination(tetrad,arguments)}},tinycolor.fromRatio=(r,t)=>{if(typeof r=="object"){var e={};for(var n in r)r.hasOwnProperty(n)&&(e[n]=n==="a"?r[n]:convertToPercentage(r[n]));r=e}return tinycolor(r,t)},tinycolor.equals=(r,t)=>!(!r||!t)&&tinycolor(r).toRgbString()==tinycolor(t).toRgbString(),tinycolor.random=()=>tinycolor.fromRatio({r:s(),g:s(),b:s()}),tinycolor.mix=(r,t,e)=>{e=e===0?0:e||50;var n=tinycolor(r).toRgb();var a=tinycolor(t).toRgb();var o=e/100;return tinycolor({r:(a.r-n.r)*o+n.r,g:(a.g-n.g)*o+n.g,b:(a.b-n.b)*o+n.b,a:(a.a-n.a)*o+n.a})},tinycolor.readability=(t,e)=>{var n=tinycolor(t);var a=tinycolor(e);return(r.max(n.getLuminance(),a.getLuminance())+.05)/(r.min(n.getLuminance(),a.getLuminance())+.05)},tinycolor.isReadable=(r,t,e)=>{var n=tinycolor.readability(r,t);var a,o;switch(o=!1,(i=e,s=((i=i||{level:"AA",size:"small"}).level||"AA").toUpperCase(),l=(i.size||"small").toLowerCase(),s!=="AA"&&s!=="AAA"&&(s="AA"),l!=="small"&&l!=="large"&&(l="small"),a={level:s,size:l}).level+a.size){case"AAsmall":case"AAAlarge":o=n>=4.5;break;case"AAlarge":o=n>=3;break;case"AAAsmall":o=n>=7}var i,s,l;return o},tinycolor.mostReadable=(r,t,e)=>{var n=null;var a=0;var o;var i,s,l;i=(e=e||{}).includeFallbackColors,s=e.level,l=e.size;for(var c=0;c<t.length;c++)(o=tinycolor.readability(r,t[c]))>a&&(a=o,n=tinycolor(t[c]));return tinycolor.isReadable(r,n,{level:s,size:l})||!i?n:(e.includeFallbackColors=!1,tinycolor.mostReadable(r,["#fff","#000"],e))};var l=tinycolor.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};var c=tinycolor.hexNames=(r=>{var t={};for(var e in r)r.hasOwnProperty(e)&&(t[r[e]]=e);return t})(l);function boundAlpha(r){return r=parseFloat(r),(isNaN(r)||r<0||r>1)&&(r=1),r}function bound01(t,e){(r=>typeof r=="string"&&r.indexOf('.')!=-1&&parseFloat(r)===1)(t)&&(t="100%");var n=(r=>typeof r=="string"&&r.indexOf('%')!=-1)(t);return t=o(e,i(0,parseFloat(t))),n&&(t=parseInt(t*e,10)/100),r.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function clamp01(r){return o(1,i(0,r))}function parseIntFromHex(r){return parseInt(r,16)}function pad2(r){return r.length==1?'0'+r:''+r}function convertToPercentage(r){return r<=1&&(r=r*100+"%"),r}function convertDecimalToHex(t){return r.round(parseFloat(t)*255).toString(16)}function convertHexToDecimal(r){return parseIntFromHex(r)/255}var f=(u="[\\s|\\(]+("+(h="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+h+")[,|\\s]+("+h+")\\s*\\)?",g="[\\s|\\(]+("+h+")[,|\\s]+("+h+")[,|\\s]+("+h+")[,|\\s]+("+h+")\\s*\\)?",{CSS_UNIT:new RegExp(h),rgb:new RegExp("rgb"+u),rgba:new RegExp("rgba"+g),hsl:new RegExp("hsl"+u),hsla:new RegExp("hsla"+g),hsv:new RegExp("hsv"+u),hsva:new RegExp("hsva"+g),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});var h,u,g;function isValidCSSUnit(r){return!!f.CSS_UNIT.exec(r)}module.exports?module.exports=tinycolor:window.tinycolor=tinycolor}(Math);var tinycolor=getDefaultExportFromCjs(tinycolor$1.exports);export{tinycolor as default};
2
- //# sourceMappingURL=tinycolor.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tinycolor.mjs","sources":["../../../../../../../node_modules/.pnpm/tinycolor2@1.4.2/node_modules/tinycolor2/tinycolor.js"],"sourcesContent":["// TinyColor v1.4.2\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\n(function(Math) {\n\nvar trimLeft = /^\\s+/,\n trimRight = /\\s+$/,\n tinyCounter = 0,\n mathRound = Math.round,\n mathMin = Math.min,\n mathMax = Math.max,\n mathRandom = Math.random;\n\nfunction tinycolor (color, opts) {\n\n color = (color) ? color : '';\n opts = opts || { };\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n\n var rgb = inputToRGB(color);\n this._originalInput = color,\n this._r = rgb.r,\n this._g = rgb.g,\n this._b = rgb.b,\n this._a = rgb.a,\n this._roundA = mathRound(100*this._a) / 100,\n this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this._r < 1) { this._r = mathRound(this._r); }\n if (this._g < 1) { this._g = mathRound(this._g); }\n if (this._b < 1) { this._b = mathRound(this._b); }\n\n this._ok = rgb.ok;\n this._tc_id = tinyCounter++;\n}\n\ntinycolor.prototype = {\n isDark: function() {\n return this.getBrightness() < 128;\n },\n isLight: function() {\n return !this.isDark();\n },\n isValid: function() {\n return this._ok;\n },\n getOriginalInput: function() {\n return this._originalInput;\n },\n getFormat: function() {\n return this._format;\n },\n getAlpha: function() {\n return this._a;\n },\n getBrightness: function() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r/255;\n GsRGB = rgb.g/255;\n BsRGB = rgb.b/255;\n\n if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}\n if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}\n if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}\n return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);\n },\n setAlpha: function(value) {\n this._a = boundAlpha(value);\n this._roundA = mathRound(100*this._a) / 100;\n return this;\n },\n toHsv: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };\n },\n toHsvString: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);\n return (this._a == 1) ?\n \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" :\n \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \"+ this._roundA + \")\";\n },\n toHsl: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };\n },\n toHslString: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);\n return (this._a == 1) ?\n \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" :\n \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \"+ this._roundA + \")\";\n },\n toHex: function(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function(allow3Char) {\n return '#' + this.toHex(allow3Char);\n },\n toHex8: function(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function(allow4Char) {\n return '#' + this.toHex8(allow4Char);\n },\n toRgb: function() {\n return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };\n },\n toRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \")\" :\n \"rgba(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function() {\n return { r: mathRound(bound01(this._r, 255) * 100) + \"%\", g: mathRound(bound01(this._g, 255) * 100) + \"%\", b: mathRound(bound01(this._b, 255) * 100) + \"%\", a: this._a };\n },\n toPercentageRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%)\" :\n \"rgba(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function() {\n if (this._a === 0) {\n return \"transparent\";\n }\n\n if (this._a < 1) {\n return false;\n }\n\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function(secondColor) {\n var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n\n return \"progid:DXImageTransform.Microsoft.gradient(\"+gradientType+\"startColorstr=\"+hex8String+\",endColorstr=\"+secondHex8String+\")\";\n },\n toString: function(format) {\n var formatSet = !!format;\n format = format || this._format;\n\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n\n return formattedString || this.toHexString();\n },\n clone: function() {\n return tinycolor(this.toString());\n },\n\n _applyModification: function(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function() {\n return this._applyModification(lighten, arguments);\n },\n brighten: function() {\n return this._applyModification(brighten, arguments);\n },\n darken: function() {\n return this._applyModification(darken, arguments);\n },\n desaturate: function() {\n return this._applyModification(desaturate, arguments);\n },\n saturate: function() {\n return this._applyModification(saturate, arguments);\n },\n greyscale: function() {\n return this._applyModification(greyscale, arguments);\n },\n spin: function() {\n return this._applyModification(spin, arguments);\n },\n\n _applyCombination: function(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function() {\n return this._applyCombination(analogous, arguments);\n },\n complement: function() {\n return this._applyCombination(complement, arguments);\n },\n monochromatic: function() {\n return this._applyCombination(monochromatic, arguments);\n },\n splitcomplement: function() {\n return this._applyCombination(splitcomplement, arguments);\n },\n triad: function() {\n return this._applyCombination(triad, arguments);\n },\n tetrad: function() {\n return this._applyCombination(tetrad, arguments);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function(color, opts) {\n if (typeof color == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n }\n else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n\n if (typeof color == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n\n a = boundAlpha(a);\n\n return {\n ok: ok,\n format: color.format || format,\n r: mathMin(255, mathMax(rgb.r, 0)),\n g: mathMin(255, mathMax(rgb.g, 0)),\n b: mathMin(255, mathMax(rgb.b, 0)),\n a: a\n };\n}\n\n\n// Conversion Functions\n// --------------------\n\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n\n// `rgbToRgb`\n// Handle bounds / percentage checking to conform to CSS color spec\n// <http://www.w3.org/TR/css3-color/>\n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b){\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// `rgbToHsl`\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if(max == min) {\n h = s = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n\n h /= 6;\n }\n\n return { h: h, s: s, l: l };\n}\n\n// `hslToRgb`\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n\n function hue2rgb(p, q, t) {\n if(t < 0) t += 1;\n if(t > 1) t -= 1;\n if(t < 1/6) return p + (q - p) * 6 * t;\n if(t < 1/2) return q;\n if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;\n return p;\n }\n\n if(s === 0) {\n r = g = b = l; // achromatic\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHsv`\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, v = max;\n\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if(max == min) {\n h = 0; // achromatic\n }\n else {\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n\n// `hsvToRgb`\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\n function hsvToRgb(h, s, v) {\n\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHex`\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToHex`\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16)),\n pad2(convertDecimalToHex(a))\n ];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToArgbHex`\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n return hex.join(\"\");\n}\n\n// `equals`\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) { return false; }\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\n\ntinycolor.random = function() {\n return tinycolor.fromRatio({\n r: mathRandom(),\n g: mathRandom(),\n b: mathRandom()\n });\n};\n\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>\n\nfunction desaturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction saturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\n\nfunction lighten (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\nfunction brighten(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var rgb = tinycolor(color).toRgb();\n rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));\n rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));\n rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));\n return tinycolor(rgb);\n}\n\nfunction darken (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>\n\nfunction complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\n\nfunction triad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction tetrad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),\n tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})\n ];\n}\n\nfunction analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n\n for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\n\nfunction monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h, s = hsv.s, v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n\n while (results--) {\n ret.push(tinycolor({ h: h, s: s, v: v}));\n v = (v + modification) % 1;\n }\n\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function(color1, color2, amount) {\n amount = (amount === 0) ? 0 : (amount || 50);\n\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n\n var p = amount / 100;\n\n var rgba = {\n r: ((rgb2.r - rgb1.r) * p) + rgb1.r,\n g: ((rgb2.g - rgb1.g) * p) + rgb1.g,\n b: ((rgb2.b - rgb1.b) * p) + rgb1.b,\n a: ((rgb2.a - rgb1.a) * p) + rgb1.a\n };\n\n return tinycolor(rgba);\n};\n\n\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n\n// `contrast`\n// Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\ntinycolor.readability = function(color1, color2) {\n var c1 = tinycolor(color1);\n var c2 = tinycolor(color2);\n return (Math.max(c1.getLuminance(),c2.getLuminance())+0.05) / (Math.min(c1.getLuminance(),c2.getLuminance())+0.05);\n};\n\n// `isReadable`\n// Ensure that foreground and background color combinations meet WCAG2 guidelines.\n// The third argument is an optional Object.\n// the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';\n// the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.\n// If the entire object is absent, isReadable defaults to {level:\"AA\",size:\"small\"}.\n\n// *Example*\n// tinycolor.isReadable(\"#000\", \"#111\") => false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function(color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n\n out = false;\n\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n\n};\n\n// `mostReadable`\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function(baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size ;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors ;\n level = args.level;\n size = args.size;\n\n for (var i= 0; i < colorList.length ; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n\n if (tinycolor.isReadable(baseColor, bestColor, {\"level\":level,\"size\":size}) || !includeFallbackColors) {\n return bestColor;\n }\n else {\n args.includeFallbackColors=false;\n return tinycolor.mostReadable(baseColor,[\"#fff\", \"#000\"],args);\n }\n};\n\n\n// Big List of Colors\n// ------------------\n// <http://www.w3.org/TR/css3-color/#svg-color>\nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\n darkblue: \"00008b\",\n darkcyan: \"008b8b\",\n darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\",\n darkgreen: \"006400\",\n darkgrey: \"a9a9a9\",\n darkkhaki: \"bdb76b\",\n darkmagenta: \"8b008b\",\n darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\",\n darkorchid: \"9932cc\",\n darkred: \"8b0000\",\n darksalmon: \"e9967a\",\n darkseagreen: \"8fbc8f\",\n darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\",\n darkslategrey: \"2f4f4f\",\n darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\",\n deeppink: \"ff1493\",\n deepskyblue: \"00bfff\",\n dimgray: \"696969\",\n dimgrey: \"696969\",\n dodgerblue: \"1e90ff\",\n firebrick: \"b22222\",\n floralwhite: \"fffaf0\",\n forestgreen: \"228b22\",\n fuchsia: \"f0f\",\n gainsboro: \"dcdcdc\",\n ghostwhite: \"f8f8ff\",\n gold: \"ffd700\",\n goldenrod: \"daa520\",\n gray: \"808080\",\n green: \"008000\",\n greenyellow: \"adff2f\",\n grey: \"808080\",\n honeydew: \"f0fff0\",\n hotpink: \"ff69b4\",\n indianred: \"cd5c5c\",\n indigo: \"4b0082\",\n ivory: \"fffff0\",\n khaki: \"f0e68c\",\n lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\n lightgoldenrodyellow: \"fafad2\",\n lightgray: \"d3d3d3\",\n lightgreen: \"90ee90\",\n lightgrey: \"d3d3d3\",\n lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\",\n lightseagreen: \"20b2aa\",\n lightskyblue: \"87cefa\",\n lightslategray: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\n mediumaquamarine: \"66cdaa\",\n mediumblue: \"0000cd\",\n mediumorchid: \"ba55d3\",\n mediumpurple: \"9370db\",\n mediumseagreen: \"3cb371\",\n mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\",\n mediumturquoise: \"48d1cc\",\n mediumvioletred: \"c71585\",\n midnightblue: \"191970\",\n mintcream: \"f5fffa\",\n mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\",\n navajowhite: \"ffdead\",\n navy: \"000080\",\n oldlace: \"fdf5e6\",\n olive: \"808000\",\n olivedrab: \"6b8e23\",\n orange: \"ffa500\",\n orangered: \"ff4500\",\n orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\",\n palegreen: \"98fb98\",\n paleturquoise: \"afeeee\",\n palevioletred: \"db7093\",\n papayawhip: \"ffefd5\",\n peachpuff: \"ffdab9\",\n peru: \"cd853f\",\n pink: \"ffc0cb\",\n plum: \"dda0dd\",\n powderblue: \"b0e0e6\",\n purple: \"800080\",\n rebeccapurple: \"663399\",\n red: \"f00\",\n rosybrown: \"bc8f8f\",\n royalblue: \"4169e1\",\n saddlebrown: \"8b4513\",\n salmon: \"fa8072\",\n sandybrown: \"f4a460\",\n seagreen: \"2e8b57\",\n seashell: \"fff5ee\",\n sienna: \"a0522d\",\n silver: \"c0c0c0\",\n skyblue: \"87ceeb\",\n slateblue: \"6a5acd\",\n slategray: \"708090\",\n slategrey: \"708090\",\n snow: \"fffafa\",\n springgreen: \"00ff7f\",\n steelblue: \"4682b4\",\n tan: \"d2b48c\",\n teal: \"008080\",\n thistle: \"d8bfd8\",\n tomato: \"ff6347\",\n turquoise: \"40e0d0\",\n violet: \"ee82ee\",\n wheat: \"f5deb3\",\n white: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via `hexNames[hex]`\nvar hexNames = tinycolor.hexNames = flip(names);\n\n\n// Utilities\n// ---------\n\n// `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`\nfunction flip(o) {\n var flipped = { };\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) { n = \"100%\"; }\n\n var processPercent = isPercentage(n);\n n = mathMin(max, mathMax(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return (n % max) / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return mathMin(1, mathMax(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf('.') != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf('%') != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? '0' + c : '' + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = (n * 100) + \"%\";\n }\n\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return (parseIntFromHex(h) / 255);\n}\n\nvar matchers = (function() {\n\n // <http://www.w3.org/TR/css3-values/#integers>\n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // <http://www.w3.org/TR/css3-values/#number-value>\n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n})();\n\n// `isValidCSSUnit`\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see `matchers` above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// `stringInputToObject`\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\nfunction stringInputToObject(color) {\n\n color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color == 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: \"name\" };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if ((match = matchers.rgb.exec(color))) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n if ((match = matchers.rgba.exec(color))) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n if ((match = matchers.hsl.exec(color))) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n if ((match = matchers.hsla.exec(color))) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n if ((match = matchers.hsv.exec(color))) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n if ((match = matchers.hsva.exec(color))) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n if ((match = matchers.hex8.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex6.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if ((match = matchers.hex4.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n a: convertHexToDecimal(match[4] + '' + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex3.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n\n return false;\n}\n\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\"level\":\"AA\", \"size\":\"small\"};\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\"level\":level, \"size\":size};\n}\n\n// Node: Export function\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports = tinycolor;\n}\n// AMD/requirejs: Define the module\nelse if (typeof define === 'function' && define.amd) {\n define(function () {return tinycolor;});\n}\n// Browser: Expose to window\nelse {\n window.tinycolor = tinycolor;\n}\n\n})(Math);\n"],"names":["Math","trimLeft","trimRight","tinyCounter","mathRound","round","mathMin","min","mathMax","max","mathRandom","random","tinycolor","color","opts","this","rgb","r","g","b","a","s","v","l","ok","format","replace","toLowerCase","named","names","match","matchers","exec","rgba","hsl","h","hsla","hsv","hsva","hex8","parseIntFromHex","convertHexToDecimal","hex6","hex4","hex3","stringInputToObject","isValidCSSUnit","bound01","String","substr","convertToPercentage","i","floor","f","p","q","t","mod","hsvToRgb","hue2rgb","hslToRgb","hasOwnProperty","boundAlpha","inputToRGB","_originalInput","_r","_g","_b","_a","_roundA","_format","_gradientType","gradientType","_ok","_tc_id","rgbToHsl","d","rgbToHsv","rgbToHex","allow3Char","hex","pad2","toString","charAt","join","rgbaToArgbHex","convertDecimalToHex","desaturate","amount","toHsl","clamp01","saturate","greyscale","lighten","brighten","toRgb","darken","spin","hue","complement","triad","tetrad","splitcomplement","analogous","results","slices","part","ret","push","monochromatic","toHsv","modification","prototype","isDark","getBrightness","isLight","isValid","getOriginalInput","getFormat","getAlpha","getLuminance","RsRGB","GsRGB","BsRGB","pow","setAlpha","value","toHsvString","toHslString","toHex","toHexString","toHex8","allow4Char","rgbaToHex","toHex8String","toRgbString","toPercentageRgb","toPercentageRgbString","toName","hexNames","toFilter","secondColor","hex8String","secondHex8String","formatSet","formattedString","clone","_applyModification","fn","args","apply","concat","slice","call","arguments","_applyCombination","fromRatio","newColor","equals","color1","color2","mix","rgb1","rgb2","readability","c1","c2","isReadable","wcag2","wcag2Parms","out","parms","level","size","toUpperCase","mostReadable","baseColor","colorList","bestColor","bestScore","includeFallbackColors","length","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","burntsienna","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","o","flipped","flip","parseFloat","isNaN","n","indexOf","isOnePointZero","processPercent","isPercentage","parseInt","abs","val","c","PERMISSIVE_MATCH3","CSS_UNIT","PERMISSIVE_MATCH4","RegExp","module","exports","window"],"mappings":"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","x_google_ignoreList":[0]}