@abgov/jsonforms-components 2.44.2 → 2.45.1

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/index.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as runtime from 'react/jsx-runtime';
2
2
  import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
3
- import React, { createContext, useContext, useReducer, useMemo, useEffect, useCallback, useState, useRef, useLayoutEffect } from 'react';
3
+ import React, { createContext, useContext, useReducer, useMemo, useEffect, useCallback, useRef, useState, useLayoutEffect } from 'react';
4
4
  import { GoabFormItem, GoabInput, GoabTextArea, GoabCallout, GoabRadioGroup, GoabRadioItem, GoabCheckbox, GoabIcon, GoabButton, GoabGrid, GoabModal, GoabButtonGroup, GoabTable, GoabContainer, GoabDropdown, GoabDropdownItem, GoabIconButton, GoabDetails, GoabFormStepper, GoabFormStep, GoabPages, GoabBadge, GoabText, GoabFileUploadInput, GoabCircularProgress, GoabSpinner } from '@abgov/react-components';
5
5
  import styled from 'styled-components';
6
6
  import axios from 'axios';
@@ -1638,44 +1638,14 @@ $$G({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }
1638
1638
  assign: assign
1639
1639
  });
1640
1640
 
1641
- var NATIVE_BIND$1 = functionBindNative;
1642
-
1643
- var FunctionPrototype = Function.prototype;
1644
- var apply$4 = FunctionPrototype.apply;
1645
- var call$n = FunctionPrototype.call;
1646
-
1647
- // eslint-disable-next-line es/no-reflect -- safe
1648
- var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND$1 ? call$n.bind(apply$4) : function () {
1649
- return call$n.apply(apply$4, arguments);
1650
- });
1651
-
1652
- var defineProperty$1 = objectDefineProperty.f;
1653
-
1654
- var proxyAccessor$2 = function (Target, Source, key) {
1655
- key in Target || defineProperty$1(Target, key, {
1656
- configurable: true,
1657
- get: function () { return Source[key]; },
1658
- set: function (it) { Source[key] = it; }
1659
- });
1660
- };
1661
-
1662
- var isCallable$e = isCallable$s;
1663
- var isObject$6 = isObject$f;
1664
- var setPrototypeOf$2 = objectSetPrototypeOf;
1641
+ var classofRaw$1 = classofRaw$2;
1642
+ var uncurryThis$o = functionUncurryThis;
1665
1643
 
