@geneui/components 2.16.0-canary-8e13703-29052024 → 2.16.0-canary-36aab18-26082024

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/Range/index.js CHANGED
@@ -2,7 +2,7 @@ import { _ as _extends } from '../_rollupPluginBabelHelpers-e8fb2e5c.js';
2
2
  import React__default, { useState, useRef, useCallback } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { c as classnames } from '../index-031ff73c.js';
5
- import { c as createSliderWithTooltip, R as Range } from '../rangeAndSlider-6f97ee47.js';
5
+ import { c as createSliderWithTooltip, R as Range } from '../rangeAndSlider-693a3d41.js';
6
6
  import useWidth from '../hooks/useWidth.js';
7
7
  import '../dateValidation-67caec66.js';
8
8
  import 'react-dom';
package/Slider/index.js CHANGED
@@ -2,7 +2,7 @@ import { _ as _extends } from '../_rollupPluginBabelHelpers-e8fb2e5c.js';
2
2
  import React__default, { useState, useRef, useCallback, useEffect } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { c as classnames } from '../index-031ff73c.js';
5
- import { c as createSliderWithTooltip, S as Slider } from '../rangeAndSlider-6f97ee47.js';
5
+ import { c as createSliderWithTooltip, S as Slider } from '../rangeAndSlider-693a3d41.js';
6
6
  import useWidth from '../hooks/useWidth.js';
7
7
  import '../dateValidation-67caec66.js';
8
8
  import 'react-dom';
@@ -1,5 +1,5 @@
1
1
  import { _ as _extends } from '../_rollupPluginBabelHelpers-e8fb2e5c.js';
2
- import React__default, { useRef, useState, useEffect, useMemo, useCallback } from 'react';
2
+ import React__default, { forwardRef, useRef, useState, useImperativeHandle, useEffect, useMemo, useCallback } from 'react';
3
3
  import PropTypes from 'prop-types';
4
4
  import { c as classnames } from '../index-031ff73c.js';
5
5
  import { g as timePickerConfig, s as screenTypes } from '../configs-1fb8eed2.js';
@@ -29,7 +29,7 @@ import '../hooks/useMount.js';
29
29
  import '../index-122432cd.js';
30
30
  import '../debounce-4419bc2f.js';
31
31
 
32
- function TimePickerPopover(_ref) {
32
+ const TimePickerPopover = /*#__PURE__*/forwardRef((_ref, ref) => {
33
33
  let {
34
34
  children,
35
35
  readOnly,
@@ -39,16 +39,19 @@ function TimePickerPopover(_ref) {
39
39
  } = _ref;
40
40
  const rootRef = useRef(null);
41
41
  const [isOpen, setIsOpen] = useState(false);
42
- const openPopover = () => !readOnly && setIsOpen(true);
42
+ useImperativeHandle(ref, () => ({
43
+ toggleOpen() {
44
+ let isPopoverOpen = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : isOpen;
45
+ setIsOpen(!isPopoverOpen);
46
+ }
47
+ }));
48
+ const openPopover = () => !readOnly && !isOpen && setIsOpen(true);
43
49
  const closePopover = () => setIsOpen(false);
44
50
  useKeyDown(openPopover, [openPopover], rootRef, ['Enter']);
45
51
  useKeyDown(closePopover, [closePopover], rootRef, ['Tab', 'Escape']);
46
52
  const handleOutsideClick = useClickOutside(event => {
47
53
  !rootRef.current.contains(event.target) && closePopover();
48
54
  });
49
-
50
- // We need to close popup every time when
51
- // user select some value from current popup
52
55
  useEffect(() => {
53
56
  setIsOpen(false);
54
57
  }, [value]);
@@ -63,7 +66,7 @@ function TimePickerPopover(_ref) {
63
66
  ref: rootRef,
64
67
  onClick: openPopover
65
68
  }, children));
66
- }
69
+ });
67
70
 
68
71
  var css_248z = "[data-gene-ui-version=\"2.15.0\"] .time-picker-holder{width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder.read-only .cursor-pointer{cursor:default}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder.mobile{caret-color:#0000;color:#0000;text-shadow:0 0 0 rgba(var(--background-sc-rgb),.75)}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder.disabled{opacity:.6;pointer-events:none}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder>ul{align-items:center;display:flex;width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder>ul>li.no-shrink{align-items:center;display:flex;flex-shrink:0;justify-content:center}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder>ul>li.no-shrink>span{display:block;font-weight:600;margin:0 .5rem}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder>ul>li.shrink-auto{flex:auto}[data-gene-ui-version=\"2.15.0\"] .time-picker-holder>ul>li.icon-holder{margin-inline-end:.5rem;width:4rem}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop-holder{display:flex;width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop-holder>li{width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop-holder>li+li{border-inline-start:1px solid rgba(var(--background-sc-rgb),.08)}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop{font:600 1.4rem/1.8rem var(--font-family);padding:1rem 0;width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop ul{width:100%}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop ul li{align-items:center;cursor:pointer;display:flex;height:4rem;justify-content:center;text-align:center;transition:background .4s,color .4s;width:100%}@media (hover:hover){[data-gene-ui-version=\"2.15.0\"] .time-picker-drop ul li:hover{background:rgba(var(--background-sc-rgb),.05)}}[data-gene-ui-version=\"2.15.0\"] .time-picker-drop ul li.active{color:var(--hero)}";
69
72
  styleInject(css_248z);
