@abgov/react-components 5.0.0 → 5.2.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.
Files changed (55) hide show
  1. package/index.d.ts +4 -0
  2. package/index.js +186 -58
  3. package/index.js.map +1 -1
  4. package/index.mjs +186 -58
  5. package/index.mjs.map +1 -1
  6. package/lib/accordion/accordion.d.ts +1 -0
  7. package/lib/app-header/app-header.d.ts +1 -0
  8. package/lib/app-header-menu/app-header-menu.d.ts +1 -0
  9. package/lib/badge/badge.d.ts +1 -0
  10. package/lib/block/block.d.ts +1 -0
  11. package/lib/button/button.d.ts +1 -0
  12. package/lib/button-group/button-group.d.ts +1 -0
  13. package/lib/calendar/calendar.d.ts +1 -0
  14. package/lib/callout/callout.d.ts +1 -0
  15. package/lib/checkbox/checkbox.d.ts +2 -1
  16. package/lib/chip/chip.d.ts +1 -0
  17. package/lib/circular-progress/circular-progress.d.ts +1 -0
  18. package/lib/container/container.d.ts +1 -0
  19. package/lib/date-picker/date-picker.d.ts +7 -2
  20. package/lib/details/details.d.ts +1 -0
  21. package/lib/divider/divider.d.ts +4 -1
  22. package/lib/dropdown/dropdown.d.ts +2 -1
  23. package/lib/fieldset/fieldset.d.ts +29 -0
  24. package/lib/file-upload-card/file-upload-card.d.ts +1 -0
  25. package/lib/file-upload-input/file-upload-input.d.ts +1 -0
  26. package/lib/footer/footer.d.ts +1 -0
  27. package/lib/footer-meta-section/footer-meta-section.d.ts +4 -1
  28. package/lib/footer-nav-section/footer-nav-section.d.ts +1 -0
  29. package/lib/form-item/form-item.d.ts +1 -0
  30. package/lib/form-stepper/form-stepper.d.ts +1 -0
  31. package/lib/grid/grid.d.ts +1 -0
  32. package/lib/hero-banner/hero-banner.d.ts +1 -0
  33. package/lib/icon-button/icon-button.d.ts +1 -0
  34. package/lib/input/input.d.ts +4 -3
  35. package/lib/link/link.d.ts +21 -0
  36. package/lib/link-button/link-button.d.ts +24 -0
  37. package/lib/microsite-header/microsite-header.d.ts +6 -2
  38. package/lib/modal/modal.d.ts +1 -0
  39. package/lib/notification/notification.d.ts +1 -0
  40. package/lib/page-block/page-block.d.ts +1 -0
  41. package/lib/pagination/pagination.d.ts +1 -0
  42. package/lib/popover/popover.d.ts +1 -0
  43. package/lib/radio-group/radio-group.d.ts +2 -1
  44. package/lib/side-menu/side-menu.d.ts +4 -1
  45. package/lib/side-menu-group/side-menu-group.d.ts +1 -0
  46. package/lib/side-menu-heading/side-menu-heading.d.ts +1 -0
  47. package/lib/skeleton/skeleton.d.ts +1 -0
  48. package/lib/spacer/spacer.d.ts +1 -0
  49. package/lib/spinner/spinner.d.ts +1 -0
  50. package/lib/table/table.d.ts +1 -0
  51. package/lib/tabs/tabs.d.ts +1 -0
  52. package/lib/text/text.d.ts +28 -0
  53. package/lib/textarea/textarea.d.ts +2 -1
  54. package/lib/tooltip/tooltip.d.ts +1 -0
  55. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -16,6 +16,7 @@ export * from "./lib/details/details";
16
16
  export * from "./lib/divider/divider";
17
17
  export * from "./lib/dropdown/dropdown";
18
18
  export * from "./lib/dropdown/dropdown-item";
19
+ export * from "./lib/fieldset/fieldset";
19
20
  export * from "./lib/file-upload-card/file-upload-card";
20
21
  export * from "./lib/file-upload-input/file-upload-input";