1666
- // makes subclassing work correct for wrapped built-ins
1667
- var inheritIfRequired$2 = function ($this, dummy, Wrapper) {
1668
- var NewTarget, NewTargetPrototype;
1669
- if (
1670
- // it can work only with native `setPrototypeOf`
1671
- setPrototypeOf$2 &&
1672
- // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
1673
- isCallable$e(NewTarget = dummy.constructor) &&
1674
- NewTarget !== Wrapper &&
1675
- isObject$6(NewTargetPrototype = NewTarget.prototype) &&
1676
- NewTargetPrototype !== Wrapper.prototype
1677
- ) setPrototypeOf$2($this, NewTargetPrototype);
1678
- return $this;
1644
+ var functionUncurryThisClause = function (fn) {
1645
+ // Nashorn bug:
1646
+ // https://github.com/zloirock/core-js/issues/1128
1647
+ // https://github.com/zloirock/core-js/issues/1130
1648
+ if (classofRaw$1(fn) === 'Function') return uncurryThis$o(fn);
1679
1649
  };
1680
1650
 
1681
1651
  var wellKnownSymbol$f = wellKnownSymbol$m;
@@ -1688,15 +1658,15 @@ test[TO_STRING_TAG$3] = 'z';
1688
1658
  var toStringTagSupport = String(test) === '[object z]';
1689
1659
 
1690
1660
  var TO_STRING_TAG_SUPPORT = toStringTagSupport;
1691
- var isCallable$d = isCallable$s;
1692
- var classofRaw$1 = classofRaw$2;
1661
+ var isCallable$e = isCallable$s;
1662
+ var classofRaw = classofRaw$2;
1693
1663
  var wellKnownSymbol$e = wellKnownSymbol$m;
1694
1664
 
1695
1665
  var TO_STRING_TAG$2 = wellKnownSymbol$e('toStringTag');
1696
1666
  var $Object = Object;
1697
1667
 
1698
1668
  // ES3 wrong here
1699
- var CORRECT_ARGUMENTS = classofRaw$1(function () { return arguments; }()) === 'Arguments';
1669
+ var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';
1700
1670
 
1701
1671
  // fallback for IE11 Script Access Denied error
1702
1672
  var tryGet = function (it, key) {
@@ -1706,15 +1676,15 @@ var tryGet = function (it, key) {
1706
1676
  };
1707
1677
 
1708
1678
  // getting tag from ES6+ `Object.prototype.toString`
1709
- var classof$9 = TO_STRING_TAG_SUPPORT ? classofRaw$1 : function (it) {
1679
+ var classof$9 = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {
1710
1680
  var O, tag, result;
1711
1681
  return it === undefined ? 'Undefined' : it === null ? 'Null'
1712
1682
  // @@toStringTag case
1713
1683
  : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG$2)) == 'string' ? tag
1714
1684
  // builtinTag case
1715
- : CORRECT_ARGUMENTS ? classofRaw$1(O)
1685
+ : CORRECT_ARGUMENTS ? classofRaw(O)
1716
1686
  // ES3 arguments fallback
1717
- : (result = classofRaw$1(O)) === 'Object' && isCallable$d(O.callee) ? 'Arguments' : result;
1687
+ : (result = classofRaw(O)) === 'Object' && isCallable$e(O.callee) ? 'Arguments' : result;
1718
1688
  };
1719
1689
 
1720
1690
  var classof$8 = classof$9;
@@ -1726,27 +1696,137 @@ var toString$j = function (argument) {
1726
1696
  return $String$1(argument);
1727
1697
  };
1728
1698
 
1699
+ var isObject$6 = isObject$f;
1700
+ var classof$7 = classofRaw$2;
1701
+ var wellKnownSymbol$d = wellKnownSymbol$m;
1702
+
1703
+ var MATCH$2 = wellKnownSymbol$d('match');
1704
+
1705
+ // `IsRegExp` abstract operation
1706
+ // https://tc39.es/ecma262/#sec-isregexp
1707
+ var isRegexp = function (it) {
1708
+ var isRegExp;
1709
+ return isObject$6(it) && ((isRegExp = it[MATCH$2]) !== undefined ? !!isRegExp : classof$7(it) === 'RegExp');
1710
+ };
1711
+
1712
+ var isRegExp$1 = isRegexp;
1713
+
1714
+ var $TypeError$e = TypeError;
1715
+
1716
+ var notARegexp = function (it) {
1717
+ if (isRegExp$1(it)) {
1718
+ throw new $TypeError$e("The method doesn't accept regular expressions");
1719
+ } return it;
1720
+ };
1721
+
1722
+ var wellKnownSymbol$c = wellKnownSymbol$m;
1723
+
1724
+ var MATCH$1 = wellKnownSymbol$c('match');
1725
+
1726
+ var correctIsRegexpLogic = function (METHOD_NAME) {
1727
+ var regexp = /./;
1728
+ try {
1729
+ '/./'[METHOD_NAME](regexp);
1730
+ } catch (error1) {
1731
+ try {
1732
+ regexp[MATCH$1] = false;
1733
+ return '/./'[METHOD_NAME](regexp);
1734
+ } catch (error2) { /* empty */ }
1735
+ } return false;
1736
+ };
1737
+
1738
+ var $$F = _export;
1739
+ var uncurryThis$n = functionUncurryThisClause;
1740
+ var getOwnPropertyDescriptor$4 = objectGetOwnPropertyDescriptor.f;
1741
+ var toLength$5 = toLength$7;
1729
1742
  var toString$i = toString$j;
1743
+ var notARegExp$2 = notARegexp;
1744
+ var requireObjectCoercible$a = requireObjectCoercible$e;
1745
+ var correctIsRegExpLogic$2 = correctIsRegexpLogic;
1730
1746
 
1731
- var normalizeStringArgument$1 = function (argument, $default) {
1732
- return argument === undefined ? arguments.length < 2 ? '' : $default : toString$i(argument);
1747
+ var stringSlice$8 = uncurryThis$n(''.slice);
1748
+ var min$3 = Math.min;
1749
+
1750
+ var CORRECT_IS_REGEXP_LOGIC$1 = correctIsRegExpLogic$2('startsWith');
1751
+ // https://github.com/zloirock/core-js/pull/702
1752
+ var MDN_POLYFILL_BUG$1 = !CORRECT_IS_REGEXP_LOGIC$1 && !!function () {
1753
+ var descriptor = getOwnPropertyDescriptor$4(String.prototype, 'startsWith');
1754
+ return descriptor && !descriptor.writable;
1755
+ }();
1756
+
1757
+ // `String.prototype.startsWith` method
1758
+ // https://tc39.es/ecma262/#sec-string.prototype.startswith
1759
+ $$F({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG$1 && !CORRECT_IS_REGEXP_LOGIC$1 }, {
1760
+ startsWith: function startsWith(searchString /* , position = 0 */) {
1761
+ var that = toString$i(requireObjectCoercible$a(this));
1762
+ notARegExp$2(searchString);
1763
+ var index = toLength$5(min$3(arguments.length > 1 ? arguments[1] : undefined, that.length));
1764
+ var search = toString$i(searchString);
1765
+ return stringSlice$8(that, index, index + search.length) === search;
1766
+ }
1767
+ });
1768
+
1769
+ var NATIVE_BIND$1 = functionBindNative;
1770
+
1771
+ var FunctionPrototype = Function.prototype;
1772
+ var apply$4 = FunctionPrototype.apply;
1773
+ var call$n = FunctionPrototype.call;
1774
+
1775
+ // eslint-disable-next-line es/no-reflect -- safe
1776
+ var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND$1 ? call$n.bind(apply$4) : function () {
1777
+ return call$n.apply(apply$4, arguments);
1778
+ });
1779
+
1780
+ var defineProperty$1 = objectDefineProperty.f;
1781
+
1782
+ var proxyAccessor$2 = function (Target, Source, key) {
1783
+ key in Target || defineProperty$1(Target, key, {
1784
+ configurable: true,
1785
+ get: function () { return Source[key]; },
1786
+ set: function (it) { Source[key] = it; }
1787
+ });
1733
1788
  };
1734
1789
 
1790
+ var isCallable$d = isCallable$s;
1735
1791
  var isObject$5 = isObject$f;
1792
+ var setPrototypeOf$2 = objectSetPrototypeOf;
1793
+
1794
+ // makes subclassing work correct for wrapped built-ins
1795
+ var inheritIfRequired$2 = function ($this, dummy, Wrapper) {
1796
+ var NewTarget, NewTargetPrototype;
1797
+ if (
1798
+ // it can work only with native `setPrototypeOf`
1799
+ setPrototypeOf$2 &&
1800
+ // we haven't completely correct pre-ES6 way for getting `new.target`, so use this
1801
+ isCallable$d(NewTarget = dummy.constructor) &&
1802
+ NewTarget !== Wrapper &&
1803
+ isObject$5(NewTargetPrototype = NewTarget.prototype) &&
1804
+ NewTargetPrototype !== Wrapper.prototype
1805
+ ) setPrototypeOf$2($this, NewTargetPrototype);
1806
+ return $this;
1807
+ };
1808
+
1809
+ var toString$h = toString$j;
1810
+
1811
+ var normalizeStringArgument$1 = function (argument, $default) {
1812
+ return argument === undefined ? arguments.length < 2 ? '' : $default : toString$h(argument);
1813
+ };
1814
+
1815
+ var isObject$4 = isObject$f;
1736
1816
  var createNonEnumerableProperty$5 = createNonEnumerableProperty$a;
1737
1817
 
1738
1818
  // `InstallErrorCause` abstract operation
1739
1819
  // https://tc39.es/proposal-error-cause/#sec-errorobjects-install-error-cause
1740
1820
  var installErrorCause$1 = function (O, options) {
1741
- if (isObject$5(options) && 'cause' in options) {
1821
+ if (isObject$4(options) && 'cause' in options) {
1742
1822
  createNonEnumerableProperty$5(O, 'cause', options.cause);
1743
1823
  }
1744
1824
  };
1745
1825
 
1746
- var uncurryThis$o = functionUncurryThis;
1826
+ var uncurryThis$m = functionUncurryThis;
1747
1827
 
1748
1828
  var $Error = Error;
1749
- var replace$6 = uncurryThis$o(''.replace);
1829
+ var replace$6 = uncurryThis$m(''.replace);
1750
1830
 
1751
1831
  var TEST = (function (arg) { return String(new $Error(arg).stack); })('zxcasd');
1752
1832
  // eslint-disable-next-line redos/no-vulnerable -- safe
@@ -1849,7 +1929,7 @@ var wrapErrorConstructorWithCause$1 = function (FULL_NAME, wrapper, FORCED, IS_A
1849
1929
  };
1850
1930
 
1851
1931
  /* eslint-disable no-unused-vars -- required for functions `.length` */
1852
- var $$F = _export;
1932
+ var $$E = _export;
1853
1933
  var global$g = global$r;
1854
1934
  var apply$3 = functionApply;
1855
1935
  var wrapErrorConstructorWithCause = wrapErrorConstructorWithCause$1;
@@ -1863,14 +1943,14 @@ var FORCED$5 = new Error('e', { cause: 7 }).cause !== 7;
1863
1943
  var exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) {
1864
1944
  var O = {};
1865
1945
  O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED$5);
1866
- $$F({ global: true, constructor: true, arity: 1, forced: FORCED$5 }, O);
1946
+ $$E({ global: true, constructor: true, arity: 1, forced: FORCED$5 }, O);
1867
1947
  };
1868
1948
 
1869
1949
  var exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) {
1870
1950
  if (WebAssembly && WebAssembly[ERROR_NAME]) {
1871
1951
  var O = {};
1872
1952
  O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED$5);
1873
- $$F({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED$5 }, O);
1953
+ $$E({ target: WEB_ASSEMBLY, stat: true, constructor: true, arity: 1, forced: FORCED$5 }, O);
1874
1954
  }
1875
1955
  };
1876
1956
 
@@ -1906,7 +1986,7 @@ exportWebAssemblyErrorCauseWrapper('RuntimeError', function (init) {
1906
1986
  return function RuntimeError(message) { return apply$3(init, this, arguments); };
1907
1987
  });
1908
1988
 
1909
- var $$E = _export;
1989
+ var $$D = _export;
1910
1990
  var toObject$5 = toObject$9;
1911
1991
  var lengthOfArrayLike$7 = lengthOfArrayLike$9;
1912
1992
  var toIntegerOrInfinity$6 = toIntegerOrInfinity$9;
@@ -1914,7 +1994,7 @@ var addToUnscopables$3 = addToUnscopables$5;
1914
1994
 
1915
1995
  // `Array.prototype.at` method
1916
1996
  // https://tc39.es/ecma262/#sec-array.prototype.at
