@uncinc/uncinc-react-kitchen-sink 2.17.2 → 2.18.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.
@@ -49,6 +49,7 @@ var GenericFormElement = function GenericFormElement(props) {
49
49
  html: description,
50
50
  className: "FormElement__description ".concat(className, "__description")
51
51
  }), error && touched ? /*#__PURE__*/React.createElement("div", {
52
+ "aria-live": "assertive",
52
53
  id: errorId,
53
54
  className: "FormElement__error ".concat(className, "__error")
54
55
  }, error) : null);
@@ -1,4 +1,4 @@
1
- var _excluded = ["title", "required", "description", "placeholder", "fieldName", "validation", "onChange", "className", "wrapperClassName", "disabled", "showPasswordReveal", "descriptionAboveInput", "children", "type"];
1
+ var _excluded = ["title", "required", "description", "placeholder", "fieldName", "validation", "onChange", "className", "wrapperClassName", "disabled", "autoCompleteField", "showPasswordReveal", "descriptionAboveInput", "children", "type"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
4
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -32,8 +32,10 @@ export var TextField = function TextField(props) {
32
32
  wrapperClassName = props.wrapperClassName,
33
33
  _props$disabled = props.disabled,
34
34
  disabled = _props$disabled === void 0 ? false : _props$disabled,
35
+ _props$autoCompleteFi = props.autoCompleteField,
36
+ autoCompleteField = _props$autoCompleteFi === void 0 ? false : _props$autoCompleteFi,
35
37
  _props$showPasswordRe = props.showPasswordReveal,
36
- showPasswordReveal = _props$showPasswordRe === void 0 ? false : _props$showPasswordRe,
38
+ showPasswordReveal = _props$showPasswordRe === void 0 ? true : _props$showPasswordRe,
37
39
  descriptionAboveInput = props.descriptionAboveInput,
38
40
  children = props.children,
39
41
  type = props.type,
@@ -97,6 +99,7 @@ export var TextField = function TextField(props) {
97
99
  onKeyUp: handleChange,
98
100
  "aria-describedby": "".concat(errorId, " ").concat(descriptionId),
99
101
  "aria-invalid": Boolean(error && isTouched),
102
+ autoComplete: autoCompleteField ? fieldName : undefined,
100
103
  type: revealPassword ? 'text' : inputType,
101
104
  value: value,
102
105
  disabled: disabled,
@@ -1,4 +1,5 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
3
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
4
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
5
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -10,10 +11,13 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
10
11
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
12
  function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
12
13
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
- import React, { useCallback, useEffect, useState } from 'react';
14
+ import React, { useCallback, useEffect, useState, useRef } from 'react';
14
15
  import Cookies from 'js-cookie';
15
16
  import classNames from 'classnames';
16
17
  import { useTranslation } from 'react-i18next';
18
+ import useDialogHelpers from '../../hooks/useDialogHelpers';
19
+ import useEscape from '../../hooks/useEscape';
20
+ import Icon from '../Icon';
17
21
  import useCookieStore from '../../hooks/useCookieStore';
18
22
  import Accordion from '../Accordion';
19
23
  import AccordionItemVariant from '../Accordion/AccordionItemVariant';
@@ -124,6 +128,7 @@ var CookieCompliancePopup = function CookieCompliancePopup(props) {
124
128
  _useState4 = _slicedToArray(_useState3, 2),
125
129
  answeredInCurrentSession = _useState4[0],
126
130
  setAnsweredInCurrentSession = _useState4[1];
131
+ var wrapperElement = useRef(null);
127
132
 
128
133
  // Cookie stating if the cookie has already been accepted. Uses the following states:
129
134
  // null: unknown
@@ -259,6 +264,24 @@ var CookieCompliancePopup = function CookieCompliancePopup(props) {
259
264
  checked = _ref.checked;
260
265
  setChoicesSelected(_objectSpread(_objectSpread({}, choicesSelected), {}, _defineProperty({}, value, checked)));
261
266
  };
267
+
268
+ // This function closes the banner without saving any choices
269
+ var closeFunction = useCallback(function () {
270
+ // Accept only necessary cookies when closing without making a selection
271
+ onInternalAgree(defaultValues);
272
+ }, [defaultValues, onInternalAgree]);
273
+ var _useDialogHelpers = useDialogHelpers({
274
+ wrapperElement: wrapperElement,
275
+ closeFunction: closeFunction,
276
+ isOpen: !isAnswered,
277
+ disableClosers: true
278
+ }),
279
+ dialogHelpersProps = _useDialogHelpers.dialogHelpersProps;
280
+
281
+ // Enable only Escape key to close, not click outside
282
+ useEscape({
283
+ onPress: closeFunction
284
+ });
262
285
  var classes = classNames('GoogleConsentCookieBanner', className, {
263
286
  'GoogleConsentCookieBanner--prompting': isPrompting,
264
287
  'GoogleConsentCookieBanner--loading': isLoading,
@@ -303,14 +326,23 @@ var CookieCompliancePopup = function CookieCompliancePopup(props) {
303
326
  className: classes,
304
327
  role: "region",
305
328
  "aria-label": t('cookies.banner_label')
306
- }, /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement("div", {
329
+ }, /*#__PURE__*/React.createElement(Container, null, /*#__PURE__*/React.createElement("div", _extends({}, dialogHelpersProps, {
330
+ ref: wrapperElement,
307
331
  className: "GoogleConsentCookieBanner__content ".concat(manualChoiceVisible ? 'GoogleConsentCookieBanner__content--full-height' : '')
308
- }, /*#__PURE__*/React.createElement("div", {
332
+ }), /*#__PURE__*/React.createElement("div", {
309
333
  className: "row"
310
334
  }, /*#__PURE__*/React.createElement("div", {
311
335
  className: "col-12 GoogleConsentCookieBanner__content_header"
312
- }, title && /*#__PURE__*/React.createElement("h3", null, title))), !manualChoiceVisible ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
313
- className: "row"
336
+ }, title && /*#__PURE__*/React.createElement("h3", null, title), /*#__PURE__*/React.createElement("button", {
337
+ type: "button",
338
+ className: "GoogleConsentCookieBanner__close-button",
339
+ "aria-label": t('general.close', 'Close'),
340
+ onClick: closeFunction
341
+ }, /*#__PURE__*/React.createElement(Icon, {
342
+ name: "close",
343
+ flair: "outlined"
344
+ })))), !manualChoiceVisible ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
345
+ className: "row GoogleConsentCookieBanner__content__content-row"
314
346
  }, /*#__PURE__*/React.createElement("div", {
315
347
  className: "col-12 GoogleConsentCookieBanner__content__message"
316
348
  }, children), /*#__PURE__*/React.createElement("div", {
@@ -37,6 +37,12 @@
37
37
  }
38
38
  }
39
39
 
40
+ &_header {
41
+ display: flex;
42
+ justify-content: space-between;
43
+ align-items: flex-start;
44
+ }
45
+
40
46
  &__buttons {
41
47
  display: flex;
42
48
  flex-direction: column;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uncinc/uncinc-react-kitchen-sink",
3
- "version": "2.17.2",
3
+ "version": "2.18.0",
4
4
  "description": "Default React components that are easily extended.",
5
5
  "author": "uncinc",
6
6
  "license": "MIT",