acacia-ui 1.1.1 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/components/layout/VerticalLayout/VerticalLayout.d.ts +1 -1
  2. package/dist/components/layout/VerticalLayout/VerticalLayout.d.ts.map +1 -1
  3. package/dist/components/ui/Avatar/Avatar.d.ts.map +1 -1
  4. package/dist/components/ui/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  5. package/dist/components/ui/ConfigProvider/ConfigProvider.d.ts.map +1 -1
  6. package/dist/components/ui/ConfigProvider/defaultTheme.d.ts +1 -1
  7. package/dist/components/ui/ConfigProvider/defaultTheme.d.ts.map +1 -1
  8. package/dist/components/ui/Menu/Menu.d.ts.map +1 -1
  9. package/dist/components/ui/Modal/Modal.d.ts +7 -0
  10. package/dist/components/ui/Modal/Modal.d.ts.map +1 -0
  11. package/dist/components/ui/Pagination/Pagination.d.ts.map +1 -1
  12. package/dist/components/ui/Panel/Panel.d.ts +2 -1
  13. package/dist/components/ui/Panel/Panel.d.ts.map +1 -1
  14. package/dist/components/ui/Panel/usePanelStyles.d.ts +3 -1
  15. package/dist/components/ui/Panel/usePanelStyles.d.ts.map +1 -1
  16. package/dist/components/ui/Popconfirm/Popconfirm.d.ts +4 -0
  17. package/dist/components/ui/Popconfirm/Popconfirm.d.ts.map +1 -0
  18. package/dist/components/ui/Tabs/Tabs.d.ts.map +1 -1
  19. package/dist/components/ui/Typography/Typography.d.ts +3 -2
  20. package/dist/components/ui/Typography/Typography.d.ts.map +1 -1
  21. package/dist/components/ui/Typography/useTypographyStyles.d.ts +1 -0
  22. package/dist/components/ui/Typography/useTypographyStyles.d.ts.map +1 -1
  23. package/dist/components/ui/interfaces.d.ts +16 -54
  24. package/dist/components/ui/interfaces.d.ts.map +1 -1
  25. package/dist/index.d.ts +4 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/main.js +4393 -70
  28. package/dist/main.js.map +1 -1
  29. package/dist/theme/customTheme.d.ts +2 -0
  30. package/dist/theme/customTheme.d.ts.map +1 -1
  31. package/dist/utils/colors.util.d.ts +1 -0
  32. package/dist/utils/colors.util.d.ts.map +1 -1
  33. package/dist/utils/theming.util.d.ts +5 -0
  34. package/dist/utils/theming.util.d.ts.map +1 -0
  35. package/package.json +4 -1
  36. package/dist/theme/antdTheme.d.ts +0 -4
  37. package/dist/theme/antdTheme.d.ts.map +0 -1
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;;;;;;;;;;;;;;;ACVmD;AACnD,iBAAiB;AACjB,2BAA2B;AAC3B,4BAA4B;AAC5B,4BAA4B;AAC5B,4BAA4B;AAC5B,yBAAyB;AACzB,wBAAwB;;AAExB;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACe;AACf;AACA;AACA,mBAAmB,6DAAS;AAC5B;AACA,gCAAgC,OAAO;AACvC,gBAAgB,6DAAS;AACzB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC,iBAAiB,6DAAS;AAC1B;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,6DAAS;AAC1B,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/HiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAjD;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACA;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;;;;;;;ACnGwE;AACxE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,OAAO;AACzB;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB;AACA,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kCAAkC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,OAAO,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,YAAY,OAAO,GAAG,OAAO,GAAG,OAAO;AAC9G;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;;;;;;;;;;;ACphB4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAmB;AAC/C;AACA,cAAc,6DAAa;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;ACRkC;AAClC;AACA,kBAAkB,sDAAO;AACzB;AACA;AACA;AACA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B;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB,iBAAiB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,yEAAyE;AACxF,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA,aAAa;;;;;;;;;;;;ACxSA;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oBAAoB;AACpB,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,wBAAwB,mBAAO,CAAC,yFAAuB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,WAAW,aAAa;AACxB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,6CAA6C;AAC7C,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;;;;;;;;;;;;ACrDP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,eAAe,kCAAkC;AACjD;AACA;AACA;AACA,gCAAgC,aAAa,gCAAgC;AAC7E,mCAAmC,aAAa,8BAA8B;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,2CAA2C;AACtE;AACA;AACA;AACA,2BAA2B,2CAA2C;AACtE;AACA;AACA,aAAa;AACb;AACA,sBAAsB;;;;;;;;;;;;AC3CT;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oCAAoC;AACpC,gBAAgB,mBAAO,CAAC,6DAAS;AACjC,oCAAoC,mBAAO,CAAC,qGAA6B;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;;;;;;;;;;;;AC7CvB;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,+BAA+B;AAC/B,gBAAgB,mBAAO,CAAC,6DAAS;AACjC,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA,WAAW,gBAAgB;AAC3B;AACA;AACA,WAAW,gBAAgB;AAC3B;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,UAAU;AACvB;AACA;AACA;AACA;AACA,qDAAqD;AACrD,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,0EAA0E,6BAA6B;AACvG;AACA;AACA;AACA,+BAA+B;;;;;;;;;;;;ACpDlB;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,yBAAyB,mBAAO,CAAC,+EAAkB;AACnD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,oBAAoB;AACjC;AACA;AACA;AACA,8BAA8B;AAC9B,uCAAuC;AACvC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;;;;;;;;;;;;ACvCT;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oBAAoB;AACpB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,oBAAoB;;;;;;;;;;;;ACvBP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,8BAA8B;AAC9B,uCAAuC;AACvC,uCAAuC;AACvC,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,sBAAsB;;;;;;;;;;;;AC3DT;AACb;AACA;AACA;AACA;AACA,eAAe,oCAAoC;AACnD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,8CAA6C,EAAE,aAAa,EAAC;AAC7D,aAAa,mBAAO,CAAC,qFAAqB;AAC1C,aAAa,mBAAO,CAAC,uEAAc;AACnC,aAAa,mBAAO,CAAC,qFAAqB;AAC1C,aAAa,mBAAO,CAAC,iFAAmB;AACxC,aAAa,mBAAO,CAAC,yEAAe;AACpC,aAAa,mBAAO,CAAC,2EAAgB;AACrC,aAAa,mBAAO,CAAC,6FAA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AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,yFAAyF;AACzF;AACA;AACA,0CAA0C;AAC1C,0CAA0C;AAC1C,2CAA2C;AAC3C;AACA;AACA;AACA,6BAA6B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACA,2DAA2D;AAC3D;AACA;AACA,kDAAkD;AAClD,kDAAkD;AAClD,+CAA+C;AAC/C;AACA;AACA;AACA,8BAA8B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,sFAAsF;AACtF;AACA;AACA,+CAA+C;AAC/C,+CAA+C;AAC/C,iDAAiD;AACjD;AACA;AACA;AACA,8BAA8B,IAAI,UAAU,IAAI,UAAU,IAAI,UAAU,IAAI;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,qFAAqF;AACrF;AACA;AACA,4CAA4C;AAC5C,0CAA0C;AAC1C,2CAA2C;AAC3C;AACA;AACA;AACA,6BAA6B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,uCAAuC;AACvC;AACA;AACA,4BAA4B;AAC5B,qCAAqC;AACrC,6CAA6C;AAC7C,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;;;;;;;;;;;;ACpQP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,qBAAqB;AACrB,qBAAqB,mBAAO,CAAC,uEAAc;AAC3C;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,QAAQ;AACrB;AACA,YAAY,OAAO;AACnB;AACA;AACA,6BAA6B;AAC7B,oCAAoC;AACpC;AACA;AACA;AACA;AACA,qBAAqB;;;;;;;;;;;;ACrBR;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,yBAAyB;AACzB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,WAAW,yEAAyE;AACpF;AACA,aAAa,yBAAyB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,0CAA0C,0BAA0B,cAAc;AACrH;AACA;AACA,mCAAmC,0CAA0C,0BAA0B,cAAc;AACrH;AACA;AACA;AACA;AACA,yBAAyB;;;;;;;;;;;;ACzCZ;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,mBAAmB;AACnB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA,WAAW,aAAa;AACxB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA,kBAAkB;AAClB,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AAClD;AACA;AACA,mBAAmB;;;;;;;;;;;;AC1BN;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,aAAa;AACb,uBAAuB,mBAAO,CAAC,2EAAgB;AAC/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,aAAa,QAAQ;AACrB;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA,aAAa;;;;;;;;;;;;ACjBA;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,YAAY;AACZ,uBAAuB,mBAAO,CAAC,2EAAgB;AAC/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA,YAAY;;;;;;;;;;;;AClBC;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,uBAAuB,GAAG,mBAAmB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kBAAkB,mBAAmB,mBAAmB;AACzD;AACA,uBAAuB;;;;;;;;;;;;ACfV;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB;AAC3R;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,oBAAoB,IAAI,oBAAoB,IAAI,oBAAoB;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,IAAI,oBAAoB,IAAI,oBAAoB;AACvF;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,eAAe,KAAK,EAAE,KAAK,EAAE,KAAK;AAClC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS;AAC7C;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;AAChC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,0BAA0B,IAAI,oBAAoB,KAAK,oBAAoB;AAC7F;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,IAAI,oBAAoB,KAAK,oBAAoB,KAAK,EAAE;AAC/F;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,KAAK,oBAAoB,KAAK,oBAAoB,KAAK,oBAAoB;AAClH;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,cAAc,IAAI,oBAAoB,KAAK,oBAAoB;AACjF;AACA,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;ACvTc;AACxB;AACA;AACA;AACP;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB,GAAG,UAAU;AACtD;AACA;AACO,mCAAmC,gDAAmB;AAC7D;AACA;AACA;AACA,CAAC;AACM;AACP;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP,kBAAkB,6CAAgB;AAClC;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACzFA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,uBAAuB,UAAU;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,UAAU;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,UAAU;AAC/B;AACA;;AAEA;AACA;AACA;;AAEA;AACA,qBAAqB,UAAU;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1ImC;AACY;AACN;AACf;AACe;;AAEzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC,IAAI;;AAEL;;AAEA;;AAEA;AACA;AACA,EAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,kBAAkB,sBAAsB;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,2CAA2C,sBAAsB,sBAAsB,wBAAwB,wBAAwB;AACvI;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,0BAA0B;AAC1B,KAAK,IAAI;AACT;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA,4BAA4B,iBAAiB;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;AACA,SAAS;;AAET;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA,2BAA2B,oDAAY,GAAG;;AAE1C;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA,uCAAuC,QAAQ;AAC/C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,aAAa;AACb;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA,gOAAgO,UAAM;;AAEtO,+KAA+K,UAAM;;AAErL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,oBAAoB,0BAA0B;AAC9C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iDAAiD,SAAS;AAC1D;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;;AAET;;AAEA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA,YAAY,0DAAmB;AAC/B;;AAEA;AACA;AACA;;AAEA;AACA;AACA,SAAS;;AAET;AACA;;AAEA;AACA;AACA,sDAAsD;AACtD,cAAc;AACd;AACA;AACA,SAAS;;AAET,eAAe,0DAAmB;AAClC,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,gDAAgD;AACnG;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,yDAAO;AAC3B;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,8BAA8B,gDAAgD,iGAAiG;AAC/K;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,sCAAsC,wCAAwC,2GAA2G;;AAEzL;AACA,sCAAsC;AACtC,mDAAmD;AACnD,qBAAqB;;AAErB;AACA,sCAAsC;AACtC,mDAAmD;AACnD,qBAAqB;AACrB;;AAEA,8BAA8B,wCAAwC,kDAAkD;AACxH;;AAEA;AACA,+CAA+C;;AAE/C;AACA;;AAEA,+CAA+C,iDAAiD;AAChG,aAAa;;AAEb;AACA;;AAEA;AACA,gBAAgB,IAAqC;AACrD;AACA;AACA,iBAAiB;AACjB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,iBAAiB;AACjB,wKAAwK,GAAG;AAC3K;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA,YAAY,qDAAc;AAC1B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,aAAa;;AAEb;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,sCAAsC;;AAEtC;AACA;AACA;;AAEA,mBAAmB,0DAAmB;AACtC;;AAEA;AACA;;;AAGA;AACA;AACA;AACA;;AAEA;AACA,uBAAuB,QAAQ,OAAO;AACtC,uBAAuB,QAAQ,iBAAiB;AAChD,uBAAuB,QAAQ;AAC/B,uBAAuB,SAAS;AAChC,uBAAuB,SAAS;AAChC,uBAAuB,QAAQ,iBAAiB;AAChD,uBAAuB,OAAO,QAAQ,wDAAwD;AAC9F,uBAAuB,OAAO,QAAQ,qDAAqD;AAC3F,uBAAuB,OAAO,YAAY,uDAAuD;AACjG,uBAAuB,UAAU;AACjC,uBAAuB,OAAO,UAAU,iEAAiE;AACzG,uBAAuB,OAAO,SAAS,sCAAsC,gBAAgB,cAAc,EAAE;AAC7G,uBAAuB,QAAQ;AAC/B,uBAAuB,QAAQ,kBAAkB;AACjD,uBAAuB,QAAQ;AAC/B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK,CAAC,wDAAe;AACrB,cAAc,0DAAgB;AAC9B,wBAAwB,0DAAgB;AACxC,kBAAkB,2DAAmB,EAAE,yDAAiB,CAAC,wDAAc,GAAG,wDAAc;AACxF,sBAAsB,0DAAgB;AACtC,eAAe,wDAAc;AAC7B,iCAAiC,wDAAc;AAC/C,wBAAwB,0DAAgB;AACxC,cAAc,yDAAiB,CAAC,0DAAgB;AAChD,cAAc,yDAAiB,CAAC,0DAAgB;AAChD,kBAAkB,yDAAiB,CAAC,0DAAgB;AACpD,6BAA6B,wDAAc;AAC3C,gBAAgB,yDAAiB,CAAC,0DAAgB;AAClD,eAAe,yDAAiB,CAAC,0DAAgB;AACjD,eAAe,0DAAgB;AAC/B,yBAAyB,0DAAgB;AACzC,uBAAuB,0DAAgB;AACvC,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA,wBAAwB,wDAAc;;AAEtC;AACA;;AAEA,iEAAe,YAAY,EAAC;AACM;;;;;;;;;;;;ACl5BrB;;AAEb,gCAAgC;;AAEhC,YAAY,mBAAO,CAAC,oBAAO;AAC3B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA,QAAQ;AACR;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;;AAEA;;AAEA;AACA;AACA;;AAEA;;;;;;;;;;;;AC5HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;AACb,KAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,+CAA+C,6BAA6B;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,gBAAgB,gDAAgD;AAChE,gBAAgB,aAAa;AAC7B;AACA;AACA,gCAAgC,kCAAkC,OAAO;AACzE;AACA,gGAAgG,SAAS,UAAU,sFAAsF,aAAa,UAAU,UAAU;AAC1O;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAO,CAAC,oBAAO;AA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","sources":["webpack://acacia-ui/webpack/universalModuleDefinition","webpack://acacia-ui/./node_modules/@ant-design/colors/es/generate.js","webpack://acacia-ui/./node_modules/@ant-design/colors/es/index.js","webpack://acacia-ui/./node_modules/@ant-design/colors/es/presets.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/FastColor.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/index.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/types.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://acacia-ui/./node_modules/@fontsource-variable/inter/index.css?e692","webpack://acacia-ui/./node_modules/@fontsource-variable/outfit/index.css?2db3","webpack://acacia-ui/./node_modules/@fontsource-variable/roboto-flex/index.css?a2d1","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-brightness.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-hue.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-saturation.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/apply-greyscale.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/apply-sepia.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/blend-colors.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/blend-multiple-colors.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/calculate-contrast.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/calculate-similarity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/change-opacity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/convert-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/extract-opacity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/generate-multi-stepped-gradient.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/generate-stepped-gradient.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-color-format.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-luminance.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-temperature.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/index.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/invert-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-dark.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-light.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-valid-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/opposite-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/parse-color-numbers.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/random-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/shade.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/tint.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/types.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/utils/convert-utils.js","webpack://acacia-ui/./node_modules/antd/es/config-provider/context.js","webpack://acacia-ui/./node_modules/object-assign/index.js","webpack://acacia-ui/./node_modules/react-fast-compare/index.js","webpack://acacia-ui/./node_modules/react-helmet/es/Helmet.js","webpack://acacia-ui/./node_modules/react-helmet/node_modules/react-side-effect/lib/index.js","webpack://acacia-ui/./node_modules/react/cjs/react-jsx-runtime.development.js","webpack://acacia-ui/./node_modules/react/jsx-runtime.js","webpack://acacia-ui/./node_modules/ts-pattern/dist/index.cjs","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalContent.tsx","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalHeader.tsx","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalLayout.tsx","webpack://acacia-ui/./src/components/layout/utils.ts","webpack://acacia-ui/./src/components/ui/Avatar/Avatar.tsx","webpack://acacia-ui/./src/components/ui/Badge/Badge.tsx","webpack://acacia-ui/./src/components/ui/Badge/Ribbon.tsx","webpack://acacia-ui/./src/components/ui/Breadcrumb/Breadcrumb.tsx","webpack://acacia-ui/./src/components/ui/Button/Button.tsx","webpack://acacia-ui/./src/components/ui/Card/Card.tsx","webpack://acacia-ui/./src/components/ui/Card/useCardStyles.ts","webpack://acacia-ui/./src/components/ui/Checkbox/Checkbox.tsx","webpack://acacia-ui/./src/components/ui/Checkbox/CheckboxGroup.tsx","webpack://acacia-ui/./src/components/ui/ConfigProvider/ConfigProvider.tsx","webpack://acacia-ui/./src/components/ui/ConfigProvider/defaultTheme.ts","webpack://acacia-ui/./src/components/ui/DatePicker/DatePicker.tsx","webpack://acacia-ui/./src/components/ui/DatePicker/RangePicker.tsx","webpack://acacia-ui/./src/components/ui/Dropdown/Dropdown.tsx","webpack://acacia-ui/./src/components/ui/Dropdown/DropdownButton.tsx","webpack://acacia-ui/./src/components/ui/Input/Input.tsx","webpack://acacia-ui/./src/components/ui/Input/OTP.tsx","webpack://acacia-ui/./src/components/ui/Input/Password.tsx","webpack://acacia-ui/./src/components/ui/Input/Search.tsx","webpack://acacia-ui/./src/components/ui/Input/TextArea.tsx","webpack://acacia-ui/./src/components/ui/Input/useInputStyles.ts","webpack://acacia-ui/./src/components/ui/Menu/Menu.tsx","webpack://acacia-ui/./src/components/ui/Pagination/Pagination.tsx","webpack://acacia-ui/./src/components/ui/Panel/Panel.tsx","webpack://acacia-ui/./src/components/ui/Panel/usePanelStyles.tsx","webpack://acacia-ui/./src/components/ui/Radio/Button.tsx","webpack://acacia-ui/./src/components/ui/Radio/Radio.tsx","webpack://acacia-ui/./src/components/ui/Radio/RadioGroup.tsx","webpack://acacia-ui/./src/components/ui/Segmented/Segmented.tsx","webpack://acacia-ui/./src/components/ui/Select/Select.tsx","webpack://acacia-ui/./src/components/ui/Space/Space.tsx","webpack://acacia-ui/./src/components/ui/Switch/Switch.tsx","webpack://acacia-ui/./src/components/ui/Tabs/Tabs.tsx","webpack://acacia-ui/./src/components/ui/Tag/Tag.tsx","webpack://acacia-ui/./src/components/ui/TimePicker/TimePicker.tsx","webpack://acacia-ui/./src/components/ui/TimePicker/TimeRangePicker.tsx","webpack://acacia-ui/./src/components/ui/Typography/Typography.tsx","webpack://acacia-ui/./src/components/ui/Typography/useTypographyStyles.ts","webpack://acacia-ui/./src/components/ui/interfaces.tsx","webpack://acacia-ui/./src/hooks/useAcaciaColors.tsx","webpack://acacia-ui/./src/hooks/useAcaciaConfig.tsx","webpack://acacia-ui/./src/hooks/useFoucHandler.tsx","webpack://acacia-ui/./src/hooks/useScreenSize.tsx","webpack://acacia-ui/./src/index.tsx","webpack://acacia-ui/./src/theme/customTheme.ts","webpack://acacia-ui/./src/theme/defaultLogo.tsx","webpack://acacia-ui/./src/theme/typographyUtil.ts","webpack://acacia-ui/./src/tokens/useAcaciaToken.tsx","webpack://acacia-ui/./src/utils/colors.util.ts","webpack://acacia-ui/./src/utils/parseBackgroundColors.ts","webpack://acacia-ui/external umd \"antd\"","webpack://acacia-ui/external umd \"antd-style\"","webpack://acacia-ui/external umd \"prop-types\"","webpack://acacia-ui/external umd \"react\"","webpack://acacia-ui/webpack/bootstrap","webpack://acacia-ui/webpack/runtime/compat get default export","webpack://acacia-ui/webpack/runtime/define property getters","webpack://acacia-ui/webpack/runtime/hasOwnProperty shorthand","webpack://acacia-ui/webpack/runtime/make namespace object","webpack://acacia-ui/webpack/before-startup","webpack://acacia-ui/webpack/startup","webpack://acacia-ui/webpack/after-startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"antd\"), require(\"antd-style\"), require(\"prop-types\"), require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"antd\", \"antd-style\", \"prop-types\", \"react\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"antd\"), require(\"antd-style\"), require(\"prop-types\"), require(\"react\")) : factory(root[\"antd\"], root[\"antd-style\"], root[\"prop-types\"], root[\"react\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(this, (__WEBPACK_EXTERNAL_MODULE_antd__, __WEBPACK_EXTERNAL_MODULE_antd_style__, __WEBPACK_EXTERNAL_MODULE_prop_types__, __WEBPACK_EXTERNAL_MODULE_react__) => {\nreturn ","import { FastColor } from '@ant-design/fast-color';\nvar hueStep = 2; // 色相阶梯\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\nvar lightColorCount = 5; // 浅色数量,主色上\nvar darkColorCount = 4; // 深色数量,主色下\n\n// 暗色主题颜色映射关系表\nvar darkColorMap = [{\n index: 7,\n amount: 15\n}, {\n index: 6,\n amount: 25\n}, {\n index: 5,\n amount: 30\n}, {\n index: 5,\n amount: 45\n}, {\n index: 5,\n amount: 65\n}, {\n index: 5,\n amount: 85\n}, {\n index: 4,\n amount: 90\n}, {\n index: 3,\n amount: 95\n}, {\n index: 2,\n amount: 97\n}, {\n index: 1,\n amount: 98\n}];\nfunction getHue(hsv, i, light) {\n var hue;\n // 根据色相不同,色相转向不同\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n return hue;\n}\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n var saturation;\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n }\n // 边界值修正\n if (saturation > 1) {\n saturation = 1;\n }\n // 第一格的 s 限制在 0.06-0.1 之间\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n return Math.round(saturation * 100) / 100;\n}\nfunction getValue(hsv, i, light) {\n var value;\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n // Clamp value between 0 and 1\n value = Math.max(0, Math.min(1, value));\n return Math.round(value * 100) / 100;\n}\nexport default function generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = new FastColor(color);\n var hsv = pColor.toHsv();\n for (var i = lightColorCount; i > 0; i -= 1) {\n var c = new FastColor({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n });\n patterns.push(c);\n }\n patterns.push(pColor);\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _c = new FastColor({\n h: getHue(hsv, _i),\n s: getSaturation(hsv, _i),\n v: getValue(hsv, _i)\n });\n patterns.push(_c);\n }\n\n // dark theme patterns\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref) {\n var index = _ref.index,\n amount = _ref.amount;\n return new FastColor(opts.backgroundColor || '#141414').mix(patterns[index], amount).toHexString();\n });\n }\n return patterns.map(function (c) {\n return c.toHexString();\n });\n}","export { default as generate } from \"./generate\";\nexport * from \"./presets\";","// Generated by script. Do NOT modify!\n\nexport var presetPrimaryColors = {\n \"red\": \"#F5222D\",\n \"volcano\": \"#FA541C\",\n \"orange\": \"#FA8C16\",\n \"gold\": \"#FAAD14\",\n \"yellow\": \"#FADB14\",\n \"lime\": \"#A0D911\",\n \"green\": \"#52C41A\",\n \"cyan\": \"#13C2C2\",\n \"blue\": \"#1677FF\",\n \"geekblue\": \"#2F54EB\",\n \"purple\": \"#722ED1\",\n \"magenta\": \"#EB2F96\",\n \"grey\": \"#666666\"\n};\nexport var red = [\"#fff1f0\", \"#ffccc7\", \"#ffa39e\", \"#ff7875\", \"#ff4d4f\", \"#f5222d\", \"#cf1322\", \"#a8071a\", \"#820014\", \"#5c0011\"];\nred.primary = red[5];\nexport var volcano = [\"#fff2e8\", \"#ffd8bf\", \"#ffbb96\", \"#ff9c6e\", \"#ff7a45\", \"#fa541c\", \"#d4380d\", \"#ad2102\", \"#871400\", \"#610b00\"];\nvolcano.primary = volcano[5];\nexport var orange = [\"#fff7e6\", \"#ffe7ba\", \"#ffd591\", \"#ffc069\", \"#ffa940\", \"#fa8c16\", \"#d46b08\", \"#ad4e00\", \"#873800\", \"#612500\"];\norange.primary = orange[5];\nexport var gold = [\"#fffbe6\", \"#fff1b8\", \"#ffe58f\", \"#ffd666\", \"#ffc53d\", \"#faad14\", \"#d48806\", \"#ad6800\", \"#874d00\", \"#613400\"];\ngold.primary = gold[5];\nexport var yellow = [\"#feffe6\", \"#ffffb8\", \"#fffb8f\", \"#fff566\", \"#ffec3d\", \"#fadb14\", \"#d4b106\", \"#ad8b00\", \"#876800\", \"#614700\"];\nyellow.primary = yellow[5];\nexport var lime = [\"#fcffe6\", \"#f4ffb8\", \"#eaff8f\", \"#d3f261\", \"#bae637\", \"#a0d911\", \"#7cb305\", \"#5b8c00\", \"#3f6600\", \"#254000\"];\nlime.primary = lime[5];\nexport var green = [\"#f6ffed\", \"#d9f7be\", \"#b7eb8f\", \"#95de64\", \"#73d13d\", \"#52c41a\", \"#389e0d\", \"#237804\", \"#135200\", \"#092b00\"];\ngreen.primary = green[5];\nexport var cyan = [\"#e6fffb\", \"#b5f5ec\", \"#87e8de\", \"#5cdbd3\", \"#36cfc9\", \"#13c2c2\", \"#08979c\", \"#006d75\", \"#00474f\", \"#002329\"];\ncyan.primary = cyan[5];\nexport var blue = [\"#e6f4ff\", \"#bae0ff\", \"#91caff\", \"#69b1ff\", \"#4096ff\", \"#1677ff\", \"#0958d9\", \"#003eb3\", \"#002c8c\", \"#001d66\"];\nblue.primary = blue[5];\nexport var geekblue = [\"#f0f5ff\", \"#d6e4ff\", \"#adc6ff\", \"#85a5ff\", \"#597ef7\", \"#2f54eb\", \"#1d39c4\", \"#10239e\", \"#061178\", \"#030852\"];\ngeekblue.primary = geekblue[5];\nexport var purple = [\"#f9f0ff\", \"#efdbff\", \"#d3adf7\", \"#b37feb\", \"#9254de\", \"#722ed1\", \"#531dab\", \"#391085\", \"#22075e\", \"#120338\"];\npurple.primary = purple[5];\nexport var magenta = [\"#fff0f6\", \"#ffd6e7\", \"#ffadd2\", \"#ff85c0\", \"#f759ab\", \"#eb2f96\", \"#c41d7f\", \"#9e1068\", \"#780650\", \"#520339\"];\nmagenta.primary = magenta[5];\nexport var grey = [\"#a6a6a6\", \"#999999\", \"#8c8c8c\", \"#808080\", \"#737373\", \"#666666\", \"#404040\", \"#1a1a1a\", \"#000000\", \"#000000\"];\ngrey.primary = grey[5];\nexport var gray = grey;\nexport var presetPalettes = {\n red: red,\n volcano: volcano,\n orange: orange,\n gold: gold,\n yellow: yellow,\n lime: lime,\n green: green,\n cyan: cyan,\n blue: blue,\n geekblue: geekblue,\n purple: purple,\n magenta: magenta,\n grey: grey\n};\nexport var redDark = [\"#2a1215\", \"#431418\", \"#58181c\", \"#791a1f\", \"#a61d24\", \"#d32029\", \"#e84749\", \"#f37370\", \"#f89f9a\", \"#fac8c3\"];\nredDark.primary = redDark[5];\nexport var volcanoDark = [\"#2b1611\", \"#441d12\", \"#592716\", \"#7c3118\", \"#aa3e19\", \"#d84a1b\", \"#e87040\", \"#f3956a\", \"#f8b692\", \"#fad4bc\"];\nvolcanoDark.primary = volcanoDark[5];\nexport var orangeDark = [\"#2b1d11\", \"#442a11\", \"#593815\", \"#7c4a15\", \"#aa6215\", \"#d87a16\", \"#e89a3c\", \"#f3b765\", \"#f8cf8d\", \"#fae3b7\"];\norangeDark.primary = orangeDark[5];\nexport var goldDark = [\"#2b2111\", \"#443111\", \"#594214\", \"#7c5914\", \"#aa7714\", \"#d89614\", \"#e8b339\", \"#f3cc62\", \"#f8df8b\", \"#faedb5\"];\ngoldDark.primary = goldDark[5];\nexport var yellowDark = [\"#2b2611\", \"#443b11\", \"#595014\", \"#7c6e14\", \"#aa9514\", \"#d8bd14\", \"#e8d639\", \"#f3ea62\", \"#f8f48b\", \"#fafab5\"];\nyellowDark.primary = yellowDark[5];\nexport var limeDark = [\"#1f2611\", \"#2e3c10\", \"#3e4f13\", \"#536d13\", \"#6f9412\", \"#8bbb11\", \"#a9d134\", \"#c9e75d\", \"#e4f88b\", \"#f0fab5\"];\nlimeDark.primary = limeDark[5];\nexport var greenDark = [\"#162312\", \"#1d3712\", \"#274916\", \"#306317\", \"#3c8618\", \"#49aa19\", \"#6abe39\", \"#8fd460\", \"#b2e58b\", \"#d5f2bb\"];\ngreenDark.primary = greenDark[5];\nexport var cyanDark = [\"#112123\", \"#113536\", \"#144848\", \"#146262\", \"#138585\", \"#13a8a8\", \"#33bcb7\", \"#58d1c9\", \"#84e2d8\", \"#b2f1e8\"];\ncyanDark.primary = cyanDark[5];\nexport var blueDark = [\"#111a2c\", \"#112545\", \"#15325b\", \"#15417e\", \"#1554ad\", \"#1668dc\", \"#3c89e8\", \"#65a9f3\", \"#8dc5f8\", \"#b7dcfa\"];\nblueDark.primary = blueDark[5];\nexport var geekblueDark = [\"#131629\", \"#161d40\", \"#1c2755\", \"#203175\", \"#263ea0\", \"#2b4acb\", \"#5273e0\", \"#7f9ef3\", \"#a8c1f8\", \"#d2e0fa\"];\ngeekblueDark.primary = geekblueDark[5];\nexport var purpleDark = [\"#1a1325\", \"#24163a\", \"#301c4d\", \"#3e2069\", \"#51258f\", \"#642ab5\", \"#854eca\", \"#ab7ae0\", \"#cda8f0\", \"#ebd7fa\"];\npurpleDark.primary = purpleDark[5];\nexport var magentaDark = [\"#291321\", \"#40162f\", \"#551c3b\", \"#75204f\", \"#a02669\", \"#cb2b83\", \"#e0529c\", \"#f37fb7\", \"#f8a8cc\", \"#fad2e3\"];\nmagentaDark.primary = magentaDark[5];\nexport var greyDark = [\"#151515\", \"#1f1f1f\", \"#2d2d2d\", \"#393939\", \"#494949\", \"#5a5a5a\", \"#6a6a6a\", \"#7b7b7b\", \"#888888\", \"#969696\"];\ngreyDark.primary = greyDark[5];\nexport var presetDarkPalettes = {\n red: redDark,\n volcano: volcanoDark,\n orange: orangeDark,\n gold: goldDark,\n yellow: yellowDark,\n lime: limeDark,\n green: greenDark,\n cyan: cyanDark,\n blue: blueDark,\n geekblue: geekblueDark,\n purple: purpleDark,\n magenta: magentaDark,\n grey: greyDark\n};","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nconst round = Math.round;\n\n/**\n * Support format, alpha unit will check the % mark:\n * - rgba(102, 204, 255, .5) -> [102, 204, 255, 0.5]\n * - rgb(102 204 255 / .5) -> [102, 204, 255, 0.5]\n * - rgb(100%, 50%, 0% / 50%) -> [255, 128, 0, 0.5]\n * - hsl(270, 60, 40, .5) -> [270, 60, 40, 0.5]\n * - hsl(270deg 60% 40% / 50%) -> [270, 60, 40, 0.5]\n *\n * When `base` is provided, the percentage value will be divided by `base`.\n */\nfunction splitColorStr(str, parseNum) {\n const match = str\n // Remove str before `(`\n .replace(/^[^(]*\\((.*)/, '$1')\n // Remove str after `)`\n .replace(/\\).*/, '').match(/\\d*\\.?\\d+%?/g) || [];\n const numList = match.map(item => parseFloat(item));\n for (let i = 0; i < 3; i += 1) {\n numList[i] = parseNum(numList[i] || 0, match[i] || '', i);\n }\n\n // For alpha. 50% should be 0.5\n if (match[3]) {\n numList[3] = match[3].includes('%') ? numList[3] / 100 : numList[3];\n } else {\n // By default, alpha is 1\n numList[3] = 1;\n }\n return numList;\n}\nconst parseHSVorHSL = (num, _, index) => index === 0 ? num : num / 100;\n\n/** round and limit number to integer between 0-255 */\nfunction limitRange(value, max) {\n const mergedMax = max || 255;\n if (value > mergedMax) {\n return mergedMax;\n }\n if (value < 0) {\n return 0;\n }\n return value;\n}\nexport class FastColor {\n constructor(input) {\n /**\n * All FastColor objects are valid. So isValid is always true. This property is kept to be compatible with TinyColor.\n */\n _defineProperty(this, \"isValid\", true);\n /**\n * Red, R in RGB\n */\n _defineProperty(this, \"r\", 0);\n /**\n * Green, G in RGB\n */\n _defineProperty(this, \"g\", 0);\n /**\n * Blue, B in RGB\n */\n _defineProperty(this, \"b\", 0);\n /**\n * Alpha/Opacity, A in RGBA/HSLA\n */\n _defineProperty(this, \"a\", 1);\n // HSV privates\n _defineProperty(this, \"_h\", void 0);\n _defineProperty(this, \"_s\", void 0);\n _defineProperty(this, \"_l\", void 0);\n _defineProperty(this, \"_v\", void 0);\n // intermediate variables to calculate HSL/HSV\n _defineProperty(this, \"_max\", void 0);\n _defineProperty(this, \"_min\", void 0);\n _defineProperty(this, \"_brightness\", void 0);\n /**\n * Always check 3 char in the object to determine the format.\n * We not use function in check to save bundle size.\n * e.g. 'rgb' -> { r: 0, g: 0, b: 0 }.\n */\n function matchFormat(str) {\n return str[0] in input && str[1] in input && str[2] in input;\n }\n if (!input) {\n // Do nothing since already initialized\n } else if (typeof input === 'string') {\n const trimStr = input.trim();\n function matchPrefix(prefix) {\n return trimStr.startsWith(prefix);\n }\n if (/^#?[A-F\\d]{3,8}$/i.test(trimStr)) {\n this.fromHexString(trimStr);\n } else if (matchPrefix('rgb')) {\n this.fromRgbString(trimStr);\n } else if (matchPrefix('hsl')) {\n this.fromHslString(trimStr);\n } else if (matchPrefix('hsv') || matchPrefix('hsb')) {\n this.fromHsvString(trimStr);\n }\n } else if (input instanceof FastColor) {\n this.r = input.r;\n this.g = input.g;\n this.b = input.b;\n this.a = input.a;\n this._h = input._h;\n this._s = input._s;\n this._l = input._l;\n this._v = input._v;\n } else if (matchFormat('rgb')) {\n this.r = limitRange(input.r);\n this.g = limitRange(input.g);\n this.b = limitRange(input.b);\n this.a = typeof input.a === 'number' ? limitRange(input.a, 1) : 1;\n } else if (matchFormat('hsl')) {\n this.fromHsl(input);\n } else if (matchFormat('hsv')) {\n this.fromHsv(input);\n } else {\n throw new Error('@ant-design/fast-color: unsupported input ' + JSON.stringify(input));\n }\n }\n\n // ======================= Setter =======================\n\n setR(value) {\n return this._sc('r', value);\n }\n setG(value) {\n return this._sc('g', value);\n }\n setB(value) {\n return this._sc('b', value);\n }\n setA(value) {\n return this._sc('a', value, 1);\n }\n setHue(value) {\n const hsv = this.toHsv();\n hsv.h = value;\n return this._c(hsv);\n }\n\n // ======================= Getter =======================\n /**\n * Returns the perceived luminance of a color, from 0-1.\n * @see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n */\n getLuminance() {\n function adjustGamma(raw) {\n const val = raw / 255;\n return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);\n }\n const R = adjustGamma(this.r);\n const G = adjustGamma(this.g);\n const B = adjustGamma(this.b);\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n }\n getHue() {\n if (typeof this._h === 'undefined') {\n const delta = this.getMax() - this.getMin();\n if (delta === 0) {\n this._h = 0;\n } else {\n this._h = round(60 * (this.r === this.getMax() ? (this.g - this.b) / delta + (this.g < this.b ? 6 : 0) : this.g === this.getMax() ? (this.b - this.r) / delta + 2 : (this.r - this.g) / delta + 4));\n }\n }\n return this._h;\n }\n getSaturation() {\n if (typeof this._s === 'undefined') {\n const delta = this.getMax() - this.getMin();\n if (delta === 0) {\n this._s = 0;\n } else {\n this._s = delta / this.getMax();\n }\n }\n return this._s;\n }\n getLightness() {\n if (typeof this._l === 'undefined') {\n this._l = (this.getMax() + this.getMin()) / 510;\n }\n return this._l;\n }\n getValue() {\n if (typeof this._v === 'undefined') {\n this._v = this.getMax() / 255;\n }\n return this._v;\n }\n\n /**\n * Returns the perceived brightness of the color, from 0-255.\n * Note: this is not the b of HSB\n * @see http://www.w3.org/TR/AERT#color-contrast\n */\n getBrightness() {\n if (typeof this._brightness === 'undefined') {\n this._brightness = (this.r * 299 + this.g * 587 + this.b * 114) / 1000;\n }\n return this._brightness;\n }\n\n // ======================== Func ========================\n\n darken(amount = 10) {\n const h = this.getHue();\n const s = this.getSaturation();\n let l = this.getLightness() - amount / 100;\n if (l < 0) {\n l = 0;\n }\n return this._c({\n h,\n s,\n l,\n a: this.a\n });\n }\n lighten(amount = 10) {\n const h = this.getHue();\n const s = this.getSaturation();\n let l = this.getLightness() + amount / 100;\n if (l > 1) {\n l = 1;\n }\n return this._c({\n h,\n s,\n l,\n a: this.a\n });\n }\n\n /**\n * Mix the current color a given amount with another color, from 0 to 100.\n * 0 means no mixing (return current color).\n */\n mix(input, amount = 50) {\n const color = this._c(input);\n const p = amount / 100;\n const calc = key => (color[key] - this[key]) * p + this[key];\n const rgba = {\n r: round(calc('r')),\n g: round(calc('g')),\n b: round(calc('b')),\n a: round(calc('a') * 100) / 100\n };\n return this._c(rgba);\n }\n\n /**\n * Mix the color with pure white, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return white.\n */\n tint(amount = 10) {\n return this.mix({\n r: 255,\n g: 255,\n b: 255,\n a: 1\n }, amount);\n }\n\n /**\n * Mix the color with pure black, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return black.\n */\n shade(amount = 10) {\n return this.mix({\n r: 0,\n g: 0,\n b: 0,\n a: 1\n }, amount);\n }\n onBackground(background) {\n const bg = this._c(background);\n const alpha = this.a + bg.a * (1 - this.a);\n const calc = key => {\n return round((this[key] * this.a + bg[key] * bg.a * (1 - this.a)) / alpha);\n };\n return this._c({\n r: calc('r'),\n g: calc('g'),\n b: calc('b'),\n a: alpha\n });\n }\n\n // ======================= Status =======================\n isDark() {\n return this.getBrightness() < 128;\n }\n isLight() {\n return this.getBrightness() >= 128;\n }\n\n // ======================== MISC ========================\n equals(other) {\n return this.r === other.r && this.g === other.g && this.b === other.b && this.a === other.a;\n }\n clone() {\n return this._c(this);\n }\n\n // ======================= Format =======================\n toHexString() {\n let hex = '#';\n const rHex = (this.r || 0).toString(16);\n hex += rHex.length === 2 ? rHex : '0' + rHex;\n const gHex = (this.g || 0).toString(16);\n hex += gHex.length === 2 ? gHex : '0' + gHex;\n const bHex = (this.b || 0).toString(16);\n hex += bHex.length === 2 ? bHex : '0' + bHex;\n if (typeof this.a === 'number' && this.a >= 0 && this.a < 1) {\n const aHex = round(this.a * 255).toString(16);\n hex += aHex.length === 2 ? aHex : '0' + aHex;\n }\n return hex;\n }\n\n /** CSS support color pattern */\n toHsl() {\n return {\n h: this.getHue(),\n s: this.getSaturation(),\n l: this.getLightness(),\n a: this.a\n };\n }\n\n /** CSS support color pattern */\n toHslString() {\n const h = this.getHue();\n const s = round(this.getSaturation() * 100);\n const l = round(this.getLightness() * 100);\n return this.a !== 1 ? `hsla(${h},${s}%,${l}%,${this.a})` : `hsl(${h},${s}%,${l}%)`;\n }\n\n /** Same as toHsb */\n toHsv() {\n return {\n h: this.getHue(),\n s: this.getSaturation(),\n v: this.getValue(),\n a: this.a\n };\n }\n toRgb() {\n return {\n r: this.r,\n g: this.g,\n b: this.b,\n a: this.a\n };\n }\n toRgbString() {\n return this.a !== 1 ? `rgba(${this.r},${this.g},${this.b},${this.a})` : `rgb(${this.r},${this.g},${this.b})`;\n }\n toString() {\n return this.toRgbString();\n }\n\n // ====================== Privates ======================\n /** Return a new FastColor object with one channel changed */\n _sc(rgb, value, max) {\n const clone = this.clone();\n clone[rgb] = limitRange(value, max);\n return clone;\n }\n _c(input) {\n return new this.constructor(input);\n }\n getMax() {\n if (typeof this._max === 'undefined') {\n this._max = Math.max(this.r, this.g, this.b);\n }\n return this._max;\n }\n getMin() {\n if (typeof this._min === 'undefined') {\n this._min = Math.min(this.r, this.g, this.b);\n }\n return this._min;\n }\n fromHexString(trimStr) {\n const withoutPrefix = trimStr.replace('#', '');\n function connectNum(index1, index2) {\n return parseInt(withoutPrefix[index1] + withoutPrefix[index2 || index1], 16);\n }\n if (withoutPrefix.length < 6) {\n // #rgb or #rgba\n this.r = connectNum(0);\n this.g = connectNum(1);\n this.b = connectNum(2);\n this.a = withoutPrefix[3] ? connectNum(3) / 255 : 1;\n } else {\n // #rrggbb or #rrggbbaa\n this.r = connectNum(0, 1);\n this.g = connectNum(2, 3);\n this.b = connectNum(4, 5);\n this.a = withoutPrefix[6] ? connectNum(6, 7) / 255 : 1;\n }\n }\n fromHsl({\n h,\n s,\n l,\n a\n }) {\n this._h = h % 360;\n this._s = s;\n this._l = l;\n this.a = typeof a === 'number' ? a : 1;\n if (s <= 0) {\n const rgb = round(l * 255);\n this.r = rgb;\n this.g = rgb;\n this.b = rgb;\n }\n let r = 0,\n g = 0,\n b = 0;\n const huePrime = h / 60;\n const chroma = (1 - Math.abs(2 * l - 1)) * s;\n const secondComponent = chroma * (1 - Math.abs(huePrime % 2 - 1));\n if (huePrime >= 0 && huePrime < 1) {\n r = chroma;\n g = secondComponent;\n } else if (huePrime >= 1 && huePrime < 2) {\n r = secondComponent;\n g = chroma;\n } else if (huePrime >= 2 && huePrime < 3) {\n g = chroma;\n b = secondComponent;\n } else if (huePrime >= 3 && huePrime < 4) {\n g = secondComponent;\n b = chroma;\n } else if (huePrime >= 4 && huePrime < 5) {\n r = secondComponent;\n b = chroma;\n } else if (huePrime >= 5 && huePrime < 6) {\n r = chroma;\n b = secondComponent;\n }\n const lightnessModification = l - chroma / 2;\n this.r = round((r + lightnessModification) * 255);\n this.g = round((g + lightnessModification) * 255);\n this.b = round((b + lightnessModification) * 255);\n }\n fromHsv({\n h,\n s,\n v,\n a\n }) {\n this._h = h % 360;\n this._s = s;\n this._v = v;\n this.a = typeof a === 'number' ? a : 1;\n const vv = round(v * 255);\n this.r = vv;\n this.g = vv;\n this.b = vv;\n if (s <= 0) {\n return;\n }\n const hh = h / 60;\n const i = Math.floor(hh);\n const ff = hh - i;\n const p = round(v * (1.0 - s) * 255);\n const q = round(v * (1.0 - s * ff) * 255);\n const t = round(v * (1.0 - s * (1.0 - ff)) * 255);\n switch (i) {\n case 0:\n this.g = t;\n this.b = p;\n break;\n case 1:\n this.r = q;\n this.b = p;\n break;\n case 2:\n this.r = p;\n this.b = t;\n break;\n case 3:\n this.r = p;\n this.g = q;\n break;\n case 4:\n this.r = t;\n this.g = p;\n break;\n case 5:\n default:\n this.g = p;\n this.b = q;\n break;\n }\n }\n fromHsvString(trimStr) {\n const cells = splitColorStr(trimStr, parseHSVorHSL);\n this.fromHsv({\n h: cells[0],\n s: cells[1],\n v: cells[2],\n a: cells[3]\n });\n }\n fromHslString(trimStr) {\n const cells = splitColorStr(trimStr, parseHSVorHSL);\n this.fromHsl({\n h: cells[0],\n s: cells[1],\n l: cells[2],\n a: cells[3]\n });\n }\n fromRgbString(trimStr) {\n const cells = splitColorStr(trimStr, (num, txt) =>\n // Convert percentage to number. e.g. 50% -> 128\n txt.includes('%') ? round(num / 100 * 255) : num);\n this.r = cells[0];\n this.g = cells[1];\n this.b = cells[2];\n this.a = cells[3];\n }\n}","export * from \"./FastColor\";\nexport * from \"./types\";","export {};","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustBrightness = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the brightness of a given color by a specified amount.\n *\n * @param {string} color - The color to adjust, in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the brightness by. This value can be positive (to increase brightness)\n * or negative (to decrease brightness). The adjusted lightness is kept within the 0-100 range.\n *\n * @returns {string} - The adjusted color, converted back to its original format.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustBrightness('#00FF00', -20); // makes a bright green color darker\n * adjustBrightness('rgb(255, 0, 0)', 10); // makes a red color brighter\n * adjustBrightness('invalidColor', 10); // uses white as fallback and adjusts its brightness\n */\nconst adjustBrightness = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n l = Math.max(0, Math.min(100, l + amount));\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustBrightness = adjustBrightness;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustHue = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the hue of a given color by a specified amount.\n *\n * @param {string} color - The color to be adjusted, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the hue by. This value can be positive (to increase hue)\n * or negative (to decrease hue). The hue value is constrained between 0 and 360 degrees.\n *\n * @returns {string} - The color with adjusted hue, in the same format as the input color.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustHue('#00FF00', 30); // changes the hue of a bright green color.\n * adjustHue('rgb(255, 0, 0)', -45); // changes the hue of a red color.\n * adjustHue('invalidColor', 60); // uses white as fallback and adjusts its hue.\n */\nconst adjustHue = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n h = (h + amount) % 360;\n if (h < 0)\n h += 360;\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustHue = adjustHue;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustSaturation = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the saturation of a given color by a specified amount.\n *\n * @param {string} color - The color to be adjusted, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the saturation by. This value can be positive (to increase saturation)\n * or negative (to decrease saturation). The final saturation value is constrained\n * between 0% (completely desaturated) and 100% (fully saturated).\n *\n * @returns {string} - The color with adjusted saturation, in the same format as the input color.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustSaturation('#00FF00', -20); // decreases the saturation of a bright green color, making it more muted.\n * adjustSaturation('rgb(255, 0, 0)', 20); // increases the saturation of a red color, making it more vivid.\n * adjustSaturation('invalidColor', 10); // uses white as fallback and adjusts its saturation.\n */\nconst adjustSaturation = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n s = Math.max(0, Math.min(100, s + amount));\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustSaturation = adjustSaturation;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.applyGreyscale = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color to its grayscale equivalent using the luminosity method.\n *\n * @param {string} color - The color in any supported format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} The grayscale equivalent of the color represented in the same format as the input.\n * If the input color format was invalid, returns the grayscale version of white in the same format.\n *\n * Example usage:\n * applyGreyscale('#ff6347'); // Returns a grayscale version of the tomato color.\n * applyGreyscale('invalidColor'); // Uses white as fallback and returns its grayscale version.\n */\nconst applyGreyscale = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const rgbColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB);\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number);\n const grey = Math.round(0.2126 * r + 0.7152 * g + 0.0722 * b);\n return (0, convert_color_1.convertColor)(`rgb(${grey}, ${grey}, ${grey})`, targetFormat);\n};\nexports.applyGreyscale = applyGreyscale;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.applySepia = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Applies a sepia tone effect to the specified color.\n * The sepia effect is achieved by adjusting the Red, Green, and Blue components\n * of the color according to a set formula that simulates the look of sepia-toned photographs.\n *\n * @param {string} color - The color to which the sepia effect will be applied, specified as a string\n * in a recognized format (e.g., HEX, RGB, named colors).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} - The sepia-toned color, represented in the same format as the input.\n * If the input color format was invalid, returns the sepia-toned white color in the same format.\n *\n * Example usage:\n * applySepia('#826C34'); // returns a sepia-toned version of the original color.\n * applySepia('invalidColor'); // uses white as fallback and returns its sepia-toned version.\n */\nconst applySepia = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB).match(/\\d+/g).map(Number);\n r = Math.round(Math.min(255, (r * 0.393) + (g * 0.769) + (b * 0.189)));\n g = Math.round(Math.min(255, (r * 0.349) + (g * 0.686) + (b * 0.168)));\n b = Math.round(Math.min(255, (r * 0.272) + (g * 0.534) + (b * 0.131)));\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, targetFormat);\n};\nexports.applySepia = applySepia;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.blendColors = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Blends two colors together based on a specified weight, producing a new color.\n * The weight determines the contribution of each color to the resulting blend.\n *\n * @param {Color | string} fromColor - The object of Color class or the starting color string in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {Color | string} toColor - The object of Color class or the ending color string in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} weight - A decimal number between 0 and 1 representing the weight of the `toColor` in the blend.\n * A weight of 0 will result in the `fromColor`, a weight of 1 will result in the `toColor`,\n * and a weight of 0.5 will produce an evenly blended color.\n *\n * @returns {string} - The blended color in the same format as the `fromColor`.\n * If either input color format was invalid, white will be used as fallback for that color.\n *\n * Example usage:\n * blendColors('#FF0000', '#0000FF', 0.5); // returns a color string representing the color halfway between red and blue.\n * blendColors('invalidColor', '#0000FF', 0.5); // uses white as fallback for the first color.\n */\nconst blendColors = (fromColor, toColor, weight) => {\n if (typeof fromColor === 'string') {\n fromColor = new color_1.Color(fromColor);\n }\n if (typeof toColor === 'string') {\n toColor = new color_1.Color(toColor);\n }\n if (weight < 0 || weight > 1) {\n throw new Error('Invalid weight value');\n }\n // Use white as fallback if color format is invalid\n const fromColorFormat = fromColor.format() || types_1.ColorFormat.HEX;\n const fromRGB = fromColor.rgb().match(/\\d+/g).map(Number);\n const toRGB = toColor.rgb().match(/\\d+/g).map(Number);\n const [r, g, b] = [0, 1, 2].map((i) => Math.round(fromRGB[i] * (1 - weight) + toRGB[i] * weight));\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, fromColorFormat);\n};\nexports.blendColors = blendColors;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.blendMultipleColors = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Blends multiple colors together based on their specified weights, producing a new color.\n * Each color's weight determines its contribution to the resulting blend.\n *\n * @param {ColorWeight[]} colorWeights - An array of objects, each containing a `color` which is the object of Color class or string in a recognized color format and a `weight` number.\n * The weights determine the contribution of each color to the final blend.\n *\n * @returns {string} - The blended color in the same format as the first color in the array.\n *\n * @throws {Error} - Throws an error if any color is in an invalid format or if weights are invalid.\n *\n * Example usage:\n * blendMultipleColors([{ color: '#FF0000', weight: 1 }, { color: '#0000FF', weight: 2 }]); // returns a color string blended from red and blue with blue having twice the weight.\n */\nconst blendMultipleColors = (colorWeights) => {\n if (colorWeights.length === 0) {\n throw new Error('The array of color weights must not be empty.');\n }\n let colors = colorWeights\n .map(({ color, weight }) => ({ color: typeof color === 'string' ? new color_1.Color(color) : color, weight }));\n // Use white as fallback if the first color format is invalid\n const firstColorFormat = colors[0].color.format() || types_1.ColorFormat.HEX;\n const totalWeight = colors.reduce((sum, cw) => sum + cw.weight, 0);\n if (totalWeight <= 0) {\n throw new Error('Total weight must be greater than zero.');\n }\n const blendedRGB = [0, 0, 0];\n colors.forEach(({ color, weight }) => {\n const rgb = color.rgb().match(/\\d+/g).map(Number);\n const normalizedWeight = weight / totalWeight;\n [0, 1, 2].forEach((i) => {\n blendedRGB[i] += rgb[i] * normalizedWeight;\n });\n });\n const [r, g, b] = blendedRGB.map(Math.round);\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, firstColorFormat);\n};\nexports.blendMultipleColors = blendMultipleColors;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.calculateContrast = void 0;\nconst color_1 = require(\"./color\");\n/**\n * Calculates the contrast ratio between two colors.\n *\n * @param {Color | string} color1 - The object of Color class or the first color string in a recognized color format.\n * @param {Color | string} color2 - The object of Color class or the second color string in a recognized color format.\n *\n * @returns {number} The contrast ratio between the two colors.\n *\n * Example usage:\n * calculateContrast('#ffffff', '#000000'); // Returns 21 (maximum contrast)\n */\nconst calculateContrast = (color1, color2) => {\n if (typeof color1 === 'string') {\n color1 = new color_1.Color(color1);\n }\n if (typeof color2 === 'string') {\n color2 = new color_1.Color(color2);\n }\n const luminance1 = color1.luminance();\n const luminance2 = color2.luminance();\n const l1 = Math.max(luminance1, luminance2);\n const l2 = Math.min(luminance1, luminance2);\n return (l1 + 0.05) / (l2 + 0.05);\n};\nexports.calculateContrast = calculateContrast;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.calculateSimilarity = void 0;\nconst color_1 = require(\"./color\");\nconst types_1 = require(\"./types\");\n/**\n * Calculates the similarity between two colors using the Euclidean distance in RGB color space.\n *\n * @param {Color | string} color1 - The first color for comparison. Can be a color string or a Color instance.\n * @param {Color | string} color2 - The second color for comparison. Can be a color string or a Color instance.\n *\n * @returns {number} - A similarity percentage where 100% means identical colors and 0% means completely different colors.\n *\n * Example usage:\n * calculateSimilarity('#ff0000', '#00ff00'); // Returns similarity between red and green\n * calculateSimilarity(new Color('#ff0000'), new Color('#00ff00')); // Same as above using Color instances\n */\nconst calculateSimilarity = (color1, color2) => {\n color1 = typeof color1 === 'string' ? new color_1.Color(color1) : color1;\n color2 = typeof color2 === 'string' ? new color_1.Color(color2) : color2;\n const { r: r1, g: g1, b: b1 } = color1.parseNumbers(types_1.ColorFormat.RGB);\n const { r: r2, g: g2, b: b2 } = color2.parseNumbers(types_1.ColorFormat.RGB);\n const difference = Math.sqrt((r1 - r2) ** 2 + (g1 - g2) ** 2 + (b1 - b2) ** 2);\n const maxDifference = Math.sqrt(3 * 255 ** 2);\n return 100 - (difference / maxDifference) * 100;\n};\nexports.calculateSimilarity = calculateSimilarity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.changeOpacity = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Changes the opacity of a specified color to a new value.\n *\n * @param {string} color - The color whose opacity will be changed, specified as a string\n * in a recognized format (e.g., HEX, RGB, HSL, named colors).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} opacity - The new opacity level for the color, a number between 0 and 1.\n * 0 represents full transparency, and 1 represents full opacity.\n *\n * @returns {string} - The color with adjusted opacity, in the same format as the input.\n * If the input color format was invalid, returns the white color with adjusted opacity in the same format.\n *\n * Example usage:\n * changeOpacity('#ff0000', 0.5); // Returns a half-transparent red color in HEX format.\n * changeOpacity('rgba(255, 0, 0, 0.8)', 0.3); // Adjusts an RGBA red color to 30% opacity.\n * changeOpacity('invalidColor', 0.7); // Uses white as fallback and returns it with 70% opacity.\n */\nconst changeOpacity = (color, opacity) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b, a] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGBA).match(/\\d+(\\.\\d+)?/g).map(Number);\n a = Math.max(0, Math.min(1, opacity));\n return (0, convert_color_1.convertColor)(`rgba(${[r, g, b, a].join(', ')})`, targetFormat);\n};\nexports.changeOpacity = changeOpacity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Color = void 0;\nconst adjust_brightness_1 = require(\"./adjust-brightness\");\nconst adjust_saturation_1 = require(\"./adjust-saturation\");\nconst apply_greyscale_1 = require(\"./apply-greyscale\");\nconst apply_sepia_1 = require(\"./apply-sepia\");\nconst change_opacity_1 = require(\"./change-opacity\");\nconst convert_color_1 = require(\"./convert-color\");\nconst extract_opacity_1 = require(\"./extract-opacity\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst get_luminance_1 = require(\"./get-luminance\");\nconst invert_color_1 = require(\"./invert-color\");\nconst is_dark_1 = require(\"./is-dark\");\nconst is_light_1 = require(\"./is-light\");\nconst parse_color_numbers_1 = require(\"./parse-color-numbers\");\nconst shade_1 = require(\"./shade\");\nconst tint_1 = require(\"./tint\");\nconst types_1 = require(\"./types\");\n/**\n * The Color class provides a robust set of methods for color manipulation and conversion.\n * It supports various color formats and offers functionalities to adjust color properties like\n * brightness, saturation, opacity, and to apply effects like sepia and grayscale.\n */\nclass Color {\n /**\n * Creates an instance of the Color class.\n * @param {string} initialColor - The initial color value in any supported format.\n */\n constructor(initialColor) {\n // Holds the current color value as a string\n this.currentColor = '';\n // Holds the current color format as a string\n this.currentFormat = '';\n this.set(initialColor);\n }\n /**\n * Sets the current color and format if the color is valid.\n * @param {string} color - The color value to be set.\n */\n set(color) {\n const format = (0, get_color_format_1.getColorFormat)(color);\n if (format) {\n this.currentColor = color;\n this.currentFormat = format;\n }\n else {\n this.currentColor = '';\n this.currentFormat = '';\n }\n }\n /**\n * Returns the current color value.\n * @returns {string} The current color value.\n */\n get() {\n return this.currentColor;\n }\n /**\n * Returns the current color format.\n * @returns {string} The current color format.\n */\n format() {\n return this.currentFormat;\n }\n /**\n * Converts the current color to HEX format.\n * @param {ColorFormat} format - The format to convert.\n * @returns {string} The color in converted format.\n */\n convert(format) {\n return (0, convert_color_1.convertColor)(this.currentColor, format);\n }\n /**\n * Converts the current color to HEX format.\n * @returns {string} The color in HEX format.\n */\n hex() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HEX);\n }\n /**\n * Converts the current color to HEXA format (HEX with alpha).\n * @returns {string} The color in HEXA format.\n */\n hexa() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HEXA);\n }\n /**\n * Converts the current color to RGB format.\n * @returns {string} The color in RGB format.\n */\n rgb() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.RGB);\n }\n /**\n * Converts the current color to RGBA format (RGB with alpha).\n * @returns {string} The color in RGBA format.\n */\n rgba() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.RGBA);\n }\n /**\n * Converts the current color to HSL format.\n * @returns {string} The color in HSL format.\n */\n hsl() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSL);\n }\n /**\n * Converts the current color to HSLA format (HSL with alpha).\n * @returns {string} The color in HSLA format.\n */\n hsla() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSLA);\n }\n /**\n * Converts the current color to HSV format.\n * @returns {string} The color in HSV format.\n */\n hsv() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSV);\n }\n /**\n * Converts the current color to CMYK format.\n * @returns {string} The color in CMYK format.\n */\n cmyk() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.CMYK);\n }\n /**\n * Extracts the opacity value from the current color.\n * @returns {{ opacity: number; color: string }} The opacity value and the base color.\n */\n extractOpacity() {\n return (0, extract_opacity_1.extractOpacity)(this.currentColor);\n }\n /**\n * Parses the color components into numeric values.\n * @param {ColorFormat.RGB | ColorFormat.RGBA | ColorFormat.HSL | ColorFormat.HSLA} format - The format to parse.\n * @returns {RGB | RGBA | HSL | HSLA} The parsed numeric components of the color.\n */\n parseNumbers(format) {\n return (0, parse_color_numbers_1.parseColorNumbers)(this.currentColor, format);\n }\n /**\n * Calculates the luminance of the current color.\n * @returns {number} The luminance value.\n */\n luminance() {\n return (0, get_luminance_1.getLuminance)(this.currentColor);\n }\n /**\n * Determines if the current color is light.\n * @returns {boolean} True if the color is considered light, false otherwise.\n */\n isLight() {\n return (0, is_light_1.isLight)(this.currentColor);\n }\n /**\n * Determines if the current color is dark.\n * @returns {boolean} True if the color is considered dark, false otherwise.\n */\n isDark() {\n return (0, is_dark_1.isDark)(this.currentColor);\n }\n /**\n * Adjusts the brightness of the current color by the specified amount.\n * @param {number} amount - The amount to adjust the brightness by.\n * @returns {string} The updated color.\n */\n applyBrightness(amount) {\n this.currentColor = (0, adjust_brightness_1.adjustBrightness)(this.currentColor, amount);\n return this.currentColor;\n }\n /**\n * Returns a new color with the brightness adjusted by the specified amount without changing the current color.\n * @param {number} amount - The amount to adjust the brightness by.\n * @returns {string} The color with adjusted brightness.\n */\n withBrightness(amount) {\n return (0, adjust_brightness_1.adjustBrightness)(this.currentColor, amount);\n }\n /**\n * Adjusts the saturation of the current color by the specified amount.\n * @param {number} amount - The amount to adjust the saturation by.\n * @returns {string} The updated color.\n */\n applySaturation(amount) {\n this.currentColor = (0, adjust_saturation_1.adjustSaturation)(this.currentColor, amount);\n return this.currentColor;\n }\n /**\n * Returns a new color with the saturation adjusted by the specified amount without changing the current color.\n * @param {number} amount - The amount to adjust the saturation by.\n * @returns {string} The color with adjusted saturation.\n */\n withSaturation(amount) {\n return (0, adjust_saturation_1.adjustSaturation)(this.currentColor, amount);\n }\n /**\n * Applies a grayscale effect to the current color and updates it.\n * @returns {string} The updated color.\n */\n applyGrayscale() {\n this.currentColor = (0, apply_greyscale_1.applyGreyscale)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color with a grayscale effect without changing the current color.\n * @returns {string} The color with a grayscale effect.\n */\n withGrayscale() {\n return (0, apply_greyscale_1.applyGreyscale)(this.currentColor);\n }\n /**\n * Applies a sepia effect to the current color and updates it.\n * @returns {string} The updated color.\n */\n applySepia() {\n this.currentColor = (0, apply_sepia_1.applySepia)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color with a sepia effect without changing the current color.\n * @returns {string} The color with a sepia effect.\n */\n withSepia() {\n return (0, apply_sepia_1.applySepia)(this.currentColor);\n }\n /**\n * Adjusts the opacity of the current color by the specified amount.\n * @param {number} opacity - The new opacity level.\n * @returns {string} The updated color.\n */\n applyOpacity(opacity) {\n this.currentColor = (0, change_opacity_1.changeOpacity)(this.currentColor, opacity);\n return this.currentColor;\n }\n /**\n * Returns a new color with the specified opacity without changing the current color.\n * @param {number} opacity - The new opacity level.\n * @returns {string} The color with adjusted opacity.\n */\n withOpacity(opacity) {\n return (0, change_opacity_1.changeOpacity)(this.currentColor, opacity);\n }\n /**\n * Inverts the current color and updates it.\n * @returns {string} The updated color.\n */\n applyInvert() {\n this.currentColor = (0, invert_color_1.invertColor)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color that is the inverse of the current color without changing the current color.\n * @returns {string} The inverted color.\n */\n withInvert() {\n return (0, invert_color_1.invertColor)(this.currentColor);\n }\n /**\n * Applies a shading effect to the current color by the specified percentage and updates it.\n * @param {number} percentage - The percentage to shade the color by.\n * @returns {string} The updated color.\n */\n applyShade(percentage) {\n this.currentColor = (0, shade_1.shade)(this.currentColor, percentage);\n return this.currentColor;\n }\n /**\n * Returns a new color that is shaded by the specified percentage without changing the current color.\n * @param {number} percentage - The percentage to shade the color by.\n * @returns {string} The shaded color.\n */\n withShade(percentage) {\n return (0, shade_1.shade)(this.currentColor, percentage);\n }\n /**\n * Applies a tinting effect to the current color by the specified percentage and updates it.\n * @param {number} percentage - The percentage to tint the color by.\n * @returns {string} The updated color.\n */\n applyTint(percentage) {\n this.currentColor = (0, tint_1.tint)(this.currentColor, percentage);\n return this.currentColor;\n }\n /**\n * Returns a new color that is tinted by the specified percentage without changing the current color.\n * @param {number} percentage - The percentage to tint the color by.\n * @returns {string} The tinted color.\n */\n withTint(percentage) {\n return (0, tint_1.tint)(this.currentColor, percentage);\n }\n}\nexports.Color = Color;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertColor = void 0;\nconst get_color_format_1 = require(\"./get-color-format\");\nconst convert_utils_1 = require(\"./utils/convert-utils\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color from its current format to a specified target format.\n * The conversion process involves determining the color's current format.\n *\n * @param {string} color - The color to be converted, represented as a string.\n * This color should be in a recognized color format (HEX(A), RGB(A), HSL(A), HSV, CMYK).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {ColorFormat} toFormat - The target format to which the color should be converted.\n * This should be one of the predefined formats in the ColorFormat enumeration.\n *\n * @returns {string} - The converted color in the target format.\n * If the input color format was invalid, returns white in the target format.\n *\n * Example usage:\n * convertColor(\"#FF5733\", ColorFormat.RGB); // returns 'rgb(255, 87, 51)'\n * convertColor(\"invalidColor\", ColorFormat.HEX); // returns '#FFFFFF'\n */\nconst convertColor = (color, toFormat) => {\n const fromFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = fromFormat ? color : '#FFFFFF';\n const validFromFormat = fromFormat || types_1.ColorFormat.HEX;\n if (validFromFormat === toFormat) {\n return validColor;\n }\n const convertToBase = {\n [types_1.ColorFormat.HEX]: convert_utils_1.hexToRGBA,\n [types_1.ColorFormat.HEXA]: convert_utils_1.hexaToRGBA,\n [types_1.ColorFormat.RGB]: convert_utils_1.rgbToRGBA,\n [types_1.ColorFormat.HSL]: convert_utils_1.hslToRGBA,\n [types_1.ColorFormat.HSLA]: convert_utils_1.hslaToRGBA,\n [types_1.ColorFormat.CMYK]: convert_utils_1.cmykToRGBA,\n [types_1.ColorFormat.HSV]: convert_utils_1.hsvToRGBA,\n };\n const convertFromBase = {\n [types_1.ColorFormat.HEX]: convert_utils_1.rgbaToHex,\n [types_1.ColorFormat.HEXA]: convert_utils_1.rgbaToHexa,\n [types_1.ColorFormat.RGB]: convert_utils_1.rgbaToRGB,\n [types_1.ColorFormat.HSL]: convert_utils_1.rgbaToHSL,\n [types_1.ColorFormat.HSLA]: convert_utils_1.rgbaToHSLA,\n [types_1.ColorFormat.CMYK]: convert_utils_1.rgbaToCMYK,\n [types_1.ColorFormat.HSV]: convert_utils_1.rgbaToHSV,\n };\n const baseColor = validFromFormat === types_1.BaseColorFormat ? validColor : convertToBase[validFromFormat](validColor);\n const outputColor = toFormat === types_1.BaseColorFormat ? baseColor : convertFromBase[toFormat](baseColor);\n return outputColor;\n};\nexports.convertColor = convertColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.extractOpacity = void 0;\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Extracts the color and opacity from a given color string.\n * If the color format does not include an alpha channel, the opacity is returned as 1.\n * Supports HEXA, RGBA, and HSLA color formats.\n *\n * @param {string} color - The color string to extract opacity from.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {{ color: string, opacity: number }} An object containing the color without opacity and the opacity value.\n * If the input color format was invalid, returns white with opacity 1.\n *\n * Example usage:\n * extractOpacity('#ff000080'); // Returns { color: \"#ff0000\", opacity: 0.5 }.\n * extractOpacity('invalidColor'); // Returns { color: \"#FFFFFF\", opacity: 1 }.\n */\nconst extractOpacity = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n let opacity = 1;\n // Use white as fallback if color format is invalid\n if (!colorFormat) {\n return { color: '#FFFFFF', opacity: 1 };\n }\n switch (colorFormat) {\n case types_1.ColorFormat.HEXA:\n opacity = parseInt(color.slice(-2), 16) / 255;\n color = color.slice(0, -2);\n break;\n case types_1.ColorFormat.RGBA:\n [, , , opacity] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n color = `rgb(${color.match(/\\d+/g).slice(0, 3).join(', ')})`;\n break;\n case types_1.ColorFormat.HSLA:\n [, , , opacity] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n color = `hsl(${color.match(/\\d+/g).slice(0, 3).join(', ')})`;\n break;\n }\n return { color, opacity };\n};\nexports.extractOpacity = extractOpacity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateMultiSteppedGradient = void 0;\nconst color_1 = require(\"./color\");\nconst generate_stepped_gradient_1 = require(\"./generate-stepped-gradient\");\n/**\n * Generates a complex stepped color gradient between multiple colors.\n * This function creates a series of intermediate colors forming a gradient\n * between each pair of colors in the argument list, with specified steps between each pair.\n *\n * @param args - A list of colors and steps where each color (except the last one) is followed by a number\n * indicating the steps to the next color. For example, the call might look like:\n * generateMultiSteppedGradient(\"#ff0000\", 3, \"#ffff00\", 4, \"#0000ff\").\n *\n * @returns An array of color strings representing the complex gradient including all intermediate colors.\n * The format of each color in the array is the same as the format of the first color in the input list.\n *\n * @throws Will throw an error if the arguments don't follow the pattern [color, steps, color, ..., color].\n *\n * Example usage:\n * generateMultiSteppedGradient(\"#ff0000\", 3, \"#ffff00\", 4, \"#0000ff\");\n * // Returns an array including \"#ff0000\", three intermediate colors to \"#ffff00\",\n * // \"#ffff00\" itself, four intermediate colors to \"#0000ff\", and \"#0000ff\".\n */\nconst generateMultiSteppedGradient = (...args) => {\n if (args.length < 3 || args.length % 2 === 0) {\n throw new Error('Function must be called with at least one color and one step count, in an interleaved manner.');\n }\n let gradientColors = [];\n for (let i = 0; i < args.length - 2; i += 2) {\n const fromColor = typeof args[i] === 'string' ? new color_1.Color(args[i]) : args[i];\n const steps = args[i + 1];\n const toColor = typeof args[i + 2] === 'string' ? new color_1.Color(args[i + 2]) : args[i + 2];\n if (typeof steps !== 'number') {\n throw new Error('Arguments must follow the pattern [color, steps, color, ..., color].');\n }\n const gradientSegment = (0, generate_stepped_gradient_1.generateSteppedGradient)(fromColor, toColor, steps);\n if (i === 0) {\n gradientColors.push(fromColor.get());\n }\n gradientColors.push(...gradientSegment);\n gradientColors.push(toColor.get());\n }\n return gradientColors;\n};\nexports.generateMultiSteppedGradient = generateMultiSteppedGradient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateSteppedGradient = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Generates a stepped color gradient between two colors.\n * This function creates a series of intermediate colors that form a gradient\n * from a starting color to an ending color, with the number of steps.\n *\n * @param {Color | string} fromColor - The color string representing the start color of the gradient.\n * This color should be the object of Color class or a string in format recognized by the `getColorFormat` and `convertColor` functions.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {Color | string} toColor - The color string representing the end color of the gradient.\n * his color should be the object of Color class or a string in format recognized by the `getColorFormat` and `convertColor` functions.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} count - The number of intermediate colors to generate in the gradient.\n * The total number of colors in the returned array will be equal to this count.\n *\n * @returns {string[]} An array of color strings representing the stepped gradient from the starting color to the ending color.\n * Each color in the array is converted back to the format of the `fromColor`.\n * If either input color format was invalid, white will be used as fallback for that color.\n *\n * Example usage:\n * generateSteppedGradient('#FF0000', '#00FF00', 5); // returns an array of 5 intermediate colors in hexadecimal format between red and green.\n * generateSteppedGradient('invalidColor', '#00FF00', 3); // uses white as fallback for the first color.\n */\nconst generateSteppedGradient = (fromColor, toColor, count) => {\n if (typeof fromColor === 'string') {\n fromColor = new color_1.Color(fromColor);\n }\n if (typeof toColor === 'string') {\n toColor = new color_1.Color(toColor);\n }\n // Use white as fallback if color format is invalid\n const fromColorFormat = fromColor.format() || types_1.ColorFormat.HEX;\n const fromRGBA = fromColor.rgba().match(/\\d+(\\.\\d+)?/g).map(Number);\n const toRGBA = toColor.rgba().match(/\\d+(\\.\\d+)?/g).map(Number);\n const step = 1 / (count + 1);\n let intermediateColors = [];\n for (let i = 1; i <= count; i++) {\n const interpolatedColor = fromRGBA.map((start, index) => {\n const end = toRGBA[index];\n return index !== 3\n ? Math.round(start + (end - start) * step * i)\n : (start + (end - start) * step * i).toFixed(2);\n });\n intermediateColors.push((0, convert_color_1.convertColor)(`rgba(${interpolatedColor.join(', ')})`, fromColorFormat));\n }\n return intermediateColors;\n};\nexports.generateSteppedGradient = generateSteppedGradient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getColorFormat = void 0;\nconst is_valid_color_1 = require(\"./is-valid-color\");\nconst types_1 = require(\"./types\");\n/**\n * Identifies the format of a given color string from among several supported color models.\n * Utilizes a series of specific validators for different color formats, including HEX, HEXA,\n * RGB, RGBA, HSL, HSLA, HSV, and CMYK. This approach allows for accurately determining the\n * color model of the input string, facilitating format-specific processing or conversions.\n *\n * @param {string} color - The color string to be identified.\n *\n * @returns {ColorFormat | null} - The identified color format as a `ColorFormat` enum value,\n * or `null` if the format does not match any of the supported types.\n *\n * Example usage:\n * getColorFormat('#FF5733'); // returns 'HEX'\n * getColorFormat('rgb(255, 99, 71)'); // returns 'RGB'\n * getColorFormat('invalidColor'); // returns null, as the format is not recognized\n */\nconst getColorFormat = (color) => {\n const validators = {\n [types_1.ColorFormat.HEX]: is_valid_color_1.isValidHEXColor,\n [types_1.ColorFormat.HEXA]: is_valid_color_1.isValidHEXAColor,\n [types_1.ColorFormat.RGB]: is_valid_color_1.isValidRGBColor,\n [types_1.ColorFormat.RGBA]: is_valid_color_1.isValidRGBAColor,\n [types_1.ColorFormat.HSL]: is_valid_color_1.isValidHSLColor,\n [types_1.ColorFormat.HSLA]: is_valid_color_1.isValidHSLAColor,\n [types_1.ColorFormat.HSV]: is_valid_color_1.isValidHSVColor,\n [types_1.ColorFormat.CMYK]: is_valid_color_1.isValidCMYKColor,\n };\n for (const [type, validator] of Object.entries(validators)) {\n if (validator(color)) {\n return type;\n }\n }\n return null;\n};\nexports.getColorFormat = getColorFormat;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getLuminance = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Calculates the luminance of a given color.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {number} The luminance of the color, a value between 0 and 1.\n *\n * Example usage:\n * getLuminance('#ff0000'); // Returns the luminance of red.\n */\nconst getLuminance = (color) => {\n const rgbColor = (0, convert_color_1.convertColor)(color, types_1.ColorFormat.RGB);\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number).map((v) => {\n v /= 255;\n return v <= 0.03928 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\nexports.getLuminance = getLuminance;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTemperature = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color string into an estimated correlated color temperature (CCT) value expressed in Kelvin.\n * The result is clamped to the range 1000K–10000K, which covers most practical lighting conditions from candlelight to blue daylight.\n *\n * @param {string} color - The color in any supported format (HEX, RGB, RGBA, HSL, HSLA, HSV, CMYK).\n * Examples: \"#FF4500\", \"rgb(255, 69, 0)\", \"hsl(16, 100%, 50%)\"\n *\n * @returns {number} Estimated color temperature in Kelvin (integer or float).\n * Always in the range 1000 ≤ CCT ≤ 10000.\n *\n * @example\n * getTemperature(\"#FF4500\"); // ~2000 (warm orange, firelight)\n * getTemperature(\"rgb(255, 215, 0)\"); // ~3000 (warm white, incandescent)\n * getTemperature(\"hsl(0, 0%, 100%)\"); // ~5500 (neutral daylight)\n * getTemperature(\"#ADD8E6\"); // ~9000 (blue sky light)\n */\nconst getTemperature = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n // Convert to RGB format to extract RGB values\n const rgbColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB);\n // Parse RGB values and normalize to 0–1 range\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number).map(v => v / 255);\n // Apply gamma correction to convert sRGB → linear RGB\n const linearR = r <= 0.04045 ? r / 12.92 : Math.pow((r + 0.055) / 1.055, 2.4);\n const linearG = g <= 0.04045 ? g / 12.92 : Math.pow((g + 0.055) / 1.055, 2.4);\n const linearB = b <= 0.04045 ? b / 12.92 : Math.pow((b + 0.055) / 1.055, 2.4);\n // Convert linear RGB to XYZ color space using sRGB D65 white point\n // sRGB to XYZ transformation matrix (D65 white point)\n const x = linearR * 0.4124 + linearG * 0.3576 + linearB * 0.1805;\n const y = linearR * 0.2126 + linearG * 0.7152 + linearB * 0.0722;\n const z = linearR * 0.0193 + linearG * 0.1192 + linearB * 0.9505;\n // Compute chromaticity coordinates (x, y)\n const sum = x + y + z;\n if (sum === 0) {\n // Handle pure black or very dark colors\n return 6500; // Default to neutral daylight\n }\n const chromaticityX = x / sum;\n const chromaticityY = y / sum;\n // Apply McCamy's formula to approximate CCT\n // McCamy's formula: CCT = 449 * n^3 + 3525 * n^2 + 6823.3 * n + 5520.33\n // where n = (x - 0.3320) / (0.1858 - y)\n const n = (chromaticityX - 0.3320) / (0.1858 - chromaticityY);\n if (isNaN(n) || !isFinite(n)) {\n // Handle edge cases where the formula breaks down\n return 6500; // Default to neutral daylight\n }\n const cct = 449 * Math.pow(n, 3) + 3525 * Math.pow(n, 2) + 6823.3 * n + 5520.33;\n // Clamp the result to the valid range: 1000K–10000K\n return Math.max(1000, Math.min(10000, cct));\n};\nexports.getTemperature = getTemperature;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./adjust-brightness\"), exports);\n__exportStar(require(\"./adjust-hue\"), exports);\n__exportStar(require(\"./adjust-saturation\"), exports);\n__exportStar(require(\"./apply-greyscale\"), exports);\n__exportStar(require(\"./apply-sepia\"), exports);\n__exportStar(require(\"./blend-colors\"), exports);\n__exportStar(require(\"./blend-multiple-colors\"), exports);\n__exportStar(require(\"./calculate-contrast\"), exports);\n__exportStar(require(\"./calculate-similarity\"), exports);\n__exportStar(require(\"./change-opacity\"), exports);\n__exportStar(require(\"./color\"), exports);\n__exportStar(require(\"./convert-color\"), exports);\n__exportStar(require(\"./extract-opacity\"), exports);\n__exportStar(require(\"./generate-multi-stepped-gradient\"), exports);\n__exportStar(require(\"./generate-stepped-gradient\"), exports);\n__exportStar(require(\"./get-color-format\"), exports);\n__exportStar(require(\"./get-luminance\"), exports);\n__exportStar(require(\"./get-temperature\"), exports);\n__exportStar(require(\"./invert-color\"), exports);\n__exportStar(require(\"./is-dark\"), exports);\n__exportStar(require(\"./is-light\"), exports);\n__exportStar(require(\"./is-valid-color\"), exports);\n__exportStar(require(\"./opposite-color\"), exports);\n__exportStar(require(\"./parse-color-numbers\"), exports);\n__exportStar(require(\"./random-color\"), exports);\n__exportStar(require(\"./shade\"), exports);\n__exportStar(require(\"./tint\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.invertColor = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Inverts the given color, producing its opposite in the color spectrum.\n *\n * @param {string} color - The color to be inverted, specified as a string in a recognized format.\n * This could be a hexadecimal code, RGB(A) notation, or any other format supported by `getColorFormat`.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} - The inverted color, represented in the same format as the input.\n * If the input color format was invalid, returns the inverted white color in the same format.\n *\n * Example usage:\n * invertColor('#FFFFFF'); // returns '#000000', inverting white to black.\n * invertColor('rgb(255, 0, 0)'); // returns 'rgb(0, 255, 255)', inverting red to cyan.\n * invertColor('invalidColor'); // uses white as fallback and returns '#000000'.\n */\nconst invertColor = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB).match(/\\d+/g).map(Number);\n r = 255 - r;\n g = 255 - g;\n b = 255 - b;\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, targetFormat);\n};\nexports.invertColor = invertColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isDark = void 0;\nconst get_luminance_1 = require(\"./get-luminance\");\n/**\n * Determines if a given color is considered dark.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {boolean} True if the color is dark, false otherwise.\n *\n * Example usage:\n * isDark('#ff0000'); // Returns true as red is considered a dark color.\n */\nconst isDark = (color) => {\n return (0, get_luminance_1.getLuminance)(color) <= 0.5;\n};\nexports.isDark = isDark;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isLight = void 0;\nconst get_luminance_1 = require(\"./get-luminance\");\n/**\n * Determines if a given color is considered light.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {boolean} True if the color is light, false otherwise.\n *\n * Example usage:\n * isLight('#ff0000'); // Returns false as red is not considered a light color.\n */\nconst isLight = (color) => {\n return (0, get_luminance_1.getLuminance)(color) > 0.5;\n};\nexports.isLight = isLight;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValidCMYKColor = exports.isValidHSVColor = exports.isValidHSLAColor = exports.isValidHSLColor = exports.isValidRGBAColor = exports.isValidRGBColor = exports.isValidHEXAColor = exports.isValidHEXColor = exports.isValidColor = void 0;\n/**\n * Determines whether a given string is a valid HEX color.\n * A valid HEX color must start with a '#' followed by exactly\n * three or six hexadecimal characters (0-9, a-f, or A-F).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid HEX color, false otherwise.\n *\n * Example usage:\n * isValidHEXAColor('#FFF'); // returns true\n * isValidHEXAColor('#FFFFFF'); // returns true\n * isValidHEXAColor('#123ABC'); // returns true\n * isValidHEXAColor('#GGG'); // returns false, contains incorrect characters\n * isValidHEXAColor('123456'); // returns false, missing starting #\n * isValidHEXAColor('#12345'); // returns false, invalid length\n */\nconst isValidHEXColor = (color) => {\n const regex = /^#(?:[0-9a-fA-F]{3}){1,2}$/;\n return regex.test(color);\n};\nexports.isValidHEXColor = isValidHEXColor;\n/**\n * Determines whether a given string is a valid HEXA color code.\n * HEXA color codes are similar to HEX codes but include an additional alpha\n * value to specify transparency. They consist of a pound symbol (#) followed\n * by either 4 or 8 hexadecimal characters (0-9, a-f, A-F). The first three\n * (or six) characters represent the RGB color, and the last character (or two)\n * represents the alpha (transparency) value.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid HEXA color code, false otherwise.\n *\n * Example usage:\n * isValidHEXAColor('#FA3E'); // returns true\n * isValidHEXAColor('#FA3EF8'); // returns true\n * isValidHEXAColor('#FA3EF812'); // returns true\n * isValidHEXAColor('#FA3E12'); // returns false, as it lacks the alpha value for a 6-character code\n * isValidHEXAColor('FA3EF8'); // returns false, missing starting #\n */\nconst isValidHEXAColor = (color) => {\n const regex = /^#(?:[0-9a-fA-F]{4}){1,2}$/;\n return regex.test(color);\n};\nexports.isValidHEXAColor = isValidHEXAColor;\n/**\n * Checks if a given string is a valid representation of an RGB color.\n * An RGB color is specified as 'rgb(x, y, z)' where x, y, and z are integers\n * representing the red, green, and blue color components, respectively.\n * Each component must be within the range of 0 to 255.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid RGB color format and all color components\n * are within the specified range; otherwise, false.\n *\n * Example usage:\n * isValidRGBColor('rgb(255, 99, 71)'); // returns true\n * isValidRGBColor('rgb(256, -1, 300)'); // returns false, components are out of bounds\n * isValidRGBColor('rgb(25, 99, 71)'); // returns true\n * isValidRGBColor('rgb(255,255,255)'); // returns true\n */\nconst isValidRGBColor = (color) => {\n var _a;\n const regex = /^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, r, g, b] = match;\n return [r, g, b].every((value) => value >= 0 && value <= 255);\n};\nexports.isValidRGBColor = isValidRGBColor;\n/**\n * Validates if a given string is a correct representation of an RGBA color.\n * An RGBA color is specified as 'rgba(x, y, z, a)' where x, y, and z are integers\n * representing the red, green, and blue components of the color, respectively,\n * each ranging from 0 to 255. The 'a' component is a floating-point number\n * representing the opacity, ranging from 0.0 (completely transparent) to 1.0 (fully opaque),\n * inclusive.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is a valid RGBA format and all components\n * (red, green, blue, alpha) are within their respective ranges; false otherwise.\n *\n * Example usage:\n * isValidRGBAColor('rgba(255, 99, 71, 0.5)'); // returns true\n * isValidRGBAColor('rgba(255, 99, 71, 1.1)'); // returns false, alpha value is out of bounds\n * isValidRGBAColor('rgba(255, 99, 71, -0.1)'); // returns false, negative alpha value\n */\nconst isValidRGBAColor = (color) => {\n var _a;\n const regex = /^rgba\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3}),\\s*(0|1|0?\\.\\d+|1?\\.\\d+)\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, r, g, b, a] = match;\n return [r, g, b].every((value) => value >= 0 && value <= 255) && a >= 0 && a <= 1;\n};\nexports.isValidRGBAColor = isValidRGBAColor;\n/**\n * Validates if a given string accurately represents a color in the HSL format.\n * HSL stands for Hue, Saturation, and Lightness, and colors in this format are\n * specified as 'hsl(h, s%, l%)', where h is the hue (0 to 360 degrees), s is the saturation\n * (0% to 100%), and l is the lightness (0% to 100%).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is a valid HSL format and all components\n * (hue, saturation, lightness) are within their respective ranges; false otherwise.\n *\n * Example usage:\n * isValidHSLColor('hsl(120, 50%, 50%)'); // returns true\n * isValidHSLColor('hsl(370, 50%, 50%)'); // returns false, hue is out of bounds\n * isValidHSLColor('hsl(120, 101%, 50%)'); // returns false, saturation is out of bounds\n */\nconst isValidHSLColor = (color) => {\n var _a;\n const regex = /^hsl\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, l] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && l >= 0 && l <= 100;\n};\nexports.isValidHSLColor = isValidHSLColor;\n/**\n * Validates if a given string is a correct representation of an HSLA color.\n * HSLA color notation includes hue (0 to 360 degrees), saturation (0% to 100%),\n * lightness (0% to 100%), and alpha (0.0 to 1.0 for transparency level).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string matches the HSLA format and all\n * components (hue, saturation, lightness, alpha) fall within\n * their respective allowable ranges; false otherwise.\n *\n * Example usage:\n * isValidHSLAColor('hsla(210, 100%, 50%, 0.5)'); // returns true\n * isValidHSLAColor('hsla(210, 100%, 50%, 1.1)'); // returns false, alpha value out of bounds\n * isValidHSLAColor('hsla(360, 50%, 50%, 0)'); // returns true\n */\nconst isValidHSLAColor = (color) => {\n var _a;\n const regex = /^hsla\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(0|1|0?\\.\\d+)\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, l, a] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && l >= 0 && l <= 100 && a >= 0 && a <= 1;\n};\nexports.isValidHSLAColor = isValidHSLAColor;\n/**\n * Validates if a given string is a correct representation of a CMYK color.\n * CMYK colors are defined with four components: Cyan, Magenta, Yellow, and Key (Black),\n * each represented as a percentage from 0% to 100%.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string matches the CMYK format and all components\n * (Cyan, Magenta, Yellow, Key) are within the 0% to 100% range; false otherwise.\n *\n * Example usage:\n * isValidCMYKColor('cmyk(0%, 100%, 0%, 0%)'); // returns true for pure magenta\n * isValidCMYKColor('cmyk(101%, 0%, 0%, 0%)'); // returns false, cyan value out of bounds\n * isValidCMYKColor('cmyk(50%, 50%, 50%, 50%)'); // returns true for a mid-tone color\n */\nconst isValidCMYKColor = (color) => {\n var _a;\n const regex = /^cmyk\\((\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, c, m, y, k] = match;\n return [c, m, y, k].every(val => val >= 0 && val <= 100);\n};\nexports.isValidCMYKColor = isValidCMYKColor;\n/**\n * Validates whether a given string is a correct representation of an HSV color.\n * HSV stands for Hue, Saturation, and Value, where Hue is measured in degrees (0 to 360),\n * and both Saturation and Value are presented as percentages (0% to 100%).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string adheres to the HSV format and all components\n * (hue, saturation, value) are within their designated ranges; otherwise, false.\n *\n * Example usage:\n * isValidHSVColor('hsv(120, 100%, 100%)'); // returns true for pure green\n * isValidHSVColor('hsv(361, 50%, 50%)'); // returns false, hue is out of bounds\n * isValidHSVColor('hsv(240, 100%, 50%)'); // returns true for a medium blue\n */\nconst isValidHSVColor = (color) => {\n var _a;\n const regex = /^hsv\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/i;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, v] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && v >= 0 && v <= 100;\n};\nexports.isValidHSVColor = isValidHSVColor;\n/**\n * Validates a given color string against multiple color formats.\n * This function consolidates various specific color format validators,\n * including HEX, HEXA, RGB, RGBA, HSL, HSLA, HSV, and CMYK, to determine\n * if the color string conforms to any of these recognized formats.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is valid in at least one of the supported\n * color formats; false otherwise.\n *\n * Example usage:\n * isValidColor('#FF5733'); // returns true for a valid HEX color.\n * isValidColor('rgb(255, 99, 71)'); // returns true for a valid RGB color.\n * isValidColor('cmyk(0%, 100%, 100%, 0%)'); // returns true for a valid CMYK color.\n * isValidColor('invalidColor'); // returns false, does not match any supported format.\n */\nconst isValidColor = (color) => {\n const validators = [\n isValidHEXColor,\n isValidHEXAColor,\n isValidRGBColor,\n isValidRGBAColor,\n isValidHSLColor,\n isValidHSLAColor,\n isValidHSVColor,\n isValidCMYKColor,\n ];\n return validators.some((validator) => validator(color));\n};\nexports.isValidColor = isValidColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.oppositeColor = void 0;\nconst adjust_hue_1 = require(\"./adjust-hue\");\n/**\n * Computes the opposite color (complementary color) by adjusting the hue by 180 degrees.\n *\n * @param {string} color - The color to find the opposite for, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n *\n * @returns {string} - The opposite color, in the same format as the input color.\n *\n * @throws {Error} - If the input color's format is invalid or unrecognized, an error is thrown.\n *\n * Example usage:\n * oppositeColor('#00FF00'); // returns the opposite color of a bright green.\n * oppositeColor('rgb(255, 0, 0)'); // returns the opposite color of red.\n */\nconst oppositeColor = (color) => {\n return (0, adjust_hue_1.adjustHue)(color, 180);\n};\nexports.oppositeColor = oppositeColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseColorNumbers = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a given color to an object containing the numerical values of its components.\n * The function supports conversion to RGB, RGBA, HSL, or HSLA format.\n *\n * @param {string} color - The color string to parse.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {ColorFormat.RGB | ColorFormat.RGBA | ColorFormat.HSL | ColorFormat.HSLA} format - The desired format for the output.\n *\n * @returns {RGB | RGBA | HSL | HSLA} An object containing the numerical values of the color components.\n * If the input color format was invalid, returns white color values in the specified format.\n */\nconst parseColorNumbers = (color, format) => {\n if (![types_1.ColorFormat.RGB, types_1.ColorFormat.RGBA, types_1.ColorFormat.HSL, types_1.ColorFormat.HSLA].some((colorFormat) => colorFormat === format)) {\n throw new Error('Invalid format specified');\n }\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n let convertedColor = (0, convert_color_1.convertColor)(validColor, format);\n let matches = convertedColor.match(/\\d+(\\.\\d+)?/g);\n if (!matches) {\n throw new Error('Color conversion failed');\n }\n let values = matches.map(Number);\n switch (format) {\n case 'rgb':\n case 'rgba':\n return Object.assign({ r: values[0], g: values[1], b: values[2] }, (values.length > 3 && { a: values[3] }));\n case 'hsl':\n case 'hsla':\n return Object.assign({ h: values[0], s: values[1], l: values[2] }, (values.length > 3 && { a: values[3] }));\n default:\n throw new Error('Invalid format specified');\n }\n};\nexports.parseColorNumbers = parseColorNumbers;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.randomColor = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Generates a random color in the specified format.\n *\n * @param {ColorFormat} format - The desired color format (hex, hexa, rgb, rgba, hsl, hsla, hsv, cmyk).\n * Default is 'hex'.\n *\n * @returns {string} - The random color in the specified format.\n *\n * Example usage:\n * randomColor(); // Returns a random color in HEX format.\n * randomColor(ColorFormat.RGB); // Returns a random color in RGB format.\n */\nconst randomColor = (format = types_1.ColorFormat.HEX) => {\n const getRandomInt = (max) => Math.floor(Math.random() * (max + 1));\n const r = getRandomInt(255);\n const g = getRandomInt(255);\n const b = getRandomInt(255);\n const a = Math.random().toFixed(2);\n const baseColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n return (0, convert_color_1.convertColor)(baseColor, format);\n};\nexports.randomColor = randomColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.shade = void 0;\nconst blend_colors_1 = require(\"./blend-colors\");\n/**\n * Creates a shade of the given color by mixing it with black.\n *\n * @param {string} color - The color to be shaded, in hexadecimal format.\n * @param {number} weight - The percentage of black to mix into the color, between 0 and 1.\n * @returns {string} The shaded color in hexadecimal format.\n *\n * Example usage:\n * const darkRed = shade(\"#ff0000\", 0.5); // Mixes red with 50% black\n */\nconst shade = (color, weight) => {\n return (0, blend_colors_1.blendColors)(color, '#000000', weight);\n};\nexports.shade = shade;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tint = void 0;\nconst blend_colors_1 = require(\"./blend-colors\");\n/**\n * Creates a tint of the given color by mixing it with white.\n *\n * @param {string} color - The color to be tinted, in hexadecimal format.\n * @param {number} weight - The percentage of white to mix into the color, between 0 and 1.\n *\n * @returns {string} The tinted color in hexadecimal format.\n *\n * Example usage:\n * const lightRed = tint(\"#ff0000\", 0.5); // Mixes red with 50% white\n */\nconst tint = (color, weight) => {\n return (0, blend_colors_1.blendColors)(color, '#FFFFFF', weight);\n};\nexports.tint = tint;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseColorFormat = exports.ColorFormat = void 0;\nvar ColorFormat;\n(function (ColorFormat) {\n ColorFormat[\"HEX\"] = \"hex\";\n ColorFormat[\"HEXA\"] = \"hexa\";\n ColorFormat[\"RGB\"] = \"rgb\";\n ColorFormat[\"RGBA\"] = \"rgba\";\n ColorFormat[\"HSL\"] = \"hsl\";\n ColorFormat[\"HSLA\"] = \"hsla\";\n ColorFormat[\"CMYK\"] = \"cmyk\";\n ColorFormat[\"HSV\"] = \"hsv\";\n})(ColorFormat || (exports.ColorFormat = ColorFormat = {}));\nconst BaseColorFormat = ColorFormat.RGBA;\nexports.BaseColorFormat = BaseColorFormat;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rgbaToRGB = exports.rgbaToHexa = exports.rgbaToHex = exports.rgbaToHSV = exports.rgbaToHSLA = exports.rgbaToHSL = exports.rgbaToCMYK = exports.rgbToRGBA = exports.hsvToRGBA = exports.hslaToRGBA = exports.hslToRGBA = exports.hexaToRGBA = exports.hexToRGBA = exports.cmykToRGBA = void 0;\nconst hexToRGBA = (color) => {\n let r = 0, g = 0, b = 0, a = 1;\n if (color.length === 4) {\n r = parseInt(color[1] + color[1], 16);\n g = parseInt(color[2] + color[2], 16);\n b = parseInt(color[3] + color[3], 16);\n }\n else if (color.length === 7) {\n r = parseInt(color[1] + color[2], 16);\n g = parseInt(color[3] + color[4], 16);\n b = parseInt(color[5] + color[6], 16);\n }\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hexToRGBA = hexToRGBA;\nconst hexaToRGBA = (color) => {\n let r = 0, g = 0, b = 0, a = 1;\n if (color.length === 9) {\n r = parseInt(color[1] + color[2], 16);\n g = parseInt(color[3] + color[4], 16);\n b = parseInt(color[5] + color[6], 16);\n a = Math.round(parseInt(color[7] + color[8], 16) / 255 * 100) / 100;\n }\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hexaToRGBA = hexaToRGBA;\nconst rgbToRGBA = (color) => {\n return color.replace(')', ', 1)').replace('rgb', 'rgba');\n};\nexports.rgbToRGBA = rgbToRGBA;\nconst hslToRGBA = (color) => {\n const [h, s, l] = color.match(/\\d+/g).map(Number);\n const saturation = s / 100;\n const lightness = l / 100;\n let c = (1 - Math.abs(2 * lightness - 1)) * saturation;\n let x = c * (1 - Math.abs((h / 60) % 2 - 1));\n let m = lightness - c / 2;\n let r = 0;\n let g = 0;\n let b = 0;\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n b = 0;\n }\n else if (60 <= h && h < 120) {\n r = x;\n g = c;\n b = 0;\n }\n else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n b = x;\n }\n else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n b = c;\n }\n else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n b = c;\n }\n else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n b = x;\n }\n else if (h === 360) {\n r = c;\n g = 0;\n b = x;\n }\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n b = Math.round((b + m) * 255);\n const a = 1;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hslToRGBA = hslToRGBA;\nconst hslaToRGBA = (color) => {\n const [h, s, l, a] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n const saturation = s / 100;\n const lightness = l / 100;\n let c = (1 - Math.abs(2 * lightness - 1)) * saturation;\n let x = c * (1 - Math.abs((h / 60) % 2 - 1));\n let m = lightness - c / 2;\n let r = 0;\n let g = 0;\n let b = 0;\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n b = 0;\n }\n else if (60 <= h && h < 120) {\n r = x;\n g = c;\n b = 0;\n }\n else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n b = x;\n }\n else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n b = c;\n }\n else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n b = c;\n }\n else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n b = x;\n }\n else if (h === 360) {\n r = c;\n g = 0;\n b = x;\n }\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n b = Math.round((b + m) * 255);\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hslaToRGBA = hslaToRGBA;\nconst cmykToRGBA = (color) => {\n let [c, m, y, k] = color.match(/(\\d+(\\.\\d+)?%)/g).map((value) => parseFloat(value) / 100);\n let r = 255 * (1 - c) * (1 - k);\n let g = 255 * (1 - m) * (1 - k);\n let b = 255 * (1 - y) * (1 - k);\n r = Math.round(r);\n g = Math.round(g);\n b = Math.round(b);\n const a = 1;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.cmykToRGBA = cmykToRGBA;\nconst hsvToRGBA = (color) => {\n let [h, s, v] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n let r, g, b, i, f, p, q, t;\n const saturation = s / 100;\n const value = v / 100;\n if (saturation === 0) {\n r = g = b = value;\n return `rgba(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round(b * 255)}, 1)`;\n }\n h /= 60;\n i = Math.floor(h);\n f = h - i;\n p = value * (1 - saturation);\n q = value * (1 - saturation * f);\n t = value * (1 - saturation * (1 - f));\n switch (i) {\n case 0:\n r = value;\n g = t;\n b = p;\n break;\n case 1:\n r = q;\n g = value;\n b = p;\n break;\n case 2:\n r = p;\n g = value;\n b = t;\n break;\n case 3:\n r = p;\n g = q;\n b = value;\n break;\n case 4:\n r = t;\n g = p;\n b = value;\n break;\n default: // case 5:\n r = value;\n g = p;\n b = q;\n }\n return `rgba(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round(b * 255)}, 1)`;\n};\nexports.hsvToRGBA = hsvToRGBA;\nconst rgbaToHex = (rgba) => {\n const [r, g, b] = rgba.match(/\\d+/g).map(Number);\n const rHex = r.toString(16).padStart(2, '0');\n const gHex = g.toString(16).padStart(2, '0');\n const bHex = b.toString(16).padStart(2, '0');\n return `#${rHex}${gHex}${bHex}`.toLowerCase();\n};\nexports.rgbaToHex = rgbaToHex;\nconst rgbaToHexa = (rgba) => {\n const [r, g, b, a] = rgba.match(/\\d+(\\.\\d+)?/g).map(Number);\n const alphaHex = Math.round(a * 255).toString(16).padStart(2, '0');\n const rHex = r.toString(16).padStart(2, '0');\n const gHex = g.toString(16).padStart(2, '0');\n const bHex = b.toString(16).padStart(2, '0');\n return `#${rHex}${gHex}${bHex}${alphaHex}`.toLowerCase();\n};\nexports.rgbaToHexa = rgbaToHexa;\nconst rgbaToRGB = (rgba) => {\n const [r, g, b] = rgba.match(/\\d+/g).map(Number).slice(0, 3);\n return `rgb(${r}, ${g}, ${b})`;\n};\nexports.rgbaToRGB = rgbaToRGB;\nconst rgbaToHSL = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n let h, s, l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\n else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n break;\n }\n h /= 6;\n }\n return `hsl(${Math.round(h * 360) % 360}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`;\n};\nexports.rgbaToHSL = rgbaToHSL;\nconst rgbaToHSLA = (rgba) => {\n let [r, g, b, a] = rgba.match(/\\d+(\\.\\d+)?/g).map(Number);\n r /= 255;\n g /= 255;\n b /= 255;\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n let h, s, l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\n else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n break;\n }\n h /= 6;\n }\n return `hsla(${Math.round(h * 360)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%, ${a})`;\n};\nexports.rgbaToHSLA = rgbaToHSLA;\nconst rgbaToCMYK = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const k = 1 - Math.max(r, g, b);\n const c = (1 - r - k) / (1 - k) || 0;\n const m = (1 - g - k) / (1 - k) || 0;\n const y = (1 - b - k) / (1 - k) || 0;\n return `cmyk(${Math.round(c * 100)}%, ${Math.round(m * 100)}%, ${Math.round(y * 100)}%, ${Math.round(k * 100)}%)`;\n};\nexports.rgbaToCMYK = rgbaToCMYK;\nconst rgbaToHSV = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const delta = max - min;\n let h, s, v = max;\n if (delta === 0) {\n h = 0;\n }\n else if (max === r) {\n h = 60 * (((g - b) / delta) % 6);\n }\n else if (max === g) {\n h = 60 * (((b - r) / delta) + 2);\n }\n else {\n h = 60 * (((r - g) / delta) + 4);\n }\n h = h < 0 ? h + 360 : h;\n s = max === 0 ? 0 : (delta / max);\n return `hsv(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(v * 100)}%)`;\n};\nexports.rgbaToHSV = rgbaToHSV;\n","import * as React from 'react';\nexport const defaultPrefixCls = 'ant';\nexport const defaultIconPrefixCls = 'anticon';\nexport const Variants = ['outlined', 'borderless', 'filled', 'underlined'];\nconst defaultGetPrefixCls = (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) {\n return customizePrefixCls;\n }\n return suffixCls ? `${defaultPrefixCls}-${suffixCls}` : defaultPrefixCls;\n};\n// zombieJ: 🚨 Do not pass `defaultRenderEmpty` here since it will cause circular dependency.\nexport const ConfigContext = /*#__PURE__*/React.createContext({\n // We provide a default function for Context without provider\n getPrefixCls: defaultGetPrefixCls,\n iconPrefixCls: defaultIconPrefixCls\n});\nexport const {\n Consumer: ConfigConsumer\n} = ConfigContext;\nconst EMPTY_OBJECT = {};\n/**\n * Get ConfigProvider configured component props.\n * This help to reduce bundle size for saving `?.` operator.\n * Do not use as `useMemo` deps since we do not cache the object here.\n *\n * NOTE: not refactor this with `useMemo` since memo will cost another memory space,\n * which will waste both compare calculation & memory.\n */\nexport function useComponentConfig(propName) {\n const context = React.useContext(ConfigContext);\n const {\n getPrefixCls,\n direction,\n getPopupContainer,\n renderEmpty\n } = context;\n const propValue = context[propName];\n return {\n classNames: EMPTY_OBJECT,\n styles: EMPTY_OBJECT,\n ...propValue,\n getPrefixCls,\n direction,\n getPopupContainer,\n renderEmpty\n };\n}","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.3\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n // START: Modifications:\n // Apply guards for `Object.create(null)` handling. See:\n // - https://github.com/FormidableLabs/react-fast-compare/issues/64\n // - https://github.com/epoberezkin/fast-deep-equal/issues/49\n if (a.valueOf !== Object.prototype.valueOf && typeof a.valueOf === 'function' && typeof b.valueOf === 'function') return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString && typeof a.toString === 'function' && typeof b.toString === 'function') return a.toString() === b.toString();\n // END: Modifications\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\n\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\n\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\n\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\n\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\n\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\n\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\n\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\n\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\n\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function (obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\").replace(/\"/g, \"&quot;\").replace(/'/g, \"&#x27;\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n // Special case for innerHTML which doesn't work lowercased\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n });\n\n // Update seen tags with tags from this instance\n var keys = Object.keys(instanceSeenTags);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\n\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n\n updateTitle(title, titleAttributes);\n\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n\n var addedTags = {};\n var removedTags = {};\n\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n\n cb && cb();\n\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\");\n\n // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"</\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps;\n\n // assigning into an array to define toString function on it\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, { title: title, titleAttributes: titleAttributes }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}</\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n\n\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"<img src='http://mysite.com/js/test.js'\"}]\n * @param {Function} onChangeClientState: \"(newState) => console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\n\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\n\nexport default HelmetExport;\nexport { HelmetExport as Helmet };\n","'use strict';\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","function n(n,t){(null==t||t>n.length)&&(t=n.length);for(var r=0,e=Array(t);r<t;r++)e[r]=n[r];return e}function t(t,r){var e=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(e)return(e=e.call(t)).next.bind(e);if(Array.isArray(t)||(e=function(t,r){if(t){if(\"string\"==typeof t)return n(t,r);var e={}.toString.call(t).slice(8,-1);return\"Object\"===e&&t.constructor&&(e=t.constructor.name),\"Map\"===e||\"Set\"===e?Array.from(t):\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?n(t,r):void 0}}(t))||r&&t&&\"number\"==typeof t.length){e&&(t=e);var u=0;return function(){return u>=t.length?{done:!0}:{done:!1,value:t[u++]}}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}function r(n){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},r(n)}function e(){try{var n=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(n){}return(e=function(){return!!n})()}function u(n,t){return u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,t){return n.__proto__=t,n},u(n,t)}function i(n){var t=\"function\"==typeof Map?new Map:void 0;return i=function(n){if(null===n||!function(n){try{return-1!==Function.toString.call(n).indexOf(\"[native code]\")}catch(t){return\"function\"==typeof n}}(n))return n;if(\"function\"!=typeof n)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==t){if(t.has(n))return t.get(n);t.set(n,i)}function i(){return function(n,t,r){if(e())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,t);var o=new(n.bind.apply(n,i));return r&&u(o,r.prototype),o}(n,arguments,r(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),u(i,n)},i(n)}var o=Symbol.for(\"@ts-pattern/matcher\"),c=Symbol.for(\"@ts-pattern/isVariadic\"),a=\"@ts-pattern/anonymous-select-key\",f=function(n){return Boolean(n&&\"object\"==typeof n)},l=function(n){return n&&!!n[o]},s=function n(r,e,u){if(l(r)){var i=r[o]().match(e),a=i.matched,s=i.selections;return a&&s&&Object.keys(s).forEach(function(n){return u(n,s[n])}),a}if(f(r)){if(!f(e))return!1;if(Array.isArray(r)){if(!Array.isArray(e))return!1;for(var h,v=[],p=[],g=[],y=t(r.keys());!(h=y()).done;){var d=r[h.value];l(d)&&d[c]?g.push(d):g.length?p.push(d):v.push(d)}if(g.length){if(g.length>1)throw new Error(\"Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.\");if(e.length<v.length+p.length)return!1;var m=e.slice(0,v.length),b=0===p.length?[]:e.slice(-p.length),w=e.slice(v.length,0===p.length?Infinity:-p.length);return v.every(function(t,r){return n(t,m[r],u)})&&p.every(function(t,r){return n(t,b[r],u)})&&(0===g.length||n(g[0],w,u))}return r.length===e.length&&r.every(function(t,r){return n(t,e[r],u)})}return Reflect.ownKeys(r).every(function(t){var i,c=r[t];return(t in e||l(i=c)&&\"optional\"===i[o]().matcherType)&&n(c,e[t],u)})}return Object.is(e,r)},h=function n(t){var r,e,u;return f(t)?l(t)?null!=(r=null==(e=(u=t[o]()).getSelectionKeys)?void 0:e.call(u))?r:[]:Array.isArray(t)?v(t,n):v(Object.values(t),n):[]},v=function(n,t){return n.reduce(function(n,r){return n.concat(t(r))},[])};function p(){var n=[].slice.call(arguments);if(1===n.length){var t=n[0];return function(n){return s(t,n,function(){})}}if(2===n.length)return s(n[0],n[1],function(){});throw new Error(\"isMatching wasn't given the right number of arguments: expected 1 or 2, received \"+n.length+\".\")}function g(n){return Object.assign(n,{optional:function(){return d(n)},and:function(t){return O(n,t)},or:function(t){return S(n,t)},select:function(t){return void 0===t?x(n):x(t,n)}})}function y(n){return Object.assign(function(n){var t;return Object.assign(n,((t={})[Symbol.iterator]=function(){var t,r=0,e=[{value:Object.assign(n,((t={})[c]=!0,t)),done:!1},{done:!0,value:void 0}];return{next:function(){var n;return null!=(n=e[r++])?n:e.at(-1)}}},t))}(n),{optional:function(){return y(d(n))},select:function(t){return y(void 0===t?x(n):x(t,n))}})}function d(n){var t;return g(((t={})[o]=function(){return{match:function(t){var r={},e=function(n,t){r[n]=t};return void 0===t?(h(n).forEach(function(n){return e(n,void 0)}),{matched:!0,selections:r}):{matched:s(n,t,e),selections:r}},getSelectionKeys:function(){return h(n)},matcherType:\"optional\"}},t))}var m=function(n,r){for(var e,u=t(n);!(e=u()).done;)if(!r(e.value))return!1;return!0},b=function(n,r){for(var e,u=t(n.entries());!(e=u()).done;){var i=e.value;if(!r(i[1],i[0]))return!1}return!0},w=function(n,r){for(var e,u=t(Reflect.ownKeys(n));!(e=u()).done;){var i=e.value;if(!r(i,n[i]))return!1}return!0};function O(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){var r={},e=function(n,t){r[n]=t};return{matched:t.every(function(t){return s(t,n,e)}),selections:r}},getSelectionKeys:function(){return v(t,h)},matcherType:\"and\"}},n))}function S(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){var r={},e=function(n,t){r[n]=t};return v(t,h).forEach(function(n){return e(n,void 0)}),{matched:t.some(function(t){return s(t,n,e)}),selections:r}},getSelectionKeys:function(){return v(t,h)},matcherType:\"or\"}},n))}function j(n){var t;return(t={})[o]=function(){return{match:function(t){return{matched:Boolean(n(t))}}}},t}function x(){var n,t=[].slice.call(arguments),r=\"string\"==typeof t[0]?t[0]:void 0,e=2===t.length?t[1]:\"string\"==typeof t[0]?void 0:t[0];return g(((n={})[o]=function(){return{match:function(n){var t,u=((t={})[null!=r?r:a]=n,t);return{matched:void 0===e||s(e,n,function(n,t){u[n]=t}),selections:u}},getSelectionKeys:function(){return[null!=r?r:a].concat(void 0===e?[]:h(e))}}},n))}function A(n){return!0}function E(n){return\"number\"==typeof n}function _(n){return\"string\"==typeof n}function K(n){return\"bigint\"==typeof n}var P=g(j(A)),N=g(j(A)),T=P,B=function n(t){return Object.assign(g(t),{startsWith:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.startsWith(e)}))));var e},endsWith:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.endsWith(e)}))));var e},minLength:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length>=n})}(r)))},length:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length===n})}(r)))},maxLength:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length<=n})}(r)))},includes:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.includes(e)}))));var e},regex:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&Boolean(n.match(e))}))));var e}})}(j(_)),k=function n(t){return Object.assign(g(t),{between:function(r,e){return n(O(t,function(n,t){return j(function(r){return E(r)&&n<=r&&t>=r})}(r,e)))},lt:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t<n})}(r)))},gt:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t>n})}(r)))},lte:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t<=n})}(r)))},gte:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t>=n})}(r)))},int:function(){return n(O(t,j(function(n){return E(n)&&Number.isInteger(n)})))},finite:function(){return n(O(t,j(function(n){return E(n)&&Number.isFinite(n)})))},positive:function(){return n(O(t,j(function(n){return E(n)&&n>0})))},negative:function(){return n(O(t,j(function(n){return E(n)&&n<0})))}})}(j(E)),M=function n(t){return Object.assign(g(t),{between:function(r,e){return n(O(t,function(n,t){return j(function(r){return K(r)&&n<=r&&t>=r})}(r,e)))},lt:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t<n})}(r)))},gt:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t>n})}(r)))},lte:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t<=n})}(r)))},gte:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t>=n})}(r)))},positive:function(){return n(O(t,j(function(n){return K(n)&&n>0})))},negative:function(){return n(O(t,j(function(n){return K(n)&&n<0})))}})}(j(K)),I=g(j(function(n){return\"boolean\"==typeof n})),R=g(j(function(n){return\"symbol\"==typeof n})),W=g(j(function(n){return null==n})),z=g(j(function(n){return null!=n})),F={__proto__:null,matcher:o,optional:d,array:function(){var n,t=[].slice.call(arguments);return y(((n={})[o]=function(){return{match:function(n){if(!Array.isArray(n))return{matched:!1};if(0===t.length)return{matched:!0};var r=t[0],e={};if(0===n.length)return h(r).forEach(function(n){e[n]=[]}),{matched:!0,selections:e};var u=function(n,t){e[n]=(e[n]||[]).concat([t])};return{matched:n.every(function(n){return s(r,n,u)}),selections:e}},getSelectionKeys:function(){return 0===t.length?[]:h(t[0])}}},n))},set:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(!(n instanceof Set))return{matched:!1};var r={};if(0===n.size)return{matched:!0,selections:r};if(0===t.length)return{matched:!0};var e=function(n,t){r[n]=(r[n]||[]).concat([t])},u=t[0];return{matched:m(n,function(n){return s(u,n,e)}),selections:r}},getSelectionKeys:function(){return 0===t.length?[]:h(t[0])}}},n))},map:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(!(n instanceof Map))return{matched:!1};var r={};if(0===n.size)return{matched:!0,selections:r};var e,u=function(n,t){r[n]=(r[n]||[]).concat([t])};if(0===t.length)return{matched:!0};if(1===t.length)throw new Error(\"`P.map` wasn't given enough arguments. Expected (key, value), received \"+(null==(e=t[0])?void 0:e.toString()));var i=t[0],o=t[1];return{matched:b(n,function(n,t){var r=s(i,t,u),e=s(o,n,u);return r&&e}),selections:r}},getSelectionKeys:function(){return 0===t.length?[]:[].concat(h(t[0]),h(t[1]))}}},n))},record:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(null===n||\"object\"!=typeof n||Array.isArray(n))return{matched:!1};var r;if(0===t.length)throw new Error(\"`P.record` wasn't given enough arguments. Expected (value) or (key, value), received \"+(null==(r=t[0])?void 0:r.toString()));var e={},u=function(n,t){e[n]=(e[n]||[]).concat([t])},i=1===t.length?[B,t[0]]:t,o=i[0],c=i[1];return{matched:w(n,function(n,t){var r=\"string\"!=typeof n||Number.isNaN(Number(n))?null:Number(n),e=null!==r&&s(o,r,u),i=s(o,n,u),a=s(c,t,u);return(i||e)&&a}),selections:e}},getSelectionKeys:function(){return 0===t.length?[]:[].concat(h(t[0]),h(t[1]))}}},n))},intersection:O,union:S,not:function(n){var t;return g(((t={})[o]=function(){return{match:function(t){return{matched:!s(n,t,function(){})}},getSelectionKeys:function(){return[]},matcherType:\"not\"}},t))},when:j,select:x,any:P,unknown:N,_:T,string:B,number:k,bigint:M,boolean:I,symbol:R,nullish:W,nonNullable:z,instanceOf:function(n){return g(j(function(n){return function(t){return t instanceof n}}(n)))},shape:function(n){return g(j(p(n)))}},L=/*#__PURE__*/function(n){var t,r;function e(t){var r,e;try{e=JSON.stringify(t)}catch(n){e=t}return(r=n.call(this,\"Pattern matching error: no pattern matches value \"+e)||this).input=void 0,r.input=t,r}return r=n,(t=e).prototype=Object.create(r.prototype),t.prototype.constructor=t,u(t,r),e}(/*#__PURE__*/i(Error)),U={matched:!1,value:void 0},C=/*#__PURE__*/function(){function n(n,t){this.input=void 0,this.state=void 0,this.input=n,this.state=t}var t=n.prototype;return t.with=function(){var t=this,r=[].slice.call(arguments);if(this.state.matched)return this;var e=r[r.length-1],u=[r[0]],i=void 0;3===r.length&&\"function\"==typeof r[1]?i=r[1]:r.length>2&&u.push.apply(u,r.slice(1,r.length-1));var o=!1,c={},f=function(n,t){o=!0,c[n]=t},l=!u.some(function(n){return s(n,t.input,f)})||i&&!Boolean(i(this.input))?U:{matched:!0,value:e(o?a in c?c[a]:c:this.input,this.input)};return new n(this.input,l)},t.when=function(t,r){if(this.state.matched)return this;var e=Boolean(t(this.input));return new n(this.input,e?{matched:!0,value:r(this.input,this.input)}:U)},t.otherwise=function(n){return this.state.matched?this.state.value:n(this.input)},t.exhaustive=function(n){return void 0===n&&(n=J),this.state.matched?this.state.value:n(this.input)},t.run=function(){return this.exhaustive()},t.returnType=function(){return this},t.narrow=function(){return this},n}();function J(n){throw new L(n)}exports.NonExhaustiveError=L,exports.P=F,exports.Pattern=F,exports.isMatching=p,exports.match=function(n){return new C(n,U)};\n//# sourceMappingURL=index.cjs.map\n","import type { PropsWithChildren } from \"react\";\n\nconst VerticalContent = (props: PropsWithChildren) => {\n\treturn <div style={{ marginTop: -70 }}>{props.children}</div>;\n};\n\nexport default VerticalContent;\n","import { Flex, Space } from \"antd\";\nimport type React from \"react\";\nimport Typography from \"../../ui/Typography/Typography\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"./VerticalLayout\";\nimport type {\n\tAcaciaBreadcrumbProps,\n\tAcaciaTabsProps,\n} from \"../../ui/interfaces\";\nimport Breadcrumb from \"../../ui/Breadcrumb/Breadcrumb\";\nimport { useAcaciaToken } from \"../../../tokens/useAcaciaToken\";\nimport Tabs from \"../../ui/Tabs/Tabs\";\n\nexport interface VerticalHeaderProps {\n\tpageTitle: string | React.ReactNode;\n\tpageSubtitle: string | React.ReactNode;\n\tpageIcon?: React.ReactNode;\n\trightSideItems?: React.ReactNode;\n\tleftSideItems?: React.ReactNode;\n\tbreadcrumbs?: AcaciaBreadcrumbProps;\n\ttabs?: Omit<AcaciaTabsProps, \"type\">;\n}\n\nconst VerticalHeader = ({ ...props }: VerticalHeaderProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst token = useAcaciaToken();\n\t// render tabs\n\tconst renderTabs = () => {\n\t\treturn (\n\t\t\t<Tabs\n\t\t\t\t{...props.tabs}\n\t\t\t\tstyle={{ marginTop: \"0.5rem\" }}\n\t\t\t\ttype={isNestedInLayout ? \"header\" : \"page\"}\n\t\t\t/>\n\t\t);\n\t};\n\n\treturn (\n\t\t<div style={{ padding: isNestedInLayout ? 0 : 20 }}>\n\t\t\t<Flex\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\tstyle={{ paddingTop: isNestedInLayout ? \"1rem\" : 0 }}\n\t\t\t>\n\t\t\t\t<Space orientation=\"vertical\" size={0} style={{ display: \"flex\" }}>\n\t\t\t\t\t{props.breadcrumbs && <Breadcrumb {...props.breadcrumbs} />}\n\t\t\t\t\t<Typography.Title\n\t\t\t\t\t\tlevel={2}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tmargin: 0,\n\t\t\t\t\t\t\tcolor: isNestedInLayout\n\t\t\t\t\t\t\t\t? context?.mainTextColor\n\t\t\t\t\t\t\t\t: token.token.colorText,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.pageTitle}\n\t\t\t\t\t</Typography.Title>\n\t\t\t\t\t<Typography.Text\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tcolor: isNestedInLayout\n\t\t\t\t\t\t\t\t? context?.accentColor\n\t\t\t\t\t\t\t\t: token.token.colorText,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.pageSubtitle}\n\t\t\t\t\t</Typography.Text>\n\t\t\t\t\t{/* // if its nested, then its under the left hand side items */}\n\t\t\t\t\t{props.tabs && isNestedInLayout && renderTabs()}\n\t\t\t\t</Space>\n\t\t\t\t{props.rightSideItems}\n\t\t\t</Flex>\n\t\t\t{/* // if its not nested, then remove it under the left hand side items and place it on its own */}\n\t\t\t{props.tabs && !isNestedInLayout && renderTabs()}\n\t\t</div>\n\t);\n};\n\nexport default VerticalHeader;\n","import HexagonHeader from \"../../../assets/header1.jpg\";\nimport StripedHeader from \"../../../assets/header2.jpg\";\nimport MysticalHeader from \"../../../assets/header3.jpg\";\nimport ClassicBody from \"../../../assets/body.png\";\nimport MysticalBody from \"../../../assets/body3.png\";\nimport SubmarineBody from \"../../../assets/body2.png\";\n\nimport type { AcaciaMenuProps, AcaciaThemes } from \"../../ui/interfaces\";\nimport { match } from \"ts-pattern\";\nimport {\n\tChildren,\n\tcreateContext,\n\tuseCallback,\n\ttype PropsWithChildren,\n} from \"react\";\nimport { Layout } from \"antd\";\nimport {\n\tadjustBrightness,\n\tgenerateSteppedGradient,\n\tgetLuminance,\n\tisLight,\n} from \"@mirawision/colorize\";\nimport { Helmet } from \"react-helmet\";\nimport { renderBlackOrWhiteText } from \"../../../utils/colors.util\";\nimport { parseBackgroundColors } from \"../../../utils/parseBackgroundColors\";\nimport Menu from \"../../ui/Menu/Menu\";\nimport DefaultLogo from \"../../../theme/defaultLogo\";\nimport VerticalHeader from \"./VerticalHeader\";\nimport VerticalContent from \"./VerticalContent\";\nimport {\n\tgetThemeGradients,\n\tisVerticalContent,\n\tisVerticalHeader,\n} from \"../utils\";\nimport { useTheme } from \"antd-style\";\n\ninterface LayoutProps {\n\theaderBackgroundProps?: HeaderBackgroundProps;\n\tmenuProps?: Omit<AcaciaMenuProps, \"mode\">;\n\tdocumentHeadLabel?: string;\n\tmainTextColor?: string; // main color of the layout\n\tcontentBackgroundProps?: ContentBackgroundProps;\n}\n\n// theme background image props for the header\ntype BackgroundImage =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"custom-image\"; src: string };\n\n// background fill\ntype BackgroundFill =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"gradient\"; colors: string[] }\n\t| { type: \"gradient-css\"; css: string };\n\n// interface to handle header background - props allowed for users to change picture, change theme or custom gradient entirely\ninterface HeaderBackgroundProps {\n\theaderBackgroundImage?: BackgroundImage;\n\theaderBackgroundFill?: BackgroundFill;\n}\n\n// theme background image props for the content bg\ntype ContentBackgroundImage =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"custom-image\"; src: string };\n\n// background fill for\ntype ContentBackgroundFill =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"solid\"; color: string };\n\ninterface ContentBackgroundProps {\n\tcontentBackgroundImage?: ContentBackgroundImage;\n\tcontentBackgroundFill?: ContentBackgroundFill;\n}\n\nconst getThemedBackgroundPicture = (theme: AcaciaThemes) => {\n\treturn match(theme)\n\t\t.with(\"classic\", () => HexagonHeader)\n\t\t.with(\"submarine\", () => StripedHeader)\n\t\t.with(\"mystical\", () => MysticalHeader)\n\t\t.exhaustive();\n};\n\nconst getThemedContentBackgroundPicture = (theme: AcaciaThemes) => {\n\treturn match(theme)\n\t\t.with(\"classic\", () => ClassicBody)\n\t\t.with(\"submarine\", () => SubmarineBody)\n\t\t.with(\"mystical\", () => MysticalBody)\n\t\t.exhaustive();\n};\n\nexport const VerticalLayoutContext = createContext<{\n\tmainTextColor: string;\n\taccentColor: string;\n\tgradients: string[] | null;\n} | null>(null);\n\nconst VerticalLayout = ({\n\theaderBackgroundProps: {\n\t\theaderBackgroundImage = { type: \"theme\", theme: \"classic\" },\n\t\theaderBackgroundFill = { type: \"theme\", theme: \"classic\" },\n\t} = {},\n\t...props\n}: PropsWithChildren<LayoutProps>) => {\n\tconst defaultTheme = useTheme().appTheme; // get the app theme\n\n\t// get the first bg color\n\tconst getFirstBackgroundHexColor = () => {\n\t\treturn match(headerBackgroundFill)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemeGradients[theme][0];\n\t\t\t\t}\n\n\t\t\t\treturn getThemeGradients[defaultTheme][0];\n\t\t\t})\n\t\t\t.with({ type: \"gradient\" }, ({ colors }) => {\n\t\t\t\treturn colors[0];\n\t\t\t})\n\t\t\t.with({ type: \"gradient-css\" }, ({ css }) => {\n\t\t\t\t// get the background color\n\n\t\t\t\tconst colors = parseBackgroundColors(css);\n\t\t\t\tconst firstColor = colors.colors[0];\n\t\t\t\tif (firstColor.format === \"hex\" || firstColor.format === \"rgb\") {\n\t\t\t\t\treturn firstColor.value;\n\t\t\t\t}\n\t\t\t\tconsole.error(\"Named colors not allowed, return HEX or RGB\");\n\t\t\t\treturn \"#1d4042\";\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\tconst firstBackgroundColor = getFirstBackgroundHexColor();\n\n\tconst accentColor =\n\t\tgetLuminance(firstBackgroundColor) > 0.4\n\t\t\t? adjustBrightness(firstBackgroundColor, -45)\n\t\t\t: adjustBrightness(\n\t\t\t\t\tfirstBackgroundColor,\n\t\t\t\t\tisLight(firstBackgroundColor) ? -45 : 45,\n\t\t\t\t); // for the accent color - subtitles and tabs. based on the color of the theme background\n\n\tconst getLinearGradient = useCallback((strings: string[]) => {\n\t\tif (strings.length === 3) {\n\t\t\treturn `linear-gradient(45deg, ${strings[0]}f2 14%, ${strings[1]}f5 51%, ${strings[2]}f2 81%)`;\n\t\t}\n\t\tconsole.error(\"Need to have 3 strings\");\n\t\treturn null;\n\t}, []);\n\n\t// get the correct css\n\tconst getBackgroundCSS = () => {\n\t\treturn match(headerBackgroundFill)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(getThemeGradients[theme]),\n\t\t\t\t\t\tstops: getThemeGradients[theme],\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tcss: getLinearGradient(getThemeGradients[defaultTheme]),\n\t\t\t\t\tstops: getThemeGradients.classic,\n\t\t\t\t};\n\t\t\t})\n\t\t\t.with({ type: \"gradient\" }, ({ colors }) => {\n\t\t\t\t// given a string [], generate the gradient. if given two. then generate the inbetween. Do not accept length with 1\n\n\t\t\t\tif (colors.length === 2) {\n\t\t\t\t\tconst gradient = generateSteppedGradient(colors[0], colors[1], 3);\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(gradient),\n\t\t\t\t\t\tstops: gradient,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tif (colors.length === 3) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(colors),\n\t\t\t\t\t\tstops: colors,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tconsole.error(\n\t\t\t\t\t\"Either give a string[] with 2 HEX colors or 3 HEX colors\",\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tcss: getLinearGradient([\"1d4042\", \"37717c\", \"418384\"]),\n\t\t\t\t\tstops: [\"#1d4042\", \"#37717c\", \"#418384\"],\n\t\t\t\t};\n\t\t\t})\n\t\t\t.with({ type: \"gradient-css\" }, ({ css }) => {\n\t\t\t\t// users write the css straight\n\t\t\t\tconst colors = parseBackgroundColors(css);\n\n\t\t\t\treturn {\n\t\t\t\t\tcss: css,\n\t\t\t\t\tstops: colors.colors.map((item) => item.value),\n\t\t\t\t};\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\tconst { css, stops } = getBackgroundCSS();\n\n\t// for each type of header - the way to get background image changes\n\tconst getBackgroundImage = () => {\n\t\treturn match(headerBackgroundImage)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemedBackgroundPicture(theme);\n\t\t\t\t}\n\t\t\t\treturn getThemedBackgroundPicture(defaultTheme);\n\t\t\t})\n\t\t\t.with({ type: \"custom-image\" }, ({ src }) => {\n\t\t\t\treturn src;\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\t// for each type of header - the way to get background image changes\n\tconst getContentBackgroundImage = () => {\n\t\treturn match(headerBackgroundImage)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemedContentBackgroundPicture(theme);\n\t\t\t\t}\n\t\t\t\treturn getThemedContentBackgroundPicture(defaultTheme);\n\t\t\t})\n\t\t\t.with({ type: \"custom-image\" }, ({ src }) => {\n\t\t\t\treturn src;\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\t// get children under VerticalLayout\n\tconst allChildren = Children.toArray(props.children);\n\n\t// get the header children, so can apply the correct CSS to it\n\tconst headerChildren = allChildren.filter(isVerticalHeader);\n\n\t// get the content children as this needs to be overlapped with the bg\n\tconst contentChildren = allChildren.filter(isVerticalContent);\n\n\treturn (\n\t\t<VerticalLayoutContext.Provider\n\t\t\tvalue={{\n\t\t\t\tmainTextColor:\n\t\t\t\t\tprops.mainTextColor ?? renderBlackOrWhiteText(firstBackgroundColor), // by default it will try to render white/black text for content\n\t\t\t\taccentColor: accentColor,\n\t\t\t\tgradients: stops,\n\t\t\t}}\n\t\t>\n\t\t\t<Helmet>\n\t\t\t\t<title>{props.documentHeadLabel}</title>\n\t\t\t</Helmet>\n\n\t\t\t<Layout style={{ minHeight: \"100vh\" }}>\n\t\t\t\t<div\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundImage: `${css}, url(${getBackgroundImage()})`,\n\t\t\t\t\t\tbackgroundRepeat: \"no-repeat\",\n\t\t\t\t\t\tbackgroundSize: \"cover\",\n\t\t\t\t\t\tbackgroundPosition: \"center\",\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<div style={{ padding: \"1rem 2rem 3rem 2rem\" }}>\n\t\t\t\t\t\t<Layout.Header style={{ display: \"flex\", alignItems: \"center\" }}>\n\t\t\t\t\t\t\t<DefaultLogo />\n\t\t\t\t\t\t\t{props.menuProps && (\n\t\t\t\t\t\t\t\t<Menu\n\t\t\t\t\t\t\t\t\tmode=\"horizontal\"\n\t\t\t\t\t\t\t\t\t{...props.menuProps}\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\t\tminWidth: 0,\n\t\t\t\t\t\t\t\t\t\tfontSize: 16,\n\t\t\t\t\t\t\t\t\t\tfontWeight: 700,\n\t\t\t\t\t\t\t\t\t\t...props.menuProps.style,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Layout.Header>\n\t\t\t\t\t\t{headerChildren}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<Layout.Content\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackground: `#f3f3f3 url(${getContentBackgroundImage()}) top left`,\n\t\t\t\t\t\tpadding: \"2rem\",\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{contentChildren}\n\t\t\t\t</Layout.Content>\n\t\t\t</Layout>\n\t\t</VerticalLayoutContext.Provider>\n\t);\n};\n\nVerticalLayout.VerticalHeader = VerticalHeader;\nVerticalLayout.VerticalContent = VerticalContent;\nexport default VerticalLayout;\n","import { isValidElement } from \"react\";\nimport VerticalHeader from \"./VerticalLayout/VerticalHeader\";\nimport VerticalContent from \"./VerticalLayout/VerticalContent\";\nimport type { AcaciaThemes } from \"../ui/interfaces\";\n\nexport const isVerticalHeader = (child: React.ReactNode) =>\n\tisValidElement(child) && child.type === VerticalHeader;\n\nexport const isVerticalContent = (child: React.ReactNode) =>\n\tisValidElement(child) && child.type === VerticalContent;\n\n// gradients for the default themes - classic, mystical\nexport const getThemeGradients: Record<AcaciaThemes, string[]> = {\n\tclassic: [\"#1d4042\", \"#37717c\", \"#418384\"],\n\tmystical: [\"#bb8c97\", \"#9287a9\", \"#262144\"],\n\tsubmarine: [\"#1d4042\", \"#37717c\", \"#418384\"],\n};\n","/**\n * @description A Badge normally appears in proximity to notifications or user avatars with eye-catching appeal, typically displaying unread messages count\n */\n\nimport type { AcaciaAvatarProps } from \"../interfaces\";\nimport { Avatar as AntdAvatar } from \"antd\";\nimport Typography from \"../Typography/Typography\";\nimport Space from \"../Space/Space\";\n\nconst Avatar = ({ ...props }: AcaciaAvatarProps) => {\n\treturn (\n\t\t<Space size={0}>\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\t...(props.userId && { background: \"#ebe8e8\", borderRadius: 20 }),\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<AntdAvatar\n\t\t\t\t\tstyle={{ marginRight: props.userId && -3, ...props.style }}\n\t\t\t\t\t{...props}\n\t\t\t\t>\n\t\t\t\t\t{props.children}\n\t\t\t\t</AntdAvatar>\n\n\t\t\t\t{props.userId && (\n\t\t\t\t\t<Typography.Text strong style={{ paddingInline: 8 }}>\n\t\t\t\t\t\t{props.userId.toUpperCase()}\n\t\t\t\t\t</Typography.Text>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</Space>\n\t);\n};\n\nexport default Avatar;\n","/**\n * @description A Badge normally appears in proximity to notifications or user avatars with eye-catching appeal, typically displaying unread messages count\n */\n\nimport type { AcaciaBadgeProps } from \"../interfaces\";\nimport { Badge as AntdBadge } from \"antd\";\nimport Ribbon from \"./Ribbon\";\n\nconst Badge = ({ ...props }: AcaciaBadgeProps) => {\n\treturn <AntdBadge {...props}>{props.children}</AntdBadge>;\n};\n\nBadge.Ribbon = Ribbon;\nexport default Badge;\n","import { Badge as AntdBadge } from \"antd\";\nimport type { AcaciaRibbonProps } from \"../interfaces\";\n\n/**\n * @description An extension of the Badge\n */\n\nconst Ribbon = ({ ...props }: AcaciaRibbonProps) => {\n\treturn <AntdBadge.Ribbon {...props} />;\n};\n\nexport default Ribbon;\n","import { Breadcrumb as AntdBreadcrumb, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaBreadcrumbProps } from \"../interfaces\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useContext } from \"react\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\n\n/**\n * A breadcrumb displays the current location within a hierarchy. It allows going back to states higher up in the hierarchy.\n */\n\nconst Breadcrumb = ({ ...props }: AcaciaBreadcrumbProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\n\tconst defaultTheme = useGetDefaultTheme(); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tBreadcrumb: {\n\t\t\t\t\t\t...defaultTheme.components.Breadcrumb,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tlinkColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\titemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\tlastItemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\tseparatorColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdBreadcrumb items={props.items} style={{ letterSpacing: 1.5 }} />\n\t\t</ConfigProvider>\n\t);\n};\n\nexport default Breadcrumb;\n","/**\n * @description A button means an operation (or a series of operations). Clicking a button will trigger corresponding business logic.\n */\nimport { Button as AntdButton } from \"antd\";\nimport type { AcaciaButtonProps } from \"../interfaces\";\n\nconst Button = ({ children, ...props }: AcaciaButtonProps) => {\n\treturn <AntdButton {...props}>{children}</AntdButton>;\n};\nexport default Button;\n","import { useMemo } from \"react\";\nimport type { AcaciaCardProps } from \"../interfaces\";\nimport { Card as AntdCard, Typography } from \"antd\";\nimport { useCardStyles } from \"./useCardStyles\";\nimport HexagonBackground from \"../../../assets/cardheader.png\";\nimport StripedBackground from \"../../../assets/cardheader2.png\";\nimport MysticalBackground from \"../../../assets/cardheader3.png\";\nimport { match } from \"ts-pattern\";\nimport { useTheme } from \"antd-style\";\nimport { generate } from \"@ant-design/colors\";\nimport { tint } from \"@mirawision/colorize\";\nconst Card = ({\n\theaderBackgroundTheme = \"classic\",\n\t...props\n}: AcaciaCardProps) => {\n\tconst cardStyles = useCardStyles().styles;\n\tconst token = useTheme();\n\n\tconst levelOneColors = generate(token.colorPrimary);\n\n\tconst lightShadeColor = tint(token.colorPrimary, 0.7); // for the left side gradient\n\n\tconst titleStyles = useMemo(() => {\n\t\tconst styles: {\n\t\t\tmarginBlock: number;\n\t\t\tfontSize?: string | number;\n\t\t} = {\n\t\t\tmarginBlock: 0,\n\t\t};\n\n\t\tif (props.size === \"small\") {\n\t\t\tstyles.fontSize = 18;\n\t\t}\n\n\t\treturn styles;\n\t}, [props.size]);\n\n\tconst subtitleStyles = useMemo(() => {\n\t\tconst styles: {\n\t\t\tcolor: string;\n\t\t\tfontWeight: number;\n\t\t\tfontSize?: string | number;\n\t\t} = {\n\t\t\tcolor: token.colorTextTertiary,\n\t\t\tfontWeight: 500,\n\t\t};\n\n\t\tif (props.size === \"small\") {\n\t\t\tstyles.fontSize = 13;\n\t\t}\n\n\t\treturn styles;\n\t}, [props.size]);\n\n\tconst getThemedBackground = () => {\n\t\treturn match(headerBackgroundTheme)\n\t\t\t.with(\"classic\", () => HexagonBackground)\n\t\t\t.with(\"submarine\", () => StripedBackground)\n\t\t\t.with(\"mystical\", () => MysticalBackground)\n\t\t\t.exhaustive();\n\t};\n\n\treturn (\n\t\t<AntdCard\n\t\t\tstyles={{\n\t\t\t\theader: {\n\t\t\t\t\tpadding: \"20px\",\n\t\t\t\t\tbackground: `linear-gradient(70deg, ${lightShadeColor}CC 80%, ${levelOneColors[4]}69 80%), url(${props.headerBackgroundPicture ?? getThemedBackground()})`,\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\twhiteSpace: \"normal\",\n\t\t\t\t},\n\t\t\t}}\n\t\t\tclassName={`${cardStyles.card}`}\n\t\t\t{...props}\n\t\t\ttitle={\n\t\t\t\tprops.title && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Typography.Title level={4} style={titleStyles}>\n\t\t\t\t\t\t\t{props.title}\n\t\t\t\t\t\t</Typography.Title>\n\t\t\t\t\t\t{props.subtitle && (\n\t\t\t\t\t\t\t<Typography.Text style={subtitleStyles}>\n\t\t\t\t\t\t\t\t{props.subtitle}\n\t\t\t\t\t\t\t</Typography.Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)\n\t\t\t}\n\t\t/>\n\t);\n};\n\nexport default Card;\n","import { createStyles } from \"antd-style\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\n\nexport const useCardStyles = () => {\n\tconst { shadow } = useAcaciaConfig();\n\n\treturn createStyles(({ css }) => ({\n\t\tcard: css`\n && {\n box-shadow: ${shadow.card};\n }\n }\n `,\n\t}))();\n};\n","/**\n * @description Collect user's choices.\n *\n * When To Use\n * Used for selecting multiple values from several options.\n * If you use only one checkbox, it is the same as using Switch to toggle between two states. The difference is that Switch will trigger the state change directly, but Checkbox just marks the state as changed and this needs to be submitted.\n */\n\nimport { Checkbox as AntdCheckbox } from \"antd\";\nimport type { AcaciaCheckboxProps } from \"../interfaces\";\nimport CheckboxGroup from \"./CheckboxGroup\";\n\nconst Checkbox = ({ ...props }: AcaciaCheckboxProps) => {\n\treturn <AntdCheckbox {...props} />;\n};\n\nCheckbox.Group = CheckboxGroup;\n\nexport default Checkbox;\n","/**\n * @description Collect user's choices.\n * We can use Checkbox and Grid in Checkbox.Group, to implement complex layout.\n */\n\nimport { Checkbox as AntdCheckbox } from \"antd\";\nimport type { CheckboxGroupProps } from \"antd/es/checkbox\";\n\nconst CheckboxGroup = ({ ...props }: CheckboxGroupProps) => {\n\treturn <AntdCheckbox.Group {...props} />;\n};\n\nexport default CheckboxGroup;\n","import { ConfigProvider as AntdConfigProvider } from \"antd\";\nimport { ConfigContext } from \"antd/es/config-provider/context\";\nimport { useAcaciaColors } from \"../../../hooks/useAcaciaColors\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\n\nimport { ThemeProvider } from \"antd-style\";\nimport { CustomTheme, type NewToken } from \"../../../theme/customTheme\";\nimport type { AcaciaConfigProviderProps } from \"../interfaces\";\nimport { useGetDefaultTheme } from \"./defaultTheme\";\n\nconst ConfigProvider = ({ ...props }: AcaciaConfigProviderProps) => {\n\tconst { colors, generate } = useAcaciaColors();\n\tconst { borderRadius, padding } = useAcaciaConfig();\n\n\tconst defaultTheme = useGetDefaultTheme();\n\n\tconst mergedToken = {\n\t\t...CustomTheme,\n\t\t...props.customToken,\n\t};\n\n\treturn (\n\t\t<ThemeProvider<NewToken> customToken={mergedToken}>\n\t\t\t<AntdConfigProvider\n\t\t\t\t{...props}\n\t\t\t\ttheme={{\n\t\t\t\t\ttoken: { ...defaultTheme.token, ...props.theme?.token },\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t...defaultTheme.components,\n\t\t\t\t\t\t...props.theme?.components,\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{props.children}\n\t\t\t</AntdConfigProvider>\n\t\t</ThemeProvider>\n\t);\n};\n\nConfigProvider.ConfigContext = ConfigContext;\nexport default ConfigProvider;\n","import type { ThemeConfig } from \"antd\";\nimport { useAcaciaColors } from \"../../../hooks/useAcaciaColors\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\nimport { useMemo } from \"react\";\nimport { grey } from \"@ant-design/colors\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\nimport \"@fontsource-variable/inter\";\nimport \"@fontsource-variable/outfit\";\nimport \"@fontsource-variable/roboto-flex\";\n\n// classic theme\n\nexport function useGetDefaultTheme(): ThemeConfig {\n\tconst { colors } = useAcaciaColors();\n\tconst { borderRadius, padding } = useAcaciaConfig();\n\n\treturn useMemo<ThemeConfig>(() => {\n\t\treturn {\n\t\t\ttoken: {\n\t\t\t\tcolorPrimary: \"#427e7b\", // your custom default\n\t\t\t\tcolorText: \"#080808\",\n\t\t\t\tcolorTextTertiary: \"#757C7C\",\n\t\t\t\tfontFamily:\n\t\t\t\t\t\"'Inter Variable', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\",\n\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t},\n\t\t\tcomponents: {\n\t\t\t\tButton: {\n\t\t\t\t\tdefaultBg: `${colors.offWhite}`,\n\t\t\t\t\tdefaultBorderColor: `${colors.border.button}`,\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tcolorWarning: colors.warning.primary,\n\t\t\t\t\tcolorError: colors.error.primary,\n\t\t\t\t\tcolorErrorBg: colors.error.fill,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tLayout: {\n\t\t\t\t\theaderBg: \"transparent\",\n\t\t\t\t\theaderHeight: undefined,\n\t\t\t\t\theaderPadding: \"10px 0px 0px 0px\",\n\t\t\t\t},\n\t\t\t\tCheckbox: {\n\t\t\t\t\tlineWidth: 2,\n\t\t\t\t},\n\t\t\t\tSelect: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tInput: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t\tcolorWarning: colors.warning.primary,\n\t\t\t\t\tcolorError: colors.error.primary,\n\t\t\t\t\tcolorBgTextHover: colors.link.hover,\n\t\t\t\t},\n\t\t\t\tPagination: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tTypography: {\n\t\t\t\t\tfontSizeHeading1: typographyUtil.fontSize.h1,\n\t\t\t\t\tfontSizeHeading2: typographyUtil.fontSize.h2,\n\t\t\t\t\tfontSizeHeading3: typographyUtil.fontSize.h3,\n\t\t\t\t\tfontSizeHeading4: typographyUtil.fontSize.h4,\n\t\t\t\t\tfontSizeHeading5: typographyUtil.fontSize.h5,\n\t\t\t\t\tfontWeightStrong: 600,\n\t\t\t\t},\n\t\t\t\tCard: {\n\t\t\t\t\tborderRadius: borderRadius.card,\n\t\t\t\t\tborderRadiusLG: borderRadius.card,\n\t\t\t\t\tborderRadiusSM: borderRadius.card,\n\t\t\t\t\tborderRadiusXS: borderRadius.card,\n\t\t\t\t},\n\t\t\t\tTag: {\n\t\t\t\t\tborderRadius: borderRadius.tag,\n\t\t\t\t\tborderRadiusLG: borderRadius.tag,\n\t\t\t\t\tborderRadiusSM: borderRadius.tag,\n\t\t\t\t\tborderRadiusXS: borderRadius.tag,\n\t\t\t\t},\n\t\t\t\tTabs: {\n\t\t\t\t\thorizontalItemPadding: padding.tabs,\n\t\t\t\t\thorizontalItemPaddingLG: padding.tabs,\n\t\t\t\t\thorizontalItemPaddingSM: padding.tabs,\n\t\t\t\t\tcolorBorderSecondary: grey[1],\n\t\t\t\t},\n\t\t\t\tDropdown: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tMenu: {\n\t\t\t\t\tpopupBg: \"grey\",\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}, [colors, borderRadius, padding]);\n}\n","import { DatePicker as AntdDatePicker } from \"antd\";\nimport type { AcaciaDatePickerProps } from \"../interfaces\";\nimport RangePicker from \"./RangePicker\";\n\n/**\n * @description To select or input a date.\n */\n\nconst DatePicker = ({ ...props }: AcaciaDatePickerProps) => {\n\treturn <AntdDatePicker {...props} />;\n};\n\nDatePicker.RangePicker = RangePicker;\n\nexport default DatePicker;\n","import { DatePicker as AntdDatePicker, type GetProps } from \"antd\";\n\ntype AntdDateRangePicker = GetProps<typeof AntdDatePicker.RangePicker>;\n\nconst RangePicker = ({ ...props }: AntdDateRangePicker) => {\n\treturn <AntdDatePicker.RangePicker {...props} />;\n};\nexport default RangePicker;\n","/**\n * @description A dropdown list\n */\n\nimport { Dropdown as AntdDropdown } from \"antd\";\nimport DropdownButton from \"./DropdownButton\";\nimport type { AcaciaDropdownProps } from \"../interfaces\";\n\nconst Dropdown = ({ ...props }: AcaciaDropdownProps) => {\n\treturn <AntdDropdown {...props} />;\n};\n\nDropdown.Button = DropdownButton;\nexport default Dropdown;\n","import { Dropdown as AntdDropdown } from \"antd\";\nimport type { AcaciaDropdownButtonProps } from \"../interfaces\";\n\nconst DropdownButton = ({ children, ...props }: AcaciaDropdownButtonProps) => {\n\treturn <AntdDropdown.Button {...props}>{children}</AntdDropdown.Button>;\n};\n\nexport default DropdownButton;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\n/**\n * Styles\n */\n\n/**\n * Components\n */\nimport TextArea from \"./TextArea\";\nimport Search from \"./Search\";\nimport Password from \"./Password\";\nimport { useInputStyles } from \"./useInputStyles\";\nimport OTP from \"./OTP\";\n\n/**\n * @description A button means an operation (or a series of operations). Clicking a button will trigger corresponding business logic.\n */\n\nconst Input = ({ children, ...props }: AcaciaInputProps) => {\n\tconst inputStyles = useInputStyles().styles;\n\treturn (\n\t\t<AntdInput className={`${inputStyles.input}`} {...props}>\n\t\t\t{children}\n\t\t</AntdInput>\n\t);\n};\n\nInput.TextArea = TextArea;\nInput.Search = Search;\nInput.Password = Password;\nInput.OTP = OTP;\n\nexport default Input;\n","import { Input as AntdInput, type GetProps } from \"antd\";\n\ntype OTPProps = GetProps<typeof AntdInput.OTP>;\n\nconst OTP = ({ ...props }: OTPProps) => {\n\treturn <AntdInput.OTP {...props} />;\n};\n\nexport default OTP;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\nconst Password = ({ ...props }: AcaciaInputProps) => {\n\treturn <AntdInput.Password {...props} />;\n};\nexport default Password;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\nconst Search = ({ ...props }: AcaciaInputProps) => {\n\treturn <AntdInput.Search {...props} />;\n};\n\nexport default Search;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputTextAreaProps } from \"../interfaces\";\nimport { useTextAreaStyles } from \"./useInputStyles\";\n\nconst TextArea = ({ ...props }: AcaciaInputTextAreaProps) => {\n\tconst textareaStyles = useTextAreaStyles().styles;\n\treturn (\n\t\t<AntdInput.TextArea className={`${textareaStyles.textarea}`} {...props} />\n\t);\n};\n\nexport default TextArea;\n","import { createStyles } from \"antd-style\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\n\nexport const useInputStyles = () => {\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\tinput: css`\n & .${prefixCls}-input-show-count-suffix {\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 700;\n }\n `,\n\t}))();\n};\n\nexport const useTextAreaStyles = () => {\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\ttextarea: css`\n & .${prefixCls}-input-data-count {\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 700;\n }\n `,\n\t}))();\n};\n","/**\n * @description A versatile menu for navigation.\n */\n\nimport { Menu as AntdMenu, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaMenuProps } from \"../interfaces\";\nimport { useContext, useMemo } from \"react\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport {\n\tadjustBrightness,\n\tblendMultipleColors,\n\tchangeOpacity,\n\tisValidHEXColor,\n\tshade,\n} from \"@mirawision/colorize\";\nimport { match } from \"ts-pattern\";\nimport { hexToRGBA } from \"../../../utils/colors.util\";\nimport { createStyles } from \"antd-style\";\n\nconst useStyle = createStyles(({ css, prefixCls }) => ({\n\titem: css`\n\t\t&.${prefixCls}-menu-submenu {\n\t\t\tpadding: 10px,\n\t\t\tborderBottom:none,\t\n\t\t\tmarginInline: 3px,\n\t\t}\n `,\n}));\n\nconst Menu = ({ showRightBorder = true, ...props }: AcaciaMenuProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\tconst { styles: menuStyles } = useStyle();\n\n\tconst editOpacity = (type: \"hex\" | \"rgba\", color: string) => {\n\t\treturn match(type)\n\t\t\t.with(\"hex\", () => {\n\t\t\t\treturn hexToRGBA(color, 30);\n\t\t\t})\n\t\t\t.with(\"rgba\", () => {\n\t\t\t\treturn changeOpacity(color, 0.3);\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\tconst selectedItemColor = useMemo(() => {\n\t\tif (isNestedInLayout) {\n\t\t\tconst blended = blendMultipleColors(\n\t\t\t\tcontext.gradients.map((item) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcolor: item,\n\t\t\t\t\t\tweight: 1,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst color = shade(blended, 0.5);\n\n\t\t\treturn {\n\t\t\t\tmenuColor: context?.accentColor,\n\t\t\t\tmenuBgColor: isValidHEXColor(color)\n\t\t\t\t\t? editOpacity(\"hex\", color)\n\t\t\t\t\t: editOpacity(\"rgba\", color),\n\t\t\t};\n\t\t}\n\t}, [context?.accentColor, isNestedInLayout]);\n\n\tconst defaultTheme = useGetDefaultTheme(); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tMenu: {\n\t\t\t\t\t\t...defaultTheme.components.Menu,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tactiveBarHeight: 0,\n\t\t\t\t\t\t\t\t\titemBg: \"transparent\",\n\t\t\t\t\t\t\t\t\thorizontalItemSelectedColor: selectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t\thorizontalItemSelectedBg: selectedItemColor.menuBgColor,\n\t\t\t\t\t\t\t\t\tactiveBarBorderWidth: 0,\n\t\t\t\t\t\t\t\t\titemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\thorizontalItemBorderRadius: 3,\n\t\t\t\t\t\t\t\t\titemHoverColor: adjustBrightness(\n\t\t\t\t\t\t\t\t\t\tselectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t\t\t10,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsubMenuItemBg: selectedItemColor.menuBgColor,\n\t\t\t\t\t\t\t\t\tsubMenuItemSelectedColor: selectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdMenu\n\t\t\t\tclassNames={{\n\t\t\t\t\titem: menuStyles.item,\n\t\t\t\t}}\n\t\t\t\tstyles={{\n\t\t\t\t\troot: {\n\t\t\t\t\t\t...(isNestedInLayout && {\n\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\tdisplay: \"flex\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\tborderBottom: \"none\",\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tborderRight: showRightBorder ? \"\" : \"none\",\n\t\t\t\t\t},\n\t\t\t\t\titem: {\n\t\t\t\t\t\t...(isNestedInLayout && {\n\t\t\t\t\t\t\tpadding: \"8px 10px\",\n\t\t\t\t\t\t\tborderBottom: \"none\",\n\t\t\t\t\t\t\tmarginInline: \"3px\",\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</ConfigProvider>\n\t);\n};\nexport default Menu;\n","/**\n * @description A long list can be divided into several pages using Pagination, and only one page will be loaded at a time.\n */\n\nimport { Pagination as AntdPagination, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaPaginationProps } from \"../interfaces\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport { renderBlackOrWhiteText } from \"../../../utils/colors.util\";\nimport { tint } from \"@mirawision/colorize\";\n\nconst Pagination = ({\n\tselectedStyle = \"solid\",\n\t...props\n}: AcaciaPaginationProps) => {\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\n\tconst defaultTheme = useGetDefaultTheme(); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tPagination: {\n\t\t\t\t\t\t...defaultTheme.components.Pagination,\n\t\t\t\t\t\t...(selectedStyle === \"solid\"\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\titemActiveBg: globalToken.token.colorPrimary,\n\t\t\t\t\t\t\t\t\titemActiveColor: renderBlackOrWhiteText(\n\t\t\t\t\t\t\t\t\t\tglobalToken.token.colorPrimary,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\titemActiveColorHover: tint(\n\t\t\t\t\t\t\t\t\t\trenderBlackOrWhiteText(globalToken.token.colorPrimary),\n\t\t\t\t\t\t\t\t\t\t0.3,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdPagination {...props} />\n\t\t</ConfigProvider>\n\t);\n};\nexport default Pagination;\n","import Space from \"../Space/Space\";\nimport type React from \"react\";\nimport { usePanelStyles } from \"./usePanelStyles\";\nimport type { CSSProperties } from \"react\";\n\ninterface PanelProps {\n\tchildren: React.ReactNode;\n\tposition?: \"left\" | \"right\" | \"none\";\n\tfooter?: React.ReactNode;\n\tclassNames?: {\n\t\touterContainerClassName?: string;\n\t\tpanelBaseClassName?: string;\n\t\tpanelBodyClassName?: string;\n\t\tpanelFooterClassName?: string;\n\t};\n\tstyles?: {\n\t\touterContainerStyles?: CSSProperties;\n\t\tpanelBaseStyles?: CSSProperties;\n\t\tpanelBodyStyles?: CSSProperties;\n\t\tpanelFooterStyles?: CSSProperties;\n\t};\n}\n\nexport default function Panel({\n\tposition = \"left\",\n\t...props\n}: Readonly<PanelProps>) {\n\tconst { styles, cx } = usePanelStyles();\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cx(\n\t\t\t\tposition !== \"none\" && styles.outerPanel,\n\t\t\t\tposition === \"left\" && styles.outerPanelLeft,\n\t\t\t\tposition === \"right\" && styles.outerPanelRight,\n\t\t\t\tprops?.classNames?.outerContainerClassName,\n\t\t\t)}\n\t\t\tstyle={{ ...props?.styles?.outerContainerStyles }}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cx(styles.panelBase, props?.classNames?.panelBaseClassName)}\n\t\t\t\tstyle={{ ...props?.styles?.panelBaseStyles }}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\tstyles.panelBody,\n\t\t\t\t\t\tprops?.classNames?.panelBodyClassName,\n\t\t\t\t\t)}\n\t\t\t\t\tstyle={{ ...props?.styles?.panelBodyStyles }}\n\t\t\t\t>\n\t\t\t\t\t<Space orientation=\"vertical\">{props.children}</Space>\n\t\t\t\t</div>\n\t\t\t\t{props.footer && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\tstyles.panelFooter,\n\t\t\t\t\t\t\tprops?.classNames?.panelFooterClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tstyle={{ ...props?.styles?.panelFooterStyles }}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.footer}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { createStyles } from \"antd-style\";\n\nexport const usePanelStyles = createStyles(({ css }) => {\n\tconst outerPanelBase = css`\n position: relative;\n z-index: 2;\n &::before {\n content: \"\";\n position: absolute;\n width: 80%;\n height: 12px;\n top: -7px;\n z-index: -1;\n border-radius: 3px 6px 6px 0;\n background: #9cafb7;\n }\n `;\n\n\tconst panelBase = css`\n border-radius: 3px;\n background: #EFF3F3;\n box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;\n `;\n\n\tconst panelBody = css`\n padding: 1rem; \n `;\n\n\tconst panelFooter = css`\n background: #e2e7e8;\n border-top: 1px solid #dadada;\n `;\n\n\treturn {\n\t\touterPanel: outerPanelBase,\n\t\touterPanelRight: css`\n ${outerPanelBase}\n &::before {\n right: 0;\n }\n `,\n\t\touterPanelLeft: css`\n ${outerPanelBase}\n &::before {\n left: 0;\n }\n `,\n\t\tpanelBase: panelBase,\n\t\tpanelBody: panelBody,\n\t\tpanelFooter: css`\n ${panelBody}\n ${panelFooter}\n `,\n\t};\n});\n","import { Radio as AntdRadio } from \"antd\";\nimport type { RadioButtonProps } from \"antd/es/radio/radioButton\";\n\nconst RadioButton = ({ ...props }: RadioButtonProps) => {\n\treturn <AntdRadio.Button {...props} />;\n};\n\nexport default RadioButton;\n","import { Radio as AntdRadio, type RadioProps } from \"antd\";\nimport RadioGroup from \"./RadioGroup\";\nimport RadioButton from \"./Button\";\n\n/**\n * @description A radio is used to select a single state from multiple options.\n */\n\nconst Radio = ({ ...props }: RadioProps) => {\n\treturn <AntdRadio {...props} />;\n};\n\nRadio.Group = RadioGroup;\nRadio.Button = RadioButton;\nexport default Radio;\n","import type { RadioGroupProps } from \"antd\";\nimport { Radio as AntdRadio } from \"antd\";\n\nconst RadioGroup = ({ ...props }: RadioGroupProps) => {\n\treturn <AntdRadio.Group {...props} />;\n};\n\nexport default RadioGroup;\n","import { Segmented as AntdSegmented } from \"antd\";\nimport type { AcaciaSegmentedProps } from \"../interfaces\";\n\n/**\n * @description\n * Segmented is used when displaying multiple options and user can select a single option or\n * when switching the selected option, the content of the associated area changes.\n */\n\nconst Segmented = ({ ...props }: AcaciaSegmentedProps) => {\n\treturn <AntdSegmented {...props} />;\n};\n\nexport default Segmented;\n","import { Select as AntdSelect } from \"antd\";\nimport type { AcaciaSelectProps } from \"../interfaces\";\n\n/**\n * @description Select component to select value from options.\n */\n\nconst Select = ({ ...props }: AcaciaSelectProps) => {\n\treturn <AntdSelect {...props} />;\n};\nexport default Select;\n","import { Space as AntdSpace } from \"antd\";\nimport type { AcaciaSpaceProps } from \"../interfaces\";\n\n/**\n * @description Space component set the component spacing\n */\n\nconst Space = ({ ...props }: AcaciaSpaceProps) => {\n\treturn <AntdSpace {...props} style={{ display: \"flex\", ...props.styles }} />;\n};\nexport default Space;\n","import { Switch as AntdSwitch } from \"antd\";\nimport type { AcaciaSwitchProps } from \"../interfaces\";\n\n/**\n * @description A switch is used if you need to represent the switching between two states or on-off state.\n */\n\nconst Switch = ({ ...props }: AcaciaSwitchProps) => {\n\treturn <AntdSwitch {...props} />;\n};\n\nexport default Switch;\n","import type { AcaciaTabsProps } from \"../interfaces\";\nimport { Tabs as AntdTabs, ConfigProvider, theme } from \"antd\";\nimport { adjustBrightness, isLight } from \"@mirawision/colorize\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nexport default function Tabs({ type = \"line\", ...props }: AcaciaTabsProps) {\n\tconst context = useContext(VerticalLayoutContext);\n\tconst isNestedInLayout = Boolean(context); // for when tabs are nested in Layout\n\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\n\tconst defaultTheme = useGetDefaultTheme(); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: {\n\t\t\t\t\t...defaultTheme.token,\n\t\t\t\t\t...globalToken.token,\n\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tcolorBorderSecondary: `${adjustBrightness(\n\t\t\t\t\t\t\t\t\tcontext.mainTextColor,\n\t\t\t\t\t\t\t\t\tisLight(context.mainTextColor) ? -15 : 15,\n\t\t\t\t\t\t\t\t)} !important`,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t: {}),\n\t\t\t\t},\n\t\t\t\tcomponents: {\n\t\t\t\t\tTabs: {\n\t\t\t\t\t\t...defaultTheme.components.Tabs,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\titemHoverColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemColor: context.accentColor,\n\t\t\t\t\t\t\t\t\tinkBarColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemActiveColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemSelectedColor: context.accentColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdTabs {...props} tabBarGutter={0} />\n\t\t</ConfigProvider>\n\t);\n}\n","import { Tag as AntdTag } from \"antd\";\nimport {\n\tAcaciaCustomColors,\n\tisValidCustomColor,\n\ttype AcaciaColors,\n\ttype AcaciaTagProps,\n} from \"../interfaces\";\n\n/**\n * A Tag is used for categorizing or markup.\n */\n\nconst Tag = ({ ...props }: AcaciaTagProps) => {\n\t// return custom colors if found the correct type\n\tfunction renderColor(color: AcaciaColors) {\n\t\tif (isValidCustomColor(color)) {\n\t\t\treturn AcaciaCustomColors[color].background;\n\t\t}\n\t\treturn color;\n\t}\n\treturn <AntdTag {...props} color={renderColor(props.color)} />;\n};\n\nexport default Tag;\n","import { DatePicker as AntdDatePicker } from \"antd\";\nimport type { AcaciaTimePickerProps } from \"../interfaces\";\nimport TimeRangePicker from \"./TimeRangePicker\";\n\nconst TimePicker = ({ ...props }: AcaciaTimePickerProps) => {\n\treturn <AntdDatePicker {...props} />;\n};\n\nTimePicker.RangePicker = TimeRangePicker;\nexport default TimePicker;\n","import { TimePicker as AntdTimePicker } from \"antd\";\nimport type { AcaciaTimeRangePickerProps } from \"../interfaces\";\n\nconst TimeRangePicker = ({ ...props }: AcaciaTimeRangePickerProps) => {\n\treturn <AntdTimePicker.RangePicker {...props} />;\n};\n\nexport default TimeRangePicker;\n","import { Typography as AntdTypography } from \"antd\";\n\nimport { useTypographyStyles } from \"./useTypographyStyles\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\nimport type {\n\tAcaciaBasicTypographyProps,\n\tAcaciaParagraphProps,\n\tAcaciaTextProps,\n\tAcaciaTitleProps,\n} from \"../interfaces\";\n\nconst TypographyToken = {\n\tfontSizeHeading1: typographyUtil.fontSize.h1,\n\tfontSizeHeading2: typographyUtil.fontSize.h2,\n\tfontSizeHeading3: typographyUtil.fontSize.h3,\n\tfontSizeHeading4: typographyUtil.fontSize.h4,\n\tfontSizeHeading5: typographyUtil.fontSize.h5,\n\tfontWeightStrong: 600,\n};\n\nconst Title = ({\n\tchildren,\n\tlevel = 1,\n\tcolor,\n\t...antdProps\n}: AcaciaTitleProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Title\n\t\t\tclassName={`\n\t\t\t\t\t${typoStyles.common}\n\t\t\t\t\t${typoStyles.title}\n\t\t\t\t\t${typoStyles[`titleH${level}`]}\n\t\t\t\t`}\n\t\t\tlevel={level}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Title>\n\t);\n};\n\nconst Text = ({\n\tchildren,\n\tlevel = 2,\n\tcolor,\n\t...antdProps\n}: AcaciaTextProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.text} \n\t\t\t\t${typoStyles[`textBody${level}`]}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Emphasis = ({ children, color, ...props }: AcaciaTextProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.emphasis} \n\t\t\t`}\n\t\t\tcolor={color}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n};\n\nconst Caption = ({\n\tchildren,\n\tcolor,\n\t...antdProps\n}: AcaciaBasicTypographyProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.caption} \n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Overline = ({\n\tchildren,\n\tcolor,\n\t...antdProps\n}: AcaciaBasicTypographyProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.overline} \n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Paragraph = ({ children, color, ...antdProps }: AcaciaParagraphProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.textBody2} \n\t\t\t\t${typoStyles.paragraph}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\n/**\n * Basic text writing, including headings, body text, lists, and more.\n *\n * When To Use:\n * - When need to display a title or paragraph contents in Articles/Blogs/Notes.\n * - When you need copyable/editable/ellipsis texts.\n */\n\nconst Typography = () => {\n\treturn <AntdTypography />;\n};\n\nTypography.Text = Text;\nTypography.Title = Title;\nTypography.Caption = Caption;\nTypography.Overline = Overline;\nTypography.Paragraph = Paragraph;\nTypography.Emphasis = Emphasis;\n\nexport default Typography;\n","import { useTheme, createStyles } from \"antd-style\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\n\nexport const useTypographyStyles = (color?: string) => {\n\tconst token = useTheme();\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\tcommon: css`\n &.${prefixCls}-typography {\n margin-block: 0;\n line-height: 1.5em;\n \n ${\n\t\t\t\t\t\tcolor\n\t\t\t\t\t\t\t? `\n color: ${color};\n `\n\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t}\n }\n `,\n\t\ttitle: css`\n font-family: ${token.headingFontFamily};\n `,\n\t\ttitleH1: css`\n letter-spacing: ${typographyUtil.letterSpacing.h1};\n `,\n\t\ttitleH2: css`\n letter-spacing: ${typographyUtil.letterSpacing.h2};\n `,\n\t\ttitleH3: css`\n letter-spacing: ${typographyUtil.letterSpacing.h3};\n `,\n\t\ttitleH4: css`\n letter-spacing: ${typographyUtil.letterSpacing.h4};\n `,\n\t\ttitleH5: css`\n letter-spacing: ${typographyUtil.letterSpacing.h5};\n \n &.${prefixCls}-typography {\n font-weight: 600;\n display: flex;\n align-items: center;\n }\n \n &::before {\n display: inline-block;\n content: \"\";\n height: 5px;\n width: 5px;\n background-color: ${token.colorPrimary};\n vertical-align: super;\n margin-right: 10px;\n opacity: 0.6;\n }\n `,\n\t\ttext: css`\n letter-spacing: ${typographyUtil.letterSpacing.default};\n `,\n\t\temphasis: css`\n display: contents;\n font-size: inherit;\n font-weight: 600;\n `,\n\t\ttextBody1: css`\n font-size: ${typographyUtil.fontSize.body1}px;\n font-weight: 500;\n opacity: 0.88;\n letter-spacing: ${typographyUtil.letterSpacing.body1};\n `,\n\t\ttextBody2: css`\n letter-spacing: ${typographyUtil.letterSpacing.default};\n `,\n\t\tparagraph: css`\n display: block;\n margin-bottom: 20px;\n `,\n\t\tcaption: css`\n letter-spacing: ${typographyUtil.letterSpacing.caption};\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 500;\n `,\n\t\toverline: css`\n letter-spacing: ${typographyUtil.letterSpacing.overline};\n font-size: ${typographyUtil.fontSize.overline}px;\n font-weight: 600;\n opacity: 0.88;\n text-transform: uppercase;\n \n &&.${prefixCls}-typography {\n margin-bottom: 0;\n }\n `,\n\t}))();\n};\n","import type {\n\tAvatarProps,\n\tBreadcrumbProps,\n\tButtonProps,\n\tCardProps,\n\tTypographyProps,\n\tTabsProps,\n\tRadioProps,\n\tSwitchProps,\n\tBadgeProps,\n\tCheckboxProps,\n\tSegmentedProps,\n\tStepsProps,\n\tSelectProps,\n\tFormProps,\n\tFormItemProps,\n\tDatePickerProps,\n\tMenuProps,\n\tTimePickerProps,\n\tThemeConfig,\n\tTimeRangePickerProps,\n\tTagProps,\n\tConfigProviderProps,\n\tSpaceProps,\n} from \"antd\";\n\nimport type { TextProps } from \"antd/es/typography/Text\";\nimport type { TitleProps } from \"antd/es/typography/Title\";\nimport type { ParagraphProps } from \"antd/es/typography/Paragraph\";\nimport type { InputProps } from \"antd/es/input/Input\";\nimport type { PaginationProps } from \"antd/es/pagination/Pagination\";\nimport type { TextAreaProps } from \"antd/es/input\";\nimport type { RibbonProps } from \"antd/es/badge/Ribbon\";\nimport type { NewToken } from \"../../theme/customTheme\";\nimport type {\n\tPresetColorType,\n\tPresetStatusColorType,\n} from \"antd/es/_util/colors\";\nimport type { LiteralUnion } from \"antd/es/_util/type\";\nimport type { TabsType } from \"antd/es/tabs\";\nimport type {\n\tBreadcrumbItemType,\n\tBreadcrumbSeparatorType,\n} from \"antd/es/breadcrumb/Breadcrumb\";\nimport type { DropdownButtonProps, DropdownProps } from \"antd/es/dropdown\";\n\n/**\n * props for the acacia themes\n */\nexport type AcaciaThemes = \"classic\" | \"submarine\" | \"mystical\";\n\n/**\n * Props for Acacia Breadcrumb component\n * @see https://ant.design/components/breadcrumb\n */\n\nexport type AcaciaBreadcrumbItemType = BreadcrumbItemType & {\n\ticon?: React.ReactNode;\n\t/**\n\t * @default end\n\t */\n\ticonPosition?: \"start\" | \"end\";\n};\n\nexport type AcaciaItemType = Partial<\n\tAcaciaBreadcrumbItemType & BreadcrumbSeparatorType\n>;\n\nexport interface AcaciaBreadcrumbProps extends BreadcrumbProps {\n\titems?: AcaciaItemType[];\n\t/**\n\t * @default /\n\t */\n\tseparator?: \"/\";\n}\n\n/**\n * Props for Palette Avatar component\n * @see https://ant.design/components/avatar\n *\n * Custom props:\n * @property {string} [userId] - id of the user. if you want to show the user id in the avatar, set this property\n * @property {\"solid\" | \"transparent\"} [type=solid] - determines the avatar type. 'solid' is for solid background while 'transparent' is for transparent background\n * @property {() => void} [onClick] - click handler, to handle showing of\n */\nexport interface AcaciaAvatarProps extends AvatarProps {\n\tuserId?: string;\n\ttype?: \"solid\" | \"transparent\";\n\tonClick?: () => void;\n}\n\n/**\n * Props for Acacia Button component\n * @see https://ant.design/components/button\n */\nexport interface AcaciaButtonProps extends ButtonProps {\n\t/** Set button color */\n\tcolor?:\n\t\t| \"default\"\n\t\t| \"primary\"\n\t\t| \"danger\"\n\t\t| \"blue\"\n\t\t| \"purple\"\n\t\t| \"cyan\"\n\t\t| \"green\"\n\t\t| \"magenta\"\n\t\t| \"pink\"\n\t\t| \"red\"\n\t\t| \"orange\"\n\t\t| \"yellow\"\n\t\t| \"volcano\"\n\t\t| \"geekblue\"\n\t\t| \"lime\"\n\t\t| \"gold\";\n\n\tvariant?: \"outlined\" | \"dashed\" | \"solid\" | \"filled\" | \"text\" | \"link\";\n\t/**\n\t * Button style type.\n\t * @default default\n\t */\n\ttype?: \"primary\" | \"dashed\" | \"link\" | \"text\" | \"default\";\n}\n\n/**\n * Props for Acacia Card component\n * @see https://ant.design/components/card\n *\n * custom props:\n * @property {boolean} [plainBody=false] - determines if the card should have plain body or textured body\n * @property {React.ReactNode | string} [title] - card header title\n * @property {React.ReactNode | string} [subtitle] - card header subtitle\n *\n */\nexport interface AcaciaCardProps extends CardProps {\n\t/**\n\t * content in the card\n\t */\n\tsubtitle?: React.ReactNode | string;\n\ttitle?: React.ReactNode | string;\n\tplainBody?: boolean;\n\t/**\n\t * custom background banner picture if decides not to use themes.\n\t * we are assuming that the picture is found under the public folder in nextjs\n\t * example usage:\n\t * headerBackgroundPicture: \"./test.png\"\n\t */\n\theaderBackgroundPicture?: string;\n\t/**\n\t * \tprovides 3 themes of card header background, and put hexagon as the default\n\t */\n\theaderBackgroundTheme?: AcaciaThemes;\n\ticon: React.ReactNode | string;\n}\n\n/**\n * Props for Typography component\n * @see https://ant.design/components/typography\n */\nexport interface AcaciaTypographyProps extends TypographyProps {}\n\n/**\n * Props for Acacia Title component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaTitleProps extends TitleProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Palette Text component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n * @property {1 | 2} [level=1] - level of the text\n */\nexport interface AcaciaTextProps extends TextProps {\n\tchildren: React.ReactNode;\n\tlevel?: 1 | 2;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Text component\n * @see https://ant.design/components/typography\n *\n */\nexport interface AcaciaEmphasisProps extends AcaciaTextProps {}\n\n/**\n * Props for Acacia Typography component\n * @see https://ant.design/components/typography\n *\n * custom Palette props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaBasicTypographyProps extends TextProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Paragraph component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaParagraphProps extends ParagraphProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Space component\n * @see https://ant.design/components/space\n *\n */\nexport interface AcaciaSpaceProps extends SpaceProps {}\n\n/**\n * Props for Acacia Pagination component\n * @see https://ant.design/components/pagination\n *\n */\nexport interface AcaciaPaginationProps extends PaginationProps {\n\t/**\n\t * @default \"solid\"\n\t */\n\tselectedStyle?: \"solid\" | \"outline\";\n}\n\n/**\n * Props for Acacia Input component\n * @see https://ant.design/components/input\n *\n */\nexport interface AcaciaInputProps extends InputProps {}\n\n/**\n * Props for Acacia Input Text Area component\n * @see https://ant.design/components/input#inputtextarea\n *\n */\nexport interface AcaciaInputTextAreaProps extends TextAreaProps {}\n\n/**\n * Props for Acacia Tabs component\n * @see https://ant.design/components/tabs\n *\n * custom props:\n * @property {\"page\" | \"header\"} [colorType=page] - determines the breadcrumb type. 'header' is for breadcrumb within the header while 'page' is for breadcrumb on the page itself\n */\n\ntype AcaciaTabsType = TabsType | \"page\" | \"header\";\n\nexport interface AcaciaTabsProps extends Omit<TabsProps, \"type\"> {\n\ttype: TabsType | \"page\" | \"header\";\n}\n\n/**\n * Props for Palette Radio component\n */\nexport interface AcaciaRadioProps extends RadioProps {}\n\n/**\n * Props for Acacia Switch component\n * @see https://ant.design/components/switch\n */\nexport interface AcaciaSwitchProps extends SwitchProps {}\n\n/**\n * Props for Acacia Badge component\n * @see https://ant.design/components/badge\n */\nexport interface AcaciaBadgeProps extends BadgeProps {}\n\n/**\n * Props for Acacia Badge.Ribbon component\n * @see https://ant.design/components/badge#badgeribbon\n */\nexport interface AcaciaRibbonProps extends RibbonProps {}\n\n/**\n * Props for Acacia Checkbox component\n * @see https://ant.design/components/checkbox\n */\nexport interface AcaciaCheckboxProps extends CheckboxProps {}\n\n/**\n * Props for Acacia Segmented component\n * @see https://ant.design/components/segmented\n */\nexport interface AcaciaSegmentedProps extends SegmentedProps {}\n\n/**\n * Props for Acacia Steps component\n * @see https://ant.design/components/steps\n */\nexport interface PaletteStepsProps extends StepsProps {}\n\n/**\n * Props for Acacia Select component\n * @see https://ant.design/components/select\n */\nexport interface AcaciaSelectProps extends SelectProps {}\n\n/**\n * Props for Acacia Panel component\n *\n * custom props:\n * @property {React.ReactNode} children - content in the panel\n */\nexport interface AcaciaPanelProps {\n\tchildren: React.ReactNode;\n}\n\n/**\n * Props for Acacia Form component\n * @see https://ant.design/components/form\n *\n */\nexport interface AcaciaFormProps extends FormProps {\n\tchildren: React.ReactNode;\n}\n\n/**\n * Props for Acacia Form.Item component\n * @see https://ant.design/components/form#formitem\n *\n * custom props:\n * @property {string | React.ReactNode} [infoCopy] - helper text under the form item\n */\nexport interface AcaciaFormItemProps extends FormItemProps {\n\tchildren: React.ReactNode;\n\tinfoCopy?: string | React.ReactNode;\n}\n\n/**\n * dropdown\n */\nexport interface AcaciaDropdownProps extends DropdownProps {}\nexport interface AcaciaDropdownButtonProps extends DropdownButtonProps {}\n\n/**\n * DATEPICKER\n */\nexport interface AcaciaDatePickerProps extends DatePickerProps {}\nexport interface AcaciaDateRangePickerProps extends TimeRangePickerProps {}\n\nexport interface AcaciaTimePickerProps extends TimePickerProps {}\n\nexport interface AcaciaTimeRangePickerProps extends TimeRangePickerProps {}\n\n/**\n * MENU\n */\nexport interface AcaciaMenuProps extends MenuProps {\n\t/**\n\t * @default true\n\t */\n\tshowRightBorder?: boolean;\n}\n\n/**\n * BASIC PANEL\n */\nexport interface AcaciaBasicPanelProps {\n\tchildren: React.ReactNode;\n\tbgColor?: string;\n}\n\nexport interface AcaciaConfigProviderProps extends ConfigProviderProps {\n\tchildren: React.ReactNode;\n\tcustomToken?: Partial<NewToken>;\n\ttheme?: ThemeConfig;\n}\n\n/**\n * TAG\n */\nexport const AcaciaCustomColors = {\n\t\"cobalt-blue\": { background: \"#2C62D5\", color: \"white\" },\n\t\"pastel-red\": { background: \"#DB3056\", color: \"white\" },\n};\n\nexport const AcaciaColorArray = [\"cobalt-blue\", \"pastel-red\"] as const;\nexport type AcaciaColorType = (typeof AcaciaColorArray)[number];\nexport type AcaciaColors = LiteralUnion<\n\tPresetColorType | PresetStatusColorType | AcaciaColorType\n>;\n\nexport const isValidCustomColor = (\n\tvalue: string,\n): value is (typeof AcaciaColorArray)[number] => {\n\treturn AcaciaColorArray.includes(value as any);\n};\n\n// extends the current Tag props and add more colors to the list\nexport interface AcaciaTagProps extends TagProps {\n\tcolor?: AcaciaColors;\n}\n\n// custom token for Acacia\nexport interface AcaciaCustomToken {\n\t/**\n\t * @nameEN Main font for the entire app\n\t * @descEN Font used for most elements in the app\n\t */\n\tfontFamily: string;\n\t/**\n\t * @nameEN Heading font for the entire app\n\t * @descEN Font used for headings in the app\n\t */\n\theadingFontFamily: string;\n\tcolors: {\n\t\t/**\n\t\t * @nameEN Main primary color of the app\n\t\t * @descEN Controls the primary color of all elements\n\t\t */\n\t\tprimary: string;\n\t\t/**\n\t\t * @nameEN Main color for the text\n\t\t * @descEN Controls the main color for the text elements\n\t\t */\n\t\tprimaryText: string;\n\t\t/**\n\t\t * @nameEN Main color for the caption text\n\t\t * @descEN Controls the color for the caption text elements\n\t\t */\n\t\tcaption: string;\n\t};\n\ttheme: {\n\t\tlightOnDark: boolean;\n\t\tbrand: string;\n\t\tgradient1: string;\n\t\tgradient2: string;\n\t\tgradient3: string;\n\t\tgradient4: string;\n\t\tcove: string;\n\t\taccent: string;\n\t\tbody: string;\n\t};\n\theader: {\n\t\timgUrl: string;\n\t};\n\tsidepanel: {\n\t\timgUrl: string;\n\t};\n\tpanel: {\n\t\tbgColor: string;\n\t};\n\tcard: {\n\t\tbgcolor: string;\n\t\tcontentbg: string;\n\t\theaderbg: string;\n\t};\n}\n","import { generate } from \"../utils/colors.util\";\nexport const useAcaciaColors = () => {\n\tconst colors = {\n\t\tprimaryGreen: \"#334F4E\",\n\t\tmystiqueBlack: \"#000\",\n\t\twhite: \"#FFF\",\n\t\toffWhite: \"#F9F9F9\",\n\t\tbrightGreen: \"#A4ED06\",\n\t\tneutralGrey: \"#BBBDBE\",\n\t\tlesserInk: \"#3D4040\",\n\t\tborder: {\n\t\t\tbutton: \"#B3B3B3\",\n\t\t\tcell: \"#CCC\",\n\t\t\tpage: \"#B3B3B3\",\n\t\t},\n\t\tlink: {\n\t\t\thover: \"#E5FAF6\",\n\t\t},\n\t\tsuccess: {\n\t\t\tprimary: \"#268C79\",\n\t\t\tfill: \"#E5FAF6\",\n\t\t\tstroke: \"#ADD8D0\",\n\t\t\temphasis: \"#00B996\",\n\t\t},\n\t\twarning: {\n\t\t\tprimary: \"#E46015\",\n\t\t\tfill: \"#FFF1E9\",\n\t\t\tstroke: \"#E9BA9F\",\n\t\t\temphasis: \"#FF6D1B\",\n\t\t},\n\t\terror: {\n\t\t\tprimary: \"#DB3056\",\n\t\t\tfill: \"#FFF0F3\",\n\t\t\tstroke: \"#FFBBCA\",\n\t\t\temphasis: \"#FF5C81\",\n\t\t},\n\t\tinfo: {\n\t\t\tprimary: \"#2C62D5\",\n\t\t\tfill: \"#EBF3FF\",\n\t\t\tstroke: \"#AFC9FF\",\n\t\t\temphasis: \"#296EFF\",\n\t\t},\n\t};\n\n\treturn { colors, generate };\n};\n","export const useAcaciaConfig = () => {\n\tconst borderRadius = {\n\t\tprimary: 3,\n\t\ttag: 20,\n\t\tavatar: 20,\n\t\tpanel: 5,\n\t\tcard: 5,\n\t};\n\n\tconst transition = {\n\t\tantdItem:\n\t\t\t\"border-color 0.3s, background 0.3s, padding 0.2s cubic-bezier(0.215, 0.61, 0.355, 1)\",\n\t};\n\n\tconst shadow = {\n\t\tcard: `rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, \n rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;`,\n\t};\n\n\tconst layout = {\n\t\txxlUtil: {\n\t\t\tpaddingInline: 60,\n\t\t\tpaddingBlock: 20,\n\t\t\tlogoMaxWidth: 120,\n\t\t},\n\t\txlUtil: {\n\t\t\tpaddingInline: 20,\n\t\t\tpaddingBlock: 20,\n\t\t\tlogoMaxWidth: 100,\n\t\t},\n\t};\n\n\tconst padding = {\n\t\ttabs: \"10px 20px\",\n\t};\n\n\treturn { borderRadius, layout, transition, shadow, padding };\n};\n","import { useEffect } from \"react\";\n\nexport const useFoucHandler = (id: string, delay?: number) => {\n const removeNoFouc = () => {\n if (typeof window !== undefined) {\n const noFouc = document.getElementById(id);\n\n if (noFouc) {\n noFouc.removeAttribute(\"id\");\n }\n }\n };\n\n useEffect(() => {\n setTimeout(() => {\n removeNoFouc();\n }, delay);\n }, []);\n};\n","import { useState, useEffect } from \"react\";\n\nexport const useScreenSize = (debounceTime = 200) => {\n let timeout: ReturnType<typeof setTimeout> | null;\n\n const [screenSize, setScreenSize] = useState({});\n\n useEffect(() => {\n const handleResize = () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n\n timeout = setTimeout(() => {\n if (typeof window !== \"undefined\") {\n setScreenSize({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n }\n }, debounceTime);\n };\n\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"resize\", handleResize);\n }\n\n // Clean up the event listener when the component unmounts\n return () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"resize\", handleResize);\n }\n };\n }, []);\n\n return screenSize;\n};\n\nexport default useScreenSize;\n","// components\n\nexport { default as Button } from \"./components/ui/Button/Button\";\nexport { default as Badge } from \"./components/ui/Badge/Badge\";\nexport { default as ConfigProvider } from \"./components/ui/ConfigProvider/ConfigProvider\";\nexport { default as Breadcrumb } from \"./components/ui/Breadcrumb/Breadcrumb\";\nexport { default as Checkbox } from \"./components/ui/Checkbox/Checkbox\";\nexport { default as Radio } from \"./components/ui/Radio/Radio\";\nexport { default as Segmented } from \"./components/ui/Segmented/Segmented\";\nexport { default as Select } from \"./components/ui/Select/Select\";\nexport { default as Switch } from \"./components/ui/Switch/Switch\";\nexport { default as Input } from \"./components/ui/Input/Input\";\nexport { default as Dropdown } from \"./components/ui/Dropdown/Dropdown\";\nexport { default as Pagination } from \"./components/ui/Pagination/Pagination\";\nexport { default as Typography } from \"./components/ui/Typography/Typography\";\nexport { default as TimePicker } from \"./components/ui/TimePicker/TimePicker\";\nexport { default as DatePicker } from \"./components/ui/DatePicker/DatePicker\";\nexport { default as Card } from \"./components/ui/Card/Card\";\nexport { default as Tag } from \"./components/ui/Tag/Tag\";\nexport { default as Tabs } from \"./components/ui/Tabs/Tabs\";\nexport { default as Avatar } from \"./components/ui/Avatar/Avatar\";\nexport { default as Menu } from \"./components/ui/Menu/Menu\";\nexport { default as Space } from \"./components/ui/Space/Space\";\nexport { default as Panel } from \"./components/ui/Panel/Panel\";\n\nexport { default as VerticalLayout } from \"./components/layout/VerticalLayout/VerticalLayout\";\nexport { default as VerticalHeader } from \"./components/layout/VerticalLayout/VerticalHeader\";\n\nexport type { NewToken } from \"./theme/customTheme\";\n// hooks\nexport { useAcaciaColors } from \"./hooks/useAcaciaColors\";\nexport { useFoucHandler } from \"./hooks/useFoucHandler\";\nexport { useAcaciaConfig } from \"./hooks/useAcaciaConfig\";\nexport { useScreenSize } from \"./hooks/useScreenSize\";\n// export { usePaletteToken } from \"./tokens/usePaletteToken\";\n\n// interfaces\nexport type {\n\tAcaciaButtonProps,\n\tAcaciaBreadcrumbProps,\n\tAcaciaBadgeProps,\n\tAcaciaRibbonProps,\n\tAcaciaCheckboxProps,\n\tAcaciaSegmentedProps,\n\tAcaciaTypographyProps,\n\tAcaciaConfigProviderProps,\n\tAcaciaDatePickerProps,\n\tAcaciaDateRangePickerProps,\n\tAcaciaTabsProps,\n\tAcaciaTimePickerProps,\n\tAcaciaTimeRangePickerProps,\n\tAcaciaInputProps,\n\tAcaciaSwitchProps,\n\tAcaciaInputTextAreaProps,\n\tAcaciaPaginationProps,\n\tAcaciaSelectProps,\n\tAcaciaRadioProps,\n\tAcaciaBasicPanelProps,\n} from \"./components/ui/interfaces\";\n","import \"@fontsource-variable/roboto-flex\";\nimport type { AcaciaThemes } from \"../components/ui/interfaces\";\n\nexport interface NewToken {\n\theadingFontFamily: string;\n\tappTheme: AcaciaThemes;\n\tlogo: React.ReactNode | string;\n}\n\n// By extending the type definition of the `CustomToken` interface for `antd-style`, you can add corresponding token type definitions to the `useTheme` hooks\ndeclare module \"antd-style\" {\n\t// eslint-disable-next-line @typescript-eslint/no-empty-interface\n\texport interface CustomToken extends NewToken {}\n}\n\nexport const CustomTheme: NewToken = {\n\theadingFontFamily:\n\t\t'\"Roboto Flex Variable\", \"Roboto Flex\", \"Segoe UI\", sans-serif',\n\tappTheme: \"classic\",\n\tlogo: \"TEST LOGO\",\n};\n","import { useTheme } from \"antd-style\";\nimport \"@fontsource-variable/roboto-flex\";\nimport Typography from \"../components/ui/Typography/Typography\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"../components/layout/VerticalLayout/VerticalLayout\";\nimport { renderBlackOrWhiteText } from \"../utils/colors.util\";\nimport ConfigProvider from \"../components/ui/ConfigProvider/ConfigProvider\";\nimport { theme } from \"antd\";\nimport { useGetDefaultTheme } from \"../components/ui/ConfigProvider/defaultTheme\";\n\nexport default function DefaultLogo() {\n\tconst context = useContext(VerticalLayoutContext);\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst token = useTheme();\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\n\tconst defaultTheme = useGetDefaultTheme(); // get the default, overwritten tokens\n\n\tconst getLogo = () => {\n\t\tif (typeof token.logo === \"string\") {\n\t\t\treturn (\n\t\t\t\t<Typography.Title\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tmargin: 0,\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t\t}}\n\t\t\t\t\tlevel={4}\n\t\t\t\t>\n\t\t\t\t\t{token.logo}\n\t\t\t\t</Typography.Title>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\tcolor:\n\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ConfigProvider\n\t\t\t\t\ttheme={{\n\t\t\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\tTypography: {\n\t\t\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\tcolorText:\n\t\t\t\t\t\t\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\t\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{token.logo}\n\t\t\t\t</ConfigProvider>\n\t\t\t</div>\n\t\t);\n\t};\n\n\treturn (\n\t\t<a\n\t\t\thref=\"/\"\n\t\t\tstyle={{\n\t\t\t\tcursor: \"pointer\",\n\t\t\t\ttextDecoration: \"none\",\n\t\t\t\tdisplay: \"inline-flex\",\n\t\t\t\talignItems: \"center\",\n\t\t\t}}\n\t\t>\n\t\t\t{getLogo()}\n\t\t</a>\n\t);\n}\n","export const typographyUtil = {\n\tfontSize: {\n\t\th1: 34,\n\t\th2: 28,\n\t\th3: 22,\n\t\th4: 20,\n\t\th5: 16,\n\t\tbody1: 16,\n\t\tbody2: 14,\n\t\tcaption: 12,\n\t\toverline: 11,\n\t},\n\tletterSpacing: {\n\t\th1: \".1em\",\n\t\th2: \".05em\",\n\t\th3: \".025em\",\n\t\th4: \".025em\",\n\t\th5: \".03em\",\n\t\tbody1: \".05em\",\n\t\tdefault: \".025em\",\n\t\tcaption: \".05em\",\n\t\toverline: \".1em\",\n\t},\n};\n","import { theme } from \"antd\";\n\nconst { useToken } = theme;\n\nexport const useAcaciaToken = () => {\n\tconst { token: antdToken } = useToken();\n\tconst token = antdToken;\n\n\treturn { token };\n};\n","import { generate as antdGenerate, grey } from \"@ant-design/colors\";\nimport { isLight } from \"@mirawision/colorize\";\n\nexport const generate = (color?: string, darken?: boolean) => {\n\tconst colors = color\n\t\t? antdGenerate(color, {\n\t\t\t\ttheme: darken ? \"dark\" : \"default\",\n\t\t\t})\n\t\t: [];\n\n\tconst neutral = antdGenerate(grey[0], {\n\t\ttheme: darken ? \"dark\" : \"default\",\n\t});\n\n\treturn { colors, neutral };\n};\n\n/**\n *@description - used to handle color algorithm to return black / white depending on the color given\n * @param color - HEX color code or a string color (ex: black)\n * @returns return black or white color as string\n */\nexport const renderBlackOrWhiteText = (color: string): string => {\n\t// check if the background banner colors is considered light or dark colors\n\tconst colorIsLight = isLight(color);\n\tif (colorIsLight) {\n\t\treturn \"black\";\n\t}\n\treturn \"white\";\n};\n\nexport function hexToRGBA(hex: string, opacityPercent: number) {\n\tconst alpha = (opacityPercent / 100).toFixed(2);\n\tconst r = Number.parseInt(hex.slice(1, 3), 16);\n\tconst g = Number.parseInt(hex.slice(3, 5), 16);\n\tconst b = Number.parseInt(hex.slice(5, 7), 16);\n\treturn `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n","export type ParsedColor =\n\t| { format: \"hex\"; value: string }\n\t| { format: \"rgb\"; value: string }\n\t| { format: \"named\"; value: string };\n\nexport interface ParsedBackgroundColors {\n\tcolors: ParsedColor[];\n}\n\nfunction classifyColor(value: string): ParsedColor[\"format\"] {\n\tif (value.startsWith(\"#\")) return \"hex\";\n\tif (value.startsWith(\"rgb\")) return \"rgb\";\n\treturn \"named\";\n}\n\nconst HEX_REGEX = /#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\b/g;\n\nconst RGB_REGEX = /rgba?\\(\\s*[\\d\\s.,%]+\\)/gi;\n\n// You should limit named colors to real CSS names\nconst NAMED_COLOR_REGEX =\n\t/\\b(aliceblue|antiquewhite|aqua|black|blue|gray|grey|green|orange|red|white|yellow)\\b/gi;\n\nexport function parseBackgroundColors(css: string): ParsedBackgroundColors {\n\tconst results: ParsedColor[] = [];\n\n\tconst push = (matches: RegExpMatchArray | null) => {\n\t\tmatches?.forEach((value) => {\n\t\t\tresults.push({\n\t\t\t\tformat: classifyColor(value),\n\t\t\t\tvalue,\n\t\t\t});\n\t\t});\n\t};\n\n\tpush(css.match(HEX_REGEX));\n\tpush(css.match(RGB_REGEX));\n\tpush(css.match(NAMED_COLOR_REGEX));\n\n\treturn {\n\t\tcolors: results,\n\t};\n}\n","module.exports = __WEBPACK_EXTERNAL_MODULE_antd__;","module.exports = __WEBPACK_EXTERNAL_MODULE_antd_style__;","module.exports = __WEBPACK_EXTERNAL_MODULE_prop_types__;","module.exports = __WEBPACK_EXTERNAL_MODULE_react__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Check if module exists (development only)\n\tif (__webpack_modules__[moduleId] === undefined) {\n\t\tvar e = new Error(\"Cannot find module '\" + moduleId + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(\"./src/index.tsx\");\n",""],"names":[],"ignoreList":[],"sourceRoot":""}
1
+ {"version":3,"file":"main.js","mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD,O;;;;;;;;;;;;;;;ACVmD;AACnD,iBAAiB;AACjB,2BAA2B;AAC3B,4BAA4B;AAC5B,4BAA4B;AAC5B,4BAA4B;AAC5B,yBAAyB;AACzB,wBAAwB;;AAExB;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACe;AACf;AACA;AACA,mBAAmB,6DAAS;AAC5B;AACA,gCAAgC,OAAO;AACvC,gBAAgB,6DAAS;AACzB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC,iBAAiB,6DAAS;AAC1B;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iBAAiB,6DAAS;AAC1B,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/HiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAjD;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACA;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,E;;;;;;;;;;;;;;;;ACnGwE;AACxE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,OAAO;AACzB;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP;AACA;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA;AACA;AACA,IAAI,qFAAe;AACnB;AACA,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB;AACA,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB,IAAI,qFAAe;AACnB;AACA;AACA;AACA,uBAAuB,kBAAkB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,sBAAsB,IAAI;AAC1B;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA,QAAQ;AACR;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kCAAkC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,OAAO,YAAY,EAAE,GAAG,EAAE,IAAI,EAAE;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,YAAY,OAAO,GAAG,OAAO,GAAG,OAAO;AAC9G;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;;;;;;;;;;;ACphB4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEAmB;AAC/C;AACA,cAAc,6DAAa;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH;;;;;;;;;;;;;;;;;ACRkC;AAClC;AACA,kBAAkB,sDAAO;AACzB;AACA;AACA;AACA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B;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,iBAAiB,iBAAiB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,yEAAyE;AACxF,iBAAiB,yBAAyB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,QAAQ;AACvB,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA,aAAa;;;;;;;;;;;;ACxSA;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oBAAoB;AACpB,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,wBAAwB,mBAAO,CAAC,yFAAuB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,WAAW,aAAa;AACxB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,6CAA6C;AAC7C,kDAAkD;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;;;;;;;;;;;;ACrDP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,eAAe,kCAAkC;AACjD;AACA;AACA;AACA,gCAAgC,aAAa,gCAAgC;AAC7E,mCAAmC,aAAa,8BAA8B;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,2CAA2C;AACtE;AACA;AACA;AACA,2BAA2B,2CAA2C;AACtE;AACA;AACA,aAAa;AACb;AACA,sBAAsB;;;;;;;;;;;;AC3CT;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oCAAoC;AACpC,gBAAgB,mBAAO,CAAC,6DAAS;AACjC,oCAAoC,mBAAO,CAAC,qGAA6B;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,qBAAqB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;;;;;;;;;;;;AC7CvB;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,+BAA+B;AAC/B,gBAAgB,mBAAO,CAAC,6DAAS;AACjC,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA,WAAW,gBAAgB;AAC3B;AACA;AACA,WAAW,gBAAgB;AAC3B;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,UAAU;AACvB;AACA;AACA;AACA;AACA,qDAAqD;AACrD,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,YAAY;AAChC;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,0EAA0E,6BAA6B;AACvG;AACA;AACA;AACA,+BAA+B;;;;;;;;;;;;ACpDlB;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,yBAAyB,mBAAO,CAAC,+EAAkB;AACnD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,oBAAoB;AACjC;AACA;AACA;AACA,8BAA8B;AAC9B,uCAAuC;AACvC,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;;;;;;;;;;;;ACvCT;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,oBAAoB;AACpB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,oBAAoB;;;;;;;;;;;;ACvBP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,sBAAsB;AACtB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,8BAA8B;AAC9B,uCAAuC;AACvC,uCAAuC;AACvC,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,sBAAsB;;;;;;;;;;;;AC3DT;AACb;AACA;AACA;AACA;AACA,eAAe,oCAAoC;AACnD;AACA;AACA,CAAC;AACD;AACA;AACA,CAAC;AACD;AACA;AACA;AACA,8CAA6C,EAAE,aAAa,EAAC;AAC7D,aAAa,mBAAO,CAAC,qFAAqB;AAC1C,aAAa,mBAAO,CAAC,uEAAc;AACnC,aAAa,mBAAO,CAAC,qFAAqB;AAC1C,aAAa,mBAAO,CAAC,iFAAmB;AACxC,aAAa,mBAAO,CAAC,yEAAe;AACpC,aAAa,mBAAO,CAAC,2EAAgB;AACrC,aAAa,mBAAO,CAAC,6FAA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AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,yFAAyF;AACzF;AACA;AACA,0CAA0C;AAC1C,0CAA0C;AAC1C,2CAA2C;AAC3C;AACA;AACA;AACA,6BAA6B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB;AACA,2DAA2D;AAC3D;AACA;AACA,kDAAkD;AAClD,kDAAkD;AAClD,+CAA+C;AAC/C;AACA;AACA;AACA,8BAA8B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,sFAAsF;AACtF;AACA;AACA,+CAA+C;AAC/C,+CAA+C;AAC/C,iDAAiD;AACjD;AACA;AACA;AACA,8BAA8B,IAAI,UAAU,IAAI,UAAU,IAAI,UAAU,IAAI;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,qFAAqF;AACrF;AACA;AACA,4CAA4C;AAC5C,0CAA0C;AAC1C,2CAA2C;AAC3C;AACA;AACA;AACA,6BAA6B,IAAI,SAAS,IAAI,UAAU,IAAI;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,aAAa,SAAS;AACtB,uCAAuC;AACvC;AACA;AACA,4BAA4B;AAC5B,qCAAqC;AACrC,6CAA6C;AAC7C,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;;;;;;;;;;;;ACpQP;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,qBAAqB;AACrB,qBAAqB,mBAAO,CAAC,uEAAc;AAC3C;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA;AACA,aAAa,QAAQ;AACrB;AACA,YAAY,OAAO;AACnB;AACA;AACA,6BAA6B;AAC7B,oCAAoC;AACpC;AACA;AACA;AACA;AACA,qBAAqB;;;;;;;;;;;;ACrBR;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,yBAAyB;AACzB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,2BAA2B,mBAAO,CAAC,mFAAoB;AACvD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA;AACA,WAAW,QAAQ;AACnB;AACA,WAAW,yEAAyE;AACpF;AACA,aAAa,yBAAyB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,0CAA0C,0BAA0B,cAAc;AACrH;AACA;AACA,mCAAmC,0CAA0C,0BAA0B,cAAc;AACrH;AACA;AACA;AACA;AACA,yBAAyB;;;;;;;;;;;;ACzCZ;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,mBAAmB;AACnB,wBAAwB,mBAAO,CAAC,6EAAiB;AACjD,gBAAgB,mBAAO,CAAC,6DAAS;AACjC;AACA;AACA;AACA,WAAW,aAAa;AACxB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA,kBAAkB;AAClB,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AAClD;AACA;AACA,mBAAmB;;;;;;;;;;;;AC1BN;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,aAAa;AACb,uBAAuB,mBAAO,CAAC,2EAAgB;AAC/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,aAAa,QAAQ;AACrB;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA,aAAa;;;;;;;;;;;;ACjBA;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,YAAY;AACZ,uBAAuB,mBAAO,CAAC,2EAAgB;AAC/C;AACA;AACA;AACA,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB;AACA,aAAa,QAAQ;AACrB;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA,YAAY;;;;;;;;;;;;AClBC;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,uBAAuB,GAAG,mBAAmB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kBAAkB,mBAAmB,mBAAmB;AACzD;AACA,uBAAuB;;;;;;;;;;;;ACfV;AACb,8CAA6C,EAAE,aAAa,EAAC;AAC7D,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,kBAAkB;AAC3R;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE;AACvC;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,oBAAoB,IAAI,oBAAoB,IAAI,oBAAoB;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,IAAI,oBAAoB,IAAI,oBAAoB;AACvF;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,eAAe,KAAK,EAAE,KAAK,EAAE,KAAK;AAClC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS;AAC7C;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB,EAAE,IAAI,EAAE,IAAI,EAAE;AAChC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,0BAA0B,IAAI,oBAAoB,KAAK,oBAAoB;AAC7F;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,IAAI,oBAAoB,KAAK,oBAAoB,KAAK,EAAE;AAC/F;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,oBAAoB,KAAK,oBAAoB,KAAK,oBAAoB,KAAK,oBAAoB;AAClH;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,cAAc,IAAI,oBAAoB,KAAK,oBAAoB;AACjF;AACA,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;ACvTc;AACxB;AACA;AACA;AACP;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB,GAAG,UAAU;AACtD;AACA;AACO,mCAAmC,gDAAmB;AAC7D;AACA;AACA;AACA,CAAC;AACM;AACP;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO;AACP,kBAAkB,6CAAgB;AAClC;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,C;;;;;;;;;;AC9CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAI,KAA4D;AAChE,IAAI,CACqG;AACzG,CAAC,uBAAuB;;AAExB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,wBAAwB,QAAQ;AAChC;AACA,kDAAkD;AAClD;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,iBAAiB;AACxB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA,uCAAuC,kCAAkC;AACzE,oCAAoC,oBAAoB;AACxD;AACA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B;AAC/B;AACA,yCAAyC;AACzC;AACA;;AAEA;AACA;AACA;;AAEA,8BAA8B;AAC9B,8BAA8B;;AAE9B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,OAAO;AACtB,iBAAiB;AACjB;AACA;AACA;AACA;;AAEA;AACA,kBAAkB;AAClB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,2EAA2E,mBAAmB;AAC9F;AACA;;AAEA;AACA,qDAAqD,iBAAiB;AACtE;;AAEA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA,4CAA4C;AAC5C;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,YAAY;;AAExC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA,2BAA2B;AAC3B,gCAAgC;AAChC,gCAAgC;;AAEhC;AACA,qBAAqB;AACrB,wDAAwD;AACxD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mEAAmE;AACnE;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,qCAAqC,aAAa;AAClD;;AAEA;AACA,gDAAgD,4BAA4B,cAAc,IAAI,GAAG;AACjG,6CAA6C;AAC7C;AACA,wDAAwD,qBAAqB;AAC7E;;AAEA,uDAAuD,+BAA+B;AACtF,aAAa;AACb;;AAEA;AACA,kCAAkC;AAClC;;AAEA;AACA,8CAA8C,cAAc,GAAG;AAC/D;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,sBAAsB;AACzD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,mEAAmE;AACnE;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,OAAO;AACnC,iCAAiC;AACjC,iCAAiC;AACjC,qCAAqC;AACrC,0CAA0C;AAC1C,0CAA0C;AAC1C,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qCAAqC,0BAA0B;AAC/D;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,yCAAyC,kDAAkD;AAC3F;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;;AAEA;AACA;AACA;AACA,4BAA4B,OAAO;AACnC;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;;AAEA;AACA;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,6BAA6B;AAC7B,2BAA2B;AAC3B,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,gCAAgC;AAChC,gCAAgC;AAChC,gCAAgC;AAChC;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL,kCAAkC,EAAE,aAAa,EAAE;AACnD,mCAAmC,EAAE,aAAa,EAAE;;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,wBAAwB;AACxB,wBAAwB;AACxB;AACA,uBAAuB;AACvB,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,6BAA6B;AAC7B,2BAA2B;AAC3B,yBAAyB;AACzB;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB,MAAM;AACxB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA,8BAA8B;AAC9B,8BAA8B;AAC9B,8BAA8B;AAC9B;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,oFAAoF;;AAEhH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,4BAA4B,sBAAsB;;AAElD;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,4BAA4B,YAAY;;AAExC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA,6BAA6B;AAC7B;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,YAAY;;AAExC;AACA;AACA;;AAEA;AACA,qCAAqC;AACrC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,6CAA6C;;AAEzE;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,gBAAgB;;AAE5C;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,4BAA4B,gBAAgB;;AAE5C;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,oDAAoD,iBAAiB;AACrE;;AAEA,qCAAqC;AACrC;AACA;AACA;;AAEA;AACA;AACA,4BAA4B;AAC5B;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA,UAAU;AACV;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,uCAAuC;AACvC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,0BAA0B;AAC1B;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA,UAAU;AACV;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA;AACA,UAAU;AACV;AACA,0DAA0D;AAC1D,UAAU;AACV;AACA,0DAA0D;AAC1D,UAAU;AACV;AACA;;AAEA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,wBAAwB,qDAAqD,WAAW;AACxF;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA,2CAA2C,sBAAsB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gBAAgB;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,4BAA4B,gBAAgB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA,SAAS;;AAET,0BAA0B,kBAAkB;AAC5C;AACA;AACA,kCAAkC;AAClC,qCAAqC;AACrC;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mBAAmB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;;AAEA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,mBAAmB;AACnD;AACA;AACA;AACA;AACA,kCAAkC,qBAAqB;AACvD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,2CAA2C;AAC3C,wCAAwC;;AAExC;AACA;AACA;AACA;AACA;AACA,oGAAoG;AACpG,wGAAwG;AACxG;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,kBAAkB;AAClB;AACA;AACA,cAAc;AACd;AACA;;AAEA;AACA;;AAEA;AACA,sCAAsC;AACtC;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,cAAc;AACd;AACA;AACA,oCAAoC,iBAAiB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,uCAAuC,wBAAwB;;AAE/D;;AAEA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,iBAAiB;AAC5E;;AAEA;AACA;AACA,cAAc;AACd,gCAAgC,OAAO;AACvC;AACA;AACA;AACA;AACA,4DAA4D,iCAAiC;AAC7F,4DAA4D,oCAAoC;AAChG,2DAA2D,yBAAyB;AACpF;AACA,oDAAoD;AACpD;AACA,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,cAAc;AACd,+CAA+C;AAC/C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc;AACd;AACA,cAAc;AACd;AACA;AACA,oEAAoE;AACpE;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA,oDAAoD,cAAc;AAClE;;AAEA;AACA,mDAAmD,kBAAkB;AACrE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,2BAA2B,+BAA+B;AAC1D;AACA;AACA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B;AACA,4BAA4B,iBAAiB;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,2CAA2C,sBAAsB;AACjE;AACA;AACA,gDAAgD,iBAAiB;AACjE;AACA,uDAAuD,2CAA2C;AAClG;AACA;AACA,UAAU;AACV;AACA,kDAAkD,iBAAiB;AACnE;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,kDAAkD,iBAAiB;AACnE;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,6CAA6C,iBAAiB;AAC9D;AACA;AACA;AACA;AACA,uDAAuD;AACvD,gDAAgD,0EAA0E;AAC1H;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;;AAEA;AACA;AACA,gCAAgC;AAChC;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;;AAEA,iCAAiC;AACjC;AACA;AACA;AACA;;AAEA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;;AAEA,gCAAgC;AAChC,qCAAqC;AACrC,mCAAmC;AACnC,oCAAoC;AACpC,mCAAmC;AACnC,oCAAoC;AACpC,iCAAiC;AACjC;AACA,yBAAyB;AACzB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,eAAe,cAAc;AAC7B;AACA;AACA;;AAEA;AACA,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC;AACA;AACA,SAAS;;AAET;;AAEA,0CAA0C;;AAE1C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,wDAAwD,eAAe;;AAEvE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,WAAW;AACzC;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,8BAA8B,WAAW;AACzC;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B,WAAW;AACzC;AACA;AACA;;AAEA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;AACA,sCAAsC,WAAW;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;;AAEA;AACA;AACA,kCAAkC,WAAW;AAC7C;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,8BAA8B,WAAW;AACzC;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA;AACA;AACA,8BAA8B,WAAW;AACzC;AACA;AACA;AACA,qEAAqE,eAAe;AACpF;AACA,8BAA8B,8BAA8B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,gEAAgE,kCAAkC;;AAElG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA,eAAe;AACf;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA,CAAC;;;;;;;;;;;;AC57HD;AACA;AACA;AACA;AACA;;AAEa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;;AAEA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH,kCAAkC;AAClC;AACA;AACA;;AAEA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,oBAAoB;AACvC;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;;;;;;;;;ACzFA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,uBAAuB,UAAU;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,uBAAuB,UAAU;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,qBAAqB,UAAU;AAC/B;AACA;;AAEA;AACA;AACA;;AAEA;AACA,qBAAqB,UAAU;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1ImC;AACY;AACN;AACf;AACe;;AAEzC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC,IAAI;;AAEL;;AAEA;;AAEA;AACA;AACA,EAAE;AACF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA,kBAAkB,sBAAsB;AACxC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,2CAA2C,sBAAsB,sBAAsB,wBAAwB,wBAAwB;AACvI;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,0BAA0B;AAC1B,KAAK,IAAI;AACT;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA,4BAA4B,iBAAiB;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,SAAS;AACT;AACA,SAAS;;AAET;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA,2BAA2B,oDAAY,GAAG;;AAE1C;AACA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA,uCAAuC,QAAQ;AAC/C;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA,aAAa;AACb;AACA;AACA,CAAC;;AAED;AACA;AACA;;AAEA,gOAAgO,UAAM;;AAEtO,+KAA+K,UAAM;;AAErL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT,MAAM;AACN;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,oBAAoB,0BAA0B;AAC9C;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,iDAAiD,SAAS;AAC1D;AACA;;AAEA;AACA;AACA,MAAM;AACN;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA,0BAA0B;AAC1B;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,cAAc;AACd;AACA;AACA,SAAS;AACT;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;;AAET;;AAEA;;AAEA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;;AAEA,YAAY,0DAAmB;AAC/B;;AAEA;AACA;AACA;;AAEA;AACA;AACA,SAAS;;AAET;AACA;;AAEA;AACA;AACA,sDAAsD;AACtD,cAAc;AACd;AACA;AACA,SAAS;;AAET,eAAe,0DAAmB;AAClC,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,gDAAgD;AACnG;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,yDAAO;AAC3B;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,8BAA8B,gDAAgD,iGAAiG;AAC/K;;AAEA;AACA;;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HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEa;AACb,KAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,+CAA+C,6BAA6B;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,gBAAgB,gDAAgD;AAChE,gBAAgB,aAAa;AAC7B;AACA;AACA,gCAAgC,kCAAkC,OAAO;AACzE;AACA,gGAAgG,SAAS,UAAU,sFAAsF,aAAa,UAAU,UAAU;AAC1O;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,mBAAO,CAAC,oBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,gBAAgB;AACpB,IAAI,WAAW;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,YAAY;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;;;;;;;;;;;AC/VU;;AAEb,IAAI,KAAqC,EAAE;AAAA,EAE1C,CAAC;AACF,EAAE,+IAAkE;AACpE;;;;;;;;;;;ACNA,gBAAgB,oCAAoC,uBAAuB,IAAI,cAAc,SAAS,gBAAgB,sEAAsE,sCAAsC,sCAAsC,MAAM,oCAAoC,QAAQ,8BAA8B,gLAAgL,uCAAuC,SAAS,QAAQ,kBAAkB,oBAAoB,QAAQ,EAAE,uBAAuB,6JAA6J,cAAc,wEAAwE,6CAA6C,MAAM,aAAa,IAAI,+EAA+E,GAAG,UAAU,oBAAoB,UAAU,IAAI,gBAAgB,0EAA0E,uBAAuB,QAAQ,cAAc,4CAA4C,qBAAqB,0BAA0B,IAAI,8DAA8D,SAAS,4BAA4B,aAAa,kGAAkG,eAAe,4BAA4B,W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","sources":["webpack://acacia-ui/webpack/universalModuleDefinition","webpack://acacia-ui/./node_modules/@ant-design/colors/es/generate.js","webpack://acacia-ui/./node_modules/@ant-design/colors/es/index.js","webpack://acacia-ui/./node_modules/@ant-design/colors/es/presets.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/FastColor.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/index.js","webpack://acacia-ui/./node_modules/@ant-design/fast-color/es/types.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://acacia-ui/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://acacia-ui/./node_modules/@fontsource-variable/inter/index.css?e692","webpack://acacia-ui/./node_modules/@fontsource-variable/outfit/index.css?2db3","webpack://acacia-ui/./node_modules/@fontsource-variable/roboto-flex/index.css?a2d1","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-brightness.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-hue.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/adjust-saturation.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/apply-greyscale.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/apply-sepia.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/blend-colors.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/blend-multiple-colors.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/calculate-contrast.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/calculate-similarity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/change-opacity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/convert-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/extract-opacity.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/generate-multi-stepped-gradient.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/generate-stepped-gradient.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-color-format.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-luminance.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/get-temperature.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/index.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/invert-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-dark.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-light.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/is-valid-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/opposite-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/parse-color-numbers.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/random-color.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/shade.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/tint.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/types.js","webpack://acacia-ui/./node_modules/@mirawision/colorize/utils/convert-utils.js","webpack://acacia-ui/./node_modules/antd/es/config-provider/context.js","webpack://acacia-ui/./node_modules/chroma-js/dist/chroma.cjs","webpack://acacia-ui/./node_modules/object-assign/index.js","webpack://acacia-ui/./node_modules/react-fast-compare/index.js","webpack://acacia-ui/./node_modules/react-helmet/es/Helmet.js","webpack://acacia-ui/./node_modules/react-helmet/node_modules/react-side-effect/lib/index.js","webpack://acacia-ui/./node_modules/react/cjs/react-jsx-runtime.development.js","webpack://acacia-ui/./node_modules/react/jsx-runtime.js","webpack://acacia-ui/./node_modules/ts-pattern/dist/index.cjs","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalContent.tsx","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalHeader.tsx","webpack://acacia-ui/./src/components/layout/VerticalLayout/VerticalLayout.tsx","webpack://acacia-ui/./src/components/layout/utils.ts","webpack://acacia-ui/./src/components/ui/Avatar/Avatar.tsx","webpack://acacia-ui/./src/components/ui/Badge/Badge.tsx","webpack://acacia-ui/./src/components/ui/Badge/Ribbon.tsx","webpack://acacia-ui/./src/components/ui/Breadcrumb/Breadcrumb.tsx","webpack://acacia-ui/./src/components/ui/Button/Button.tsx","webpack://acacia-ui/./src/components/ui/Card/Card.tsx","webpack://acacia-ui/./src/components/ui/Card/useCardStyles.ts","webpack://acacia-ui/./src/components/ui/Checkbox/Checkbox.tsx","webpack://acacia-ui/./src/components/ui/Checkbox/CheckboxGroup.tsx","webpack://acacia-ui/./src/components/ui/ConfigProvider/ConfigProvider.tsx","webpack://acacia-ui/./src/components/ui/ConfigProvider/defaultTheme.ts","webpack://acacia-ui/./src/components/ui/DatePicker/DatePicker.tsx","webpack://acacia-ui/./src/components/ui/DatePicker/RangePicker.tsx","webpack://acacia-ui/./src/components/ui/Dropdown/Dropdown.tsx","webpack://acacia-ui/./src/components/ui/Dropdown/DropdownButton.tsx","webpack://acacia-ui/./src/components/ui/Input/Input.tsx","webpack://acacia-ui/./src/components/ui/Input/OTP.tsx","webpack://acacia-ui/./src/components/ui/Input/Password.tsx","webpack://acacia-ui/./src/components/ui/Input/Search.tsx","webpack://acacia-ui/./src/components/ui/Input/TextArea.tsx","webpack://acacia-ui/./src/components/ui/Input/useInputStyles.ts","webpack://acacia-ui/./src/components/ui/Menu/Menu.tsx","webpack://acacia-ui/./src/components/ui/Modal/Modal.tsx","webpack://acacia-ui/./src/components/ui/Pagination/Pagination.tsx","webpack://acacia-ui/./src/components/ui/Panel/Panel.tsx","webpack://acacia-ui/./src/components/ui/Panel/usePanelStyles.tsx","webpack://acacia-ui/./src/components/ui/Popconfirm/Popconfirm.tsx","webpack://acacia-ui/./src/components/ui/Radio/Button.tsx","webpack://acacia-ui/./src/components/ui/Radio/Radio.tsx","webpack://acacia-ui/./src/components/ui/Radio/RadioGroup.tsx","webpack://acacia-ui/./src/components/ui/Segmented/Segmented.tsx","webpack://acacia-ui/./src/components/ui/Select/Select.tsx","webpack://acacia-ui/./src/components/ui/Space/Space.tsx","webpack://acacia-ui/./src/components/ui/Switch/Switch.tsx","webpack://acacia-ui/./src/components/ui/Tabs/Tabs.tsx","webpack://acacia-ui/./src/components/ui/Tag/Tag.tsx","webpack://acacia-ui/./src/components/ui/TimePicker/TimePicker.tsx","webpack://acacia-ui/./src/components/ui/TimePicker/TimeRangePicker.tsx","webpack://acacia-ui/./src/components/ui/Typography/Typography.tsx","webpack://acacia-ui/./src/components/ui/Typography/useTypographyStyles.ts","webpack://acacia-ui/./src/components/ui/interfaces.tsx","webpack://acacia-ui/./src/hooks/useAcaciaColors.tsx","webpack://acacia-ui/./src/hooks/useAcaciaConfig.tsx","webpack://acacia-ui/./src/hooks/useFoucHandler.tsx","webpack://acacia-ui/./src/hooks/useScreenSize.tsx","webpack://acacia-ui/./src/index.tsx","webpack://acacia-ui/./src/theme/customTheme.ts","webpack://acacia-ui/./src/theme/defaultLogo.tsx","webpack://acacia-ui/./src/theme/typographyUtil.ts","webpack://acacia-ui/./src/tokens/useAcaciaToken.tsx","webpack://acacia-ui/./src/utils/colors.util.ts","webpack://acacia-ui/./src/utils/parseBackgroundColors.ts","webpack://acacia-ui/./src/utils/theming.util.ts","webpack://acacia-ui/external umd \"antd\"","webpack://acacia-ui/external umd \"antd-style\"","webpack://acacia-ui/external umd \"prop-types\"","webpack://acacia-ui/external umd \"react\"","webpack://acacia-ui/webpack/bootstrap","webpack://acacia-ui/webpack/runtime/compat get default export","webpack://acacia-ui/webpack/runtime/define property getters","webpack://acacia-ui/webpack/runtime/hasOwnProperty shorthand","webpack://acacia-ui/webpack/runtime/make namespace object","webpack://acacia-ui/webpack/before-startup","webpack://acacia-ui/webpack/startup","webpack://acacia-ui/webpack/after-startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"antd\"), require(\"antd-style\"), require(\"prop-types\"), require(\"react\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"antd\", \"antd-style\", \"prop-types\", \"react\"], factory);\n\telse {\n\t\tvar a = typeof exports === 'object' ? factory(require(\"antd\"), require(\"antd-style\"), require(\"prop-types\"), require(\"react\")) : factory(root[\"antd\"], root[\"antd-style\"], root[\"prop-types\"], root[\"react\"]);\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(this, (__WEBPACK_EXTERNAL_MODULE_antd__, __WEBPACK_EXTERNAL_MODULE_antd_style__, __WEBPACK_EXTERNAL_MODULE_prop_types__, __WEBPACK_EXTERNAL_MODULE_react__) => {\nreturn ","import { FastColor } from '@ant-design/fast-color';\nvar hueStep = 2; // 色相阶梯\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\nvar lightColorCount = 5; // 浅色数量,主色上\nvar darkColorCount = 4; // 深色数量,主色下\n\n// 暗色主题颜色映射关系表\nvar darkColorMap = [{\n index: 7,\n amount: 15\n}, {\n index: 6,\n amount: 25\n}, {\n index: 5,\n amount: 30\n}, {\n index: 5,\n amount: 45\n}, {\n index: 5,\n amount: 65\n}, {\n index: 5,\n amount: 85\n}, {\n index: 4,\n amount: 90\n}, {\n index: 3,\n amount: 95\n}, {\n index: 2,\n amount: 97\n}, {\n index: 1,\n amount: 98\n}];\nfunction getHue(hsv, i, light) {\n var hue;\n // 根据色相不同,色相转向不同\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n return hue;\n}\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n var saturation;\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n }\n // 边界值修正\n if (saturation > 1) {\n saturation = 1;\n }\n // 第一格的 s 限制在 0.06-0.1 之间\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n return Math.round(saturation * 100) / 100;\n}\nfunction getValue(hsv, i, light) {\n var value;\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n // Clamp value between 0 and 1\n value = Math.max(0, Math.min(1, value));\n return Math.round(value * 100) / 100;\n}\nexport default function generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = new FastColor(color);\n var hsv = pColor.toHsv();\n for (var i = lightColorCount; i > 0; i -= 1) {\n var c = new FastColor({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n });\n patterns.push(c);\n }\n patterns.push(pColor);\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _c = new FastColor({\n h: getHue(hsv, _i),\n s: getSaturation(hsv, _i),\n v: getValue(hsv, _i)\n });\n patterns.push(_c);\n }\n\n // dark theme patterns\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref) {\n var index = _ref.index,\n amount = _ref.amount;\n return new FastColor(opts.backgroundColor || '#141414').mix(patterns[index], amount).toHexString();\n });\n }\n return patterns.map(function (c) {\n return c.toHexString();\n });\n}","export { default as generate } from \"./generate\";\nexport * from \"./presets\";","// Generated by script. Do NOT modify!\n\nexport var presetPrimaryColors = {\n \"red\": \"#F5222D\",\n \"volcano\": \"#FA541C\",\n \"orange\": \"#FA8C16\",\n \"gold\": \"#FAAD14\",\n \"yellow\": \"#FADB14\",\n \"lime\": \"#A0D911\",\n \"green\": \"#52C41A\",\n \"cyan\": \"#13C2C2\",\n \"blue\": \"#1677FF\",\n \"geekblue\": \"#2F54EB\",\n \"purple\": \"#722ED1\",\n \"magenta\": \"#EB2F96\",\n \"grey\": \"#666666\"\n};\nexport var red = [\"#fff1f0\", \"#ffccc7\", \"#ffa39e\", \"#ff7875\", \"#ff4d4f\", \"#f5222d\", \"#cf1322\", \"#a8071a\", \"#820014\", \"#5c0011\"];\nred.primary = red[5];\nexport var volcano = [\"#fff2e8\", \"#ffd8bf\", \"#ffbb96\", \"#ff9c6e\", \"#ff7a45\", \"#fa541c\", \"#d4380d\", \"#ad2102\", \"#871400\", \"#610b00\"];\nvolcano.primary = volcano[5];\nexport var orange = [\"#fff7e6\", \"#ffe7ba\", \"#ffd591\", \"#ffc069\", \"#ffa940\", \"#fa8c16\", \"#d46b08\", \"#ad4e00\", \"#873800\", \"#612500\"];\norange.primary = orange[5];\nexport var gold = [\"#fffbe6\", \"#fff1b8\", \"#ffe58f\", \"#ffd666\", \"#ffc53d\", \"#faad14\", \"#d48806\", \"#ad6800\", \"#874d00\", \"#613400\"];\ngold.primary = gold[5];\nexport var yellow = [\"#feffe6\", \"#ffffb8\", \"#fffb8f\", \"#fff566\", \"#ffec3d\", \"#fadb14\", \"#d4b106\", \"#ad8b00\", \"#876800\", \"#614700\"];\nyellow.primary = yellow[5];\nexport var lime = [\"#fcffe6\", \"#f4ffb8\", \"#eaff8f\", \"#d3f261\", \"#bae637\", \"#a0d911\", \"#7cb305\", \"#5b8c00\", \"#3f6600\", \"#254000\"];\nlime.primary = lime[5];\nexport var green = [\"#f6ffed\", \"#d9f7be\", \"#b7eb8f\", \"#95de64\", \"#73d13d\", \"#52c41a\", \"#389e0d\", \"#237804\", \"#135200\", \"#092b00\"];\ngreen.primary = green[5];\nexport var cyan = [\"#e6fffb\", \"#b5f5ec\", \"#87e8de\", \"#5cdbd3\", \"#36cfc9\", \"#13c2c2\", \"#08979c\", \"#006d75\", \"#00474f\", \"#002329\"];\ncyan.primary = cyan[5];\nexport var blue = [\"#e6f4ff\", \"#bae0ff\", \"#91caff\", \"#69b1ff\", \"#4096ff\", \"#1677ff\", \"#0958d9\", \"#003eb3\", \"#002c8c\", \"#001d66\"];\nblue.primary = blue[5];\nexport var geekblue = [\"#f0f5ff\", \"#d6e4ff\", \"#adc6ff\", \"#85a5ff\", \"#597ef7\", \"#2f54eb\", \"#1d39c4\", \"#10239e\", \"#061178\", \"#030852\"];\ngeekblue.primary = geekblue[5];\nexport var purple = [\"#f9f0ff\", \"#efdbff\", \"#d3adf7\", \"#b37feb\", \"#9254de\", \"#722ed1\", \"#531dab\", \"#391085\", \"#22075e\", \"#120338\"];\npurple.primary = purple[5];\nexport var magenta = [\"#fff0f6\", \"#ffd6e7\", \"#ffadd2\", \"#ff85c0\", \"#f759ab\", \"#eb2f96\", \"#c41d7f\", \"#9e1068\", \"#780650\", \"#520339\"];\nmagenta.primary = magenta[5];\nexport var grey = [\"#a6a6a6\", \"#999999\", \"#8c8c8c\", \"#808080\", \"#737373\", \"#666666\", \"#404040\", \"#1a1a1a\", \"#000000\", \"#000000\"];\ngrey.primary = grey[5];\nexport var gray = grey;\nexport var presetPalettes = {\n red: red,\n volcano: volcano,\n orange: orange,\n gold: gold,\n yellow: yellow,\n lime: lime,\n green: green,\n cyan: cyan,\n blue: blue,\n geekblue: geekblue,\n purple: purple,\n magenta: magenta,\n grey: grey\n};\nexport var redDark = [\"#2a1215\", \"#431418\", \"#58181c\", \"#791a1f\", \"#a61d24\", \"#d32029\", \"#e84749\", \"#f37370\", \"#f89f9a\", \"#fac8c3\"];\nredDark.primary = redDark[5];\nexport var volcanoDark = [\"#2b1611\", \"#441d12\", \"#592716\", \"#7c3118\", \"#aa3e19\", \"#d84a1b\", \"#e87040\", \"#f3956a\", \"#f8b692\", \"#fad4bc\"];\nvolcanoDark.primary = volcanoDark[5];\nexport var orangeDark = [\"#2b1d11\", \"#442a11\", \"#593815\", \"#7c4a15\", \"#aa6215\", \"#d87a16\", \"#e89a3c\", \"#f3b765\", \"#f8cf8d\", \"#fae3b7\"];\norangeDark.primary = orangeDark[5];\nexport var goldDark = [\"#2b2111\", \"#443111\", \"#594214\", \"#7c5914\", \"#aa7714\", \"#d89614\", \"#e8b339\", \"#f3cc62\", \"#f8df8b\", \"#faedb5\"];\ngoldDark.primary = goldDark[5];\nexport var yellowDark = [\"#2b2611\", \"#443b11\", \"#595014\", \"#7c6e14\", \"#aa9514\", \"#d8bd14\", \"#e8d639\", \"#f3ea62\", \"#f8f48b\", \"#fafab5\"];\nyellowDark.primary = yellowDark[5];\nexport var limeDark = [\"#1f2611\", \"#2e3c10\", \"#3e4f13\", \"#536d13\", \"#6f9412\", \"#8bbb11\", \"#a9d134\", \"#c9e75d\", \"#e4f88b\", \"#f0fab5\"];\nlimeDark.primary = limeDark[5];\nexport var greenDark = [\"#162312\", \"#1d3712\", \"#274916\", \"#306317\", \"#3c8618\", \"#49aa19\", \"#6abe39\", \"#8fd460\", \"#b2e58b\", \"#d5f2bb\"];\ngreenDark.primary = greenDark[5];\nexport var cyanDark = [\"#112123\", \"#113536\", \"#144848\", \"#146262\", \"#138585\", \"#13a8a8\", \"#33bcb7\", \"#58d1c9\", \"#84e2d8\", \"#b2f1e8\"];\ncyanDark.primary = cyanDark[5];\nexport var blueDark = [\"#111a2c\", \"#112545\", \"#15325b\", \"#15417e\", \"#1554ad\", \"#1668dc\", \"#3c89e8\", \"#65a9f3\", \"#8dc5f8\", \"#b7dcfa\"];\nblueDark.primary = blueDark[5];\nexport var geekblueDark = [\"#131629\", \"#161d40\", \"#1c2755\", \"#203175\", \"#263ea0\", \"#2b4acb\", \"#5273e0\", \"#7f9ef3\", \"#a8c1f8\", \"#d2e0fa\"];\ngeekblueDark.primary = geekblueDark[5];\nexport var purpleDark = [\"#1a1325\", \"#24163a\", \"#301c4d\", \"#3e2069\", \"#51258f\", \"#642ab5\", \"#854eca\", \"#ab7ae0\", \"#cda8f0\", \"#ebd7fa\"];\npurpleDark.primary = purpleDark[5];\nexport var magentaDark = [\"#291321\", \"#40162f\", \"#551c3b\", \"#75204f\", \"#a02669\", \"#cb2b83\", \"#e0529c\", \"#f37fb7\", \"#f8a8cc\", \"#fad2e3\"];\nmagentaDark.primary = magentaDark[5];\nexport var greyDark = [\"#151515\", \"#1f1f1f\", \"#2d2d2d\", \"#393939\", \"#494949\", \"#5a5a5a\", \"#6a6a6a\", \"#7b7b7b\", \"#888888\", \"#969696\"];\ngreyDark.primary = greyDark[5];\nexport var presetDarkPalettes = {\n red: redDark,\n volcano: volcanoDark,\n orange: orangeDark,\n gold: goldDark,\n yellow: yellowDark,\n lime: limeDark,\n green: greenDark,\n cyan: cyanDark,\n blue: blueDark,\n geekblue: geekblueDark,\n purple: purpleDark,\n magenta: magentaDark,\n grey: greyDark\n};","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nconst round = Math.round;\n\n/**\n * Support format, alpha unit will check the % mark:\n * - rgba(102, 204, 255, .5) -> [102, 204, 255, 0.5]\n * - rgb(102 204 255 / .5) -> [102, 204, 255, 0.5]\n * - rgb(100%, 50%, 0% / 50%) -> [255, 128, 0, 0.5]\n * - hsl(270, 60, 40, .5) -> [270, 60, 40, 0.5]\n * - hsl(270deg 60% 40% / 50%) -> [270, 60, 40, 0.5]\n *\n * When `base` is provided, the percentage value will be divided by `base`.\n */\nfunction splitColorStr(str, parseNum) {\n const match = str\n // Remove str before `(`\n .replace(/^[^(]*\\((.*)/, '$1')\n // Remove str after `)`\n .replace(/\\).*/, '').match(/\\d*\\.?\\d+%?/g) || [];\n const numList = match.map(item => parseFloat(item));\n for (let i = 0; i < 3; i += 1) {\n numList[i] = parseNum(numList[i] || 0, match[i] || '', i);\n }\n\n // For alpha. 50% should be 0.5\n if (match[3]) {\n numList[3] = match[3].includes('%') ? numList[3] / 100 : numList[3];\n } else {\n // By default, alpha is 1\n numList[3] = 1;\n }\n return numList;\n}\nconst parseHSVorHSL = (num, _, index) => index === 0 ? num : num / 100;\n\n/** round and limit number to integer between 0-255 */\nfunction limitRange(value, max) {\n const mergedMax = max || 255;\n if (value > mergedMax) {\n return mergedMax;\n }\n if (value < 0) {\n return 0;\n }\n return value;\n}\nexport class FastColor {\n constructor(input) {\n /**\n * All FastColor objects are valid. So isValid is always true. This property is kept to be compatible with TinyColor.\n */\n _defineProperty(this, \"isValid\", true);\n /**\n * Red, R in RGB\n */\n _defineProperty(this, \"r\", 0);\n /**\n * Green, G in RGB\n */\n _defineProperty(this, \"g\", 0);\n /**\n * Blue, B in RGB\n */\n _defineProperty(this, \"b\", 0);\n /**\n * Alpha/Opacity, A in RGBA/HSLA\n */\n _defineProperty(this, \"a\", 1);\n // HSV privates\n _defineProperty(this, \"_h\", void 0);\n _defineProperty(this, \"_s\", void 0);\n _defineProperty(this, \"_l\", void 0);\n _defineProperty(this, \"_v\", void 0);\n // intermediate variables to calculate HSL/HSV\n _defineProperty(this, \"_max\", void 0);\n _defineProperty(this, \"_min\", void 0);\n _defineProperty(this, \"_brightness\", void 0);\n /**\n * Always check 3 char in the object to determine the format.\n * We not use function in check to save bundle size.\n * e.g. 'rgb' -> { r: 0, g: 0, b: 0 }.\n */\n function matchFormat(str) {\n return str[0] in input && str[1] in input && str[2] in input;\n }\n if (!input) {\n // Do nothing since already initialized\n } else if (typeof input === 'string') {\n const trimStr = input.trim();\n function matchPrefix(prefix) {\n return trimStr.startsWith(prefix);\n }\n if (/^#?[A-F\\d]{3,8}$/i.test(trimStr)) {\n this.fromHexString(trimStr);\n } else if (matchPrefix('rgb')) {\n this.fromRgbString(trimStr);\n } else if (matchPrefix('hsl')) {\n this.fromHslString(trimStr);\n } else if (matchPrefix('hsv') || matchPrefix('hsb')) {\n this.fromHsvString(trimStr);\n }\n } else if (input instanceof FastColor) {\n this.r = input.r;\n this.g = input.g;\n this.b = input.b;\n this.a = input.a;\n this._h = input._h;\n this._s = input._s;\n this._l = input._l;\n this._v = input._v;\n } else if (matchFormat('rgb')) {\n this.r = limitRange(input.r);\n this.g = limitRange(input.g);\n this.b = limitRange(input.b);\n this.a = typeof input.a === 'number' ? limitRange(input.a, 1) : 1;\n } else if (matchFormat('hsl')) {\n this.fromHsl(input);\n } else if (matchFormat('hsv')) {\n this.fromHsv(input);\n } else {\n throw new Error('@ant-design/fast-color: unsupported input ' + JSON.stringify(input));\n }\n }\n\n // ======================= Setter =======================\n\n setR(value) {\n return this._sc('r', value);\n }\n setG(value) {\n return this._sc('g', value);\n }\n setB(value) {\n return this._sc('b', value);\n }\n setA(value) {\n return this._sc('a', value, 1);\n }\n setHue(value) {\n const hsv = this.toHsv();\n hsv.h = value;\n return this._c(hsv);\n }\n\n // ======================= Getter =======================\n /**\n * Returns the perceived luminance of a color, from 0-1.\n * @see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n */\n getLuminance() {\n function adjustGamma(raw) {\n const val = raw / 255;\n return val <= 0.03928 ? val / 12.92 : Math.pow((val + 0.055) / 1.055, 2.4);\n }\n const R = adjustGamma(this.r);\n const G = adjustGamma(this.g);\n const B = adjustGamma(this.b);\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n }\n getHue() {\n if (typeof this._h === 'undefined') {\n const delta = this.getMax() - this.getMin();\n if (delta === 0) {\n this._h = 0;\n } else {\n this._h = round(60 * (this.r === this.getMax() ? (this.g - this.b) / delta + (this.g < this.b ? 6 : 0) : this.g === this.getMax() ? (this.b - this.r) / delta + 2 : (this.r - this.g) / delta + 4));\n }\n }\n return this._h;\n }\n getSaturation() {\n if (typeof this._s === 'undefined') {\n const delta = this.getMax() - this.getMin();\n if (delta === 0) {\n this._s = 0;\n } else {\n this._s = delta / this.getMax();\n }\n }\n return this._s;\n }\n getLightness() {\n if (typeof this._l === 'undefined') {\n this._l = (this.getMax() + this.getMin()) / 510;\n }\n return this._l;\n }\n getValue() {\n if (typeof this._v === 'undefined') {\n this._v = this.getMax() / 255;\n }\n return this._v;\n }\n\n /**\n * Returns the perceived brightness of the color, from 0-255.\n * Note: this is not the b of HSB\n * @see http://www.w3.org/TR/AERT#color-contrast\n */\n getBrightness() {\n if (typeof this._brightness === 'undefined') {\n this._brightness = (this.r * 299 + this.g * 587 + this.b * 114) / 1000;\n }\n return this._brightness;\n }\n\n // ======================== Func ========================\n\n darken(amount = 10) {\n const h = this.getHue();\n const s = this.getSaturation();\n let l = this.getLightness() - amount / 100;\n if (l < 0) {\n l = 0;\n }\n return this._c({\n h,\n s,\n l,\n a: this.a\n });\n }\n lighten(amount = 10) {\n const h = this.getHue();\n const s = this.getSaturation();\n let l = this.getLightness() + amount / 100;\n if (l > 1) {\n l = 1;\n }\n return this._c({\n h,\n s,\n l,\n a: this.a\n });\n }\n\n /**\n * Mix the current color a given amount with another color, from 0 to 100.\n * 0 means no mixing (return current color).\n */\n mix(input, amount = 50) {\n const color = this._c(input);\n const p = amount / 100;\n const calc = key => (color[key] - this[key]) * p + this[key];\n const rgba = {\n r: round(calc('r')),\n g: round(calc('g')),\n b: round(calc('b')),\n a: round(calc('a') * 100) / 100\n };\n return this._c(rgba);\n }\n\n /**\n * Mix the color with pure white, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return white.\n */\n tint(amount = 10) {\n return this.mix({\n r: 255,\n g: 255,\n b: 255,\n a: 1\n }, amount);\n }\n\n /**\n * Mix the color with pure black, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return black.\n */\n shade(amount = 10) {\n return this.mix({\n r: 0,\n g: 0,\n b: 0,\n a: 1\n }, amount);\n }\n onBackground(background) {\n const bg = this._c(background);\n const alpha = this.a + bg.a * (1 - this.a);\n const calc = key => {\n return round((this[key] * this.a + bg[key] * bg.a * (1 - this.a)) / alpha);\n };\n return this._c({\n r: calc('r'),\n g: calc('g'),\n b: calc('b'),\n a: alpha\n });\n }\n\n // ======================= Status =======================\n isDark() {\n return this.getBrightness() < 128;\n }\n isLight() {\n return this.getBrightness() >= 128;\n }\n\n // ======================== MISC ========================\n equals(other) {\n return this.r === other.r && this.g === other.g && this.b === other.b && this.a === other.a;\n }\n clone() {\n return this._c(this);\n }\n\n // ======================= Format =======================\n toHexString() {\n let hex = '#';\n const rHex = (this.r || 0).toString(16);\n hex += rHex.length === 2 ? rHex : '0' + rHex;\n const gHex = (this.g || 0).toString(16);\n hex += gHex.length === 2 ? gHex : '0' + gHex;\n const bHex = (this.b || 0).toString(16);\n hex += bHex.length === 2 ? bHex : '0' + bHex;\n if (typeof this.a === 'number' && this.a >= 0 && this.a < 1) {\n const aHex = round(this.a * 255).toString(16);\n hex += aHex.length === 2 ? aHex : '0' + aHex;\n }\n return hex;\n }\n\n /** CSS support color pattern */\n toHsl() {\n return {\n h: this.getHue(),\n s: this.getSaturation(),\n l: this.getLightness(),\n a: this.a\n };\n }\n\n /** CSS support color pattern */\n toHslString() {\n const h = this.getHue();\n const s = round(this.getSaturation() * 100);\n const l = round(this.getLightness() * 100);\n return this.a !== 1 ? `hsla(${h},${s}%,${l}%,${this.a})` : `hsl(${h},${s}%,${l}%)`;\n }\n\n /** Same as toHsb */\n toHsv() {\n return {\n h: this.getHue(),\n s: this.getSaturation(),\n v: this.getValue(),\n a: this.a\n };\n }\n toRgb() {\n return {\n r: this.r,\n g: this.g,\n b: this.b,\n a: this.a\n };\n }\n toRgbString() {\n return this.a !== 1 ? `rgba(${this.r},${this.g},${this.b},${this.a})` : `rgb(${this.r},${this.g},${this.b})`;\n }\n toString() {\n return this.toRgbString();\n }\n\n // ====================== Privates ======================\n /** Return a new FastColor object with one channel changed */\n _sc(rgb, value, max) {\n const clone = this.clone();\n clone[rgb] = limitRange(value, max);\n return clone;\n }\n _c(input) {\n return new this.constructor(input);\n }\n getMax() {\n if (typeof this._max === 'undefined') {\n this._max = Math.max(this.r, this.g, this.b);\n }\n return this._max;\n }\n getMin() {\n if (typeof this._min === 'undefined') {\n this._min = Math.min(this.r, this.g, this.b);\n }\n return this._min;\n }\n fromHexString(trimStr) {\n const withoutPrefix = trimStr.replace('#', '');\n function connectNum(index1, index2) {\n return parseInt(withoutPrefix[index1] + withoutPrefix[index2 || index1], 16);\n }\n if (withoutPrefix.length < 6) {\n // #rgb or #rgba\n this.r = connectNum(0);\n this.g = connectNum(1);\n this.b = connectNum(2);\n this.a = withoutPrefix[3] ? connectNum(3) / 255 : 1;\n } else {\n // #rrggbb or #rrggbbaa\n this.r = connectNum(0, 1);\n this.g = connectNum(2, 3);\n this.b = connectNum(4, 5);\n this.a = withoutPrefix[6] ? connectNum(6, 7) / 255 : 1;\n }\n }\n fromHsl({\n h,\n s,\n l,\n a\n }) {\n this._h = h % 360;\n this._s = s;\n this._l = l;\n this.a = typeof a === 'number' ? a : 1;\n if (s <= 0) {\n const rgb = round(l * 255);\n this.r = rgb;\n this.g = rgb;\n this.b = rgb;\n }\n let r = 0,\n g = 0,\n b = 0;\n const huePrime = h / 60;\n const chroma = (1 - Math.abs(2 * l - 1)) * s;\n const secondComponent = chroma * (1 - Math.abs(huePrime % 2 - 1));\n if (huePrime >= 0 && huePrime < 1) {\n r = chroma;\n g = secondComponent;\n } else if (huePrime >= 1 && huePrime < 2) {\n r = secondComponent;\n g = chroma;\n } else if (huePrime >= 2 && huePrime < 3) {\n g = chroma;\n b = secondComponent;\n } else if (huePrime >= 3 && huePrime < 4) {\n g = secondComponent;\n b = chroma;\n } else if (huePrime >= 4 && huePrime < 5) {\n r = secondComponent;\n b = chroma;\n } else if (huePrime >= 5 && huePrime < 6) {\n r = chroma;\n b = secondComponent;\n }\n const lightnessModification = l - chroma / 2;\n this.r = round((r + lightnessModification) * 255);\n this.g = round((g + lightnessModification) * 255);\n this.b = round((b + lightnessModification) * 255);\n }\n fromHsv({\n h,\n s,\n v,\n a\n }) {\n this._h = h % 360;\n this._s = s;\n this._v = v;\n this.a = typeof a === 'number' ? a : 1;\n const vv = round(v * 255);\n this.r = vv;\n this.g = vv;\n this.b = vv;\n if (s <= 0) {\n return;\n }\n const hh = h / 60;\n const i = Math.floor(hh);\n const ff = hh - i;\n const p = round(v * (1.0 - s) * 255);\n const q = round(v * (1.0 - s * ff) * 255);\n const t = round(v * (1.0 - s * (1.0 - ff)) * 255);\n switch (i) {\n case 0:\n this.g = t;\n this.b = p;\n break;\n case 1:\n this.r = q;\n this.b = p;\n break;\n case 2:\n this.r = p;\n this.b = t;\n break;\n case 3:\n this.r = p;\n this.g = q;\n break;\n case 4:\n this.r = t;\n this.g = p;\n break;\n case 5:\n default:\n this.g = p;\n this.b = q;\n break;\n }\n }\n fromHsvString(trimStr) {\n const cells = splitColorStr(trimStr, parseHSVorHSL);\n this.fromHsv({\n h: cells[0],\n s: cells[1],\n v: cells[2],\n a: cells[3]\n });\n }\n fromHslString(trimStr) {\n const cells = splitColorStr(trimStr, parseHSVorHSL);\n this.fromHsl({\n h: cells[0],\n s: cells[1],\n l: cells[2],\n a: cells[3]\n });\n }\n fromRgbString(trimStr) {\n const cells = splitColorStr(trimStr, (num, txt) =>\n // Convert percentage to number. e.g. 50% -> 128\n txt.includes('%') ? round(num / 100 * 255) : num);\n this.r = cells[0];\n this.g = cells[1];\n this.b = cells[2];\n this.a = cells[3];\n }\n}","export * from \"./FastColor\";\nexport * from \"./types\";","export {};","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","// extracted by mini-css-extract-plugin\nexport {};","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustBrightness = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the brightness of a given color by a specified amount.\n *\n * @param {string} color - The color to adjust, in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the brightness by. This value can be positive (to increase brightness)\n * or negative (to decrease brightness). The adjusted lightness is kept within the 0-100 range.\n *\n * @returns {string} - The adjusted color, converted back to its original format.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustBrightness('#00FF00', -20); // makes a bright green color darker\n * adjustBrightness('rgb(255, 0, 0)', 10); // makes a red color brighter\n * adjustBrightness('invalidColor', 10); // uses white as fallback and adjusts its brightness\n */\nconst adjustBrightness = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n l = Math.max(0, Math.min(100, l + amount));\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustBrightness = adjustBrightness;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustHue = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the hue of a given color by a specified amount.\n *\n * @param {string} color - The color to be adjusted, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the hue by. This value can be positive (to increase hue)\n * or negative (to decrease hue). The hue value is constrained between 0 and 360 degrees.\n *\n * @returns {string} - The color with adjusted hue, in the same format as the input color.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustHue('#00FF00', 30); // changes the hue of a bright green color.\n * adjustHue('rgb(255, 0, 0)', -45); // changes the hue of a red color.\n * adjustHue('invalidColor', 60); // uses white as fallback and adjusts its hue.\n */\nconst adjustHue = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n h = (h + amount) % 360;\n if (h < 0)\n h += 360;\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustHue = adjustHue;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.adjustSaturation = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Adjusts the saturation of a given color by a specified amount.\n *\n * @param {string} color - The color to be adjusted, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} amount - The amount to adjust the saturation by. This value can be positive (to increase saturation)\n * or negative (to decrease saturation). The final saturation value is constrained\n * between 0% (completely desaturated) and 100% (fully saturated).\n *\n * @returns {string} - The color with adjusted saturation, in the same format as the input color.\n * If the input color format was invalid, returns the adjusted white color in the same format.\n *\n * Example usage:\n * adjustSaturation('#00FF00', -20); // decreases the saturation of a bright green color, making it more muted.\n * adjustSaturation('rgb(255, 0, 0)', 20); // increases the saturation of a red color, making it more vivid.\n * adjustSaturation('invalidColor', 10); // uses white as fallback and adjusts its saturation.\n */\nconst adjustSaturation = (color, amount) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const hslColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.HSL);\n let [h, s, l] = hslColor.match(/\\d+/g).map(Number);\n s = Math.max(0, Math.min(100, s + amount));\n return (0, convert_color_1.convertColor)(`hsl(${h}, ${s}%, ${l}%)`, targetFormat);\n};\nexports.adjustSaturation = adjustSaturation;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.applyGreyscale = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color to its grayscale equivalent using the luminosity method.\n *\n * @param {string} color - The color in any supported format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} The grayscale equivalent of the color represented in the same format as the input.\n * If the input color format was invalid, returns the grayscale version of white in the same format.\n *\n * Example usage:\n * applyGreyscale('#ff6347'); // Returns a grayscale version of the tomato color.\n * applyGreyscale('invalidColor'); // Uses white as fallback and returns its grayscale version.\n */\nconst applyGreyscale = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n const rgbColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB);\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number);\n const grey = Math.round(0.2126 * r + 0.7152 * g + 0.0722 * b);\n return (0, convert_color_1.convertColor)(`rgb(${grey}, ${grey}, ${grey})`, targetFormat);\n};\nexports.applyGreyscale = applyGreyscale;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.applySepia = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Applies a sepia tone effect to the specified color.\n * The sepia effect is achieved by adjusting the Red, Green, and Blue components\n * of the color according to a set formula that simulates the look of sepia-toned photographs.\n *\n * @param {string} color - The color to which the sepia effect will be applied, specified as a string\n * in a recognized format (e.g., HEX, RGB, named colors).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} - The sepia-toned color, represented in the same format as the input.\n * If the input color format was invalid, returns the sepia-toned white color in the same format.\n *\n * Example usage:\n * applySepia('#826C34'); // returns a sepia-toned version of the original color.\n * applySepia('invalidColor'); // uses white as fallback and returns its sepia-toned version.\n */\nconst applySepia = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB).match(/\\d+/g).map(Number);\n r = Math.round(Math.min(255, (r * 0.393) + (g * 0.769) + (b * 0.189)));\n g = Math.round(Math.min(255, (r * 0.349) + (g * 0.686) + (b * 0.168)));\n b = Math.round(Math.min(255, (r * 0.272) + (g * 0.534) + (b * 0.131)));\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, targetFormat);\n};\nexports.applySepia = applySepia;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.blendColors = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Blends two colors together based on a specified weight, producing a new color.\n * The weight determines the contribution of each color to the resulting blend.\n *\n * @param {Color | string} fromColor - The object of Color class or the starting color string in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {Color | string} toColor - The object of Color class or the ending color string in a recognized color format.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} weight - A decimal number between 0 and 1 representing the weight of the `toColor` in the blend.\n * A weight of 0 will result in the `fromColor`, a weight of 1 will result in the `toColor`,\n * and a weight of 0.5 will produce an evenly blended color.\n *\n * @returns {string} - The blended color in the same format as the `fromColor`.\n * If either input color format was invalid, white will be used as fallback for that color.\n *\n * Example usage:\n * blendColors('#FF0000', '#0000FF', 0.5); // returns a color string representing the color halfway between red and blue.\n * blendColors('invalidColor', '#0000FF', 0.5); // uses white as fallback for the first color.\n */\nconst blendColors = (fromColor, toColor, weight) => {\n if (typeof fromColor === 'string') {\n fromColor = new color_1.Color(fromColor);\n }\n if (typeof toColor === 'string') {\n toColor = new color_1.Color(toColor);\n }\n if (weight < 0 || weight > 1) {\n throw new Error('Invalid weight value');\n }\n // Use white as fallback if color format is invalid\n const fromColorFormat = fromColor.format() || types_1.ColorFormat.HEX;\n const fromRGB = fromColor.rgb().match(/\\d+/g).map(Number);\n const toRGB = toColor.rgb().match(/\\d+/g).map(Number);\n const [r, g, b] = [0, 1, 2].map((i) => Math.round(fromRGB[i] * (1 - weight) + toRGB[i] * weight));\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, fromColorFormat);\n};\nexports.blendColors = blendColors;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.blendMultipleColors = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Blends multiple colors together based on their specified weights, producing a new color.\n * Each color's weight determines its contribution to the resulting blend.\n *\n * @param {ColorWeight[]} colorWeights - An array of objects, each containing a `color` which is the object of Color class or string in a recognized color format and a `weight` number.\n * The weights determine the contribution of each color to the final blend.\n *\n * @returns {string} - The blended color in the same format as the first color in the array.\n *\n * @throws {Error} - Throws an error if any color is in an invalid format or if weights are invalid.\n *\n * Example usage:\n * blendMultipleColors([{ color: '#FF0000', weight: 1 }, { color: '#0000FF', weight: 2 }]); // returns a color string blended from red and blue with blue having twice the weight.\n */\nconst blendMultipleColors = (colorWeights) => {\n if (colorWeights.length === 0) {\n throw new Error('The array of color weights must not be empty.');\n }\n let colors = colorWeights\n .map(({ color, weight }) => ({ color: typeof color === 'string' ? new color_1.Color(color) : color, weight }));\n // Use white as fallback if the first color format is invalid\n const firstColorFormat = colors[0].color.format() || types_1.ColorFormat.HEX;\n const totalWeight = colors.reduce((sum, cw) => sum + cw.weight, 0);\n if (totalWeight <= 0) {\n throw new Error('Total weight must be greater than zero.');\n }\n const blendedRGB = [0, 0, 0];\n colors.forEach(({ color, weight }) => {\n const rgb = color.rgb().match(/\\d+/g).map(Number);\n const normalizedWeight = weight / totalWeight;\n [0, 1, 2].forEach((i) => {\n blendedRGB[i] += rgb[i] * normalizedWeight;\n });\n });\n const [r, g, b] = blendedRGB.map(Math.round);\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, firstColorFormat);\n};\nexports.blendMultipleColors = blendMultipleColors;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.calculateContrast = void 0;\nconst color_1 = require(\"./color\");\n/**\n * Calculates the contrast ratio between two colors.\n *\n * @param {Color | string} color1 - The object of Color class or the first color string in a recognized color format.\n * @param {Color | string} color2 - The object of Color class or the second color string in a recognized color format.\n *\n * @returns {number} The contrast ratio between the two colors.\n *\n * Example usage:\n * calculateContrast('#ffffff', '#000000'); // Returns 21 (maximum contrast)\n */\nconst calculateContrast = (color1, color2) => {\n if (typeof color1 === 'string') {\n color1 = new color_1.Color(color1);\n }\n if (typeof color2 === 'string') {\n color2 = new color_1.Color(color2);\n }\n const luminance1 = color1.luminance();\n const luminance2 = color2.luminance();\n const l1 = Math.max(luminance1, luminance2);\n const l2 = Math.min(luminance1, luminance2);\n return (l1 + 0.05) / (l2 + 0.05);\n};\nexports.calculateContrast = calculateContrast;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.calculateSimilarity = void 0;\nconst color_1 = require(\"./color\");\nconst types_1 = require(\"./types\");\n/**\n * Calculates the similarity between two colors using the Euclidean distance in RGB color space.\n *\n * @param {Color | string} color1 - The first color for comparison. Can be a color string or a Color instance.\n * @param {Color | string} color2 - The second color for comparison. Can be a color string or a Color instance.\n *\n * @returns {number} - A similarity percentage where 100% means identical colors and 0% means completely different colors.\n *\n * Example usage:\n * calculateSimilarity('#ff0000', '#00ff00'); // Returns similarity between red and green\n * calculateSimilarity(new Color('#ff0000'), new Color('#00ff00')); // Same as above using Color instances\n */\nconst calculateSimilarity = (color1, color2) => {\n color1 = typeof color1 === 'string' ? new color_1.Color(color1) : color1;\n color2 = typeof color2 === 'string' ? new color_1.Color(color2) : color2;\n const { r: r1, g: g1, b: b1 } = color1.parseNumbers(types_1.ColorFormat.RGB);\n const { r: r2, g: g2, b: b2 } = color2.parseNumbers(types_1.ColorFormat.RGB);\n const difference = Math.sqrt((r1 - r2) ** 2 + (g1 - g2) ** 2 + (b1 - b2) ** 2);\n const maxDifference = Math.sqrt(3 * 255 ** 2);\n return 100 - (difference / maxDifference) * 100;\n};\nexports.calculateSimilarity = calculateSimilarity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.changeOpacity = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Changes the opacity of a specified color to a new value.\n *\n * @param {string} color - The color whose opacity will be changed, specified as a string\n * in a recognized format (e.g., HEX, RGB, HSL, named colors).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} opacity - The new opacity level for the color, a number between 0 and 1.\n * 0 represents full transparency, and 1 represents full opacity.\n *\n * @returns {string} - The color with adjusted opacity, in the same format as the input.\n * If the input color format was invalid, returns the white color with adjusted opacity in the same format.\n *\n * Example usage:\n * changeOpacity('#ff0000', 0.5); // Returns a half-transparent red color in HEX format.\n * changeOpacity('rgba(255, 0, 0, 0.8)', 0.3); // Adjusts an RGBA red color to 30% opacity.\n * changeOpacity('invalidColor', 0.7); // Uses white as fallback and returns it with 70% opacity.\n */\nconst changeOpacity = (color, opacity) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b, a] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGBA).match(/\\d+(\\.\\d+)?/g).map(Number);\n a = Math.max(0, Math.min(1, opacity));\n return (0, convert_color_1.convertColor)(`rgba(${[r, g, b, a].join(', ')})`, targetFormat);\n};\nexports.changeOpacity = changeOpacity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Color = void 0;\nconst adjust_brightness_1 = require(\"./adjust-brightness\");\nconst adjust_saturation_1 = require(\"./adjust-saturation\");\nconst apply_greyscale_1 = require(\"./apply-greyscale\");\nconst apply_sepia_1 = require(\"./apply-sepia\");\nconst change_opacity_1 = require(\"./change-opacity\");\nconst convert_color_1 = require(\"./convert-color\");\nconst extract_opacity_1 = require(\"./extract-opacity\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst get_luminance_1 = require(\"./get-luminance\");\nconst invert_color_1 = require(\"./invert-color\");\nconst is_dark_1 = require(\"./is-dark\");\nconst is_light_1 = require(\"./is-light\");\nconst parse_color_numbers_1 = require(\"./parse-color-numbers\");\nconst shade_1 = require(\"./shade\");\nconst tint_1 = require(\"./tint\");\nconst types_1 = require(\"./types\");\n/**\n * The Color class provides a robust set of methods for color manipulation and conversion.\n * It supports various color formats and offers functionalities to adjust color properties like\n * brightness, saturation, opacity, and to apply effects like sepia and grayscale.\n */\nclass Color {\n /**\n * Creates an instance of the Color class.\n * @param {string} initialColor - The initial color value in any supported format.\n */\n constructor(initialColor) {\n // Holds the current color value as a string\n this.currentColor = '';\n // Holds the current color format as a string\n this.currentFormat = '';\n this.set(initialColor);\n }\n /**\n * Sets the current color and format if the color is valid.\n * @param {string} color - The color value to be set.\n */\n set(color) {\n const format = (0, get_color_format_1.getColorFormat)(color);\n if (format) {\n this.currentColor = color;\n this.currentFormat = format;\n }\n else {\n this.currentColor = '';\n this.currentFormat = '';\n }\n }\n /**\n * Returns the current color value.\n * @returns {string} The current color value.\n */\n get() {\n return this.currentColor;\n }\n /**\n * Returns the current color format.\n * @returns {string} The current color format.\n */\n format() {\n return this.currentFormat;\n }\n /**\n * Converts the current color to HEX format.\n * @param {ColorFormat} format - The format to convert.\n * @returns {string} The color in converted format.\n */\n convert(format) {\n return (0, convert_color_1.convertColor)(this.currentColor, format);\n }\n /**\n * Converts the current color to HEX format.\n * @returns {string} The color in HEX format.\n */\n hex() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HEX);\n }\n /**\n * Converts the current color to HEXA format (HEX with alpha).\n * @returns {string} The color in HEXA format.\n */\n hexa() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HEXA);\n }\n /**\n * Converts the current color to RGB format.\n * @returns {string} The color in RGB format.\n */\n rgb() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.RGB);\n }\n /**\n * Converts the current color to RGBA format (RGB with alpha).\n * @returns {string} The color in RGBA format.\n */\n rgba() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.RGBA);\n }\n /**\n * Converts the current color to HSL format.\n * @returns {string} The color in HSL format.\n */\n hsl() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSL);\n }\n /**\n * Converts the current color to HSLA format (HSL with alpha).\n * @returns {string} The color in HSLA format.\n */\n hsla() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSLA);\n }\n /**\n * Converts the current color to HSV format.\n * @returns {string} The color in HSV format.\n */\n hsv() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.HSV);\n }\n /**\n * Converts the current color to CMYK format.\n * @returns {string} The color in CMYK format.\n */\n cmyk() {\n return (0, convert_color_1.convertColor)(this.currentColor, types_1.ColorFormat.CMYK);\n }\n /**\n * Extracts the opacity value from the current color.\n * @returns {{ opacity: number; color: string }} The opacity value and the base color.\n */\n extractOpacity() {\n return (0, extract_opacity_1.extractOpacity)(this.currentColor);\n }\n /**\n * Parses the color components into numeric values.\n * @param {ColorFormat.RGB | ColorFormat.RGBA | ColorFormat.HSL | ColorFormat.HSLA} format - The format to parse.\n * @returns {RGB | RGBA | HSL | HSLA} The parsed numeric components of the color.\n */\n parseNumbers(format) {\n return (0, parse_color_numbers_1.parseColorNumbers)(this.currentColor, format);\n }\n /**\n * Calculates the luminance of the current color.\n * @returns {number} The luminance value.\n */\n luminance() {\n return (0, get_luminance_1.getLuminance)(this.currentColor);\n }\n /**\n * Determines if the current color is light.\n * @returns {boolean} True if the color is considered light, false otherwise.\n */\n isLight() {\n return (0, is_light_1.isLight)(this.currentColor);\n }\n /**\n * Determines if the current color is dark.\n * @returns {boolean} True if the color is considered dark, false otherwise.\n */\n isDark() {\n return (0, is_dark_1.isDark)(this.currentColor);\n }\n /**\n * Adjusts the brightness of the current color by the specified amount.\n * @param {number} amount - The amount to adjust the brightness by.\n * @returns {string} The updated color.\n */\n applyBrightness(amount) {\n this.currentColor = (0, adjust_brightness_1.adjustBrightness)(this.currentColor, amount);\n return this.currentColor;\n }\n /**\n * Returns a new color with the brightness adjusted by the specified amount without changing the current color.\n * @param {number} amount - The amount to adjust the brightness by.\n * @returns {string} The color with adjusted brightness.\n */\n withBrightness(amount) {\n return (0, adjust_brightness_1.adjustBrightness)(this.currentColor, amount);\n }\n /**\n * Adjusts the saturation of the current color by the specified amount.\n * @param {number} amount - The amount to adjust the saturation by.\n * @returns {string} The updated color.\n */\n applySaturation(amount) {\n this.currentColor = (0, adjust_saturation_1.adjustSaturation)(this.currentColor, amount);\n return this.currentColor;\n }\n /**\n * Returns a new color with the saturation adjusted by the specified amount without changing the current color.\n * @param {number} amount - The amount to adjust the saturation by.\n * @returns {string} The color with adjusted saturation.\n */\n withSaturation(amount) {\n return (0, adjust_saturation_1.adjustSaturation)(this.currentColor, amount);\n }\n /**\n * Applies a grayscale effect to the current color and updates it.\n * @returns {string} The updated color.\n */\n applyGrayscale() {\n this.currentColor = (0, apply_greyscale_1.applyGreyscale)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color with a grayscale effect without changing the current color.\n * @returns {string} The color with a grayscale effect.\n */\n withGrayscale() {\n return (0, apply_greyscale_1.applyGreyscale)(this.currentColor);\n }\n /**\n * Applies a sepia effect to the current color and updates it.\n * @returns {string} The updated color.\n */\n applySepia() {\n this.currentColor = (0, apply_sepia_1.applySepia)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color with a sepia effect without changing the current color.\n * @returns {string} The color with a sepia effect.\n */\n withSepia() {\n return (0, apply_sepia_1.applySepia)(this.currentColor);\n }\n /**\n * Adjusts the opacity of the current color by the specified amount.\n * @param {number} opacity - The new opacity level.\n * @returns {string} The updated color.\n */\n applyOpacity(opacity) {\n this.currentColor = (0, change_opacity_1.changeOpacity)(this.currentColor, opacity);\n return this.currentColor;\n }\n /**\n * Returns a new color with the specified opacity without changing the current color.\n * @param {number} opacity - The new opacity level.\n * @returns {string} The color with adjusted opacity.\n */\n withOpacity(opacity) {\n return (0, change_opacity_1.changeOpacity)(this.currentColor, opacity);\n }\n /**\n * Inverts the current color and updates it.\n * @returns {string} The updated color.\n */\n applyInvert() {\n this.currentColor = (0, invert_color_1.invertColor)(this.currentColor);\n return this.currentColor;\n }\n /**\n * Returns a new color that is the inverse of the current color without changing the current color.\n * @returns {string} The inverted color.\n */\n withInvert() {\n return (0, invert_color_1.invertColor)(this.currentColor);\n }\n /**\n * Applies a shading effect to the current color by the specified percentage and updates it.\n * @param {number} percentage - The percentage to shade the color by.\n * @returns {string} The updated color.\n */\n applyShade(percentage) {\n this.currentColor = (0, shade_1.shade)(this.currentColor, percentage);\n return this.currentColor;\n }\n /**\n * Returns a new color that is shaded by the specified percentage without changing the current color.\n * @param {number} percentage - The percentage to shade the color by.\n * @returns {string} The shaded color.\n */\n withShade(percentage) {\n return (0, shade_1.shade)(this.currentColor, percentage);\n }\n /**\n * Applies a tinting effect to the current color by the specified percentage and updates it.\n * @param {number} percentage - The percentage to tint the color by.\n * @returns {string} The updated color.\n */\n applyTint(percentage) {\n this.currentColor = (0, tint_1.tint)(this.currentColor, percentage);\n return this.currentColor;\n }\n /**\n * Returns a new color that is tinted by the specified percentage without changing the current color.\n * @param {number} percentage - The percentage to tint the color by.\n * @returns {string} The tinted color.\n */\n withTint(percentage) {\n return (0, tint_1.tint)(this.currentColor, percentage);\n }\n}\nexports.Color = Color;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.convertColor = void 0;\nconst get_color_format_1 = require(\"./get-color-format\");\nconst convert_utils_1 = require(\"./utils/convert-utils\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color from its current format to a specified target format.\n * The conversion process involves determining the color's current format.\n *\n * @param {string} color - The color to be converted, represented as a string.\n * This color should be in a recognized color format (HEX(A), RGB(A), HSL(A), HSV, CMYK).\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {ColorFormat} toFormat - The target format to which the color should be converted.\n * This should be one of the predefined formats in the ColorFormat enumeration.\n *\n * @returns {string} - The converted color in the target format.\n * If the input color format was invalid, returns white in the target format.\n *\n * Example usage:\n * convertColor(\"#FF5733\", ColorFormat.RGB); // returns 'rgb(255, 87, 51)'\n * convertColor(\"invalidColor\", ColorFormat.HEX); // returns '#FFFFFF'\n */\nconst convertColor = (color, toFormat) => {\n const fromFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = fromFormat ? color : '#FFFFFF';\n const validFromFormat = fromFormat || types_1.ColorFormat.HEX;\n if (validFromFormat === toFormat) {\n return validColor;\n }\n const convertToBase = {\n [types_1.ColorFormat.HEX]: convert_utils_1.hexToRGBA,\n [types_1.ColorFormat.HEXA]: convert_utils_1.hexaToRGBA,\n [types_1.ColorFormat.RGB]: convert_utils_1.rgbToRGBA,\n [types_1.ColorFormat.HSL]: convert_utils_1.hslToRGBA,\n [types_1.ColorFormat.HSLA]: convert_utils_1.hslaToRGBA,\n [types_1.ColorFormat.CMYK]: convert_utils_1.cmykToRGBA,\n [types_1.ColorFormat.HSV]: convert_utils_1.hsvToRGBA,\n };\n const convertFromBase = {\n [types_1.ColorFormat.HEX]: convert_utils_1.rgbaToHex,\n [types_1.ColorFormat.HEXA]: convert_utils_1.rgbaToHexa,\n [types_1.ColorFormat.RGB]: convert_utils_1.rgbaToRGB,\n [types_1.ColorFormat.HSL]: convert_utils_1.rgbaToHSL,\n [types_1.ColorFormat.HSLA]: convert_utils_1.rgbaToHSLA,\n [types_1.ColorFormat.CMYK]: convert_utils_1.rgbaToCMYK,\n [types_1.ColorFormat.HSV]: convert_utils_1.rgbaToHSV,\n };\n const baseColor = validFromFormat === types_1.BaseColorFormat ? validColor : convertToBase[validFromFormat](validColor);\n const outputColor = toFormat === types_1.BaseColorFormat ? baseColor : convertFromBase[toFormat](baseColor);\n return outputColor;\n};\nexports.convertColor = convertColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.extractOpacity = void 0;\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Extracts the color and opacity from a given color string.\n * If the color format does not include an alpha channel, the opacity is returned as 1.\n * Supports HEXA, RGBA, and HSLA color formats.\n *\n * @param {string} color - The color string to extract opacity from.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {{ color: string, opacity: number }} An object containing the color without opacity and the opacity value.\n * If the input color format was invalid, returns white with opacity 1.\n *\n * Example usage:\n * extractOpacity('#ff000080'); // Returns { color: \"#ff0000\", opacity: 0.5 }.\n * extractOpacity('invalidColor'); // Returns { color: \"#FFFFFF\", opacity: 1 }.\n */\nconst extractOpacity = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n let opacity = 1;\n // Use white as fallback if color format is invalid\n if (!colorFormat) {\n return { color: '#FFFFFF', opacity: 1 };\n }\n switch (colorFormat) {\n case types_1.ColorFormat.HEXA:\n opacity = parseInt(color.slice(-2), 16) / 255;\n color = color.slice(0, -2);\n break;\n case types_1.ColorFormat.RGBA:\n [, , , opacity] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n color = `rgb(${color.match(/\\d+/g).slice(0, 3).join(', ')})`;\n break;\n case types_1.ColorFormat.HSLA:\n [, , , opacity] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n color = `hsl(${color.match(/\\d+/g).slice(0, 3).join(', ')})`;\n break;\n }\n return { color, opacity };\n};\nexports.extractOpacity = extractOpacity;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateMultiSteppedGradient = void 0;\nconst color_1 = require(\"./color\");\nconst generate_stepped_gradient_1 = require(\"./generate-stepped-gradient\");\n/**\n * Generates a complex stepped color gradient between multiple colors.\n * This function creates a series of intermediate colors forming a gradient\n * between each pair of colors in the argument list, with specified steps between each pair.\n *\n * @param args - A list of colors and steps where each color (except the last one) is followed by a number\n * indicating the steps to the next color. For example, the call might look like:\n * generateMultiSteppedGradient(\"#ff0000\", 3, \"#ffff00\", 4, \"#0000ff\").\n *\n * @returns An array of color strings representing the complex gradient including all intermediate colors.\n * The format of each color in the array is the same as the format of the first color in the input list.\n *\n * @throws Will throw an error if the arguments don't follow the pattern [color, steps, color, ..., color].\n *\n * Example usage:\n * generateMultiSteppedGradient(\"#ff0000\", 3, \"#ffff00\", 4, \"#0000ff\");\n * // Returns an array including \"#ff0000\", three intermediate colors to \"#ffff00\",\n * // \"#ffff00\" itself, four intermediate colors to \"#0000ff\", and \"#0000ff\".\n */\nconst generateMultiSteppedGradient = (...args) => {\n if (args.length < 3 || args.length % 2 === 0) {\n throw new Error('Function must be called with at least one color and one step count, in an interleaved manner.');\n }\n let gradientColors = [];\n for (let i = 0; i < args.length - 2; i += 2) {\n const fromColor = typeof args[i] === 'string' ? new color_1.Color(args[i]) : args[i];\n const steps = args[i + 1];\n const toColor = typeof args[i + 2] === 'string' ? new color_1.Color(args[i + 2]) : args[i + 2];\n if (typeof steps !== 'number') {\n throw new Error('Arguments must follow the pattern [color, steps, color, ..., color].');\n }\n const gradientSegment = (0, generate_stepped_gradient_1.generateSteppedGradient)(fromColor, toColor, steps);\n if (i === 0) {\n gradientColors.push(fromColor.get());\n }\n gradientColors.push(...gradientSegment);\n gradientColors.push(toColor.get());\n }\n return gradientColors;\n};\nexports.generateMultiSteppedGradient = generateMultiSteppedGradient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateSteppedGradient = void 0;\nconst color_1 = require(\"./color\");\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Generates a stepped color gradient between two colors.\n * This function creates a series of intermediate colors that form a gradient\n * from a starting color to an ending color, with the number of steps.\n *\n * @param {Color | string} fromColor - The color string representing the start color of the gradient.\n * This color should be the object of Color class or a string in format recognized by the `getColorFormat` and `convertColor` functions.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {Color | string} toColor - The color string representing the end color of the gradient.\n * his color should be the object of Color class or a string in format recognized by the `getColorFormat` and `convertColor` functions.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {number} count - The number of intermediate colors to generate in the gradient.\n * The total number of colors in the returned array will be equal to this count.\n *\n * @returns {string[]} An array of color strings representing the stepped gradient from the starting color to the ending color.\n * Each color in the array is converted back to the format of the `fromColor`.\n * If either input color format was invalid, white will be used as fallback for that color.\n *\n * Example usage:\n * generateSteppedGradient('#FF0000', '#00FF00', 5); // returns an array of 5 intermediate colors in hexadecimal format between red and green.\n * generateSteppedGradient('invalidColor', '#00FF00', 3); // uses white as fallback for the first color.\n */\nconst generateSteppedGradient = (fromColor, toColor, count) => {\n if (typeof fromColor === 'string') {\n fromColor = new color_1.Color(fromColor);\n }\n if (typeof toColor === 'string') {\n toColor = new color_1.Color(toColor);\n }\n // Use white as fallback if color format is invalid\n const fromColorFormat = fromColor.format() || types_1.ColorFormat.HEX;\n const fromRGBA = fromColor.rgba().match(/\\d+(\\.\\d+)?/g).map(Number);\n const toRGBA = toColor.rgba().match(/\\d+(\\.\\d+)?/g).map(Number);\n const step = 1 / (count + 1);\n let intermediateColors = [];\n for (let i = 1; i <= count; i++) {\n const interpolatedColor = fromRGBA.map((start, index) => {\n const end = toRGBA[index];\n return index !== 3\n ? Math.round(start + (end - start) * step * i)\n : (start + (end - start) * step * i).toFixed(2);\n });\n intermediateColors.push((0, convert_color_1.convertColor)(`rgba(${interpolatedColor.join(', ')})`, fromColorFormat));\n }\n return intermediateColors;\n};\nexports.generateSteppedGradient = generateSteppedGradient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getColorFormat = void 0;\nconst is_valid_color_1 = require(\"./is-valid-color\");\nconst types_1 = require(\"./types\");\n/**\n * Identifies the format of a given color string from among several supported color models.\n * Utilizes a series of specific validators for different color formats, including HEX, HEXA,\n * RGB, RGBA, HSL, HSLA, HSV, and CMYK. This approach allows for accurately determining the\n * color model of the input string, facilitating format-specific processing or conversions.\n *\n * @param {string} color - The color string to be identified.\n *\n * @returns {ColorFormat | null} - The identified color format as a `ColorFormat` enum value,\n * or `null` if the format does not match any of the supported types.\n *\n * Example usage:\n * getColorFormat('#FF5733'); // returns 'HEX'\n * getColorFormat('rgb(255, 99, 71)'); // returns 'RGB'\n * getColorFormat('invalidColor'); // returns null, as the format is not recognized\n */\nconst getColorFormat = (color) => {\n const validators = {\n [types_1.ColorFormat.HEX]: is_valid_color_1.isValidHEXColor,\n [types_1.ColorFormat.HEXA]: is_valid_color_1.isValidHEXAColor,\n [types_1.ColorFormat.RGB]: is_valid_color_1.isValidRGBColor,\n [types_1.ColorFormat.RGBA]: is_valid_color_1.isValidRGBAColor,\n [types_1.ColorFormat.HSL]: is_valid_color_1.isValidHSLColor,\n [types_1.ColorFormat.HSLA]: is_valid_color_1.isValidHSLAColor,\n [types_1.ColorFormat.HSV]: is_valid_color_1.isValidHSVColor,\n [types_1.ColorFormat.CMYK]: is_valid_color_1.isValidCMYKColor,\n };\n for (const [type, validator] of Object.entries(validators)) {\n if (validator(color)) {\n return type;\n }\n }\n return null;\n};\nexports.getColorFormat = getColorFormat;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getLuminance = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Calculates the luminance of a given color.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {number} The luminance of the color, a value between 0 and 1.\n *\n * Example usage:\n * getLuminance('#ff0000'); // Returns the luminance of red.\n */\nconst getLuminance = (color) => {\n const rgbColor = (0, convert_color_1.convertColor)(color, types_1.ColorFormat.RGB);\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number).map((v) => {\n v /= 255;\n return v <= 0.03928 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);\n });\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n};\nexports.getLuminance = getLuminance;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTemperature = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a color string into an estimated correlated color temperature (CCT) value expressed in Kelvin.\n * The result is clamped to the range 1000K–10000K, which covers most practical lighting conditions from candlelight to blue daylight.\n *\n * @param {string} color - The color in any supported format (HEX, RGB, RGBA, HSL, HSLA, HSV, CMYK).\n * Examples: \"#FF4500\", \"rgb(255, 69, 0)\", \"hsl(16, 100%, 50%)\"\n *\n * @returns {number} Estimated color temperature in Kelvin (integer or float).\n * Always in the range 1000 ≤ CCT ≤ 10000.\n *\n * @example\n * getTemperature(\"#FF4500\"); // ~2000 (warm orange, firelight)\n * getTemperature(\"rgb(255, 215, 0)\"); // ~3000 (warm white, incandescent)\n * getTemperature(\"hsl(0, 0%, 100%)\"); // ~5500 (neutral daylight)\n * getTemperature(\"#ADD8E6\"); // ~9000 (blue sky light)\n */\nconst getTemperature = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n // Convert to RGB format to extract RGB values\n const rgbColor = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB);\n // Parse RGB values and normalize to 0–1 range\n const [r, g, b] = rgbColor.match(/\\d+/g).map(Number).map(v => v / 255);\n // Apply gamma correction to convert sRGB → linear RGB\n const linearR = r <= 0.04045 ? r / 12.92 : Math.pow((r + 0.055) / 1.055, 2.4);\n const linearG = g <= 0.04045 ? g / 12.92 : Math.pow((g + 0.055) / 1.055, 2.4);\n const linearB = b <= 0.04045 ? b / 12.92 : Math.pow((b + 0.055) / 1.055, 2.4);\n // Convert linear RGB to XYZ color space using sRGB D65 white point\n // sRGB to XYZ transformation matrix (D65 white point)\n const x = linearR * 0.4124 + linearG * 0.3576 + linearB * 0.1805;\n const y = linearR * 0.2126 + linearG * 0.7152 + linearB * 0.0722;\n const z = linearR * 0.0193 + linearG * 0.1192 + linearB * 0.9505;\n // Compute chromaticity coordinates (x, y)\n const sum = x + y + z;\n if (sum === 0) {\n // Handle pure black or very dark colors\n return 6500; // Default to neutral daylight\n }\n const chromaticityX = x / sum;\n const chromaticityY = y / sum;\n // Apply McCamy's formula to approximate CCT\n // McCamy's formula: CCT = 449 * n^3 + 3525 * n^2 + 6823.3 * n + 5520.33\n // where n = (x - 0.3320) / (0.1858 - y)\n const n = (chromaticityX - 0.3320) / (0.1858 - chromaticityY);\n if (isNaN(n) || !isFinite(n)) {\n // Handle edge cases where the formula breaks down\n return 6500; // Default to neutral daylight\n }\n const cct = 449 * Math.pow(n, 3) + 3525 * Math.pow(n, 2) + 6823.3 * n + 5520.33;\n // Clamp the result to the valid range: 1000K–10000K\n return Math.max(1000, Math.min(10000, cct));\n};\nexports.getTemperature = getTemperature;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./adjust-brightness\"), exports);\n__exportStar(require(\"./adjust-hue\"), exports);\n__exportStar(require(\"./adjust-saturation\"), exports);\n__exportStar(require(\"./apply-greyscale\"), exports);\n__exportStar(require(\"./apply-sepia\"), exports);\n__exportStar(require(\"./blend-colors\"), exports);\n__exportStar(require(\"./blend-multiple-colors\"), exports);\n__exportStar(require(\"./calculate-contrast\"), exports);\n__exportStar(require(\"./calculate-similarity\"), exports);\n__exportStar(require(\"./change-opacity\"), exports);\n__exportStar(require(\"./color\"), exports);\n__exportStar(require(\"./convert-color\"), exports);\n__exportStar(require(\"./extract-opacity\"), exports);\n__exportStar(require(\"./generate-multi-stepped-gradient\"), exports);\n__exportStar(require(\"./generate-stepped-gradient\"), exports);\n__exportStar(require(\"./get-color-format\"), exports);\n__exportStar(require(\"./get-luminance\"), exports);\n__exportStar(require(\"./get-temperature\"), exports);\n__exportStar(require(\"./invert-color\"), exports);\n__exportStar(require(\"./is-dark\"), exports);\n__exportStar(require(\"./is-light\"), exports);\n__exportStar(require(\"./is-valid-color\"), exports);\n__exportStar(require(\"./opposite-color\"), exports);\n__exportStar(require(\"./parse-color-numbers\"), exports);\n__exportStar(require(\"./random-color\"), exports);\n__exportStar(require(\"./shade\"), exports);\n__exportStar(require(\"./tint\"), exports);\n__exportStar(require(\"./types\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.invertColor = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Inverts the given color, producing its opposite in the color spectrum.\n *\n * @param {string} color - The color to be inverted, specified as a string in a recognized format.\n * This could be a hexadecimal code, RGB(A) notation, or any other format supported by `getColorFormat`.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n *\n * @returns {string} - The inverted color, represented in the same format as the input.\n * If the input color format was invalid, returns the inverted white color in the same format.\n *\n * Example usage:\n * invertColor('#FFFFFF'); // returns '#000000', inverting white to black.\n * invertColor('rgb(255, 0, 0)'); // returns 'rgb(0, 255, 255)', inverting red to cyan.\n * invertColor('invalidColor'); // uses white as fallback and returns '#000000'.\n */\nconst invertColor = (color) => {\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n const targetFormat = colorFormat || types_1.ColorFormat.HEX;\n let [r, g, b] = (0, convert_color_1.convertColor)(validColor, types_1.ColorFormat.RGB).match(/\\d+/g).map(Number);\n r = 255 - r;\n g = 255 - g;\n b = 255 - b;\n return (0, convert_color_1.convertColor)(`rgb(${[r, g, b].join(', ')})`, targetFormat);\n};\nexports.invertColor = invertColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isDark = void 0;\nconst get_luminance_1 = require(\"./get-luminance\");\n/**\n * Determines if a given color is considered dark.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {boolean} True if the color is dark, false otherwise.\n *\n * Example usage:\n * isDark('#ff0000'); // Returns true as red is considered a dark color.\n */\nconst isDark = (color) => {\n return (0, get_luminance_1.getLuminance)(color) <= 0.5;\n};\nexports.isDark = isDark;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isLight = void 0;\nconst get_luminance_1 = require(\"./get-luminance\");\n/**\n * Determines if a given color is considered light.\n *\n * @param {string} color - The color in any supported format.\n *\n * @returns {boolean} True if the color is light, false otherwise.\n *\n * Example usage:\n * isLight('#ff0000'); // Returns false as red is not considered a light color.\n */\nconst isLight = (color) => {\n return (0, get_luminance_1.getLuminance)(color) > 0.5;\n};\nexports.isLight = isLight;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValidCMYKColor = exports.isValidHSVColor = exports.isValidHSLAColor = exports.isValidHSLColor = exports.isValidRGBAColor = exports.isValidRGBColor = exports.isValidHEXAColor = exports.isValidHEXColor = exports.isValidColor = void 0;\n/**\n * Determines whether a given string is a valid HEX color.\n * A valid HEX color must start with a '#' followed by exactly\n * three or six hexadecimal characters (0-9, a-f, or A-F).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid HEX color, false otherwise.\n *\n * Example usage:\n * isValidHEXAColor('#FFF'); // returns true\n * isValidHEXAColor('#FFFFFF'); // returns true\n * isValidHEXAColor('#123ABC'); // returns true\n * isValidHEXAColor('#GGG'); // returns false, contains incorrect characters\n * isValidHEXAColor('123456'); // returns false, missing starting #\n * isValidHEXAColor('#12345'); // returns false, invalid length\n */\nconst isValidHEXColor = (color) => {\n const regex = /^#(?:[0-9a-fA-F]{3}){1,2}$/;\n return regex.test(color);\n};\nexports.isValidHEXColor = isValidHEXColor;\n/**\n * Determines whether a given string is a valid HEXA color code.\n * HEXA color codes are similar to HEX codes but include an additional alpha\n * value to specify transparency. They consist of a pound symbol (#) followed\n * by either 4 or 8 hexadecimal characters (0-9, a-f, A-F). The first three\n * (or six) characters represent the RGB color, and the last character (or two)\n * represents the alpha (transparency) value.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid HEXA color code, false otherwise.\n *\n * Example usage:\n * isValidHEXAColor('#FA3E'); // returns true\n * isValidHEXAColor('#FA3EF8'); // returns true\n * isValidHEXAColor('#FA3EF812'); // returns true\n * isValidHEXAColor('#FA3E12'); // returns false, as it lacks the alpha value for a 6-character code\n * isValidHEXAColor('FA3EF8'); // returns false, missing starting #\n */\nconst isValidHEXAColor = (color) => {\n const regex = /^#(?:[0-9a-fA-F]{4}){1,2}$/;\n return regex.test(color);\n};\nexports.isValidHEXAColor = isValidHEXAColor;\n/**\n * Checks if a given string is a valid representation of an RGB color.\n * An RGB color is specified as 'rgb(x, y, z)' where x, y, and z are integers\n * representing the red, green, and blue color components, respectively.\n * Each component must be within the range of 0 to 255.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the string is a valid RGB color format and all color components\n * are within the specified range; otherwise, false.\n *\n * Example usage:\n * isValidRGBColor('rgb(255, 99, 71)'); // returns true\n * isValidRGBColor('rgb(256, -1, 300)'); // returns false, components are out of bounds\n * isValidRGBColor('rgb(25, 99, 71)'); // returns true\n * isValidRGBColor('rgb(255,255,255)'); // returns true\n */\nconst isValidRGBColor = (color) => {\n var _a;\n const regex = /^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, r, g, b] = match;\n return [r, g, b].every((value) => value >= 0 && value <= 255);\n};\nexports.isValidRGBColor = isValidRGBColor;\n/**\n * Validates if a given string is a correct representation of an RGBA color.\n * An RGBA color is specified as 'rgba(x, y, z, a)' where x, y, and z are integers\n * representing the red, green, and blue components of the color, respectively,\n * each ranging from 0 to 255. The 'a' component is a floating-point number\n * representing the opacity, ranging from 0.0 (completely transparent) to 1.0 (fully opaque),\n * inclusive.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is a valid RGBA format and all components\n * (red, green, blue, alpha) are within their respective ranges; false otherwise.\n *\n * Example usage:\n * isValidRGBAColor('rgba(255, 99, 71, 0.5)'); // returns true\n * isValidRGBAColor('rgba(255, 99, 71, 1.1)'); // returns false, alpha value is out of bounds\n * isValidRGBAColor('rgba(255, 99, 71, -0.1)'); // returns false, negative alpha value\n */\nconst isValidRGBAColor = (color) => {\n var _a;\n const regex = /^rgba\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3}),\\s*(0|1|0?\\.\\d+|1?\\.\\d+)\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, r, g, b, a] = match;\n return [r, g, b].every((value) => value >= 0 && value <= 255) && a >= 0 && a <= 1;\n};\nexports.isValidRGBAColor = isValidRGBAColor;\n/**\n * Validates if a given string accurately represents a color in the HSL format.\n * HSL stands for Hue, Saturation, and Lightness, and colors in this format are\n * specified as 'hsl(h, s%, l%)', where h is the hue (0 to 360 degrees), s is the saturation\n * (0% to 100%), and l is the lightness (0% to 100%).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is a valid HSL format and all components\n * (hue, saturation, lightness) are within their respective ranges; false otherwise.\n *\n * Example usage:\n * isValidHSLColor('hsl(120, 50%, 50%)'); // returns true\n * isValidHSLColor('hsl(370, 50%, 50%)'); // returns false, hue is out of bounds\n * isValidHSLColor('hsl(120, 101%, 50%)'); // returns false, saturation is out of bounds\n */\nconst isValidHSLColor = (color) => {\n var _a;\n const regex = /^hsl\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, l] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && l >= 0 && l <= 100;\n};\nexports.isValidHSLColor = isValidHSLColor;\n/**\n * Validates if a given string is a correct representation of an HSLA color.\n * HSLA color notation includes hue (0 to 360 degrees), saturation (0% to 100%),\n * lightness (0% to 100%), and alpha (0.0 to 1.0 for transparency level).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string matches the HSLA format and all\n * components (hue, saturation, lightness, alpha) fall within\n * their respective allowable ranges; false otherwise.\n *\n * Example usage:\n * isValidHSLAColor('hsla(210, 100%, 50%, 0.5)'); // returns true\n * isValidHSLAColor('hsla(210, 100%, 50%, 1.1)'); // returns false, alpha value out of bounds\n * isValidHSLAColor('hsla(360, 50%, 50%, 0)'); // returns true\n */\nconst isValidHSLAColor = (color) => {\n var _a;\n const regex = /^hsla\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(0|1|0?\\.\\d+)\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, l, a] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && l >= 0 && l <= 100 && a >= 0 && a <= 1;\n};\nexports.isValidHSLAColor = isValidHSLAColor;\n/**\n * Validates if a given string is a correct representation of a CMYK color.\n * CMYK colors are defined with four components: Cyan, Magenta, Yellow, and Key (Black),\n * each represented as a percentage from 0% to 100%.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string matches the CMYK format and all components\n * (Cyan, Magenta, Yellow, Key) are within the 0% to 100% range; false otherwise.\n *\n * Example usage:\n * isValidCMYKColor('cmyk(0%, 100%, 0%, 0%)'); // returns true for pure magenta\n * isValidCMYKColor('cmyk(101%, 0%, 0%, 0%)'); // returns false, cyan value out of bounds\n * isValidCMYKColor('cmyk(50%, 50%, 50%, 50%)'); // returns true for a mid-tone color\n */\nconst isValidCMYKColor = (color) => {\n var _a;\n const regex = /^cmyk\\((\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, c, m, y, k] = match;\n return [c, m, y, k].every(val => val >= 0 && val <= 100);\n};\nexports.isValidCMYKColor = isValidCMYKColor;\n/**\n * Validates whether a given string is a correct representation of an HSV color.\n * HSV stands for Hue, Saturation, and Value, where Hue is measured in degrees (0 to 360),\n * and both Saturation and Value are presented as percentages (0% to 100%).\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string adheres to the HSV format and all components\n * (hue, saturation, value) are within their designated ranges; otherwise, false.\n *\n * Example usage:\n * isValidHSVColor('hsv(120, 100%, 100%)'); // returns true for pure green\n * isValidHSVColor('hsv(361, 50%, 50%)'); // returns false, hue is out of bounds\n * isValidHSVColor('hsv(240, 100%, 50%)'); // returns true for a medium blue\n */\nconst isValidHSVColor = (color) => {\n var _a;\n const regex = /^hsv\\((\\d{1,3}),\\s*(\\d{1,3})%,\\s*(\\d{1,3})%\\)$/i;\n if (!regex.test(color)) {\n return false;\n }\n const match = (_a = color.match(regex)) === null || _a === void 0 ? void 0 : _a.map(Number);\n if (!match) {\n return false;\n }\n const [, h, s, v] = match;\n return h >= 0 && h <= 360 && s >= 0 && s <= 100 && v >= 0 && v <= 100;\n};\nexports.isValidHSVColor = isValidHSVColor;\n/**\n * Validates a given color string against multiple color formats.\n * This function consolidates various specific color format validators,\n * including HEX, HEXA, RGB, RGBA, HSL, HSLA, HSV, and CMYK, to determine\n * if the color string conforms to any of these recognized formats.\n *\n * @param {string} color - The color string to be validated.\n *\n * @returns {boolean} - True if the color string is valid in at least one of the supported\n * color formats; false otherwise.\n *\n * Example usage:\n * isValidColor('#FF5733'); // returns true for a valid HEX color.\n * isValidColor('rgb(255, 99, 71)'); // returns true for a valid RGB color.\n * isValidColor('cmyk(0%, 100%, 100%, 0%)'); // returns true for a valid CMYK color.\n * isValidColor('invalidColor'); // returns false, does not match any supported format.\n */\nconst isValidColor = (color) => {\n const validators = [\n isValidHEXColor,\n isValidHEXAColor,\n isValidRGBColor,\n isValidRGBAColor,\n isValidHSLColor,\n isValidHSLAColor,\n isValidHSVColor,\n isValidCMYKColor,\n ];\n return validators.some((validator) => validator(color));\n};\nexports.isValidColor = isValidColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.oppositeColor = void 0;\nconst adjust_hue_1 = require(\"./adjust-hue\");\n/**\n * Computes the opposite color (complementary color) by adjusting the hue by 180 degrees.\n *\n * @param {string} color - The color to find the opposite for, provided in a format recognized by `getColorFormat`.\n * This could be in formats like HEX, RGB, or named colors, among others.\n *\n * @returns {string} - The opposite color, in the same format as the input color.\n *\n * @throws {Error} - If the input color's format is invalid or unrecognized, an error is thrown.\n *\n * Example usage:\n * oppositeColor('#00FF00'); // returns the opposite color of a bright green.\n * oppositeColor('rgb(255, 0, 0)'); // returns the opposite color of red.\n */\nconst oppositeColor = (color) => {\n return (0, adjust_hue_1.adjustHue)(color, 180);\n};\nexports.oppositeColor = oppositeColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseColorNumbers = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst get_color_format_1 = require(\"./get-color-format\");\nconst types_1 = require(\"./types\");\n/**\n * Converts a given color to an object containing the numerical values of its components.\n * The function supports conversion to RGB, RGBA, HSL, or HSLA format.\n *\n * @param {string} color - The color string to parse.\n * If an invalid color format is provided, white (#FFFFFF) will be used as a fallback.\n * @param {ColorFormat.RGB | ColorFormat.RGBA | ColorFormat.HSL | ColorFormat.HSLA} format - The desired format for the output.\n *\n * @returns {RGB | RGBA | HSL | HSLA} An object containing the numerical values of the color components.\n * If the input color format was invalid, returns white color values in the specified format.\n */\nconst parseColorNumbers = (color, format) => {\n if (![types_1.ColorFormat.RGB, types_1.ColorFormat.RGBA, types_1.ColorFormat.HSL, types_1.ColorFormat.HSLA].some((colorFormat) => colorFormat === format)) {\n throw new Error('Invalid format specified');\n }\n const colorFormat = (0, get_color_format_1.getColorFormat)(color);\n // Use white as fallback if color format is invalid\n const validColor = colorFormat ? color : '#FFFFFF';\n let convertedColor = (0, convert_color_1.convertColor)(validColor, format);\n let matches = convertedColor.match(/\\d+(\\.\\d+)?/g);\n if (!matches) {\n throw new Error('Color conversion failed');\n }\n let values = matches.map(Number);\n switch (format) {\n case 'rgb':\n case 'rgba':\n return Object.assign({ r: values[0], g: values[1], b: values[2] }, (values.length > 3 && { a: values[3] }));\n case 'hsl':\n case 'hsla':\n return Object.assign({ h: values[0], s: values[1], l: values[2] }, (values.length > 3 && { a: values[3] }));\n default:\n throw new Error('Invalid format specified');\n }\n};\nexports.parseColorNumbers = parseColorNumbers;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.randomColor = void 0;\nconst convert_color_1 = require(\"./convert-color\");\nconst types_1 = require(\"./types\");\n/**\n * Generates a random color in the specified format.\n *\n * @param {ColorFormat} format - The desired color format (hex, hexa, rgb, rgba, hsl, hsla, hsv, cmyk).\n * Default is 'hex'.\n *\n * @returns {string} - The random color in the specified format.\n *\n * Example usage:\n * randomColor(); // Returns a random color in HEX format.\n * randomColor(ColorFormat.RGB); // Returns a random color in RGB format.\n */\nconst randomColor = (format = types_1.ColorFormat.HEX) => {\n const getRandomInt = (max) => Math.floor(Math.random() * (max + 1));\n const r = getRandomInt(255);\n const g = getRandomInt(255);\n const b = getRandomInt(255);\n const a = Math.random().toFixed(2);\n const baseColor = `rgba(${r}, ${g}, ${b}, ${a})`;\n return (0, convert_color_1.convertColor)(baseColor, format);\n};\nexports.randomColor = randomColor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.shade = void 0;\nconst blend_colors_1 = require(\"./blend-colors\");\n/**\n * Creates a shade of the given color by mixing it with black.\n *\n * @param {string} color - The color to be shaded, in hexadecimal format.\n * @param {number} weight - The percentage of black to mix into the color, between 0 and 1.\n * @returns {string} The shaded color in hexadecimal format.\n *\n * Example usage:\n * const darkRed = shade(\"#ff0000\", 0.5); // Mixes red with 50% black\n */\nconst shade = (color, weight) => {\n return (0, blend_colors_1.blendColors)(color, '#000000', weight);\n};\nexports.shade = shade;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tint = void 0;\nconst blend_colors_1 = require(\"./blend-colors\");\n/**\n * Creates a tint of the given color by mixing it with white.\n *\n * @param {string} color - The color to be tinted, in hexadecimal format.\n * @param {number} weight - The percentage of white to mix into the color, between 0 and 1.\n *\n * @returns {string} The tinted color in hexadecimal format.\n *\n * Example usage:\n * const lightRed = tint(\"#ff0000\", 0.5); // Mixes red with 50% white\n */\nconst tint = (color, weight) => {\n return (0, blend_colors_1.blendColors)(color, '#FFFFFF', weight);\n};\nexports.tint = tint;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseColorFormat = exports.ColorFormat = void 0;\nvar ColorFormat;\n(function (ColorFormat) {\n ColorFormat[\"HEX\"] = \"hex\";\n ColorFormat[\"HEXA\"] = \"hexa\";\n ColorFormat[\"RGB\"] = \"rgb\";\n ColorFormat[\"RGBA\"] = \"rgba\";\n ColorFormat[\"HSL\"] = \"hsl\";\n ColorFormat[\"HSLA\"] = \"hsla\";\n ColorFormat[\"CMYK\"] = \"cmyk\";\n ColorFormat[\"HSV\"] = \"hsv\";\n})(ColorFormat || (exports.ColorFormat = ColorFormat = {}));\nconst BaseColorFormat = ColorFormat.RGBA;\nexports.BaseColorFormat = BaseColorFormat;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rgbaToRGB = exports.rgbaToHexa = exports.rgbaToHex = exports.rgbaToHSV = exports.rgbaToHSLA = exports.rgbaToHSL = exports.rgbaToCMYK = exports.rgbToRGBA = exports.hsvToRGBA = exports.hslaToRGBA = exports.hslToRGBA = exports.hexaToRGBA = exports.hexToRGBA = exports.cmykToRGBA = void 0;\nconst hexToRGBA = (color) => {\n let r = 0, g = 0, b = 0, a = 1;\n if (color.length === 4) {\n r = parseInt(color[1] + color[1], 16);\n g = parseInt(color[2] + color[2], 16);\n b = parseInt(color[3] + color[3], 16);\n }\n else if (color.length === 7) {\n r = parseInt(color[1] + color[2], 16);\n g = parseInt(color[3] + color[4], 16);\n b = parseInt(color[5] + color[6], 16);\n }\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hexToRGBA = hexToRGBA;\nconst hexaToRGBA = (color) => {\n let r = 0, g = 0, b = 0, a = 1;\n if (color.length === 9) {\n r = parseInt(color[1] + color[2], 16);\n g = parseInt(color[3] + color[4], 16);\n b = parseInt(color[5] + color[6], 16);\n a = Math.round(parseInt(color[7] + color[8], 16) / 255 * 100) / 100;\n }\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hexaToRGBA = hexaToRGBA;\nconst rgbToRGBA = (color) => {\n return color.replace(')', ', 1)').replace('rgb', 'rgba');\n};\nexports.rgbToRGBA = rgbToRGBA;\nconst hslToRGBA = (color) => {\n const [h, s, l] = color.match(/\\d+/g).map(Number);\n const saturation = s / 100;\n const lightness = l / 100;\n let c = (1 - Math.abs(2 * lightness - 1)) * saturation;\n let x = c * (1 - Math.abs((h / 60) % 2 - 1));\n let m = lightness - c / 2;\n let r = 0;\n let g = 0;\n let b = 0;\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n b = 0;\n }\n else if (60 <= h && h < 120) {\n r = x;\n g = c;\n b = 0;\n }\n else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n b = x;\n }\n else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n b = c;\n }\n else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n b = c;\n }\n else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n b = x;\n }\n else if (h === 360) {\n r = c;\n g = 0;\n b = x;\n }\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n b = Math.round((b + m) * 255);\n const a = 1;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hslToRGBA = hslToRGBA;\nconst hslaToRGBA = (color) => {\n const [h, s, l, a] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n const saturation = s / 100;\n const lightness = l / 100;\n let c = (1 - Math.abs(2 * lightness - 1)) * saturation;\n let x = c * (1 - Math.abs((h / 60) % 2 - 1));\n let m = lightness - c / 2;\n let r = 0;\n let g = 0;\n let b = 0;\n if (0 <= h && h < 60) {\n r = c;\n g = x;\n b = 0;\n }\n else if (60 <= h && h < 120) {\n r = x;\n g = c;\n b = 0;\n }\n else if (120 <= h && h < 180) {\n r = 0;\n g = c;\n b = x;\n }\n else if (180 <= h && h < 240) {\n r = 0;\n g = x;\n b = c;\n }\n else if (240 <= h && h < 300) {\n r = x;\n g = 0;\n b = c;\n }\n else if (300 <= h && h < 360) {\n r = c;\n g = 0;\n b = x;\n }\n else if (h === 360) {\n r = c;\n g = 0;\n b = x;\n }\n r = Math.round((r + m) * 255);\n g = Math.round((g + m) * 255);\n b = Math.round((b + m) * 255);\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.hslaToRGBA = hslaToRGBA;\nconst cmykToRGBA = (color) => {\n let [c, m, y, k] = color.match(/(\\d+(\\.\\d+)?%)/g).map((value) => parseFloat(value) / 100);\n let r = 255 * (1 - c) * (1 - k);\n let g = 255 * (1 - m) * (1 - k);\n let b = 255 * (1 - y) * (1 - k);\n r = Math.round(r);\n g = Math.round(g);\n b = Math.round(b);\n const a = 1;\n return `rgba(${r}, ${g}, ${b}, ${a})`;\n};\nexports.cmykToRGBA = cmykToRGBA;\nconst hsvToRGBA = (color) => {\n let [h, s, v] = color.match(/\\d+(\\.\\d+)?/g).map(Number);\n let r, g, b, i, f, p, q, t;\n const saturation = s / 100;\n const value = v / 100;\n if (saturation === 0) {\n r = g = b = value;\n return `rgba(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round(b * 255)}, 1)`;\n }\n h /= 60;\n i = Math.floor(h);\n f = h - i;\n p = value * (1 - saturation);\n q = value * (1 - saturation * f);\n t = value * (1 - saturation * (1 - f));\n switch (i) {\n case 0:\n r = value;\n g = t;\n b = p;\n break;\n case 1:\n r = q;\n g = value;\n b = p;\n break;\n case 2:\n r = p;\n g = value;\n b = t;\n break;\n case 3:\n r = p;\n g = q;\n b = value;\n break;\n case 4:\n r = t;\n g = p;\n b = value;\n break;\n default: // case 5:\n r = value;\n g = p;\n b = q;\n }\n return `rgba(${Math.round(r * 255)}, ${Math.round(g * 255)}, ${Math.round(b * 255)}, 1)`;\n};\nexports.hsvToRGBA = hsvToRGBA;\nconst rgbaToHex = (rgba) => {\n const [r, g, b] = rgba.match(/\\d+/g).map(Number);\n const rHex = r.toString(16).padStart(2, '0');\n const gHex = g.toString(16).padStart(2, '0');\n const bHex = b.toString(16).padStart(2, '0');\n return `#${rHex}${gHex}${bHex}`.toLowerCase();\n};\nexports.rgbaToHex = rgbaToHex;\nconst rgbaToHexa = (rgba) => {\n const [r, g, b, a] = rgba.match(/\\d+(\\.\\d+)?/g).map(Number);\n const alphaHex = Math.round(a * 255).toString(16).padStart(2, '0');\n const rHex = r.toString(16).padStart(2, '0');\n const gHex = g.toString(16).padStart(2, '0');\n const bHex = b.toString(16).padStart(2, '0');\n return `#${rHex}${gHex}${bHex}${alphaHex}`.toLowerCase();\n};\nexports.rgbaToHexa = rgbaToHexa;\nconst rgbaToRGB = (rgba) => {\n const [r, g, b] = rgba.match(/\\d+/g).map(Number).slice(0, 3);\n return `rgb(${r}, ${g}, ${b})`;\n};\nexports.rgbaToRGB = rgbaToRGB;\nconst rgbaToHSL = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n let h, s, l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\n else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n break;\n }\n h /= 6;\n }\n return `hsl(${Math.round(h * 360) % 360}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%)`;\n};\nexports.rgbaToHSL = rgbaToHSL;\nconst rgbaToHSLA = (rgba) => {\n let [r, g, b, a] = rgba.match(/\\d+(\\.\\d+)?/g).map(Number);\n r /= 255;\n g /= 255;\n b /= 255;\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n let h, s, l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\n else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n break;\n }\n h /= 6;\n }\n return `hsla(${Math.round(h * 360)}, ${Math.round(s * 100)}%, ${Math.round(l * 100)}%, ${a})`;\n};\nexports.rgbaToHSLA = rgbaToHSLA;\nconst rgbaToCMYK = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const k = 1 - Math.max(r, g, b);\n const c = (1 - r - k) / (1 - k) || 0;\n const m = (1 - g - k) / (1 - k) || 0;\n const y = (1 - b - k) / (1 - k) || 0;\n return `cmyk(${Math.round(c * 100)}%, ${Math.round(m * 100)}%, ${Math.round(y * 100)}%, ${Math.round(k * 100)}%)`;\n};\nexports.rgbaToCMYK = rgbaToCMYK;\nconst rgbaToHSV = (rgba) => {\n let [r, g, b] = rgba.match(/\\d+/g).map(Number).map((value) => value / 255);\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const delta = max - min;\n let h, s, v = max;\n if (delta === 0) {\n h = 0;\n }\n else if (max === r) {\n h = 60 * (((g - b) / delta) % 6);\n }\n else if (max === g) {\n h = 60 * (((b - r) / delta) + 2);\n }\n else {\n h = 60 * (((r - g) / delta) + 4);\n }\n h = h < 0 ? h + 360 : h;\n s = max === 0 ? 0 : (delta / max);\n return `hsv(${Math.round(h)}, ${Math.round(s * 100)}%, ${Math.round(v * 100)}%)`;\n};\nexports.rgbaToHSV = rgbaToHSV;\n","import * as React from 'react';\nexport const defaultPrefixCls = 'ant';\nexport const defaultIconPrefixCls = 'anticon';\nexport const Variants = ['outlined', 'borderless', 'filled', 'underlined'];\nconst defaultGetPrefixCls = (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) {\n return customizePrefixCls;\n }\n return suffixCls ? `${defaultPrefixCls}-${suffixCls}` : defaultPrefixCls;\n};\n// zombieJ: 🚨 Do not pass `defaultRenderEmpty` here since it will cause circular dependency.\nexport const ConfigContext = /*#__PURE__*/React.createContext({\n // We provide a default function for Context without provider\n getPrefixCls: defaultGetPrefixCls,\n iconPrefixCls: defaultIconPrefixCls\n});\nexport const {\n Consumer: ConfigConsumer\n} = ConfigContext;\nconst EMPTY_OBJECT = {};\n/**\n * Get ConfigProvider configured component props.\n * This help to reduce bundle size for saving `?.` operator.\n * Do not use as `useMemo` deps since we do not cache the object here.\n *\n * NOTE: not refactor this with `useMemo` since memo will cost another memory space,\n * which will waste both compare calculation & memory.\n */\nexport function useComponentConfig(propName) {\n const context = React.useContext(ConfigContext);\n const {\n getPrefixCls,\n direction,\n getPopupContainer,\n renderEmpty\n } = context;\n const propValue = context[propName];\n return {\n classNames: EMPTY_OBJECT,\n styles: EMPTY_OBJECT,\n ...propValue,\n getPrefixCls,\n direction,\n getPopupContainer,\n renderEmpty\n };\n}","/**\n * chroma.js - JavaScript library for color conversions\n *\n * Copyright (c) 2011-2025, Gregor Aisch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n * list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. The name Gregor Aisch may not be used to endorse or promote products\n * derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL GREGOR AISCH OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * -------------------------------------------------------\n *\n * chroma.js includes colors from colorbrewer2.org, which are released under\n * the following license:\n *\n * Copyright (c) 2002 Cynthia Brewer, Mark Harrower,\n * and The Pennsylvania State University.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\n * either express or implied. See the License for the specific\n * language governing permissions and limitations under the License.\n *\n * ------------------------------------------------------\n *\n * Named colors are taken from X11 Color Names.\n * http://www.w3.org/TR/css3-color/#svg-color\n *\n * @preserve\n */\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.chroma = factory());\n})(this, (function () { 'use strict';\n\n var min$4 = Math.min;\n var max$4 = Math.max;\n\n function limit (x, low, high) {\n if ( low === void 0 ) low = 0;\n if ( high === void 0 ) high = 1;\n\n return min$4(max$4(low, x), high);\n }\n\n function clip_rgb (rgb) {\n rgb._clipped = false;\n rgb._unclipped = rgb.slice(0);\n for (var i = 0; i <= 3; i++) {\n if (i < 3) {\n if (rgb[i] < 0 || rgb[i] > 255) { rgb._clipped = true; }\n rgb[i] = limit(rgb[i], 0, 255);\n } else if (i === 3) {\n rgb[i] = limit(rgb[i], 0, 1);\n }\n }\n return rgb;\n }\n\n // ported from jQuery's $.type\n var classToType = {};\n for (var i = 0, list = [\n 'Boolean',\n 'Number',\n 'String',\n 'Function',\n 'Array',\n 'Date',\n 'RegExp',\n 'Undefined',\n 'Null'\n ]; i < list.length; i += 1) {\n var name = list[i];\n\n classToType[(\"[object \" + name + \"]\")] = name.toLowerCase();\n }\n function type (obj) {\n return classToType[Object.prototype.toString.call(obj)] || 'object';\n }\n\n function unpack (args, keyOrder) {\n if ( keyOrder === void 0 ) keyOrder = null;\n\n // if called with more than 3 arguments, we return the arguments\n if (args.length >= 3) { return Array.prototype.slice.call(args); }\n // with less than 3 args we check if first arg is object\n // and use the keyOrder string to extract and sort properties\n if (type(args[0]) == 'object' && keyOrder) {\n return keyOrder\n .split('')\n .filter(function (k) { return args[0][k] !== undefined; })\n .map(function (k) { return args[0][k]; });\n }\n // otherwise we just return the first argument\n // (which we suppose is an array of args)\n return args[0].slice(0);\n }\n\n function last (args) {\n if (args.length < 2) { return null; }\n var l = args.length - 1;\n if (type(args[l]) == 'string') { return args[l].toLowerCase(); }\n return null;\n }\n\n var PI$2 = Math.PI;\n var min$3 = Math.min;\n var max$3 = Math.max;\n\n var rnd2 = function (a) { return Math.round(a * 100) / 100; };\n var rnd3 = function (a) { return Math.round(a * 100) / 100; };\n\n var TWOPI = PI$2 * 2;\n var PITHIRD = PI$2 / 3;\n var DEG2RAD = PI$2 / 180;\n var RAD2DEG = 180 / PI$2;\n\n /**\n * Reverse the first three elements of an array\n *\n * @param {any[]} arr\n * @returns {any[]}\n */\n function reverse3(arr) {\n return arr.slice(0, 3).reverse().concat( arr.slice(3));\n }\n\n var input = {\n format: {},\n autodetect: []\n };\n\n var Color = function Color() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var me = this;\n if (\n type(args[0]) === 'object' &&\n args[0].constructor &&\n args[0].constructor === this.constructor\n ) {\n // the argument is already a Color instance\n return args[0];\n }\n // last argument could be the mode\n var mode = last(args);\n var autodetect = false;\n if (!mode) {\n autodetect = true;\n\n if (!input.sorted) {\n input.autodetect = input.autodetect.sort(function (a, b) { return b.p - a.p; });\n input.sorted = true;\n }\n\n // auto-detect format\n for (var i = 0, list = input.autodetect; i < list.length; i += 1) {\n var chk = list[i];\n\n mode = chk.test.apply(chk, args);\n if (mode) { break; }\n }\n }\n if (input.format[mode]) {\n var rgb = input.format[mode].apply(\n null,\n autodetect ? args : args.slice(0, -1)\n );\n me._rgb = clip_rgb(rgb);\n } else {\n throw new Error('unknown format: ' + args);\n }\n // add alpha channel\n if (me._rgb.length === 3) { me._rgb.push(1); }\n };\n Color.prototype.toString = function toString () {\n if (type(this.hex) == 'function') { return this.hex(); }\n return (\"[\" + (this._rgb.join(',')) + \"]\");\n };\n\n // this gets updated automatically\n var version = '3.2.0';\n\n var chroma = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args) ));\n };\n\n chroma.version = version;\n\n var cmyk2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'cmyk');\n var c = args[0];\n var m = args[1];\n var y = args[2];\n var k = args[3];\n var alpha = args.length > 4 ? args[4] : 1;\n if (k === 1) { return [0, 0, 0, alpha]; }\n return [\n c >= 1 ? 0 : 255 * (1 - c) * (1 - k), // r\n m >= 1 ? 0 : 255 * (1 - m) * (1 - k), // g\n y >= 1 ? 0 : 255 * (1 - y) * (1 - k), // b\n alpha\n ];\n };\n\n var max$2 = Math.max;\n\n var rgb2cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r = r / 255;\n g = g / 255;\n b = b / 255;\n var k = 1 - max$2(r, max$2(g, b));\n var f = k < 1 ? 1 / (1 - k) : 0;\n var c = (1 - r - k) * f;\n var m = (1 - g - k) * f;\n var y = (1 - b - k) * f;\n return [c, m, y, k];\n };\n\n Color.prototype.cmyk = function () {\n return rgb2cmyk(this._rgb);\n };\n\n var cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['cmyk']) ));\n };\n Object.assign(chroma, { cmyk: cmyk });\n\n input.format.cmyk = cmyk2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'cmyk');\n if (type(args) === 'array' && args.length === 4) {\n return 'cmyk';\n }\n }\n });\n\n /*\n * supported arguments:\n * - hsl2css(h,s,l)\n * - hsl2css(h,s,l,a)\n * - hsl2css([h,s,l], mode)\n * - hsl2css([h,s,l,a], mode)\n * - hsl2css({h,s,l,a}, mode)\n */\n var hsl2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hsla = unpack(args, 'hsla');\n var mode = last(args) || 'lsa';\n hsla[0] = rnd2(hsla[0] || 0) + 'deg';\n hsla[1] = rnd2(hsla[1] * 100) + '%';\n hsla[2] = rnd2(hsla[2] * 100) + '%';\n if (mode === 'hsla' || (hsla.length > 3 && hsla[3] < 1)) {\n hsla[3] = '/ ' + (hsla.length > 3 ? hsla[3] : 1);\n mode = 'hsla';\n } else {\n hsla.length = 3;\n }\n return ((mode.substr(0, 3)) + \"(\" + (hsla.join(' ')) + \")\");\n };\n\n /*\n * supported arguments:\n * - rgb2hsl(r,g,b)\n * - rgb2hsl(r,g,b,a)\n * - rgb2hsl([r,g,b])\n * - rgb2hsl([r,g,b,a])\n * - rgb2hsl({r,g,b,a})\n */\n var rgb2hsl$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'rgba');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n\n r /= 255;\n g /= 255;\n b /= 255;\n\n var minRgb = min$3(r, g, b);\n var maxRgb = max$3(r, g, b);\n\n var l = (maxRgb + minRgb) / 2;\n var s, h;\n\n if (maxRgb === minRgb) {\n s = 0;\n h = Number.NaN;\n } else {\n s =\n l < 0.5\n ? (maxRgb - minRgb) / (maxRgb + minRgb)\n : (maxRgb - minRgb) / (2 - maxRgb - minRgb);\n }\n\n if (r == maxRgb) { h = (g - b) / (maxRgb - minRgb); }\n else if (g == maxRgb) { h = 2 + (b - r) / (maxRgb - minRgb); }\n else if (b == maxRgb) { h = 4 + (r - g) / (maxRgb - minRgb); }\n\n h *= 60;\n if (h < 0) { h += 360; }\n if (args.length > 3 && args[3] !== undefined) { return [h, s, l, args[3]]; }\n return [h, s, l];\n };\n\n /*\n * supported arguments:\n * - lab2css(l,a,b)\n * - lab2css(l,a,b,alpha)\n * - lab2css([l,a,b], mode)\n * - lab2css([l,a,b,alpha], mode)\n */\n var lab2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var laba = unpack(args, 'lab');\n var mode = last(args) || 'lab';\n laba[0] = rnd2(laba[0]) + '%';\n laba[1] = rnd2(laba[1]);\n laba[2] = rnd2(laba[2]);\n if (mode === 'laba' || (laba.length > 3 && laba[3] < 1)) {\n laba[3] = '/ ' + (laba.length > 3 ? laba[3] : 1);\n } else {\n laba.length = 3;\n }\n return (\"lab(\" + (laba.join(' ')) + \")\");\n };\n\n var labConstants = {\n // Corresponds roughly to RGB brighter/darker\n Kn: 18,\n\n // D65 standard referent\n labWhitePoint: 'd65',\n Xn: 0.95047,\n Yn: 1,\n Zn: 1.08883,\n\n kE: 216.0 / 24389.0,\n kKE: 8.0,\n kK: 24389.0 / 27.0,\n\n RefWhiteRGB: {\n // sRGB\n X: 0.95047,\n Y: 1,\n Z: 1.08883\n },\n\n MtxRGB2XYZ: {\n m00: 0.4124564390896922,\n m01: 0.21267285140562253,\n m02: 0.0193338955823293,\n m10: 0.357576077643909,\n m11: 0.715152155287818,\n m12: 0.11919202588130297,\n m20: 0.18043748326639894,\n m21: 0.07217499330655958,\n m22: 0.9503040785363679\n },\n\n MtxXYZ2RGB: {\n m00: 3.2404541621141045,\n m01: -0.9692660305051868,\n m02: 0.055643430959114726,\n m10: -1.5371385127977166,\n m11: 1.8760108454466942,\n m12: -0.2040259135167538,\n m20: -0.498531409556016,\n m21: 0.041556017530349834,\n m22: 1.0572251882231791\n },\n\n // used in rgb2xyz\n As: 0.9414285350000001,\n Bs: 1.040417467,\n Cs: 1.089532651,\n\n MtxAdaptMa: {\n m00: 0.8951,\n m01: -0.7502,\n m02: 0.0389,\n m10: 0.2664,\n m11: 1.7135,\n m12: -0.0685,\n m20: -0.1614,\n m21: 0.0367,\n m22: 1.0296\n },\n\n MtxAdaptMaI: {\n m00: 0.9869929054667123,\n m01: 0.43230526972339456,\n m02: -0.008528664575177328,\n m10: -0.14705425642099013,\n m11: 0.5183602715367776,\n m12: 0.04004282165408487,\n m20: 0.15996265166373125,\n m21: 0.0492912282128556,\n m22: 0.9684866957875502\n }\n };\n\n // taken from https://de.mathworks.com/help/images/ref/whitepoint.html\n var ILLUMINANTS = new Map([\n // ASTM E308-01\n ['a', [1.0985, 0.35585]],\n // Wyszecki & Stiles, p. 769\n ['b', [1.0985, 0.35585]],\n // C ASTM E308-01\n ['c', [0.98074, 1.18232]],\n // D50 (ASTM E308-01)\n ['d50', [0.96422, 0.82521]],\n // D55 (ASTM E308-01)\n ['d55', [0.95682, 0.92149]],\n // D65 (ASTM E308-01)\n ['d65', [0.95047, 1.08883]],\n // E (ASTM E308-01)\n ['e', [1, 1, 1]],\n // F2 (ASTM E308-01)\n ['f2', [0.99186, 0.67393]],\n // F7 (ASTM E308-01)\n ['f7', [0.95041, 1.08747]],\n // F11 (ASTM E308-01)\n ['f11', [1.00962, 0.6435]],\n ['icc', [0.96422, 0.82521]]\n ]);\n\n function setLabWhitePoint(name) {\n var ill = ILLUMINANTS.get(String(name).toLowerCase());\n if (!ill) {\n throw new Error('unknown Lab illuminant ' + name);\n }\n labConstants.labWhitePoint = name;\n labConstants.Xn = ill[0];\n labConstants.Zn = ill[1];\n }\n\n function getLabWhitePoint() {\n return labConstants.labWhitePoint;\n }\n\n var rgb2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var rest = ref.slice(3);\n var ref$1 = rgb2xyz(r, g, b);\n var x = ref$1[0];\n var y = ref$1[1];\n var z = ref$1[2];\n var ref$2 = xyz2lab(x, y, z);\n var L = ref$2[0];\n var a = ref$2[1];\n var b_ = ref$2[2];\n return [L, a, b_ ].concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n function xyz2lab(x, y, z) {\n var Xn = labConstants.Xn;\n var Yn = labConstants.Yn;\n var Zn = labConstants.Zn;\n var kE = labConstants.kE;\n var kK = labConstants.kK;\n var xr = x / Xn;\n var yr = y / Yn;\n var zr = z / Zn;\n\n var fx = xr > kE ? Math.pow(xr, 1.0 / 3.0) : (kK * xr + 16.0) / 116.0;\n var fy = yr > kE ? Math.pow(yr, 1.0 / 3.0) : (kK * yr + 16.0) / 116.0;\n var fz = zr > kE ? Math.pow(zr, 1.0 / 3.0) : (kK * zr + 16.0) / 116.0;\n\n return [116.0 * fy - 16.0, 500.0 * (fx - fy), 200.0 * (fy - fz)];\n }\n\n function gammaAdjustSRGB(companded) {\n var sign = Math.sign(companded);\n companded = Math.abs(companded);\n var linear =\n companded <= 0.04045\n ? companded / 12.92\n : Math.pow((companded + 0.055) / 1.055, 2.4);\n return linear * sign;\n }\n\n var rgb2xyz = function (r, g, b) {\n // normalize and gamma adjust\n r = gammaAdjustSRGB(r / 255);\n g = gammaAdjustSRGB(g / 255);\n b = gammaAdjustSRGB(b / 255);\n\n var MtxRGB2XYZ = labConstants.MtxRGB2XYZ;\n var MtxAdaptMa = labConstants.MtxAdaptMa;\n var MtxAdaptMaI = labConstants.MtxAdaptMaI;\n var Xn = labConstants.Xn;\n var Yn = labConstants.Yn;\n var Zn = labConstants.Zn;\n var As = labConstants.As;\n var Bs = labConstants.Bs;\n var Cs = labConstants.Cs;\n\n var x = r * MtxRGB2XYZ.m00 + g * MtxRGB2XYZ.m10 + b * MtxRGB2XYZ.m20;\n var y = r * MtxRGB2XYZ.m01 + g * MtxRGB2XYZ.m11 + b * MtxRGB2XYZ.m21;\n var z = r * MtxRGB2XYZ.m02 + g * MtxRGB2XYZ.m12 + b * MtxRGB2XYZ.m22;\n\n var Ad = Xn * MtxAdaptMa.m00 + Yn * MtxAdaptMa.m10 + Zn * MtxAdaptMa.m20;\n var Bd = Xn * MtxAdaptMa.m01 + Yn * MtxAdaptMa.m11 + Zn * MtxAdaptMa.m21;\n var Cd = Xn * MtxAdaptMa.m02 + Yn * MtxAdaptMa.m12 + Zn * MtxAdaptMa.m22;\n\n var X = x * MtxAdaptMa.m00 + y * MtxAdaptMa.m10 + z * MtxAdaptMa.m20;\n var Y = x * MtxAdaptMa.m01 + y * MtxAdaptMa.m11 + z * MtxAdaptMa.m21;\n var Z = x * MtxAdaptMa.m02 + y * MtxAdaptMa.m12 + z * MtxAdaptMa.m22;\n\n X *= Ad / As;\n Y *= Bd / Bs;\n Z *= Cd / Cs;\n\n x = X * MtxAdaptMaI.m00 + Y * MtxAdaptMaI.m10 + Z * MtxAdaptMaI.m20;\n y = X * MtxAdaptMaI.m01 + Y * MtxAdaptMaI.m11 + Z * MtxAdaptMaI.m21;\n z = X * MtxAdaptMaI.m02 + Y * MtxAdaptMaI.m12 + Z * MtxAdaptMaI.m22;\n\n return [x, y, z];\n };\n\n /*\n * supported arguments:\n * - lab2css(l,a,b)\n * - lab2css(l,a,b,alpha)\n * - lab2css([l,a,b], mode)\n * - lab2css([l,a,b,alpha], mode)\n */\n var lch2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var lcha = unpack(args, 'lch');\n var mode = last(args) || 'lab';\n lcha[0] = rnd2(lcha[0]) + '%';\n lcha[1] = rnd2(lcha[1]);\n lcha[2] = isNaN(lcha[2]) ? 'none' : rnd2(lcha[2]) + 'deg'; // add deg unit to hue\n if (mode === 'lcha' || (lcha.length > 3 && lcha[3] < 1)) {\n lcha[3] = '/ ' + (lcha.length > 3 ? lcha[3] : 1);\n } else {\n lcha.length = 3;\n }\n return (\"lch(\" + (lcha.join(' ')) + \")\");\n };\n\n var sqrt$4 = Math.sqrt;\n var atan2$2 = Math.atan2;\n var round$5 = Math.round;\n\n var lab2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'lab');\n var l = ref[0];\n var a = ref[1];\n var b = ref[2];\n var c = sqrt$4(a * a + b * b);\n var h = (atan2$2(b, a) * RAD2DEG + 360) % 360;\n if (round$5(c * 10000) === 0) { h = Number.NaN; }\n return [l, c, h];\n };\n\n var rgb2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var rest = ref.slice(3);\n var ref$1 = rgb2lab(r, g, b);\n var l = ref$1[0];\n var a = ref$1[1];\n var b_ = ref$1[2];\n var ref$2 = lab2lch(l, a, b_);\n var L = ref$2[0];\n var c = ref$2[1];\n var h = ref$2[2];\n return [L, c, h ].concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n // from https://www.w3.org/TR/css-color-4/multiply-matrices.js\n function multiplyMatrices(A, B) {\n var m = A.length;\n\n if (!Array.isArray(A[0])) {\n // A is vector, convert to [[a, b, c, ...]]\n A = [A];\n }\n\n if (!Array.isArray(B[0])) {\n // B is vector, convert to [[a], [b], [c], ...]]\n B = B.map(function (x) { return [x]; });\n }\n\n var p = B[0].length;\n var B_cols = B[0].map(function (_, i) { return B.map(function (x) { return x[i]; }); }); // transpose B\n var product = A.map(function (row) { return B_cols.map(function (col) {\n if (!Array.isArray(row)) {\n return col.reduce(function (a, c) { return a + c * row; }, 0);\n }\n\n return row.reduce(function (a, c, i) { return a + c * (col[i] || 0); }, 0);\n }); }\n );\n\n if (m === 1) {\n product = product[0]; // Avoid [[a, b, c, ...]]\n }\n\n if (p === 1) {\n return product.map(function (x) { return x[0]; }); // Avoid [[a], [b], [c], ...]]\n }\n\n return product;\n }\n\n var rgb2oklab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var rest = ref.slice(3);\n var xyz = rgb2xyz(r, g, b);\n var oklab = XYZ_to_OKLab(xyz);\n return oklab.concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n // from https://www.w3.org/TR/css-color-4/#color-conversion-code\n function XYZ_to_OKLab(XYZ) {\n // Given XYZ relative to D65, convert to OKLab\n var XYZtoLMS = [\n [0.819022437996703, 0.3619062600528904, -0.1288737815209879],\n [0.0329836539323885, 0.9292868615863434, 0.0361446663506424],\n [0.0481771893596242, 0.2642395317527308, 0.6335478284694309]\n ];\n var LMStoOKLab = [\n [0.210454268309314, 0.7936177747023054, -0.0040720430116193],\n [1.9779985324311684, -2.42859224204858, 0.450593709617411],\n [0.0259040424655478, 0.7827717124575296, -0.8086757549230774]\n ];\n\n var LMS = multiplyMatrices(XYZtoLMS, XYZ);\n // JavaScript Math.cbrt returns a sign-matched cube root\n // beware if porting to other languages\n // especially if tempted to use a general power function\n return multiplyMatrices(\n LMStoOKLab,\n LMS.map(function (c) { return Math.cbrt(c); })\n );\n // L in range [0,1]. For use in CSS, multiply by 100 and add a percent\n }\n\n var oklab2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var laba = unpack(args, 'lab');\n laba[0] = rnd2(laba[0] * 100) + '%';\n laba[1] = rnd3(laba[1]);\n laba[2] = rnd3(laba[2]);\n if (laba.length > 3 && laba[3] < 1) {\n laba[3] = '/ ' + (laba.length > 3 ? laba[3] : 1);\n } else {\n laba.length = 3;\n }\n return (\"oklab(\" + (laba.join(' ')) + \")\");\n };\n\n var rgb2oklch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var rest = ref.slice(3);\n var ref$1 = rgb2oklab(r, g, b);\n var l = ref$1[0];\n var a = ref$1[1];\n var b_ = ref$1[2];\n var ref$2 = lab2lch(l, a, b_);\n var L = ref$2[0];\n var c = ref$2[1];\n var h = ref$2[2];\n return [L, c, h ].concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n var oklch2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var lcha = unpack(args, 'lch');\n lcha[0] = rnd2(lcha[0] * 100) + '%';\n lcha[1] = rnd3(lcha[1]);\n lcha[2] = isNaN(lcha[2]) ? 'none' : rnd2(lcha[2]) + 'deg'; // add deg unit to hue\n if (lcha.length > 3 && lcha[3] < 1) {\n lcha[3] = '/ ' + (lcha.length > 3 ? lcha[3] : 1);\n } else {\n lcha.length = 3;\n }\n return (\"oklch(\" + (lcha.join(' ')) + \")\");\n };\n\n var round$4 = Math.round;\n\n /*\n * supported arguments:\n * - rgb2css(r,g,b)\n * - rgb2css(r,g,b,a)\n * - rgb2css([r,g,b], mode)\n * - rgb2css([r,g,b,a], mode)\n * - rgb2css({r,g,b,a}, mode)\n */\n var rgb2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack(args, 'rgba');\n var mode = last(args) || 'rgb';\n if (mode.substr(0, 3) === 'hsl') {\n return hsl2css(rgb2hsl$1(rgba), mode);\n }\n if (mode.substr(0, 3) === 'lab') {\n // change to D50 lab whitepoint since this is what W3C is using for CSS Lab colors\n var prevWhitePoint = getLabWhitePoint();\n setLabWhitePoint('d50');\n var cssColor = lab2css(rgb2lab(rgba), mode);\n setLabWhitePoint(prevWhitePoint);\n return cssColor;\n }\n if (mode.substr(0, 3) === 'lch') {\n // change to D50 lab whitepoint since this is what W3C is using for CSS Lab colors\n var prevWhitePoint$1 = getLabWhitePoint();\n setLabWhitePoint('d50');\n var cssColor$1 = lch2css(rgb2lch(rgba), mode);\n setLabWhitePoint(prevWhitePoint$1);\n return cssColor$1;\n }\n if (mode.substr(0, 5) === 'oklab') {\n return oklab2css(rgb2oklab(rgba));\n }\n if (mode.substr(0, 5) === 'oklch') {\n return oklch2css(rgb2oklch(rgba));\n }\n rgba[0] = round$4(rgba[0]);\n rgba[1] = round$4(rgba[1]);\n rgba[2] = round$4(rgba[2]);\n if (mode === 'rgba' || (rgba.length > 3 && rgba[3] < 1)) {\n rgba[3] = '/ ' + (rgba.length > 3 ? rgba[3] : 1);\n mode = 'rgba';\n }\n return ((mode.substr(0, 3)) + \"(\" + (rgba.slice(0, mode === 'rgb' ? 3 : 4).join(' ')) + \")\");\n };\n\n var hsl2rgb = function () {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack(args, 'hsl');\n var h = args[0];\n var s = args[1];\n var l = args[2];\n var r, g, b;\n if (s === 0) {\n r = g = b = l * 255;\n } else {\n var t3 = [0, 0, 0];\n var c = [0, 0, 0];\n var t2 = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var t1 = 2 * l - t2;\n var h_ = h / 360;\n t3[0] = h_ + 1 / 3;\n t3[1] = h_;\n t3[2] = h_ - 1 / 3;\n for (var i = 0; i < 3; i++) {\n if (t3[i] < 0) { t3[i] += 1; }\n if (t3[i] > 1) { t3[i] -= 1; }\n if (6 * t3[i] < 1) { c[i] = t1 + (t2 - t1) * 6 * t3[i]; }\n else if (2 * t3[i] < 1) { c[i] = t2; }\n else if (3 * t3[i] < 2) { c[i] = t1 + (t2 - t1) * (2 / 3 - t3[i]) * 6; }\n else { c[i] = t1; }\n }\n (assign = [c[0] * 255, c[1] * 255, c[2] * 255], r = assign[0], g = assign[1], b = assign[2]);\n }\n if (args.length > 3) {\n // keep alpha channel\n return [r, g, b, args[3]];\n }\n return [r, g, b, 1];\n };\n\n /*\n * L* [0..100]\n * a [-100..100]\n * b [-100..100]\n */\n var lab2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'lab');\n var L = args[0];\n var a = args[1];\n var b = args[2];\n var ref = lab2xyz(L, a, b);\n var x = ref[0];\n var y = ref[1];\n var z = ref[2];\n var ref$1 = xyz2rgb(x, y, z);\n var r = ref$1[0];\n var g = ref$1[1];\n var b_ = ref$1[2];\n return [r, g, b_, args.length > 3 ? args[3] : 1];\n };\n\n var lab2xyz = function (L, a, b) {\n var kE = labConstants.kE;\n var kK = labConstants.kK;\n var kKE = labConstants.kKE;\n var Xn = labConstants.Xn;\n var Yn = labConstants.Yn;\n var Zn = labConstants.Zn;\n\n var fy = (L + 16.0) / 116.0;\n var fx = 0.002 * a + fy;\n var fz = fy - 0.005 * b;\n\n var fx3 = fx * fx * fx;\n var fz3 = fz * fz * fz;\n\n var xr = fx3 > kE ? fx3 : (116.0 * fx - 16.0) / kK;\n var yr = L > kKE ? Math.pow((L + 16.0) / 116.0, 3.0) : L / kK;\n var zr = fz3 > kE ? fz3 : (116.0 * fz - 16.0) / kK;\n\n var x = xr * Xn;\n var y = yr * Yn;\n var z = zr * Zn;\n\n return [x, y, z];\n };\n\n var compand = function (linear) {\n /* sRGB */\n var sign = Math.sign(linear);\n linear = Math.abs(linear);\n return (\n (linear <= 0.0031308\n ? linear * 12.92\n : 1.055 * Math.pow(linear, 1.0 / 2.4) - 0.055) * sign\n );\n };\n\n var xyz2rgb = function (x, y, z) {\n var MtxAdaptMa = labConstants.MtxAdaptMa;\n var MtxAdaptMaI = labConstants.MtxAdaptMaI;\n var MtxXYZ2RGB = labConstants.MtxXYZ2RGB;\n var RefWhiteRGB = labConstants.RefWhiteRGB;\n var Xn = labConstants.Xn;\n var Yn = labConstants.Yn;\n var Zn = labConstants.Zn;\n\n var As = Xn * MtxAdaptMa.m00 + Yn * MtxAdaptMa.m10 + Zn * MtxAdaptMa.m20;\n var Bs = Xn * MtxAdaptMa.m01 + Yn * MtxAdaptMa.m11 + Zn * MtxAdaptMa.m21;\n var Cs = Xn * MtxAdaptMa.m02 + Yn * MtxAdaptMa.m12 + Zn * MtxAdaptMa.m22;\n\n var Ad =\n RefWhiteRGB.X * MtxAdaptMa.m00 +\n RefWhiteRGB.Y * MtxAdaptMa.m10 +\n RefWhiteRGB.Z * MtxAdaptMa.m20;\n var Bd =\n RefWhiteRGB.X * MtxAdaptMa.m01 +\n RefWhiteRGB.Y * MtxAdaptMa.m11 +\n RefWhiteRGB.Z * MtxAdaptMa.m21;\n var Cd =\n RefWhiteRGB.X * MtxAdaptMa.m02 +\n RefWhiteRGB.Y * MtxAdaptMa.m12 +\n RefWhiteRGB.Z * MtxAdaptMa.m22;\n\n var X1 =\n (x * MtxAdaptMa.m00 + y * MtxAdaptMa.m10 + z * MtxAdaptMa.m20) *\n (Ad / As);\n var Y1 =\n (x * MtxAdaptMa.m01 + y * MtxAdaptMa.m11 + z * MtxAdaptMa.m21) *\n (Bd / Bs);\n var Z1 =\n (x * MtxAdaptMa.m02 + y * MtxAdaptMa.m12 + z * MtxAdaptMa.m22) *\n (Cd / Cs);\n\n var X2 =\n X1 * MtxAdaptMaI.m00 + Y1 * MtxAdaptMaI.m10 + Z1 * MtxAdaptMaI.m20;\n var Y2 =\n X1 * MtxAdaptMaI.m01 + Y1 * MtxAdaptMaI.m11 + Z1 * MtxAdaptMaI.m21;\n var Z2 =\n X1 * MtxAdaptMaI.m02 + Y1 * MtxAdaptMaI.m12 + Z1 * MtxAdaptMaI.m22;\n\n var r = compand(\n X2 * MtxXYZ2RGB.m00 + Y2 * MtxXYZ2RGB.m10 + Z2 * MtxXYZ2RGB.m20\n );\n var g = compand(\n X2 * MtxXYZ2RGB.m01 + Y2 * MtxXYZ2RGB.m11 + Z2 * MtxXYZ2RGB.m21\n );\n var b = compand(\n X2 * MtxXYZ2RGB.m02 + Y2 * MtxXYZ2RGB.m12 + Z2 * MtxXYZ2RGB.m22\n );\n\n return [r * 255, g * 255, b * 255];\n };\n\n var sin$3 = Math.sin;\n var cos$4 = Math.cos;\n\n var lch2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n Convert from a qualitative parameter h and a quantitative parameter l to a 24-bit pixel.\n These formulas were invented by David Dalrymple to obtain maximum contrast without going\n out of gamut if the parameters are in the range 0-1.\n\n A saturation multiplier was added by Gregor Aisch\n */\n var ref = unpack(args, 'lch');\n var l = ref[0];\n var c = ref[1];\n var h = ref[2];\n if (isNaN(h)) { h = 0; }\n h = h * DEG2RAD;\n return [l, cos$4(h) * c, sin$3(h) * c];\n };\n\n var lch2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'lch');\n var l = args[0];\n var c = args[1];\n var h = args[2];\n var ref = lch2lab(l, c, h);\n var L = ref[0];\n var a = ref[1];\n var b_ = ref[2];\n var ref$1 = lab2rgb(L, a, b_);\n var r = ref$1[0];\n var g = ref$1[1];\n var b = ref$1[2];\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var oklab2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'lab');\n var L = args[0];\n var a = args[1];\n var b = args[2];\n var rest = args.slice(3);\n var ref = OKLab_to_XYZ([L, a, b]);\n var X = ref[0];\n var Y = ref[1];\n var Z = ref[2];\n var ref$1 = xyz2rgb(X, Y, Z);\n var r = ref$1[0];\n var g = ref$1[1];\n var b_ = ref$1[2];\n return [r, g, b_ ].concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n // from https://www.w3.org/TR/css-color-4/#color-conversion-code\n function OKLab_to_XYZ(OKLab) {\n // Given OKLab, convert to XYZ relative to D65\n var LMStoXYZ = [\n [1.2268798758459243, -0.5578149944602171, 0.2813910456659647],\n [-0.0405757452148008, 1.112286803280317, -0.0717110580655164],\n [-0.0763729366746601, -0.4214933324022432, 1.5869240198367816]\n ];\n var OKLabtoLMS = [\n [1.0, 0.3963377773761749, 0.2158037573099136],\n [1.0, -0.1055613458156586, -0.0638541728258133],\n [1.0, -0.0894841775298119, -1.2914855480194092]\n ];\n\n var LMSnl = multiplyMatrices(OKLabtoLMS, OKLab);\n return multiplyMatrices(\n LMStoXYZ,\n LMSnl.map(function (c) { return Math.pow( c, 3 ); })\n );\n }\n\n var oklch2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'lch');\n var l = args[0];\n var c = args[1];\n var h = args[2];\n var rest = args.slice(3);\n var ref = lch2lab(l, c, h);\n var L = ref[0];\n var a = ref[1];\n var b_ = ref[2];\n var ref$1 = oklab2rgb(L, a, b_);\n var r = ref$1[0];\n var g = ref$1[1];\n var b = ref$1[2];\n return [r, g, b ].concat( (rest.length > 0 && rest[0] < 1 ? [rest[0]] : []));\n };\n\n var INT_OR_PCT = /((?:-?\\d+)|(?:-?\\d+(?:\\.\\d+)?)%|none)/.source;\n var FLOAT_OR_PCT = /((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%?)|none)/.source;\n var PCT = /((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%)|none)/.source;\n var RE_S = /\\s*/.source;\n var SEP = /\\s+/.source;\n var COMMA = /\\s*,\\s*/.source;\n var ANLGE = /((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:deg)?)|none)/.source;\n var ALPHA = /\\s*(?:\\/\\s*((?:[01]|[01]?\\.\\d+)|\\d+(?:\\.\\d+)?%))?/.source;\n\n // e.g. rgb(250 20 0), rgb(100% 50% 20%), rgb(100% 50% 20% / 0.5)\n var RE_RGB = new RegExp(\n '^rgba?\\\\(' +\n RE_S +\n [INT_OR_PCT, INT_OR_PCT, INT_OR_PCT].join(SEP) +\n ALPHA +\n '\\\\)$'\n );\n var RE_RGB_LEGACY = new RegExp(\n '^rgb\\\\(' +\n RE_S +\n [INT_OR_PCT, INT_OR_PCT, INT_OR_PCT].join(COMMA) +\n RE_S +\n '\\\\)$'\n );\n var RE_RGBA_LEGACY = new RegExp(\n '^rgba\\\\(' +\n RE_S +\n [INT_OR_PCT, INT_OR_PCT, INT_OR_PCT, FLOAT_OR_PCT].join(COMMA) +\n RE_S +\n '\\\\)$'\n );\n\n var RE_HSL = new RegExp(\n '^hsla?\\\\(' + RE_S + [ANLGE, PCT, PCT].join(SEP) + ALPHA + '\\\\)$'\n );\n var RE_HSL_LEGACY = new RegExp(\n '^hsl?\\\\(' + RE_S + [ANLGE, PCT, PCT].join(COMMA) + RE_S + '\\\\)$'\n );\n var RE_HSLA_LEGACY =\n /^hsla\\(\\s*(-?\\d+(?:\\.\\d+)?),\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n\n var RE_LAB = new RegExp(\n '^lab\\\\(' +\n RE_S +\n [FLOAT_OR_PCT, FLOAT_OR_PCT, FLOAT_OR_PCT].join(SEP) +\n ALPHA +\n '\\\\)$'\n );\n var RE_LCH = new RegExp(\n '^lch\\\\(' +\n RE_S +\n [FLOAT_OR_PCT, FLOAT_OR_PCT, ANLGE].join(SEP) +\n ALPHA +\n '\\\\)$'\n );\n var RE_OKLAB = new RegExp(\n '^oklab\\\\(' +\n RE_S +\n [FLOAT_OR_PCT, FLOAT_OR_PCT, FLOAT_OR_PCT].join(SEP) +\n ALPHA +\n '\\\\)$'\n );\n var RE_OKLCH = new RegExp(\n '^oklch\\\\(' +\n RE_S +\n [FLOAT_OR_PCT, FLOAT_OR_PCT, ANLGE].join(SEP) +\n ALPHA +\n '\\\\)$'\n );\n\n var round$3 = Math.round;\n\n var roundRGB = function (rgb) {\n return rgb.map(function (v, i) { return (i <= 2 ? limit(round$3(v), 0, 255) : v); });\n };\n\n var percentToAbsolute = function (pct, min, max, signed) {\n if ( min === void 0 ) min = 0;\n if ( max === void 0 ) max = 100;\n if ( signed === void 0 ) signed = false;\n\n if (typeof pct === 'string' && pct.endsWith('%')) {\n pct = parseFloat(pct.substring(0, pct.length - 1)) / 100;\n if (signed) {\n // signed percentages are in the range -100% to 100%\n pct = min + (pct + 1) * 0.5 * (max - min);\n } else {\n pct = min + pct * (max - min);\n }\n }\n return +pct;\n };\n\n var noneToValue = function (v, noneValue) {\n return v === 'none' ? noneValue : v;\n };\n\n var css2rgb = function (css) {\n css = css.toLowerCase().trim();\n\n if (css === 'transparent') {\n return [0, 0, 0, 0];\n }\n\n var m;\n\n if (input.format.named) {\n try {\n return input.format.named(css);\n // eslint-disable-next-line\n } catch (e) {}\n }\n\n // rgb(250 20 0) or rgb(250,20,0)\n if ((m = css.match(RE_RGB)) || (m = css.match(RE_RGB_LEGACY))) {\n var rgb = m.slice(1, 4);\n for (var i = 0; i < 3; i++) {\n rgb[i] = +percentToAbsolute(noneToValue(rgb[i], 0), 0, 255);\n }\n rgb = roundRGB(rgb);\n var alpha = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb[3] = alpha; // default alpha\n return rgb;\n }\n\n // rgba(250,20,0,0.4)\n if ((m = css.match(RE_RGBA_LEGACY))) {\n var rgb$1 = m.slice(1, 5);\n for (var i$1 = 0; i$1 < 4; i$1++) {\n rgb$1[i$1] = +percentToAbsolute(rgb$1[i$1], 0, 255);\n }\n return rgb$1;\n }\n\n // hsl(0,100%,50%)\n if ((m = css.match(RE_HSL)) || (m = css.match(RE_HSL_LEGACY))) {\n var hsl = m.slice(1, 4);\n hsl[0] = +noneToValue(hsl[0].replace('deg', ''), 0);\n hsl[1] = +percentToAbsolute(noneToValue(hsl[1], 0), 0, 100) * 0.01;\n hsl[2] = +percentToAbsolute(noneToValue(hsl[2], 0), 0, 100) * 0.01;\n var rgb$2 = roundRGB(hsl2rgb(hsl));\n var alpha$1 = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb$2[3] = alpha$1;\n return rgb$2;\n }\n\n // hsla(0,100%,50%,0.5)\n if ((m = css.match(RE_HSLA_LEGACY))) {\n var hsl$1 = m.slice(1, 4);\n hsl$1[1] *= 0.01;\n hsl$1[2] *= 0.01;\n var rgb$3 = hsl2rgb(hsl$1);\n for (var i$2 = 0; i$2 < 3; i$2++) {\n rgb$3[i$2] = round$3(rgb$3[i$2]);\n }\n rgb$3[3] = +m[4]; // default alpha = 1\n return rgb$3;\n }\n\n if ((m = css.match(RE_LAB))) {\n var lab = m.slice(1, 4);\n lab[0] = percentToAbsolute(noneToValue(lab[0], 0), 0, 100);\n lab[1] = percentToAbsolute(noneToValue(lab[1], 0), -125, 125, true);\n lab[2] = percentToAbsolute(noneToValue(lab[2], 0), -125, 125, true);\n // convert to D50 Lab whitepoint\n var wp = getLabWhitePoint();\n setLabWhitePoint('d50');\n var rgb$4 = roundRGB(lab2rgb(lab));\n // convert back to original Lab whitepoint\n setLabWhitePoint(wp);\n var alpha$2 = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb$4[3] = alpha$2;\n return rgb$4;\n }\n\n if ((m = css.match(RE_LCH))) {\n var lch = m.slice(1, 4);\n lch[0] = percentToAbsolute(lch[0], 0, 100);\n lch[1] = percentToAbsolute(noneToValue(lch[1], 0), 0, 150, false);\n lch[2] = +noneToValue(lch[2].replace('deg', ''), 0);\n // convert to D50 Lab whitepoint\n var wp$1 = getLabWhitePoint();\n setLabWhitePoint('d50');\n var rgb$5 = roundRGB(lch2rgb(lch));\n // convert back to original Lab whitepoint\n setLabWhitePoint(wp$1);\n var alpha$3 = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb$5[3] = alpha$3;\n return rgb$5;\n }\n\n if ((m = css.match(RE_OKLAB))) {\n var oklab = m.slice(1, 4);\n oklab[0] = percentToAbsolute(noneToValue(oklab[0], 0), 0, 1);\n oklab[1] = percentToAbsolute(noneToValue(oklab[1], 0), -0.4, 0.4, true);\n oklab[2] = percentToAbsolute(noneToValue(oklab[2], 0), -0.4, 0.4, true);\n var rgb$6 = roundRGB(oklab2rgb(oklab));\n var alpha$4 = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb$6[3] = alpha$4;\n return rgb$6;\n }\n\n if ((m = css.match(RE_OKLCH))) {\n var oklch = m.slice(1, 4);\n oklch[0] = percentToAbsolute(noneToValue(oklch[0], 0), 0, 1);\n oklch[1] = percentToAbsolute(noneToValue(oklch[1], 0), 0, 0.4, false);\n oklch[2] = +noneToValue(oklch[2].replace('deg', ''), 0);\n var rgb$7 = roundRGB(oklch2rgb(oklch));\n var alpha$5 = m[4] !== undefined ? +percentToAbsolute(m[4], 0, 1) : 1;\n rgb$7[3] = alpha$5;\n return rgb$7;\n }\n };\n\n css2rgb.test = function (s) {\n return (\n // modern\n RE_RGB.test(s) ||\n RE_HSL.test(s) ||\n RE_LAB.test(s) ||\n RE_LCH.test(s) ||\n RE_OKLAB.test(s) ||\n RE_OKLCH.test(s) ||\n // legacy\n RE_RGB_LEGACY.test(s) ||\n RE_RGBA_LEGACY.test(s) ||\n RE_HSL_LEGACY.test(s) ||\n RE_HSLA_LEGACY.test(s) ||\n s === 'transparent'\n );\n };\n\n Color.prototype.css = function (mode) {\n return rgb2css(this._rgb, mode);\n };\n\n var css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['css']) ));\n };\n chroma.css = css;\n\n input.format.css = css2rgb;\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type(h) === 'string' && css2rgb.test(h)) {\n return 'css';\n }\n }\n });\n\n input.format.gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack(args, 'rgba');\n rgb[0] *= 255;\n rgb[1] *= 255;\n rgb[2] *= 255;\n return rgb;\n };\n\n var gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['gl']) ));\n };\n chroma.gl = gl;\n\n Color.prototype.gl = function () {\n var rgb = this._rgb;\n return [rgb[0] / 255, rgb[1] / 255, rgb[2] / 255, rgb[3]];\n };\n\n var floor$3 = Math.floor;\n\n /*\n * this is basically just HSV with some minor tweaks\n *\n * hue.. [0..360]\n * chroma .. [0..1]\n * grayness .. [0..1]\n */\n\n var hcg2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack(args, 'hcg');\n var h = args[0];\n var c = args[1];\n var _g = args[2];\n var r, g, b;\n _g = _g * 255;\n var _c = c * 255;\n if (c === 0) {\n r = g = b = _g;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n var i = floor$3(h);\n var f = h - i;\n var p = _g * (1 - c);\n var q = p + _c * (1 - f);\n var t = p + _c * f;\n var v = p + _c;\n switch (i) {\n case 0:\n (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]);\n break;\n case 1:\n (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]);\n break;\n case 2:\n (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]);\n break;\n case 3:\n (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]);\n break;\n case 4:\n (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]);\n break;\n case 5:\n (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]);\n break;\n }\n }\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var rgb2hcg = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var minRgb = min$3(r, g, b);\n var maxRgb = max$3(r, g, b);\n var delta = maxRgb - minRgb;\n var c = (delta * 100) / 255;\n var _g = (minRgb / (255 - delta)) * 100;\n var h;\n if (delta === 0) {\n h = Number.NaN;\n } else {\n if (r === maxRgb) { h = (g - b) / delta; }\n if (g === maxRgb) { h = 2 + (b - r) / delta; }\n if (b === maxRgb) { h = 4 + (r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, c, _g];\n };\n\n Color.prototype.hcg = function () {\n return rgb2hcg(this._rgb);\n };\n\n var hcg$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hcg']) ));\n };\n chroma.hcg = hcg$1;\n\n input.format.hcg = hcg2rgb;\n\n input.autodetect.push({\n p: 1,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'hcg');\n if (type(args) === 'array' && args.length === 3) {\n return 'hcg';\n }\n }\n });\n\n var RE_HEX = /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/;\n var RE_HEXA = /^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/;\n\n var hex2rgb = function (hex) {\n if (hex.match(RE_HEX)) {\n // remove optional leading #\n if (hex.length === 4 || hex.length === 7) {\n hex = hex.substr(1);\n }\n // expand short-notation to full six-digit\n if (hex.length === 3) {\n hex = hex.split('');\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];\n }\n var u = parseInt(hex, 16);\n var r = u >> 16;\n var g = (u >> 8) & 0xff;\n var b = u & 0xff;\n return [r, g, b, 1];\n }\n\n // match rgba hex format, eg #FF000077\n if (hex.match(RE_HEXA)) {\n if (hex.length === 5 || hex.length === 9) {\n // remove optional leading #\n hex = hex.substr(1);\n }\n // expand short-notation to full eight-digit\n if (hex.length === 4) {\n hex = hex.split('');\n hex =\n hex[0] +\n hex[0] +\n hex[1] +\n hex[1] +\n hex[2] +\n hex[2] +\n hex[3] +\n hex[3];\n }\n var u$1 = parseInt(hex, 16);\n var r$1 = (u$1 >> 24) & 0xff;\n var g$1 = (u$1 >> 16) & 0xff;\n var b$1 = (u$1 >> 8) & 0xff;\n var a = Math.round(((u$1 & 0xff) / 0xff) * 100) / 100;\n return [r$1, g$1, b$1, a];\n }\n\n // we used to check for css colors here\n // if _input.css? and rgb = _input.css hex\n // return rgb\n\n throw new Error((\"unknown hex color: \" + hex));\n };\n\n var round$2 = Math.round;\n\n var rgb2hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgba');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var a = ref[3];\n var mode = last(args) || 'auto';\n if (a === undefined) { a = 1; }\n if (mode === 'auto') {\n mode = a < 1 ? 'rgba' : 'rgb';\n }\n r = round$2(r);\n g = round$2(g);\n b = round$2(b);\n var u = (r << 16) | (g << 8) | b;\n var str = '000000' + u.toString(16); //#.toUpperCase();\n str = str.substr(str.length - 6);\n var hxa = '0' + round$2(a * 255).toString(16);\n hxa = hxa.substr(hxa.length - 2);\n switch (mode.toLowerCase()) {\n case 'rgba':\n return (\"#\" + str + hxa);\n case 'argb':\n return (\"#\" + hxa + str);\n default:\n return (\"#\" + str);\n }\n };\n\n Color.prototype.hex = function (mode) {\n return rgb2hex(this._rgb, mode);\n };\n\n var hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hex']) ));\n };\n chroma.hex = hex;\n\n input.format.hex = hex2rgb;\n input.autodetect.push({\n p: 4,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (\n !rest.length &&\n type(h) === 'string' &&\n [3, 4, 5, 6, 7, 8, 9].indexOf(h.length) >= 0\n ) {\n return 'hex';\n }\n }\n });\n\n var cos$3 = Math.cos;\n\n /*\n * hue [0..360]\n * saturation [0..1]\n * intensity [0..1]\n */\n var hsi2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/hsi2rgb.cpp\n */\n args = unpack(args, 'hsi');\n var h = args[0];\n var s = args[1];\n var i = args[2];\n var r, g, b;\n\n if (isNaN(h)) { h = 0; }\n if (isNaN(s)) { s = 0; }\n // normalize hue\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 360;\n if (h < 1 / 3) {\n b = (1 - s) / 3;\n r = (1 + (s * cos$3(TWOPI * h)) / cos$3(PITHIRD - TWOPI * h)) / 3;\n g = 1 - (b + r);\n } else if (h < 2 / 3) {\n h -= 1 / 3;\n r = (1 - s) / 3;\n g = (1 + (s * cos$3(TWOPI * h)) / cos$3(PITHIRD - TWOPI * h)) / 3;\n b = 1 - (r + g);\n } else {\n h -= 2 / 3;\n g = (1 - s) / 3;\n b = (1 + (s * cos$3(TWOPI * h)) / cos$3(PITHIRD - TWOPI * h)) / 3;\n r = 1 - (g + b);\n }\n r = limit(i * r * 3);\n g = limit(i * g * 3);\n b = limit(i * b * 3);\n return [r * 255, g * 255, b * 255, args.length > 3 ? args[3] : 1];\n };\n\n var min$2 = Math.min;\n var sqrt$3 = Math.sqrt;\n var acos = Math.acos;\n\n var rgb2hsi = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/rgb2hsi.cpp\n */\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r /= 255;\n g /= 255;\n b /= 255;\n var h;\n var min_ = min$2(r, g, b);\n var i = (r + g + b) / 3;\n var s = i > 0 ? 1 - min_ / i : 0;\n if (s === 0) {\n h = NaN;\n } else {\n h = (r - g + (r - b)) / 2;\n h /= sqrt$3((r - g) * (r - g) + (r - b) * (g - b));\n h = acos(h);\n if (b > g) {\n h = TWOPI - h;\n }\n h /= TWOPI;\n }\n return [h * 360, s, i];\n };\n\n Color.prototype.hsi = function () {\n return rgb2hsi(this._rgb);\n };\n\n var hsi$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hsi']) ));\n };\n chroma.hsi = hsi$1;\n\n input.format.hsi = hsi2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'hsi');\n if (type(args) === 'array' && args.length === 3) {\n return 'hsi';\n }\n }\n });\n\n Color.prototype.hsl = function () {\n return rgb2hsl$1(this._rgb);\n };\n\n var hsl$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hsl']) ));\n };\n chroma.hsl = hsl$1;\n\n input.format.hsl = hsl2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'hsl');\n if (type(args) === 'array' && args.length === 3) {\n return 'hsl';\n }\n }\n });\n\n var floor$2 = Math.floor;\n\n var hsv2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack(args, 'hsv');\n var h = args[0];\n var s = args[1];\n var v = args[2];\n var r, g, b;\n v *= 255;\n if (s === 0) {\n r = g = b = v;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n\n var i = floor$2(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - s * f);\n var t = v * (1 - s * (1 - f));\n\n switch (i) {\n case 0:\n (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]);\n break;\n case 1:\n (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]);\n break;\n case 2:\n (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]);\n break;\n case 3:\n (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]);\n break;\n case 4:\n (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]);\n break;\n case 5:\n (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]);\n break;\n }\n }\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var min$1 = Math.min;\n var max$1 = Math.max;\n\n /*\n * supported arguments:\n * - rgb2hsv(r,g,b)\n * - rgb2hsv([r,g,b])\n * - rgb2hsv({r,g,b})\n */\n var rgb2hsl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'rgb');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n var min_ = min$1(r, g, b);\n var max_ = max$1(r, g, b);\n var delta = max_ - min_;\n var h, s, v;\n v = max_ / 255.0;\n if (max_ === 0) {\n h = Number.NaN;\n s = 0;\n } else {\n s = delta / max_;\n if (r === max_) { h = (g - b) / delta; }\n if (g === max_) { h = 2 + (b - r) / delta; }\n if (b === max_) { h = 4 + (r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, s, v];\n };\n\n Color.prototype.hsv = function () {\n return rgb2hsl(this._rgb);\n };\n\n var hsv$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hsv']) ));\n };\n chroma.hsv = hsv$1;\n\n input.format.hsv = hsv2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'hsv');\n if (type(args) === 'array' && args.length === 3) {\n return 'hsv';\n }\n }\n });\n\n Color.prototype.lab = function () {\n return rgb2lab(this._rgb);\n };\n\n var lab$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['lab']) ));\n };\n Object.assign(chroma, { lab: lab$1, getLabWhitePoint: getLabWhitePoint, setLabWhitePoint: setLabWhitePoint });\n\n input.format.lab = lab2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'lab');\n if (type(args) === 'array' && args.length === 3) {\n return 'lab';\n }\n }\n });\n\n var hcl2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hcl = reverse3(unpack(args, 'hcl'));\n return lch2rgb.apply(void 0, hcl);\n };\n\n Color.prototype.lch = function () {\n return rgb2lch(this._rgb);\n };\n Color.prototype.hcl = function () {\n return reverse3(rgb2lch(this._rgb));\n };\n\n var lch$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['lch']) ));\n };\n var hcl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['hcl']) ));\n };\n\n Object.assign(chroma, { lch: lch$1, hcl: hcl });\n\n input.format.lch = lch2rgb;\n input.format.hcl = hcl2rgb;\n ['lch', 'hcl'].forEach(function (m) { return input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, m);\n if (type(args) === 'array' && args.length === 3) {\n return m;\n }\n }\n }); }\n );\n\n var num2rgb = function (num) {\n if (type(num) == 'number' && num >= 0 && num <= 0xffffff) {\n var r = num >> 16;\n var g = (num >> 8) & 0xff;\n var b = num & 0xff;\n return [r, g, b, 1];\n }\n throw new Error('unknown num color: ' + num);\n };\n\n var rgb2num = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n return (r << 16) + (g << 8) + b;\n };\n\n Color.prototype.num = function () {\n return rgb2num(this._rgb);\n };\n\n var num$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['num']) ));\n };\n\n Object.assign(chroma, { num: num$1 });\n\n input.format.num = num2rgb;\n\n input.autodetect.push({\n p: 5,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (\n args.length === 1 &&\n type(args[0]) === 'number' &&\n args[0] >= 0 &&\n args[0] <= 0xffffff\n ) {\n return 'num';\n }\n }\n });\n\n var round$1 = Math.round;\n\n Color.prototype.rgb = function (rnd) {\n if ( rnd === void 0 ) rnd = true;\n\n if (rnd === false) { return this._rgb.slice(0, 3); }\n return this._rgb.slice(0, 3).map(round$1);\n };\n\n Color.prototype.rgba = function (rnd) {\n if ( rnd === void 0 ) rnd = true;\n\n return this._rgb.slice(0, 4).map(function (v, i) {\n return i < 3 ? (rnd === false ? v : round$1(v)) : v;\n });\n };\n\n var rgb$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['rgb']) ));\n };\n Object.assign(chroma, { rgb: rgb$1 });\n\n input.format.rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack(args, 'rgba');\n if (rgba[3] === undefined) { rgba[3] = 1; }\n return rgba;\n };\n\n input.autodetect.push({\n p: 3,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'rgba');\n if (\n type(args) === 'array' &&\n (args.length === 3 ||\n (args.length === 4 &&\n type(args[3]) == 'number' &&\n args[3] >= 0 &&\n args[3] <= 1))\n ) {\n return 'rgb';\n }\n }\n });\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n */\n\n var log$1 = Math.log;\n\n var temperature2rgb = function (kelvin) {\n var temp = kelvin / 100;\n var r, g, b;\n if (temp < 66) {\n r = 255;\n g =\n temp < 6\n ? 0\n : -155.25485562709179 -\n 0.44596950469579133 * (g = temp - 2) +\n 104.49216199393888 * log$1(g);\n b =\n temp < 20\n ? 0\n : -254.76935184120902 +\n 0.8274096064007395 * (b = temp - 10) +\n 115.67994401066147 * log$1(b);\n } else {\n r =\n 351.97690566805693 +\n 0.114206453784165 * (r = temp - 55) -\n 40.25366309332127 * log$1(r);\n g =\n 325.4494125711974 +\n 0.07943456536662342 * (g = temp - 50) -\n 28.0852963507957 * log$1(g);\n b = 255;\n }\n return [r, g, b, 1];\n };\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n **/\n\n var round = Math.round;\n\n var rgb2temperature = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack(args, 'rgb');\n var r = rgb[0],\n b = rgb[2];\n var minTemp = 1000;\n var maxTemp = 40000;\n var eps = 0.4;\n var temp;\n while (maxTemp - minTemp > eps) {\n temp = (maxTemp + minTemp) * 0.5;\n var rgb$1 = temperature2rgb(temp);\n if (rgb$1[2] / rgb$1[0] >= b / r) {\n maxTemp = temp;\n } else {\n minTemp = temp;\n }\n }\n return round(temp);\n };\n\n Color.prototype.temp =\n Color.prototype.kelvin =\n Color.prototype.temperature =\n function () {\n return rgb2temperature(this._rgb);\n };\n\n var temp = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['temp']) ));\n };\n Object.assign(chroma, { temp: temp, kelvin: temp, temperature: temp });\n\n input.format.temp =\n input.format.kelvin =\n input.format.temperature =\n temperature2rgb;\n\n Color.prototype.oklab = function () {\n return rgb2oklab(this._rgb);\n };\n\n var oklab$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['oklab']) ));\n };\n Object.assign(chroma, { oklab: oklab$1 });\n\n input.format.oklab = oklab2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'oklab');\n if (type(args) === 'array' && args.length === 3) {\n return 'oklab';\n }\n }\n });\n\n Color.prototype.oklch = function () {\n return rgb2oklch(this._rgb);\n };\n\n var oklch$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color, [ null ].concat( args, ['oklch']) ));\n };\n Object.assign(chroma, { oklch: oklch$1 });\n\n input.format.oklch = oklch2rgb;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack(args, 'oklch');\n if (type(args) === 'array' && args.length === 3) {\n return 'oklch';\n }\n }\n });\n\n /**\n \tX11 color names\n\n \thttp://www.w3.org/TR/css3-color/#svg-color\n */\n\n var w3cx11 = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\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: '#ff00ff',\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 laserlemon: '#ffff54',\n lavender: '#e6e6fa',\n lavenderblush: '#fff0f5',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrod: '#fafad2',\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: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n maroon2: '#7f0000',\n maroon3: '#b03060',\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 purple2: '#7f007f',\n purple3: '#a020f0',\n rebeccapurple: '#663399',\n red: '#ff0000',\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: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32'\n };\n\n Color.prototype.name = function () {\n var hex = rgb2hex(this._rgb, 'rgb');\n for (var i = 0, list = Object.keys(w3cx11); i < list.length; i += 1) {\n var n = list[i];\n\n if (w3cx11[n] === hex) { return n.toLowerCase(); }\n }\n return hex;\n };\n\n input.format.named = function (name) {\n name = name.toLowerCase();\n if (w3cx11[name]) { return hex2rgb(w3cx11[name]); }\n throw new Error('unknown color name: ' + name);\n };\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type(h) === 'string' && w3cx11[h.toLowerCase()]) {\n return 'named';\n }\n }\n });\n\n Color.prototype.alpha = function (a, mutate) {\n if ( mutate === void 0 ) mutate = false;\n\n if (a !== undefined && type(a) === 'number') {\n if (mutate) {\n this._rgb[3] = a;\n return this;\n }\n return new Color([this._rgb[0], this._rgb[1], this._rgb[2], a], 'rgb');\n }\n return this._rgb[3];\n };\n\n Color.prototype.clipped = function () {\n return this._rgb._clipped || false;\n };\n\n Color.prototype.darken = function (amount) {\n if ( amount === void 0 ) amount = 1;\n\n var me = this;\n var lab = me.lab();\n lab[0] -= labConstants.Kn * amount;\n return new Color(lab, 'lab').alpha(me.alpha(), true);\n };\n\n Color.prototype.brighten = function (amount) {\n if ( amount === void 0 ) amount = 1;\n\n return this.darken(-amount);\n };\n\n Color.prototype.darker = Color.prototype.darken;\n Color.prototype.brighter = Color.prototype.brighten;\n\n Color.prototype.get = function (mc) {\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel) - (mode.substr(0, 2) === 'ok' ? 2 : 0);\n if (i > -1) { return src[i]; }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n var pow$6 = Math.pow;\n\n var EPS = 1e-7;\n var MAX_ITER = 20;\n\n Color.prototype.luminance = function (lum, mode) {\n if ( mode === void 0 ) mode = 'rgb';\n\n if (lum !== undefined && type(lum) === 'number') {\n if (lum === 0) {\n // return pure black\n return new Color([0, 0, 0, this._rgb[3]], 'rgb');\n }\n if (lum === 1) {\n // return pure white\n return new Color([255, 255, 255, this._rgb[3]], 'rgb');\n }\n // compute new color using...\n var cur_lum = this.luminance();\n var max_iter = MAX_ITER;\n\n var test = function (low, high) {\n var mid = low.interpolate(high, 0.5, mode);\n var lm = mid.luminance();\n if (Math.abs(lum - lm) < EPS || !max_iter--) {\n // close enough\n return mid;\n }\n return lm > lum ? test(low, mid) : test(mid, high);\n };\n\n var rgb = (\n cur_lum > lum\n ? test(new Color([0, 0, 0]), this)\n : test(this, new Color([255, 255, 255]))\n ).rgb();\n return new Color(rgb.concat( [this._rgb[3]]));\n }\n return rgb2luminance.apply(void 0, this._rgb.slice(0, 3));\n };\n\n var rgb2luminance = function (r, g, b) {\n // relative luminance\n // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n r = luminance_x(r);\n g = luminance_x(g);\n b = luminance_x(b);\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n };\n\n var luminance_x = function (x) {\n x /= 255;\n return x <= 0.03928 ? x / 12.92 : pow$6((x + 0.055) / 1.055, 2.4);\n };\n\n var index = {};\n\n function mix (col1, col2, f) {\n if ( f === void 0 ) f = 0.5;\n var rest = [], len = arguments.length - 3;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 3 ];\n\n var mode = rest[0] || 'lrgb';\n if (!index[mode] && !rest.length) {\n // fall back to the first supported mode\n mode = Object.keys(index)[0];\n }\n if (!index[mode]) {\n throw new Error((\"interpolation mode \" + mode + \" is not defined\"));\n }\n if (type(col1) !== 'object') { col1 = new Color(col1); }\n if (type(col2) !== 'object') { col2 = new Color(col2); }\n return index[mode](col1, col2, f).alpha(\n col1.alpha() + f * (col2.alpha() - col1.alpha())\n );\n }\n\n Color.prototype.mix = Color.prototype.interpolate = function (\n col2,\n f\n ) {\n if ( f === void 0 ) f = 0.5;\n var rest = [], len = arguments.length - 2;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 2 ];\n\n return mix.apply(void 0, [ this, col2, f ].concat( rest ));\n };\n\n Color.prototype.premultiply = function (mutate) {\n if ( mutate === void 0 ) mutate = false;\n\n var rgb = this._rgb;\n var a = rgb[3];\n if (mutate) {\n this._rgb = [rgb[0] * a, rgb[1] * a, rgb[2] * a, a];\n return this;\n } else {\n return new Color([rgb[0] * a, rgb[1] * a, rgb[2] * a, a], 'rgb');\n }\n };\n\n Color.prototype.saturate = function (amount) {\n if ( amount === void 0 ) amount = 1;\n\n var me = this;\n var lch = me.lch();\n lch[1] += labConstants.Kn * amount;\n if (lch[1] < 0) { lch[1] = 0; }\n return new Color(lch, 'lch').alpha(me.alpha(), true);\n };\n\n Color.prototype.desaturate = function (amount) {\n if ( amount === void 0 ) amount = 1;\n\n return this.saturate(-amount);\n };\n\n Color.prototype.set = function (mc, value, mutate) {\n if ( mutate === void 0 ) mutate = false;\n\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel) - (mode.substr(0, 2) === 'ok' ? 2 : 0);\n if (i > -1) {\n if (type(value) == 'string') {\n switch (value.charAt(0)) {\n case '+':\n src[i] += +value;\n break;\n case '-':\n src[i] += +value;\n break;\n case '*':\n src[i] *= +value.substr(1);\n break;\n case '/':\n src[i] /= +value.substr(1);\n break;\n default:\n src[i] = +value;\n }\n } else if (type(value) === 'number') {\n src[i] = value;\n } else {\n throw new Error(\"unsupported value for Color.set\");\n }\n var out = new Color(src, mode);\n if (mutate) {\n this._rgb = out._rgb;\n return this;\n }\n return out;\n }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n Color.prototype.tint = function (f) {\n if ( f === void 0 ) f = 0.5;\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n return mix.apply(void 0, [ this, 'white', f ].concat( rest ));\n };\n\n Color.prototype.shade = function (f) {\n if ( f === void 0 ) f = 0.5;\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n return mix.apply(void 0, [ this, 'black', f ].concat( rest ));\n };\n\n var rgb = function (col1, col2, f) {\n var xyz0 = col1._rgb;\n var xyz1 = col2._rgb;\n return new Color(\n xyz0[0] + f * (xyz1[0] - xyz0[0]),\n xyz0[1] + f * (xyz1[1] - xyz0[1]),\n xyz0[2] + f * (xyz1[2] - xyz0[2]),\n 'rgb'\n );\n };\n\n // register interpolator\n index.rgb = rgb;\n\n var sqrt$2 = Math.sqrt;\n var pow$5 = Math.pow;\n\n var lrgb = function (col1, col2, f) {\n var ref = col1._rgb;\n var x1 = ref[0];\n var y1 = ref[1];\n var z1 = ref[2];\n var ref$1 = col2._rgb;\n var x2 = ref$1[0];\n var y2 = ref$1[1];\n var z2 = ref$1[2];\n return new Color(\n sqrt$2(pow$5(x1, 2) * (1 - f) + pow$5(x2, 2) * f),\n sqrt$2(pow$5(y1, 2) * (1 - f) + pow$5(y2, 2) * f),\n sqrt$2(pow$5(z1, 2) * (1 - f) + pow$5(z2, 2) * f),\n 'rgb'\n );\n };\n\n // register interpolator\n index.lrgb = lrgb;\n\n var lab = function (col1, col2, f) {\n var xyz0 = col1.lab();\n var xyz1 = col2.lab();\n return new Color(\n xyz0[0] + f * (xyz1[0] - xyz0[0]),\n xyz0[1] + f * (xyz1[1] - xyz0[1]),\n xyz0[2] + f * (xyz1[2] - xyz0[2]),\n 'lab'\n );\n };\n\n // register interpolator\n index.lab = lab;\n\n function interpolate_hsx (col1, col2, f, m) {\n var assign, assign$1;\n\n var xyz0, xyz1;\n if (m === 'hsl') {\n xyz0 = col1.hsl();\n xyz1 = col2.hsl();\n } else if (m === 'hsv') {\n xyz0 = col1.hsv();\n xyz1 = col2.hsv();\n } else if (m === 'hcg') {\n xyz0 = col1.hcg();\n xyz1 = col2.hcg();\n } else if (m === 'hsi') {\n xyz0 = col1.hsi();\n xyz1 = col2.hsi();\n } else if (m === 'lch' || m === 'hcl') {\n m = 'hcl';\n xyz0 = col1.hcl();\n xyz1 = col2.hcl();\n } else if (m === 'oklch') {\n xyz0 = col1.oklch().reverse();\n xyz1 = col2.oklch().reverse();\n }\n\n var hue0, hue1, sat0, sat1, lbv0, lbv1;\n if (m.substr(0, 1) === 'h' || m === 'oklch') {\n (assign = xyz0, hue0 = assign[0], sat0 = assign[1], lbv0 = assign[2]);\n (assign$1 = xyz1, hue1 = assign$1[0], sat1 = assign$1[1], lbv1 = assign$1[2]);\n }\n\n var sat, hue, lbv, dh;\n\n if (!isNaN(hue0) && !isNaN(hue1)) {\n // both colors have hue\n if (hue1 > hue0 && hue1 - hue0 > 180) {\n dh = hue1 - (hue0 + 360);\n } else if (hue1 < hue0 && hue0 - hue1 > 180) {\n dh = hue1 + 360 - hue0;\n } else {\n dh = hue1 - hue0;\n }\n hue = hue0 + f * dh;\n } else if (!isNaN(hue0)) {\n hue = hue0;\n if ((lbv1 == 1 || lbv1 == 0) && m != 'hsv') { sat = sat0; }\n } else if (!isNaN(hue1)) {\n hue = hue1;\n if ((lbv0 == 1 || lbv0 == 0) && m != 'hsv') { sat = sat1; }\n } else {\n hue = Number.NaN;\n }\n\n if (sat === undefined) { sat = sat0 + f * (sat1 - sat0); }\n lbv = lbv0 + f * (lbv1 - lbv0);\n return m === 'oklch'\n ? new Color([lbv, sat, hue], m)\n : new Color([hue, sat, lbv], m);\n }\n\n var lch = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'lch');\n };\n\n // register interpolator\n index.lch = lch;\n index.hcl = lch;\n\n var num = function (col1, col2, f) {\n var c1 = col1.num();\n var c2 = col2.num();\n return new Color(c1 + f * (c2 - c1), 'num');\n };\n\n // register interpolator\n index.num = num;\n\n var hcg = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'hcg');\n };\n\n // register interpolator\n index.hcg = hcg;\n\n var hsi = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'hsi');\n };\n\n // register interpolator\n index.hsi = hsi;\n\n var hsl = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'hsl');\n };\n\n // register interpolator\n index.hsl = hsl;\n\n var hsv = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'hsv');\n };\n\n // register interpolator\n index.hsv = hsv;\n\n var oklab = function (col1, col2, f) {\n var xyz0 = col1.oklab();\n var xyz1 = col2.oklab();\n return new Color(\n xyz0[0] + f * (xyz1[0] - xyz0[0]),\n xyz0[1] + f * (xyz1[1] - xyz0[1]),\n xyz0[2] + f * (xyz1[2] - xyz0[2]),\n 'oklab'\n );\n };\n\n // register interpolator\n index.oklab = oklab;\n\n var oklch = function (col1, col2, f) {\n return interpolate_hsx(col1, col2, f, 'oklch');\n };\n\n // register interpolator\n index.oklch = oklch;\n\n var pow$4 = Math.pow;\n var sqrt$1 = Math.sqrt;\n var PI$1 = Math.PI;\n var cos$2 = Math.cos;\n var sin$2 = Math.sin;\n var atan2$1 = Math.atan2;\n\n function average (colors, mode, weights) {\n if ( mode === void 0 ) mode = 'lrgb';\n if ( weights === void 0 ) weights = null;\n\n var l = colors.length;\n if (!weights) { weights = Array.from(new Array(l)).map(function () { return 1; }); }\n // normalize weights\n var k =\n l /\n weights.reduce(function (a, b) {\n return a + b;\n });\n weights.forEach(function (w, i) {\n weights[i] *= k;\n });\n // convert colors to Color objects\n colors = colors.map(function (c) { return new Color(c); });\n if (mode === 'lrgb') {\n return _average_lrgb(colors, weights);\n }\n var first = colors.shift();\n var xyz = first.get(mode);\n var cnt = [];\n var dx = 0;\n var dy = 0;\n // initial color\n for (var i = 0; i < xyz.length; i++) {\n xyz[i] = (xyz[i] || 0) * weights[0];\n cnt.push(isNaN(xyz[i]) ? 0 : weights[0]);\n if (mode.charAt(i) === 'h' && !isNaN(xyz[i])) {\n var A = (xyz[i] / 180) * PI$1;\n dx += cos$2(A) * weights[0];\n dy += sin$2(A) * weights[0];\n }\n }\n\n var alpha = first.alpha() * weights[0];\n colors.forEach(function (c, ci) {\n var xyz2 = c.get(mode);\n alpha += c.alpha() * weights[ci + 1];\n for (var i = 0; i < xyz.length; i++) {\n if (!isNaN(xyz2[i])) {\n cnt[i] += weights[ci + 1];\n if (mode.charAt(i) === 'h') {\n var A = (xyz2[i] / 180) * PI$1;\n dx += cos$2(A) * weights[ci + 1];\n dy += sin$2(A) * weights[ci + 1];\n } else {\n xyz[i] += xyz2[i] * weights[ci + 1];\n }\n }\n }\n });\n\n for (var i$1 = 0; i$1 < xyz.length; i$1++) {\n if (mode.charAt(i$1) === 'h') {\n var A$1 = (atan2$1(dy / cnt[i$1], dx / cnt[i$1]) / PI$1) * 180;\n while (A$1 < 0) { A$1 += 360; }\n while (A$1 >= 360) { A$1 -= 360; }\n xyz[i$1] = A$1;\n } else {\n xyz[i$1] = xyz[i$1] / cnt[i$1];\n }\n }\n alpha /= l;\n return new Color(xyz, mode).alpha(alpha > 0.99999 ? 1 : alpha, true);\n }\n var _average_lrgb = function (colors, weights) {\n var l = colors.length;\n var xyz = [0, 0, 0, 0];\n for (var i = 0; i < colors.length; i++) {\n var col = colors[i];\n var f = weights[i] / l;\n var rgb = col._rgb;\n xyz[0] += pow$4(rgb[0], 2) * f;\n xyz[1] += pow$4(rgb[1], 2) * f;\n xyz[2] += pow$4(rgb[2], 2) * f;\n xyz[3] += rgb[3] * f;\n }\n xyz[0] = sqrt$1(xyz[0]);\n xyz[1] = sqrt$1(xyz[1]);\n xyz[2] = sqrt$1(xyz[2]);\n if (xyz[3] > 0.9999999) { xyz[3] = 1; }\n return new Color(clip_rgb(xyz));\n };\n\n // minimal multi-purpose interface\n\n\n var pow$3 = Math.pow;\n\n function scale (colors) {\n // constructor\n var _mode = 'rgb';\n var _nacol = chroma('#ccc');\n var _spread = 0;\n // const _fixed = false;\n var _positions = [0, 1];\n var _domain = [0, 1];\n var _pos = [];\n var _padding = [0, 0];\n var _classes = false;\n var _colors = [];\n var _out = false;\n var _min = 0;\n var _max = 1;\n var _correctLightness = false;\n var _colorCache = {};\n var _useCache = true;\n var _gamma = 1;\n\n // private methods\n\n var setColors = function (colors) {\n colors = colors || ['#fff', '#000'];\n if (\n colors &&\n type(colors) === 'string' &&\n chroma.brewer &&\n chroma.brewer[colors.toLowerCase()]\n ) {\n colors = chroma.brewer[colors.toLowerCase()];\n }\n if (type(colors) === 'array') {\n // handle single color\n if (colors.length === 1) {\n colors = [colors[0], colors[0]];\n }\n // make a copy of the colors\n colors = colors.slice(0);\n // convert to chroma classes\n for (var c = 0; c < colors.length; c++) {\n colors[c] = chroma(colors[c]);\n }\n // auto-fill color position\n _pos.length = 0;\n for (var c$1 = 0; c$1 < colors.length; c$1++) {\n _pos.push(c$1 / (colors.length - 1));\n }\n }\n resetCache();\n return (_colors = colors);\n };\n\n var getClass = function (value) {\n if (_classes != null) {\n var n = _classes.length - 1;\n var i = 0;\n while (i < n && value >= _classes[i]) {\n i++;\n }\n return i - 1;\n }\n return 0;\n };\n\n var tMapLightness = function (t) { return t; };\n var tMapDomain = function (t) { return t; };\n\n // const classifyValue = function(value) {\n // let val = value;\n // if (_classes.length > 2) {\n // const n = _classes.length-1;\n // const i = getClass(value);\n // const minc = _classes[0] + ((_classes[1]-_classes[0]) * (0 + (_spread * 0.5))); // center of 1st class\n // const maxc = _classes[n-1] + ((_classes[n]-_classes[n-1]) * (1 - (_spread * 0.5))); // center of last class\n // val = _min + ((((_classes[i] + ((_classes[i+1] - _classes[i]) * 0.5)) - minc) / (maxc-minc)) * (_max - _min));\n // }\n // return val;\n // };\n\n var getColor = function (val, bypassMap) {\n var col, t;\n if (bypassMap == null) {\n bypassMap = false;\n }\n if (isNaN(val) || val === null) {\n return _nacol;\n }\n if (!bypassMap) {\n if (_classes && _classes.length > 2) {\n // find the class\n var c = getClass(val);\n t = c / (_classes.length - 2);\n } else if (_max !== _min) {\n // just interpolate between min/max\n t = (val - _min) / (_max - _min);\n } else {\n t = 1;\n }\n } else {\n t = val;\n }\n\n // domain map\n t = tMapDomain(t);\n\n if (!bypassMap) {\n t = tMapLightness(t); // lightness correction\n }\n\n if (_gamma !== 1) {\n t = pow$3(t, _gamma);\n }\n\n t = _padding[0] + t * (1 - _padding[0] - _padding[1]);\n\n t = limit(t, 0, 1);\n\n var k = Math.floor(t * 10000);\n\n if (_useCache && _colorCache[k]) {\n col = _colorCache[k];\n } else {\n if (type(_colors) === 'array') {\n //for i in [0.._pos.length-1]\n for (var i = 0; i < _pos.length; i++) {\n var p = _pos[i];\n if (t <= p) {\n col = _colors[i];\n break;\n }\n if (t >= p && i === _pos.length - 1) {\n col = _colors[i];\n break;\n }\n if (t > p && t < _pos[i + 1]) {\n t = (t - p) / (_pos[i + 1] - p);\n col = chroma.interpolate(\n _colors[i],\n _colors[i + 1],\n t,\n _mode\n );\n break;\n }\n }\n } else if (type(_colors) === 'function') {\n col = _colors(t);\n }\n if (_useCache) {\n _colorCache[k] = col;\n }\n }\n return col;\n };\n\n var resetCache = function () { return (_colorCache = {}); };\n\n setColors(colors);\n\n // public interface\n\n var f = function (v) {\n var c = chroma(getColor(v));\n if (_out && c[_out]) {\n return c[_out]();\n } else {\n return c;\n }\n };\n\n f.classes = function (classes) {\n if (classes != null) {\n if (type(classes) === 'array') {\n _classes = classes;\n _positions = [classes[0], classes[classes.length - 1]];\n } else {\n var d = chroma.analyze(_positions);\n if (classes === 0) {\n _classes = [d.min, d.max];\n } else {\n _classes = chroma.limits(d, 'e', classes);\n }\n }\n return f;\n }\n return _classes;\n };\n\n f.domain = function (domain) {\n if (!arguments.length) {\n // return original domain\n return _domain;\n }\n // store original domain so we can return it later\n _domain = domain.slice(0);\n _min = domain[0];\n _max = domain[domain.length - 1];\n _pos = [];\n var k = _colors.length;\n if (domain.length === k && _min !== _max) {\n // update positions\n for (var i = 0, list = Array.from(domain); i < list.length; i += 1) {\n var d = list[i];\n\n _pos.push((d - _min) / (_max - _min));\n }\n } else {\n for (var c = 0; c < k; c++) {\n _pos.push(c / (k - 1));\n }\n if (domain.length > 2) {\n // set domain map\n var tOut = domain.map(function (d, i) { return i / (domain.length - 1); });\n var tBreaks = domain.map(function (d) { return (d - _min) / (_max - _min); });\n if (!tBreaks.every(function (val, i) { return tOut[i] === val; })) {\n tMapDomain = function (t) {\n if (t <= 0 || t >= 1) { return t; }\n var i = 0;\n while (t >= tBreaks[i + 1]) { i++; }\n var f =\n (t - tBreaks[i]) / (tBreaks[i + 1] - tBreaks[i]);\n var out = tOut[i] + f * (tOut[i + 1] - tOut[i]);\n return out;\n };\n }\n }\n }\n _positions = [_min, _max];\n return f;\n };\n\n f.mode = function (_m) {\n if (!arguments.length) {\n return _mode;\n }\n _mode = _m;\n resetCache();\n return f;\n };\n\n f.range = function (colors, _pos) {\n setColors(colors);\n return f;\n };\n\n f.out = function (_o) {\n _out = _o;\n return f;\n };\n\n f.spread = function (val) {\n if (!arguments.length) {\n return _spread;\n }\n _spread = val;\n return f;\n };\n\n f.correctLightness = function (v) {\n if (v == null) {\n v = true;\n }\n _correctLightness = v;\n resetCache();\n if (_correctLightness) {\n tMapLightness = function (t) {\n var L0 = getColor(0, true).lab()[0];\n var L1 = getColor(1, true).lab()[0];\n var pol = L0 > L1;\n var L_actual = getColor(t, true).lab()[0];\n var L_ideal = L0 + (L1 - L0) * t;\n var L_diff = L_actual - L_ideal;\n var t0 = 0;\n var t1 = 1;\n var max_iter = 20;\n while (Math.abs(L_diff) > 1e-2 && max_iter-- > 0) {\n (function () {\n if (pol) {\n L_diff *= -1;\n }\n if (L_diff < 0) {\n t0 = t;\n t += (t1 - t) * 0.5;\n } else {\n t1 = t;\n t += (t0 - t) * 0.5;\n }\n L_actual = getColor(t, true).lab()[0];\n return (L_diff = L_actual - L_ideal);\n })();\n }\n return t;\n };\n } else {\n tMapLightness = function (t) { return t; };\n }\n return f;\n };\n\n f.padding = function (p) {\n if (p != null) {\n if (type(p) === 'number') {\n p = [p, p];\n }\n _padding = p;\n return f;\n } else {\n return _padding;\n }\n };\n\n f.colors = function (numColors, out) {\n // If no arguments are given, return the original colors that were provided\n if (arguments.length < 2) {\n out = 'hex';\n }\n var result = [];\n\n if (arguments.length === 0) {\n result = _colors.slice(0);\n } else if (numColors === 1) {\n result = [f(0.5)];\n } else if (numColors > 1) {\n var dm = _positions[0];\n var dd = _positions[1] - dm;\n result = __range__(0, numColors).map(function (i) { return f(dm + (i / (numColors - 1)) * dd); }\n );\n } else {\n // returns all colors based on the defined classes\n colors = [];\n var samples = [];\n if (_classes && _classes.length > 2) {\n for (\n var i = 1, end = _classes.length, asc = 1 <= end;\n asc ? i < end : i > end;\n asc ? i++ : i--\n ) {\n samples.push((_classes[i - 1] + _classes[i]) * 0.5);\n }\n } else {\n samples = _positions;\n }\n result = samples.map(function (v) { return f(v); });\n }\n\n if (chroma[out]) {\n result = result.map(function (c) { return c[out](); });\n }\n return result;\n };\n\n f.cache = function (c) {\n if (c != null) {\n _useCache = c;\n return f;\n } else {\n return _useCache;\n }\n };\n\n f.gamma = function (g) {\n if (g != null) {\n _gamma = g;\n return f;\n } else {\n return _gamma;\n }\n };\n\n f.nodata = function (d) {\n if (d != null) {\n _nacol = chroma(d);\n return f;\n } else {\n return _nacol;\n }\n };\n\n return f;\n }\n\n function __range__(left, right, inclusive) {\n var range = [];\n var ascending = left < right;\n var end = right ;\n for (var i = left; ascending ? i < end : i > end; ascending ? i++ : i--) {\n range.push(i);\n }\n return range;\n }\n\n //\n // interpolates between a set of colors uzing a bezier spline\n //\n\n\n // nth row of the pascal triangle\n var binom_row = function (n) {\n var row = [1, 1];\n for (var i = 1; i < n; i++) {\n var newrow = [1];\n for (var j = 1; j <= row.length; j++) {\n newrow[j] = (row[j] || 0) + row[j - 1];\n }\n row = newrow;\n }\n return row;\n };\n\n var bezier = function (colors) {\n var assign, assign$1, assign$2;\n\n var I, lab0, lab1, lab2;\n colors = colors.map(function (c) { return new Color(c); });\n if (colors.length === 2) {\n // linear interpolation\n (assign = colors.map(function (c) { return c.lab(); }), lab0 = assign[0], lab1 = assign[1]);\n I = function (t) {\n var lab = [0, 1, 2].map(function (i) { return lab0[i] + t * (lab1[i] - lab0[i]); });\n return new Color(lab, 'lab');\n };\n } else if (colors.length === 3) {\n // quadratic bezier interpolation\n (assign$1 = colors.map(function (c) { return c.lab(); }), lab0 = assign$1[0], lab1 = assign$1[1], lab2 = assign$1[2]);\n I = function (t) {\n var lab = [0, 1, 2].map(\n function (i) { return (1 - t) * (1 - t) * lab0[i] +\n 2 * (1 - t) * t * lab1[i] +\n t * t * lab2[i]; }\n );\n return new Color(lab, 'lab');\n };\n } else if (colors.length === 4) {\n // cubic bezier interpolation\n var lab3;\n (assign$2 = colors.map(function (c) { return c.lab(); }), lab0 = assign$2[0], lab1 = assign$2[1], lab2 = assign$2[2], lab3 = assign$2[3]);\n I = function (t) {\n var lab = [0, 1, 2].map(\n function (i) { return (1 - t) * (1 - t) * (1 - t) * lab0[i] +\n 3 * (1 - t) * (1 - t) * t * lab1[i] +\n 3 * (1 - t) * t * t * lab2[i] +\n t * t * t * lab3[i]; }\n );\n return new Color(lab, 'lab');\n };\n } else if (colors.length >= 5) {\n // general case (degree n bezier)\n var labs, row, n;\n labs = colors.map(function (c) { return c.lab(); });\n n = colors.length - 1;\n row = binom_row(n);\n I = function (t) {\n var u = 1 - t;\n var lab = [0, 1, 2].map(function (i) { return labs.reduce(\n function (sum, el, j) { return sum + row[j] * Math.pow( u, (n - j) ) * Math.pow( t, j ) * el[i]; },\n 0\n ); }\n );\n return new Color(lab, 'lab');\n };\n } else {\n throw new RangeError('No point in running bezier with only one color.');\n }\n return I;\n };\n\n function bezier$1 (colors) {\n var f = bezier(colors);\n f.scale = function () { return scale(f); };\n return f;\n }\n\n /*\n * interpolates between a set of colors uzing a bezier spline\n * blend mode formulas taken from https://web.archive.org/web/20180110014946/http://www.venture-ware.com/kevin/coding/lets-learn-math-photoshop-blend-modes/\n */\n\n\n var blend = function (bottom, top, mode) {\n if (!blend[mode]) {\n throw new Error('unknown blend mode ' + mode);\n }\n return blend[mode](bottom, top);\n };\n\n var blend_f = function (f) { return function (bottom, top) {\n var c0 = chroma(top).rgb();\n var c1 = chroma(bottom).rgb();\n return chroma.rgb(f(c0, c1));\n }; };\n\n var each = function (f) { return function (c0, c1) {\n var out = [];\n out[0] = f(c0[0], c1[0]);\n out[1] = f(c0[1], c1[1]);\n out[2] = f(c0[2], c1[2]);\n return out;\n }; };\n\n var normal = function (a) { return a; };\n var multiply = function (a, b) { return (a * b) / 255; };\n var darken = function (a, b) { return (a > b ? b : a); };\n var lighten = function (a, b) { return (a > b ? a : b); };\n var screen = function (a, b) { return 255 * (1 - (1 - a / 255) * (1 - b / 255)); };\n var overlay = function (a, b) { return b < 128 ? (2 * a * b) / 255 : 255 * (1 - 2 * (1 - a / 255) * (1 - b / 255)); };\n var burn = function (a, b) { return 255 * (1 - (1 - b / 255) / (a / 255)); };\n var dodge = function (a, b) {\n if (a === 255) { return 255; }\n a = (255 * (b / 255)) / (1 - a / 255);\n return a > 255 ? 255 : a;\n };\n\n // # add = (a,b) ->\n // # if (a + b > 255) then 255 else a + b\n\n blend.normal = blend_f(each(normal));\n blend.multiply = blend_f(each(multiply));\n blend.screen = blend_f(each(screen));\n blend.overlay = blend_f(each(overlay));\n blend.darken = blend_f(each(darken));\n blend.lighten = blend_f(each(lighten));\n blend.dodge = blend_f(each(dodge));\n blend.burn = blend_f(each(burn));\n\n // cubehelix interpolation\n // based on D.A. Green \"A colour scheme for the display of astronomical intensity images\"\n // http://astron-soc.in/bulletin/11June/289392011.pdf\n var pow$2 = Math.pow;\n var sin$1 = Math.sin;\n var cos$1 = Math.cos;\n\n function cubehelix (\n start,\n rotations,\n hue,\n gamma,\n lightness\n ) {\n if ( start === void 0 ) start = 300;\n if ( rotations === void 0 ) rotations = -1.5;\n if ( hue === void 0 ) hue = 1;\n if ( gamma === void 0 ) gamma = 1;\n if ( lightness === void 0 ) lightness = [0, 1];\n\n var dh = 0,\n dl;\n if (type(lightness) === 'array') {\n dl = lightness[1] - lightness[0];\n } else {\n dl = 0;\n lightness = [lightness, lightness];\n }\n var f = function (fract) {\n var a = TWOPI * ((start + 120) / 360 + rotations * fract);\n var l = pow$2(lightness[0] + dl * fract, gamma);\n var h = dh !== 0 ? hue[0] + fract * dh : hue;\n var amp = (h * l * (1 - l)) / 2;\n var cos_a = cos$1(a);\n var sin_a = sin$1(a);\n var r = l + amp * (-0.14861 * cos_a + 1.78277 * sin_a);\n var g = l + amp * (-0.29227 * cos_a - 0.90649 * sin_a);\n var b = l + amp * (1.97294 * cos_a);\n return chroma(clip_rgb([r * 255, g * 255, b * 255, 1]));\n };\n f.start = function (s) {\n if (s == null) {\n return start;\n }\n start = s;\n return f;\n };\n f.rotations = function (r) {\n if (r == null) {\n return rotations;\n }\n rotations = r;\n return f;\n };\n f.gamma = function (g) {\n if (g == null) {\n return gamma;\n }\n gamma = g;\n return f;\n };\n f.hue = function (h) {\n if (h == null) {\n return hue;\n }\n hue = h;\n if (type(hue) === 'array') {\n dh = hue[1] - hue[0];\n if (dh === 0) {\n hue = hue[1];\n }\n } else {\n dh = 0;\n }\n return f;\n };\n f.lightness = function (h) {\n if (h == null) {\n return lightness;\n }\n if (type(h) === 'array') {\n lightness = h;\n dl = h[1] - h[0];\n } else {\n lightness = [h, h];\n dl = 0;\n }\n return f;\n };\n f.scale = function () { return chroma.scale(f); };\n f.hue(hue);\n return f;\n }\n\n var digits = '0123456789abcdef';\n\n var floor$1 = Math.floor;\n var random = Math.random;\n\n /**\n * Generates a random color.\n * @param {() => number} rng - A random number generator function.\n */\n function random$1 (rng) {\n if ( rng === void 0 ) rng = random;\n\n var code = '#';\n for (var i = 0; i < 6; i++) {\n code += digits.charAt(floor$1(rng() * 16));\n }\n return new Color(code, 'hex');\n }\n\n var log = Math.log;\n var pow$1 = Math.pow;\n var floor = Math.floor;\n var abs$1 = Math.abs;\n\n function analyze(data, key) {\n if ( key === void 0 ) key = null;\n\n var r = {\n min: Number.MAX_VALUE,\n max: Number.MAX_VALUE * -1,\n sum: 0,\n values: [],\n count: 0\n };\n if (type(data) === 'object') {\n data = Object.values(data);\n }\n data.forEach(function (val) {\n if (key && type(val) === 'object') { val = val[key]; }\n if (val !== undefined && val !== null && !isNaN(val)) {\n r.values.push(val);\n r.sum += val;\n if (val < r.min) { r.min = val; }\n if (val > r.max) { r.max = val; }\n r.count += 1;\n }\n });\n\n r.domain = [r.min, r.max];\n\n r.limits = function (mode, num) { return limits(r, mode, num); };\n\n return r;\n }\n\n function limits(data, mode, num) {\n if ( mode === void 0 ) mode = 'equal';\n if ( num === void 0 ) num = 7;\n\n if (type(data) == 'array') {\n data = analyze(data);\n }\n var min = data.min;\n var max = data.max;\n var values = data.values.sort(function (a, b) { return a - b; });\n\n if (num === 1) {\n return [min, max];\n }\n\n var limits = [];\n\n if (mode.substr(0, 1) === 'c') {\n // continuous\n limits.push(min);\n limits.push(max);\n }\n\n if (mode.substr(0, 1) === 'e') {\n // equal interval\n limits.push(min);\n for (var i = 1; i < num; i++) {\n limits.push(min + (i / num) * (max - min));\n }\n limits.push(max);\n } else if (mode.substr(0, 1) === 'l') {\n // log scale\n if (min <= 0) {\n throw new Error(\n 'Logarithmic scales are only possible for values > 0'\n );\n }\n var min_log = Math.LOG10E * log(min);\n var max_log = Math.LOG10E * log(max);\n limits.push(min);\n for (var i$1 = 1; i$1 < num; i$1++) {\n limits.push(pow$1(10, min_log + (i$1 / num) * (max_log - min_log)));\n }\n limits.push(max);\n } else if (mode.substr(0, 1) === 'q') {\n // quantile scale\n limits.push(min);\n for (var i$2 = 1; i$2 < num; i$2++) {\n var p = ((values.length - 1) * i$2) / num;\n var pb = floor(p);\n if (pb === p) {\n limits.push(values[pb]);\n } else {\n // p > pb\n var pr = p - pb;\n limits.push(values[pb] * (1 - pr) + values[pb + 1] * pr);\n }\n }\n limits.push(max);\n } else if (mode.substr(0, 1) === 'k') {\n // k-means clustering\n /*\n implementation based on\n http://code.google.com/p/figue/source/browse/trunk/figue.js#336\n simplified for 1-d input values\n */\n var cluster;\n var n = values.length;\n var assignments = new Array(n);\n var clusterSizes = new Array(num);\n var repeat = true;\n var nb_iters = 0;\n var centroids = null;\n\n // get seed values\n centroids = [];\n centroids.push(min);\n for (var i$3 = 1; i$3 < num; i$3++) {\n centroids.push(min + (i$3 / num) * (max - min));\n }\n centroids.push(max);\n\n while (repeat) {\n // assignment step\n for (var j = 0; j < num; j++) {\n clusterSizes[j] = 0;\n }\n for (var i$4 = 0; i$4 < n; i$4++) {\n var value = values[i$4];\n var mindist = Number.MAX_VALUE;\n var best = (void 0);\n for (var j$1 = 0; j$1 < num; j$1++) {\n var dist = abs$1(centroids[j$1] - value);\n if (dist < mindist) {\n mindist = dist;\n best = j$1;\n }\n clusterSizes[best]++;\n assignments[i$4] = best;\n }\n }\n\n // update centroids step\n var newCentroids = new Array(num);\n for (var j$2 = 0; j$2 < num; j$2++) {\n newCentroids[j$2] = null;\n }\n for (var i$5 = 0; i$5 < n; i$5++) {\n cluster = assignments[i$5];\n if (newCentroids[cluster] === null) {\n newCentroids[cluster] = values[i$5];\n } else {\n newCentroids[cluster] += values[i$5];\n }\n }\n for (var j$3 = 0; j$3 < num; j$3++) {\n newCentroids[j$3] *= 1 / clusterSizes[j$3];\n }\n\n // check convergence\n repeat = false;\n for (var j$4 = 0; j$4 < num; j$4++) {\n if (newCentroids[j$4] !== centroids[j$4]) {\n repeat = true;\n break;\n }\n }\n\n centroids = newCentroids;\n nb_iters++;\n\n if (nb_iters > 200) {\n repeat = false;\n }\n }\n\n // finished k-means clustering\n // the next part is borrowed from gabrielflor.it\n var kClusters = {};\n for (var j$5 = 0; j$5 < num; j$5++) {\n kClusters[j$5] = [];\n }\n for (var i$6 = 0; i$6 < n; i$6++) {\n cluster = assignments[i$6];\n kClusters[cluster].push(values[i$6]);\n }\n var tmpKMeansBreaks = [];\n for (var j$6 = 0; j$6 < num; j$6++) {\n tmpKMeansBreaks.push(kClusters[j$6][0]);\n tmpKMeansBreaks.push(kClusters[j$6][kClusters[j$6].length - 1]);\n }\n tmpKMeansBreaks = tmpKMeansBreaks.sort(function (a, b) { return a - b; });\n limits.push(tmpKMeansBreaks[0]);\n for (var i$7 = 1; i$7 < tmpKMeansBreaks.length; i$7 += 2) {\n var v = tmpKMeansBreaks[i$7];\n if (!isNaN(v) && limits.indexOf(v) === -1) {\n limits.push(v);\n }\n }\n }\n return limits;\n }\n\n function contrast (a, b) {\n // WCAG contrast ratio\n // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef\n a = new Color(a);\n b = new Color(b);\n var l1 = a.luminance();\n var l2 = b.luminance();\n return l1 > l2 ? (l1 + 0.05) / (l2 + 0.05) : (l2 + 0.05) / (l1 + 0.05);\n }\n\n /**\n * @license\n *\n * The APCA contrast prediction algorithm is based of the formulas published\n * in the APCA-1.0.98G specification by Myndex. The specification is available at:\n * https://raw.githubusercontent.com/Myndex/apca-w3/master/images/APCAw3_0.1.17_APCA0.0.98G.svg\n *\n * Note that the APCA implementation is still beta, so please update to\n * future versions of chroma.js when they become available.\n *\n * You can read more about the APCA Readability Criterion at\n * https://readtech.org/ARC/\n */\n\n // constants\n var W_offset = 0.027;\n var P_in = 0.0005;\n var P_out = 0.1;\n var R_scale = 1.14;\n var B_threshold = 0.022;\n var B_exp = 1.414;\n\n function contrastAPCA (text, bg) {\n // parse input colors\n text = new Color(text);\n bg = new Color(bg);\n // if text color has alpha, blend against background\n if (text.alpha() < 1) {\n text = mix(bg, text, text.alpha(), 'rgb');\n }\n var l_text = lum.apply(void 0, text.rgb());\n var l_bg = lum.apply(void 0, bg.rgb());\n\n // soft clamp black levels\n var Y_text =\n l_text >= B_threshold\n ? l_text\n : l_text + Math.pow(B_threshold - l_text, B_exp);\n var Y_bg =\n l_bg >= B_threshold ? l_bg : l_bg + Math.pow(B_threshold - l_bg, B_exp);\n\n // normal polarity (dark text on light background)\n var S_norm = Math.pow(Y_bg, 0.56) - Math.pow(Y_text, 0.57);\n // reverse polarity (light text on dark background)\n var S_rev = Math.pow(Y_bg, 0.65) - Math.pow(Y_text, 0.62);\n // clamp noise then scale\n var C =\n Math.abs(Y_bg - Y_text) < P_in\n ? 0\n : Y_text < Y_bg\n ? S_norm * R_scale\n : S_rev * R_scale;\n // clamp minimum contrast then offset\n var S_apc = Math.abs(C) < P_out ? 0 : C > 0 ? C - W_offset : C + W_offset;\n // scale to 100\n return S_apc * 100;\n }\n function lum(r, g, b) {\n return (\n 0.2126729 * Math.pow(r / 255, 2.4) +\n 0.7151522 * Math.pow(g / 255, 2.4) +\n 0.072175 * Math.pow(b / 255, 2.4)\n );\n }\n\n var sqrt = Math.sqrt;\n var pow = Math.pow;\n var min = Math.min;\n var max = Math.max;\n var atan2 = Math.atan2;\n var abs = Math.abs;\n var cos = Math.cos;\n var sin = Math.sin;\n var exp = Math.exp;\n var PI = Math.PI;\n\n function deltaE (a, b, Kl, Kc, Kh) {\n if ( Kl === void 0 ) Kl = 1;\n if ( Kc === void 0 ) Kc = 1;\n if ( Kh === void 0 ) Kh = 1;\n\n // Delta E (CIE 2000)\n // see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CIE2000.html\n var rad2deg = function (rad) {\n return (360 * rad) / (2 * PI);\n };\n var deg2rad = function (deg) {\n return (2 * PI * deg) / 360;\n };\n a = new Color(a);\n b = new Color(b);\n var ref = Array.from(a.lab());\n var L1 = ref[0];\n var a1 = ref[1];\n var b1 = ref[2];\n var ref$1 = Array.from(b.lab());\n var L2 = ref$1[0];\n var a2 = ref$1[1];\n var b2 = ref$1[2];\n var avgL = (L1 + L2) / 2;\n var C1 = sqrt(pow(a1, 2) + pow(b1, 2));\n var C2 = sqrt(pow(a2, 2) + pow(b2, 2));\n var avgC = (C1 + C2) / 2;\n var G = 0.5 * (1 - sqrt(pow(avgC, 7) / (pow(avgC, 7) + pow(25, 7))));\n var a1p = a1 * (1 + G);\n var a2p = a2 * (1 + G);\n var C1p = sqrt(pow(a1p, 2) + pow(b1, 2));\n var C2p = sqrt(pow(a2p, 2) + pow(b2, 2));\n var avgCp = (C1p + C2p) / 2;\n var arctan1 = rad2deg(atan2(b1, a1p));\n var arctan2 = rad2deg(atan2(b2, a2p));\n var h1p = arctan1 >= 0 ? arctan1 : arctan1 + 360;\n var h2p = arctan2 >= 0 ? arctan2 : arctan2 + 360;\n var avgHp =\n abs(h1p - h2p) > 180 ? (h1p + h2p + 360) / 2 : (h1p + h2p) / 2;\n var T =\n 1 -\n 0.17 * cos(deg2rad(avgHp - 30)) +\n 0.24 * cos(deg2rad(2 * avgHp)) +\n 0.32 * cos(deg2rad(3 * avgHp + 6)) -\n 0.2 * cos(deg2rad(4 * avgHp - 63));\n var deltaHp = h2p - h1p;\n deltaHp =\n abs(deltaHp) <= 180\n ? deltaHp\n : h2p <= h1p\n ? deltaHp + 360\n : deltaHp - 360;\n deltaHp = 2 * sqrt(C1p * C2p) * sin(deg2rad(deltaHp) / 2);\n var deltaL = L2 - L1;\n var deltaCp = C2p - C1p;\n var sl = 1 + (0.015 * pow(avgL - 50, 2)) / sqrt(20 + pow(avgL - 50, 2));\n var sc = 1 + 0.045 * avgCp;\n var sh = 1 + 0.015 * avgCp * T;\n var deltaTheta = 30 * exp(-pow((avgHp - 275) / 25, 2));\n var Rc = 2 * sqrt(pow(avgCp, 7) / (pow(avgCp, 7) + pow(25, 7)));\n var Rt = -Rc * sin(2 * deg2rad(deltaTheta));\n var result = sqrt(\n pow(deltaL / (Kl * sl), 2) +\n pow(deltaCp / (Kc * sc), 2) +\n pow(deltaHp / (Kh * sh), 2) +\n Rt * (deltaCp / (Kc * sc)) * (deltaHp / (Kh * sh))\n );\n return max(0, min(100, result));\n }\n\n // simple Euclidean distance\n function distance (a, b, mode) {\n if ( mode === void 0 ) mode = 'lab';\n\n // Delta E (CIE 1976)\n // see http://www.brucelindbloom.com/index.html?Equations.html\n a = new Color(a);\n b = new Color(b);\n var l1 = a.get(mode);\n var l2 = b.get(mode);\n var sum_sq = 0;\n for (var i in l1) {\n var d = (l1[i] || 0) - (l2[i] || 0);\n sum_sq += d * d;\n }\n return Math.sqrt(sum_sq);\n }\n\n function valid () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n try {\n new (Function.prototype.bind.apply( Color, [ null ].concat( args) ));\n return true;\n // eslint-disable-next-line\n } catch (e) {\n return false;\n }\n }\n\n // some pre-defined color scales:\n\n var scales = {\n cool: function cool() {\n return scale([chroma.hsl(180, 1, 0.9), chroma.hsl(250, 0.7, 0.4)]);\n },\n hot: function hot() {\n return scale(['#000', '#f00', '#ff0', '#fff']).mode(\n 'rgb'\n );\n }\n };\n\n /**\n ColorBrewer colors for chroma.js\n\n Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The\n Pennsylvania State University.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software distributed\n under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n CONDITIONS OF ANY KIND, either express or implied. See the License for the\n specific language governing permissions and limitations under the License.\n */\n\n var colorbrewer = {\n // sequential\n OrRd: ['#fff7ec', '#fee8c8', '#fdd49e', '#fdbb84', '#fc8d59', '#ef6548', '#d7301f', '#b30000', '#7f0000'],\n PuBu: ['#fff7fb', '#ece7f2', '#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#045a8d', '#023858'],\n BuPu: ['#f7fcfd', '#e0ecf4', '#bfd3e6', '#9ebcda', '#8c96c6', '#8c6bb1', '#88419d', '#810f7c', '#4d004b'],\n Oranges: ['#fff5eb', '#fee6ce', '#fdd0a2', '#fdae6b', '#fd8d3c', '#f16913', '#d94801', '#a63603', '#7f2704'],\n BuGn: ['#f7fcfd', '#e5f5f9', '#ccece6', '#99d8c9', '#66c2a4', '#41ae76', '#238b45', '#006d2c', '#00441b'],\n YlOrBr: ['#ffffe5', '#fff7bc', '#fee391', '#fec44f', '#fe9929', '#ec7014', '#cc4c02', '#993404', '#662506'],\n YlGn: ['#ffffe5', '#f7fcb9', '#d9f0a3', '#addd8e', '#78c679', '#41ab5d', '#238443', '#006837', '#004529'],\n Reds: ['#fff5f0', '#fee0d2', '#fcbba1', '#fc9272', '#fb6a4a', '#ef3b2c', '#cb181d', '#a50f15', '#67000d'],\n RdPu: ['#fff7f3', '#fde0dd', '#fcc5c0', '#fa9fb5', '#f768a1', '#dd3497', '#ae017e', '#7a0177', '#49006a'],\n Greens: ['#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b'],\n YlGnBu: ['#ffffd9', '#edf8b1', '#c7e9b4', '#7fcdbb', '#41b6c4', '#1d91c0', '#225ea8', '#253494', '#081d58'],\n Purples: ['#fcfbfd', '#efedf5', '#dadaeb', '#bcbddc', '#9e9ac8', '#807dba', '#6a51a3', '#54278f', '#3f007d'],\n GnBu: ['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#2b8cbe', '#0868ac', '#084081'],\n Greys: ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525', '#000000'],\n YlOrRd: ['#ffffcc', '#ffeda0', '#fed976', '#feb24c', '#fd8d3c', '#fc4e2a', '#e31a1c', '#bd0026', '#800026'],\n PuRd: ['#f7f4f9', '#e7e1ef', '#d4b9da', '#c994c7', '#df65b0', '#e7298a', '#ce1256', '#980043', '#67001f'],\n Blues: ['#f7fbff', '#deebf7', '#c6dbef', '#9ecae1', '#6baed6', '#4292c6', '#2171b5', '#08519c', '#08306b'],\n PuBuGn: ['#fff7fb', '#ece2f0', '#d0d1e6', '#a6bddb', '#67a9cf', '#3690c0', '#02818a', '#016c59', '#014636'],\n Viridis: ['#440154', '#482777', '#3f4a8a', '#31678e', '#26838f', '#1f9d8a', '#6cce5a', '#b6de2b', '#fee825'],\n\n // diverging\n Spectral: ['#9e0142', '#d53e4f', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#e6f598', '#abdda4', '#66c2a5', '#3288bd', '#5e4fa2'],\n RdYlGn: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#d9ef8b', '#a6d96a', '#66bd63', '#1a9850', '#006837'],\n RdBu: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#f7f7f7', '#d1e5f0', '#92c5de', '#4393c3', '#2166ac', '#053061'],\n PiYG: ['#8e0152', '#c51b7d', '#de77ae', '#f1b6da', '#fde0ef', '#f7f7f7', '#e6f5d0', '#b8e186', '#7fbc41', '#4d9221', '#276419'],\n PRGn: ['#40004b', '#762a83', '#9970ab', '#c2a5cf', '#e7d4e8', '#f7f7f7', '#d9f0d3', '#a6dba0', '#5aae61', '#1b7837', '#00441b'],\n RdYlBu: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee090', '#ffffbf', '#e0f3f8', '#abd9e9', '#74add1', '#4575b4', '#313695'],\n BrBG: ['#543005', '#8c510a', '#bf812d', '#dfc27d', '#f6e8c3', '#f5f5f5', '#c7eae5', '#80cdc1', '#35978f', '#01665e', '#003c30'],\n RdGy: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#ffffff', '#e0e0e0', '#bababa', '#878787', '#4d4d4d', '#1a1a1a'],\n PuOr: ['#7f3b08', '#b35806', '#e08214', '#fdb863', '#fee0b6', '#f7f7f7', '#d8daeb', '#b2abd2', '#8073ac', '#542788', '#2d004b'],\n\n // qualitative\n Set2: ['#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3'],\n Accent: ['#7fc97f', '#beaed4', '#fdc086', '#ffff99', '#386cb0', '#f0027f', '#bf5b17', '#666666'],\n Set1: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf', '#999999'],\n Set3: ['#8dd3c7', '#ffffb3', '#bebada', '#fb8072', '#80b1d3', '#fdb462', '#b3de69', '#fccde5', '#d9d9d9', '#bc80bd', '#ccebc5', '#ffed6f'],\n Dark2: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666666'],\n Paired: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#fdbf6f', '#ff7f00', '#cab2d6', '#6a3d9a', '#ffff99', '#b15928'],\n Pastel2: ['#b3e2cd', '#fdcdac', '#cbd5e8', '#f4cae4', '#e6f5c9', '#fff2ae', '#f1e2cc', '#cccccc'],\n Pastel1: ['#fbb4ae', '#b3cde3', '#ccebc5', '#decbe4', '#fed9a6', '#ffffcc', '#e5d8bd', '#fddaec', '#f2f2f2']\n };\n\n var colorbrewerTypes = Object.keys(colorbrewer);\n var typeMap = new Map(colorbrewerTypes.map(function (key) { return [key.toLowerCase(), key]; }));\n\n // use Proxy to allow case-insensitive access to palettes\n var colorbrewerProxy =\n typeof Proxy === 'function'\n ? new Proxy(colorbrewer, {\n get: function get(target, prop) {\n var lower = prop.toLowerCase();\n if (typeMap.has(lower)) {\n return target[typeMap.get(lower)];\n }\n },\n getOwnPropertyNames: function getOwnPropertyNames() {\n return Object.getOwnPropertyNames(colorbrewerTypes);\n }\n })\n : colorbrewer;\n\n // feel free to comment out anything to rollup\n // a smaller chroma.js bundle\n\n Object.assign(chroma, {\n analyze: analyze,\n average: average,\n bezier: bezier$1,\n blend: blend,\n brewer: colorbrewerProxy,\n Color: Color,\n colors: w3cx11,\n contrast: contrast,\n contrastAPCA: contrastAPCA,\n cubehelix: cubehelix,\n deltaE: deltaE,\n distance: distance,\n input: input,\n interpolate: mix,\n limits: limits,\n mix: mix,\n random: random$1,\n scale: scale,\n scales: scales,\n valid: valid,\n cmyk: cmyk,\n css: css,\n gl: gl,\n hcg: hcg$1,\n hex: hex,\n hsi: hsi$1,\n hsl: hsl$1,\n hsv: hsv$1,\n lab: lab$1,\n lch: lch$1,\n hcl: hcl,\n num: num$1,\n rgb: rgb$1,\n temp: temp,\n kelvin: temp,\n temperature: temp,\n oklab: oklab$1,\n oklch: oklch$1,\n getLabWhitePoint: getLabWhitePoint,\n setLabWhitePoint: setLabWhitePoint\n });\n\n return chroma;\n\n}));\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.3\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n // START: Modifications:\n // Apply guards for `Object.create(null)` handling. See:\n // - https://github.com/FormidableLabs/react-fast-compare/issues/64\n // - https://github.com/epoberezkin/fast-deep-equal/issues/49\n if (a.valueOf !== Object.prototype.valueOf && typeof a.valueOf === 'function' && typeof b.valueOf === 'function') return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString && typeof a.toString === 'function' && typeof b.toString === 'function') return a.toString() === b.toString();\n // END: Modifications\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\n\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\n\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\n\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\n\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\n\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\n\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\n\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\n\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\n\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function (obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\").replace(/\"/g, \"&quot;\").replace(/'/g, \"&#x27;\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n // Special case for innerHTML which doesn't work lowercased\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n });\n\n // Update seen tags with tags from this instance\n var keys = Object.keys(instanceSeenTags);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\n\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n\n updateTitle(title, titleAttributes);\n\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n\n var addedTags = {};\n var removedTags = {};\n\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n\n cb && cb();\n\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\");\n\n // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"</\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps;\n\n // assigning into an array to define toString function on it\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, { title: title, titleAttributes: titleAttributes }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}</\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n\n\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"<img src='http://mysite.com/js/test.js'\"}]\n * @param {Function} onChangeClientState: \"(newState) => console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\n\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\n\nexport default HelmetExport;\nexport { HelmetExport as Helmet };\n","'use strict';\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar React = require('react');\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect =\n /*#__PURE__*/\n function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","function n(n,t){(null==t||t>n.length)&&(t=n.length);for(var r=0,e=Array(t);r<t;r++)e[r]=n[r];return e}function t(t,r){var e=\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"];if(e)return(e=e.call(t)).next.bind(e);if(Array.isArray(t)||(e=function(t,r){if(t){if(\"string\"==typeof t)return n(t,r);var e={}.toString.call(t).slice(8,-1);return\"Object\"===e&&t.constructor&&(e=t.constructor.name),\"Map\"===e||\"Set\"===e?Array.from(t):\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e)?n(t,r):void 0}}(t))||r&&t&&\"number\"==typeof t.length){e&&(t=e);var u=0;return function(){return u>=t.length?{done:!0}:{done:!1,value:t[u++]}}}throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}function r(n){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},r(n)}function e(){try{var n=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(n){}return(e=function(){return!!n})()}function u(n,t){return u=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,t){return n.__proto__=t,n},u(n,t)}function i(n){var t=\"function\"==typeof Map?new Map:void 0;return i=function(n){if(null===n||!function(n){try{return-1!==Function.toString.call(n).indexOf(\"[native code]\")}catch(t){return\"function\"==typeof n}}(n))return n;if(\"function\"!=typeof n)throw new TypeError(\"Super expression must either be null or a function\");if(void 0!==t){if(t.has(n))return t.get(n);t.set(n,i)}function i(){return function(n,t,r){if(e())return Reflect.construct.apply(null,arguments);var i=[null];i.push.apply(i,t);var o=new(n.bind.apply(n,i));return r&&u(o,r.prototype),o}(n,arguments,r(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),u(i,n)},i(n)}var o=Symbol.for(\"@ts-pattern/matcher\"),c=Symbol.for(\"@ts-pattern/isVariadic\"),a=\"@ts-pattern/anonymous-select-key\",f=function(n){return Boolean(n&&\"object\"==typeof n)},l=function(n){return n&&!!n[o]},s=function n(r,e,u){if(l(r)){var i=r[o]().match(e),a=i.matched,s=i.selections;return a&&s&&Object.keys(s).forEach(function(n){return u(n,s[n])}),a}if(f(r)){if(!f(e))return!1;if(Array.isArray(r)){if(!Array.isArray(e))return!1;for(var h,v=[],p=[],g=[],y=t(r.keys());!(h=y()).done;){var d=r[h.value];l(d)&&d[c]?g.push(d):g.length?p.push(d):v.push(d)}if(g.length){if(g.length>1)throw new Error(\"Pattern error: Using `...P.array(...)` several times in a single pattern is not allowed.\");if(e.length<v.length+p.length)return!1;var m=e.slice(0,v.length),b=0===p.length?[]:e.slice(-p.length),w=e.slice(v.length,0===p.length?Infinity:-p.length);return v.every(function(t,r){return n(t,m[r],u)})&&p.every(function(t,r){return n(t,b[r],u)})&&(0===g.length||n(g[0],w,u))}return r.length===e.length&&r.every(function(t,r){return n(t,e[r],u)})}return Reflect.ownKeys(r).every(function(t){var i,c=r[t];return(t in e||l(i=c)&&\"optional\"===i[o]().matcherType)&&n(c,e[t],u)})}return Object.is(e,r)},h=function n(t){var r,e,u;return f(t)?l(t)?null!=(r=null==(e=(u=t[o]()).getSelectionKeys)?void 0:e.call(u))?r:[]:Array.isArray(t)?v(t,n):v(Object.values(t),n):[]},v=function(n,t){return n.reduce(function(n,r){return n.concat(t(r))},[])};function p(){var n=[].slice.call(arguments);if(1===n.length){var t=n[0];return function(n){return s(t,n,function(){})}}if(2===n.length)return s(n[0],n[1],function(){});throw new Error(\"isMatching wasn't given the right number of arguments: expected 1 or 2, received \"+n.length+\".\")}function g(n){return Object.assign(n,{optional:function(){return d(n)},and:function(t){return O(n,t)},or:function(t){return S(n,t)},select:function(t){return void 0===t?x(n):x(t,n)}})}function y(n){return Object.assign(function(n){var t;return Object.assign(n,((t={})[Symbol.iterator]=function(){var t,r=0,e=[{value:Object.assign(n,((t={})[c]=!0,t)),done:!1},{done:!0,value:void 0}];return{next:function(){var n;return null!=(n=e[r++])?n:e.at(-1)}}},t))}(n),{optional:function(){return y(d(n))},select:function(t){return y(void 0===t?x(n):x(t,n))}})}function d(n){var t;return g(((t={})[o]=function(){return{match:function(t){var r={},e=function(n,t){r[n]=t};return void 0===t?(h(n).forEach(function(n){return e(n,void 0)}),{matched:!0,selections:r}):{matched:s(n,t,e),selections:r}},getSelectionKeys:function(){return h(n)},matcherType:\"optional\"}},t))}var m=function(n,r){for(var e,u=t(n);!(e=u()).done;)if(!r(e.value))return!1;return!0},b=function(n,r){for(var e,u=t(n.entries());!(e=u()).done;){var i=e.value;if(!r(i[1],i[0]))return!1}return!0},w=function(n,r){for(var e,u=t(Reflect.ownKeys(n));!(e=u()).done;){var i=e.value;if(!r(i,n[i]))return!1}return!0};function O(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){var r={},e=function(n,t){r[n]=t};return{matched:t.every(function(t){return s(t,n,e)}),selections:r}},getSelectionKeys:function(){return v(t,h)},matcherType:\"and\"}},n))}function S(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){var r={},e=function(n,t){r[n]=t};return v(t,h).forEach(function(n){return e(n,void 0)}),{matched:t.some(function(t){return s(t,n,e)}),selections:r}},getSelectionKeys:function(){return v(t,h)},matcherType:\"or\"}},n))}function j(n){var t;return(t={})[o]=function(){return{match:function(t){return{matched:Boolean(n(t))}}}},t}function x(){var n,t=[].slice.call(arguments),r=\"string\"==typeof t[0]?t[0]:void 0,e=2===t.length?t[1]:\"string\"==typeof t[0]?void 0:t[0];return g(((n={})[o]=function(){return{match:function(n){var t,u=((t={})[null!=r?r:a]=n,t);return{matched:void 0===e||s(e,n,function(n,t){u[n]=t}),selections:u}},getSelectionKeys:function(){return[null!=r?r:a].concat(void 0===e?[]:h(e))}}},n))}function A(n){return!0}function E(n){return\"number\"==typeof n}function _(n){return\"string\"==typeof n}function K(n){return\"bigint\"==typeof n}var P=g(j(A)),N=g(j(A)),T=P,B=function n(t){return Object.assign(g(t),{startsWith:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.startsWith(e)}))));var e},endsWith:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.endsWith(e)}))));var e},minLength:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length>=n})}(r)))},length:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length===n})}(r)))},maxLength:function(r){return n(O(t,function(n){return j(function(t){return _(t)&&t.length<=n})}(r)))},includes:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&n.includes(e)}))));var e},regex:function(r){return n(O(t,(e=r,j(function(n){return _(n)&&Boolean(n.match(e))}))));var e}})}(j(_)),k=function n(t){return Object.assign(g(t),{between:function(r,e){return n(O(t,function(n,t){return j(function(r){return E(r)&&n<=r&&t>=r})}(r,e)))},lt:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t<n})}(r)))},gt:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t>n})}(r)))},lte:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t<=n})}(r)))},gte:function(r){return n(O(t,function(n){return j(function(t){return E(t)&&t>=n})}(r)))},int:function(){return n(O(t,j(function(n){return E(n)&&Number.isInteger(n)})))},finite:function(){return n(O(t,j(function(n){return E(n)&&Number.isFinite(n)})))},positive:function(){return n(O(t,j(function(n){return E(n)&&n>0})))},negative:function(){return n(O(t,j(function(n){return E(n)&&n<0})))}})}(j(E)),M=function n(t){return Object.assign(g(t),{between:function(r,e){return n(O(t,function(n,t){return j(function(r){return K(r)&&n<=r&&t>=r})}(r,e)))},lt:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t<n})}(r)))},gt:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t>n})}(r)))},lte:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t<=n})}(r)))},gte:function(r){return n(O(t,function(n){return j(function(t){return K(t)&&t>=n})}(r)))},positive:function(){return n(O(t,j(function(n){return K(n)&&n>0})))},negative:function(){return n(O(t,j(function(n){return K(n)&&n<0})))}})}(j(K)),I=g(j(function(n){return\"boolean\"==typeof n})),R=g(j(function(n){return\"symbol\"==typeof n})),W=g(j(function(n){return null==n})),z=g(j(function(n){return null!=n})),F={__proto__:null,matcher:o,optional:d,array:function(){var n,t=[].slice.call(arguments);return y(((n={})[o]=function(){return{match:function(n){if(!Array.isArray(n))return{matched:!1};if(0===t.length)return{matched:!0};var r=t[0],e={};if(0===n.length)return h(r).forEach(function(n){e[n]=[]}),{matched:!0,selections:e};var u=function(n,t){e[n]=(e[n]||[]).concat([t])};return{matched:n.every(function(n){return s(r,n,u)}),selections:e}},getSelectionKeys:function(){return 0===t.length?[]:h(t[0])}}},n))},set:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(!(n instanceof Set))return{matched:!1};var r={};if(0===n.size)return{matched:!0,selections:r};if(0===t.length)return{matched:!0};var e=function(n,t){r[n]=(r[n]||[]).concat([t])},u=t[0];return{matched:m(n,function(n){return s(u,n,e)}),selections:r}},getSelectionKeys:function(){return 0===t.length?[]:h(t[0])}}},n))},map:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(!(n instanceof Map))return{matched:!1};var r={};if(0===n.size)return{matched:!0,selections:r};var e,u=function(n,t){r[n]=(r[n]||[]).concat([t])};if(0===t.length)return{matched:!0};if(1===t.length)throw new Error(\"`P.map` wasn't given enough arguments. Expected (key, value), received \"+(null==(e=t[0])?void 0:e.toString()));var i=t[0],o=t[1];return{matched:b(n,function(n,t){var r=s(i,t,u),e=s(o,n,u);return r&&e}),selections:r}},getSelectionKeys:function(){return 0===t.length?[]:[].concat(h(t[0]),h(t[1]))}}},n))},record:function(){var n,t=[].slice.call(arguments);return g(((n={})[o]=function(){return{match:function(n){if(null===n||\"object\"!=typeof n||Array.isArray(n))return{matched:!1};var r;if(0===t.length)throw new Error(\"`P.record` wasn't given enough arguments. Expected (value) or (key, value), received \"+(null==(r=t[0])?void 0:r.toString()));var e={},u=function(n,t){e[n]=(e[n]||[]).concat([t])},i=1===t.length?[B,t[0]]:t,o=i[0],c=i[1];return{matched:w(n,function(n,t){var r=\"string\"!=typeof n||Number.isNaN(Number(n))?null:Number(n),e=null!==r&&s(o,r,u),i=s(o,n,u),a=s(c,t,u);return(i||e)&&a}),selections:e}},getSelectionKeys:function(){return 0===t.length?[]:[].concat(h(t[0]),h(t[1]))}}},n))},intersection:O,union:S,not:function(n){var t;return g(((t={})[o]=function(){return{match:function(t){return{matched:!s(n,t,function(){})}},getSelectionKeys:function(){return[]},matcherType:\"not\"}},t))},when:j,select:x,any:P,unknown:N,_:T,string:B,number:k,bigint:M,boolean:I,symbol:R,nullish:W,nonNullable:z,instanceOf:function(n){return g(j(function(n){return function(t){return t instanceof n}}(n)))},shape:function(n){return g(j(p(n)))}},L=/*#__PURE__*/function(n){var t,r;function e(t){var r,e;try{e=JSON.stringify(t)}catch(n){e=t}return(r=n.call(this,\"Pattern matching error: no pattern matches value \"+e)||this).input=void 0,r.input=t,r}return r=n,(t=e).prototype=Object.create(r.prototype),t.prototype.constructor=t,u(t,r),e}(/*#__PURE__*/i(Error)),U={matched:!1,value:void 0},C=/*#__PURE__*/function(){function n(n,t){this.input=void 0,this.state=void 0,this.input=n,this.state=t}var t=n.prototype;return t.with=function(){var t=this,r=[].slice.call(arguments);if(this.state.matched)return this;var e=r[r.length-1],u=[r[0]],i=void 0;3===r.length&&\"function\"==typeof r[1]?i=r[1]:r.length>2&&u.push.apply(u,r.slice(1,r.length-1));var o=!1,c={},f=function(n,t){o=!0,c[n]=t},l=!u.some(function(n){return s(n,t.input,f)})||i&&!Boolean(i(this.input))?U:{matched:!0,value:e(o?a in c?c[a]:c:this.input,this.input)};return new n(this.input,l)},t.when=function(t,r){if(this.state.matched)return this;var e=Boolean(t(this.input));return new n(this.input,e?{matched:!0,value:r(this.input,this.input)}:U)},t.otherwise=function(n){return this.state.matched?this.state.value:n(this.input)},t.exhaustive=function(n){return void 0===n&&(n=J),this.state.matched?this.state.value:n(this.input)},t.run=function(){return this.exhaustive()},t.returnType=function(){return this},t.narrow=function(){return this},n}();function J(n){throw new L(n)}exports.NonExhaustiveError=L,exports.P=F,exports.Pattern=F,exports.isMatching=p,exports.match=function(n){return new C(n,U)};\n//# sourceMappingURL=index.cjs.map\n","import type { PropsWithChildren } from \"react\";\n\nconst VerticalContent = (props: PropsWithChildren) => {\n\treturn <div style={{ marginTop: -70 }}>{props.children}</div>;\n};\n\nexport default VerticalContent;\n","import { Flex, Space } from \"antd\";\nimport type React from \"react\";\nimport Typography from \"../../ui/Typography/Typography\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"./VerticalLayout\";\nimport type {\n\tAcaciaBreadcrumbProps,\n\tAcaciaTabsProps,\n} from \"../../ui/interfaces\";\nimport Breadcrumb from \"../../ui/Breadcrumb/Breadcrumb\";\nimport { useAcaciaToken } from \"../../../tokens/useAcaciaToken\";\nimport Tabs from \"../../ui/Tabs/Tabs\";\n\nexport interface VerticalHeaderProps {\n\tpageTitle: string | React.ReactNode;\n\tpageSubtitle: string | React.ReactNode;\n\tpageIcon?: React.ReactNode;\n\trightSideItems?: React.ReactNode;\n\tleftSideItems?: React.ReactNode;\n\tbreadcrumbs?: AcaciaBreadcrumbProps;\n\ttabs?: Omit<AcaciaTabsProps, \"type\">;\n}\n\nconst VerticalHeader = ({ ...props }: VerticalHeaderProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst token = useAcaciaToken();\n\t// render tabs\n\tconst renderTabs = () => {\n\t\treturn (\n\t\t\t<Tabs\n\t\t\t\t{...props.tabs}\n\t\t\t\tstyle={{ marginTop: \"0.5rem\" }}\n\t\t\t\ttype={isNestedInLayout ? \"header\" : \"page\"}\n\t\t\t/>\n\t\t);\n\t};\n\n\treturn (\n\t\t<div style={{ padding: isNestedInLayout ? 0 : 20 }}>\n\t\t\t<Flex\n\t\t\t\talign=\"center\"\n\t\t\t\tjustify=\"space-between\"\n\t\t\t\tstyle={{ paddingTop: isNestedInLayout ? \"1rem\" : 0 }}\n\t\t\t>\n\t\t\t\t<Space orientation=\"vertical\" size={0} style={{ display: \"flex\" }}>\n\t\t\t\t\t{props.breadcrumbs && <Breadcrumb {...props.breadcrumbs} />}\n\t\t\t\t\t<Typography.Title\n\t\t\t\t\t\tlevel={2}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tmargin: 0,\n\t\t\t\t\t\t\tcolor: isNestedInLayout\n\t\t\t\t\t\t\t\t? context?.mainTextColor\n\t\t\t\t\t\t\t\t: token.token.colorText,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.pageTitle}\n\t\t\t\t\t</Typography.Title>\n\t\t\t\t\t<Typography.Text\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tcolor: isNestedInLayout\n\t\t\t\t\t\t\t\t? context?.accentColor\n\t\t\t\t\t\t\t\t: token.token.colorText,\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.pageSubtitle}\n\t\t\t\t\t</Typography.Text>\n\t\t\t\t\t{/* // if its nested, then its under the left hand side items */}\n\t\t\t\t\t{props.tabs && isNestedInLayout && renderTabs()}\n\t\t\t\t</Space>\n\t\t\t\t{props.rightSideItems}\n\t\t\t</Flex>\n\t\t\t{/* // if its not nested, then remove it under the left hand side items and place it on its own */}\n\t\t\t{props.tabs && !isNestedInLayout && renderTabs()}\n\t\t</div>\n\t);\n};\n\nexport default VerticalHeader;\n","import type { AcaciaMenuProps, AcaciaThemes } from \"../../ui/interfaces\";\nimport { match } from \"ts-pattern\";\nimport {\n\tChildren,\n\tcreateContext,\n\tuseCallback,\n\ttype PropsWithChildren,\n} from \"react\";\nimport { Layout } from \"antd\";\nimport {\n\tadjustBrightness,\n\tgenerateSteppedGradient,\n\tgetLuminance,\n\tisLight,\n} from \"@mirawision/colorize\";\nimport { Helmet } from \"react-helmet\";\nimport { renderBlackOrWhiteText } from \"../../../utils/colors.util\";\nimport { parseBackgroundColors } from \"../../../utils/parseBackgroundColors\";\nimport Menu from \"../../ui/Menu/Menu\";\nimport DefaultLogo from \"../../../theme/defaultLogo\";\nimport VerticalHeader from \"./VerticalHeader\";\nimport VerticalContent from \"./VerticalContent\";\nimport {\n\tgetThemeGradients,\n\tisVerticalContent,\n\tisVerticalHeader,\n} from \"../utils\";\nimport { useTheme } from \"antd-style\";\nimport {\n\tgetThemedBackgroundPicture,\n\tgetThemedContentBackgroundPicture,\n} from \"../../../utils/theming.util\";\n\ninterface LayoutProps {\n\theaderBackgroundProps?: HeaderBackgroundProps;\n\tmenuProps?: Omit<AcaciaMenuProps, \"mode\">;\n\tdocumentHeadLabel?: string;\n\tmainTextColor?: string; // main color of the layout\n\tcontentBackgroundProps?: ContentBackgroundProps;\n}\n\n// theme background image props for the header\ntype BackgroundImage =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"custom-image\"; src: string };\n\n// background fill\ntype BackgroundFill =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"gradient\"; colors: string[] }\n\t| { type: \"gradient-css\"; css: string };\n\n// interface to handle header background - props allowed for users to change picture, change theme or custom gradient entirely\ninterface HeaderBackgroundProps {\n\theaderBackgroundImage?: BackgroundImage;\n\theaderBackgroundFill?: BackgroundFill;\n}\n\n// theme background image props for the content bg\ntype ContentBackgroundImage =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"custom-image\"; src: string };\n\n// background fill for\ntype ContentBackgroundFill =\n\t| {\n\t\t\ttype: \"theme\";\n\t\t\ttheme: AcaciaThemes;\n\t }\n\t| { type: \"solid\"; color: string };\n\ninterface ContentBackgroundProps {\n\tcontentBackgroundImage?: ContentBackgroundImage;\n\tcontentBackgroundFill?: ContentBackgroundFill;\n}\n\nexport const VerticalLayoutContext = createContext<{\n\tmainTextColor: string;\n\taccentColor: string;\n\tgradients: string[] | null;\n} | null>(null);\n\nconst VerticalLayout = ({\n\theaderBackgroundProps: {\n\t\theaderBackgroundImage = { type: \"theme\", theme: \"classic\" },\n\t\theaderBackgroundFill = { type: \"theme\", theme: \"classic\" },\n\t} = {},\n\tcontentBackgroundProps: {\n\t\tcontentBackgroundFill = { type: \"theme\", theme: \"classic\" },\n\t\tcontentBackgroundImage = { type: \"theme\", theme: \"classic\" },\n\t} = {},\n\t...props\n}: PropsWithChildren<LayoutProps>) => {\n\tconst defaultTheme = useTheme().appTheme; // get the app theme\n\n\t// get the first bg color\n\tconst getFirstBackgroundHexColor = () => {\n\t\treturn match(headerBackgroundFill)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemeGradients[theme][0];\n\t\t\t\t}\n\n\t\t\t\treturn getThemeGradients[defaultTheme][0];\n\t\t\t})\n\t\t\t.with({ type: \"gradient\" }, ({ colors }) => {\n\t\t\t\treturn colors[0];\n\t\t\t})\n\t\t\t.with({ type: \"gradient-css\" }, ({ css }) => {\n\t\t\t\t// get the background color\n\n\t\t\t\tconst colors = parseBackgroundColors(css);\n\t\t\t\tconst firstColor = colors.colors[0];\n\t\t\t\tif (firstColor.format === \"hex\" || firstColor.format === \"rgb\") {\n\t\t\t\t\treturn firstColor.value;\n\t\t\t\t}\n\t\t\t\tconsole.error(\"Named colors not allowed, return HEX or RGB\");\n\t\t\t\treturn \"#1d4042\";\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\tconst firstBackgroundColor = getFirstBackgroundHexColor();\n\n\tconst accentColor =\n\t\tgetLuminance(firstBackgroundColor) > 0.4\n\t\t\t? adjustBrightness(firstBackgroundColor, -45)\n\t\t\t: adjustBrightness(\n\t\t\t\t\tfirstBackgroundColor,\n\t\t\t\t\tisLight(firstBackgroundColor) ? -45 : 45,\n\t\t\t\t); // for the accent color - subtitles and tabs. based on the color of the theme background\n\n\tconst getLinearGradient = useCallback((strings: string[]) => {\n\t\tif (strings.length === 3) {\n\t\t\treturn `linear-gradient(45deg, ${strings[0]}f2 14%, ${strings[1]}f5 51%, ${strings[2]}f2 81%)`;\n\t\t}\n\t\tconsole.error(\"Need to have 3 strings\");\n\t\treturn null;\n\t}, []);\n\n\t// get the correct css\n\tconst getBackgroundCSS = () => {\n\t\treturn match(headerBackgroundFill)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(getThemeGradients[theme]),\n\t\t\t\t\t\tstops: getThemeGradients[theme],\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tcss: getLinearGradient(getThemeGradients[defaultTheme]),\n\t\t\t\t\tstops: getThemeGradients.classic,\n\t\t\t\t};\n\t\t\t})\n\t\t\t.with({ type: \"gradient\" }, ({ colors }) => {\n\t\t\t\t// given a string [], generate the gradient. if given two. then generate the inbetween. Do not accept length with 1\n\n\t\t\t\tif (colors.length === 2) {\n\t\t\t\t\tconst gradient = generateSteppedGradient(colors[0], colors[1], 3);\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(gradient),\n\t\t\t\t\t\tstops: gradient,\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\tif (colors.length === 3) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcss: getLinearGradient(colors),\n\t\t\t\t\t\tstops: colors,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tconsole.error(\n\t\t\t\t\t\"Either give a string[] with 2 HEX colors or 3 HEX colors\",\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\tcss: getLinearGradient([\"1d4042\", \"37717c\", \"418384\"]),\n\t\t\t\t\tstops: [\"#1d4042\", \"#37717c\", \"#418384\"],\n\t\t\t\t};\n\t\t\t})\n\t\t\t.with({ type: \"gradient-css\" }, ({ css }) => {\n\t\t\t\t// users write the css straight\n\t\t\t\tconst colors = parseBackgroundColors(css);\n\n\t\t\t\treturn {\n\t\t\t\t\tcss: css,\n\t\t\t\t\tstops: colors.colors.map((item) => item.value),\n\t\t\t\t};\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\tconst { css, stops } = getBackgroundCSS();\n\n\t// for each type of header - the way to get background image changes\n\tconst getBackgroundImage = () => {\n\t\treturn match(headerBackgroundImage)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemedBackgroundPicture(theme);\n\t\t\t\t}\n\t\t\t\treturn getThemedBackgroundPicture(defaultTheme);\n\t\t\t})\n\t\t\t.with({ type: \"custom-image\" }, ({ src }) => {\n\t\t\t\treturn src;\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\t// for each type of header - the way to get background image changes\n\tconst getContentBackgroundImage = () => {\n\t\treturn match(contentBackgroundImage)\n\t\t\t.with({ type: \"theme\" }, ({ theme }) => {\n\t\t\t\tif (theme !== \"classic\") {\n\t\t\t\t\treturn getThemedContentBackgroundPicture(theme);\n\t\t\t\t}\n\t\t\t\treturn getThemedContentBackgroundPicture(defaultTheme);\n\t\t\t})\n\t\t\t.with({ type: \"custom-image\" }, ({ src }) => {\n\t\t\t\treturn src;\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\t// get children under VerticalLayout\n\tconst allChildren = Children.toArray(props.children);\n\n\t// get the header children, so can apply the correct CSS to it\n\tconst headerChildren = allChildren.filter(isVerticalHeader);\n\n\t// get the content children as this needs to be overlapped with the bg\n\tconst contentChildren = allChildren.filter(isVerticalContent);\n\n\t// get the layout padding\n\t// if there is content children, then increase the padding\n\tconst getLayoutPadding = () => {\n\t\tif (contentChildren.length > 0) {\n\t\t\treturn \"1rem 2rem 3rem 2rem\";\n\t\t}\n\t\treturn \"1rem 2rem 0rem 2rem\";\n\t};\n\n\treturn (\n\t\t<VerticalLayoutContext.Provider\n\t\t\tvalue={{\n\t\t\t\tmainTextColor:\n\t\t\t\t\tprops.mainTextColor ?? renderBlackOrWhiteText(firstBackgroundColor), // by default it will try to render white/black text for content\n\t\t\t\taccentColor: accentColor,\n\t\t\t\tgradients: stops,\n\t\t\t}}\n\t\t>\n\t\t\t<Helmet>\n\t\t\t\t<title>{props.documentHeadLabel}</title>\n\t\t\t</Helmet>\n\n\t\t\t<Layout style={{ minHeight: \"100vh\" }}>\n\t\t\t\t<div\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundImage: `${css}, url(${getBackgroundImage()})`,\n\t\t\t\t\t\tbackgroundRepeat: \"no-repeat\",\n\t\t\t\t\t\tbackgroundSize: \"cover\",\n\t\t\t\t\t\tbackgroundPosition: \"center\",\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<div style={{ padding: getLayoutPadding() }}>\n\t\t\t\t\t\t<Layout.Header style={{ display: \"flex\", alignItems: \"center\" }}>\n\t\t\t\t\t\t\t<DefaultLogo />\n\t\t\t\t\t\t\t{props.menuProps && (\n\t\t\t\t\t\t\t\t<Menu\n\t\t\t\t\t\t\t\t\tmode=\"horizontal\"\n\t\t\t\t\t\t\t\t\t{...props.menuProps}\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\t\t\t\tminWidth: 0,\n\t\t\t\t\t\t\t\t\t\tfontSize: 16,\n\t\t\t\t\t\t\t\t\t\tfontWeight: 700,\n\t\t\t\t\t\t\t\t\t\t...props.menuProps.style,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Layout.Header>\n\t\t\t\t\t\t{headerChildren}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<Layout.Content\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackground: `#f3f3f3 url(${getContentBackgroundImage()}) top left`,\n\t\t\t\t\t\tpadding: contentChildren && \"2rem\",\n\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\tzIndex: 1,\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{contentChildren}\n\t\t\t\t</Layout.Content>\n\t\t\t</Layout>\n\t\t</VerticalLayoutContext.Provider>\n\t);\n};\n\nVerticalLayout.VerticalHeader = VerticalHeader;\nVerticalLayout.VerticalContent = VerticalContent;\nexport default VerticalLayout;\n","import { isValidElement } from \"react\";\nimport VerticalHeader from \"./VerticalLayout/VerticalHeader\";\nimport VerticalContent from \"./VerticalLayout/VerticalContent\";\nimport type { AcaciaThemes } from \"../ui/interfaces\";\n\nexport const isVerticalHeader = (child: React.ReactNode) =>\n\tisValidElement(child) && child.type === VerticalHeader;\n\nexport const isVerticalContent = (child: React.ReactNode) =>\n\tisValidElement(child) && child.type === VerticalContent;\n\n// gradients for the default themes - classic, mystical\nexport const getThemeGradients: Record<AcaciaThemes, string[]> = {\n\tclassic: [\"#1d4042\", \"#37717c\", \"#418384\"],\n\tmystical: [\"#bb8c97\", \"#9287a9\", \"#262144\"],\n\tsubmarine: [\"#1d4042\", \"#37717c\", \"#418384\"],\n};\n","/**\n * @description A Badge normally appears in proximity to notifications or user avatars with eye-catching appeal, typically displaying unread messages count\n */\n\nimport type { AcaciaAvatarProps } from \"../interfaces\";\nimport { Avatar as AntdAvatar } from \"antd\";\nimport Typography from \"../Typography/Typography\";\nimport Space from \"../Space/Space\";\nimport { useTheme } from \"antd-style\";\n\nconst Avatar = ({ ...props }: AcaciaAvatarProps) => {\n\tconst token = useTheme();\n\n\tconst getBackgroundColor = () => {\n\t\tif (token.appThemeMode === \"light\") {\n\t\t\treturn \"#bbbbbb57\";\n\t\t}\n\t\treturn \"#8e8e8e57\";\n\t};\n\n\treturn (\n\t\t<Space size={0}>\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\t...(props.userId && {\n\t\t\t\t\t\tbackground: getBackgroundColor(),\n\t\t\t\t\t\tborderRadius: 20,\n\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<AntdAvatar\n\t\t\t\t\tstyle={{ marginRight: props.userId && -3, ...props.style }}\n\t\t\t\t\t{...props}\n\t\t\t\t>\n\t\t\t\t\t{props.children}\n\t\t\t\t</AntdAvatar>\n\n\t\t\t\t{props.userId && (\n\t\t\t\t\t<Typography.Text strong style={{ paddingInline: \"10px\" }}>\n\t\t\t\t\t\t{props.userId.toUpperCase()}\n\t\t\t\t\t</Typography.Text>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</Space>\n\t);\n};\n\nexport default Avatar;\n","/**\n * @description A Badge normally appears in proximity to notifications or user avatars with eye-catching appeal, typically displaying unread messages count\n */\n\nimport type { AcaciaBadgeProps } from \"../interfaces\";\nimport { Badge as AntdBadge } from \"antd\";\nimport Ribbon from \"./Ribbon\";\n\nconst Badge = ({ ...props }: AcaciaBadgeProps) => {\n\treturn <AntdBadge {...props}>{props.children}</AntdBadge>;\n};\n\nBadge.Ribbon = Ribbon;\nexport default Badge;\n","import { Badge as AntdBadge } from \"antd\";\nimport type { AcaciaRibbonProps } from \"../interfaces\";\n\n/**\n * @description An extension of the Badge\n */\n\nconst Ribbon = ({ ...props }: AcaciaRibbonProps) => {\n\treturn <AntdBadge.Ribbon {...props} />;\n};\n\nexport default Ribbon;\n","import { Breadcrumb as AntdBreadcrumb, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaBreadcrumbProps } from \"../interfaces\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useContext } from \"react\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport { useTheme } from \"antd-style\";\n\n/**\n * A breadcrumb displays the current location within a hierarchy. It allows going back to states higher up in the hierarchy.\n */\n\nconst Breadcrumb = ({ ...props }: AcaciaBreadcrumbProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst globalToken = theme.useToken(); // get the default, antd tokens\n\tconst token = useTheme();\n\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tBreadcrumb: {\n\t\t\t\t\t\t...defaultTheme.components.Breadcrumb,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tlinkColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\titemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\tlastItemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\tseparatorColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdBreadcrumb items={props.items} style={{ letterSpacing: 1.5 }} />\n\t\t</ConfigProvider>\n\t);\n};\n\nexport default Breadcrumb;\n","/**\n * @description A button means an operation (or a series of operations). Clicking a button will trigger corresponding business logic.\n */\nimport { Button as AntdButton } from \"antd\";\nimport type { AcaciaButtonProps } from \"../interfaces\";\n\nconst Button = ({ children, ...props }: AcaciaButtonProps) => {\n\treturn <AntdButton {...props}>{children}</AntdButton>;\n};\nexport default Button;\n","import { useMemo } from \"react\";\nimport type { AcaciaCardProps } from \"../interfaces\";\nimport { Card as AntdCard, Typography } from \"antd\";\nimport { useCardStyles } from \"./useCardStyles\";\nimport HexagonBackground from \"../../../assets/cardheader.png\";\nimport StripedBackground from \"../../../assets/cardheader2.png\";\nimport MysticalBackground from \"../../../assets/cardheader3.png\";\nimport { match } from \"ts-pattern\";\nimport { useTheme } from \"antd-style\";\nimport { generate } from \"@ant-design/colors\";\nimport { tint } from \"@mirawision/colorize\";\nconst Card = ({\n\theaderBackgroundTheme = \"classic\",\n\t...props\n}: AcaciaCardProps) => {\n\tconst cardStyles = useCardStyles().styles;\n\tconst token = useTheme();\n\n\tconst levelOneColors = generate(token.colorPrimary);\n\n\tconst lightShadeColor = tint(token.colorPrimary, 0.7); // for the left side gradient\n\n\tconst titleStyles = useMemo(() => {\n\t\tconst styles: {\n\t\t\tmarginBlock: number;\n\t\t\tfontSize?: string | number;\n\t\t} = {\n\t\t\tmarginBlock: 0,\n\t\t};\n\n\t\tif (props.size === \"small\") {\n\t\t\tstyles.fontSize = 18;\n\t\t}\n\n\t\treturn styles;\n\t}, [props.size]);\n\n\tconst subtitleStyles = useMemo(() => {\n\t\tconst styles: {\n\t\t\tcolor: string;\n\t\t\tfontWeight: number;\n\t\t\tfontSize?: string | number;\n\t\t} = {\n\t\t\tcolor: token.colorTextTertiary,\n\t\t\tfontWeight: 500,\n\t\t};\n\n\t\tif (props.size === \"small\") {\n\t\t\tstyles.fontSize = 13;\n\t\t}\n\n\t\treturn styles;\n\t}, [props.size]);\n\n\tconst getThemedBackground = () => {\n\t\treturn match(headerBackgroundTheme)\n\t\t\t.with(\"classic\", () => HexagonBackground)\n\t\t\t.with(\"submarine\", () => StripedBackground)\n\t\t\t.with(\"mystical\", () => MysticalBackground)\n\t\t\t.exhaustive();\n\t};\n\n\treturn (\n\t\t<AntdCard\n\t\t\tstyles={{\n\t\t\t\theader: {\n\t\t\t\t\tpadding: \"20px\",\n\t\t\t\t\tbackground: `linear-gradient(70deg, ${lightShadeColor}CC 80%, ${levelOneColors[4]}69 80%), url(${props.headerBackgroundPicture ?? getThemedBackground()})`,\n\t\t\t\t},\n\t\t\t\ttitle: {\n\t\t\t\t\twhiteSpace: \"normal\",\n\t\t\t\t},\n\t\t\t}}\n\t\t\tclassName={`${cardStyles.card}`}\n\t\t\t{...props}\n\t\t\ttitle={\n\t\t\t\tprops.title && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Typography.Title level={4} style={titleStyles}>\n\t\t\t\t\t\t\t{props.title}\n\t\t\t\t\t\t</Typography.Title>\n\t\t\t\t\t\t{props.subtitle && (\n\t\t\t\t\t\t\t<Typography.Text style={subtitleStyles}>\n\t\t\t\t\t\t\t\t{props.subtitle}\n\t\t\t\t\t\t\t</Typography.Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)\n\t\t\t}\n\t\t/>\n\t);\n};\n\nexport default Card;\n","import { createStyles } from \"antd-style\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\n\nexport const useCardStyles = () => {\n\tconst { shadow } = useAcaciaConfig();\n\n\treturn createStyles(({ css }) => ({\n\t\tcard: css`\n && {\n box-shadow: ${shadow.card};\n }\n }\n `,\n\t}))();\n};\n","/**\n * @description Collect user's choices.\n *\n * When To Use\n * Used for selecting multiple values from several options.\n * If you use only one checkbox, it is the same as using Switch to toggle between two states. The difference is that Switch will trigger the state change directly, but Checkbox just marks the state as changed and this needs to be submitted.\n */\n\nimport { Checkbox as AntdCheckbox } from \"antd\";\nimport type { AcaciaCheckboxProps } from \"../interfaces\";\nimport CheckboxGroup from \"./CheckboxGroup\";\n\nconst Checkbox = ({ ...props }: AcaciaCheckboxProps) => {\n\treturn <AntdCheckbox {...props} />;\n};\n\nCheckbox.Group = CheckboxGroup;\n\nexport default Checkbox;\n","/**\n * @description Collect user's choices.\n * We can use Checkbox and Grid in Checkbox.Group, to implement complex layout.\n */\n\nimport { Checkbox as AntdCheckbox } from \"antd\";\nimport type { CheckboxGroupProps } from \"antd/es/checkbox\";\n\nconst CheckboxGroup = ({ ...props }: CheckboxGroupProps) => {\n\treturn <AntdCheckbox.Group {...props} />;\n};\n\nexport default CheckboxGroup;\n","import { ConfigProvider as AntdConfigProvider, theme } from \"antd\";\nimport { ConfigContext } from \"antd/es/config-provider/context\";\nimport { useAcaciaColors } from \"../../../hooks/useAcaciaColors\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\n\nimport { ThemeProvider } from \"antd-style\";\nimport { CustomTheme, type NewToken } from \"../../../theme/customTheme\";\nimport type { AcaciaConfigProviderProps } from \"../interfaces\";\nimport { useGetDefaultTheme } from \"./defaultTheme\";\n\nconst ConfigProvider = ({ ...props }: AcaciaConfigProviderProps) => {\n\tconst { colors, generate } = useAcaciaColors();\n\tconst { borderRadius, padding } = useAcaciaConfig();\n\n\tconst mergedToken = {\n\t\t...CustomTheme,\n\t\t...props.customToken,\n\t};\n\n\tconst defaultTheme = useGetDefaultTheme(mergedToken.appThemeMode);\n\n\treturn (\n\t\t<ThemeProvider<NewToken> customToken={mergedToken}>\n\t\t\t<AntdConfigProvider\n\t\t\t\t{...props}\n\t\t\t\ttheme={{\n\t\t\t\t\ttoken: { ...defaultTheme.token, ...props.theme?.token },\n\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t...defaultTheme.components,\n\t\t\t\t\t\t...props.theme?.components,\n\t\t\t\t\t},\n\t\t\t\t\talgorithm:\n\t\t\t\t\t\tmergedToken.appThemeMode === \"light\"\n\t\t\t\t\t\t\t? theme.defaultAlgorithm\n\t\t\t\t\t\t\t: theme.darkAlgorithm,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{props.children}\n\t\t\t</AntdConfigProvider>\n\t\t</ThemeProvider>\n\t);\n};\n\nConfigProvider.ConfigContext = ConfigContext;\nexport default ConfigProvider;\n","import type { ThemeConfig } from \"antd\";\nimport { useAcaciaColors } from \"../../../hooks/useAcaciaColors\";\nimport { useAcaciaConfig } from \"../../../hooks/useAcaciaConfig\";\nimport { useMemo } from \"react\";\nimport { grey } from \"@ant-design/colors\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\nimport \"@fontsource-variable/inter\";\nimport \"@fontsource-variable/outfit\";\nimport \"@fontsource-variable/roboto-flex\";\n\n// classic theme\n\nexport function useGetDefaultTheme(\n\tappThemeMode: \"light\" | \"dark\",\n): ThemeConfig {\n\tconst { colors } = useAcaciaColors();\n\tconst { borderRadius, padding } = useAcaciaConfig();\n\n\treturn useMemo<ThemeConfig>(() => {\n\t\treturn {\n\t\t\ttoken: {\n\t\t\t\tcolorPrimary: \"#427e7b\", // your custom default\n\t\t\t\tcolorText: appThemeMode === \"light\" ? \"#080808\" : \"#eaeaea\",\n\t\t\t\tcolorTextTertiary: appThemeMode === \"light\" ? \"#757C7C\" : \"#cecece\",\n\t\t\t\tfontFamily:\n\t\t\t\t\t\"'Inter Variable', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif\",\n\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t},\n\t\t\tcomponents: {\n\t\t\t\tButton: {\n\t\t\t\t\tdefaultBg: `${colors.offWhite}`,\n\t\t\t\t\tdefaultBorderColor: `${colors.border.button}`,\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tcolorWarning: colors.warning.primary,\n\t\t\t\t\tcolorError: colors.error.primary,\n\t\t\t\t\tcolorErrorBg: colors.error.fill,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tLayout: {\n\t\t\t\t\theaderBg: \"transparent\",\n\t\t\t\t\theaderHeight: undefined,\n\t\t\t\t\theaderPadding: \"10px 0px 0px 0px\",\n\t\t\t\t},\n\t\t\t\tCheckbox: {\n\t\t\t\t\tlineWidth: 2,\n\t\t\t\t},\n\t\t\t\tSelect: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tInput: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t\tcolorWarning: colors.warning.primary,\n\t\t\t\t\tcolorError: colors.error.primary,\n\t\t\t\t\tcolorBgTextHover: colors.link.hover,\n\t\t\t\t},\n\t\t\t\tPagination: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tTypography: {\n\t\t\t\t\tfontSizeHeading1: typographyUtil.fontSize.h1,\n\t\t\t\t\tfontSizeHeading2: typographyUtil.fontSize.h2,\n\t\t\t\t\tfontSizeHeading3: typographyUtil.fontSize.h3,\n\t\t\t\t\tfontSizeHeading4: typographyUtil.fontSize.h4,\n\t\t\t\t\tfontSizeHeading5: typographyUtil.fontSize.h5,\n\t\t\t\t\tfontWeightStrong: 600,\n\t\t\t\t},\n\t\t\t\tCard: {\n\t\t\t\t\tborderRadius: borderRadius.card,\n\t\t\t\t\tborderRadiusLG: borderRadius.card,\n\t\t\t\t\tborderRadiusSM: borderRadius.card,\n\t\t\t\t\tborderRadiusXS: borderRadius.card,\n\t\t\t\t},\n\t\t\t\tTag: {\n\t\t\t\t\tborderRadius: borderRadius.tag,\n\t\t\t\t\tborderRadiusLG: borderRadius.tag,\n\t\t\t\t\tborderRadiusSM: borderRadius.tag,\n\t\t\t\t\tborderRadiusXS: borderRadius.tag,\n\t\t\t\t},\n\t\t\t\tTabs: {\n\t\t\t\t\thorizontalItemPadding: padding.tabs,\n\t\t\t\t\thorizontalItemPaddingLG: padding.tabs,\n\t\t\t\t\thorizontalItemPaddingSM: padding.tabs,\n\t\t\t\t\tcolorBorderSecondary: grey[1],\n\t\t\t\t},\n\t\t\t\tDropdown: {\n\t\t\t\t\tborderRadius: borderRadius.primary,\n\t\t\t\t\tborderRadiusLG: borderRadius.primary,\n\t\t\t\t\tborderRadiusSM: borderRadius.primary,\n\t\t\t\t\tborderRadiusXS: borderRadius.primary,\n\t\t\t\t},\n\t\t\t\tMenu: {\n\t\t\t\t\tpopupBg: \"grey\",\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}, [colors, borderRadius, padding]);\n}\n","import { DatePicker as AntdDatePicker } from \"antd\";\nimport type { AcaciaDatePickerProps } from \"../interfaces\";\nimport RangePicker from \"./RangePicker\";\n\n/**\n * @description To select or input a date.\n */\n\nconst DatePicker = ({ ...props }: AcaciaDatePickerProps) => {\n\treturn <AntdDatePicker {...props} />;\n};\n\nDatePicker.RangePicker = RangePicker;\n\nexport default DatePicker;\n","import { DatePicker as AntdDatePicker, type GetProps } from \"antd\";\n\ntype AntdDateRangePicker = GetProps<typeof AntdDatePicker.RangePicker>;\n\nconst RangePicker = ({ ...props }: AntdDateRangePicker) => {\n\treturn <AntdDatePicker.RangePicker {...props} />;\n};\nexport default RangePicker;\n","/**\n * @description A dropdown list\n */\n\nimport { Dropdown as AntdDropdown } from \"antd\";\nimport DropdownButton from \"./DropdownButton\";\nimport type { AcaciaDropdownProps } from \"../interfaces\";\n\nconst Dropdown = ({ ...props }: AcaciaDropdownProps) => {\n\treturn <AntdDropdown {...props} />;\n};\n\nDropdown.Button = DropdownButton;\nexport default Dropdown;\n","import { Dropdown as AntdDropdown } from \"antd\";\nimport type { AcaciaDropdownButtonProps } from \"../interfaces\";\n\nconst DropdownButton = ({ children, ...props }: AcaciaDropdownButtonProps) => {\n\treturn <AntdDropdown.Button {...props}>{children}</AntdDropdown.Button>;\n};\n\nexport default DropdownButton;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\n/**\n * Styles\n */\n\n/**\n * Components\n */\nimport TextArea from \"./TextArea\";\nimport Search from \"./Search\";\nimport Password from \"./Password\";\nimport { useInputStyles } from \"./useInputStyles\";\nimport OTP from \"./OTP\";\n\n/**\n * @description A button means an operation (or a series of operations). Clicking a button will trigger corresponding business logic.\n */\n\nconst Input = ({ children, ...props }: AcaciaInputProps) => {\n\tconst inputStyles = useInputStyles().styles;\n\treturn (\n\t\t<AntdInput className={`${inputStyles.input}`} {...props}>\n\t\t\t{children}\n\t\t</AntdInput>\n\t);\n};\n\nInput.TextArea = TextArea;\nInput.Search = Search;\nInput.Password = Password;\nInput.OTP = OTP;\n\nexport default Input;\n","import { Input as AntdInput, type GetProps } from \"antd\";\n\ntype OTPProps = GetProps<typeof AntdInput.OTP>;\n\nconst OTP = ({ ...props }: OTPProps) => {\n\treturn <AntdInput.OTP {...props} />;\n};\n\nexport default OTP;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\nconst Password = ({ ...props }: AcaciaInputProps) => {\n\treturn <AntdInput.Password {...props} />;\n};\nexport default Password;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputProps } from \"../interfaces\";\n\nconst Search = ({ ...props }: AcaciaInputProps) => {\n\treturn <AntdInput.Search {...props} />;\n};\n\nexport default Search;\n","import { Input as AntdInput } from \"antd\";\nimport type { AcaciaInputTextAreaProps } from \"../interfaces\";\nimport { useTextAreaStyles } from \"./useInputStyles\";\n\nconst TextArea = ({ ...props }: AcaciaInputTextAreaProps) => {\n\tconst textareaStyles = useTextAreaStyles().styles;\n\treturn (\n\t\t<AntdInput.TextArea className={`${textareaStyles.textarea}`} {...props} />\n\t);\n};\n\nexport default TextArea;\n","import { createStyles } from \"antd-style\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\n\nexport const useInputStyles = () => {\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\tinput: css`\n & .${prefixCls}-input-show-count-suffix {\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 700;\n }\n `,\n\t}))();\n};\n\nexport const useTextAreaStyles = () => {\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\ttextarea: css`\n & .${prefixCls}-input-data-count {\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 700;\n }\n `,\n\t}))();\n};\n","/**\n * @description A versatile menu for navigation.\n */\n\nimport { Menu as AntdMenu, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaMenuProps } from \"../interfaces\";\nimport { useContext, useMemo } from \"react\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport {\n\tadjustBrightness,\n\tblendMultipleColors,\n\tisValidHEXColor,\n\tshade,\n} from \"@mirawision/colorize\";\nimport { editOpacity } from \"../../../utils/colors.util\";\nimport { createStyles, useTheme } from \"antd-style\";\n\nconst useStyle = createStyles(({ css, prefixCls }) => ({\n\titem: css`\n\t\t&.${prefixCls}-menu-submenu {\n\t\t\tpadding: 10px,\n\t\t\tborderBottom:none,\t\n\t\t\tmarginInline: 3px,\n\t\t}\n `,\n}));\n\nconst Menu = ({ showRightBorder = true, ...props }: AcaciaMenuProps) => {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst globalToken = theme.useToken(); // get the default, antd tokens\n\tconst { styles: menuStyles } = useStyle();\n\tconst token = useTheme();\n\n\tconst selectedItemColor = useMemo(() => {\n\t\tif (isNestedInLayout) {\n\t\t\tconst blended = blendMultipleColors(\n\t\t\t\tcontext.gradients.map((item) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcolor: item,\n\t\t\t\t\t\tweight: 1,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst color = shade(blended, 0.5);\n\n\t\t\treturn {\n\t\t\t\tmenuColor: context?.accentColor,\n\t\t\t\tmenuBgColor: isValidHEXColor(color)\n\t\t\t\t\t? editOpacity(\"hex\", color)\n\t\t\t\t\t: editOpacity(\"rgba\", color),\n\t\t\t};\n\t\t}\n\t}, [context?.accentColor, isNestedInLayout]);\n\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tMenu: {\n\t\t\t\t\t\t...defaultTheme.components.Menu,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tactiveBarHeight: 0,\n\t\t\t\t\t\t\t\t\titemBg: \"transparent\",\n\t\t\t\t\t\t\t\t\thorizontalItemSelectedColor: selectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t\thorizontalItemSelectedBg: selectedItemColor.menuBgColor,\n\t\t\t\t\t\t\t\t\tactiveBarBorderWidth: 0,\n\t\t\t\t\t\t\t\t\titemColor: context.mainTextColor,\n\t\t\t\t\t\t\t\t\thorizontalItemBorderRadius: 3,\n\t\t\t\t\t\t\t\t\titemHoverColor: adjustBrightness(\n\t\t\t\t\t\t\t\t\t\tselectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t\t\t10,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tsubMenuItemBg: selectedItemColor.menuBgColor,\n\t\t\t\t\t\t\t\t\tsubMenuItemSelectedColor: selectedItemColor.menuColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdMenu\n\t\t\t\tclassNames={{\n\t\t\t\t\titem: menuStyles.item,\n\t\t\t\t}}\n\t\t\t\tstyles={{\n\t\t\t\t\troot: {\n\t\t\t\t\t\t...(isNestedInLayout && {\n\t\t\t\t\t\t\tflex: 1,\n\t\t\t\t\t\t\tdisplay: \"flex\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\talignItems: \"center\",\n\t\t\t\t\t\t\tborderBottom: \"none\",\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tborderRight: showRightBorder ? \"\" : \"none\",\n\t\t\t\t\t},\n\t\t\t\t\titem: {\n\t\t\t\t\t\t...(isNestedInLayout && {\n\t\t\t\t\t\t\tpadding: \"8px 10px\",\n\t\t\t\t\t\t\tborderBottom: \"none\",\n\t\t\t\t\t\t\tmarginInline: \"3px\",\n\t\t\t\t\t\t}),\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</ConfigProvider>\n\t);\n};\nexport default Menu;\n","/**\n * @description A long list can be divided into several pages using Pagination, and only one page will be loaded at a time.\n */\n\nimport { Modal as AntdModal, theme } from \"antd\";\nimport type { AcaciaModalProps } from \"../interfaces\";\nimport { useTheme } from \"antd-style\";\nimport { getThemedTitleHeaderBackgroundPicture } from \"../../../utils/theming.util\";\nimport chroma from \"chroma-js\";\nimport Typography from \"../Typography/Typography\";\nimport Space from \"../Space/Space\";\nimport { match } from \"ts-pattern\";\n\nconst Modal = ({\n\ttitle,\n\tsubtitle,\n\theaderBgTheme = \"classic\",\n\ticonPosition = \"start\",\n\t...props\n}: AcaciaModalProps) => {\n\tconst { useToken } = theme;\n\n\tconst defaultTheme = useTheme().appTheme; // get the app theme\n\n\t// get the header background theme - check global config and scoped config\n\tconst getHeaderBackgroundTheme = () => {\n\t\tif (headerBgTheme !== \"classic\") {\n\t\t\treturn getThemedTitleHeaderBackgroundPicture(headerBgTheme);\n\t\t}\n\t\treturn getThemedTitleHeaderBackgroundPicture(defaultTheme);\n\t};\n\n\tconst getLinearGradient = (firstColor: string, secondColor: string) => {\n\t\treturn `linear-gradient(70deg, ${firstColor}CC 80%, ${secondColor}69 80%), url(${getHeaderBackgroundTheme()})`;\n\t};\n\n\t// account for dark mode\n\tconst getHeaderBgGradient = () => {\n\t\tconst darkerColor = chroma\n\t\t\t.scale([useToken().token.colorPrimary, \"black\"])(0.2)\n\t\t\t.hex();\n\t\treturn match(useTheme().appThemeMode)\n\t\t\t.with(\"light\", () => {\n\t\t\t\tconst lighterColor = chroma\n\t\t\t\t\t.scale([useToken().token.colorPrimary, \"white\"])(0.7)\n\t\t\t\t\t.hex();\n\n\t\t\t\treturn getLinearGradient(lighterColor, darkerColor);\n\t\t\t})\n\t\t\t.with(\"dark\", () => {\n\t\t\t\tconst darkestColor = chroma\n\t\t\t\t\t.scale([useToken().token.colorPrimary, \"black\"])(0.7)\n\t\t\t\t\t.hex();\n\n\t\t\t\treturn getLinearGradient(darkerColor, darkestColor);\n\t\t\t})\n\t\t\t.exhaustive();\n\t};\n\n\treturn (\n\t\t<AntdModal\n\t\t\tstyles={{\n\t\t\t\tcontainer: {\n\t\t\t\t\tpadding: 0,\n\t\t\t\t},\n\t\t\t\theader: {\n\t\t\t\t\tbackground: getHeaderBgGradient(),\n\t\t\t\t\tpadding: \"15px 24px\",\n\t\t\t\t},\n\t\t\t\tbody: {\n\t\t\t\t\tpadding: \"0px 24px\",\n\t\t\t\t},\n\t\t\t\tfooter: {\n\t\t\t\t\tpadding: \"0px 24px 15px 24px\",\n\t\t\t\t},\n\t\t\t}}\n\t\t\ttitle={\n\t\t\t\t<Space orientation=\"vertical\" size={0}>\n\t\t\t\t\t<Space orientation=\"horizontal\">\n\t\t\t\t\t\t{iconPosition === \"start\" && props.icon}\n\t\t\t\t\t\t{title}\n\t\t\t\t\t\t{iconPosition === \"end\" && props.icon}\n\t\t\t\t\t</Space>\n\t\t\t\t\t<Typography.Overline>{subtitle}</Typography.Overline>\n\t\t\t\t</Space>\n\t\t\t}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\nexport default Modal;\n","/**\n * @description A long list can be divided into several pages using Pagination, and only one page will be loaded at a time.\n */\n\nimport { Pagination as AntdPagination, ConfigProvider, theme } from \"antd\";\nimport type { AcaciaPaginationProps } from \"../interfaces\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport { renderBlackOrWhiteText } from \"../../../utils/colors.util\";\nimport { tint } from \"@mirawision/colorize\";\nimport { useTheme } from \"antd-style\";\n\nconst Pagination = ({\n\tselectedStyle = \"solid\",\n\t...props\n}: AcaciaPaginationProps) => {\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\tconst token = useTheme();\n\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tPagination: {\n\t\t\t\t\t\t...defaultTheme.components.Pagination,\n\t\t\t\t\t\t...(selectedStyle === \"solid\"\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\titemActiveBg: globalToken.token.colorPrimary,\n\t\t\t\t\t\t\t\t\titemActiveColor:\n\t\t\t\t\t\t\t\t\t\ttoken.appThemeMode === \"light\"\n\t\t\t\t\t\t\t\t\t\t\t? renderBlackOrWhiteText(globalToken.token.colorPrimary)\n\t\t\t\t\t\t\t\t\t\t\t: \"white\",\n\t\t\t\t\t\t\t\t\titemActiveColorHover: tint(\n\t\t\t\t\t\t\t\t\t\trenderBlackOrWhiteText(globalToken.token.colorPrimary),\n\t\t\t\t\t\t\t\t\t\t0.3,\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdPagination {...props} />\n\t\t</ConfigProvider>\n\t);\n};\nexport default Pagination;\n","import Space from \"../Space/Space\";\nimport type React from \"react\";\nimport { usePanelStyles } from \"./usePanelStyles\";\nimport { useContext, useMemo, type CSSProperties } from \"react\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport {\n\tblendMultipleColors,\n\tisValidHEXColor,\n\tshade,\n} from \"@mirawision/colorize\";\nimport { editOpacity } from \"../../../utils/colors.util\";\n\ninterface PanelProps {\n\tchildren: React.ReactNode;\n\tposition?: \"left\" | \"right\" | \"none\";\n\tfooter?: React.ReactNode;\n\tclassNames?: {\n\t\touterContainerClassName?: string;\n\t\tpanelBaseClassName?: string;\n\t\tpanelBodyClassName?: string;\n\t\tpanelFooterClassName?: string;\n\t};\n\tpanelTitle?: string;\n\tstyles?: {\n\t\touterContainerStyles?: CSSProperties;\n\t\tpanelBaseStyles?: CSSProperties;\n\t\tpanelBodyStyles?: CSSProperties;\n\t\tpanelFooterStyles?: CSSProperties;\n\t};\n}\n\nexport default function Panel({\n\tposition = \"left\",\n\t...props\n}: Readonly<PanelProps>) {\n\tconst context = useContext(VerticalLayoutContext); // context to check if its nested - its possible that the user can use the header without the VerticalLayout\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst selectedItemColor = useMemo(() => {\n\t\tif (isNestedInLayout) {\n\t\t\tconst blended = blendMultipleColors(\n\t\t\t\tcontext.gradients.map((item) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcolor: item,\n\t\t\t\t\t\tweight: 1,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t\tconst color = shade(blended, 0.5);\n\n\t\t\treturn {\n\t\t\t\tmenuColor: context?.accentColor,\n\t\t\t\tmenuBgColor: isValidHEXColor(color)\n\t\t\t\t\t? editOpacity(\"hex\", color)\n\t\t\t\t\t: editOpacity(\"rgba\", color),\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tmenuColor: null,\n\t\t\tmenuBgColor: null,\n\t\t};\n\t}, [context?.accentColor, isNestedInLayout]);\n\n\tconst { styles, cx } = usePanelStyles({\n\t\tcolor: selectedItemColor.menuBgColor,\n\t});\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cx(\n\t\t\t\tposition !== \"none\" && styles.outerPanel,\n\t\t\t\tposition === \"left\" && styles.outerPanelLeft,\n\t\t\t\tposition === \"right\" && styles.outerPanelRight,\n\t\t\t\tprops?.classNames?.outerContainerClassName,\n\t\t\t)}\n\t\t\tstyle={{ ...props?.styles?.outerContainerStyles }}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cx(styles.panelBase, props?.classNames?.panelBaseClassName)}\n\t\t\t\tstyle={{ ...props?.styles?.panelBaseStyles }}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\tstyles.panelBody,\n\t\t\t\t\t\tprops?.classNames?.panelBodyClassName,\n\t\t\t\t\t)}\n\t\t\t\t\tstyle={{ ...props?.styles?.panelBodyStyles }}\n\t\t\t\t>\n\t\t\t\t\t<Space orientation=\"vertical\">{props.children}</Space>\n\t\t\t\t</div>\n\t\t\t\t{props.footer && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\tstyles.panelFooter,\n\t\t\t\t\t\t\tprops?.classNames?.panelFooterClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tstyle={{ ...props?.styles?.panelFooterStyles }}\n\t\t\t\t\t>\n\t\t\t\t\t\t{props.footer}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import { createStyles } from \"antd-style\";\n\nexport const usePanelStyles = createStyles(\n\t({ css }, props: { color: string }) => {\n\t\tconst outerPanelBase = css`\n position: relative;\n z-index: 2;\n &::before {\n content: \"\";\n position: absolute;\n width: 80%;\n height: 12px;\n top: -7px;\n z-index: -1;\n border-radius: 3px 6px 6px 0;\n background: ${props.color ?? \"#9cafb7\"}; \n }\n `;\n\n\t\tconst panelBase = css`\n border-radius: 3px;\n background: #EFF3F3;\n box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;\n `;\n\n\t\tconst panelBody = css`\n padding: 1rem; \n `;\n\n\t\tconst panelFooter = css`\n background: #e2e7e8;\n border-top: 1px solid #dadada;\n `;\n\n\t\treturn {\n\t\t\touterPanel: outerPanelBase,\n\t\t\touterPanelRight: css`\n ${outerPanelBase}\n &::before {\n right: 0;\n }\n `,\n\t\t\touterPanelLeft: css`\n ${outerPanelBase}\n &::before {\n left: 0;\n }\n `,\n\t\t\tpanelBase: panelBase,\n\t\t\tpanelBody: panelBody,\n\t\t\tpanelFooter: css`\n ${panelBody}\n ${panelFooter}\n `,\n\t\t};\n\t},\n);\n","import { useTheme } from \"antd-style\";\nimport type { AcaciaPopconfirmProps } from \"../interfaces\";\nimport { Popconfirm as AntdPopconfirm, ConfigProvider, theme } from \"antd\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\n\nconst Popconfirm = ({ ...props }: AcaciaPopconfirmProps) => {\n\tconst token = useTheme();\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\tconst globalToken = theme.useToken(); // get the default, antd tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\tcomponents: {\n\t\t\t\t\tPopconfirm: {\n\t\t\t\t\t\tcolorBgElevated: token.darkPopover && \"#161616c4\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdPopconfirm\n\t\t\t\tcancelButtonProps={{\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\tstyles: {\n\t\t\t\t\t\tcontent: {\n\t\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\t\ttoken.darkPopover && useGetDefaultTheme(\"dark\").token.colorText,\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t\tstyles={{\n\t\t\t\t\tcontainer: {\n\t\t\t\t\t\tbackgroundColor: token.darkPopover && \"#161616c4\",\n\t\t\t\t\t\tbackdropFilter: token.darkPopover && \"blur(3px)\",\n\t\t\t\t\t},\n\n\t\t\t\t\ttitle: {\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\ttoken.darkPopover && useGetDefaultTheme(\"dark\").token.colorText,\n\t\t\t\t\t},\n\t\t\t\t\tcontent: {\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\ttoken.darkPopover && useGetDefaultTheme(\"dark\").token.colorText,\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t/>\n\t\t</ConfigProvider>\n\t);\n};\n\nexport default Popconfirm;\n","import { Radio as AntdRadio } from \"antd\";\nimport type { RadioButtonProps } from \"antd/es/radio/radioButton\";\n\nconst RadioButton = ({ ...props }: RadioButtonProps) => {\n\treturn <AntdRadio.Button {...props} />;\n};\n\nexport default RadioButton;\n","import { Radio as AntdRadio, type RadioProps } from \"antd\";\nimport RadioGroup from \"./RadioGroup\";\nimport RadioButton from \"./Button\";\n\n/**\n * @description A radio is used to select a single state from multiple options.\n */\n\nconst Radio = ({ ...props }: RadioProps) => {\n\treturn <AntdRadio {...props} />;\n};\n\nRadio.Group = RadioGroup;\nRadio.Button = RadioButton;\nexport default Radio;\n","import type { RadioGroupProps } from \"antd\";\nimport { Radio as AntdRadio } from \"antd\";\n\nconst RadioGroup = ({ ...props }: RadioGroupProps) => {\n\treturn <AntdRadio.Group {...props} />;\n};\n\nexport default RadioGroup;\n","import { Segmented as AntdSegmented } from \"antd\";\nimport type { AcaciaSegmentedProps } from \"../interfaces\";\n\n/**\n * @description\n * Segmented is used when displaying multiple options and user can select a single option or\n * when switching the selected option, the content of the associated area changes.\n */\n\nconst Segmented = ({ ...props }: AcaciaSegmentedProps) => {\n\treturn <AntdSegmented {...props} />;\n};\n\nexport default Segmented;\n","import { Select as AntdSelect } from \"antd\";\nimport type { AcaciaSelectProps } from \"../interfaces\";\n\n/**\n * @description Select component to select value from options.\n */\n\nconst Select = ({ ...props }: AcaciaSelectProps) => {\n\treturn <AntdSelect {...props} />;\n};\nexport default Select;\n","import { Space as AntdSpace } from \"antd\";\nimport type { AcaciaSpaceProps } from \"../interfaces\";\n\n/**\n * @description Space component set the component spacing\n */\n\nconst Space = ({ ...props }: AcaciaSpaceProps) => {\n\treturn <AntdSpace {...props} style={{ display: \"flex\", ...props.styles }} />;\n};\nexport default Space;\n","import { Switch as AntdSwitch } from \"antd\";\nimport type { AcaciaSwitchProps } from \"../interfaces\";\n\n/**\n * @description A switch is used if you need to represent the switching between two states or on-off state.\n */\n\nconst Switch = ({ ...props }: AcaciaSwitchProps) => {\n\treturn <AntdSwitch {...props} />;\n};\n\nexport default Switch;\n","import type { AcaciaTabsProps } from \"../interfaces\";\nimport { Tabs as AntdTabs, ConfigProvider, theme } from \"antd\";\nimport { adjustBrightness, isLight } from \"@mirawision/colorize\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"../../layout/VerticalLayout/VerticalLayout\";\nimport { useGetDefaultTheme } from \"../ConfigProvider/defaultTheme\";\nimport { useTheme } from \"antd-style\";\nexport default function Tabs({ type = \"line\", ...props }: AcaciaTabsProps) {\n\tconst context = useContext(VerticalLayoutContext);\n\tconst isNestedInLayout = Boolean(context); // for when tabs are nested in Layout\n\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\tconst token = useTheme();\n\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\n\treturn (\n\t\t<ConfigProvider\n\t\t\ttheme={{\n\t\t\t\ttoken: {\n\t\t\t\t\t...defaultTheme.token,\n\t\t\t\t\t...globalToken.token,\n\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tcolorBorderSecondary: `${adjustBrightness(\n\t\t\t\t\t\t\t\t\tcontext.mainTextColor,\n\t\t\t\t\t\t\t\t\tisLight(context.mainTextColor) ? -15 : 15,\n\t\t\t\t\t\t\t\t)} !important`,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t: {}),\n\t\t\t\t},\n\t\t\t\tcomponents: {\n\t\t\t\t\tTabs: {\n\t\t\t\t\t\t...defaultTheme.components.Tabs,\n\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\titemHoverColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemColor: context.accentColor,\n\t\t\t\t\t\t\t\t\tinkBarColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemActiveColor: context.accentColor,\n\t\t\t\t\t\t\t\t\titemSelectedColor: context.accentColor,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}}\n\t\t>\n\t\t\t<AntdTabs {...props} tabBarGutter={0} />\n\t\t</ConfigProvider>\n\t);\n}\n","import { Tag as AntdTag } from \"antd\";\nimport {\n\tAcaciaCustomColors,\n\tisValidCustomColor,\n\ttype AcaciaColors,\n\ttype AcaciaTagProps,\n} from \"../interfaces\";\n\n/**\n * A Tag is used for categorizing or markup.\n */\n\nconst Tag = ({ ...props }: AcaciaTagProps) => {\n\t// return custom colors if found the correct type\n\tfunction renderColor(color: AcaciaColors) {\n\t\tif (isValidCustomColor(color)) {\n\t\t\treturn AcaciaCustomColors[color].background;\n\t\t}\n\t\treturn color;\n\t}\n\treturn <AntdTag {...props} color={renderColor(props.color)} />;\n};\n\nexport default Tag;\n","import { DatePicker as AntdDatePicker } from \"antd\";\nimport type { AcaciaTimePickerProps } from \"../interfaces\";\nimport TimeRangePicker from \"./TimeRangePicker\";\n\nconst TimePicker = ({ ...props }: AcaciaTimePickerProps) => {\n\treturn <AntdDatePicker {...props} />;\n};\n\nTimePicker.RangePicker = TimeRangePicker;\nexport default TimePicker;\n","import { TimePicker as AntdTimePicker } from \"antd\";\nimport type { AcaciaTimeRangePickerProps } from \"../interfaces\";\n\nconst TimeRangePicker = ({ ...props }: AcaciaTimeRangePickerProps) => {\n\treturn <AntdTimePicker.RangePicker {...props} />;\n};\n\nexport default TimeRangePicker;\n","import { Typography as AntdTypography } from \"antd\";\n\nimport { useTypographyStyles } from \"./useTypographyStyles\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\nimport type {\n\tAcaciaBasicTypographyProps,\n\tAcaciaLinkProps,\n\tAcaciaParagraphProps,\n\tAcaciaTextProps,\n\tAcaciaTitleProps,\n} from \"../interfaces\";\nimport Space from \"../Space/Space\";\n\nconst TypographyToken = {\n\tfontSizeHeading1: typographyUtil.fontSize.h1,\n\tfontSizeHeading2: typographyUtil.fontSize.h2,\n\tfontSizeHeading3: typographyUtil.fontSize.h3,\n\tfontSizeHeading4: typographyUtil.fontSize.h4,\n\tfontSizeHeading5: typographyUtil.fontSize.h5,\n\tfontWeightStrong: 600,\n};\n\nconst Title = ({\n\tchildren,\n\tlevel = 1,\n\tcolor,\n\tshowPointer = true,\n\ticonPosition = \"start\",\n\t...props\n}: AcaciaTitleProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<Space orientation=\"horizontal\">\n\t\t\t{iconPosition === \"start\" && props.icon}\n\t\t\t<AntdTypography.Title\n\t\t\t\tclassName={`\n\t\t\t\t\t${typoStyles.common}\n\t\t\t\t\t${typoStyles.title}\n\t\t\t\t\t${typoStyles[`titleH${level}`]}\n\t\t\t\t\t${showPointer ? \"pointer\" : \"\"}\n\t\t\t\t`}\n\t\t\t\tlevel={level}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</AntdTypography.Title>\n\t\t\t{iconPosition === \"end\" && props.icon}\n\t\t</Space>\n\t);\n};\n\nconst Text = ({\n\tchildren,\n\tlevel = 1,\n\tcolor,\n\t...antdProps\n}: AcaciaTextProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.text} \n\t\t\t\t${typoStyles[`textBody${level}`]}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Emphasis = ({ children, color, ...props }: AcaciaTextProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.emphasis}\n\t\t\t`}\n\t\t\tcolor={color}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n};\n\nconst Caption = ({\n\tchildren,\n\tcolor,\n\t...antdProps\n}: AcaciaBasicTypographyProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.caption}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Overline = ({\n\tchildren,\n\tcolor,\n\t...antdProps\n}: AcaciaBasicTypographyProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.overline}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Paragraph = ({ children, color, ...antdProps }: AcaciaParagraphProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Text\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.textBody2}\n\t\t\t\t${typoStyles.paragraph}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Text>\n\t);\n};\n\nconst Link = ({ children, color, ...antdProps }: AcaciaLinkProps) => {\n\tconst typoStyles = useTypographyStyles(color).styles;\n\n\treturn (\n\t\t<AntdTypography.Link\n\t\t\tclassName={`\n\t\t\t\t${typoStyles.common}\n\t\t\t\t${typoStyles.textBody1}\n\t\t\t\t${typoStyles.link}\n\t\t\t`}\n\t\t\t{...antdProps}\n\t\t>\n\t\t\t{children}\n\t\t</AntdTypography.Link>\n\t);\n};\n\n/**\n * Basic text writing, including headings, body text, lists, and more.\n *\n * When To Use:\n * - When need to display a title or paragraph contents in Articles/Blogs/Notes.\n * - When you need copyable/editable/ellipsis texts.\n */\n\nconst Typography = () => {\n\treturn <AntdTypography />;\n};\n\nTypography.Text = Text;\nTypography.Title = Title;\nTypography.Caption = Caption;\nTypography.Overline = Overline;\nTypography.Paragraph = Paragraph;\nTypography.Emphasis = Emphasis;\nTypography.Link = Link;\n\nexport default Typography;\n","import { useTheme, createStyles } from \"antd-style\";\nimport { typographyUtil } from \"../../../theme/typographyUtil\";\n\nexport const useTypographyStyles = (color?: string) => {\n\tconst token = useTheme();\n\treturn createStyles(({ css, prefixCls }) => ({\n\t\tcommon: css`\n &.${prefixCls}-typography {\n margin-block: 0;\n line-height: 1.5em;\n \n ${\n\t\t\t\t\t\tcolor\n\t\t\t\t\t\t\t? `\n color: ${color};\n `\n\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t}\n }\n `,\n\t\ttitle: css`\n font-family: ${token.headingFontFamily};\n `,\n\t\ttitleH1: css`\n letter-spacing: ${typographyUtil.letterSpacing.h1};\n `,\n\t\ttitleH2: css`\n letter-spacing: ${typographyUtil.letterSpacing.h2};\n `,\n\t\ttitleH3: css`\n letter-spacing: ${typographyUtil.letterSpacing.h3};\n `,\n\t\ttitleH4: css`\n letter-spacing: ${typographyUtil.letterSpacing.h4};\n `,\n\t\ttitleH5: css`\n letter-spacing: ${typographyUtil.letterSpacing.h5};\n \n &.${prefixCls}-typography {\n font-weight: 600;\n display: flex;\n align-items: center;\n }\n \n &::before {\n display: inline-block;\n content: \"\";\n height: 5px;\n width: 5px;\n background-color: ${token.colorPrimary};\n vertical-align: super;\n margin-right: 10px;\n opacity: 0.6;\n }\n `,\n\t\ttext: css`\n letter-spacing: ${typographyUtil.letterSpacing.default};\n `,\n\t\temphasis: css`\n display: contents;\n font-size: inherit;\n font-weight: 600;\n `,\n\t\ttextBody1: css`\n font-size: ${typographyUtil.fontSize.body1}px;\n font-weight: 500;\n opacity: 0.88;\n letter-spacing: ${typographyUtil.letterSpacing.body1};\n `,\n\t\ttextBody2: css`\n letter-spacing: ${typographyUtil.letterSpacing.default};\n `,\n\t\tparagraph: css`\n display: block;\n margin-bottom: 20px;\n `,\n\t\tcaption: css`\n letter-spacing: ${typographyUtil.letterSpacing.caption};\n font-size: ${typographyUtil.fontSize.caption}px;\n font-weight: 500;\n `,\n\t\toverline: css`\n letter-spacing: ${typographyUtil.letterSpacing.overline};\n font-size: ${typographyUtil.fontSize.overline}px;\n font-weight: 600;\n opacity: 0.88;\n text-transform: uppercase;\n \n &&.${prefixCls}-typography {\n margin-bottom: 0;\n }\n `,\n\t\tlink: css`\n text-decoration: underline !important;\n text-underline-offset: 3px;\n \n &&.${prefixCls}-typography {\n margin-bottom: 0;\n }\n `,\n\t}))();\n};\n","import type {\n\tAvatarProps,\n\tBreadcrumbProps,\n\tButtonProps,\n\tCardProps,\n\tTypographyProps,\n\tTabsProps,\n\tRadioProps,\n\tSwitchProps,\n\tBadgeProps,\n\tCheckboxProps,\n\tSegmentedProps,\n\tStepsProps,\n\tSelectProps,\n\tFormProps,\n\tFormItemProps,\n\tDatePickerProps,\n\tMenuProps,\n\tTimePickerProps,\n\tThemeConfig,\n\tTimeRangePickerProps,\n\tTagProps,\n\tConfigProviderProps,\n\tSpaceProps,\n\tPopconfirmProps,\n\tModalProps,\n} from \"antd\";\n\nimport type { TextProps } from \"antd/es/typography/Text\";\nimport type { TitleProps } from \"antd/es/typography/Title\";\nimport type { ParagraphProps } from \"antd/es/typography/Paragraph\";\nimport type { InputProps } from \"antd/es/input/Input\";\nimport type { PaginationProps } from \"antd/es/pagination/Pagination\";\nimport type { TextAreaProps } from \"antd/es/input\";\nimport type { RibbonProps } from \"antd/es/badge/Ribbon\";\nimport type { NewToken } from \"../../theme/customTheme\";\nimport type {\n\tPresetColorType,\n\tPresetStatusColorType,\n} from \"antd/es/_util/colors\";\nimport type { LiteralUnion } from \"antd/es/_util/type\";\nimport type { TabsType } from \"antd/es/tabs\";\nimport type {\n\tBreadcrumbItemType,\n\tBreadcrumbSeparatorType,\n} from \"antd/es/breadcrumb/Breadcrumb\";\nimport type { DropdownButtonProps, DropdownProps } from \"antd/es/dropdown\";\nimport type { LinkProps } from \"antd/es/typography/Link\";\n\n/**\n * props for the acacia themes\n */\nexport type AcaciaThemes = \"classic\" | \"submarine\" | \"mystical\";\n\n/**\n * Props for Acacia Breadcrumb component\n * @see https://ant.design/components/breadcrumb\n */\n\nexport type AcaciaBreadcrumbItemType = BreadcrumbItemType & {\n\ticon?: React.ReactNode;\n\t/**\n\t * @default end\n\t */\n\ticonPosition?: \"start\" | \"end\";\n};\n\nexport type AcaciaItemType = Partial<\n\tAcaciaBreadcrumbItemType & BreadcrumbSeparatorType\n>;\n\nexport interface AcaciaBreadcrumbProps extends BreadcrumbProps {\n\titems?: AcaciaItemType[];\n\t/**\n\t * @default /\n\t */\n\tseparator?: \"/\";\n}\n\n/**\n * Props for Palette Avatar component\n * @see https://ant.design/components/avatar\n *\n * Custom props:\n * @property {string} [userId] - id of the user. if you want to show the user id in the avatar, set this property\n * @property {\"solid\" | \"transparent\"} [type=solid] - determines the avatar type. 'solid' is for solid background while 'transparent' is for transparent background\n * @property {() => void} [onClick] - click handler, to handle showing of\n */\nexport interface AcaciaAvatarProps extends AvatarProps {\n\tuserId?: string;\n\ttype?: \"solid\" | \"transparent\";\n\tonClick?: () => void;\n}\n\n/**\n * Props for Acacia Button component\n * @see https://ant.design/components/button\n */\nexport interface AcaciaButtonProps extends ButtonProps {\n\t/** Set button color */\n\tcolor?:\n\t\t| \"default\"\n\t\t| \"primary\"\n\t\t| \"danger\"\n\t\t| \"blue\"\n\t\t| \"purple\"\n\t\t| \"cyan\"\n\t\t| \"green\"\n\t\t| \"magenta\"\n\t\t| \"pink\"\n\t\t| \"red\"\n\t\t| \"orange\"\n\t\t| \"yellow\"\n\t\t| \"volcano\"\n\t\t| \"geekblue\"\n\t\t| \"lime\"\n\t\t| \"gold\";\n\n\tvariant?: \"outlined\" | \"dashed\" | \"solid\" | \"filled\" | \"text\" | \"link\";\n\t/**\n\t * Button style type.\n\t * @default default\n\t */\n\ttype?: \"primary\" | \"dashed\" | \"link\" | \"text\" | \"default\";\n}\n\n/**\n * Props for Acacia Card component\n * @see https://ant.design/components/card\n *\n * custom props:\n * @property {boolean} [plainBody=false] - determines if the card should have plain body or textured body\n * @property {React.ReactNode | string} [title] - card header title\n * @property {React.ReactNode | string} [subtitle] - card header subtitle\n *\n */\nexport interface AcaciaCardProps extends CardProps {\n\t/**\n\t * content in the card\n\t */\n\tsubtitle?: React.ReactNode | string;\n\ttitle?: React.ReactNode | string;\n\tplainBody?: boolean;\n\t/**\n\t * custom background banner picture if decides not to use themes.\n\t * we are assuming that the picture is found under the public folder in nextjs\n\t * example usage:\n\t * headerBackgroundPicture: \"./test.png\"\n\t */\n\theaderBackgroundPicture?: string;\n\t/**\n\t * \tprovides 3 themes of card header background, and put hexagon as the default\n\t */\n\theaderBackgroundTheme?: AcaciaThemes;\n\ticon: React.ReactNode | string;\n}\n\n/**\n * Props for Typography component\n * @see https://ant.design/components/typography\n */\nexport interface AcaciaTypographyProps extends TypographyProps {}\n\n/**\n * Props for Acacia Title component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaTitleProps extends TitleProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n\tshowPointer?: boolean;\n\ticon?: React.ReactNode;\n\ticonPosition?: \"start\" | \"end\";\n}\n\n/**\n * Props for Palette Text component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n * @property {1 | 2} [level=1] - level of the text\n */\nexport interface AcaciaTextProps extends TextProps {\n\tchildren: React.ReactNode;\n\tlevel?: 1 | 2;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Text component\n * @see https://ant.design/components/typography\n *\n */\nexport interface AcaciaEmphasisProps extends AcaciaTextProps {}\n\nexport interface AcaciaLinkProps extends LinkProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Typography component\n * @see https://ant.design/components/typography\n *\n * custom Palette props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaBasicTypographyProps extends TextProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Paragraph component\n * @see https://ant.design/components/typography\n *\n * custom props:\n * @property {string} [color] - color of the title\n */\nexport interface AcaciaParagraphProps extends ParagraphProps {\n\tchildren: React.ReactNode;\n\tcolor?: string;\n}\n\n/**\n * Props for Acacia Space component\n * @see https://ant.design/components/space\n *\n */\nexport interface AcaciaSpaceProps extends SpaceProps {}\n\n/**\n * Props for Acacia Pagination component\n * @see https://ant.design/components/pagination\n *\n */\nexport interface AcaciaPaginationProps extends PaginationProps {\n\t/**\n\t * @default \"solid\"\n\t */\n\tselectedStyle?: \"solid\" | \"outline\";\n}\n\n/**\n * Props for Acacia Input component\n * @see https://ant.design/components/input\n *\n */\nexport interface AcaciaInputProps extends InputProps {}\n\n/**\n * Props for Acacia Input Text Area component\n * @see https://ant.design/components/input#inputtextarea\n *\n */\nexport interface AcaciaInputTextAreaProps extends TextAreaProps {}\n\n/**\n * Props for Acacia Tabs component\n * @see https://ant.design/components/tabs\n *\n * custom props:\n * @property {\"page\" | \"header\"} [colorType=page] - determines the breadcrumb type. 'header' is for breadcrumb within the header while 'page' is for breadcrumb on the page itself\n */\n\ntype AcaciaTabsType = TabsType | \"page\" | \"header\";\n\nexport interface AcaciaTabsProps extends Omit<TabsProps, \"type\"> {\n\ttype: TabsType | \"page\" | \"header\";\n}\n\n/**\n * Props for Palette Radio component\n */\nexport interface AcaciaRadioProps extends RadioProps {}\n\n/**\n * Props for Acacia Switch component\n * @see https://ant.design/components/switch\n */\nexport interface AcaciaSwitchProps extends SwitchProps {}\n\n/**\n * Props for Acacia Badge component\n * @see https://ant.design/components/badge\n */\nexport interface AcaciaBadgeProps extends BadgeProps {}\n\n/**\n * Props for Acacia Badge.Ribbon component\n * @see https://ant.design/components/badge#badgeribbon\n */\nexport interface AcaciaRibbonProps extends RibbonProps {}\n\n/**\n * Props for Acacia Checkbox component\n * @see https://ant.design/components/checkbox\n */\nexport interface AcaciaCheckboxProps extends CheckboxProps {}\n\n/**\n * Props for Acacia Segmented component\n * @see https://ant.design/components/segmented\n */\nexport interface AcaciaSegmentedProps extends SegmentedProps {}\n\n/**\n * Props for Acacia Steps component\n * @see https://ant.design/components/steps\n */\nexport interface PaletteStepsProps extends StepsProps {}\n\n/**\n * Props for Acacia Select component\n * @see https://ant.design/components/select\n */\nexport interface AcaciaSelectProps extends SelectProps {}\n\n/**\n * Props for Acacia Panel component\n *\n * custom props:\n * @property {React.ReactNode} children - content in the panel\n */\nexport interface AcaciaPanelProps {\n\tchildren: React.ReactNode;\n}\n\n/**\n * Props for Acacia Form component\n * @see https://ant.design/components/form\n *\n */\nexport interface AcaciaFormProps extends FormProps {\n\tchildren: React.ReactNode;\n}\n\n/**\n * Props for Acacia Form.Item component\n * @see https://ant.design/components/form#formitem\n *\n * custom props:\n * @property {string | React.ReactNode} [infoCopy] - helper text under the form item\n */\nexport interface AcaciaFormItemProps extends FormItemProps {\n\tchildren: React.ReactNode;\n\tinfoCopy?: string | React.ReactNode;\n}\n\n/**\n * dropdown\n */\nexport interface AcaciaDropdownProps extends DropdownProps {}\nexport interface AcaciaDropdownButtonProps extends DropdownButtonProps {}\n\n/**\n * DATEPICKER\n */\nexport interface AcaciaDatePickerProps extends DatePickerProps {}\nexport interface AcaciaDateRangePickerProps extends TimeRangePickerProps {}\n\nexport interface AcaciaTimePickerProps extends TimePickerProps {}\n\nexport interface AcaciaTimeRangePickerProps extends TimeRangePickerProps {}\n\n/**\n * MENU\n */\nexport interface AcaciaMenuProps extends MenuProps {\n\t/**\n\t * @default true\n\t */\n\tshowRightBorder?: boolean;\n}\n\n/**\n * BASIC PANEL\n */\nexport interface AcaciaBasicPanelProps {\n\tchildren: React.ReactNode;\n\tbgColor?: string;\n}\n\nexport interface AcaciaConfigProviderProps extends ConfigProviderProps {\n\tchildren: React.ReactNode;\n\tcustomToken?: Partial<NewToken>;\n\ttheme?: ThemeConfig;\n}\n\n/**\n * TAG\n */\nexport const AcaciaCustomColors = {\n\t\"cobalt-blue\": { background: \"#2C62D5\", color: \"white\" },\n\t\"pastel-red\": { background: \"#DB3056\", color: \"white\" },\n};\n\nexport const AcaciaColorArray = [\"cobalt-blue\", \"pastel-red\"] as const;\nexport type AcaciaColorType = (typeof AcaciaColorArray)[number];\nexport type AcaciaColors = LiteralUnion<\n\tPresetColorType | PresetStatusColorType | AcaciaColorType\n>;\n\nexport const isValidCustomColor = (\n\tvalue: string,\n): value is (typeof AcaciaColorArray)[number] => {\n\treturn AcaciaColorArray.includes(value as any);\n};\n\n// extends the current Tag props and add more colors to the list\nexport interface AcaciaTagProps extends TagProps {\n\tcolor?: AcaciaColors;\n}\n\n// POPCONFIRM\nexport interface AcaciaPopconfirmProps extends PopconfirmProps {}\n\n// MODAL\n\nexport interface AcaciaModalProps extends ModalProps {\n\theaderBgTheme?: AcaciaThemes;\n\ticon?: React.ReactNode;\n\ticonPosition?: \"start\" | \"end\";\n\tsubtitle?: React.ReactNode | string;\n}\n","import { generate } from \"../utils/colors.util\";\nexport const useAcaciaColors = () => {\n\tconst colors = {\n\t\tprimaryGreen: \"#334F4E\",\n\t\tmystiqueBlack: \"#000\",\n\t\twhite: \"#FFF\",\n\t\toffWhite: \"#F9F9F9\",\n\t\tbrightGreen: \"#A4ED06\",\n\t\tneutralGrey: \"#BBBDBE\",\n\t\tlesserInk: \"#3D4040\",\n\t\tborder: {\n\t\t\tbutton: \"#B3B3B3\",\n\t\t\tcell: \"#CCC\",\n\t\t\tpage: \"#B3B3B3\",\n\t\t},\n\t\tlink: {\n\t\t\thover: \"#E5FAF6\",\n\t\t},\n\t\tsuccess: {\n\t\t\tprimary: \"#268C79\",\n\t\t\tfill: \"#E5FAF6\",\n\t\t\tstroke: \"#ADD8D0\",\n\t\t\temphasis: \"#00B996\",\n\t\t},\n\t\twarning: {\n\t\t\tprimary: \"#E46015\",\n\t\t\tfill: \"#FFF1E9\",\n\t\t\tstroke: \"#E9BA9F\",\n\t\t\temphasis: \"#FF6D1B\",\n\t\t},\n\t\terror: {\n\t\t\tprimary: \"#DB3056\",\n\t\t\tfill: \"#FFF0F3\",\n\t\t\tstroke: \"#FFBBCA\",\n\t\t\temphasis: \"#FF5C81\",\n\t\t},\n\t\tinfo: {\n\t\t\tprimary: \"#2C62D5\",\n\t\t\tfill: \"#EBF3FF\",\n\t\t\tstroke: \"#AFC9FF\",\n\t\t\temphasis: \"#296EFF\",\n\t\t},\n\t};\n\n\treturn { colors, generate };\n};\n","export const useAcaciaConfig = () => {\n\tconst borderRadius = {\n\t\tprimary: 3,\n\t\ttag: 20,\n\t\tavatar: 20,\n\t\tpanel: 5,\n\t\tcard: 5,\n\t};\n\n\tconst transition = {\n\t\tantdItem:\n\t\t\t\"border-color 0.3s, background 0.3s, padding 0.2s cubic-bezier(0.215, 0.61, 0.355, 1)\",\n\t};\n\n\tconst shadow = {\n\t\tcard: `rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, \n rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;`,\n\t};\n\n\tconst layout = {\n\t\txxlUtil: {\n\t\t\tpaddingInline: 60,\n\t\t\tpaddingBlock: 20,\n\t\t\tlogoMaxWidth: 120,\n\t\t},\n\t\txlUtil: {\n\t\t\tpaddingInline: 20,\n\t\t\tpaddingBlock: 20,\n\t\t\tlogoMaxWidth: 100,\n\t\t},\n\t};\n\n\tconst padding = {\n\t\ttabs: \"10px 20px\",\n\t};\n\n\treturn { borderRadius, layout, transition, shadow, padding };\n};\n","import { useEffect } from \"react\";\n\nexport const useFoucHandler = (id: string, delay?: number) => {\n const removeNoFouc = () => {\n if (typeof window !== undefined) {\n const noFouc = document.getElementById(id);\n\n if (noFouc) {\n noFouc.removeAttribute(\"id\");\n }\n }\n };\n\n useEffect(() => {\n setTimeout(() => {\n removeNoFouc();\n }, delay);\n }, []);\n};\n","import { useState, useEffect } from \"react\";\n\nexport const useScreenSize = (debounceTime = 200) => {\n let timeout: ReturnType<typeof setTimeout> | null;\n\n const [screenSize, setScreenSize] = useState({});\n\n useEffect(() => {\n const handleResize = () => {\n if (timeout) {\n clearTimeout(timeout);\n }\n\n timeout = setTimeout(() => {\n if (typeof window !== \"undefined\") {\n setScreenSize({\n width: window.innerWidth,\n height: window.innerHeight,\n });\n }\n }, debounceTime);\n };\n\n if (typeof window !== \"undefined\") {\n window.addEventListener(\"resize\", handleResize);\n }\n\n // Clean up the event listener when the component unmounts\n return () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"resize\", handleResize);\n }\n };\n }, []);\n\n return screenSize;\n};\n\nexport default useScreenSize;\n","// components\n\nexport { default as Button } from \"./components/ui/Button/Button\";\nexport { default as Badge } from \"./components/ui/Badge/Badge\";\nexport { default as ConfigProvider } from \"./components/ui/ConfigProvider/ConfigProvider\";\nexport { default as Breadcrumb } from \"./components/ui/Breadcrumb/Breadcrumb\";\nexport { default as Checkbox } from \"./components/ui/Checkbox/Checkbox\";\nexport { default as Radio } from \"./components/ui/Radio/Radio\";\nexport { default as Segmented } from \"./components/ui/Segmented/Segmented\";\nexport { default as Select } from \"./components/ui/Select/Select\";\nexport { default as Switch } from \"./components/ui/Switch/Switch\";\nexport { default as Input } from \"./components/ui/Input/Input\";\nexport { default as Dropdown } from \"./components/ui/Dropdown/Dropdown\";\nexport { default as Pagination } from \"./components/ui/Pagination/Pagination\";\nexport { default as Typography } from \"./components/ui/Typography/Typography\";\nexport { default as TimePicker } from \"./components/ui/TimePicker/TimePicker\";\nexport { default as DatePicker } from \"./components/ui/DatePicker/DatePicker\";\nexport { default as Card } from \"./components/ui/Card/Card\";\nexport { default as Tag } from \"./components/ui/Tag/Tag\";\nexport { default as Tabs } from \"./components/ui/Tabs/Tabs\";\nexport { default as Avatar } from \"./components/ui/Avatar/Avatar\";\nexport { default as Menu } from \"./components/ui/Menu/Menu\";\nexport { default as Space } from \"./components/ui/Space/Space\";\nexport { default as Panel } from \"./components/ui/Panel/Panel\";\nexport { default as Popconfirm } from \"./components/ui/Popconfirm/Popconfirm\";\nexport { default as Modal } from \"./components/ui/Modal/Modal\";\n\nexport { default as VerticalLayout } from \"./components/layout/VerticalLayout/VerticalLayout\";\nexport { default as VerticalHeader } from \"./components/layout/VerticalLayout/VerticalHeader\";\nexport { default as VerticalContent } from \"./components/layout/VerticalLayout/VerticalContent\";\n\nexport type { NewToken } from \"./theme/customTheme\";\n// hooks\nexport { useAcaciaColors } from \"./hooks/useAcaciaColors\";\nexport { useFoucHandler } from \"./hooks/useFoucHandler\";\nexport { useAcaciaConfig } from \"./hooks/useAcaciaConfig\";\nexport { useScreenSize } from \"./hooks/useScreenSize\";\n// export { usePaletteToken } from \"./tokens/usePaletteToken\";\n\n// interfaces\nexport type {\n\tAcaciaButtonProps,\n\tAcaciaBreadcrumbProps,\n\tAcaciaBadgeProps,\n\tAcaciaRibbonProps,\n\tAcaciaCheckboxProps,\n\tAcaciaSegmentedProps,\n\tAcaciaTypographyProps,\n\tAcaciaConfigProviderProps,\n\tAcaciaDatePickerProps,\n\tAcaciaDateRangePickerProps,\n\tAcaciaModalProps,\n\tAcaciaTabsProps,\n\tAcaciaPopconfirmProps,\n\tAcaciaTimePickerProps,\n\tAcaciaTimeRangePickerProps,\n\tAcaciaInputProps,\n\tAcaciaSwitchProps,\n\tAcaciaInputTextAreaProps,\n\tAcaciaPaginationProps,\n\tAcaciaSelectProps,\n\tAcaciaRadioProps,\n\tAcaciaBasicPanelProps,\n} from \"./components/ui/interfaces\";\n","import \"@fontsource-variable/roboto-flex\";\nimport type { AcaciaThemes } from \"../components/ui/interfaces\";\n\nexport interface NewToken {\n\theadingFontFamily: string;\n\tappTheme: AcaciaThemes;\n\tappThemeMode: \"light\" | \"dark\";\n\tlogo: React.ReactNode | string;\n\tdarkPopover: boolean; // allowing for dark popover for light mode\n}\n\n// By extending the type definition of the `CustomToken` interface for `antd-style`, you can add corresponding token type definitions to the `useTheme` hooks\ndeclare module \"antd-style\" {\n\t// eslint-disable-next-line @typescript-eslint/no-empty-interface\n\texport interface CustomToken extends NewToken {}\n}\n\nexport const CustomTheme: NewToken = {\n\theadingFontFamily:\n\t\t'\"Roboto Flex Variable\", \"Roboto Flex\", \"Segoe UI\", sans-serif',\n\tappTheme: \"classic\",\n\tlogo: \"TEST LOGO\",\n\tappThemeMode: \"light\",\n\tdarkPopover: false,\n};\n","import { useTheme } from \"antd-style\";\nimport \"@fontsource-variable/roboto-flex\";\nimport Typography from \"../components/ui/Typography/Typography\";\nimport { useContext } from \"react\";\nimport { VerticalLayoutContext } from \"../components/layout/VerticalLayout/VerticalLayout\";\nimport { renderBlackOrWhiteText } from \"../utils/colors.util\";\nimport ConfigProvider from \"../components/ui/ConfigProvider/ConfigProvider\";\nimport { theme } from \"antd\";\nimport { useGetDefaultTheme } from \"../components/ui/ConfigProvider/defaultTheme\";\n\nexport default function DefaultLogo() {\n\tconst context = useContext(VerticalLayoutContext);\n\tconst isNestedInLayout = Boolean(context); // check if nested or not to handle colors\n\n\tconst token = useTheme();\n\tconst { useToken } = theme;\n\tconst globalToken = useToken(); // get the default, antd tokens\n\n\tconst defaultTheme = useGetDefaultTheme(token.appThemeMode); // get the default, overwritten tokens\n\n\tconst getLogo = () => {\n\t\tif (typeof token.logo === \"string\") {\n\t\t\treturn (\n\t\t\t\t<Typography.Title\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tmargin: 0,\n\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t\t}}\n\t\t\t\t\tlevel={4}\n\t\t\t\t>\n\t\t\t\t\t{token.logo}\n\t\t\t\t</Typography.Title>\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<div\n\t\t\t\tstyle={{\n\t\t\t\t\tcolor:\n\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ConfigProvider\n\t\t\t\t\ttheme={{\n\t\t\t\t\t\ttoken: { ...defaultTheme.token, ...globalToken.token },\n\t\t\t\t\t\tcomponents: {\n\t\t\t\t\t\t\tTypography: {\n\t\t\t\t\t\t\t\t...(isNestedInLayout\n\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\tcolorText:\n\t\t\t\t\t\t\t\t\t\t\t\tcontext?.mainTextColor ??\n\t\t\t\t\t\t\t\t\t\t\t\trenderBlackOrWhiteText(context?.gradients[0]),\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t: {}), // only override if its nested in the layout\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{token.logo}\n\t\t\t\t</ConfigProvider>\n\t\t\t</div>\n\t\t);\n\t};\n\n\treturn (\n\t\t<a\n\t\t\thref=\"/\"\n\t\t\tstyle={{\n\t\t\t\tcursor: \"pointer\",\n\t\t\t\ttextDecoration: \"none\",\n\t\t\t\tdisplay: \"inline-flex\",\n\t\t\t\talignItems: \"center\",\n\t\t\t}}\n\t\t>\n\t\t\t{getLogo()}\n\t\t</a>\n\t);\n}\n","export const typographyUtil = {\n\tfontSize: {\n\t\th1: 34,\n\t\th2: 28,\n\t\th3: 22,\n\t\th4: 20,\n\t\th5: 16,\n\t\tbody1: 16,\n\t\tbody2: 14,\n\t\tcaption: 12,\n\t\toverline: 11,\n\t},\n\tletterSpacing: {\n\t\th1: \".1em\",\n\t\th2: \".05em\",\n\t\th3: \".025em\",\n\t\th4: \".025em\",\n\t\th5: \".03em\",\n\t\tbody1: \".05em\",\n\t\tdefault: \".025em\",\n\t\tcaption: \".05em\",\n\t\toverline: \".1em\",\n\t},\n};\n","import { theme } from \"antd\";\n\nconst { useToken } = theme;\n\nexport const useAcaciaToken = () => {\n\tconst { token: antdToken } = useToken();\n\tconst token = antdToken;\n\n\treturn { token };\n};\n","import { generate as antdGenerate, grey } from \"@ant-design/colors\";\nimport { changeOpacity, isLight } from \"@mirawision/colorize\";\nimport { match } from \"ts-pattern\";\n\nexport const generate = (color?: string, darken?: boolean) => {\n\tconst colors = color\n\t\t? antdGenerate(color, {\n\t\t\t\ttheme: darken ? \"dark\" : \"default\",\n\t\t\t})\n\t\t: [];\n\n\tconst neutral = antdGenerate(grey[0], {\n\t\ttheme: darken ? \"dark\" : \"default\",\n\t});\n\n\treturn { colors, neutral };\n};\n\n/**\n *@description - used to handle color algorithm to return black / white depending on the color given\n * @param color - HEX color code or a string color (ex: black)\n * @returns return black or white color as string\n */\nexport const renderBlackOrWhiteText = (color: string): string => {\n\t// check if the background banner colors is considered light or dark colors\n\tconst colorIsLight = isLight(color);\n\tif (colorIsLight) {\n\t\treturn \"black\";\n\t}\n\treturn \"white\";\n};\n\nexport function hexToRGBA(hex: string, opacityPercent: number) {\n\tconst alpha = (opacityPercent / 100).toFixed(2);\n\tconst r = Number.parseInt(hex.slice(1, 3), 16);\n\tconst g = Number.parseInt(hex.slice(3, 5), 16);\n\tconst b = Number.parseInt(hex.slice(5, 7), 16);\n\treturn `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n\nexport const editOpacity = (type: \"hex\" | \"rgba\", color: string) => {\n\treturn match(type)\n\t\t.with(\"hex\", () => {\n\t\t\treturn hexToRGBA(color, 30);\n\t\t})\n\t\t.with(\"rgba\", () => {\n\t\t\treturn changeOpacity(color, 0.3);\n\t\t})\n\t\t.exhaustive();\n};\n","export type ParsedColor =\n\t| { format: \"hex\"; value: string }\n\t| { format: \"rgb\"; value: string }\n\t| { format: \"named\"; value: string };\n\nexport interface ParsedBackgroundColors {\n\tcolors: ParsedColor[];\n}\n\nfunction classifyColor(value: string): ParsedColor[\"format\"] {\n\tif (value.startsWith(\"#\")) return \"hex\";\n\tif (value.startsWith(\"rgb\")) return \"rgb\";\n\treturn \"named\";\n}\n\nconst HEX_REGEX = /#(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\b/g;\n\nconst RGB_REGEX = /rgba?\\(\\s*[\\d\\s.,%]+\\)/gi;\n\n// You should limit named colors to real CSS names\nconst NAMED_COLOR_REGEX =\n\t/\\b(aliceblue|antiquewhite|aqua|black|blue|gray|grey|green|orange|red|white|yellow)\\b/gi;\n\nexport function parseBackgroundColors(css: string): ParsedBackgroundColors {\n\tconst results: ParsedColor[] = [];\n\n\tconst push = (matches: RegExpMatchArray | null) => {\n\t\tmatches?.forEach((value) => {\n\t\t\tresults.push({\n\t\t\t\tformat: classifyColor(value),\n\t\t\t\tvalue,\n\t\t\t});\n\t\t});\n\t};\n\n\tpush(css.match(HEX_REGEX));\n\tpush(css.match(RGB_REGEX));\n\tpush(css.match(NAMED_COLOR_REGEX));\n\n\treturn {\n\t\tcolors: results,\n\t};\n}\n","import HexagonHeader from \"../assets/header1.jpg\";\nimport StripedHeader from \"../assets/header2.jpg\";\nimport MysticalHeader from \"../assets/header3.jpg\";\nimport ClassicBody from \"../assets/body.png\";\nimport MysticalBody from \"../assets/body3.png\";\nimport SubmarineBody from \"../assets/body2.png\";\nimport ClassicTitleHeader from \"../assets/cardheader.png\";\nimport SubmarineTitleHeader from \"../assets/cardheader2.png\";\nimport MysticalTitleHeader from \"../assets/cardheader3.png\";\n\nimport type { AcaciaThemes } from \"../components/ui/interfaces\";\nimport { match } from \"ts-pattern\";\n\n// for vertical layout\nexport const getThemedBackgroundPicture = (theme: AcaciaThemes) => {\n\treturn match(theme)\n\t\t.with(\"classic\", () => HexagonHeader)\n\t\t.with(\"submarine\", () => StripedHeader)\n\t\t.with(\"mystical\", () => MysticalHeader)\n\t\t.exhaustive();\n};\n\nexport const getThemedContentBackgroundPicture = (theme: AcaciaThemes) => {\n\treturn match(theme)\n\t\t.with(\"classic\", () => ClassicBody)\n\t\t.with(\"submarine\", () => SubmarineBody)\n\t\t.with(\"mystical\", () => MysticalBody)\n\t\t.exhaustive();\n};\n\n// for title headers bg\nexport const getThemedTitleHeaderBackgroundPicture = (theme: AcaciaThemes) => {\n\treturn match(theme)\n\t\t.with(\"classic\", () => ClassicTitleHeader)\n\t\t.with(\"submarine\", () => SubmarineTitleHeader)\n\t\t.with(\"mystical\", () => MysticalTitleHeader)\n\t\t.exhaustive();\n};\n","module.exports = __WEBPACK_EXTERNAL_MODULE_antd__;","module.exports = __WEBPACK_EXTERNAL_MODULE_antd_style__;","module.exports = __WEBPACK_EXTERNAL_MODULE_prop_types__;","module.exports = __WEBPACK_EXTERNAL_MODULE_react__;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Check if module exists (development only)\n\tif (__webpack_modules__[moduleId] === undefined) {\n\t\tvar e = new Error(\"Cannot find module '\" + moduleId + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(\"./src/index.tsx\");\n",""],"names":[],"ignoreList":[],"sourceRoot":""}