1917
- $$E({ target: 'Array', proto: true }, {
1997
+ $$D({ target: 'Array', proto: true }, {
1918
1998
  at: function at(index) {
1919
1999
  var O = toObject$5(this);
1920
2000
  var len = lengthOfArrayLike$7(O);
@@ -2001,8 +2081,8 @@ var regexpUnsupportedNcg = fails$h(function () {
2001
2081
  /* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
2002
2082
  /* eslint-disable regexp/no-useless-quantifier -- testing */
2003
2083
  var call$m = functionCall;
2004
- var uncurryThis$n = functionUncurryThis;
2005
- var toString$h = toString$j;
2084
+ var uncurryThis$l = functionUncurryThis;
2085
+ var toString$g = toString$j;
2006
2086
  var regexpFlags = regexpFlags$1;
2007
2087
  var stickyHelpers$2 = regexpStickyHelpers;
2008
2088
  var shared = shared$4;
@@ -2014,10 +2094,10 @@ var UNSUPPORTED_NCG$1 = regexpUnsupportedNcg;
2014
2094
  var nativeReplace = shared('native-string-replace', String.prototype.replace);
2015
2095
  var nativeExec = RegExp.prototype.exec;
2016
2096
  var patchedExec = nativeExec;
2017
- var charAt$6 = uncurryThis$n(''.charAt);
2018
- var indexOf = uncurryThis$n(''.indexOf);
2019
- var replace$5 = uncurryThis$n(''.replace);
2020
- var stringSlice$8 = uncurryThis$n(''.slice);
2097
+ var charAt$6 = uncurryThis$l(''.charAt);
2098
+ var indexOf = uncurryThis$l(''.indexOf);
2099
+ var replace$5 = uncurryThis$l(''.replace);
2100
+ var stringSlice$7 = uncurryThis$l(''.slice);
2021
2101
 
2022
2102
  var UPDATES_LAST_INDEX_WRONG = (function () {
2023
2103
  var re1 = /a/;
@@ -2038,7 +2118,7 @@ if (PATCH) {
2038
2118
  patchedExec = function exec(string) {
2039
2119
  var re = this;
2040
2120
  var state = getInternalState$1(re);
2041
- var str = toString$h(string);
2121
+ var str = toString$g(string);
2042
2122
  var raw = state.raw;
2043
2123
  var result, reCopy, lastIndex, match, i, object, group;
2044
2124
 
@@ -2062,7 +2142,7 @@ if (PATCH) {
2062
2142
  flags += 'g';
2063
2143
  }
2064
2144
 
2065
- strCopy = stringSlice$8(str, re.lastIndex);
2145
+ strCopy = stringSlice$7(str, re.lastIndex);
2066
2146
  // Support anchored sticky behavior.
2067
2147
  if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt$6(str, re.lastIndex - 1) !== '\n')) {
2068
2148
  source = '(?: ' + source + ')';
@@ -2083,8 +2163,8 @@ if (PATCH) {
2083
2163
 
2084
2164
  if (sticky) {
2085
2165
  if (match) {
2086
- match.input = stringSlice$8(match.input, charsAdded);
2087
- match[0] = stringSlice$8(match[0], charsAdded);
2166
+ match.input = stringSlice$7(match.input, charsAdded);
2167
+ match[0] = stringSlice$7(match[0], charsAdded);
2088
2168
  match.index = re.lastIndex;
2089
2169
  re.lastIndex += match[0].length;
2090
2170
  } else re.lastIndex = 0;
@@ -2115,22 +2195,22 @@ if (PATCH) {
2115
2195
 
2116
2196
  var regexpExec$2 = patchedExec;
2117
2197
 
2118
- var $$D = _export;
2198
+ var $$C = _export;
2119
2199
  var exec$6 = regexpExec$2;
2120
2200
 
2121
2201
  // `RegExp.prototype.exec` method
2122
2202
  // https://tc39.es/ecma262/#sec-regexp.prototype.exec
2123
- $$D({ target: 'RegExp', proto: true, forced: /./.exec !== exec$6 }, {
2203
+ $$C({ target: 'RegExp', proto: true, forced: /./.exec !== exec$6 }, {
2124
2204
  exec: exec$6
2125
2205
  });
2126
2206
 
2127
2207
  // TODO: Remove from `core-js@4` since it's moved to entry points
2128
2208
 
2129
- var $$C = _export;
2209
+ var $$B = _export;
2130
2210
  var call$l = functionCall;
2131
2211
  var isCallable$c = isCallable$s;
2132
2212
  var anObject$m = anObject$s;
2133
- var toString$g = toString$j;
2213
+ var toString$f = toString$j;
2134
2214
 
2135
2215
  var DELEGATES_TO_EXEC = function () {
2136
2216
  var execCalled = false;
@@ -2146,10 +2226,10 @@ var nativeTest = /./.test;
2146
2226
 
2147
2227
  // `RegExp.prototype.test` method
2148
2228
  // https://tc39.es/ecma262/#sec-regexp.prototype.test
2149
- $$C({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {
2229
+ $$B({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {
2150
2230
  test: function (S) {
2151
2231
  var R = anObject$m(this);
2152
- var string = toString$g(S);
2232
+ var string = toString$f(S);
2153
2233
  var exec = R.exec;
2154
2234
  if (!isCallable$c(exec)) return call$l(nativeTest, R, string);
2155
2235
  var result = call$l(exec, R, string);
@@ -2198,14 +2278,14 @@ if (NOT_GENERIC || INCORRECT_NAME) {
2198
2278
  }, { unsafe: true });
2199
2279
  }
2200
2280
 
2201
- var $$B = _export;
2202
- var uncurryThis$m = functionUncurryThis;
2203
- var requireObjectCoercible$a = requireObjectCoercible$e;
2281
+ var $$A = _export;
2282
+ var uncurryThis$k = functionUncurryThis;
2283
+ var requireObjectCoercible$9 = requireObjectCoercible$e;
2204
2284
  var toIntegerOrInfinity$5 = toIntegerOrInfinity$9;
2205
- var toString$f = toString$j;
2285
+ var toString$e = toString$j;
2206
2286
  var fails$f = fails$w;
2207
2287
 
2208
- var charAt$5 = uncurryThis$m(''.charAt);
2288
+ var charAt$5 = uncurryThis$k(''.charAt);
2209
2289
 
2210
2290
  var FORCED$4 = fails$f(function () {
2211
2291
  // eslint-disable-next-line es/no-array-string-prototype-at -- safe
@@ -2214,9 +2294,9 @@ var FORCED$4 = fails$f(function () {
2214
2294
 
2215
2295
  // `String.prototype.at` method
2216
2296
  // https://tc39.es/ecma262/#sec-string.prototype.at
2217
- $$B({ target: 'String', proto: true, forced: FORCED$4 }, {
2297
+ $$A({ target: 'String', proto: true, forced: FORCED$4 }, {
2218
2298
  at: function at(index) {
2219
- var S = toString$f(requireObjectCoercible$a(this));
2299
+ var S = toString$e(requireObjectCoercible$9(this));
2220
2300
  var len = S.length;
2221
2301
  var relativeIndex = toIntegerOrInfinity$5(index);
2222
2302
  var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex;
@@ -2230,14 +2310,14 @@ var call$j = functionCall;
2230
2310
  var defineBuiltIn$4 = defineBuiltIn$9;
2231
2311
  var regexpExec$1 = regexpExec$2;
2232
2312
  var fails$e = fails$w;
2233
- var wellKnownSymbol$d = wellKnownSymbol$m;
2313
+ var wellKnownSymbol$b = wellKnownSymbol$m;
2234
2314
  var createNonEnumerableProperty$2 = createNonEnumerableProperty$a;
2235
2315
 
2236
- var SPECIES$4 = wellKnownSymbol$d('species');
2316
+ var SPECIES$4 = wellKnownSymbol$b('species');
2237
2317
  var RegExpPrototype$2 = RegExp.prototype;
2238
2318
 
2239
2319
  var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
2240
- var SYMBOL = wellKnownSymbol$d(KEY);
2320
+ var SYMBOL = wellKnownSymbol$b(KEY);
2241
2321
 
2242
2322
  var DELEGATES_TO_SYMBOL = !fails$e(function () {
2243
2323
  // String methods call symbol-named RegExp methods
@@ -2300,18 +2380,18 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
2300
2380
  if (SHAM) createNonEnumerableProperty$2(RegExpPrototype$2[SYMBOL], 'sham', true);
2301
2381
  };
2302
2382
 
2303
- var uncurryThis$l = functionUncurryThis;
2383
+ var uncurryThis$j = functionUncurryThis;
2304
2384
  var toIntegerOrInfinity$4 = toIntegerOrInfinity$9;
2305
- var toString$e = toString$j;
2306
- var requireObjectCoercible$9 = requireObjectCoercible$e;
2385
+ var toString$d = toString$j;
2386
+ var requireObjectCoercible$8 = requireObjectCoercible$e;
2307
2387
 
2308
- var charAt$4 = uncurryThis$l(''.charAt);
2309
- var charCodeAt$1 = uncurryThis$l(''.charCodeAt);
2310
- var stringSlice$7 = uncurryThis$l(''.slice);
2388
+ var charAt$4 = uncurryThis$j(''.charAt);
2389
+ var charCodeAt$1 = uncurryThis$j(''.charCodeAt);
2390
+ var stringSlice$6 = uncurryThis$j(''.slice);
2311
2391
 
2312
2392
  var createMethod$3 = function (CONVERT_TO_STRING) {
2313
2393
  return function ($this, pos) {
2314
- var S = toString$e(requireObjectCoercible$9($this));
2394
+ var S = toString$d(requireObjectCoercible$8($this));
2315
2395
  var position = toIntegerOrInfinity$4(pos);
2316
2396
  var size = S.length;
2317
2397
  var first, second;
@@ -2323,7 +2403,7 @@ var createMethod$3 = function (CONVERT_TO_STRING) {
2323
2403
  ? charAt$4(S, position)
2324
2404
  : first
2325
2405
  : CONVERT_TO_STRING
2326
- ? stringSlice$7(S, position, position + 2)
2406
+ ? stringSlice$6(S, position, position + 2)
2327
2407
  : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;
2328
2408
  };
2329
2409
  };
@@ -2342,13 +2422,13 @@ var advanceStringIndex$3 = function (S, index, unicode) {
2342
2422
  return index + (unicode ? charAt$3(S, index).length : 1);
2343
2423
  };
2344
2424
 
2345
- var uncurryThis$k = functionUncurryThis;
2425
+ var uncurryThis$i = functionUncurryThis;
2346
2426
  var toObject$4 = toObject$9;
2347
2427
 
2348
2428
  var floor = Math.floor;
2349
- var charAt$2 = uncurryThis$k(''.charAt);
2350
- var replace$4 = uncurryThis$k(''.replace);
2351
- var stringSlice$6 = uncurryThis$k(''.slice);
2429
+ var charAt$2 = uncurryThis$i(''.charAt);
2430
+ var replace$4 = uncurryThis$i(''.replace);
2431
+ var stringSlice$5 = uncurryThis$i(''.slice);
2352
2432
  // eslint-disable-next-line redos/no-vulnerable -- safe
2353
2433
  var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d{1,2}|<[^>]*>)/g;
2354
2434
  var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d{1,2})/g;
@@ -2368,10 +2448,10 @@ var getSubstitution$1 = function (matched, str, position, captures, namedCapture
2368
2448
  switch (charAt$2(ch, 0)) {
2369
2449
  case '$': return '$';
2370
2450
  case '&': return matched;
2371
- case '`': return stringSlice$6(str, 0, position);
2372
- case "'": return stringSlice$6(str, tailPos);
2451
+ case '`': return stringSlice$5(str, 0, position);
2452
+ case "'": return stringSlice$5(str, tailPos);
2373
2453
  case '<':
2374
- capture = namedCaptures[stringSlice$6(ch, 1, -1)];
2454
+ capture = namedCaptures[stringSlice$5(ch, 1, -1)];
2375
2455
  break;
2376
2456
  default: // \d\d?
2377
2457
  var n = +ch;
@@ -2391,10 +2471,10 @@ var getSubstitution$1 = function (matched, str, position, captures, namedCapture
2391
2471
  var call$i = functionCall;
2392
2472
  var anObject$k = anObject$s;
2393
2473
  var isCallable$b = isCallable$s;
2394
- var classof$7 = classofRaw$2;
2474
+ var classof$6 = classofRaw$2;
2395
2475
  var regexpExec = regexpExec$2;
2396
2476
 
2397
- var $TypeError$e = TypeError;
2477
+ var $TypeError$d = TypeError;
2398
2478
 
2399
2479
  // `RegExpExec` abstract operation
2400
2480
  // https://tc39.es/ecma262/#sec-regexpexec
@@ -2405,35 +2485,35 @@ var regexpExecAbstract = function (R, S) {
2405
2485
  if (result !== null) anObject$k(result);
2406
2486
  return result;
2407
2487
  }
2408
- if (classof$7(R) === 'RegExp') return call$i(regexpExec, R, S);
2409
- throw new $TypeError$e('RegExp#exec called on incompatible receiver');
2488
+ if (classof$6(R) === 'RegExp') return call$i(regexpExec, R, S);
2489
+ throw new $TypeError$d('RegExp#exec called on incompatible receiver');
2410
2490
  };
2411
2491
 
2412
2492
  var apply$2 = functionApply;
2413
2493
  var call$h = functionCall;
2414
- var uncurryThis$j = functionUncurryThis;
2494
+ var uncurryThis$h = functionUncurryThis;
2415
2495
  var fixRegExpWellKnownSymbolLogic$2 = fixRegexpWellKnownSymbolLogic;
2416
2496
  var fails$d = fails$w;
2417
2497
  var anObject$j = anObject$s;
2418
2498
  var isCallable$a = isCallable$s;
2419
2499
  var isNullOrUndefined$4 = isNullOrUndefined$7;
2420
2500
  var toIntegerOrInfinity$3 = toIntegerOrInfinity$9;
2421
- var toLength$5 = toLength$7;
2422
- var toString$d = toString$j;
2423
- var requireObjectCoercible$8 = requireObjectCoercible$e;
2501
+ var toLength$4 = toLength$7;
2502
+ var toString$c = toString$j;
2503
+ var requireObjectCoercible$7 = requireObjectCoercible$e;
2424
2504
  var advanceStringIndex$2 = advanceStringIndex$3;
2425
2505
  var getMethod$5 = getMethod$7;
2426
2506
  var getSubstitution = getSubstitution$1;
2427
2507
  var regExpExec$2 = regexpExecAbstract;
2428
- var wellKnownSymbol$c = wellKnownSymbol$m;
2508
+ var wellKnownSymbol$a = wellKnownSymbol$m;
2429
2509
 
2430
- var REPLACE = wellKnownSymbol$c('replace');
2510
+ var REPLACE = wellKnownSymbol$a('replace');
2431
2511
  var max$1 = Math.max;
2432
- var min$3 = Math.min;
2433
- var concat = uncurryThis$j([].concat);
2434
- var push$3 = uncurryThis$j([].push);
2435
- var stringIndexOf$2 = uncurryThis$j(''.indexOf);
2436
- var stringSlice$5 = uncurryThis$j(''.slice);
2512
+ var min$2 = Math.min;
2513
+ var concat = uncurryThis$h([].concat);
2514
+ var push$3 = uncurryThis$h([].push);
2515
+ var stringIndexOf$2 = uncurryThis$h(''.indexOf);
2516
+ var stringSlice$4 = uncurryThis$h(''.slice);
2437
2517
 
2438
2518
  var maybeToString = function (it) {
2439
2519
  return it === undefined ? it : String(it);
@@ -2473,17 +2553,17 @@ fixRegExpWellKnownSymbolLogic$2('replace', function (_, nativeReplace, maybeCall
2473
2553
  // `String.prototype.replace` method
2474
2554
  // https://tc39.es/ecma262/#sec-string.prototype.replace
2475
2555
  function replace(searchValue, replaceValue) {
2476
- var O = requireObjectCoercible$8(this);
2556
+ var O = requireObjectCoercible$7(this);
2477
2557
  var replacer = isNullOrUndefined$4(searchValue) ? undefined : getMethod$5(searchValue, REPLACE);
2478
2558
  return replacer
2479
2559
  ? call$h(replacer, searchValue, O, replaceValue)
2480
- : call$h(nativeReplace, toString$d(O), searchValue, replaceValue);
2560
+ : call$h(nativeReplace, toString$c(O), searchValue, replaceValue);
2481
2561
  },
2482
2562
  // `RegExp.prototype[@@replace]` method
2483
2563
  // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace
2484
2564
  function (string, replaceValue) {
2485
2565
  var rx = anObject$j(this);
2486
- var S = toString$d(string);
2566
+ var S = toString$c(string);
2487
2567
 
2488
2568
  if (
2489
2569
  typeof replaceValue == 'string' &&
@@ -2495,7 +2575,7 @@ fixRegExpWellKnownSymbolLogic$2('replace', function (_, nativeReplace, maybeCall
2495
2575
  }
2496
2576
 
2497
2577
  var functionalReplace = isCallable$a(replaceValue);
2498
- if (!functionalReplace) replaceValue = toString$d(replaceValue);
2578
+ if (!functionalReplace) replaceValue = toString$c(replaceValue);
2499
2579
 
2500
2580
  var global = rx.global;
2501
2581
  var fullUnicode;
@@ -2513,8 +2593,8 @@ fixRegExpWellKnownSymbolLogic$2('replace', function (_, nativeReplace, maybeCall
2513
2593
  push$3(results, result);
2514
2594
  if (!global) break;
2515
2595
 
2516
- var matchStr = toString$d(result[0]);
2517
- if (matchStr === '') rx.lastIndex = advanceStringIndex$2(S, toLength$5(rx.lastIndex), fullUnicode);
2596
+ var matchStr = toString$c(result[0]);
2597
+ if (matchStr === '') rx.lastIndex = advanceStringIndex$2(S, toLength$4(rx.lastIndex), fullUnicode);
2518
2598
  }
2519
2599
 
2520
2600
  var accumulatedResult = '';
@@ -2522,8 +2602,8 @@ fixRegExpWellKnownSymbolLogic$2('replace', function (_, nativeReplace, maybeCall
2522
2602
  for (var i = 0; i < results.length; i++) {
2523
2603
  result = results[i];
2524
2604
 
2525
- var matched = toString$d(result[0]);
2526
- var position = max$1(min$3(toIntegerOrInfinity$3(result.index), S.length), 0);
2605
+ var matched = toString$c(result[0]);
2606
+ var position = max$1(min$2(toIntegerOrInfinity$3(result.index), S.length), 0);
2527
2607
  var captures = [];
2528
2608
  var replacement;
2529
2609
  // NOTE: This is equivalent to
@@ -2536,101 +2616,21 @@ fixRegExpWellKnownSymbolLogic$2('replace', function (_, nativeReplace, maybeCall
2536
2616
  if (functionalReplace) {
2537
2617
  var replacerArgs = concat([matched], captures, position, S);
2538
2618
  if (namedCaptures !== undefined) push$3(replacerArgs, namedCaptures);
2539
- replacement = toString$d(apply$2(replaceValue, undefined, replacerArgs));
2619
+ replacement = toString$c(apply$2(replaceValue, undefined, replacerArgs));
2540
2620
  } else {
2541
2621
  replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
2542
2622
  }
2543
2623
  if (position >= nextSourcePosition) {
2544
- accumulatedResult += stringSlice$5(S, nextSourcePosition, position) + replacement;
2624
+ accumulatedResult += stringSlice$4(S, nextSourcePosition, position) + replacement;
2545
2625
  nextSourcePosition = position + matched.length;
2546
2626
  }
2547
2627
  }
2548
2628
 
2549
- return accumulatedResult + stringSlice$5(S, nextSourcePosition);
2629
+ return accumulatedResult + stringSlice$4(S, nextSourcePosition);
2550
2630
  }
2551
2631
  ];
2552
2632
  }, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);
2553
2633
 
2554
- var classofRaw = classofRaw$2;
2555
- var uncurryThis$i = functionUncurryThis;
2556
-
2557
- var functionUncurryThisClause = function (fn) {
2558
- // Nashorn bug:
2559
- // https://github.com/zloirock/core-js/issues/1128
2560
- // https://github.com/zloirock/core-js/issues/1130
2561
- if (classofRaw(fn) === 'Function') return uncurryThis$i(fn);
2562
- };
2563
-
2564
- var isObject$4 = isObject$f;
2565
- var classof$6 = classofRaw$2;
2566
- var wellKnownSymbol$b = wellKnownSymbol$m;
2567
-
2568
- var MATCH$2 = wellKnownSymbol$b('match');
2569
-
2570
- // `IsRegExp` abstract operation
2571
- // https://tc39.es/ecma262/#sec-isregexp
2572
- var isRegexp = function (it) {
2573
- var isRegExp;
2574
- return isObject$4(it) && ((isRegExp = it[MATCH$2]) !== undefined ? !!isRegExp : classof$6(it) === 'RegExp');
2575
- };
2576
-
2577
- var isRegExp$1 = isRegexp;
2578
-
2579
- var $TypeError$d = TypeError;
2580
-
2581
- var notARegexp = function (it) {
2582
- if (isRegExp$1(it)) {
2583
- throw new $TypeError$d("The method doesn't accept regular expressions");
2584
- } return it;
2585
- };
2586
-
2587
- var wellKnownSymbol$a = wellKnownSymbol$m;
2588
-
2589
- var MATCH$1 = wellKnownSymbol$a('match');
2590
-
2591
- var correctIsRegexpLogic = function (METHOD_NAME) {
2592
- var regexp = /./;
2593
- try {
2594
- '/./'[METHOD_NAME](regexp);
2595
- } catch (error1) {
2596
- try {
2597
- regexp[MATCH$1] = false;
2598
- return '/./'[METHOD_NAME](regexp);
2599
- } catch (error2) { /* empty */ }
2600
- } return false;
2601
- };
2602
-
2603
- var $$A = _export;
2604
- var uncurryThis$h = functionUncurryThisClause;
2605
- var getOwnPropertyDescriptor$4 = objectGetOwnPropertyDescriptor.f;
2606
- var toLength$4 = toLength$7;
2607
- var toString$c = toString$j;
2608
- var notARegExp$2 = notARegexp;
2609
- var requireObjectCoercible$7 = requireObjectCoercible$e;
2610
- var correctIsRegExpLogic$2 = correctIsRegexpLogic;
2611
-
2612
- var stringSlice$4 = uncurryThis$h(''.slice);
2613
- var min$2 = Math.min;
2614
-
2615
- var CORRECT_IS_REGEXP_LOGIC$1 = correctIsRegExpLogic$2('startsWith');
2616
- // https://github.com/zloirock/core-js/pull/702
2617
- var MDN_POLYFILL_BUG$1 = !CORRECT_IS_REGEXP_LOGIC$1 && !!function () {
2618
- var descriptor = getOwnPropertyDescriptor$4(String.prototype, 'startsWith');
2619
- return descriptor && !descriptor.writable;
2620
- }();
2621
-
2622
- // `String.prototype.startsWith` method
2623
- // https://tc39.es/ecma262/#sec-string.prototype.startswith
2624
- $$A({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG$1 && !CORRECT_IS_REGEXP_LOGIC$1 }, {
2625
- startsWith: function startsWith(searchString /* , position = 0 */) {
2626
- var that = toString$c(requireObjectCoercible$7(this));
2627
- notARegExp$2(searchString);
2628
- var index = toLength$4(min$2(arguments.length > 1 ? arguments[1] : undefined, that.length));
2629
- var search = toString$c(searchString);
2630
- return stringSlice$4(that, index, index + search.length) === search;
2631
- }
2632
- });
2633
-
2634
2634
  var isPrototypeOf$3 = objectIsPrototypeOf;
2635
2635
 
2636
2636
  var $TypeError$c = TypeError;
@@ -6289,7 +6289,8 @@ const stepperReducer = (state, action) => {
6289
6289
  categories: newCategories,
6290
6290
  isOnReview,
6291
6291
  hasNextButton: !isOnReview,
6292
- hasPrevButton: newActive !== 0
6292
+ hasPrevButton: newActive !== 0,
6293
+ targetScope: undefined
6293
6294
  });
6294
6295
  }
6295
6296
  case 'page/prev':
@@ -6303,13 +6304,15 @@ const stepperReducer = (state, action) => {
6303
6304
  categories: newCategories,
6304
6305
  isOnReview: false,
6305
6306
  hasNextButton: true,
6306
- hasPrevButton: newActive !== 0
6307
+ hasPrevButton: newActive !== 0,
6308
+ targetScope: undefined
6307
6309
  });
6308
6310
  }
6309
6311
  case 'page/to/index':
6310
6312
  {
6311
6313
  const {
6312
- id
6314
+ id,
6315
+ targetScope
6313
6316
  } = action.payload;
6314
6317
  const newActive = id;
6315
6318
  const newCategories = categories.map((c, idx) => idx === id ? Object.assign({}, c, {
@@ -6322,7 +6325,8 @@ const stepperReducer = (state, action) => {
6322
6325
  isOnReview,
6323
6326
  hasNextButton: !isOnReview,
6324
6327
  hasPrevButton: newActive !== 0,
6325
- maxReachedStep: Math.max(state.maxReachedStep, activeId)
6328
+ maxReachedStep: Math.max(state.maxReachedStep, activeId),
6329
+ targetScope
6326
6330
  });
6327
6331
  }
6328
6332
  case 'update/category':
@@ -6507,7 +6511,7 @@ const JsonFormsStepperContextProvider = ({
6507
6511
  });
6508
6512
  },
6509
6513
  validatePage: doValidatePage,
6510
- goToPage: id => {
6514
+ goToPage: (id, targetScope) => {
6511
6515
  var _ctx$core3, _ctx$core5;
6512
6516
  ajv.validate(schema, ((_ctx$core3 = ctx.core) == null ? void 0 : _ctx$core3.data) || {});
6513
6517
  // Only update the current category
@@ -6533,7 +6537,8 @@ const JsonFormsStepperContextProvider = ({
6533
6537
  stepperDispatch({
6534
6538
  type: 'page/to/index',
6535
6539
  payload: {
6536
- id
6540
+ id,
6541
+ targetScope
6537
6542
  }
6538
6543
  });
6539
6544
  },
@@ -6601,6 +6606,7 @@ const GoAInputBaseControl = props => {
6601
6606
  } = props;
6602
6607
  const InnerComponent = input;
6603
6608
  const labelToUpdate = label || '';
6609
+ const controlRef = useRef(null);
6604
6610
  let modifiedErrors = checkFieldValidity(props);
6605
6611
  const formStepperCtx = useContext(JsonFormsStepperContext);
6606
6612
  const stepperState = formStepperCtx == null || formStepperCtx.selectStepperState == null ? void 0 : formStepperCtx.selectStepperState();
@@ -6612,6 +6618,36 @@ const GoAInputBaseControl = props => {
6612
6618
  setIsVisited(true);
6613
6619
  }
6614
6620
  }, [showReviewLink, isStepperReview]);
6621
+ /* istanbul ignore next */
6622
+ useEffect(() => {
6623
+ if (stepperState != null && stepperState.targetScope && stepperState.targetScope === uischema.scope && controlRef.current) {
6624
+ const inputElement = controlRef.current.querySelector('input, textarea, select, goa-input, goa-textarea, goa-dropdown, goa-checkbox, goa-radio-group');
6625
+ if (inputElement) {
6626
+ controlRef.current.scrollIntoView({
6627
+ behavior: 'smooth',
6628
+ block: 'center'
6629
+ });
6630
+ setTimeout(() => {
6631
+ var _inputElement$tagName;
6632
+ if ((_inputElement$tagName = inputElement.tagName) != null && _inputElement$tagName.toLowerCase().startsWith('goa-')) {
6633
+ inputElement.focused = true;
6634
+ if (typeof inputElement.focus === 'function') {
6635
+ inputElement.focus();
6636
+ }
6637
+ const shadowRoot = inputElement.shadowRoot;
6638
+ if (shadowRoot) {
6639
+ const actualInput = shadowRoot.querySelector('input, textarea, select');
6640
+ if (actualInput instanceof HTMLElement) {
6641
+ actualInput.focus();
6642
+ }
6643
+ }
6644
+ } else if (inputElement instanceof HTMLElement) {
6645
+ inputElement.focus();
6646
+ }
6647
+ }, 300);
6648
+ }
6649
+ }
6650
+ }, [stepperState == null ? void 0 : stepperState.targetScope, uischema.scope]);
6615
6651
  if (modifiedErrors === 'must be equal to one of the allowed values') {
6616
6652
  modifiedErrors = '';
6617
6653
  }
@@ -6620,6 +6656,7 @@ const GoAInputBaseControl = props => {
6620
6656
  children: jsx(Visible, {
6621
6657
  visible: visible,
6622
6658
  children: jsx(FormFieldWrapper, {
6659
+ ref: controlRef,
6623
6660
  children: jsx(GoabFormItem, {
6624
6661
  requirement: (_uischema$options$com = uischema == null || (_uischema$options = uischema.options) == null || (_uischema$options = _uischema$options.componentProps) == null ? void 0 : _uischema$options.requirement) != null ? _uischema$options$com : required || getRequiredIfThen(props).length > 0 ? 'required' : undefined,
6625
6662
  error: isVisited === true ? modifiedErrors : undefined,
@@ -8371,7 +8408,7 @@ const GoAInputBaseTableReview = props => {
8371
8408
  }), stepId !== undefined && jsx(GoabButton, {
8372
8409
  type: "tertiary",
8373
8410
  size: "compact",
8374
- onClick: () => context == null ? void 0 : context.goToPage(stepId),
8411
+ onClick: () => context == null ? void 0 : context.goToPage(stepId, uischema.scope),
8375
8412
  children: "Change"
8376
8413
  })]
8377
8414
  }), jsxs(ReviewValue, {
@@ -9204,7 +9241,8 @@ const FullNameControlReview = props => {
9204
9241
  const {
9205
9242
  label,
9206
9243
  errors,
9207
- required
9244
+ required,
9245
+ uischema
9208
9246
  } = props;
9209
9247
  const renderRow = (label, value, testId) => jsx("tr", {
9210
9248
  children: jsxs(PageReviewContainer, {
@@ -9215,7 +9253,7 @@ const FullNameControlReview = props => {
9215
9253
  }), jsx(GoabButton, {
9216
9254
  type: "tertiary",
9217
9255
  size: "compact",
9218
- onClick: () => context == null ? void 0 : context.goToPage(stepId),
9256
+ onClick: () => context == null ? void 0 : context.goToPage(stepId, uischema.scope),
9219
9257
  children: "Change"
9220
9258
  })]
9221
9259
  }), jsx(ReviewValue, {
@@ -9274,7 +9312,7 @@ const FullNameDobReviewControl = props => {
9274
9312
  children: jsx(GoabButton, {
9275
9313
  type: "tertiary",
9276
9314
  size: "compact",
9277
- onClick: () => context == null ? void 0 : context.goToPage(stepId),
9315
+ onClick: () => context == null ? void 0 : context.goToPage(stepId, uischema.scope),
9278
9316
  children: "Change"
9279
9317
  })
9280
9318
  })]
@@ -11335,7 +11373,7 @@ class ListWithDetailControl extends React.Component {
11335
11373
  currentListPage: this.state.currentListPage,
11336
11374
  listTitle: listTitle
11337
11375
  }, additionalProps))
11338
- }), this.state.currentListPage === 0 && data > 0 && jsx(ObjectArrayToolBar, {
11376
+ }), !showSecondaryButton && jsx(ObjectArrayToolBar, {
11339
11377
  data: data,
11340
11378
  errors: errors,
11341
11379
  label: label,
@@ -11732,7 +11770,7 @@ const AddressLoopUpControlTableReview = props => {
11732
11770
  }), showButton && jsx(GoabButton, {
11733
11771
  type: "tertiary",
11734
11772
  size: "compact",
11735
- onClick: () => formStepperCtx == null ? void 0 : formStepperCtx.goToPage(stepId),
11773
+ onClick: () => formStepperCtx == null ? void 0 : formStepperCtx.goToPage(stepId, uischema.scope),
11736
11774
  children: "Change"
11737
11775
  })]
11738
11776
  }), jsxs(ReviewValue, {
@@ -14348,11 +14386,15 @@ const FullNameControl = props => {
14348
14386
  schema,
14349
14387
  handleChange,
14350
14388
  enabled,
14351
- visible
14389
+ visible,
14390
+ uischema
14352
14391
  } = props;
14353
14392
  const requiredFields = schema.required;
14354
14393
  const defaultName = {};
14355
14394
  const [nameData, setNameData] = useState(data || defaultName);
14395
+ const controlRef = useRef(null);
14396
+ const formStepperCtx = useContext(JsonFormsStepperContext);
14397
+ const stepperState = formStepperCtx == null || formStepperCtx.selectStepperState == null ? void 0 : formStepperCtx.selectStepperState();
14356
14398
  const updateFormData = updatedData => {
14357
14399
  updatedData = Object.fromEntries(Object.entries(updatedData).filter(([_, value]) => value !== ''));
14358
14400
  handleChange(path, updatedData);
@@ -14364,16 +14406,49 @@ const FullNameControl = props => {
14364
14406
  setNameData(updatedName);
14365
14407
  updateFormData(updatedName);
14366
14408
  };
14409
+ /* istanbul ignore next */
14410
+ useEffect(() => {
14411
+ if (stepperState != null && stepperState.targetScope && stepperState.targetScope === uischema.scope && controlRef.current) {
14412
+ const inputElement = controlRef.current.querySelector('input, goa-input');
14413
+ if (inputElement) {
14414
+ controlRef.current.scrollIntoView({
14415
+ behavior: 'smooth',
14416
+ block: 'center'
14417
+ });
14418
+ setTimeout(() => {
14419
+ var _inputElement$tagName;
14420
+ if ((_inputElement$tagName = inputElement.tagName) != null && _inputElement$tagName.toLowerCase().startsWith('goa-')) {
14421
+ inputElement.focused = true;
14422
+ if (typeof inputElement.focus === 'function') {
14423
+ inputElement.focus();
14424
+ }
14425
+ const shadowRoot = inputElement.shadowRoot;
14426
+ if (shadowRoot) {
14427
+ const actualInput = shadowRoot.querySelector('input');
14428
+ if (actualInput instanceof HTMLElement) {
14429
+ actualInput.focus();
14430
+ }
14431
+ }
14432
+ } else if (inputElement instanceof HTMLElement) {
14433
+ inputElement.focus();
14434
+ }
14435
+ }, 300);
14436
+ }
14437
+ }
14438
+ }, [stepperState == null ? void 0 : stepperState.targetScope, uischema.scope]);
14367
14439
  return jsx(Visible, {
14368
14440
  visible: visible,
14369
- children: jsx(NameInputs, {
14370
- firstName: nameData.firstName,
14371
- middleName: nameData.middleName,
14372
- lastName: nameData.lastName,
14373
- handleInputChange: handleInputChange,
14374
- data: data,
14375
- disabled: !enabled,
14376
- requiredFields: requiredFields
14441
+ children: jsx("div", {
14442
+ ref: controlRef,
14443
+ children: jsx(NameInputs, {
14444
+ firstName: nameData.firstName,
14445
+ middleName: nameData.middleName,
14446
+ lastName: nameData.lastName,
14447
+ handleInputChange: handleInputChange,
14448
+ data: data,
14449
+ disabled: !enabled,
14450
+ requiredFields: requiredFields
14451
+ })
14377
14452
  })
14378
14453
  });
14379
14454
  };
@@ -14419,10 +14494,14 @@ const FullNameDobControl = props => {
14419
14494
  schema,
14420
14495
  handleChange,
14421
14496
  enabled,
14422
- visible
14497
+ visible,
14498
+ uischema
14423
14499
  } = props;
14424
14500
  const requiredFields = schema.required;
14425
14501
  const [errors, setErrors] = useState({});
14502
+ const controlRef = useRef(null);
14503
+ const formStepperCtx = useContext(JsonFormsStepperContext);
14504
+ const stepperState = formStepperCtx == null || formStepperCtx.selectStepperState == null ? void 0 : formStepperCtx.selectStepperState();
14426
14505
  const defaultNameAndDob = {};
14427
14506
  const validDates = () => {
14428
14507
  const currentDate = new Date();
@@ -14458,93 +14537,126 @@ const FullNameDobControl = props => {
14458
14537
  setErrors(err);
14459
14538
  };
14460
14539
  useSyncAutofillFields(['firstName', 'middleName', 'lastName', 'dateOfBirth'], formData, updateFormData, handleRequiredFieldBlur);
14461
- return jsxs(Visible, {
14540
+ /* istanbul ignore next */
14541
+ useEffect(() => {
14542
+ if (stepperState != null && stepperState.targetScope && stepperState.targetScope === uischema.scope && controlRef.current) {
14543
+ const inputElement = controlRef.current.querySelector('input, goa-input');
14544
+ if (inputElement) {
14545
+ controlRef.current.scrollIntoView({
14546
+ behavior: 'smooth',
14547
+ block: 'center'
14548
+ });
14549
+ setTimeout(() => {
14550
+ var _inputElement$tagName;
14551
+ if ((_inputElement$tagName = inputElement.tagName) != null && _inputElement$tagName.toLowerCase().startsWith('goa-')) {
14552
+ inputElement.focused = true;
14553
+ if (typeof inputElement.focus === 'function') {
14554
+ inputElement.focus();
14555
+ }
14556
+ const shadowRoot = inputElement.shadowRoot;
14557
+ if (shadowRoot) {
14558
+ const actualInput = shadowRoot.querySelector('input');
14559
+ if (actualInput instanceof HTMLElement) {
14560
+ actualInput.focus();
14561
+ }
14562
+ }
14563
+ } else if (inputElement instanceof HTMLElement) {
14564
+ inputElement.focus();
14565
+ }
14566
+ }, 300);
14567
+ }
14568
+ }
14569
+ }, [stepperState == null ? void 0 : stepperState.targetScope, uischema.scope]);
14570
+ return jsx(Visible, {
14462
14571
  visible: visible,
14463
- children: [jsxs(GoabGrid, {
14464
- minChildWidth: "0ch",
14465
- gap: "s",
14466
- mb: "m",
14467
- children: [jsx(GoabFormItem, {
14468
- label: "First name",
14469
- requirement: schema != null && (_schema$required = schema.required) != null && _schema$required.includes('firstName') ? 'required' : undefined,
14470
- error: (_errors$firstName = errors == null ? void 0 : errors['firstName']) != null ? _errors$firstName : '',
14471
- testId: "form-item-first-name",
14472
- children: jsx(GoabInput, {
14473
- disabled: !enabled,
14474
- type: "text",
14475
- name: "firstName",
14476
- testId: "name-form-first-name",
14477
- ariaLabel: 'name-form-first-name',
14478
- value: formData.firstName,
14479
- onChange: detail => {
14480
- handleInputChange(detail.name, detail.value);
14481
- },
14482
- onBlur: detail => {
14483
- handleRequiredFieldBlur(detail.name);
14484
- },
14485
- width: "100%"
14486
- })
14487
- }), jsx(GoabFormItem, {
14488
- label: "Middle name",
14489
- requirement: schema != null && (_schema$required2 = schema.required) != null && _schema$required2.includes('middleName') ? 'required' : undefined,
14490
- children: jsx(GoabInput, {
14491
- type: "text",
14492
- name: "middleName",
14493
- disabled: !enabled,
14494
- testId: "name-form-middle-name",
14495
- ariaLabel: 'name-form-middle-name',
14496
- value: formData.middleName || '',
14497
- onChange: detail => handleInputChange(detail.name, detail.value),
14498
- width: "100%"
14499
- })
14500
- }), jsx(GoabFormItem, {
14501
- label: "Last name",
14502
- requirement: schema != null && (_schema$required3 = schema.required) != null && _schema$required3.includes('lastName') ? 'required' : undefined,
14503
- error: (_errors$lastName = errors == null ? void 0 : errors['lastName']) != null ? _errors$lastName : '',
14504
- testId: "form-item-last-name",
14505
- children: jsx(GoabInput, {
14506
- type: "text",
14507
- name: "lastName",
14508
- disabled: !enabled,
14509
- testId: "name-form-last-name",
14510
- ariaLabel: 'name-form-last-name',
14511
- value: formData.lastName || '',
14512
- onChange: detail => {
14513
- handleInputChange(detail.name, detail.value);
14514
- },
14515
- onBlur: detail => {
14516
- handleRequiredFieldBlur(detail.name);
14517
- },
14518
- width: "100%"
14572
+ children: jsxs("div", {
14573
+ ref: controlRef,
14574
+ children: [jsxs(GoabGrid, {
14575
+ minChildWidth: "0ch",
14576
+ gap: "s",
14577
+ mb: "m",
14578
+ children: [jsx(GoabFormItem, {
14579
+ label: "First name",
14580
+ requirement: schema != null && (_schema$required = schema.required) != null && _schema$required.includes('firstName') ? 'required' : undefined,
14581
+ error: (_errors$firstName = errors == null ? void 0 : errors['firstName']) != null ? _errors$firstName : '',
14582
+ testId: "form-item-first-name",
14583
+ children: jsx(GoabInput, {
14584
+ disabled: !enabled,
14585
+ type: "text",
14586
+ name: "firstName",
14587
+ testId: "name-form-first-name",
14588
+ ariaLabel: 'name-form-first-name',
14589
+ value: formData.firstName,
14590
+ onChange: detail => {
14591
+ handleInputChange(detail.name, detail.value);
14592
+ },
14593
+ onBlur: detail => {
14594
+ handleRequiredFieldBlur(detail.name);
14595
+ },
14596
+ width: "100%"
14597
+ })
14598
+ }), jsx(GoabFormItem, {
14599
+ label: "Middle name",
14600
+ requirement: schema != null && (_schema$required2 = schema.required) != null && _schema$required2.includes('middleName') ? 'required' : undefined,
14601
+ children: jsx(GoabInput, {
14602
+ type: "text",
14603
+ name: "middleName",
14604
+ disabled: !enabled,
14605
+ testId: "name-form-middle-name",
14606
+ ariaLabel: 'name-form-middle-name',
14607
+ value: formData.middleName || '',
14608
+ onChange: detail => handleInputChange(detail.name, detail.value),
14609
+ width: "100%"
14610
+ })
14611
+ }), jsx(GoabFormItem, {
14612
+ label: "Last name",
14613
+ requirement: schema != null && (_schema$required3 = schema.required) != null && _schema$required3.includes('lastName') ? 'required' : undefined,
14614
+ error: (_errors$lastName = errors == null ? void 0 : errors['lastName']) != null ? _errors$lastName : '',
14615
+ testId: "form-item-last-name",
14616
+ children: jsx(GoabInput, {
14617
+ type: "text",
14618
+ name: "lastName",
14619
+ disabled: !enabled,
14620
+ testId: "name-form-last-name",
14621
+ ariaLabel: 'name-form-last-name',
14622
+ value: formData.lastName || '',
14623
+ onChange: detail => {
14624
+ handleInputChange(detail.name, detail.value);
14625
+ },
14626
+ onBlur: detail => {
14627
+ handleRequiredFieldBlur(detail.name);
14628
+ },
14629
+ width: "100%"
14630
+ })
14631
+ })]
14632
+ }), jsx(GoabGrid, {
14633
+ minChildWidth: "0ch",
14634
+ gap: "s",
14635
+ mb: "m",
14636
+ children: jsx(GoabFormItem, {
14637
+ label: "Date of birth",
14638
+ error: (_errors$dateOfBirth = errors == null ? void 0 : errors['dateOfBirth']) != null ? _errors$dateOfBirth : '',
14639
+ requirement: requiredFields != null && requiredFields.includes('dateOfBirth') ? 'required' : undefined,
14640
+ children: jsx(GoabInput, {
14641
+ type: "date",
14642
+ name: "dateOfBirth",
14643
+ disabled: !enabled,
14644
+ min: validDates().minDate,
14645
+ max: validDates().maxDate,
14646
+ testId: `dob-form-dateOfBirth`,
14647
+ ariaLabel: "dob-form-dateOfBirth",
14648
+ placeholder: "YYYY-MM-DD",
14649
+ value: formData == null ? void 0 : formData.dateOfBirth,
14650
+ onChange: detail => handleInputChange(detail.name, detail.value),
14651
+ onBlur: detail => {
14652
+ /* istanbul ignore next */
14653
+ handleRequiredFieldBlur(detail.name);
14654
+ },
14655
+ width: "100%"
14656
+ })
14519
14657
  })
14520
14658
  })]
14521
- }), jsx(GoabGrid, {
14522
- minChildWidth: "0ch",
14523
- gap: "s",
14524
- mb: "m",
14525
- children: jsx(GoabFormItem, {
14526
- label: "Date of birth",
14527
- error: (_errors$dateOfBirth = errors == null ? void 0 : errors['dateOfBirth']) != null ? _errors$dateOfBirth : '',
14528
- requirement: requiredFields != null && requiredFields.includes('dateOfBirth') ? 'required' : undefined,
14529
- children: jsx(GoabInput, {
14530
- type: "date",
14531
- name: "dateOfBirth",
14532
- disabled: !enabled,
14533
- min: validDates().minDate,
14534
- max: validDates().maxDate,
14535
- testId: `dob-form-dateOfBirth`,
14536
- ariaLabel: "dob-form-dateOfBirth",
14537
- placeholder: "YYYY-MM-DD",
14538
- value: formData == null ? void 0 : formData.dateOfBirth,
14539
- onChange: detail => handleInputChange(detail.name, detail.value),
14540
- onBlur: detail => {
14541
- /* istanbul ignore next */
14542
- handleRequiredFieldBlur(detail.name);
14543
- },
14544
- width: "100%"
14545
- })
14546
- })
14547
- })]
14659
+ })
14548
14660
  });
14549
14661
  };
14550
14662
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abgov/jsonforms-components",
3
- "version": "2.44.2",
3
+ "version": "2.45.1",
4
4
  "license": "Apache-2.0",
5
5
  "description": "Government of Alberta - React renderers for JSON Forms based on the design system.",
6
6
  "repository": "https://github.com/GovAlta/adsp-monorepo",
@@ -19,7 +19,7 @@ export interface JsonFormsStepperContextProps {
19
19
  selectIsActive: (id: number) => boolean;
20
20
  selectPath: () => string;
21
21
  selectCategory: (id: number) => CategoryState;
22
- goToPage: (id: number, updateCategoryId?: number) => void;
22
+ goToPage: (id: number, targetScope?: string) => void;
23
23
  goToTableOfContext: () => void;
24
24
  toggleShowReviewLink: (id: number) => void;
25
25
  validatePage: (id: number) => void;
@@ -11,6 +11,7 @@ export type StepperAction = {
11
11
  type: 'page/to/index';
12
12
  payload: {
13
13
  id: number;
14
+ targetScope?: string;
14
15
  };
15
16
  } | {
16
17
  type: 'update/category';
@@ -25,5 +25,6 @@ export interface StepperContextDataType {
25
25
  isOnReview: boolean;
26
26
  isValid: boolean;
27
27
  maxReachedStep: number;
28
+ targetScope?: string;
28
29
  }
29
30
  export type CategorizationElement = Category | Categorization;