@@ -133,6 +136,7 @@ function TimePicker(_ref) {
133
136
  const [hourPopupValue, setHourPopupValue] = useState(null);
134
137
  const [minutePopupValue, setMinutePopupValue] = useState(null);
135
138
  const [secondPopupValue, setSecondPopupValue] = useState(null);
139
+ const childRef = useRef();
136
140
 
137
141
  // for replacing special symbols
138
142
  const numberRegExp = useMemo(() => {
@@ -321,6 +325,11 @@ function TimePicker(_ref) {
321
325
  onChange(e);
322
326
  }
323
327
  }, [numberRegExp, separator, showSeconds, checkTimeValidation, checkMinuteValidation, checkSecondValidation, handleChange, hourFormat, onChange]);
328
+ useEffect(() => {
329
+ if ((disabled || readOnly) && childRef.current) {
330
+ childRef.current.toggleOpen(true);
331
+ }
332
+ }, [disabled, readOnly]);
324
333
  useEffect(() => {
325
334
  // if hour format changes, convert value to that format
326
335
  const formattedHour = convertToFormat(hour, hourFormat);
@@ -389,6 +398,7 @@ function TimePicker(_ref) {
389
398
  onBlur("".concat(hour).concat(hour && minute && ':').concat(minute).concat(minute && second && ':').concat(second), event);
390
399
  }, [hour, minute, second, onBlur, hourFormat, minuteFormat, showSeconds, secondFormat]);
391
400
  const signleInputPopoverValue = useMemo(() => showSeconds ? convertToFormat(second, secondFormat, true) : convertToFormat(minute, minuteFormat, true), [second, secondFormat, minute, minuteFormat, showSeconds]);
401
+ const handleIconClick = () => childRef.current && !readOnly && !disabled && childRef.current.toggleOpen();
392
402
  return /*#__PURE__*/React__default.createElement("div", {
393
403
  className: classnames('time-picker-holder', className, {
394
404
  'read-only': readOnly,
@@ -464,6 +474,7 @@ function TimePicker(_ref) {
464
474
  toggleHandler: handlePopoverToggle,
465
475
  readOnly: readOnly,
466
476
  value: signleInputPopoverValue,
477
+ ref: childRef,
467
478
  Content: /*#__PURE__*/React__default.createElement("ul", {
468
479
  className: "time-picker-drop-holder"
469
480
  }, /*#__PURE__*/React__default.createElement("li", null, hours), /*#__PURE__*/React__default.createElement("li", null, minutes), showSeconds && /*#__PURE__*/React__default.createElement("li", null, seconds)),
@@ -477,6 +488,8 @@ function TimePicker(_ref) {
477
488
  itemsDirection: "end",
478
489
  readOnly: readOnly,
479
490
  writeProtected: isMobile,
491
+ onIconClick: handleIconClick,
492
+ clickableIcon: true,
480
493
  onBlur: handleInputBlur
481
494
  }, restProps))));
482
495
  }
package/index.js CHANGED
@@ -140,7 +140,7 @@ import './localization-4ba17032.js';
140
140
  import './Popover-f4d1cac0.js';
141
141
  import './index-122432cd.js';
142
142
  import './debounce-4419bc2f.js';
143
- import './rangeAndSlider-6f97ee47.js';
143
+ import './rangeAndSlider-693a3d41.js';
144
144
  import './index-45eafea6.js';
145
145
  import './react-lifecycles-compat.es-6e1f3768.js';
146
146
  import './SuggestionList/index.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@geneui/components",
3
3
  "description": "The Gene UI components library designed for BI tools",
4
- "version": "2.16.0-canary-8e13703-29052024",
4
+ "version": "2.16.0-canary-36aab18-26082024",
5
5
  "author": "SoftConstruct",
6
6
  "homepage": "https://github.com/softconstruct/gene-ui-components#readme",
7
7
  "repository": {
@@ -110,9 +110,17 @@ function require_domCreate () {
110
110
  return _domCreate;
111
111
  }
112
112
 
113
- var _ie8DomDefine = !require_descriptors() && !_fails(function () {
114
- return Object.defineProperty(require_domCreate()('div'), 'a', { get: function () { return 7; } }).a != 7;
115
- });
113
+ var _ie8DomDefine;
114
+ var hasRequired_ie8DomDefine;
115
+
116
+ function require_ie8DomDefine () {
117
+ if (hasRequired_ie8DomDefine) return _ie8DomDefine;
118
+ hasRequired_ie8DomDefine = 1;
119
+ _ie8DomDefine = !require_descriptors() && !_fails(function () {
120
+ return Object.defineProperty(require_domCreate()('div'), 'a', { get: function () { return 7; } }).a != 7;
121
+ });
122
+ return _ie8DomDefine;
123
+ }
116
124
 
117
125
  // 7.1.1 ToPrimitive(input [, PreferredType])
118
126
  var isObject$2 = _isObject;
@@ -133,7 +141,7 @@ function require_objectDp () {
133
141
  if (hasRequired_objectDp) return _objectDp;
134
142
  hasRequired_objectDp = 1;
135
143
  var anObject = _anObject;
136
- var IE8_DOM_DEFINE = _ie8DomDefine;
144
+ var IE8_DOM_DEFINE = require_ie8DomDefine();
137
145
  var toPrimitive = _toPrimitive;
138
146
  var dP = Object.defineProperty;
139
147
 
@@ -1018,7 +1026,7 @@ var createDesc$2 = _propertyDesc;
1018
1026
  var toIObject$2 = _toIobject;
1019
1027
  var toPrimitive$1 = _toPrimitive;
1020
1028
  var has$1 = _has;
1021
- var IE8_DOM_DEFINE = _ie8DomDefine;
1029
+ var IE8_DOM_DEFINE = require_ie8DomDefine();
1022
1030
  var gOPD$1 = Object.getOwnPropertyDescriptor;
1023
1031
 
1024
1032
  _objectGopd.f = require_descriptors() ? gOPD$1 : function getOwnPropertyDescriptor(O, P) {