21
22
  export * from "./lib/footer/footer";
@@ -30,6 +31,8 @@ export * from "./lib/hero-banner/hero-banner-actions";
30
31
  export * from "./lib/icon-button/icon-button";
31
32
  export * from "./lib/icon/icon";
32
33
  export * from "./lib/input/input";
34
+ export * from "./lib/link/link";
35
+ export * from "./lib/link-button/link-button";
33
36
  export * from "./lib/microsite-header/microsite-header";
34
37
  export * from "./lib/modal/modal";
35
38
  export * from "./lib/notification/notification";
@@ -49,6 +52,7 @@ export * from "./lib/table/table";
49
52
  export * from "./lib/table/table-sort-header";
50
53
  export * from "./lib/tabs/tabs";
51
54
  export * from "./lib/tab/tab";
55
+ export * from "./lib/text/text";
52
56
  export * from "./lib/textarea/textarea";
53
57
  export * from "./lib/three-column-layout/three-column-layout";
54
58
  export * from "./lib/tooltip/tooltip";
package/index.js CHANGED
@@ -24,7 +24,7 @@ function GoAAccordion({
24
24
  heading,
25
25
  secondaryText,
26
26
  maxwidth: maxWidth,
27
- "data-testid": testid,
27
+ testid,
28
28
  mt,
29
29
  mr,
30
30
  mb,
@@ -51,7 +51,7 @@ function GoAAppHeader({
51
51
  url,
52
52
  fullmenubreakpoint: fullMenuBreakpoint,
53
53
  maxcontentwidth: maxContentWidth,
54
- "data-testid": testId,
54
+ testid: testId,
55
55
  children
56
56
  }
57
57
  );
@@ -62,7 +62,7 @@ function GoAAppHeaderMenu(props) {
62
62
  {
63
63
  heading: props.heading,
64
64
  leadingicon: props.leadingIcon,
65
- "data-testid": props.testId,
65
+ testid: props.testId,
66
66
  children: props.children
67
67
  }
68
68
  );
@@ -84,7 +84,7 @@ function GoABadge({
84
84
  type,
85
85
  content,
86
86
  icon,
87
- "data-testid": testId,
87
+ testid: testId,
88
88
  arialabel: ariaLabel,
89
89
  mt,
90
90
  mr,
@@ -204,7 +204,7 @@ function GoABlock(props) {
204
204
  mr: props.mr,
205
205
  mb: props.mb,
206
206
  ml: props.ml,
207
- "data-testid": props.testId,
207
+ testid: props.testId,
208
208
  children: props.children
209
209
  }
210
210
  );
@@ -251,7 +251,7 @@ function GoAButton({
251
251
  disabled,
252
252
  leadingicon: leadingIcon,
253
253
  trailingicon: trailingIcon,
254
- "data-testid": testId,
254
+ testid: testId,
255
255
  mt,
256
256
  mr,
257
257
  mb,
@@ -279,7 +279,7 @@ function GoAButtonGroup({
279
279
  mr,
280
280
  mb,
281
281
  ml,
282
- "data-testid": testId,
282
+ testid: testId,
283
283
  children
284
284
  }
285
285
  );
@@ -314,7 +314,7 @@ function GoACalendar({
314
314
  value: value == null ? void 0 : value.toISOString(),
315
315
  min: min == null ? void 0 : min.toISOString(),
316
316
  max: max == null ? void 0 : max.toISOString(),
317
- "data-testid": testId,
317
+ testid: testId,
318
318
  mt,
319
319
  mr,
320
320
  mb,
@@ -347,7 +347,7 @@ const GoACallout = ({
347
347
  mr,
348
348
  mb,
349
349
  ml,
350
- "data-testid": testId,
350
+ testid: testId,
351
351
  children
352
352
  }
353
353
  );
@@ -389,12 +389,12 @@ function GoACheckbox({
389
389
  return /* @__PURE__ */ jsxRuntime.jsxs(
390
390
  "goa-checkbox",
391
391
  {
392
- "data-testid": testId,
392
+ testid: testId,
393
393
  ref: el,
394
394
  id,
395
395
  name,
396
396
  error,
397
- checked,
397
+ checked: checked || false,
398
398
  disabled,
399
399
  text,
400
400
  value,
@@ -453,7 +453,7 @@ const GoAChip = ({
453
453
  mr,
454
454
  mb,
455
455
  ml,
456
- "data-testid": testId
456
+ testid: testId
457
457
  }
458
458
  );
459
459
  };
@@ -473,7 +473,7 @@ const GoACircularProgress = ({
473
473
  progress,
474
474
  variant,
475
475
  size,
476
- "data-testid": testId
476
+ testid: testId
477
477
  }
478
478
  );
479
479
  };
@@ -506,7 +506,7 @@ function GoAContainer({
506
506
  mr,
507
507
  mb,
508
508
  ml,
509
- "data-testid": testId,
509
+ testid: testId,
510
510
  children: [
511
511
  headingContent && /* @__PURE__ */ jsxRuntime.jsx("div", { slot: "title", children: headingContent }),
512
512
  children,
@@ -522,10 +522,12 @@ function GoADatePicker({
522
522
  min,
523
523
  max,
524
524
  testId,
525
+ disabled,
525
526
  mt,
526
527
  mr,
527
528
  mb,
528
529
  ml,
530
+ relative,
529
531
  onChange
530
532
  }) {
531
533
  const ref = react.useRef(null);
@@ -535,7 +537,8 @@ function GoADatePicker({
535
537
  }
536
538
  const current = ref.current;
537
539
  const handleChange = (e) => {
538
- onChange(name || "", e.detail.value);
540
+ const newValue = e.detail.value;
541
+ onChange == null ? void 0 : onChange(name || "", newValue ? new Date(newValue) : void 0);
539
542
  };
540
543
  current.addEventListener("_change", handleChange);
541
544
  return () => {
@@ -547,15 +550,17 @@ function GoADatePicker({
547
550
  {
548
551
  ref,
549
552
  name,
550
- value: value == null ? void 0 : value.toISOString(),
553
+ value: (value == null ? void 0 : value.toISOString()) || "",
551
554
  error,
555
+ disabled,
552
556
  min: min == null ? void 0 : min.toISOString(),
553
557
  max: max == null ? void 0 : max.toISOString(),
554
- "data-testid": testId,
558
+ testid: testId,
555
559
  mt,
556
560
  mr,
557
561
  mb,
558
- ml
562
+ ml,
563
+ relative
559
564
  }
560
565
  );
561
566
  }
@@ -566,7 +571,7 @@ function GoADetails(props) {
566
571
  heading: props.heading,
567
572
  open: props.open,
568
573
  maxwidth: props.maxWidth,
569
- "data-testid": props.testId,
574
+ testid: props.testId,
570
575
  mt: props.mt,
571
576
  mr: props.mr,
572
577
  mb: props.mb,
@@ -583,7 +588,7 @@ function GoADivider(props) {
583
588
  mr: props.mr,
584
589
  mb: props.mb,
585
590
  ml: props.ml,
586
- "data-testid": props.testId
591
+ testid: props.testId
587
592
  }
588
593
  );
589
594
  }
@@ -604,8 +609,9 @@ function GoADropdown(props) {
604
609
  }
605
610
  const current = el.current;
606
611
  const handler = (e) => {
612
+ var _a;
607
613
  const { name, value, values } = e.detail;
608
- props.onChange(name, props.multiselect ? values : value);
614
+ (_a = props.onChange) == null ? void 0 : _a.call(props, name, props.multiselect ? values : value);
609
615
  };
610
616
  current.addEventListener("_change", handler);
611
617
  return () => {
@@ -632,7 +638,7 @@ function GoADropdown(props) {
632
638
  multiselect: props.multiselect,
633
639
  native: props.native,
634
640
  placeholder: props.placeholder,
635
- "data-testid": props.testId,
641
+ testid: props.testId,
636
642
  width: props.width,
637
643
  relative: props.relative,
638
644
  id: props.id,
@@ -659,6 +665,53 @@ function GoADropdownItem({ value, label, filter, name, testId, mountType = "appe
659
665
  }
660
666
  );
661
667
  }
668
+ function GoAFieldset({
669
+ heading,
670
+ buttonText,
671
+ id,
672
+ onContinue,
673
+ children,
674
+ mt,
675
+ mr,
676
+ mb,
677
+ ml,
678
+ first,
679
+ last
680
+ }) {
681
+ const ref = react.useRef(null);
682
+ react.useEffect(() => {
683
+ var _a;
684
+ const _continue = (e) => {
685
+ const { el, state } = e.detail;
686
+ return onContinue == null ? void 0 : onContinue(el, state);
687
+ };
688
+ if (onContinue) {
689
+ (_a = ref.current) == null ? void 0 : _a.addEventListener("_continue", _continue);
690
+ }
691
+ return () => {
692
+ var _a2;
693
+ if (onContinue) {
694
+ (_a2 = ref.current) == null ? void 0 : _a2.removeEventListener("_continue", _continue);
695
+ }
696
+ };
697
+ }, [ref.current, onContinue]);
698
+ return /* @__PURE__ */ jsxRuntime.jsx(
699
+ "goa-fieldset",
700
+ {
701
+ ref,
702
+ id,
703
+ first,
704
+ last,
705
+ heading,
706
+ buttontext: buttonText,
707
+ mt,
708
+ mr,
709
+ mb,
710
+ ml,
711
+ children
712
+ }
713
+ );
714
+ }
662
715
  function GoAFileUploadCard({
663
716
  filename,
664
717
  size,
@@ -691,7 +744,7 @@ function GoAFileUploadCard({
691
744
  type,
692
745
  progress,
693
746
  error,
694
- "data-testid": testId
747
+ testid: testId
695
748
  }
696
749
  );
697
750
  }
@@ -721,7 +774,7 @@ function GoAFileUploadInput({
721
774
  variant,
722
775
  accept,
723
776
  maxfilesize: maxFileSize,
724
- "data-testid": testId
777
+ testid: testId
725
778
  }
726
779
  );
727
780
  }
@@ -730,13 +783,13 @@ function GoAAppFooter({
730
783
  children,
731
784
  testId
732
785
  }) {
733
- return /* @__PURE__ */ jsxRuntime.jsx("goa-app-footer", { maxcontentwidth: maxContentWidth, "data-testid": testId, children });
786
+ return /* @__PURE__ */ jsxRuntime.jsx("goa-app-footer", { maxcontentwidth: maxContentWidth, testid: testId, children });
734
787
  }
735
788
  function GoAAppFooterMetaSection({ testId, children }) {
736
789
  return /* @__PURE__ */ jsxRuntime.jsx(
737
790
  "goa-app-footer-meta-section",
738
791
  {
739
- "data-testid": testId,
792
+ testid: testId,
740
793
  slot: "meta",
741
794
  children
742
795
  }
@@ -754,7 +807,7 @@ function GoAAppFooterNavSection({
754
807
  slot: "nav",
755
808
  heading,
756
809
  maxcolumncount: maxColumnCount,
757
- "data-testid": testId,
810
+ testid: testId,
758
811
  children
759
812
  }
760
813
  );
@@ -787,7 +840,7 @@ function GoAFormItem({
787
840
  mr,
788
841
  mb,
789
842
  ml,
790
- "data-testid": testId,
843
+ testid: testId,
791
844
  id,
792
845
  children: [
793
846
  error && typeof error !== "string" && /* @__PURE__ */ jsxRuntime.jsx("div", { slot: "error", children: error }),
@@ -829,7 +882,7 @@ function GoAFormStepper({
829
882
  "goa-form-stepper",
830
883
  {
831
884
  ref,
832
- "data-testid": testId,
885
+ testid: testId,
833
886
  step,
834
887
  mt,
835
888
  mr,
@@ -858,7 +911,7 @@ function GoAGrid({
858
911
  mr,
859
912
  mb,
860
913
  ml,
861
- "data-testid": testId,
914
+ testid: testId,
862
915
  children
863
916
  }
864
917
  );
@@ -882,7 +935,7 @@ function GoAHeroBanner({
882
935
  maxcontentwidth: maxContentWidth,
883
936
  backgroundcolor: backgroundColor,
884
937
  textcolor: textColor,
885
- "data-testid": testId,
938
+ testid: testId,
886
939
  children
887
940
  }
888
941
  );
@@ -938,7 +991,7 @@ function GoAIconButton({
938
991
  mr,
939
992
  mb,
940
993
  ml,
941
- "data-testid": testId,
994
+ testid: testId,
942
995
  children
943
996
  }
944
997
  );
@@ -973,7 +1026,7 @@ function GoAIcon({
973
1026
  mr,
974
1027
  mb,
975
1028
  ml,
976
- "data-testid": testId
1029
+ testid: testId
977
1030
  }
978
1031
  );
979
1032
  }
@@ -2625,7 +2678,7 @@ function GoAInput({
2625
2678
  const current = ref.current;
2626
2679
  const changeListener = (e) => {
2627
2680
  const { name: name2, value: value2 } = e.detail;
2628
- onChange(name2, value2);
2681
+ onChange == null ? void 0 : onChange(name2, value2);
2629
2682
  };
2630
2683
  const clickListener = () => {
2631
2684
  onTrailingIconClick == null ? void 0 : onTrailingIconClick();
@@ -2672,7 +2725,7 @@ function GoAInput({
2672
2725
  readonly,
2673
2726
  placeholder,
2674
2727
  error,
2675
- "data-testid": testId,
2728
+ testid: testId,
2676
2729
  value,
2677
2730
  width,
2678
2731
  min,
@@ -2696,6 +2749,7 @@ function GoAInput({
2696
2749
  }
2697
2750
  const onDateChangeHandler = (onChange) => {
2698
2751
  return (name, value) => {
2752
+ if (!onChange) return;
2699
2753
  if (!value) {
2700
2754
  onChange(name, "");
2701
2755
  return;
@@ -2707,6 +2761,7 @@ const onDateChangeHandler = (onChange) => {
2707
2761
  };
2708
2762
  const onTimeChangeHandler = (onChange) => {
2709
2763
  return (name, value) => {
2764
+ if (!onChange) return;
2710
2765
  if (!value) {
2711
2766
  onChange(name, "");
2712
2767
  return;
@@ -2801,7 +2856,10 @@ function GoAInputFile(props) {
2801
2856
  id: props.id,
2802
2857
  name: props.name,
2803
2858
  type: "file",
2804
- onChange: (e) => props.onChange(e.target.name, e.target.value),
2859
+ onChange: (e) => {
2860
+ var _a;
2861
+ return (_a = props.onChange) == null ? void 0 : _a.call(props, e.target.name, e.target.value);
2862
+ },
2805
2863
  style: { backgroundColor: "revert" }
2806
2864
  }
2807
2865
  );
@@ -2816,7 +2874,8 @@ function GoAInputNumber({
2816
2874
  ...props
2817
2875
  }) {
2818
2876
  const onNumberChange = (name, value2) => {
2819
- props.onChange(name, parseFloat(value2));
2877
+ var _a;
2878
+ (_a = props.onChange) == null ? void 0 : _a.call(props, name, parseFloat(value2));
2820
2879
  };
2821
2880
  const onFocus = (name, value2) => {
2822
2881
  var _a;
@@ -2848,6 +2907,35 @@ function GoAInputNumber({
2848
2907
  function GoAInputRange(props) {
2849
2908
  return /* @__PURE__ */ jsxRuntime.jsx(GoAInput, { ...props, type: "range" });
2850
2909
  }
2910
+ function GoALink(props) {
2911
+ return /* @__PURE__ */ jsxRuntime.jsx(
2912
+ "goa-link",
2913
+ {
2914
+ leadingicon: props.leadingIcon,
2915
+ trailingicon: props.trailingIcon,
2916
+ mt: props.mt,
2917
+ mb: props.mb,
2918
+ ml: props.ml,
2919
+ mr: props.mr,
2920
+ children: props.children
2921
+ }
2922
+ );
2923
+ }
2924
+ function GoALinkButton({ type = "primary", ...props }) {
2925
+ return /* @__PURE__ */ jsxRuntime.jsx(
2926
+ "goa-link-button",
2927
+ {
2928
+ type,
2929
+ leadingicon: props.leadingIcon,
2930
+ trailingicon: props.trailingIcon,
2931
+ mt: props.mt,
2932
+ mb: props.mb,
2933
+ ml: props.ml,
2934
+ mr: props.mr,
2935
+ children: props.children
2936
+ }
2937
+ );
2938
+ }
2851
2939
  function GoAMicrositeHeader({
2852
2940
  type,
2853
2941
  version,
@@ -2855,18 +2943,39 @@ function GoAMicrositeHeader({
2855
2943
  maxContentWidth,
2856
2944
  feedbackUrlTarget,
2857
2945
  headerUrlTarget,
2858
- testId
2946
+ testId,
2947
+ onFeedbackClick
2859
2948
  }) {
2949
+ const el = react.useRef(null);
2950
+ react.useEffect(() => {
2951
+ if (!el.current) {
2952
+ return;
2953
+ }
2954
+ if (!onFeedbackClick) {
2955
+ return;
2956
+ }
2957
+ const current = el.current;
2958
+ const listener = () => {
2959
+ onFeedbackClick();
2960
+ };
2961
+ current.addEventListener("_feedbackClick", listener);
2962
+ return () => {
2963
+ current.removeEventListener("_feedbackClick", listener);
2964
+ };
2965
+ }, [el, onFeedbackClick]);
2860
2966
  return /* @__PURE__ */ jsxRuntime.jsx(
2861
2967
  "goa-microsite-header",
2862
2968
  {
2969
+ ref: el,
2863
2970
  type,
2864
- version,
2971
+ version: typeof version === "string" ? version : void 0,
2865
2972
  feedbackurl: feedbackUrl,
2866
- "data-testid": testId,
2973
+ testid: testId,
2867
2974
  maxcontentwidth: maxContentWidth,
2868
2975
  feedbackurltarget: feedbackUrlTarget,
2869
- headerurltarget: headerUrlTarget
2976
+ headerurltarget: headerUrlTarget,
2977
+ hasfeedbackhandler: !!onFeedbackClick,
2978
+ children: version && typeof version !== "string" && /* @__PURE__ */ jsxRuntime.jsx("div", { slot: "version", children: version })
2870
2979
  }
2871
2980
  );
2872
2981
  }
@@ -2915,7 +3024,7 @@ function GoAModal({
2915
3024
  maxwidth: maxWidth,
2916
3025
  transition,
2917
3026
  calloutvariant: calloutVariant,
2918
- "data-testid": testId,
3027
+ testid: testId,
2919
3028
  role,
2920
3029
  children: [
2921
3030
  heading && /* @__PURE__ */ jsxRuntime.jsx("div", { slot: "heading", children: heading }),
@@ -2952,7 +3061,7 @@ const GoANotification = ({
2952
3061
  {
2953
3062
  ref: el,
2954
3063
  type,
2955
- "data-testid": testId,
3064
+ testid: testId,
2956
3065
  maxcontentwidth: maxContentWidth,
2957
3066
  arialive: ariaLive,
2958
3067
  children
@@ -2963,7 +3072,7 @@ function GoAOneColumnLayout(props) {
2963
3072
  return /* @__PURE__ */ jsxRuntime.jsx("goa-one-column-layout", { children: props.children });
2964
3073
  }
2965
3074
  function GoAPageBlock(props) {
2966
- return /* @__PURE__ */ jsxRuntime.jsx("goa-page-block", { width: props.width, "data-testid": props.testId, children: props.children });
3075
+ return /* @__PURE__ */ jsxRuntime.jsx("goa-page-block", { width: props.width, testid: props.testId, children: props.children });
2967
3076
  }
2968
3077
  function GoAPages(props) {
2969
3078
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -3006,7 +3115,7 @@ function GoAPagination({ onChange, ...props }) {
3006
3115
  mb: props.mb,
3007
3116
  ml: props.ml,
3008
3117
  mr: props.mr,
3009
- "data-testid": props.testId
3118
+ testid: props.testId
3010
3119
  }
3011
3120
  );
3012
3121
  }
@@ -3027,7 +3136,7 @@ function GoAPopover({
3027
3136
  return /* @__PURE__ */ jsxRuntime.jsxs(
3028
3137
  "goa-popover",
3029
3138
  {
3030
- "data-testid": testId,
3139
+ testid: testId,
3031
3140
  maxwidth: maxWidth,
3032
3141
  minwidth: minWidth,
3033
3142
  padded,
@@ -3121,7 +3230,7 @@ function GoARadioGroup({
3121
3230
  return /* @__PURE__ */ jsxRuntime.jsx(
3122
3231
  "goa-radio-group",
3123
3232
  {
3124
- "data-testid": testId,
3233
+ testid: testId,
3125
3234
  ref: el,
3126
3235
  name,
3127
3236
  value,
@@ -3142,7 +3251,7 @@ function GoASideMenuGroup(props) {
3142
3251
  "goa-side-menu-group",
3143
3252
  {
3144
3253
  heading: props.heading,
3145
- "data-testid": props.testId,
3254
+ testid: props.testId,
3146
3255
  children: props.children
3147
3256
  }
3148
3257
  );
@@ -3152,7 +3261,7 @@ function GoASideMenuHeading(props) {
3152
3261
  "goa-side-menu-heading",
3153
3262
  {
3154
3263
  icon: props.icon,
3155
- "data-testid": props.testId,
3264
+ testid: props.testId,
3156
3265
  children: [
3157
3266
  props.children,
3158
3267
  props.meta && /* @__PURE__ */ jsxRuntime.jsx("span", { slot: "meta", children: props.meta })
@@ -3161,7 +3270,7 @@ function GoASideMenuHeading(props) {
3161
3270
  );
3162
3271
  }
3163
3272
  function GoASideMenu(props) {
3164
- return /* @__PURE__ */ jsxRuntime.jsx("goa-side-menu", { "data-testid": props.testId, children: props.children });
3273
+ return /* @__PURE__ */ jsxRuntime.jsx("goa-side-menu", { testid: props.testId, children: props.children });
3165
3274
  }
3166
3275
  const GoASkeleton = ({
3167
3276
  maxWidth,
@@ -3185,7 +3294,7 @@ const GoASkeleton = ({
3185
3294
  mr,
3186
3295
  mb,
3187
3296
  ml,
3188
- "data-testid": testId
3297
+ testid: testId
3189
3298
  }
3190
3299
  );
3191
3300
  };
@@ -3195,7 +3304,7 @@ function GoASpacer(props) {
3195
3304
  {
3196
3305
  hspacing: props.hSpacing,
3197
3306
  vspacing: props.vSpacing,
3198
- "data-testid": props.testId
3307
+ testid: props.testId
3199
3308
  }
3200
3309
  );
3201
3310
  }
@@ -3213,7 +3322,7 @@ function GoASpinner({
3213
3322
  size,
3214
3323
  progress,
3215
3324
  invert,
3216
- "data-testid": testId
3325
+ testid: testId
3217
3326
  }
3218
3327
  );
3219
3328
  }
@@ -3240,7 +3349,7 @@ function GoATable({ onSort, ...props }) {
3240
3349
  width: props.width,
3241
3350
  stickyheader: false,
3242
3351
  variant: props.variant,
3243
- "data-testid": props.testId,
3352
+ testid: props.testId,
3244
3353
  mt: props.mt,
3245
3354
  mb: props.mb,
3246
3355
  ml: props.ml,
@@ -3276,7 +3385,7 @@ function GoATabs({
3276
3385
  };
3277
3386
  }
3278
3387
  }, [onChange]);
3279
- return /* @__PURE__ */ jsxRuntime.jsx("goa-tabs", { ref, initialtab: initialTab, "data-testid": testId, children });
3388
+ return /* @__PURE__ */ jsxRuntime.jsx("goa-tabs", { ref, initialtab: initialTab, testid: testId, children });
3280
3389
  }
3281
3390
  function GoATab({ heading, children }) {
3282
3391
  return /* @__PURE__ */ jsxRuntime.jsxs("goa-tab", { children: [
@@ -3284,6 +3393,21 @@ function GoATab({ heading, children }) {
3284
3393
  children
3285
3394
  ] });
3286
3395
  }
3396
+ function GoAText(props) {
3397
+ return /* @__PURE__ */ jsxRuntime.jsx(
3398
+ "goa-text",
3399
+ {
3400
+ as: props.as || "div",
3401
+ size: props.size,
3402
+ maxwidth: props.maxWidth || "65ch",
3403
+ mt: props.mt,
3404
+ mb: props.mb,
3405
+ ml: props.ml,
3406
+ mr: props.mr,
3407
+ children: props.children
3408
+ }
3409
+ );
3410
+ }
3287
3411
  function GoATextarea({
3288
3412
  name,
3289
3413
  value,
@@ -3312,7 +3436,7 @@ function GoATextarea({
3312
3436
  const current = el.current;
3313
3437
  const listener = (e) => {
3314
3438
  const { name: name2, value: value2 } = e.detail;
3315
- onChange(name2, value2);
3439
+ onChange == null ? void 0 : onChange(name2, value2);
3316
3440
  };
3317
3441
  current.addEventListener("_change", listener);
3318
3442
  return () => {
@@ -3347,7 +3471,7 @@ function GoATextarea({
3347
3471
  width,
3348
3472
  maxwidth: maxWidth,
3349
3473
  error,
3350
- "data-testid": testId,
3474
+ testid: testId,
3351
3475
  arialabel: ariaLabel,
3352
3476
  mt,
3353
3477
  mr,
@@ -3381,7 +3505,7 @@ function GoATooltip(props) {
3381
3505
  position: props.position,
3382
3506
  content: props.content,
3383
3507
  halign: props.hAlign,
3384
- "data-testid": props.testId,
3508
+ testid: props.testId,
3385
3509
  mt: props.mt,
3386
3510
  mr: props.mr,
3387
3511
  mb: props.mb,
@@ -3428,6 +3552,7 @@ exports.GoADropdown = GoADropdown;
3428
3552
  exports.GoADropdownItem = GoADropdownItem;
3429
3553
  exports.GoADropdownOption = GoADropdownOption;
3430
3554
  exports.GoAEmergencyBadge = GoAEmergencyBadge;
3555
+ exports.GoAFieldset = GoAFieldset;
3431
3556
  exports.GoAFileUploadCard = GoAFileUploadCard;
3432
3557
  exports.GoAFileUploadInput = GoAFileUploadInput;
3433
3558
  exports.GoAFormItem = GoAFormItem;
@@ -3454,6 +3579,8 @@ exports.GoAInputTel = GoAInputTel;
3454
3579
  exports.GoAInputText = GoAInputText;
3455
3580
  exports.GoAInputTime = GoAInputTime;
3456
3581
  exports.GoAInputUrl = GoAInputUrl;
3582
+ exports.GoALink = GoALink;
3583
+ exports.GoALinkButton = GoALinkButton;
3457
3584
  exports.GoAMicrositeHeader = GoAMicrositeHeader;
3458
3585
  exports.GoAModal = GoAModal;
3459
3586
  exports.GoANotification = GoANotification;
@@ -3475,6 +3602,7 @@ exports.GoATab = GoATab;
3475
3602
  exports.GoATable = GoATable;
3476
3603
  exports.GoATableSortHeader = GoATableSortHeader;
3477
3604
  exports.GoATabs = GoATabs;
3605
+ exports.GoAText = GoAText;
3478
3606
  exports.GoATextArea = GoATextarea;
3479
3607
  exports.GoATextarea = GoATextarea;
3480
3608
  exports.GoAThreeColumnLayout = GoAThreeColumnLayout;