@abgov/react-components 7.2.0-dev.17 → 7.2.0-dev.19

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.js CHANGED
@@ -251,6 +251,8 @@ function GoabCheckbox({
251
251
  description,
252
252
  reveal,
253
253
  onChange,
254
+ onFocus,
255
+ onBlur,
254
256
  name,
255
257
  children,
256
258
  size = "default",
@@ -267,11 +269,23 @@ function GoabCheckbox({
267
269
  const detail = e.detail;
268
270
  onChange == null ? void 0 : onChange({ ...detail, event: e });
269
271
  };
272
+ const focusListener = (e) => {
273
+ const detail = e.detail;
274
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
275
+ };
276
+ const blurListener = (e) => {
277
+ const detail = e.detail;
278
+ onBlur == null ? void 0 : onBlur({ ...detail, event: e });
279
+ };
270
280
  current.addEventListener("_change", listener);
281
+ current.addEventListener("_focus", focusListener);
282
+ current.addEventListener("_blur", blurListener);
271
283
  return () => {
272
284
  current.removeEventListener("_change", listener);
285
+ current.removeEventListener("_focus", focusListener);
286
+ current.removeEventListener("_blur", blurListener);
273
287
  };
274
- }, [name, onChange]);
288
+ }, [name, onChange, onFocus, onBlur]);
275
289
  return /* @__PURE__ */ jsxRuntime.jsxs(
276
290
  "goa-checkbox",
277
291
  {
@@ -303,6 +317,8 @@ function GoabCheckboxList({
303
317
  size = "default",
304
318
  children,
305
319
  onChange,
320
+ onFocus,
321
+ onBlur,
306
322
  mt,
307
323
  mr,
308
324
  mb,
@@ -316,11 +332,23 @@ function GoabCheckboxList({
316
332
  const detail = e.detail;
317
333
  onChange == null ? void 0 : onChange({ ...detail, event: e });
318
334
  };
335
+ const focusListener = (e) => {
336
+ const detail = e.detail;
337
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
338
+ };
339
+ const blurListener = (e) => {
340
+ const detail = e.detail;
341
+ onBlur == null ? void 0 : onBlur({ ...detail, event: e });
342
+ };
319
343
  current.addEventListener("_change", listener);
344
+ current.addEventListener("_focus", focusListener);
345
+ current.addEventListener("_blur", blurListener);
320
346
  return () => {
321
347
  current.removeEventListener("_change", listener);
348
+ current.removeEventListener("_focus", focusListener);
349
+ current.removeEventListener("_blur", blurListener);
322
350
  };
323
- }, [onChange]);
351
+ }, [onChange, onFocus, onBlur]);
324
352
  return /* @__PURE__ */ jsxRuntime.jsx(
325
353
  "goa-checkbox-list",
326
354
  {
@@ -2619,6 +2647,8 @@ function GoabDatePicker({
2619
2647
  disabled,
2620
2648
  relative,
2621
2649
  onChange,
2650
+ onFocus,
2651
+ onBlur,
2622
2652
  ...rest
2623
2653
  }) {
2624
2654
  const ref = react.useRef(null);
@@ -2639,15 +2669,27 @@ function GoabDatePicker({
2639
2669
  const detail = e.detail;
2640
2670
  onChange == null ? void 0 : onChange({ ...detail, event: e });
2641
2671
  };
2672
+ const handleFocus = (e) => {
2673
+ const detail = e.detail;
2674
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
2675
+ };
2676
+ const handleBlur = (e) => {
2677
+ const detail = e.detail;
2678
+ onBlur == null ? void 0 : onBlur({ ...detail, event: e });
2679
+ };
2642
2680
  if (onChange) {
2643
2681
  current.addEventListener("_change", handleChange);
2644
2682
  }
2683
+ current.addEventListener("_focus", handleFocus);
2684
+ current.addEventListener("_blur", handleBlur);
2645
2685
  return () => {
2646
2686
  if (onChange) {
2647
2687
  current.removeEventListener("_change", handleChange);
2648
2688
  }
2689
+ current.removeEventListener("_focus", handleFocus);
2690
+ current.removeEventListener("_blur", handleBlur);
2649
2691
  };
2650
- }, [onChange]);
2692
+ }, [onChange, onFocus, onBlur]);
2651
2693
  const formatValue = (val) => {
2652
2694
  if (!val) return "";
2653
2695
  if (val instanceof Date) {
@@ -2743,6 +2785,8 @@ function stringify(value) {
2743
2785
  function GoabDropdown({
2744
2786
  value,
2745
2787
  onChange,
2788
+ onFocus,
2789
+ onBlur,
2746
2790
  disabled,
2747
2791
  error,
2748
2792
  filterable,
@@ -2764,15 +2808,27 @@ function GoabDropdown({
2764
2808
  const detail = e.detail;
2765
2809
  onChange == null ? void 0 : onChange({ ...detail, event: e });
2766
2810
  };
2811
+ const focusListener = (e) => {
2812
+ const detail = e.detail;
2813
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
2814
+ };
2815
+ const blurListener = (e) => {
2816
+ const detail = e.detail;
2817
+ onBlur == null ? void 0 : onBlur({ ...detail, event: e });
2818
+ };
2767
2819
  if (onChange) {
2768
2820
  current.addEventListener("_change", handler);
2769
2821
  }
2822
+ current.addEventListener("_focus", focusListener);
2823
+ current.addEventListener("_blur", blurListener);
2770
2824
  return () => {
2771
2825
  if (onChange) {
2772
2826
  current.removeEventListener("_change", handler);
2773
2827
  }
2828
+ current.removeEventListener("_focus", focusListener);
2829
+ current.removeEventListener("_blur", blurListener);
2774
2830
  };
2775
- }, [el, onChange]);
2831
+ }, [el, onChange, onFocus, onBlur]);
2776
2832
  return /* @__PURE__ */ jsxRuntime.jsx(
2777
2833
  "goa-dropdown",
2778
2834
  {
@@ -3841,6 +3897,8 @@ function GoabRadioGroup({
3841
3897
  disabled,
3842
3898
  error,
3843
3899
  onChange,
3900
+ onFocus,
3901
+ onBlur,
3844
3902
  name,
3845
3903
  children,
3846
3904
  size = "default",
@@ -3854,16 +3912,28 @@ function GoabRadioGroup({
3854
3912
  const detail = e.detail;
3855
3913
  onChange == null ? void 0 : onChange({ ...detail, event: e });
3856
3914
  };
3915
+ const focusListener = (e) => {
3916
+ const detail = e.detail;
3917
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
3918
+ };
3919
+ const blurListener = (e) => {
3920
+ const detail = e.detail;
3921
+ onBlur == null ? void 0 : onBlur({ ...detail, event: e });
3922
+ };
3857
3923
  const currentEl = el.current;
3858
3924
  if (onChange) {
3859
3925
  currentEl.addEventListener("_change", listener);
3860
3926
  }
3927
+ currentEl.addEventListener("_focus", focusListener);
3928
+ currentEl.addEventListener("_blur", blurListener);
3861
3929
  return () => {
3862
3930
  if (onChange) {
3863
3931
  currentEl.removeEventListener("_change", listener);
3864
3932
  }
3933
+ currentEl.removeEventListener("_focus", focusListener);
3934
+ currentEl.removeEventListener("_blur", blurListener);
3865
3935
  };
3866
- }, [name, onChange]);
3936
+ }, [name, onChange, onFocus, onBlur]);
3867
3937
  return /* @__PURE__ */ jsxRuntime.jsx(
3868
3938
  "goa-radio-group",
3869
3939
  {
@@ -4127,6 +4197,7 @@ function GoabTextArea({
4127
4197
  error,
4128
4198
  onChange,
4129
4199
  onKeyPress,
4200
+ onFocus,
4130
4201
  onBlur,
4131
4202
  ...rest
4132
4203
  }) {
@@ -4145,19 +4216,25 @@ function GoabTextArea({
4145
4216
  const detail = e.detail;
4146
4217
  onKeyPress == null ? void 0 : onKeyPress({ ...detail, event: e });
4147
4218
  };
4219
+ const focusListener = (e) => {
4220
+ const detail = e.detail;
4221
+ onFocus == null ? void 0 : onFocus({ ...detail, event: e });
4222
+ };
4148
4223
  const blurListener = (e) => {
4149
4224
  const detail = e.detail;
4150
4225
  onBlur == null ? void 0 : onBlur({ ...detail, event: e });
4151
4226
  };
4152
4227
  current.addEventListener("_change", changeListener);
4153
4228
  current.addEventListener("_keyPress", keypressListener);
4229
+ current.addEventListener("_focus", focusListener);
4154
4230
  current.addEventListener("_blur", blurListener);
4155
4231
  return () => {
4156
4232
  current.removeEventListener("_change", changeListener);
4157
4233
  current.removeEventListener("_keyPress", keypressListener);
4234
+ current.removeEventListener("_focus", focusListener);
4158
4235
  current.removeEventListener("_blur", blurListener);
4159
4236
  };
4160
- }, [el, onChange, onKeyPress, onBlur]);
4237
+ }, [el, onChange, onKeyPress, onFocus, onBlur]);
4161
4238
  return /* @__PURE__ */ jsxRuntime.jsx(
4162
4239
  "goa-textarea",
4163
4240
  {