@vchasno/ui-kit 0.3.11 → 0.3.13

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.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.3.12] - 2024-08-07
11
+
12
+ ## Added
13
+
14
+ - Datepicker - restyle new UI
15
+ - Pagination - add --vchasno-ui-pagination-hover-bg-color css variable
16
+
10
17
  ## [0.3.11] - 2024-08-04
11
18
 
12
19
  ## Added
@@ -7506,6 +7506,7 @@ function onClickOutsideHOC(WrappedComponent, config) {
7506
7506
 
7507
7507
  handlersMap[_this._uid] = function (event) {
7508
7508
  if (_this.componentNode === null) return;
7509
+ if (_this.initTimeStamp > event.timeStamp) return;
7509
7510
 
7510
7511
  if (_this.props.preventDefault) {
7511
7512
  event.preventDefault();
@@ -7553,6 +7554,7 @@ function onClickOutsideHOC(WrappedComponent, config) {
7553
7554
  };
7554
7555
 
7555
7556
  _this._uid = uid();
7557
+ _this.initTimeStamp = performance.now();
7556
7558
  return _this;
7557
7559
  }
7558
7560
  /**
@@ -7693,9 +7695,18 @@ function isOverflowElement(element) {
7693
7695
  function isTableElement(element) {
7694
7696
  return ['table', 'td', 'th'].includes(getNodeName(element));
7695
7697
  }
7696
- function isContainingBlock(element) {
7698
+ function isTopLayer$1(element) {
7699
+ return [':popover-open', ':modal'].some(selector => {
7700
+ try {
7701
+ return element.matches(selector);
7702
+ } catch (e) {
7703
+ return false;
7704
+ }
7705
+ });
7706
+ }
7707
+ function isContainingBlock(elementOrCss) {
7697
7708
  const webkit = isWebKit();
7698
- const css = getComputedStyle(element);
7709
+ const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
7699
7710
 
7700
7711
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
7701
7712
  return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
@@ -7705,9 +7716,10 @@ function getContainingBlock(element) {
7705
7716
  while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
7706
7717
  if (isContainingBlock(currentNode)) {
7707
7718
  return currentNode;
7708
- } else {
7709
- currentNode = getParentNode(currentNode);
7719
+ } else if (isTopLayer$1(currentNode)) {
7720
+ return null;
7710
7721
  }
7722
+ currentNode = getParentNode(currentNode);
7711
7723
  }
7712
7724
  return null;
7713
7725
  }
@@ -7729,8 +7741,8 @@ function getNodeScroll(element) {
7729
7741
  };
7730
7742
  }
7731
7743
  return {
7732
- scrollLeft: element.pageXOffset,
7733
- scrollTop: element.pageYOffset
7744
+ scrollLeft: element.scrollX,
7745
+ scrollTop: element.scrollY
7734
7746
  };
7735
7747
  }
7736
7748
  function getParentNode(node) {
@@ -7770,10 +7782,14 @@ function getOverflowAncestors(node, list, traverseIframes) {
7770
7782
  const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
7771
7783
  const win = getWindow(scrollableAncestor);
7772
7784
  if (isBody) {
7773
- return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);
7785
+ const frameElement = getFrameElement(win);
7786
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
7774
7787
  }
7775
7788
  return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
7776
7789
  }
7790
+ function getFrameElement(win) {
7791
+ return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
7792
+ }
7777
7793
 
7778
7794
  /**
7779
7795
  * Custom positioning reference element.
@@ -7891,12 +7907,21 @@ function getPaddingObject(padding) {
7891
7907
  };
7892
7908
  }
7893
7909
  function rectToClientRect(rect) {
7910
+ const {
7911
+ x,
7912
+ y,
7913
+ width,
7914
+ height
7915
+ } = rect;
7894
7916
  return {
7895
- ...rect,
7896
- top: rect.y,
7897
- left: rect.x,
7898
- right: rect.x + rect.width,
7899
- bottom: rect.y + rect.height
7917
+ width,
7918
+ height,
7919
+ top: y,
7920
+ left: x,
7921
+ right: x + width,
7922
+ bottom: y + height,
7923
+ x,
7924
+ y
7900
7925
  };
7901
7926
  }
7902
7927
 
@@ -8116,7 +8141,7 @@ async function detectOverflow(state, options) {
8116
8141
  * appears centered to the reference element.
8117
8142
  * @see https://floating-ui.com/docs/arrow
8118
8143
  */
8119
- const arrow$2 = options => ({
8144
+ const arrow$3 = options => ({
8120
8145
  name: 'arrow',
8121
8146
  options,
8122
8147
  async fn(state) {
@@ -8199,7 +8224,7 @@ const arrow$2 = options => ({
8199
8224
  * clipping boundary. Alternative to `autoPlacement`.
8200
8225
  * @see https://floating-ui.com/docs/flip
8201
8226
  */
8202
- const flip$1 = function (options) {
8227
+ const flip$2 = function (options) {
8203
8228
  if (options === void 0) {
8204
8229
  options = {};
8205
8230
  }
@@ -8359,7 +8384,7 @@ async function convertValueToCoords(state, options) {
8359
8384
  * object may be passed.
8360
8385
  * @see https://floating-ui.com/docs/offset
8361
8386
  */
8362
- const offset = function (options) {
8387
+ const offset$1 = function (options) {
8363
8388
  if (options === void 0) {
8364
8389
  options = 0;
8365
8390
  }
@@ -8991,14 +9016,14 @@ function autoUpdate(reference, floating, update, options) {
8991
9016
  * clipping boundary. Alternative to `autoPlacement`.
8992
9017
  * @see https://floating-ui.com/docs/flip
8993
9018
  */
8994
- const flip = flip$1;
9019
+ const flip$1 = flip$2;
8995
9020
 
8996
9021
  /**
8997
9022
  * Provides data to position an inner element of the floating element so that it
8998
9023
  * appears centered to the reference element.
8999
9024
  * @see https://floating-ui.com/docs/arrow
9000
9025
  */
9001
- const arrow$1 = arrow$2;
9026
+ const arrow$2 = arrow$3;
9002
9027
 
9003
9028
  /**
9004
9029
  * Computes the `x` and `y` coordinates that will place the floating element
@@ -9023,44 +9048,6 @@ const computePosition = (reference, floating, options) => {
9023
9048
  });
9024
9049
  };
9025
9050
 
9026
- /**
9027
- * Provides data to position an inner element of the floating element so that it
9028
- * appears centered to the reference element.
9029
- * This wraps the core `arrow` middleware to allow React refs as the element.
9030
- * @see https://floating-ui.com/docs/arrow
9031
- */
9032
- const arrow = options => {
9033
- function isRef(value) {
9034
- return {}.hasOwnProperty.call(value, 'current');
9035
- }
9036
- return {
9037
- name: 'arrow',
9038
- options,
9039
- fn(state) {
9040
- const {
9041
- element,
9042
- padding
9043
- } = typeof options === 'function' ? options(state) : options;
9044
- if (element && isRef(element)) {
9045
- if (element.current != null) {
9046
- return arrow$1({
9047
- element: element.current,
9048
- padding
9049
- }).fn(state);
9050
- }
9051
- return {};
9052
- }
9053
- if (element) {
9054
- return arrow$1({
9055
- element,
9056
- padding
9057
- }).fn(state);
9058
- }
9059
- return {};
9060
- }
9061
- };
9062
- };
9063
-
9064
9051
  var index$1 = typeof document !== 'undefined' ? React.useLayoutEffect : React.useEffect;
9065
9052
 
9066
9053
  // Fork of `fast-deep-equal` that only does the comparisons we need and compares
@@ -9285,6 +9272,78 @@ function useFloating$1(options) {
9285
9272
  }), [data, update, refs, elements, floatingStyles]);
9286
9273
  }
9287
9274
 
9275
+ /**
9276
+ * Provides data to position an inner element of the floating element so that it
9277
+ * appears centered to the reference element.
9278
+ * This wraps the core `arrow` middleware to allow React refs as the element.
9279
+ * @see https://floating-ui.com/docs/arrow
9280
+ */
9281
+ const arrow$1 = options => {
9282
+ function isRef(value) {
9283
+ return {}.hasOwnProperty.call(value, 'current');
9284
+ }
9285
+ return {
9286
+ name: 'arrow',
9287
+ options,
9288
+ fn(state) {
9289
+ const {
9290
+ element,
9291
+ padding
9292
+ } = typeof options === 'function' ? options(state) : options;
9293
+ if (element && isRef(element)) {
9294
+ if (element.current != null) {
9295
+ return arrow$2({
9296
+ element: element.current,
9297
+ padding
9298
+ }).fn(state);
9299
+ }
9300
+ return {};
9301
+ }
9302
+ if (element) {
9303
+ return arrow$2({
9304
+ element,
9305
+ padding
9306
+ }).fn(state);
9307
+ }
9308
+ return {};
9309
+ }
9310
+ };
9311
+ };
9312
+
9313
+ /**
9314
+ * Modifies the placement by translating the floating element along the
9315
+ * specified axes.
9316
+ * A number (shorthand for `mainAxis` or distance), or an axes configuration
9317
+ * object may be passed.
9318
+ * @see https://floating-ui.com/docs/offset
9319
+ */
9320
+ const offset = (options, deps) => ({
9321
+ ...offset$1(options),
9322
+ options: [options, deps]
9323
+ });
9324
+
9325
+ /**
9326
+ * Optimizes the visibility of the floating element by flipping the `placement`
9327
+ * in order to keep it in view when the preferred placement(s) will overflow the
9328
+ * clipping boundary. Alternative to `autoPlacement`.
9329
+ * @see https://floating-ui.com/docs/flip
9330
+ */
9331
+ const flip = (options, deps) => ({
9332
+ ...flip$1(options),
9333
+ options: [options, deps]
9334
+ });
9335
+
9336
+ /**
9337
+ * Provides data to position an inner element of the floating element so that it
9338
+ * appears centered to the reference element.
9339
+ * This wraps the core `arrow` middleware to allow React refs as the element.
9340
+ * @see https://floating-ui.com/docs/arrow
9341
+ */
9342
+ const arrow = (options, deps) => ({
9343
+ ...arrow$1(options),
9344
+ options: [options, deps]
9345
+ });
9346
+
9288
9347
  // https://github.com/mui/material-ui/issues/41190#issuecomment-2040873379
9289
9348
  const SafeReact = {
9290
9349
  ...React__namespace
@@ -9417,6 +9476,16 @@ const FloatingArrow = /*#__PURE__*/React__namespace.forwardRef(function Floating
9417
9476
  }
9418
9477
  }
9419
9478
  const clipPathId = useId();
9479
+ const [isRTL, setIsRTL] = React__namespace.useState(false);
9480
+
9481
+ // https://github.com/floating-ui/floating-ui/issues/2932
9482
+ index(() => {
9483
+ if (!floating) return;
9484
+ const isRTL = getComputedStyle(floating).direction === 'rtl';
9485
+ if (isRTL) {
9486
+ setIsRTL(true);
9487
+ }
9488
+ }, [floating]);
9420
9489
  if (!floating) {
9421
9490
  return null;
9422
9491
  }
@@ -9428,7 +9497,6 @@ const FloatingArrow = /*#__PURE__*/React__namespace.forwardRef(function Floating
9428
9497
  const svgX = width / 2 * (tipRadius / -8 + 1);
9429
9498
  const svgY = height / 2 * tipRadius / 4;
9430
9499
  const [side, alignment] = placement.split('-');
9431
- const isRTL = platform.isRTL(floating);
9432
9500
  const isCustomShape = !!d;
9433
9501
  const isVerticalSide = side === 'top' || side === 'bottom';
9434
9502
  const yOffsetProp = staticOffset && alignment === 'end' ? 'bottom' : 'top';
@@ -9515,29 +9583,79 @@ const useFloatingParentNodeId = () => {
9515
9583
  */
9516
9584
  const useFloatingTree = () => React__namespace.useContext(FloatingTreeContext);
9517
9585
 
9586
+ function useFloatingRootContext(options) {
9587
+ const {
9588
+ open = false,
9589
+ onOpenChange: onOpenChangeProp,
9590
+ elements: elementsProp
9591
+ } = options;
9592
+ const floatingId = useId();
9593
+ const dataRef = React__namespace.useRef({});
9594
+ const [events] = React__namespace.useState(() => createPubSub());
9595
+ const nested = useFloatingParentNodeId() != null;
9596
+ if (process.env.NODE_ENV !== "production") {
9597
+ const optionDomReference = elementsProp.reference;
9598
+ if (optionDomReference && !isElement(optionDomReference)) {
9599
+ error('Cannot pass a virtual element to the `elements.reference` option,', 'as it must be a real DOM element. Use `refs.setPositionReference()`', 'instead.');
9600
+ }
9601
+ }
9602
+ const [positionReference, setPositionReference] = React__namespace.useState(elementsProp.reference);
9603
+ const onOpenChange = useEffectEvent((open, event, reason) => {
9604
+ dataRef.current.openEvent = open ? event : undefined;
9605
+ events.emit('openchange', {
9606
+ open,
9607
+ event,
9608
+ reason,
9609
+ nested
9610
+ });
9611
+ onOpenChangeProp == null || onOpenChangeProp(open, event, reason);
9612
+ });
9613
+ const refs = React__namespace.useMemo(() => ({
9614
+ setPositionReference
9615
+ }), []);
9616
+ const elements = React__namespace.useMemo(() => ({
9617
+ reference: positionReference || elementsProp.reference || null,
9618
+ floating: elementsProp.floating || null,
9619
+ domReference: elementsProp.reference
9620
+ }), [positionReference, elementsProp.reference, elementsProp.floating]);
9621
+ return React__namespace.useMemo(() => ({
9622
+ dataRef,
9623
+ open,
9624
+ onOpenChange,
9625
+ elements,
9626
+ events,
9627
+ floatingId,
9628
+ refs
9629
+ }), [open, onOpenChange, elements, events, floatingId, refs]);
9630
+ }
9631
+
9518
9632
  /**
9519
9633
  * Provides data to position a floating element and context to add interactions.
9520
9634
  * @see https://floating-ui.com/docs/useFloating
9521
9635
  */
9522
9636
  function useFloating(options) {
9523
- var _options$elements;
9524
9637
  if (options === void 0) {
9525
9638
  options = {};
9526
9639
  }
9527
9640
  const {
9528
- open = false,
9529
- onOpenChange: unstable_onOpenChange,
9530
9641
  nodeId
9531
9642
  } = options;
9643
+ const internalRootContext = useFloatingRootContext({
9644
+ ...options,
9645
+ elements: {
9646
+ reference: null,
9647
+ floating: null,
9648
+ ...options.elements
9649
+ }
9650
+ });
9651
+ const rootContext = options.rootContext || internalRootContext;
9652
+ const computedElements = rootContext.elements;
9532
9653
  const [_domReference, setDomReference] = React__namespace.useState(null);
9533
9654
  const [positionReference, _setPositionReference] = React__namespace.useState(null);
9534
- const optionDomReference = (_options$elements = options.elements) == null ? void 0 : _options$elements.reference;
9655
+ const optionDomReference = computedElements == null ? void 0 : computedElements.reference;
9535
9656
  const domReference = optionDomReference || _domReference;
9536
- if (process.env.NODE_ENV !== "production") {
9537
- if (optionDomReference && !isElement(optionDomReference)) {
9538
- error('Cannot pass a virtual element to the `elements.reference` option,', 'as it must be a real DOM element. Use `refs.setPositionReference()`', 'instead.');
9539
- }
9540
- }
9657
+ const domReferenceRef = React__namespace.useRef(null);
9658
+ const tree = useFloatingTree();
9541
9659
  index(() => {
9542
9660
  if (domReference) {
9543
9661
  domReferenceRef.current = domReference;
@@ -9546,28 +9664,12 @@ function useFloating(options) {
9546
9664
  const position = useFloating$1({
9547
9665
  ...options,
9548
9666
  elements: {
9549
- ...options.elements,
9667
+ ...computedElements,
9550
9668
  ...(positionReference && {
9551
9669
  reference: positionReference
9552
9670
  })
9553
9671
  }
9554
9672
  });
9555
- const tree = useFloatingTree();
9556
- const nested = useFloatingParentNodeId() != null;
9557
- const onOpenChange = useEffectEvent((open, event, reason) => {
9558
- dataRef.current.openEvent = open ? event : undefined;
9559
- events.emit('openchange', {
9560
- open,
9561
- event,
9562
- reason,
9563
- nested
9564
- });
9565
- unstable_onOpenChange == null || unstable_onOpenChange(open, event, reason);
9566
- });
9567
- const domReferenceRef = React__namespace.useRef(null);
9568
- const dataRef = React__namespace.useRef({});
9569
- const events = React__namespace.useState(() => createPubSub())[0];
9570
- const floatingId = useId();
9571
9673
  const setPositionReference = React__namespace.useCallback(node => {
9572
9674
  const computedPositionReference = isElement(node) ? {
9573
9675
  getBoundingClientRect: () => node.getBoundingClientRect(),
@@ -9606,16 +9708,13 @@ function useFloating(options) {
9606
9708
  }), [position.elements, domReference]);
9607
9709
  const context = React__namespace.useMemo(() => ({
9608
9710
  ...position,
9711
+ ...rootContext,
9609
9712
  refs,
9610
9713
  elements,
9611
- dataRef,
9612
- nodeId,
9613
- floatingId,
9614
- events,
9615
- open,
9616
- onOpenChange
9617
- }), [position, nodeId, floatingId, events, open, onOpenChange, refs, elements]);
9714
+ nodeId
9715
+ }), [position, refs, elements, nodeId, rootContext]);
9618
9716
  index(() => {
9717
+ rootContext.dataRef.current.floatingContext = context;
9619
9718
  const node = tree == null ? void 0 : tree.nodesRef.current.find(node => node.id === nodeId);
9620
9719
  if (node) {
9621
9720
  node.context = context;
@@ -15564,7 +15663,7 @@ var Spinner = function (_a) {
15564
15663
  React.createElement("circle", { className: "vchasno-ui-spinner__svg__circle", cx: "50", cy: "50", r: "20", fill: "none", stroke: color, strokeWidth: "2", strokeMiterlimit: "10" }))));
15565
15664
  };
15566
15665
 
15567
- var css_248z = ".react-datepicker__triangle {\n position: absolute;\n left: 50px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow {\n position: absolute;\n margin-left: -6px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow,\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n position: absolute;\n width: 1px;\n height: 0;\n box-sizing: content-box;\n border: 6px solid transparent;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n z-index: -1;\n left: -6px;\n border-width: 6px;\n border-bottom-color: var(--vchasno-ui-calendar-color);\n content: '';\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n top: 0;\n margin-top: -6px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before {\n border-top: none;\n border-bottom-color: #fff;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before {\n top: -1px;\n border-bottom-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::after {\n position: absolute;\n top: 1px;\n left: -3px;\n display: block;\n width: 7px;\n height: 7px;\n background-color: #fff;\n content: '';\n transform: rotate(45deg);\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow {\n bottom: 0;\n margin-bottom: -6px;\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n border-top-color: #fff;\n border-bottom: none;\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n bottom: -1px;\n border-top-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::after {\n position: absolute;\n bottom: 1px;\n left: -3px;\n display: block;\n width: 7px;\n height: 7px;\n background-color: #fff;\n content: '';\n transform: rotate(45deg);\n}\n\n.react-datepicker {\n position: relative;\n display: inline-flex;\n padding: 10px;\n border: 1px solid var(--vchasno-ui-calendar-color);\n border-radius: 3px;\n background-color: #fff;\n box-shadow: 0 2px 2px 0 rgb(28 54 72 / 11%);\n color: var(--vchasno-ui-input-font-color);\n font-size: 0.8rem;\n}\n\n.react-datepicker__time-container {\n width: 85px;\n float: right;\n}\n\n.react-datepicker__time-container--with-today-button {\n position: absolute;\n top: 0;\n right: -87px;\n display: inline;\n border: 1px solid #aeaeae;\n border-radius: 0.3rem;\n}\n\n.react-datepicker__time-container .react-datepicker__time {\n position: relative;\n background: white;\n border-bottom-right-radius: 0.3rem;\n}\n\n.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box {\n width: 85px;\n margin: 0 auto;\n border-bottom-right-radius: 0.3rem;\n overflow-x: hidden;\n text-align: center;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list {\n width: 100%;\n height: calc(195px + (1.7rem / 2));\n box-sizing: content-box;\n padding-right: 0;\n padding-left: 0;\n margin: 0;\n list-style: none;\n overflow-y: scroll;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item {\n height: 30px;\n padding: 5px 10px;\n border-radius: 3px;\n white-space: nowrap;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item:hover {\n background-color: #f0f0f0;\n cursor: pointer;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--selected {\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n font-weight: bold;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--selected:hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--disabled {\n color: #ccc;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--disabled:hover {\n background-color: transparent;\n cursor: default;\n}\n\n.react-datepicker__header--time {\n padding-right: 5px;\n padding-bottom: 8px;\n padding-left: 5px;\n}\n\n.react-datepicker__header--time:not(.react-datepicker__header--time--only) {\n border-top-left-radius: 0;\n}\n\n.react-datepicker__header {\n position: relative;\n padding-top: 5px;\n text-align: center;\n}\n\n.react-datepicker__header:not(.react-datepicker__header--has-time-select) {\n border-top-right-radius: 0.3rem;\n}\n\n@media all and (width <= 480px) {\n .react-datepicker {\n padding: 0;\n }\n}\n\n.react-datepicker-popper {\n z-index: 100;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 8px;\n}\n\n.react-datepicker-popper[data-placement^='top'] {\n margin-bottom: 8px;\n}\n\n.react-datepicker-popper[data-placement^='right'] {\n margin-left: 6px;\n}\n\n.react-datepicker-popper[data-placement^='right'] .react-datepicker__triangle {\n right: 42px;\n left: auto;\n}\n\n.react-datepicker-popper[data-placement^='left'] {\n margin-right: 6px;\n}\n\n.react-datepicker-popper[data-placement^='left'] .react-datepicker__triangle {\n right: auto;\n left: 42px;\n}\n\n.react-datepicker__current-month,\n.react-datepicker-time__header {\n padding: 8px 0 15px;\n margin-top: 0;\n color: var(--vchasno-ui-input-font-color);\n font-weight: bold;\n text-transform: capitalize;\n}\n\n.react-datepicker__month-container {\n float: left;\n}\n\n.react-datepicker__month {\n margin: 0;\n text-align: center;\n}\n\n.react-datepicker__day-names,\n.react-datepicker__week {\n white-space: nowrap;\n}\n\n.react-datepicker__day-name {\n text-transform: none;\n}\n\n.react-datepicker__day-name,\n.react-datepicker__day,\n.react-datepicker__time-name {\n display: inline-block;\n width: 34px;\n color: var(--vchasno-ui-input-font-color);\n cursor: pointer;\n line-height: 34px;\n text-align: center;\n transition: background-color var(--vchasno-ui-transition-duration-sec, 0.3s);\n}\n\n.react-datepicker__day-names .react-datepicker__day-name {\n font-weight: 700;\n text-transform: capitalize;\n}\n\n.react-datepicker__day-name:nth-child(6),\n.react-datepicker__day-name:nth-child(7) {\n color: var(--vchasno-ui-calendar-color);\n font-weight: 700;\n}\n\n.react-datepicker__day:hover {\n border-radius: 3px;\n background-color: #f2f6f7;\n}\n\n.react-datepicker__day--today {\n border: 1px solid var(--vchasno-ui-calendar-color);\n border-radius: 3px;\n color: var(--vchasno-ui-calendar-color);\n font-weight: bold;\n}\n\n.react-datepicker__day--weekend {\n font-weight: bold;\n}\n\n.react-datepicker__day--outside-month {\n color: #6b8091;\n}\n\n.react-datepicker__day--disabled {\n color: #b6cadb;\n cursor: not-allowed;\n}\n\n.react-datepicker__day--disabled:hover {\n background-color: transparent;\n}\n\n.react-datepicker__day--selected,\n.react-datepicker__day--in-selecting-range,\n.react-datepicker__day--in-range {\n border-radius: 3px;\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n font-weight: bold;\n}\n\n.react-datepicker__day--selected:hover,\n.react-datepicker__day--in-selecting-range:hover,\n.react-datepicker__day--in-range:hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--keyboard-selected) {\n border-radius: 3px;\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n}\n\n.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--keyboard-selected):hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range) {\n background-color: rgb(33 107 165 / 50%);\n}\n\n.react-datepicker__month--selecting-range\n .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range) {\n background-color: #f0f0f0;\n color: var(--vchasno-ui-input-font-color);\n}\n\n.react-datepicker__input-container {\n position: relative;\n}\n\n.react-datepicker__close-icon {\n position: absolute;\n top: 0;\n right: 35px;\n bottom: 0;\n width: 10px;\n height: 10px;\n border: 0;\n margin: auto;\n background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIGZpbGw9IiNiNmNhZGIiIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTM4LjEsMzIuNEw2My4zLDcuM2MxLjYtMS42LDEuNi00LjIsMC01LjdjLTEuNi0xLjYtNC4yLTEuNi01LjcsMEwzMi40LDI2LjdMNy4zLDEuNkM1LjcsMCwzLjEsMCwxLjUsMS42cy0xLjYsNC4yLDAsNS43bDI1LjEsMjUuMUwxLjUsNTcuNmMtMS42LDEuNi0xLjYsNC4yLDAsNS43YzAuOCwwLjgsMS44LDEuMiwyLjksMS4yczIuMS0wLjQsMi45LTEuMmwyNS4xLTI1LjFsMjUuMSwyNS4xYzAuOCwwLjgsMS44LDEuMiwyLjksMS4yYzEsMCwyLjEtMC40LDIuOS0xLjJjMS42LTEuNiwxLjYtNC4yLDAtNS43TDM4LjEsMzIuNHoiLz48L3N2Zz4=');\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n outline: none;\n}\n\n.react-datepicker__today-button {\n padding: 5px 0;\n border-top: 1px solid #aeaeae;\n background: #f0f0f0;\n clear: left;\n cursor: pointer;\n font-weight: bold;\n text-align: center;\n}\n\n.react-datepicker__portal {\n position: fixed;\n z-index: 2147483647;\n top: 0;\n left: 0;\n display: flex;\n width: 100vw;\n height: 100vh;\n align-items: center;\n justify-content: center;\n background-color: rgb(0 0 0 / 80%);\n}\n\n.react-datepicker__portal .react-datepicker__day-name,\n.react-datepicker__portal .react-datepicker__day,\n.react-datepicker__portal .react-datepicker__time-name {\n width: 3rem;\n line-height: 3rem;\n}\n\n@media (width <= 400px), (height <= 550px) {\n .react-datepicker__portal .react-datepicker__day-name,\n .react-datepicker__portal .react-datepicker__day,\n .react-datepicker__portal .react-datepicker__time-name {\n width: 2rem;\n line-height: 2rem;\n }\n}\n\n.react-datepicker__portal .react-datepicker__current-month,\n.react-datepicker__portal .react-datepicker-time__header {\n font-size: 1.44rem;\n}\n\n.react-datepicker__navigation {\n position: absolute;\n z-index: 1;\n top: 15px;\n display: flex;\n width: 30px;\n height: 30px;\n align-items: center;\n justify-content: center;\n border: none;\n border-radius: 3px;\n background-size: cover;\n cursor: pointer;\n line-height: 1;\n}\n\n.react-datepicker__navigation:hover {\n background-color: #f2f6f7;\n}\n\n.react-datepicker__navigation--previous {\n left: 20px;\n}\n\n.react-datepicker__navigation-icon {\n display: none;\n}\n\n.react-datepicker__navigation--previous::before,\n.react-datepicker__navigation--next::before {\n position: absolute;\n width: 10px;\n height: 10px;\n margin: auto;\n inset: 0;\n}\n\n.react-datepicker__navigation--previous::before {\n content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iIzhhYTNiNyI+PGc+PHBhdGggZD0iTTQyLjcsNjVjMi4xLDAsNC4zLTAuOCw1LjktMi40YzMuMi0zLjIsMy4yLTguNSwwLTExLjdMMzAuNCwzMi43bDE4LjEtMTguNWMzLjItMy4yLDMuMi04LjUsMC0xMS43Yy0zLjItMy4yLTguNS0zLjItMTEuNywwTDE4LjcsMjAuNmMtNi42LDYuNi02LjYsMTcuMywwLDIzLjhsMTguMSwxOC4xQzM4LjQsNjQuMiw0MC42LDY1LDQyLjcsNjV6Ii8+PC9nPjwvc3ZnPg==');\n}\n\n.react-datepicker__navigation--next {\n right: 20px;\n}\n\n.react-datepicker__day:focus,\n.react-datepicker__navigation--previous:focus,\n.react-datepicker__navigation--next:focus {\n border-radius: 3px;\n outline: 1px solid var(--vchasno-ui-calendar-color);\n outline-offset: 1px;\n}\n\n.react-datepicker__navigation--next--with-time:not(\n .react-datepicker__navigation--next--with-today-button\n ) {\n right: 110px;\n}\n\n.react-datepicker__navigation--next::before {\n content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iIzhhYTNiNyI+PGc+PHBhdGggZD0iTTIyLDY1Yy0yLjEsMC00LjMtMC44LTUuOS0yLjRjLTMuMi0zLjItMy4yLTguNSwwLTExLjdsMTguMS0xOC4xTDE2LjIsMTQuMmMtMy4yLTMuMi0zLjItOC41LDAtMTEuN3M4LjUtMy4yLDExLjcsMGwxOC4xLDE4LjFjNi42LDYuNiw2LjYsMTcuMywwLDIzLjhMMjcuOSw2Mi42QzI2LjMsNjQuMiwyNC4yLDY1LDIyLDY1eiIvPjwvZz48L3N2Zz4=');\n}\n\n.react-datepicker__input-container input {\n width: 100%;\n height: 30px;\n box-sizing: border-box;\n padding: 10px 15px;\n border: 1px solid var(--vchasno-ui-input-border-color-default, #b6cadb);\n border-radius: 3px;\n appearance: none;\n background: #fff;\n font-size: var(--vchasno-ui-input-font-size, 0.8rem);\n line-height: calc(var(--vchasno-ui-input-font-size, 0.8rem) * 2);\n transition: border var(--vchasno-ui-transition-duration-sec, 0.3s);\n vertical-align: middle;\n}\n\n.react-datepicker__input-container input:disabled {\n background: #f3f6f8;\n color: #b6cadb;\n}\n\n.react-datepicker__input-container input:hover {\n cursor: default;\n}\n\n.react-datepicker__input-container input:focus {\n border-color: var(--vchasno-ui-calendar-color);\n}\n\n/**\n Own component styles\n */\n\n.vchasno-ui-date-picker {\n display: inline-flex;\n flex-direction: column;\n gap: 5px;\n}\n\n.vchasno-ui-date-picker .vchasno-ui-date-picker__picker {\n height: 40px;\n}\n\n.vchasno-ui-date-picker__wrapper {\n position: relative;\n}\n\n.vchasno-ui-date-picker__wrapper > svg {\n position: absolute;\n top: 50%;\n right: 10px;\n color: var(--vchasno-ui-input-border-color-default);\n transform: translateY(-50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s);\n}\n\nlabel[class^='vchasno-ui-']:focus-within .vchasno-ui-date-picker__wrapper > svg {\n color: var(--vchasno-ui-calendar-color);\n}\n\n.vchasno-ui-date-picker.--loading .vchasno-ui-date-picker__wrapper > .vchasno-ui-spinner {\n position: absolute;\n top: 50%;\n right: 10px;\n transform: translateY(-50%);\n}\n\n.vchasno-ui-date-picker.--loading .vchasno-ui-date-picker__wrapper .vchasno-ui-spinner circle {\n stroke: var(--vchasno-ui-calendar-color);\n}\n\n.vchasno-ui-date-picker .react-datepicker__input-container input {\n color: var(--vchasno-ui-input-font-color);\n font-size: var(--vchasno-ui-input-font-size);\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n}\n\n.vchasno-ui-date-picker .react-datepicker__aria-live {\n display: none;\n}\n\n.vchasno-ui-date-picker.--disabled,\n.vchasno-ui-date-picker.--disabled\n .vchasno-ui-date-picker__wrapper\n .vchasno-ui-date-picker__picker {\n cursor: not-allowed;\n opacity: 0.8;\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover,\n.vchasno-ui-date-picker:not(.--disabled):hover\n .vchasno-ui-date-picker__wrapper\n .vchasno-ui-date-picker__picker {\n cursor: pointer;\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover .react-datepicker__input-container input {\n border-color: var(--vchasno-ui-calendar-color);\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover .vchasno-ui-date-picker__wrapper > svg {\n color: var(--vchasno-ui-calendar-color);\n}\n";
15666
+ var css_248z = ".react-datepicker__triangle {\n position: absolute;\n left: 50px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow {\n position: absolute;\n margin-left: -6px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow,\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n position: absolute;\n width: 1px;\n height: 0;\n box-sizing: content-box;\n border: 6px solid transparent;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n z-index: -1;\n left: -6px;\n border-width: 6px;\n border-bottom-color: var(--vchasno-ui-calendar-color);\n content: '';\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle {\n top: 0;\n margin-top: -6px;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle,\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before {\n border-top: none;\n border-bottom-color: #fff;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::before {\n top: -1px;\n border-bottom-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker-popper[data-placement^='bottom'] .react-datepicker__triangle::after {\n position: absolute;\n top: 1px;\n left: -3px;\n display: block;\n width: 7px;\n height: 7px;\n background-color: #fff;\n content: '';\n transform: rotate(45deg);\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow {\n bottom: 0;\n margin-bottom: -6px;\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle,\n.react-datepicker__year-read-view--down-arrow,\n.react-datepicker__month-read-view--down-arrow,\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n border-top-color: #fff;\n border-bottom: none;\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::before,\n.react-datepicker__year-read-view--down-arrow::before,\n.react-datepicker__month-read-view--down-arrow::before {\n bottom: -1px;\n border-top-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker-popper[data-placement^='top'] .react-datepicker__triangle::after {\n position: absolute;\n bottom: 1px;\n left: -3px;\n display: block;\n width: 7px;\n height: 7px;\n background-color: #fff;\n content: '';\n transform: rotate(45deg);\n}\n\n.react-datepicker {\n position: relative;\n display: inline-flex;\n padding: 10px;\n border: 1px solid var(--vchasno-ui-calendar-color);\n border-radius: 8px;\n background-color: #fff;\n box-shadow: 0 2px 2px 0 rgb(28 54 72 / 11%);\n color: var(--vchasno-ui-input-font-color);\n font-size: 0.8rem;\n}\n\n.react-datepicker__time-container {\n width: 85px;\n float: right;\n}\n\n.react-datepicker__time-container--with-today-button {\n position: absolute;\n top: 0;\n right: -87px;\n display: inline;\n border: 1px solid #aeaeae;\n border-radius: 0.3rem;\n}\n\n.react-datepicker__time-container .react-datepicker__time {\n position: relative;\n background: white;\n border-bottom-right-radius: 0.3rem;\n}\n\n.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box {\n width: 85px;\n margin: 0 auto;\n border-bottom-right-radius: 0.3rem;\n overflow-x: hidden;\n text-align: center;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list {\n width: 100%;\n height: calc(195px + (1.7rem / 2));\n box-sizing: content-box;\n padding-right: 0;\n padding-left: 0;\n margin: 0;\n list-style: none;\n overflow-y: scroll;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item {\n height: 30px;\n padding: 5px 10px;\n border-radius: 8px;\n white-space: nowrap;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item:hover {\n background-color: #f0f0f0;\n cursor: pointer;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--selected {\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n font-weight: bold;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--selected:hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--disabled {\n color: #ccc;\n}\n\n.react-datepicker__time-container\n .react-datepicker__time\n .react-datepicker__time-box\n ul.react-datepicker__time-list\n li.react-datepicker__time-list-item--disabled:hover {\n background-color: transparent;\n cursor: default;\n}\n\n.react-datepicker__header--time {\n padding-right: 5px;\n padding-bottom: 8px;\n padding-left: 5px;\n}\n\n.react-datepicker__header--time:not(.react-datepicker__header--time--only) {\n border-top-left-radius: 0;\n}\n\n.react-datepicker__header {\n position: relative;\n padding-top: 5px;\n text-align: center;\n}\n\n.react-datepicker__header:not(.react-datepicker__header--has-time-select) {\n border-top-right-radius: 0.3rem;\n}\n\n@media all and (width <= 480px) {\n .react-datepicker {\n padding: 0;\n }\n}\n\n.react-datepicker-popper {\n z-index: 100;\n}\n\n.react-datepicker-popper[data-placement^='bottom'] {\n margin-top: 8px;\n}\n\n.react-datepicker-popper[data-placement^='top'] {\n margin-bottom: 8px;\n}\n\n.react-datepicker-popper[data-placement^='right'] {\n margin-left: 6px;\n}\n\n.react-datepicker-popper[data-placement^='right'] .react-datepicker__triangle {\n right: 42px;\n left: auto;\n}\n\n.react-datepicker-popper[data-placement^='left'] {\n margin-right: 6px;\n}\n\n.react-datepicker-popper[data-placement^='left'] .react-datepicker__triangle {\n right: auto;\n left: 42px;\n}\n\n.react-datepicker__current-month,\n.react-datepicker-time__header {\n padding: 8px 0 15px;\n margin-top: 0;\n color: var(--vchasno-ui-input-font-color);\n font-weight: bold;\n text-transform: capitalize;\n}\n\n.react-datepicker__month-container {\n float: left;\n}\n\n.react-datepicker__month {\n margin: 0;\n text-align: center;\n}\n\n.react-datepicker__day-names,\n.react-datepicker__week {\n white-space: nowrap;\n}\n\n.react-datepicker__day-name {\n text-transform: none;\n}\n\n.react-datepicker__day-name,\n.react-datepicker__day,\n.react-datepicker__time-name {\n display: inline-block;\n width: 34px;\n color: var(--vchasno-ui-input-font-color);\n cursor: pointer;\n line-height: 34px;\n text-align: center;\n transition: background-color var(--vchasno-ui-transition-duration-sec, 0.3s);\n}\n\n.react-datepicker__day-names .react-datepicker__day-name {\n font-weight: 700;\n text-transform: capitalize;\n}\n\n.react-datepicker__day-name:nth-child(6),\n.react-datepicker__day-name:nth-child(7) {\n color: var(--vchasno-ui-calendar-color);\n font-weight: 700;\n}\n\n.react-datepicker__day:hover {\n border-radius: 8px;\n background-color: #f2f6f7;\n}\n\n.react-datepicker__day--today {\n border: 1px solid var(--vchasno-ui-calendar-color);\n border-radius: 8px;\n color: var(--vchasno-ui-calendar-color);\n font-weight: bold;\n}\n\n.react-datepicker__day--weekend {\n font-weight: bold;\n}\n\n.react-datepicker__day--outside-month {\n color: #6b8091;\n}\n\n.react-datepicker__day--disabled {\n color: #b6cadb;\n cursor: not-allowed;\n}\n\n.react-datepicker__day--disabled:hover {\n background-color: transparent;\n}\n\n.react-datepicker__day--selected,\n.react-datepicker__day--in-selecting-range,\n.react-datepicker__day--in-range {\n border-radius: 8px;\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n font-weight: bold;\n}\n\n.react-datepicker__day--selected:hover,\n.react-datepicker__day--in-selecting-range:hover,\n.react-datepicker__day--in-range:hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--keyboard-selected) {\n border-radius: 8px;\n background-color: var(--vchasno-ui-calendar-color);\n color: #fff;\n}\n\n.react-datepicker__day--keyboard-selected:not(.react-datepicker__day--keyboard-selected):hover {\n background-color: var(--vchasno-ui-calendar-color);\n}\n\n.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range) {\n background-color: rgb(33 107 165 / 50%);\n}\n\n.react-datepicker__month--selecting-range\n .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range) {\n background-color: #f0f0f0;\n color: var(--vchasno-ui-input-font-color);\n}\n\n.react-datepicker__input-container {\n position: relative;\n}\n\n.react-datepicker__close-icon {\n position: absolute;\n top: 0;\n right: 35px;\n bottom: 0;\n width: 10px;\n height: 10px;\n border: 0;\n margin: auto;\n background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIGZpbGw9IiNiNmNhZGIiIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTM4LjEsMzIuNEw2My4zLDcuM2MxLjYtMS42LDEuNi00LjIsMC01LjdjLTEuNi0xLjYtNC4yLTEuNi01LjcsMEwzMi40LDI2LjdMNy4zLDEuNkM1LjcsMCwzLjEsMCwxLjUsMS42cy0xLjYsNC4yLDAsNS43bDI1LjEsMjUuMUwxLjUsNTcuNmMtMS42LDEuNi0xLjYsNC4yLDAsNS43YzAuOCwwLjgsMS44LDEuMiwyLjksMS4yczIuMS0wLjQsMi45LTEuMmwyNS4xLTI1LjFsMjUuMSwyNS4xYzAuOCwwLjgsMS44LDEuMiwyLjksMS4yYzEsMCwyLjEtMC40LDIuOS0xLjJjMS42LTEuNiwxLjYtNC4yLDAtNS43TDM4LjEsMzIuNHoiLz48L3N2Zz4=');\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n outline: none;\n}\n\n.react-datepicker__today-button {\n padding: 5px 0;\n border-top: 1px solid #aeaeae;\n background: #f0f0f0;\n clear: left;\n cursor: pointer;\n font-weight: bold;\n text-align: center;\n}\n\n.react-datepicker__portal {\n position: fixed;\n z-index: 2147483647;\n top: 0;\n left: 0;\n display: flex;\n width: 100vw;\n height: 100vh;\n align-items: center;\n justify-content: center;\n background-color: rgb(0 0 0 / 80%);\n}\n\n.react-datepicker__portal .react-datepicker__day-name,\n.react-datepicker__portal .react-datepicker__day,\n.react-datepicker__portal .react-datepicker__time-name {\n width: 3rem;\n line-height: 3rem;\n}\n\n@media (width <= 400px), (height <= 550px) {\n .react-datepicker__portal .react-datepicker__day-name,\n .react-datepicker__portal .react-datepicker__day,\n .react-datepicker__portal .react-datepicker__time-name {\n width: 2rem;\n line-height: 2rem;\n }\n}\n\n.react-datepicker__portal .react-datepicker__current-month,\n.react-datepicker__portal .react-datepicker-time__header {\n font-size: 1.44rem;\n}\n\n.react-datepicker__navigation {\n position: absolute;\n z-index: 1;\n top: 15px;\n display: flex;\n width: 30px;\n height: 30px;\n align-items: center;\n justify-content: center;\n border: none;\n border-radius: 8px;\n background-size: cover;\n cursor: pointer;\n line-height: 1;\n}\n\n.react-datepicker__navigation:hover {\n background-color: #f2f6f7;\n}\n\n.react-datepicker__navigation--previous {\n left: 20px;\n}\n\n.react-datepicker__navigation-icon {\n display: none;\n}\n\n.react-datepicker__navigation--previous::before,\n.react-datepicker__navigation--next::before {\n position: absolute;\n width: 10px;\n height: 10px;\n margin: auto;\n inset: 0;\n}\n\n.react-datepicker__navigation--previous::before {\n content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iIzhhYTNiNyI+PGc+PHBhdGggZD0iTTQyLjcsNjVjMi4xLDAsNC4zLTAuOCw1LjktMi40YzMuMi0zLjIsMy4yLTguNSwwLTExLjdMMzAuNCwzMi43bDE4LjEtMTguNWMzLjItMy4yLDMuMi04LjUsMC0xMS43Yy0zLjItMy4yLTguNS0zLjItMTEuNywwTDE4LjcsMjAuNmMtNi42LDYuNi02LjYsMTcuMywwLDIzLjhsMTguMSwxOC4xQzM4LjQsNjQuMiw0MC42LDY1LDQyLjcsNjV6Ii8+PC9nPjwvc3ZnPg==');\n}\n\n.react-datepicker__navigation--next {\n right: 20px;\n}\n\n.react-datepicker__day:focus,\n.react-datepicker__navigation--previous:focus,\n.react-datepicker__navigation--next:focus {\n border-radius: 8px;\n outline: 1px solid var(--vchasno-ui-calendar-color);\n outline-offset: 1px;\n}\n\n.react-datepicker__navigation--next--with-time:not(\n .react-datepicker__navigation--next--with-today-button\n ) {\n right: 110px;\n}\n\n.react-datepicker__navigation--next::before {\n content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNjUgNjUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDY1IDY1OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgZmlsbD0iIzhhYTNiNyI+PGc+PHBhdGggZD0iTTIyLDY1Yy0yLjEsMC00LjMtMC44LTUuOS0yLjRjLTMuMi0zLjItMy4yLTguNSwwLTExLjdsMTguMS0xOC4xTDE2LjIsMTQuMmMtMy4yLTMuMi0zLjItOC41LDAtMTEuN3M4LjUtMy4yLDExLjcsMGwxOC4xLDE4LjFjNi42LDYuNiw2LjYsMTcuMywwLDIzLjhMMjcuOSw2Mi42QzI2LjMsNjQuMiwyNC4yLDY1LDIyLDY1eiIvPjwvZz48L3N2Zz4=');\n}\n\n.react-datepicker__input-container input {\n width: 100%;\n height: 30px;\n box-sizing: border-box;\n padding: 10px 15px;\n border: 1px solid var(--vchasno-ui-input-border-color-default, #b6cadb);\n border-radius: 8px;\n appearance: none;\n background: #fff;\n font-size: var(--vchasno-ui-input-font-size, 0.8rem);\n line-height: calc(var(--vchasno-ui-input-font-size, 0.8rem) * 2);\n outline: 1px solid transparent;\n transition:\n border var(--vchasno-ui-transition-duration-sec, 0.3s),\n outline-color var(--vchasno-ui-transition-duration-sec, 0.3s);\n vertical-align: middle;\n}\n\n.react-datepicker__input-container input:disabled {\n background: #f3f6f8;\n color: #b6cadb;\n}\n\n.react-datepicker__input-container input:hover {\n cursor: default;\n}\n\n.react-datepicker__input-container input:focus {\n border-color: var(--vchasno-ui-calendar-color);\n outline: 2px solid var(--vchasno-ui-input-outline-color-focused);\n}\n\n/**\n Own component styles\n */\n\n.vchasno-ui-date-picker {\n display: inline-flex;\n flex-direction: column;\n gap: 5px;\n}\n\n.vchasno-ui-date-picker .vchasno-ui-date-picker__picker {\n height: 50px;\n}\n\n.vchasno-ui-date-picker__wrapper {\n position: relative;\n}\n\n.vchasno-ui-date-picker__wrapper:focus-within .vchasno-ui-label-text,\n.vchasno-ui-date-picker.--not-empty .vchasno-ui-label-text {\n top: 0;\n font-size: 12px;\n}\n\n.vchasno-ui-date-picker__wrapper > svg {\n position: absolute;\n top: 50%;\n right: 10px;\n color: var(--vchasno-ui-input-border-color-default);\n transform: translateY(-50%);\n transition: color var(--vchasno-ui-transition-duration-sec, 0.3s);\n}\n\nlabel[class^='vchasno-ui-']:focus-within .vchasno-ui-date-picker__wrapper > svg {\n color: var(--vchasno-ui-calendar-color);\n}\n\n.vchasno-ui-date-picker.--loading .vchasno-ui-date-picker__wrapper > .vchasno-ui-spinner {\n position: absolute;\n top: 50%;\n right: 10px;\n transform: translateY(-50%);\n}\n\n.vchasno-ui-date-picker.--loading .vchasno-ui-date-picker__wrapper .vchasno-ui-spinner circle {\n stroke: var(--vchasno-ui-calendar-color);\n}\n\n.vchasno-ui-date-picker .react-datepicker__input-container input {\n color: var(--vchasno-ui-input-font-color);\n font-size: var(--vchasno-ui-input-font-size);\n line-height: calc(var(--vchasno-ui-input-font-size) * 1.2);\n}\n\n.vchasno-ui-date-picker .react-datepicker__aria-live {\n display: none;\n}\n\n.vchasno-ui-date-picker.--disabled,\n.vchasno-ui-date-picker.--disabled\n .vchasno-ui-date-picker__wrapper\n .vchasno-ui-date-picker__picker {\n cursor: not-allowed;\n opacity: 0.8;\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover,\n.vchasno-ui-date-picker:not(.--disabled):hover\n .vchasno-ui-date-picker__wrapper\n .vchasno-ui-date-picker__picker {\n cursor: pointer;\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover .react-datepicker__input-container input {\n border-color: var(--vchasno-ui-calendar-color);\n outline: 2px solid var(--vchasno-ui-input-outline-color-focused);\n}\n\n.vchasno-ui-date-picker:not(.--disabled):hover .vchasno-ui-date-picker__wrapper > svg {\n color: var(--vchasno-ui-calendar-color);\n}\n";
15568
15667
  styleInject(css_248z);
15569
15668
 
15570
15669
  var SvgCalendar = function () { return (React.createElement("svg", { width: "20", height: "20", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
@@ -15582,16 +15681,20 @@ var defaultMask = [
15582
15681
  /\d/,
15583
15682
  /\d/,
15584
15683
  ];
15585
- /** Компонент вводу дати/часу */
15684
+ /**
15685
+ * @see <https://reactdatepicker.com/>
15686
+ */
15586
15687
  var DatePicker = function (_a) {
15587
15688
  var label = _a.label, disabled = _a.disabled, required = _a.required, loading = _a.loading, hint = _a.hint, error = _a.error, _b = _a.dateFormat, dateFormat = _b === void 0 ? DATE_FORMATS : _b, className = _a.className, _c = _a.timeCaption, timeCaption = _c === void 0 ? 'Час' : _c, _d = _a.enableTabLoop, enableTabLoop = _d === void 0 ? false : _d, _e = _a.locale, locale = _e === void 0 ? uk : _e, _f = _a.showMask, showMask = _f === void 0 ? false : _f, _g = _a.mask, mask = _g === void 0 ? defaultMask : _g, rest = __rest(_a, ["label", "disabled", "required", "loading", "hint", "error", "dateFormat", "className", "timeCaption", "enableTabLoop", "locale", "showMask", "mask"]);
15689
+ var valueExists = !!rest.selected || !!rest.value;
15588
15690
  return (React.createElement("label", { className: cn('vchasno-ui-date-picker', {
15589
15691
  '--loading': loading,
15590
15692
  '--required': required,
15591
15693
  '--disabled': disabled,
15694
+ '--not-empty': valueExists,
15592
15695
  }, className) },
15593
- React.createElement(LabelText, null, label),
15594
15696
  React.createElement("span", { className: "vchasno-ui-date-picker__wrapper" },
15697
+ label && React.createElement(LabelText, null, label),
15595
15698
  React.createElement(DatePicker$1, __assign({ enableTabLoop: enableTabLoop, locale: locale, timeCaption: timeCaption, disabled: disabled, placeholderText: " ", className: "vchasno-ui-date-picker__picker", dateFormat: dateFormat, customInput: showMask ? React.createElement(MaskedInput, { inputMode: "text", mask: mask, showMask: true }) : undefined }, rest)),
15596
15699
  loading ? React.createElement(Spinner, { height: "18px" }) : React.createElement(SvgCalendar, null)),
15597
15700
  React.createElement(InputMeta, { hint: hint, error: error })));