@ultraviolet/ui 1.77.4 → 1.78.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 (126) hide show
  1. package/dist/components/Alert/index.cjs +2 -4
  2. package/dist/components/Alert/index.js +2 -4
  3. package/dist/components/Button/index.cjs +7 -5
  4. package/dist/components/Button/index.d.ts +2 -0
  5. package/dist/components/Button/index.js +7 -5
  6. package/dist/components/Card/index.cjs +1 -2
  7. package/dist/components/Card/index.js +1 -2
  8. package/dist/components/Carousel/index.cjs +1 -2
  9. package/dist/components/Carousel/index.js +1 -2
  10. package/dist/components/Checkbox/index.cjs +3 -6
  11. package/dist/components/Checkbox/index.js +3 -6
  12. package/dist/components/CheckboxGroup/index.cjs +3 -6
  13. package/dist/components/CheckboxGroup/index.js +3 -6
  14. package/dist/components/DateInput/Context.cjs +20 -0
  15. package/dist/components/DateInput/Context.d.ts +43 -0
  16. package/dist/components/DateInput/Context.js +20 -0
  17. package/dist/components/DateInput/components/CalendarDaily.cjs +184 -0
  18. package/dist/components/DateInput/components/CalendarDaily.d.ts +3 -0
  19. package/dist/components/DateInput/components/CalendarDaily.js +182 -0
  20. package/dist/components/DateInput/components/CalendarMonthly.cjs +130 -0
  21. package/dist/components/DateInput/components/CalendarMonthly.d.ts +3 -0
  22. package/dist/components/DateInput/components/CalendarMonthly.js +128 -0
  23. package/dist/components/DateInput/components/Popup.cjs +112 -0
  24. package/dist/components/DateInput/components/Popup.d.ts +9 -0
  25. package/dist/components/DateInput/components/Popup.js +110 -0
  26. package/dist/components/DateInput/constants.cjs +10 -0
  27. package/dist/components/DateInput/constants.d.ts +4 -0
  28. package/dist/components/DateInput/constants.js +10 -0
  29. package/dist/components/DateInput/helpers.cjs +50 -0
  30. package/dist/components/DateInput/helpers.d.ts +10 -0
  31. package/dist/components/DateInput/helpers.js +50 -0
  32. package/dist/components/DateInput/helpersLocale.cjs +64 -0
  33. package/dist/components/DateInput/helpersLocale.d.ts +4 -0
  34. package/dist/components/DateInput/helpersLocale.js +64 -0
  35. package/dist/components/DateInput/index.cjs +111 -160
  36. package/dist/components/DateInput/index.d.ts +14 -12
  37. package/dist/components/DateInput/index.js +112 -160
  38. package/dist/components/Dialog/index.d.ts +2 -0
  39. package/dist/components/EmptyState/index.cjs +1 -2
  40. package/dist/components/EmptyState/index.js +1 -2
  41. package/dist/components/LineChart/CustomLegend.cjs +3 -6
  42. package/dist/components/LineChart/CustomLegend.js +3 -6
  43. package/dist/components/List/ListContext.cjs +69 -2
  44. package/dist/components/List/ListContext.d.ts +3 -1
  45. package/dist/components/List/ListContext.js +70 -3
  46. package/dist/components/List/Row.cjs +34 -12
  47. package/dist/components/List/Row.js +33 -11
  48. package/dist/components/List/SelectBar.cjs +1 -2
  49. package/dist/components/List/SelectBar.js +1 -2
  50. package/dist/components/List/SkeletonRows.cjs +2 -4
  51. package/dist/components/List/SkeletonRows.js +2 -4
  52. package/dist/components/List/index.d.ts +2 -0
  53. package/dist/components/Loader/index.cjs +1 -2
  54. package/dist/components/Loader/index.js +1 -2
  55. package/dist/components/Menu/index.cjs +3 -6
  56. package/dist/components/Menu/index.js +3 -6
  57. package/dist/components/NumberInputV2/index.cjs +1 -2
  58. package/dist/components/NumberInputV2/index.js +1 -2
  59. package/dist/components/Pagination/index.cjs +1 -2
  60. package/dist/components/Pagination/index.js +1 -2
  61. package/dist/components/PasswordStrengthMeter/index.cjs +1 -2
  62. package/dist/components/PasswordStrengthMeter/index.js +1 -2
  63. package/dist/components/PieChart/Legends.cjs +2 -4
  64. package/dist/components/PieChart/Legends.js +2 -4
  65. package/dist/components/PieChart/Tooltip.cjs +2 -4
  66. package/dist/components/PieChart/Tooltip.js +2 -4
  67. package/dist/components/Popup/index.cjs +1 -2
  68. package/dist/components/Popup/index.js +1 -2
  69. package/dist/components/Radio/index.cjs +2 -4
  70. package/dist/components/Radio/index.js +2 -4
  71. package/dist/components/RadioGroup/index.cjs +2 -4
  72. package/dist/components/RadioGroup/index.js +2 -4
  73. package/dist/components/Row/index.cjs +1 -1
  74. package/dist/components/Row/index.d.ts +0 -1
  75. package/dist/components/Row/index.js +1 -1
  76. package/dist/components/SelectInputV2/Dropdown.cjs +2 -4
  77. package/dist/components/SelectInputV2/Dropdown.js +2 -4
  78. package/dist/components/SelectInputV2/DropdownOption.cjs +3 -6
  79. package/dist/components/SelectInputV2/DropdownOption.js +3 -6
  80. package/dist/components/SelectInputV2/SelectBar.cjs +3 -6
  81. package/dist/components/SelectInputV2/SelectBar.js +3 -6
  82. package/dist/components/SelectInputV2/index.cjs +1 -2
  83. package/dist/components/SelectInputV2/index.js +1 -2
  84. package/dist/components/SelectableCard/index.cjs +2 -4
  85. package/dist/components/SelectableCard/index.js +2 -4
  86. package/dist/components/SelectableCardGroup/index.cjs +2 -4
  87. package/dist/components/SelectableCardGroup/index.js +2 -4
  88. package/dist/components/Skeleton/Donut.cjs +1 -2
  89. package/dist/components/Skeleton/Donut.js +1 -2
  90. package/dist/components/Skeleton/List.cjs +1 -2
  91. package/dist/components/Skeleton/List.js +1 -2
  92. package/dist/components/Skeleton/index.cjs +1 -2
  93. package/dist/components/Skeleton/index.js +1 -2
  94. package/dist/components/Snippet/index.cjs +2 -4
  95. package/dist/components/Snippet/index.js +2 -4
  96. package/dist/components/Stepper/Step.cjs +1 -2
  97. package/dist/components/Stepper/Step.js +1 -2
  98. package/dist/components/Table/Row.cjs +35 -12
  99. package/dist/components/Table/Row.js +34 -11
  100. package/dist/components/Table/SelectBar.cjs +1 -2
  101. package/dist/components/Table/SelectBar.js +1 -2
  102. package/dist/components/Table/SkeletonRows.cjs +2 -4
  103. package/dist/components/Table/SkeletonRows.js +2 -4
  104. package/dist/components/Table/TableContext.cjs +57 -2
  105. package/dist/components/Table/TableContext.d.ts +3 -1
  106. package/dist/components/Table/TableContext.js +58 -3
  107. package/dist/components/Table/index.d.ts +2 -0
  108. package/dist/components/Tabs/TabMenu.cjs +1 -2
  109. package/dist/components/Tabs/TabMenu.js +1 -2
  110. package/dist/components/Tag/index.cjs +1 -2
  111. package/dist/components/Tag/index.js +1 -2
  112. package/dist/components/TagList/index.cjs +1 -2
  113. package/dist/components/TagList/index.js +1 -2
  114. package/dist/components/TextArea/index.cjs +1 -2
  115. package/dist/components/TextArea/index.js +1 -2
  116. package/dist/components/TextInput/index.cjs +4 -8
  117. package/dist/components/TextInput/index.js +4 -8
  118. package/dist/components/Toggle/index.cjs +1 -2
  119. package/dist/components/Toggle/index.js +1 -2
  120. package/dist/components/ToggleGroup/index.cjs +2 -4
  121. package/dist/components/ToggleGroup/index.js +2 -4
  122. package/dist/components/Tooltip/index.cjs +1 -2
  123. package/dist/components/Tooltip/index.js +1 -2
  124. package/package.json +1 -1
  125. package/dist/components/DateInput/datepicker.css.cjs +0 -3
  126. package/dist/components/DateInput/datepicker.css.js +0 -4
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const React = require("react");
6
+ const index$3 = require("../../Button/index.cjs");
7
+ const index$1 = require("../../Popup/index.cjs");
8
+ const index$2 = require("../../Stack/index.cjs");
9
+ const index = require("../../Text/index.cjs");
10
+ const Context = require("../Context.cjs");
11
+ const constants = require("../constants.cjs");
12
+ const helpers = require("../helpers.cjs");
13
+ const CalendarDaily = require("./CalendarDaily.cjs");
14
+ const CalendarMonthly = require("./CalendarMonthly.cjs");
15
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
16
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
17
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
18
+ return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
19
+ }
20
+ const CapitalizedText = /* @__PURE__ */ _styled__default.default(index.Text, process.env.NODE_ENV === "production" ? {
21
+ target: "e17y63oo1"
22
+ } : {
23
+ target: "e17y63oo1",
24
+ label: "CapitalizedText"
25
+ })(process.env.NODE_ENV === "production" ? {
26
+ name: "88dib2",
27
+ styles: "display:inline-block;text-transform:lowercase;&::first-letter{text-transform:uppercase;}"
28
+ } : {
29
+ name: "88dib2",
30
+ styles: "display:inline-block;text-transform:lowercase;&::first-letter{text-transform:uppercase;}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhb0MiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvdWkvc3JjL2NvbXBvbmVudHMvRGF0ZUlucHV0L2NvbXBvbmVudHMvUG9wdXAudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7IERpc3BhdGNoLCBSZWFjdE5vZGUsIFJlZk9iamVjdCwgU2V0U3RhdGVBY3Rpb24gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUNvbnRleHQsIHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi8uLi9CdXR0b24nXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gJy4uLy4uL1BvcHVwJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi8uLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi9UZXh0J1xuaW1wb3J0IHsgRGF0ZUlucHV0Q29udGV4dCB9IGZyb20gJy4uL0NvbnRleHQnXG5pbXBvcnQgeyBQT1BVUF9XSURUSCB9IGZyb20gJy4uL2NvbnN0YW50cydcbmltcG9ydCB7IGdldE5leHRNb250aCwgZ2V0UHJldmlvdXNNb250aCB9IGZyb20gJy4uL2hlbHBlcnMnXG5pbXBvcnQgeyBEYWlseSB9IGZyb20gJy4vQ2FsZW5kYXJEYWlseSdcbmltcG9ydCB7IE1vbnRobHkgfSBmcm9tICcuL0NhbGVuZGFyTW9udGhseSdcblxuY29uc3QgQ2FwaXRhbGl6ZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG5cbiAgJjo6Zmlyc3QtbGV0dGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5gXG50eXBlIFBvcHVwUHJvcHMgPSB7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGVcbiAgdmlzaWJsZTogYm9vbGVhblxuICBzZXRWaXNpYmxlOiBEaXNwYXRjaDxTZXRTdGF0ZUFjdGlvbjxib29sZWFuPj5cbiAgcmVmSW5wdXQ6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PlxufVxuXG5jb25zdCBTdHlsZWRQb3B1cCA9IHN0eWxlZChQb3B1cClgXG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5vdGhlci5lbGV2YXRpb24uYmFja2dyb3VuZC5yYWlzZWR9O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC50ZXh0fTtcbiAgYm94LXNoYWRvdzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zaGFkb3dzLnJhaXNlZFswXX0sICR7dGhlbWUuc2hhZG93cy5yYWlzZWRbMV19YH07XG4gIHBhZGRpbmc6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMl19O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnJhZGlpLmRlZmF1bHR9O1xuYFxuXG5jb25zdCBoYW5kbGVDbGlja091dHNpZGUgPSAoXG4gIGV2ZW50OiBNb3VzZUV2ZW50LFxuICByZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD4sXG4gIHNldFZpc2libGU6IERpc3BhdGNoPFNldFN0YXRlQWN0aW9uPGJvb2xlYW4+PixcbiAgcmVmSW5wdXQ6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PixcbikgPT4ge1xuICBpZiAoXG4gICAgcmVmLmN1cnJlbnQgJiZcbiAgICAhcmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgIXJlZklucHV0LmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICApIHtcbiAgICBzZXRWaXNpYmxlKGZhbHNlKVxuICB9XG59XG5cbmNvbnN0IFBvcHVwQ29udGVudCA9ICgpID0+IHtcbiAgY29uc3Qge1xuICAgIHNob3dNb250aFllYXJQaWNrZXIsXG4gICAgZGlzYWJsZWQsXG4gICAgbW9udGhUb1Nob3csXG4gICAgeWVhclRvU2hvdyxcbiAgICBzZXRNb250aFRvU2hvdyxcbiAgICBzZXRZZWFyVG9TaG93LFxuICAgIG1heERhdGUsXG4gICAgbWluRGF0ZSxcbiAgICBNT05USFNfQVJSLFxuICB9ID0gdXNlQ29udGV4dChEYXRlSW5wdXRDb250ZXh0KVxuXG4gIHJldHVybiAoXG4gICAgPFN0YWNrIGdhcD17Mn0+XG4gICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCIgd2lkdGg9XCIxMDAlXCIganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCI+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBpY29uPVwiYXJyb3ctbGVmdFwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJwcmV2aW91cy1tb250aFwiXG4gICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICBzaXplPVwieHNtYWxsXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICFtaW5EYXRlIHx8XG4gICAgICAgICAgICAgIG1pbkRhdGUgPD0gbmV3IERhdGUoeWVhclRvU2hvdywgbW9udGhUb1Nob3cgLSAxLCAwKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIGlmICghc2hvd01vbnRoWWVhclBpY2tlcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtwcmV2TW9udGgsIHllYXJdID0gZ2V0UHJldmlvdXNNb250aChcbiAgICAgICAgICAgICAgICAgIG1vbnRoVG9TaG93LFxuICAgICAgICAgICAgICAgICAgeWVhclRvU2hvdyxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgc2V0TW9udGhUb1Nob3cocHJldk1vbnRoKVxuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhcilcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXJUb1Nob3cgLSAxKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17XG4gICAgICAgICAgICAhIShtaW5EYXRlICYmIG1pbkRhdGUgPiBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyAtIDEsIDApKVxuICAgICAgICAgIH1cbiAgICAgICAgLz5cbiAgICAgICAgPENhcGl0YWxpemVkVGV4dCBhcz1cInNwYW5cIiB2YXJpYW50PVwiYm9keVN0cm9uZ1wiIHNlbnRpbWVudD1cIm5ldXRyYWxcIj5cbiAgICAgICAgICB7IXNob3dNb250aFllYXJQaWNrZXIgPyBNT05USFNfQVJSW21vbnRoVG9TaG93IC0gMV0gOiBudWxsfXsnICd9XG4gICAgICAgICAge3llYXJUb1Nob3d9XG4gICAgICAgIDwvQ2FwaXRhbGl6ZWRUZXh0PlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWNvbj1cImFycm93LXJpZ2h0XCJcbiAgICAgICAgICBkYXRhLXRlc3RpZD1cIm5leHQtbW9udGhcIlxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAhbWF4RGF0ZSB8fFxuICAgICAgICAgICAgICBtYXhEYXRlID49IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93ICsgMSwgMSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBpZiAoIXNob3dNb250aFllYXJQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbbW9udGhOZXh0LCB5ZWFyXSA9IGdldE5leHRNb250aChtb250aFRvU2hvdywgeWVhclRvU2hvdylcbiAgICAgICAgICAgICAgICBzZXRNb250aFRvU2hvdyhtb250aE5leHQpXG4gICAgICAgICAgICAgICAgc2V0WWVhclRvU2hvdyh5ZWFyKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhclRvU2hvdyArIDEpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICAgIGRpc2FibGVkPXtcbiAgICAgICAgICAgICEhKG1heERhdGUgJiYgbWF4RGF0ZSA8IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93ICsgMSwgMSkpXG4gICAgICAgICAgfVxuICAgICAgICAvPlxuICAgICAgPC9TdGFjaz5cbiAgICAgIHtzaG93TW9udGhZZWFyUGlja2VyID8gKFxuICAgICAgICA8TW9udGhseSBkaXNhYmxlZD17ZGlzYWJsZWR9IC8+XG4gICAgICApIDogKFxuICAgICAgICA8RGFpbHkgZGlzYWJsZWQ9e2Rpc2FibGVkfSAvPlxuICAgICAgKX1cbiAgICA8L1N0YWNrPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBDYWxlbmRhclBvcHVwID0gKHtcbiAgY2hpbGRyZW4sXG4gIHZpc2libGUsXG4gIHNldFZpc2libGUsXG4gIHJlZklucHV0LFxufTogUG9wdXBQcm9wcykgPT4ge1xuICBjb25zdCByZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBldmVudCA9PlxuICAgICAgaGFuZGxlQ2xpY2tPdXRzaWRlKGV2ZW50LCByZWYsIHNldFZpc2libGUsIHJlZklucHV0KSxcbiAgICApXG5cbiAgICByZXR1cm4gKCkgPT5cbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGV2ZW50ID0+XG4gICAgICAgIGhhbmRsZUNsaWNrT3V0c2lkZShldmVudCwgcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dCksXG4gICAgICApXG4gIH0sIFtyZWYsIHNldFZpc2libGUsIHJlZklucHV0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRQb3B1cFxuICAgICAgdmlzaWJsZT17dmlzaWJsZX1cbiAgICAgIHRleHQ9ezxQb3B1cENvbnRlbnQgLz59XG4gICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBoYXNBcnJvdz17ZmFsc2V9XG4gICAgICB0YWJJbmRleD17MH1cbiAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgZGVib3VuY2VEZWxheT17MH1cbiAgICAgIG1heFdpZHRoPXtQT1BVUF9XSURUSH1cbiAgICAgIGRpc2FibGVBbmltYXRpb25cbiAgICAgIGFsaWduPVwic3RhcnRcIlxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L1N0eWxlZFBvcHVwPlxuICApXG59XG4iXX0= */",
31
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
32
+ });
33
+ const StyledPopup = /* @__PURE__ */ _styled__default.default(index$1.Popup, process.env.NODE_ENV === "production" ? {
34
+ target: "e17y63oo0"
35
+ } : {
36
+ target: "e17y63oo0",
37
+ label: "StyledPopup"
38
+ })("width:100%;background-color:", ({
39
+ theme
40
+ }) => theme.colors.other.elevation.background.raised, ";color:", ({
41
+ theme
42
+ }) => theme.colors.neutral.text, ";box-shadow:", ({
43
+ theme
44
+ }) => `${theme.shadows.raised[0]}, ${theme.shadows.raised[1]}`, ";padding:", ({
45
+ theme
46
+ }) => theme.space[2], ";border-radius:", ({
47
+ theme
48
+ }) => theme.radii.default, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QmlDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHR5cGUgeyBEaXNwYXRjaCwgUmVhY3ROb2RlLCBSZWZPYmplY3QsIFNldFN0YXRlQWN0aW9uIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uJ1xuaW1wb3J0IHsgUG9wdXAgfSBmcm9tICcuLi8uLi9Qb3B1cCdcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vLi4vVGV4dCdcbmltcG9ydCB7IERhdGVJbnB1dENvbnRleHQgfSBmcm9tICcuLi9Db250ZXh0J1xuaW1wb3J0IHsgUE9QVVBfV0lEVEggfSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgeyBnZXROZXh0TW9udGgsIGdldFByZXZpb3VzTW9udGggfSBmcm9tICcuLi9oZWxwZXJzJ1xuaW1wb3J0IHsgRGFpbHkgfSBmcm9tICcuL0NhbGVuZGFyRGFpbHknXG5pbXBvcnQgeyBNb250aGx5IH0gZnJvbSAnLi9DYWxlbmRhck1vbnRobHknXG5cbmNvbnN0IENhcGl0YWxpemVkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG4gICY6OmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuYFxudHlwZSBQb3B1cFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3ROb2RlXG4gIHZpc2libGU6IGJvb2xlYW5cbiAgc2V0VmlzaWJsZTogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+XG4gIHJlZklucHV0OiBSZWZPYmplY3Q8SFRNTElucHV0RWxlbWVudD5cbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoUG9wdXApYFxuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMub3RoZXIuZWxldmF0aW9uLmJhY2tncm91bmQucmFpc2VkfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUgfSkgPT4gYCR7dGhlbWUuc2hhZG93cy5yYWlzZWRbMF19LCAke3RoZW1lLnNoYWRvd3MucmFpc2VkWzFdfWB9O1xuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzJdfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbmBcblxuY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKFxuICBldmVudDogTW91c2VFdmVudCxcbiAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+LFxuICBzZXRWaXNpYmxlOiBEaXNwYXRjaDxTZXRTdGF0ZUFjdGlvbjxib29sZWFuPj4sXG4gIHJlZklucHV0OiBSZWZPYmplY3Q8SFRNTElucHV0RWxlbWVudD4sXG4pID0+IHtcbiAgaWYgKFxuICAgIHJlZi5jdXJyZW50ICYmXG4gICAgIXJlZi5jdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSAmJlxuICAgICFyZWZJbnB1dC5jdXJyZW50Py5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSlcbiAgKSB7XG4gICAgc2V0VmlzaWJsZShmYWxzZSlcbiAgfVxufVxuXG5jb25zdCBQb3B1cENvbnRlbnQgPSAoKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBzaG93TW9udGhZZWFyUGlja2VyLFxuICAgIGRpc2FibGVkLFxuICAgIG1vbnRoVG9TaG93LFxuICAgIHllYXJUb1Nob3csXG4gICAgc2V0TW9udGhUb1Nob3csXG4gICAgc2V0WWVhclRvU2hvdyxcbiAgICBtYXhEYXRlLFxuICAgIG1pbkRhdGUsXG4gICAgTU9OVEhTX0FSUixcbiAgfSA9IHVzZUNvbnRleHQoRGF0ZUlucHV0Q29udGV4dClcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgPFN0YWNrIGRpcmVjdGlvbj1cInJvd1wiIHdpZHRoPVwiMTAwJVwiIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWNvbj1cImFycm93LWxlZnRcIlxuICAgICAgICAgIGRhdGEtdGVzdGlkPVwicHJldmlvdXMtbW9udGhcIlxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAhbWluRGF0ZSB8fFxuICAgICAgICAgICAgICBtaW5EYXRlIDw9IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93IC0gMSwgMClcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBpZiAoIXNob3dNb250aFllYXJQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbcHJldk1vbnRoLCB5ZWFyXSA9IGdldFByZXZpb3VzTW9udGgoXG4gICAgICAgICAgICAgICAgICBtb250aFRvU2hvdyxcbiAgICAgICAgICAgICAgICAgIHllYXJUb1Nob3csXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIHNldE1vbnRoVG9TaG93KHByZXZNb250aClcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXIpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc2V0WWVhclRvU2hvdyh5ZWFyVG9TaG93IC0gMSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgZGlzYWJsZWQ9e1xuICAgICAgICAgICAgISEobWluRGF0ZSAmJiBtaW5EYXRlID4gbmV3IERhdGUoeWVhclRvU2hvdywgbW9udGhUb1Nob3cgLSAxLCAwKSlcbiAgICAgICAgICB9XG4gICAgICAgIC8+XG4gICAgICAgIDxDYXBpdGFsaXplZFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlTdHJvbmdcIiBzZW50aW1lbnQ9XCJuZXV0cmFsXCI+XG4gICAgICAgICAgeyFzaG93TW9udGhZZWFyUGlja2VyID8gTU9OVEhTX0FSUlttb250aFRvU2hvdyAtIDFdIDogbnVsbH17JyAnfVxuICAgICAgICAgIHt5ZWFyVG9TaG93fVxuICAgICAgICA8L0NhcGl0YWxpemVkVGV4dD5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGljb249XCJhcnJvdy1yaWdodFwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJuZXh0LW1vbnRoXCJcbiAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgIHNpemU9XCJ4c21hbGxcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgIW1heERhdGUgfHxcbiAgICAgICAgICAgICAgbWF4RGF0ZSA+PSBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyArIDEsIDEpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgaWYgKCFzaG93TW9udGhZZWFyUGlja2VyKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW21vbnRoTmV4dCwgeWVhcl0gPSBnZXROZXh0TW9udGgobW9udGhUb1Nob3csIHllYXJUb1Nob3cpXG4gICAgICAgICAgICAgICAgc2V0TW9udGhUb1Nob3cobW9udGhOZXh0KVxuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhcilcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXJUb1Nob3cgKyAxKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17XG4gICAgICAgICAgICAhIShtYXhEYXRlICYmIG1heERhdGUgPCBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyArIDEsIDEpKVxuICAgICAgICAgIH1cbiAgICAgICAgLz5cbiAgICAgIDwvU3RhY2s+XG4gICAgICB7c2hvd01vbnRoWWVhclBpY2tlciA/IChcbiAgICAgICAgPE1vbnRobHkgZGlzYWJsZWQ9e2Rpc2FibGVkfSAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPERhaWx5IGRpc2FibGVkPXtkaXNhYmxlZH0gLz5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgQ2FsZW5kYXJQb3B1cCA9ICh7XG4gIGNoaWxkcmVuLFxuICB2aXNpYmxlLFxuICBzZXRWaXNpYmxlLFxuICByZWZJbnB1dCxcbn06IFBvcHVwUHJvcHMpID0+IHtcbiAgY29uc3QgcmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgZXZlbnQgPT5cbiAgICAgIGhhbmRsZUNsaWNrT3V0c2lkZShldmVudCwgcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dCksXG4gICAgKVxuXG4gICAgcmV0dXJuICgpID0+XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBldmVudCA9PlxuICAgICAgICBoYW5kbGVDbGlja091dHNpZGUoZXZlbnQsIHJlZiwgc2V0VmlzaWJsZSwgcmVmSW5wdXQpLFxuICAgICAgKVxuICB9LCBbcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dF0pXG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkUG9wdXBcbiAgICAgIHZpc2libGU9e3Zpc2libGV9XG4gICAgICB0ZXh0PXs8UG9wdXBDb250ZW50IC8+fVxuICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgIHJlZj17cmVmfVxuICAgICAgaGFzQXJyb3c9e2ZhbHNlfVxuICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICByb2xlPVwiZGlhbG9nXCJcbiAgICAgIGRlYm91bmNlRGVsYXk9ezB9XG4gICAgICBtYXhXaWR0aD17UE9QVVBfV0lEVEh9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uXG4gICAgICBhbGlnbj1cInN0YXJ0XCJcbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9TdHlsZWRQb3B1cD5cbiAgKVxufVxuIl19 */"));
49
+ const handleClickOutside = (event, ref, setVisible, refInput) => {
50
+ if (ref.current && !ref.current.contains(event.target) && !refInput.current?.contains(event.target)) {
51
+ setVisible(false);
52
+ }
53
+ };
54
+ const PopupContent = () => {
55
+ const {
56
+ showMonthYearPicker,
57
+ disabled,
58
+ monthToShow,
59
+ yearToShow,
60
+ setMonthToShow,
61
+ setYearToShow,
62
+ maxDate,
63
+ minDate,
64
+ MONTHS_ARR
65
+ } = React.useContext(Context.DateInputContext);
66
+ return /* @__PURE__ */ jsxRuntime.jsxs(index$2.Stack, { gap: 2, children: [
67
+ /* @__PURE__ */ jsxRuntime.jsxs(index$2.Stack, { direction: "row", width: "100%", justifyContent: "space-between", children: [
68
+ /* @__PURE__ */ jsxRuntime.jsx(index$3.Button, { icon: "arrow-left", "data-testid": "previous-month", variant: "ghost", sentiment: "neutral", size: "xsmall", onClick: () => {
69
+ if (!minDate || minDate <= new Date(yearToShow, monthToShow - 1, 0)) {
70
+ if (!showMonthYearPicker) {
71
+ const [prevMonth, year] = helpers.getPreviousMonth(monthToShow, yearToShow);
72
+ setMonthToShow(prevMonth);
73
+ setYearToShow(year);
74
+ } else {
75
+ setYearToShow(yearToShow - 1);
76
+ }
77
+ }
78
+ }, disabled: !!(minDate && minDate > new Date(yearToShow, monthToShow - 1, 0)) }),
79
+ /* @__PURE__ */ jsxRuntime.jsxs(CapitalizedText, { as: "span", variant: "bodyStrong", sentiment: "neutral", children: [
80
+ !showMonthYearPicker ? MONTHS_ARR[monthToShow - 1] : null,
81
+ " ",
82
+ yearToShow
83
+ ] }),
84
+ /* @__PURE__ */ jsxRuntime.jsx(index$3.Button, { icon: "arrow-right", "data-testid": "next-month", variant: "ghost", sentiment: "neutral", size: "xsmall", onClick: () => {
85
+ if (!maxDate || maxDate >= new Date(yearToShow, monthToShow + 1, 1)) {
86
+ if (!showMonthYearPicker) {
87
+ const [monthNext, year] = helpers.getNextMonth(monthToShow, yearToShow);
88
+ setMonthToShow(monthNext);
89
+ setYearToShow(year);
90
+ } else {
91
+ setYearToShow(yearToShow + 1);
92
+ }
93
+ }
94
+ }, disabled: !!(maxDate && maxDate < new Date(yearToShow, monthToShow + 1, 1)) })
95
+ ] }),
96
+ showMonthYearPicker ? /* @__PURE__ */ jsxRuntime.jsx(CalendarMonthly.Monthly, { disabled }) : /* @__PURE__ */ jsxRuntime.jsx(CalendarDaily.Daily, { disabled })
97
+ ] });
98
+ };
99
+ const CalendarPopup = ({
100
+ children,
101
+ visible,
102
+ setVisible,
103
+ refInput
104
+ }) => {
105
+ const ref = React.useRef(null);
106
+ React.useEffect(() => {
107
+ document.addEventListener("mousedown", (event) => handleClickOutside(event, ref, setVisible, refInput));
108
+ return () => document.removeEventListener("mousedown", (event) => handleClickOutside(event, ref, setVisible, refInput));
109
+ }, [ref, setVisible, refInput]);
110
+ return /* @__PURE__ */ jsxRuntime.jsx(StyledPopup, { visible, text: /* @__PURE__ */ jsxRuntime.jsx(PopupContent, {}), placement: "bottom", ref, hasArrow: false, tabIndex: 0, role: "dialog", debounceDelay: 0, maxWidth: constants.POPUP_WIDTH, disableAnimation: true, align: "start", children });
111
+ };
112
+ exports.CalendarPopup = CalendarPopup;
@@ -0,0 +1,9 @@
1
+ import type { Dispatch, ReactNode, RefObject, SetStateAction } from 'react';
2
+ type PopupProps = {
3
+ children: ReactNode;
4
+ visible: boolean;
5
+ setVisible: Dispatch<SetStateAction<boolean>>;
6
+ refInput: RefObject<HTMLInputElement>;
7
+ };
8
+ export declare const CalendarPopup: ({ children, visible, setVisible, refInput, }: PopupProps) => import("@emotion/react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,110 @@
1
+ import { jsx, jsxs } from "@emotion/react/jsx-runtime";
2
+ import _styled from "@emotion/styled/base";
3
+ import { useRef, useEffect, useContext } from "react";
4
+ import { Button } from "../../Button/index.js";
5
+ import { Popup } from "../../Popup/index.js";
6
+ import { Stack } from "../../Stack/index.js";
7
+ import { Text } from "../../Text/index.js";
8
+ import { DateInputContext } from "../Context.js";
9
+ import { POPUP_WIDTH } from "../constants.js";
10
+ import { getPreviousMonth, getNextMonth } from "../helpers.js";
11
+ import { Daily } from "./CalendarDaily.js";
12
+ import { Monthly } from "./CalendarMonthly.js";
13
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() {
14
+ return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
15
+ }
16
+ const CapitalizedText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
17
+ target: "e17y63oo1"
18
+ } : {
19
+ target: "e17y63oo1",
20
+ label: "CapitalizedText"
21
+ })(process.env.NODE_ENV === "production" ? {
22
+ name: "88dib2",
23
+ styles: "display:inline-block;text-transform:lowercase;&::first-letter{text-transform:uppercase;}"
24
+ } : {
25
+ name: "88dib2",
26
+ styles: "display:inline-block;text-transform:lowercase;&::first-letter{text-transform:uppercase;}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFhb0MiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvdWkvc3JjL2NvbXBvbmVudHMvRGF0ZUlucHV0L2NvbXBvbmVudHMvUG9wdXAudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7IERpc3BhdGNoLCBSZWFjdE5vZGUsIFJlZk9iamVjdCwgU2V0U3RhdGVBY3Rpb24gfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUNvbnRleHQsIHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi8uLi9CdXR0b24nXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gJy4uLy4uL1BvcHVwJ1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICcuLi8uLi9TdGFjaydcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi9UZXh0J1xuaW1wb3J0IHsgRGF0ZUlucHV0Q29udGV4dCB9IGZyb20gJy4uL0NvbnRleHQnXG5pbXBvcnQgeyBQT1BVUF9XSURUSCB9IGZyb20gJy4uL2NvbnN0YW50cydcbmltcG9ydCB7IGdldE5leHRNb250aCwgZ2V0UHJldmlvdXNNb250aCB9IGZyb20gJy4uL2hlbHBlcnMnXG5pbXBvcnQgeyBEYWlseSB9IGZyb20gJy4vQ2FsZW5kYXJEYWlseSdcbmltcG9ydCB7IE1vbnRobHkgfSBmcm9tICcuL0NhbGVuZGFyTW9udGhseSdcblxuY29uc3QgQ2FwaXRhbGl6ZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG5cbiAgJjo6Zmlyc3QtbGV0dGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5gXG50eXBlIFBvcHVwUHJvcHMgPSB7XG4gIGNoaWxkcmVuOiBSZWFjdE5vZGVcbiAgdmlzaWJsZTogYm9vbGVhblxuICBzZXRWaXNpYmxlOiBEaXNwYXRjaDxTZXRTdGF0ZUFjdGlvbjxib29sZWFuPj5cbiAgcmVmSW5wdXQ6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PlxufVxuXG5jb25zdCBTdHlsZWRQb3B1cCA9IHN0eWxlZChQb3B1cClgXG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5vdGhlci5lbGV2YXRpb24uYmFja2dyb3VuZC5yYWlzZWR9O1xuICBjb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMubmV1dHJhbC50ZXh0fTtcbiAgYm94LXNoYWRvdzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zaGFkb3dzLnJhaXNlZFswXX0sICR7dGhlbWUuc2hhZG93cy5yYWlzZWRbMV19YH07XG4gIHBhZGRpbmc6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbMl19O1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnJhZGlpLmRlZmF1bHR9O1xuYFxuXG5jb25zdCBoYW5kbGVDbGlja091dHNpZGUgPSAoXG4gIGV2ZW50OiBNb3VzZUV2ZW50LFxuICByZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD4sXG4gIHNldFZpc2libGU6IERpc3BhdGNoPFNldFN0YXRlQWN0aW9uPGJvb2xlYW4+PixcbiAgcmVmSW5wdXQ6IFJlZk9iamVjdDxIVE1MSW5wdXRFbGVtZW50PixcbikgPT4ge1xuICBpZiAoXG4gICAgcmVmLmN1cnJlbnQgJiZcbiAgICAhcmVmLmN1cnJlbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpICYmXG4gICAgIXJlZklucHV0LmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKVxuICApIHtcbiAgICBzZXRWaXNpYmxlKGZhbHNlKVxuICB9XG59XG5cbmNvbnN0IFBvcHVwQ29udGVudCA9ICgpID0+IHtcbiAgY29uc3Qge1xuICAgIHNob3dNb250aFllYXJQaWNrZXIsXG4gICAgZGlzYWJsZWQsXG4gICAgbW9udGhUb1Nob3csXG4gICAgeWVhclRvU2hvdyxcbiAgICBzZXRNb250aFRvU2hvdyxcbiAgICBzZXRZZWFyVG9TaG93LFxuICAgIG1heERhdGUsXG4gICAgbWluRGF0ZSxcbiAgICBNT05USFNfQVJSLFxuICB9ID0gdXNlQ29udGV4dChEYXRlSW5wdXRDb250ZXh0KVxuXG4gIHJldHVybiAoXG4gICAgPFN0YWNrIGdhcD17Mn0+XG4gICAgICA8U3RhY2sgZGlyZWN0aW9uPVwicm93XCIgd2lkdGg9XCIxMDAlXCIganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCI+XG4gICAgICAgIDxCdXR0b25cbiAgICAgICAgICBpY29uPVwiYXJyb3ctbGVmdFwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJwcmV2aW91cy1tb250aFwiXG4gICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICBzZW50aW1lbnQ9XCJuZXV0cmFsXCJcbiAgICAgICAgICBzaXplPVwieHNtYWxsXCJcbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICFtaW5EYXRlIHx8XG4gICAgICAgICAgICAgIG1pbkRhdGUgPD0gbmV3IERhdGUoeWVhclRvU2hvdywgbW9udGhUb1Nob3cgLSAxLCAwKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIGlmICghc2hvd01vbnRoWWVhclBpY2tlcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IFtwcmV2TW9udGgsIHllYXJdID0gZ2V0UHJldmlvdXNNb250aChcbiAgICAgICAgICAgICAgICAgIG1vbnRoVG9TaG93LFxuICAgICAgICAgICAgICAgICAgeWVhclRvU2hvdyxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgc2V0TW9udGhUb1Nob3cocHJldk1vbnRoKVxuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhcilcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXJUb1Nob3cgLSAxKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17XG4gICAgICAgICAgICAhIShtaW5EYXRlICYmIG1pbkRhdGUgPiBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyAtIDEsIDApKVxuICAgICAgICAgIH1cbiAgICAgICAgLz5cbiAgICAgICAgPENhcGl0YWxpemVkVGV4dCBhcz1cInNwYW5cIiB2YXJpYW50PVwiYm9keVN0cm9uZ1wiIHNlbnRpbWVudD1cIm5ldXRyYWxcIj5cbiAgICAgICAgICB7IXNob3dNb250aFllYXJQaWNrZXIgPyBNT05USFNfQVJSW21vbnRoVG9TaG93IC0gMV0gOiBudWxsfXsnICd9XG4gICAgICAgICAge3llYXJUb1Nob3d9XG4gICAgICAgIDwvQ2FwaXRhbGl6ZWRUZXh0PlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWNvbj1cImFycm93LXJpZ2h0XCJcbiAgICAgICAgICBkYXRhLXRlc3RpZD1cIm5leHQtbW9udGhcIlxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAhbWF4RGF0ZSB8fFxuICAgICAgICAgICAgICBtYXhEYXRlID49IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93ICsgMSwgMSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBpZiAoIXNob3dNb250aFllYXJQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbbW9udGhOZXh0LCB5ZWFyXSA9IGdldE5leHRNb250aChtb250aFRvU2hvdywgeWVhclRvU2hvdylcbiAgICAgICAgICAgICAgICBzZXRNb250aFRvU2hvdyhtb250aE5leHQpXG4gICAgICAgICAgICAgICAgc2V0WWVhclRvU2hvdyh5ZWFyKVxuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhclRvU2hvdyArIDEpXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICAgIGRpc2FibGVkPXtcbiAgICAgICAgICAgICEhKG1heERhdGUgJiYgbWF4RGF0ZSA8IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93ICsgMSwgMSkpXG4gICAgICAgICAgfVxuICAgICAgICAvPlxuICAgICAgPC9TdGFjaz5cbiAgICAgIHtzaG93TW9udGhZZWFyUGlja2VyID8gKFxuICAgICAgICA8TW9udGhseSBkaXNhYmxlZD17ZGlzYWJsZWR9IC8+XG4gICAgICApIDogKFxuICAgICAgICA8RGFpbHkgZGlzYWJsZWQ9e2Rpc2FibGVkfSAvPlxuICAgICAgKX1cbiAgICA8L1N0YWNrPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBDYWxlbmRhclBvcHVwID0gKHtcbiAgY2hpbGRyZW4sXG4gIHZpc2libGUsXG4gIHNldFZpc2libGUsXG4gIHJlZklucHV0LFxufTogUG9wdXBQcm9wcykgPT4ge1xuICBjb25zdCByZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpXG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBldmVudCA9PlxuICAgICAgaGFuZGxlQ2xpY2tPdXRzaWRlKGV2ZW50LCByZWYsIHNldFZpc2libGUsIHJlZklucHV0KSxcbiAgICApXG5cbiAgICByZXR1cm4gKCkgPT5cbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGV2ZW50ID0+XG4gICAgICAgIGhhbmRsZUNsaWNrT3V0c2lkZShldmVudCwgcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dCksXG4gICAgICApXG4gIH0sIFtyZWYsIHNldFZpc2libGUsIHJlZklucHV0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRQb3B1cFxuICAgICAgdmlzaWJsZT17dmlzaWJsZX1cbiAgICAgIHRleHQ9ezxQb3B1cENvbnRlbnQgLz59XG4gICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBoYXNBcnJvdz17ZmFsc2V9XG4gICAgICB0YWJJbmRleD17MH1cbiAgICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICAgZGVib3VuY2VEZWxheT17MH1cbiAgICAgIG1heFdpZHRoPXtQT1BVUF9XSURUSH1cbiAgICAgIGRpc2FibGVBbmltYXRpb25cbiAgICAgIGFsaWduPVwic3RhcnRcIlxuICAgID5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L1N0eWxlZFBvcHVwPlxuICApXG59XG4iXX0= */",
27
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
28
+ });
29
+ const StyledPopup = /* @__PURE__ */ _styled(Popup, process.env.NODE_ENV === "production" ? {
30
+ target: "e17y63oo0"
31
+ } : {
32
+ target: "e17y63oo0",
33
+ label: "StyledPopup"
34
+ })("width:100%;background-color:", ({
35
+ theme
36
+ }) => theme.colors.other.elevation.background.raised, ";color:", ({
37
+ theme
38
+ }) => theme.colors.neutral.text, ";box-shadow:", ({
39
+ theme
40
+ }) => `${theme.shadows.raised[0]}, ${theme.shadows.raised[1]}`, ";padding:", ({
41
+ theme
42
+ }) => theme.space[2], ";border-radius:", ({
43
+ theme
44
+ }) => theme.radii.default, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0QmlDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL0RhdGVJbnB1dC9jb21wb25lbnRzL1BvcHVwLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHR5cGUgeyBEaXNwYXRjaCwgUmVhY3ROb2RlLCBSZWZPYmplY3QsIFNldFN0YXRlQWN0aW9uIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vLi4vQnV0dG9uJ1xuaW1wb3J0IHsgUG9wdXAgfSBmcm9tICcuLi8uLi9Qb3B1cCdcbmltcG9ydCB7IFN0YWNrIH0gZnJvbSAnLi4vLi4vU3RhY2snXG5pbXBvcnQgeyBUZXh0IH0gZnJvbSAnLi4vLi4vVGV4dCdcbmltcG9ydCB7IERhdGVJbnB1dENvbnRleHQgfSBmcm9tICcuLi9Db250ZXh0J1xuaW1wb3J0IHsgUE9QVVBfV0lEVEggfSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgeyBnZXROZXh0TW9udGgsIGdldFByZXZpb3VzTW9udGggfSBmcm9tICcuLi9oZWxwZXJzJ1xuaW1wb3J0IHsgRGFpbHkgfSBmcm9tICcuL0NhbGVuZGFyRGFpbHknXG5pbXBvcnQgeyBNb250aGx5IH0gZnJvbSAnLi9DYWxlbmRhck1vbnRobHknXG5cbmNvbnN0IENhcGl0YWxpemVkVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG4gICY6OmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuYFxudHlwZSBQb3B1cFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3ROb2RlXG4gIHZpc2libGU6IGJvb2xlYW5cbiAgc2V0VmlzaWJsZTogRGlzcGF0Y2g8U2V0U3RhdGVBY3Rpb248Ym9vbGVhbj4+XG4gIHJlZklucHV0OiBSZWZPYmplY3Q8SFRNTElucHV0RWxlbWVudD5cbn1cblxuY29uc3QgU3R5bGVkUG9wdXAgPSBzdHlsZWQoUG9wdXApYFxuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5jb2xvcnMub3RoZXIuZWxldmF0aW9uLmJhY2tncm91bmQucmFpc2VkfTtcbiAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm5ldXRyYWwudGV4dH07XG4gIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUgfSkgPT4gYCR7dGhlbWUuc2hhZG93cy5yYWlzZWRbMF19LCAke3RoZW1lLnNoYWRvd3MucmFpc2VkWzFdfWB9O1xuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWzJdfTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbmBcblxuY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gKFxuICBldmVudDogTW91c2VFdmVudCxcbiAgcmVmOiBSZWZPYmplY3Q8SFRNTERpdkVsZW1lbnQ+LFxuICBzZXRWaXNpYmxlOiBEaXNwYXRjaDxTZXRTdGF0ZUFjdGlvbjxib29sZWFuPj4sXG4gIHJlZklucHV0OiBSZWZPYmplY3Q8SFRNTElucHV0RWxlbWVudD4sXG4pID0+IHtcbiAgaWYgKFxuICAgIHJlZi5jdXJyZW50ICYmXG4gICAgIXJlZi5jdXJyZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBOb2RlKSAmJlxuICAgICFyZWZJbnB1dC5jdXJyZW50Py5jb250YWlucyhldmVudC50YXJnZXQgYXMgTm9kZSlcbiAgKSB7XG4gICAgc2V0VmlzaWJsZShmYWxzZSlcbiAgfVxufVxuXG5jb25zdCBQb3B1cENvbnRlbnQgPSAoKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBzaG93TW9udGhZZWFyUGlja2VyLFxuICAgIGRpc2FibGVkLFxuICAgIG1vbnRoVG9TaG93LFxuICAgIHllYXJUb1Nob3csXG4gICAgc2V0TW9udGhUb1Nob3csXG4gICAgc2V0WWVhclRvU2hvdyxcbiAgICBtYXhEYXRlLFxuICAgIG1pbkRhdGUsXG4gICAgTU9OVEhTX0FSUixcbiAgfSA9IHVzZUNvbnRleHQoRGF0ZUlucHV0Q29udGV4dClcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgPFN0YWNrIGRpcmVjdGlvbj1cInJvd1wiIHdpZHRoPVwiMTAwJVwiIGp1c3RpZnlDb250ZW50PVwic3BhY2UtYmV0d2VlblwiPlxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgaWNvbj1cImFycm93LWxlZnRcIlxuICAgICAgICAgIGRhdGEtdGVzdGlkPVwicHJldmlvdXMtbW9udGhcIlxuICAgICAgICAgIHZhcmlhbnQ9XCJnaG9zdFwiXG4gICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgc2l6ZT1cInhzbWFsbFwiXG4gICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAhbWluRGF0ZSB8fFxuICAgICAgICAgICAgICBtaW5EYXRlIDw9IG5ldyBEYXRlKHllYXJUb1Nob3csIG1vbnRoVG9TaG93IC0gMSwgMClcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICBpZiAoIXNob3dNb250aFllYXJQaWNrZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBbcHJldk1vbnRoLCB5ZWFyXSA9IGdldFByZXZpb3VzTW9udGgoXG4gICAgICAgICAgICAgICAgICBtb250aFRvU2hvdyxcbiAgICAgICAgICAgICAgICAgIHllYXJUb1Nob3csXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIHNldE1vbnRoVG9TaG93KHByZXZNb250aClcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXIpXG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgc2V0WWVhclRvU2hvdyh5ZWFyVG9TaG93IC0gMSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgZGlzYWJsZWQ9e1xuICAgICAgICAgICAgISEobWluRGF0ZSAmJiBtaW5EYXRlID4gbmV3IERhdGUoeWVhclRvU2hvdywgbW9udGhUb1Nob3cgLSAxLCAwKSlcbiAgICAgICAgICB9XG4gICAgICAgIC8+XG4gICAgICAgIDxDYXBpdGFsaXplZFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlTdHJvbmdcIiBzZW50aW1lbnQ9XCJuZXV0cmFsXCI+XG4gICAgICAgICAgeyFzaG93TW9udGhZZWFyUGlja2VyID8gTU9OVEhTX0FSUlttb250aFRvU2hvdyAtIDFdIDogbnVsbH17JyAnfVxuICAgICAgICAgIHt5ZWFyVG9TaG93fVxuICAgICAgICA8L0NhcGl0YWxpemVkVGV4dD5cbiAgICAgICAgPEJ1dHRvblxuICAgICAgICAgIGljb249XCJhcnJvdy1yaWdodFwiXG4gICAgICAgICAgZGF0YS10ZXN0aWQ9XCJuZXh0LW1vbnRoXCJcbiAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgIHNlbnRpbWVudD1cIm5ldXRyYWxcIlxuICAgICAgICAgIHNpemU9XCJ4c21hbGxcIlxuICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgIW1heERhdGUgfHxcbiAgICAgICAgICAgICAgbWF4RGF0ZSA+PSBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyArIDEsIDEpXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgaWYgKCFzaG93TW9udGhZZWFyUGlja2VyKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW21vbnRoTmV4dCwgeWVhcl0gPSBnZXROZXh0TW9udGgobW9udGhUb1Nob3csIHllYXJUb1Nob3cpXG4gICAgICAgICAgICAgICAgc2V0TW9udGhUb1Nob3cobW9udGhOZXh0KVxuICAgICAgICAgICAgICAgIHNldFllYXJUb1Nob3coeWVhcilcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBzZXRZZWFyVG9TaG93KHllYXJUb1Nob3cgKyAxKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfX1cbiAgICAgICAgICBkaXNhYmxlZD17XG4gICAgICAgICAgICAhIShtYXhEYXRlICYmIG1heERhdGUgPCBuZXcgRGF0ZSh5ZWFyVG9TaG93LCBtb250aFRvU2hvdyArIDEsIDEpKVxuICAgICAgICAgIH1cbiAgICAgICAgLz5cbiAgICAgIDwvU3RhY2s+XG4gICAgICB7c2hvd01vbnRoWWVhclBpY2tlciA/IChcbiAgICAgICAgPE1vbnRobHkgZGlzYWJsZWQ9e2Rpc2FibGVkfSAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPERhaWx5IGRpc2FibGVkPXtkaXNhYmxlZH0gLz5cbiAgICAgICl9XG4gICAgPC9TdGFjaz5cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgQ2FsZW5kYXJQb3B1cCA9ICh7XG4gIGNoaWxkcmVuLFxuICB2aXNpYmxlLFxuICBzZXRWaXNpYmxlLFxuICByZWZJbnB1dCxcbn06IFBvcHVwUHJvcHMpID0+IHtcbiAgY29uc3QgcmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgZXZlbnQgPT5cbiAgICAgIGhhbmRsZUNsaWNrT3V0c2lkZShldmVudCwgcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dCksXG4gICAgKVxuXG4gICAgcmV0dXJuICgpID0+XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBldmVudCA9PlxuICAgICAgICBoYW5kbGVDbGlja091dHNpZGUoZXZlbnQsIHJlZiwgc2V0VmlzaWJsZSwgcmVmSW5wdXQpLFxuICAgICAgKVxuICB9LCBbcmVmLCBzZXRWaXNpYmxlLCByZWZJbnB1dF0pXG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkUG9wdXBcbiAgICAgIHZpc2libGU9e3Zpc2libGV9XG4gICAgICB0ZXh0PXs8UG9wdXBDb250ZW50IC8+fVxuICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgIHJlZj17cmVmfVxuICAgICAgaGFzQXJyb3c9e2ZhbHNlfVxuICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICByb2xlPVwiZGlhbG9nXCJcbiAgICAgIGRlYm91bmNlRGVsYXk9ezB9XG4gICAgICBtYXhXaWR0aD17UE9QVVBfV0lEVEh9XG4gICAgICBkaXNhYmxlQW5pbWF0aW9uXG4gICAgICBhbGlnbj1cInN0YXJ0XCJcbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9TdHlsZWRQb3B1cD5cbiAgKVxufVxuIl19 */"));
45
+ const handleClickOutside = (event, ref, setVisible, refInput) => {
46
+ if (ref.current && !ref.current.contains(event.target) && !refInput.current?.contains(event.target)) {
47
+ setVisible(false);
48
+ }
49
+ };
50
+ const PopupContent = () => {
51
+ const {
52
+ showMonthYearPicker,
53
+ disabled,
54
+ monthToShow,
55
+ yearToShow,
56
+ setMonthToShow,
57
+ setYearToShow,
58
+ maxDate,
59
+ minDate,
60
+ MONTHS_ARR
61
+ } = useContext(DateInputContext);
62
+ return /* @__PURE__ */ jsxs(Stack, { gap: 2, children: [
63
+ /* @__PURE__ */ jsxs(Stack, { direction: "row", width: "100%", justifyContent: "space-between", children: [
64
+ /* @__PURE__ */ jsx(Button, { icon: "arrow-left", "data-testid": "previous-month", variant: "ghost", sentiment: "neutral", size: "xsmall", onClick: () => {
65
+ if (!minDate || minDate <= new Date(yearToShow, monthToShow - 1, 0)) {
66
+ if (!showMonthYearPicker) {
67
+ const [prevMonth, year] = getPreviousMonth(monthToShow, yearToShow);
68
+ setMonthToShow(prevMonth);
69
+ setYearToShow(year);
70
+ } else {
71
+ setYearToShow(yearToShow - 1);
72
+ }
73
+ }
74
+ }, disabled: !!(minDate && minDate > new Date(yearToShow, monthToShow - 1, 0)) }),
75
+ /* @__PURE__ */ jsxs(CapitalizedText, { as: "span", variant: "bodyStrong", sentiment: "neutral", children: [
76
+ !showMonthYearPicker ? MONTHS_ARR[monthToShow - 1] : null,
77
+ " ",
78
+ yearToShow
79
+ ] }),
80
+ /* @__PURE__ */ jsx(Button, { icon: "arrow-right", "data-testid": "next-month", variant: "ghost", sentiment: "neutral", size: "xsmall", onClick: () => {
81
+ if (!maxDate || maxDate >= new Date(yearToShow, monthToShow + 1, 1)) {
82
+ if (!showMonthYearPicker) {
83
+ const [monthNext, year] = getNextMonth(monthToShow, yearToShow);
84
+ setMonthToShow(monthNext);
85
+ setYearToShow(year);
86
+ } else {
87
+ setYearToShow(yearToShow + 1);
88
+ }
89
+ }
90
+ }, disabled: !!(maxDate && maxDate < new Date(yearToShow, monthToShow + 1, 1)) })
91
+ ] }),
92
+ showMonthYearPicker ? /* @__PURE__ */ jsx(Monthly, { disabled }) : /* @__PURE__ */ jsx(Daily, { disabled })
93
+ ] });
94
+ };
95
+ const CalendarPopup = ({
96
+ children,
97
+ visible,
98
+ setVisible,
99
+ refInput
100
+ }) => {
101
+ const ref = useRef(null);
102
+ useEffect(() => {
103
+ document.addEventListener("mousedown", (event) => handleClickOutside(event, ref, setVisible, refInput));
104
+ return () => document.removeEventListener("mousedown", (event) => handleClickOutside(event, ref, setVisible, refInput));
105
+ }, [ref, setVisible, refInput]);
106
+ return /* @__PURE__ */ jsx(StyledPopup, { visible, text: /* @__PURE__ */ jsx(PopupContent, {}), placement: "bottom", ref, hasArrow: false, tabIndex: 0, role: "dialog", debounceDelay: 0, maxWidth: POPUP_WIDTH, disableAnimation: true, align: "start", children });
107
+ };
108
+ export {
109
+ CalendarPopup
110
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const POPUP_WIDTH = "16.5rem";
4
+ const CURRENT_YEAR = (/* @__PURE__ */ new Date()).getFullYear();
5
+ const CURRENT_MONTH = (/* @__PURE__ */ new Date()).getMonth() + 1;
6
+ const CALENDAR_WEEKS = 6;
7
+ exports.CALENDAR_WEEKS = CALENDAR_WEEKS;
8
+ exports.CURRENT_MONTH = CURRENT_MONTH;
9
+ exports.CURRENT_YEAR = CURRENT_YEAR;
10
+ exports.POPUP_WIDTH = POPUP_WIDTH;
@@ -0,0 +1,4 @@
1
+ export declare const POPUP_WIDTH = "16.5rem";
2
+ export declare const CURRENT_YEAR: number;
3
+ export declare const CURRENT_MONTH: number;
4
+ export declare const CALENDAR_WEEKS = 6;
@@ -0,0 +1,10 @@
1
+ const POPUP_WIDTH = "16.5rem";
2
+ const CURRENT_YEAR = (/* @__PURE__ */ new Date()).getFullYear();
3
+ const CURRENT_MONTH = (/* @__PURE__ */ new Date()).getMonth() + 1;
4
+ const CALENDAR_WEEKS = 6;
5
+ export {
6
+ CALENDAR_WEEKS,
7
+ CURRENT_MONTH,
8
+ CURRENT_YEAR,
9
+ POPUP_WIDTH
10
+ };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const constants = require("./constants.cjs");
4
+ const getMonthFirstDay = (month = constants.CURRENT_MONTH, year = constants.CURRENT_YEAR) => {
5
+ const firstDay = new Date(year, month - 1, 1).getDay();
6
+ return firstDay === 0 ? 6 : firstDay - 1;
7
+ };
8
+ const addZero = (value) => `${value}`.padStart(2, "0");
9
+ const getPreviousMonth = (month, year) => {
10
+ if (month === 1) {
11
+ return [12, year - 1];
12
+ }
13
+ return [month - 1, year];
14
+ };
15
+ const getNextMonth = (month, year) => {
16
+ if (month === 12) {
17
+ return [1, year + 1];
18
+ }
19
+ return [month + 1, year];
20
+ };
21
+ const isSameMonth = (date, basedate = /* @__PURE__ */ new Date()) => basedate.getMonth() === date.getMonth() && basedate.getFullYear() === date.getFullYear();
22
+ const isSameDay = (date, basedate = /* @__PURE__ */ new Date()) => basedate.getDate() === date.getDate() && basedate.getMonth() + 1 === date.getMonth() + 1 && basedate.getFullYear() === date.getFullYear();
23
+ const getDateISO = (showMonthYearPicker, date) => {
24
+ if (date) {
25
+ if (showMonthYearPicker) {
26
+ return [addZero(date.getMonth() + 1), date.getFullYear()].join("/");
27
+ }
28
+ return [addZero(date.getMonth() + 1), addZero(date.getDate()), date.getFullYear()].join("/");
29
+ }
30
+ return "";
31
+ };
32
+ const formatValue = (computedValue, computedRange, showMonthYearPicker, selectsRange, format) => {
33
+ if (selectsRange && computedRange) {
34
+ return format ? `${format(computedRange.start ?? void 0) ? `${format(computedRange.start ?? void 0)} - ` : ""}${format(computedRange.end ?? void 0) ?? ""}` : `${getDateISO(showMonthYearPicker, computedRange.start ?? void 0)}${computedRange.start ? " - " : ""}${getDateISO(showMonthYearPicker, computedRange.end ?? void 0)}`;
35
+ }
36
+ if (computedValue && format) {
37
+ return format(computedValue);
38
+ }
39
+ if (computedValue) {
40
+ return getDateISO(showMonthYearPicker, computedValue);
41
+ }
42
+ return void 0;
43
+ };
44
+ exports.addZero = addZero;
45
+ exports.formatValue = formatValue;
46
+ exports.getMonthFirstDay = getMonthFirstDay;
47
+ exports.getNextMonth = getNextMonth;
48
+ exports.getPreviousMonth = getPreviousMonth;
49
+ exports.isSameDay = isSameDay;
50
+ exports.isSameMonth = isSameMonth;
@@ -0,0 +1,10 @@
1
+ export declare const getMonthFirstDay: (month?: number, year?: number) => number;
2
+ export declare const addZero: (value: number) => string;
3
+ export declare const getPreviousMonth: (month: number, year: number) => number[];
4
+ export declare const getNextMonth: (month: number, year: number) => number[];
5
+ export declare const isSameMonth: (date: Date, basedate?: Date) => boolean;
6
+ export declare const isSameDay: (date: Date, basedate?: Date) => boolean;
7
+ export declare const formatValue: (computedValue: Date | null, computedRange: {
8
+ start: Date | null;
9
+ end: Date | null;
10
+ } | null, showMonthYearPicker: boolean, selectsRange: boolean, format?: (value?: Date) => string | undefined) => string | undefined;
@@ -0,0 +1,50 @@
1
+ import { CURRENT_MONTH, CURRENT_YEAR } from "./constants.js";
2
+ const getMonthFirstDay = (month = CURRENT_MONTH, year = CURRENT_YEAR) => {
3
+ const firstDay = new Date(year, month - 1, 1).getDay();
4
+ return firstDay === 0 ? 6 : firstDay - 1;
5
+ };
6
+ const addZero = (value) => `${value}`.padStart(2, "0");
7
+ const getPreviousMonth = (month, year) => {
8
+ if (month === 1) {
9
+ return [12, year - 1];
10
+ }
11
+ return [month - 1, year];
12
+ };
13
+ const getNextMonth = (month, year) => {
14
+ if (month === 12) {
15
+ return [1, year + 1];
16
+ }
17
+ return [month + 1, year];
18
+ };
19
+ const isSameMonth = (date, basedate = /* @__PURE__ */ new Date()) => basedate.getMonth() === date.getMonth() && basedate.getFullYear() === date.getFullYear();
20
+ const isSameDay = (date, basedate = /* @__PURE__ */ new Date()) => basedate.getDate() === date.getDate() && basedate.getMonth() + 1 === date.getMonth() + 1 && basedate.getFullYear() === date.getFullYear();
21
+ const getDateISO = (showMonthYearPicker, date) => {
22
+ if (date) {
23
+ if (showMonthYearPicker) {
24
+ return [addZero(date.getMonth() + 1), date.getFullYear()].join("/");
25
+ }
26
+ return [addZero(date.getMonth() + 1), addZero(date.getDate()), date.getFullYear()].join("/");
27
+ }
28
+ return "";
29
+ };
30
+ const formatValue = (computedValue, computedRange, showMonthYearPicker, selectsRange, format) => {
31
+ if (selectsRange && computedRange) {
32
+ return format ? `${format(computedRange.start ?? void 0) ? `${format(computedRange.start ?? void 0)} - ` : ""}${format(computedRange.end ?? void 0) ?? ""}` : `${getDateISO(showMonthYearPicker, computedRange.start ?? void 0)}${computedRange.start ? " - " : ""}${getDateISO(showMonthYearPicker, computedRange.end ?? void 0)}`;
33
+ }
34
+ if (computedValue && format) {
35
+ return format(computedValue);
36
+ }
37
+ if (computedValue) {
38
+ return getDateISO(showMonthYearPicker, computedValue);
39
+ }
40
+ return void 0;
41
+ };
42
+ export {
43
+ addZero,
44
+ formatValue,
45
+ getMonthFirstDay,
46
+ getNextMonth,
47
+ getPreviousMonth,
48
+ isSameDay,
49
+ isSameMonth
50
+ };
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const getLocalizedDays = (locale) => {
4
+ const formatter = new Intl.DateTimeFormat(locale, {
5
+ weekday: "long"
6
+ });
7
+ const days = [];
8
+ for (let i = 0; i < 7; i += 1) {
9
+ const date = new Date(1970, 0, i + 4);
10
+ days.push(formatter.format(date));
11
+ }
12
+ return days;
13
+ };
14
+ const getLocalizedMonths = (locale) => {
15
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
16
+ const formatter = new Intl.DateTimeFormat(computedLocale, {
17
+ month: "long"
18
+ });
19
+ const months = [];
20
+ for (let i = 0; i < 12; i += 1) {
21
+ const date = new Date(1970, i);
22
+ months.push(formatter.format(date));
23
+ }
24
+ return months;
25
+ };
26
+ const getLocalizedShortMonths = (locale) => {
27
+ const formatter = new Intl.DateTimeFormat(locale, {
28
+ month: "short"
29
+ });
30
+ const months = [];
31
+ for (let i = 0; i < 12; i += 1) {
32
+ const date = new Date(1970, i);
33
+ months.push(formatter.format(date));
34
+ }
35
+ return months;
36
+ };
37
+ const getDays = (locale) => {
38
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
39
+ const longDays = getLocalizedDays(computedLocale);
40
+ const days = {};
41
+ longDays.forEach((longDay) => {
42
+ days[longDay] = longDay.slice(0, 2);
43
+ });
44
+ const dayKeys = Object.keys(days);
45
+ dayKeys.push(dayKeys.shift());
46
+ const orderedDaysMap = {};
47
+ dayKeys.forEach((key) => {
48
+ orderedDaysMap[key] = days[key];
49
+ });
50
+ return orderedDaysMap;
51
+ };
52
+ const getMonths = (locale) => {
53
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
54
+ const longMonths = getLocalizedMonths(locale);
55
+ const shortMonths = getLocalizedShortMonths(computedLocale);
56
+ const months = {};
57
+ longMonths.forEach((longMonth, index) => {
58
+ months[longMonth] = shortMonths[index];
59
+ });
60
+ return months;
61
+ };
62
+ exports.getDays = getDays;
63
+ exports.getLocalizedMonths = getLocalizedMonths;
64
+ exports.getMonths = getMonths;
@@ -0,0 +1,4 @@
1
+ import type { Locale } from 'date-fns';
2
+ export declare const getLocalizedMonths: (locale: Locale | string) => string[];
3
+ export declare const getDays: (locale: Locale | string) => Record<string, string>;
4
+ export declare const getMonths: (locale: Locale | string) => Record<string, string>;
@@ -0,0 +1,64 @@
1
+ const getLocalizedDays = (locale) => {
2
+ const formatter = new Intl.DateTimeFormat(locale, {
3
+ weekday: "long"
4
+ });
5
+ const days = [];
6
+ for (let i = 0; i < 7; i += 1) {
7
+ const date = new Date(1970, 0, i + 4);
8
+ days.push(formatter.format(date));
9
+ }
10
+ return days;
11
+ };
12
+ const getLocalizedMonths = (locale) => {
13
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
14
+ const formatter = new Intl.DateTimeFormat(computedLocale, {
15
+ month: "long"
16
+ });
17
+ const months = [];
18
+ for (let i = 0; i < 12; i += 1) {
19
+ const date = new Date(1970, i);
20
+ months.push(formatter.format(date));
21
+ }
22
+ return months;
23
+ };
24
+ const getLocalizedShortMonths = (locale) => {
25
+ const formatter = new Intl.DateTimeFormat(locale, {
26
+ month: "short"
27
+ });
28
+ const months = [];
29
+ for (let i = 0; i < 12; i += 1) {
30
+ const date = new Date(1970, i);
31
+ months.push(formatter.format(date));
32
+ }
33
+ return months;
34
+ };
35
+ const getDays = (locale) => {
36
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
37
+ const longDays = getLocalizedDays(computedLocale);
38
+ const days = {};
39
+ longDays.forEach((longDay) => {
40
+ days[longDay] = longDay.slice(0, 2);
41
+ });
42
+ const dayKeys = Object.keys(days);
43
+ dayKeys.push(dayKeys.shift());
44
+ const orderedDaysMap = {};
45
+ dayKeys.forEach((key) => {
46
+ orderedDaysMap[key] = days[key];
47
+ });
48
+ return orderedDaysMap;
49
+ };
50
+ const getMonths = (locale) => {
51
+ const computedLocale = typeof locale === "string" ? locale : locale.code;
52
+ const longMonths = getLocalizedMonths(locale);
53
+ const shortMonths = getLocalizedShortMonths(computedLocale);
54
+ const months = {};
55
+ longMonths.forEach((longMonth, index) => {
56
+ months[longMonth] = shortMonths[index];
57
+ });
58
+ return months;
59
+ };
60
+ export {
61
+ getDays,
62
+ getLocalizedMonths,
63
+ getMonths
64
+ };