@abgov/react-components 6.10.0-next.1 → 6.11.0-dev.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/experimental/badge/badge.d.ts +33 -0
- package/experimental/button/button.d.ts +43 -0
- package/experimental/calendar/calendar.d.ts +30 -0
- package/experimental/callout/callout.d.ts +33 -0
- package/experimental/checkbox/checkbox.d.ts +52 -0
- package/experimental/date-picker/date-picker.d.ts +43 -0
- package/experimental/drawer/drawer.d.ts +31 -0
- package/experimental/dropdown/dropdown-item.d.ts +26 -0
- package/experimental/dropdown/dropdown.d.ts +62 -0
- package/experimental/file-upload-card/file-upload-card.d.ts +32 -0
- package/experimental/file-upload-input/file-upload-input.d.ts +27 -0
- package/experimental/filter-chip/filter-chip.d.ts +31 -0
- package/experimental/footer/footer.d.ts +24 -0
- package/experimental/footer-meta-section/footer-meta-section.d.ts +18 -0
- package/experimental/footer-nav-section/footer-nav-section.d.ts +22 -0
- package/experimental/form-item/form-item.d.ts +46 -0
- package/experimental/index.d.ts +30 -2
- package/experimental/input/input.d.ts +124 -0
- package/experimental/link/link.d.ts +32 -0
- package/experimental/modal/modal.d.ts +44 -0
- package/experimental/notification/notification.d.ts +31 -0
- package/experimental/pagination/pagination.d.ts +29 -0
- package/experimental/radio-group/radio-group.d.ts +40 -0
- package/experimental/radio-group/radio.d.ts +42 -0
- package/experimental/side-menu/side-menu.d.ts +19 -0
- package/experimental/side-menu-group/side-menu-group.d.ts +24 -0
- package/experimental/side-menu-heading/side-menu-heading.d.ts +23 -0
- package/experimental/table/table-sort-header.d.ts +20 -0
- package/experimental/table/table.d.ts +30 -0
- package/experimental/tabs/tabs.d.ts +27 -0
- package/experimental/textarea/textarea.d.ts +53 -0
- package/experimental/work-side-menu-group/work-side-menu-group.d.ts +22 -0
- package/experimental.js +1160 -64
- package/experimental.js.map +1 -1
- package/experimental.mjs +1163 -68
- package/experimental.mjs.map +1 -1
- package/index.js +139 -1753
- package/index.js.map +1 -1
- package/index.mjs +68 -1683
- package/index.mjs.map +1 -1
- package/lib/badge/badge.d.ts +0 -16
- package/lib/button/button.d.ts +0 -22
- package/lib/calendar/calendar.d.ts +0 -16
- package/lib/callout/callout.d.ts +0 -16
- package/lib/checkbox/checkbox.d.ts +0 -25
- package/lib/date-picker/date-picker.d.ts +0 -21
- package/lib/drawer/drawer.d.ts +0 -15
- package/lib/dropdown/dropdown-item.d.ts +0 -15
- package/lib/dropdown/dropdown.d.ts +0 -29
- package/lib/file-upload-card/file-upload-card.d.ts +0 -17
- package/lib/file-upload-input/file-upload-input.d.ts +0 -15
- package/lib/filter-chip/filter-chip.d.ts +0 -15
- package/lib/footer/footer.d.ts +0 -12
- package/lib/footer-meta-section/footer-meta-section.d.ts +0 -10
- package/lib/footer-nav-section/footer-nav-section.d.ts +0 -12
- package/lib/form-item/form-item.d.ts +0 -19
- package/lib/input/input.d.ts +0 -38
- package/lib/link/link.d.ts +0 -15
- package/lib/modal/modal.d.ts +1 -23
- package/lib/notification/notification.d.ts +0 -14
- package/lib/pagination/pagination.d.ts +0 -15
- package/lib/radio-group/radio-group.d.ts +0 -19
- package/lib/radio-group/radio.d.ts +0 -20
- package/lib/side-menu/side-menu.d.ts +0 -10
- package/lib/side-menu-group/side-menu-group.d.ts +0 -12
- package/lib/side-menu-heading/side-menu-heading.d.ts +0 -11
- package/lib/tab/tab.d.ts +3 -1
- package/lib/table/table-sort-header.d.ts +0 -11
- package/lib/table/table.d.ts +0 -14
- package/lib/tabs/tabs.d.ts +0 -14
- package/lib/textarea/textarea.d.ts +0 -25
- package/package.json +1 -1
- package/parseISO-BHUUf1QW.mjs +1693 -0
- package/parseISO-BHUUf1QW.mjs.map +1 -0
- package/parseISO-Dj57mwuH.js +1692 -0
- package/parseISO-Dj57mwuH.js.map +1 -0
- package/experimental/form/form-summary.d.ts +0 -10
- package/experimental/form/form.d.ts +0 -23
- package/experimental/resizable-panel/ResizablePanel.d.ts +0 -7
- package/icon-B3p90m2x.js +0 -75
- package/icon-B3p90m2x.js.map +0 -1
- package/icon-CCNDGfBO.mjs +0 -76
- package/icon-CCNDGfBO.mjs.map +0 -1
- package/style.css +0 -49
package/experimental.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experimental.mjs","sources":["../../../libs/react-components/src/experimental/resizable-panel/ResizablePanel.tsx","../../../libs/react-components/src/experimental/work-side-menu/work-side-menu.tsx","../../../libs/react-components/src/experimental/work-side-menu-item/work-side-menu-item.tsx"],"sourcesContent":["import { ReactNode, useEffect, useRef, useState, type JSX } from \"react\";\nimport Css from \"./ResizablePanel.module.css\";\nimport { GoabIcon } from \"../../lib/icon/icon\";\n\nexport type ResizableProps = {\n minWidth?: number;\n children: ReactNode;\n};\n\ntype MouseState = \"static\" | \"active\";\n\nexport function ResizablePanel(props: ResizableProps): JSX.Element {\n // element refs\n const bgRef = useRef<HTMLDivElement | null>(null);\n const sectionRef = useRef<HTMLElement | null>(null);\n const widthRef = useRef<HTMLDivElement | null>(null);\n const handleRef = useRef<HTMLDivElement | null>(null);\n\n // value refs\n const maxWidth = useRef<number>(0);\n const resizeBarState = useRef<MouseState>(\"static\");\n\n // state\n const [width, setWidth] = useState<string>();\n\n useEffect(() => {\n maxWidth.current = bgRef.current?.getBoundingClientRect().width ?? 0;\n }, []);\n\n function resetMouseState() {\n resizeBarState.current = \"static\";\n }\n\n function onMouseDown(_: React.MouseEvent) {\n resizeBarState.current = \"active\";\n window.addEventListener(\"mouseup\", resetMouseState);\n }\n\n function onMouseUp(_: React.MouseEvent) {\n resizeBarState.current = \"static\";\n window.removeEventListener(\"mouseup\", resetMouseState);\n }\n\n function onMouseMove(e: React.MouseEvent) {\n if (resizeBarState.current === \"static\") {\n return;\n }\n\n const sectionEl = sectionRef.current;\n const xOffset = sectionEl?.getBoundingClientRect().x || 0;\n const mouseX = e.clientX;\n const minWidth = props.minWidth || 0;\n\n if (mouseX <= 0) {\n return;\n }\n\n // mouse direction\n const newXPos = handleRef.current?.getBoundingClientRect().x ?? 0;\n\n // set width of preview area\n const calcWidth = Math.max(\n newXPos - xOffset,\n Math.min(mouseX - xOffset, maxWidth.current),\n );\n const elementWidth = Math.max(minWidth, calcWidth - 64); // 4rem padding\n\n // prevent dragging bar more than allowed\n if (elementWidth <= minWidth) {\n return;\n }\n\n // set resizable area width\n sectionEl?.setAttribute(\"style\", `width: ${calcWidth}px;`);\n // set displayed px width\n widthRef.current?.setAttribute(\n \"style\",\n `right: ${maxWidth.current - calcWidth + 32}px`,\n );\n setWidth(`${Math.round(elementWidth)}px`);\n }\n\n return (\n <div\n ref={bgRef}\n className={Css.panelBackground}\n onMouseDown={onMouseDown}\n onMouseMove={onMouseMove}\n onMouseUp={onMouseUp}\n >\n <section ref={sectionRef} className={Css.panel}>\n <div className={Css.children}>{props.children}</div>\n <div ref={handleRef} className={Css.handle}>\n <GoabIcon type=\"reorder-two\" />\n </div>\n </section>\n <div ref={widthRef} className={Css.width}>\n {width}\n </div>\n </div>\n );\n}\n\nexport default ResizablePanel;\n","import { ReactNode, useEffect, useRef, type JSX } from \"react\";\n\ninterface WCProps {\n heading: string;\n url: string;\n \"user-name\"?: string;\n \"user-secondary-text\"?: string;\n testid?: string;\n primaryContent?: ReactNode;\n secondaryContent?: ReactNode;\n accountContent?: ReactNode;\n open?: boolean;\n ref: React.RefObject<HTMLElement | null>;\n}\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-work-side-menu\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabWorkSideMenuProps {\n heading: string;\n url: string;\n userName?: string;\n userSecondaryText?: string;\n testId?: string;\n primaryContent?: ReactNode;\n secondaryContent?: ReactNode;\n accountContent?: ReactNode;\n open?: boolean;\n onToggle?: () => void;\n}\n\nexport function GoabxWorkSideMenu({\n heading,\n url,\n userName,\n userSecondaryText,\n testId,\n primaryContent,\n secondaryContent,\n accountContent,\n open,\n onToggle,\n}: GoabWorkSideMenuProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!el?.current || !onToggle) {\n return;\n }\n el.current?.addEventListener(\"_toggle\", onToggle);\n return () => {\n el.current?.removeEventListener(\"_toggle\", onToggle);\n };\n }, [el, onToggle]);\n return (\n <goa-work-side-menu\n ref={el}\n heading={heading}\n url={url}\n user-name={userName}\n user-secondary-text={userSecondaryText}\n open={open ? true : false}\n testid={testId}\n >\n {primaryContent && <div slot=\"primary\">{primaryContent}</div>}\n {secondaryContent && <div slot=\"secondary\">{secondaryContent}</div>}\n {accountContent && <div slot=\"account\">{accountContent}</div>}\n </goa-work-side-menu>\n );\n}\n\nexport default GoabxWorkSideMenu;\n","import { type JSX } from \"react\";\nimport { GoabWorkSideMenuItemType } from \"@abgov/ui-components-common\";\ninterface WCProps {\n label: string;\n url: string;\n badge?: string;\n current?: string;\n divider?: string;\n icon?: string;\n testid?: string;\n type?: GoabWorkSideMenuItemType;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-work-side-menu-item\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabWorkSideMenuItemProps {\n label: string;\n url: string;\n badge?: string;\n current?: boolean;\n divider?: boolean;\n icon?: string;\n testId?: string;\n type?: GoabWorkSideMenuItemType;\n children?: React.ReactNode;\n}\n\nexport function GoabxWorkSideMenuItem(props: GoabWorkSideMenuItemProps): JSX.Element {\n return (\n <goa-work-side-menu-item\n label={props.label}\n url={props.url}\n badge={props.badge}\n current={props.current ? \"true\" : undefined}\n divider={props.divider ? \"true\" : undefined}\n icon={props.icon}\n testid={props.testId}\n type={props.type}\n >\n {props.children}\n </goa-work-side-menu-item>\n );\n}\n\nexport default GoabxWorkSideMenuItem;\n"],"names":["width","_a"],"mappings":";;;;;;;;;;;;;;;;AAWO,SAAS,eAAe,OAAoC;AAEjE,QAAM,QAAQ,OAA8B,IAAI;AAChD,QAAM,aAAa,OAA2B,IAAI;AAClD,QAAM,WAAW,OAA8B,IAAI;AACnD,QAAM,YAAY,OAA8B,IAAI;AAGpD,QAAM,WAAW,OAAe,CAAC;AACjC,QAAM,iBAAiB,OAAmB,QAAQ;AAGlD,QAAM,CAACA,QAAO,QAAQ,IAAI,SAAA;AAE1B,YAAU,MAAM;;AACd,aAAS,YAAU,WAAM,YAAN,mBAAe,wBAAwB,UAAS;AAAA,EACrE,GAAG,CAAA,CAAE;AAEL,WAAS,kBAAkB;AACzB,mBAAe,UAAU;AAAA,EAC3B;AAEA,WAAS,YAAY,GAAqB;AACxC,mBAAe,UAAU;AACzB,WAAO,iBAAiB,WAAW,eAAe;AAAA,EACpD;AAEA,WAAS,UAAU,GAAqB;AACtC,mBAAe,UAAU;AACzB,WAAO,oBAAoB,WAAW,eAAe;AAAA,EACvD;AAEA,WAAS,YAAY,GAAqB;;AACxC,QAAI,eAAe,YAAY,UAAU;AACvC;AAAA,IACF;AAEA,UAAM,YAAY,WAAW;AAC7B,UAAM,WAAU,uCAAW,wBAAwB,MAAK;AACxD,UAAM,SAAS,EAAE;AACjB,UAAM,WAAW,MAAM,YAAY;AAEnC,QAAI,UAAU,GAAG;AACf;AAAA,IACF;AAGA,UAAM,YAAU,eAAU,YAAV,mBAAmB,wBAAwB,MAAK;AAGhE,UAAM,YAAY,KAAK;AAAA,MACrB,UAAU;AAAA,MACV,KAAK,IAAI,SAAS,SAAS,SAAS,OAAO;AAAA,IAAA;AAE7C,UAAM,eAAe,KAAK,IAAI,UAAU,YAAY,EAAE;AAGtD,QAAI,gBAAgB,UAAU;AAC5B;AAAA,IACF;AAGA,2CAAW,aAAa,SAAS,UAAU,SAAS;AAEpD,mBAAS,YAAT,mBAAkB;AAAA,MAChB;AAAA,MACA,UAAU,SAAS,UAAU,YAAY,EAAE;AAAA;AAE7C,aAAS,GAAG,KAAK,MAAM,YAAY,CAAC,IAAI;AAAA,EAC1C;AAEA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,WAAW,IAAI;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MAEA,UAAA;AAAA,QAAA,qBAAC,WAAA,EAAQ,KAAK,YAAY,WAAW,IAAI,OACvC,UAAA;AAAA,UAAA,oBAAC,OAAA,EAAI,WAAW,IAAI,UAAW,gBAAM,UAAS;AAAA,UAC9C,oBAAC,OAAA,EAAI,KAAK,WAAW,WAAW,IAAI,QAClC,UAAA,oBAAC,UAAA,EAAS,MAAK,cAAA,CAAc,EAAA,CAC/B;AAAA,QAAA,GACF;AAAA,4BACC,OAAA,EAAI,KAAK,UAAU,WAAW,IAAI,OAChC,UAAAA,OAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;AChEO,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAuC;AACrC,QAAM,KAAK,OAAoB,IAAI;AAEnC,YAAU,MAAM;;AACd,QAAI,EAAC,yBAAI,YAAW,CAAC,UAAU;AAC7B;AAAA,IACF;AACA,aAAG,YAAH,mBAAY,iBAAiB,WAAW;AACxC,WAAO,MAAM;;AACX,OAAAC,MAAA,GAAG,YAAH,gBAAAA,IAAY,oBAAoB,WAAW;AAAA,IAC7C;AAAA,EACF,GAAG,CAAC,IAAI,QAAQ,CAAC;AACjB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,aAAW;AAAA,MACX,uBAAqB;AAAA,MACrB,MAAM,OAAO,OAAO;AAAA,MACpB,QAAQ;AAAA,MAEP,UAAA;AAAA,QAAA,kBAAkB,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,gBAAe;AAAA,QACtD,oBAAoB,oBAAC,OAAA,EAAI,MAAK,aAAa,UAAA,kBAAiB;AAAA,QAC5D,kBAAkB,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,eAAA,CAAe;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG7D;ACzCO,SAAS,sBAAsB,OAA+C;AACnF,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO,MAAM;AAAA,MACb,KAAK,MAAM;AAAA,MACX,OAAO,MAAM;AAAA,MACb,SAAS,MAAM,UAAU,SAAS;AAAA,MAClC,SAAS,MAAM,UAAU,SAAS;AAAA,MAClC,MAAM,MAAM;AAAA,MACZ,QAAQ,MAAM;AAAA,MACd,MAAM,MAAM;AAAA,MAEX,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;"}
|
|
1
|
+
{"version":3,"file":"experimental.mjs","sources":["../../../libs/react-components/src/experimental/badge/badge.tsx","../../../libs/react-components/src/experimental/button/button.tsx","../../../libs/react-components/src/experimental/calendar/calendar.tsx","../../../libs/react-components/src/experimental/callout/callout.tsx","../../../libs/react-components/src/experimental/checkbox/checkbox.tsx","../../../libs/react-components/src/experimental/date-picker/date-picker.tsx","../../../libs/react-components/src/experimental/drawer/drawer.tsx","../../../libs/react-components/src/experimental/dropdown/dropdown.tsx","../../../libs/react-components/src/experimental/dropdown/dropdown-item.tsx","../../../libs/react-components/src/experimental/file-upload-card/file-upload-card.tsx","../../../libs/react-components/src/experimental/file-upload-input/file-upload-input.tsx","../../../libs/react-components/src/experimental/filter-chip/filter-chip.tsx","../../../libs/react-components/src/experimental/form-item/form-item.tsx","../../../libs/react-components/src/experimental/footer/footer.tsx","../../../libs/react-components/src/experimental/footer-meta-section/footer-meta-section.tsx","../../../libs/react-components/src/experimental/footer-nav-section/footer-nav-section.tsx","../../../libs/react-components/src/experimental/input/input.tsx","../../../libs/react-components/src/experimental/link/link.tsx","../../../libs/react-components/src/experimental/modal/modal.tsx","../../../libs/react-components/src/experimental/notification/notification.tsx","../../../libs/react-components/src/experimental/pagination/pagination.tsx","../../../libs/react-components/src/experimental/radio-group/radio.tsx","../../../libs/react-components/src/experimental/radio-group/radio-group.tsx","../../../libs/react-components/src/experimental/side-menu/side-menu.tsx","../../../libs/react-components/src/experimental/side-menu-group/side-menu-group.tsx","../../../libs/react-components/src/experimental/side-menu-heading/side-menu-heading.tsx","../../../libs/react-components/src/experimental/table/table.tsx","../../../libs/react-components/src/experimental/table/table-sort-header.tsx","../../../libs/react-components/src/experimental/tabs/tabs.tsx","../../../libs/react-components/src/experimental/textarea/textarea.tsx","../../../libs/react-components/src/experimental/work-side-menu/work-side-menu.tsx","../../../libs/react-components/src/experimental/work-side-menu-item/work-side-menu-item.tsx","../../../libs/react-components/src/experimental/work-side-menu-group/work-side-menu-group.tsx"],"sourcesContent":["import {\n DataAttributes,\n GoabBadgeEmphasis,\n GoabBadgeSize,\n GoabBadgeType,\n GoabxBadgeType,\n GoabIconType,\n Margins,\n} from \"@abgov/ui-components-common\";\nimport type { JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n type: GoabBadgeType;\n icon?: string;\n content?: string;\n arialabel?: string;\n testid?: string;\n icontype?: GoabIconType;\n size?: GoabBadgeSize;\n emphasis?: GoabBadgeEmphasis;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-badge\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxBadgeProps extends Margins, DataAttributes {\n type: GoabxBadgeType;\n icon?: boolean;\n content?: string;\n testId?: string;\n ariaLabel?: string;\n iconType?: GoabIconType;\n size?: GoabBadgeSize;\n emphasis?: GoabBadgeEmphasis;\n version?: string;\n}\n\n/**\n * Determines the icon display logic for the badge component.\n * Priority order:\n * 1. icon={true} - always show icon, starting with default\n * 2. icon={false} - always hide icon (overrides iconType)\n * 3. iconType provided - show custom icon\n * 4. default/no icon or iconType set - hide icon\n */\nfunction getIconValue(icon?: boolean, iconType?: GoabIconType): \"true\" | \"false\" {\n // Explicit icon prop takes precedence\n if (icon !== undefined) {\n return icon ? \"true\" : \"false\";\n }\n\n // Show custom icon if iconType is provided\n return iconType ? \"true\" : \"false\";\n}\n\nexport function GoabxBadge({\n icon,\n iconType,\n size = \"medium\",\n emphasis = \"strong\",\n version = \"2\",\n ...rest\n}: GoabxBadgeProps): JSX.Element {\n const _props = transformProps<WCProps>({ size, emphasis, ...rest }, lowercase);\n\n return (\n <goa-badge\n // Handle icon display priority: explicit icon prop takes precedence over iconType\n icon={getIconValue(icon, iconType)}\n icontype={iconType}\n {..._props}\n version={version}\n size={size}\n emphasis={emphasis}\n />\n );\n}\n","import { ReactNode, useEffect, useRef, type JSX } from \"react\";\nimport {\n GoabButtonSize,\n GoabButtonType,\n GoabButtonVariant,\n GoabIconType,\n Margins,\n DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n type?: GoabButtonType;\n size?: GoabButtonSize;\n variant?: GoabButtonVariant;\n disabled?: string;\n leadingicon?: string;\n trailingicon?: string;\n width?: string;\n testid?: string;\n action?: string;\n actionArgs?: string;\n actionArg?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-button\": WCProps &\n React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\nexport interface GoabxButtonProps extends Margins, DataAttributes {\n type?: GoabButtonType;\n size?: GoabButtonSize;\n variant?: GoabButtonVariant;\n disabled?: boolean;\n leadingIcon?: GoabIconType;\n trailingIcon?: GoabIconType;\n width?: string;\n onClick?: () => void;\n testId?: string;\n action?: string;\n actionArgs?: Record<string, unknown>;\n actionArg?: string;\n version?: string;\n children?: ReactNode;\n}\n\nexport function GoabxButton({\n disabled,\n onClick,\n actionArgs,\n actionArg,\n children,\n version = \"2\",\n ...rest\n}: GoabxButtonProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>(rest, lowercase);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n if (!onClick) {\n return;\n }\n const current = el.current;\n const listener = () => {\n onClick?.();\n };\n\n current.addEventListener(\"_click\", listener);\n return () => {\n current.removeEventListener(\"_click\", listener);\n };\n }, [el, onClick]);\n\n return (\n <goa-button\n ref={el}\n disabled={disabled ? \"true\" : undefined}\n action-arg={actionArg}\n action-args={JSON.stringify(actionArgs)}\n {..._props}\n version={version}\n >\n {children}\n </goa-button>\n );\n}\n\nexport default GoabxButton;\n","import { useEffect, useRef, type JSX } from \"react\";\nimport {\n DataAttributes,\n GoabCalendarOnChangeDetail,\n Margins,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n name?: string;\n value?: string;\n min?: string;\n max?: string;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-calendar\": WCProps &\n React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\nexport interface GoabxCalendarProps extends Margins, DataAttributes {\n name?: string;\n value?: string;\n min?: string;\n max?: string;\n testId?: string;\n version?: string;\n onChange: (details: GoabCalendarOnChangeDetail) => void;\n}\n\nexport function GoabxCalendar({\n min,\n max,\n onChange,\n name,\n version = \"2\",\n ...rest\n}: GoabxCalendarProps): JSX.Element {\n const ref = useRef<HTMLInputElement>(null);\n\n const _props = transformProps<WCProps>(rest, lowercase);\n\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n const current = ref.current;\n const listener = (e: Event) => {\n onChange({\n name: name || \"\",\n value: (e as CustomEvent).detail.value,\n });\n };\n current.addEventListener(\"_change\", listener);\n\n return () => {\n current.removeEventListener(\"_change\", listener);\n };\n }, []);\n\n return (\n <goa-calendar\n ref={ref}\n name={name}\n min={min || undefined}\n max={max || undefined}\n version={version}\n {..._props}\n />\n );\n}\n\nexport default GoabxCalendar;\n","import {\n GoabCalloutAriaLive,\n GoabCalloutEmphasis,\n GoabCalloutSize,\n GoabCalloutType,\n GoabCalloutIconTheme,\n Margins, DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n heading?: string;\n type?: GoabCalloutType;\n size?: GoabCalloutSize;\n arialive?: GoabCalloutAriaLive;\n maxwidth?: string;\n icontheme?: GoabCalloutIconTheme;\n emphasis?: GoabCalloutEmphasis;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-callout\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxCalloutProps extends Margins, DataAttributes {\n heading?: string;\n type?: GoabCalloutType;\n size?: GoabCalloutSize;\n iconTheme?: GoabCalloutIconTheme;\n emphasis?: GoabCalloutEmphasis;\n maxWidth?: string;\n testId?: string;\n ariaLive?: GoabCalloutAriaLive;\n version?: string;\n children?: React.ReactNode;\n}\n\nexport const GoabxCallout = ({\n type = \"information\",\n iconTheme = \"outline\",\n size = \"large\",\n ariaLive = \"off\",\n emphasis = \"medium\",\n children,\n version = \"2\",\n ...rest\n}: GoabxCalloutProps) => {\n const _props = transformProps<WCProps>(\n { type, icontheme: iconTheme, size, arialive: ariaLive, emphasis, ...rest },\n lowercase\n );\n\n return (\n <goa-callout {..._props} version={version}>\n {children}\n </goa-callout>\n );\n};\n\nexport default GoabxCallout;\n","import {\n DataAttributes,\n GoabCheckboxOnChangeDetail,\n GoabCheckboxSize,\n Margins,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef, type JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-checkbox\": WCProps & React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\ninterface WCProps extends Margins {\n id?: string;\n name: string;\n checked?: string;\n indeterminate?: string;\n disabled?: string;\n error?: string;\n text?: string;\n value?: string | number;\n arialabel?: string;\n description?: string | React.ReactNode;\n reveal?: React.ReactNode;\n revealarialabel?: string;\n maxwidth?: string;\n testid?: string;\n size?: GoabCheckboxSize;\n version?: string;\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxCheckboxProps extends Margins, DataAttributes {\n id?: string;\n name: string;\n checked?: boolean;\n indeterminate?: boolean;\n disabled?: boolean;\n error?: boolean;\n text?: string;\n value?: string | number | boolean;\n children?: React.ReactNode;\n testId?: string;\n ariaLabel?: string;\n description?: string | React.ReactNode;\n reveal?: React.ReactNode;\n revealAriaLabel?: string;\n maxWidth?: string;\n size?: GoabCheckboxSize;\n version?: string;\n onChange?: (detail: GoabCheckboxOnChangeDetail) => void;\n}\n\n// legacy\nexport type Props = GoabxCheckboxProps;\n\nexport function GoabxCheckbox({\n error,\n checked,\n indeterminate,\n disabled,\n value,\n description,\n reveal,\n onChange,\n name,\n children,\n size = \"default\",\n version = \"2\",\n ...rest\n}: GoabxCheckboxProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>({ size, ...rest }, lowercase);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n const current = el.current;\n const listener = (e: Event) => {\n const detail = (e as CustomEvent<GoabCheckboxOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n\n current.addEventListener(\"_change\", listener);\n\n return () => {\n current.removeEventListener(\"_change\", listener);\n };\n }, [name, onChange]);\n\n return (\n <goa-checkbox\n ref={el}\n {..._props}\n name={name}\n error={error ? \"true\" : undefined}\n checked={checked ? \"true\" : undefined}\n indeterminate={indeterminate ? \"true\" : undefined}\n disabled={disabled ? \"true\" : undefined}\n value={typeof value === \"boolean\" ? (value ? \"true\" : undefined) : value}\n description={typeof description === \"string\" ? description : undefined}\n version={version}\n >\n {children}\n {typeof description !== \"string\" && description && (\n <div slot=\"description\">{description}</div>\n )}\n {reveal && <div slot=\"reveal\">{reveal}</div>}\n </goa-checkbox>\n );\n}\n\nexport default GoabxCheckbox;\n","import { useEffect, useRef, type JSX } from \"react\";\nimport {\n GoabDatePickerInputType,\n GoabDatePickerOnChangeDetail,\n Margins,\n DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n name?: string;\n value?: string;\n error?: string;\n min?: string;\n max?: string;\n type?: string;\n relative?: string;\n disabled?: string;\n testid?: string;\n width?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-date-picker\": WCProps &\n React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\nexport interface GoabxDatePickerProps extends Margins, DataAttributes {\n name?: string;\n value?: Date | string | undefined;\n error?: boolean;\n min?: Date | string;\n max?: Date | string;\n type?: GoabDatePickerInputType;\n testId?: string;\n /***\n * @deprecated This property has no effect and will be removed in a future version\n */\n relative?: boolean;\n disabled?: boolean;\n width?: string;\n version?: string;\n onChange?: (detail: GoabDatePickerOnChangeDetail) => void;\n}\n\nexport function GoabxDatePicker({\n value,\n error,\n min,\n max,\n disabled,\n relative,\n version = \"2\",\n onChange,\n ...rest\n}: GoabxDatePickerProps): JSX.Element {\n const ref = useRef<HTMLInputElement>(null);\n\n const _props = transformProps<WCProps>(rest, lowercase);\n\n useEffect(() => {\n if (value && typeof value !== \"string\") {\n console.warn(\n \"Using a `Date` type for value is deprecated. Instead use a string of the format `yyyy-mm-dd`\",\n );\n }\n }, []);\n\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n const current = ref.current;\n\n const handleChange = (e: Event) => {\n const detail = (e as CustomEvent<GoabDatePickerOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n\n if (onChange) {\n current.addEventListener(\"_change\", handleChange);\n }\n\n return () => {\n if (onChange) {\n current.removeEventListener(\"_change\", handleChange);\n }\n };\n }, [onChange]);\n\n const formatValue = (val: Date | string | undefined) => {\n if (!val) return \"\";\n\n if (val instanceof Date) {\n return val.toISOString();\n }\n\n return val;\n };\n\n return (\n <goa-date-picker\n ref={ref}\n value={formatValue(value) || undefined}\n error={error ? \"true\" : undefined}\n disabled={disabled ? \"true\" : undefined}\n min={formatValue(min) || undefined}\n max={formatValue(max) || undefined}\n relative={relative ? \"true\" : undefined}\n version={version}\n {..._props}\n />\n );\n}\n\nexport default GoabxDatePicker;\n","import { ReactNode, useEffect, useRef, type JSX } from \"react\";\nimport { GoabDrawerPosition, GoabDrawerSize } from \"@abgov/ui-components-common\";\n\ninterface WCProps {\n position: GoabDrawerPosition;\n open?: boolean;\n heading?: string;\n maxsize?: GoabDrawerSize;\n testid?: string;\n ref: React.RefObject<HTMLElement | null>;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-drawer\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxDrawerProps {\n position: GoabDrawerPosition;\n open?: boolean;\n heading?: string | ReactNode;\n maxSize?: GoabDrawerSize;\n testId?: string;\n actions?: ReactNode;\n children: ReactNode;\n onClose: () => void;\n version?: string;\n}\n\nexport function GoabxDrawer({\n position,\n open,\n heading,\n maxSize,\n testId,\n actions,\n children,\n onClose,\n version = \"2\",\n}: GoabxDrawerProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!el?.current || !onClose) {\n return;\n }\n el.current?.addEventListener(\"_close\", onClose);\n return () => {\n el.current?.removeEventListener(\"_close\", onClose);\n };\n }, [el, onClose]);\n\n return (\n <goa-drawer\n ref={el}\n position={position}\n open={open ? true : undefined}\n heading={typeof heading === \"string\" ? heading : undefined}\n maxsize={maxSize}\n testid={testId}\n version={version}\n >\n {heading && typeof heading !== \"string\" && <div slot=\"heading\">{heading}</div>}\n {actions && <div slot=\"actions\">{actions}</div>}\n {children}\n </goa-drawer>\n );\n}\n\nexport default GoabxDrawer;\n","import {\n GoabDropdownOnChangeDetail,\n GoabDropdownSize,\n GoabIconType,\n Margins, DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef, type JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n arialabel?: string;\n arialabelledby?: string;\n disabled?: string;\n error?: string;\n filterable?: string;\n leadingicon?: string;\n maxheight?: string;\n multiselect?: string;\n name?: string;\n native?: string;\n placeholder?: string;\n value?: string;\n width?: string;\n maxwidth?: string;\n relative?: string;\n id?: string;\n autocomplete?: string;\n testid?: string;\n size?: GoabDropdownSize;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n // eslint-disable-next-line @typescript-eslint/no-empty-interface\n interface IntrinsicElements {\n \"goa-dropdown\": WCProps & React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\nexport interface GoabxDropdownProps extends Margins, DataAttributes {\n name?: string;\n value?: string[] | string;\n onChange?: (detail: GoabDropdownOnChangeDetail) => void;\n\n // optional\n ariaLabel?: string;\n ariaLabelledBy?: string;\n id?: string;\n children?: React.ReactNode;\n disabled?: boolean;\n error?: boolean;\n filterable?: boolean;\n leadingIcon?: GoabIconType;\n maxHeight?: string;\n multiselect?: boolean;\n native?: boolean;\n placeholder?: string;\n testId?: string;\n width?: string;\n maxWidth?: string;\n autoComplete?: string;\n size?: GoabDropdownSize;\n version?: string;\n /***\n * @deprecated This property has no effect and will be removed in a future version\n */\n relative?: boolean;\n}\n\nfunction stringify(value: string | string[] | undefined): string {\n if (typeof value === \"undefined\") {\n return \"\";\n }\n if (typeof value === \"string\") {\n return value;\n }\n return JSON.stringify(value);\n}\n\nexport function GoabxDropdown({\n value,\n onChange,\n disabled,\n error,\n filterable,\n multiselect,\n native,\n relative,\n children,\n size = \"default\",\n version = \"2\",\n ...rest\n}: GoabxDropdownProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>({ size, ...rest }, lowercase);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n const current = el.current;\n const handler = (e: Event) => {\n const detail = (e as CustomEvent<GoabDropdownOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n if (onChange) {\n current.addEventListener(\"_change\", handler);\n }\n return () => {\n if (onChange) {\n current.removeEventListener(\"_change\", handler);\n }\n };\n }, [el, onChange]);\n\n return (\n <goa-dropdown\n ref={el}\n value={stringify(value)}\n disabled={disabled ? \"true\" : undefined}\n error={error ? \"true\" : undefined}\n filterable={filterable ? \"true\" : undefined}\n multiselect={multiselect ? \"true\" : undefined}\n native={native ? \"true\" : undefined}\n relative={relative ? \"true\" : undefined}\n {..._props}\n version={version}\n >\n {children}\n </goa-dropdown>\n );\n}\n\nexport default GoabxDropdown;\n","import { useEffect } from \"react\";\nimport { GoabDropdownItemMountType } from \"@abgov/ui-components-common\";\n\ninterface WCProps {\n value: string;\n label?: string;\n filter?: string;\n mount?: GoabDropdownItemMountType;\n\n // @deprecated\n name?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-dropdown-item\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxDropdownItemProps {\n value: string;\n label?: string;\n filter?: string;\n testId?: string;\n mountType?: GoabDropdownItemMountType;\n\n // @deprecated\n name?: string;\n}\n\nexport function GoabxDropdownOption(props: GoabxDropdownItemProps) {\n useEffect(() => {\n console.warn(\"GoabxDropdownOption is deprecated. Please use GoabxDropdownItem\");\n }, []);\n\n return <GoabxDropdownItem {...props} />;\n}\n\nexport function GoabxDropdownItem({\n value,\n label,\n filter,\n name,\n mountType = \"append\",\n}: GoabxDropdownItemProps) {\n return (\n <goa-dropdown-item\n value={value}\n label={label}\n filter={filter}\n name={name}\n mount={mountType}\n />\n );\n}\n","import {\n DataAttributes,\n GoabFileUploadOnCancelDetail,\n GoabFileUploadOnDeleteDetail,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n filename: string;\n size: number;\n type?: string;\n progress?: number;\n error?: string;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-file-upload-card\": WCProps &\n React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxFileUploadCardProps extends DataAttributes {\n filename: string;\n size: number;\n type?: string;\n progress?: number;\n testId?: string;\n error?: string;\n onDelete?: (detail: GoabFileUploadOnDeleteDetail) => void;\n onCancel?: (detail: GoabFileUploadOnCancelDetail) => void;\n version?: string;\n}\n\nexport function GoabxFileUploadCard({\n onDelete,\n onCancel,\n filename,\n version = \"2\",\n ...rest\n}: GoabxFileUploadCardProps) {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>({ filename, ...rest }, lowercase);\n\n useEffect(() => {\n if (!el.current) return;\n\n const current = el.current;\n const deleteHandler = (event: Event) => onDelete?.({ filename, event });\n const cancelHandler = (event: Event) => onCancel?.({ filename, event });\n current.addEventListener(\"_delete\", deleteHandler);\n current.addEventListener(\"_cancel\", cancelHandler);\n return () => {\n current.removeEventListener(\"_delete\", deleteHandler);\n current.removeEventListener(\"_cancel\", cancelHandler);\n };\n }, [el, onDelete, onCancel, filename]);\n\n return <goa-file-upload-card ref={el} {..._props} version={version} />;\n}\n\nexport default GoabxFileUploadCard;\n","import {\n DataAttributes,\n GoabFileUploadInputOnSelectFileDetail,\n GoabFileUploadInputVariant,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n variant?: GoabFileUploadInputVariant;\n accept?: string;\n maxfilesize?: string;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-file-upload-input\": WCProps & React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxFileUploadInputProps extends DataAttributes {\n variant?: GoabFileUploadInputVariant;\n accept?: string;\n maxFileSize?: string;\n testId?: string;\n onSelectFile: (detail: GoabFileUploadInputOnSelectFileDetail) => void;\n version?: string;\n}\n\nexport function GoabxFileUploadInput({\n onSelectFile,\n version = \"2\",\n ...rest\n}: GoabxFileUploadInputProps) {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>(rest, lowercase);\n\n useEffect(() => {\n if (!el.current) return;\n\n const current = el.current;\n const handler = (e: Event) => {\n const detail = (e as CustomEvent<GoabFileUploadInputOnSelectFileDetail>).detail;\n onSelectFile({ ...detail, event: e });\n };\n current.addEventListener(\"_selectFile\", handler);\n return () => {\n current.removeEventListener(\"_selectFile\", handler);\n };\n }, [el, onSelectFile]);\n\n return (\n <goa-file-upload-input ref={el} {..._props} version={version} />\n );\n}\n\nexport default GoabxFileUploadInput;\n","import { useEffect, useRef } from \"react\";\nimport {\n DataAttributes,\n GoabFilterChipTheme,\n GoabIconType,\n Margins,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n icontheme: GoabFilterChipTheme;\n error?: string;\n content: string;\n secondarytext?: string;\n leadingicon?: GoabIconType;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-filter-chip\": WCProps & React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\nexport interface GoabxFilterChipProps extends Margins, DataAttributes {\n onClick?: () => void;\n iconTheme?: GoabFilterChipTheme;\n error?: boolean;\n content: string;\n secondaryText?: string;\n leadingIcon?: GoabIconType;\n testId?: string;\n version?: string;\n}\n\nexport const GoabxFilterChip = ({\n iconTheme = \"outline\",\n error,\n onClick,\n version = \"2\",\n ...rest\n}: GoabxFilterChipProps) => {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>(\n { icontheme: iconTheme, ...rest },\n lowercase\n );\n\n useEffect(() => {\n if (!el.current) return;\n if (!onClick) return;\n\n const current = el.current;\n\n current.addEventListener(\"_click\", onClick);\n return () => {\n current.removeEventListener(\"_click\", onClick!);\n };\n }, [el, onClick]);\n\n return (\n <goa-filter-chip\n ref={el}\n error={error ? \"true\" : undefined}\n version={version}\n {..._props}\n />\n );\n};\n\nexport default GoabxFilterChip;\n","import {\n GoabFormItemLabelSize,\n GoabFormItemRequirement,\n GoabFormItemType,\n Margins, DataAttributes,\n} from \"@abgov/ui-components-common\";\n\nimport type { JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n label?: string;\n labelsize?: GoabFormItemLabelSize;\n requirement?: GoabFormItemRequirement;\n error?: string;\n helptext?: string;\n maxwidth?: string;\n \"public-form-summary-order\"?: number;\n name?: string;\n id?: string;\n testid?: string;\n type?: GoabFormItemType;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-form-item\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxFormItemProps extends Margins, DataAttributes {\n label?: string;\n labelSize?: GoabFormItemLabelSize;\n requirement?: GoabFormItemRequirement;\n error?: string | React.ReactNode;\n helpText?: string | React.ReactNode;\n maxWidth?: string;\n type?: GoabFormItemType;\n version?: string;\n /**\n * Public form: to arrange fields in the summary\n */\n publicFormSummaryOrder?: number;\n /**\n * Public form: allow to override the label value within the form-summary to provide a shorter description of the value\n */\n name?: string;\n children?: React.ReactNode;\n testId?: string;\n id?: string;\n}\n\nexport function GoabxFormItem({\n error,\n helpText,\n publicFormSummaryOrder,\n children,\n type = \"\",\n version = \"2\",\n ...rest\n}: GoabxFormItemProps): JSX.Element {\n const _props = transformProps<WCProps>({ type, ...rest }, lowercase);\n\n return (\n <goa-form-item\n error={typeof error === \"string\" ? error : undefined}\n helptext={typeof helpText === \"string\" ? helpText : undefined}\n public-form-summary-order={publicFormSummaryOrder}\n {..._props}\n version={version}\n >\n {error && typeof error !== \"string\" && <div slot=\"error\">{error}</div>}\n {helpText && typeof helpText !== \"string\" && <div slot=\"helptext\">{helpText}</div>}\n {children}\n </goa-form-item>\n );\n}\n\nexport default GoabxFormItem;\n","import { ReactNode, type JSX } from \"react\";\nimport { DataAttributes } from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n maxcontentwidth?: string;\n testid?: string;\n url?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-app-footer\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxAppFooterProps extends DataAttributes {\n maxContentWidth?: string;\n children?: ReactNode;\n testId?: string;\n url?: string;\n version?: string;\n}\n\nexport function GoabxAppFooter({ children, ...rest }: GoabxAppFooterProps): JSX.Element {\n const _props = transformProps<WCProps>(rest, lowercase);\n\n return (\n <goa-app-footer {..._props} version={\"2\"}>\n {children}\n </goa-app-footer>\n );\n}\n\nexport default GoabxAppFooter;\n","import { ReactNode } from \"react\";\nimport { DataAttributes } from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n testid?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-app-footer-meta-section\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxAppFooterMetaSectionProps extends DataAttributes {\n testId?: string;\n children?: ReactNode;\n}\n\nexport function GoabxAppFooterMetaSection({\n children,\n ...rest\n}: GoabxAppFooterMetaSectionProps) {\n const _props = transformProps<WCProps>(rest, lowercase);\n\n return (\n <goa-app-footer-meta-section slot=\"meta\" {..._props}>\n {children}\n </goa-app-footer-meta-section>\n );\n}\n\nexport default GoabxAppFooterMetaSection;\n","import { ReactNode } from \"react\";\nimport { DataAttributes } from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n maxcolumncount?: number;\n heading?: string;\n testid?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-app-footer-nav-section\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxFooterNavSectionProps extends DataAttributes {\n maxColumnCount?: number;\n heading?: string;\n testId?: string;\n children?: ReactNode;\n}\n\nexport function GoabxAppFooterNavSection({\n children,\n ...rest\n}: GoabxFooterNavSectionProps) {\n const _props = transformProps<WCProps>(rest, lowercase);\n\n return (\n <goa-app-footer-nav-section slot=\"nav\" {..._props}>\n {children}\n </goa-app-footer-nav-section>\n );\n}\n\nexport default GoabxAppFooterNavSection;\n","import { useEffect, useRef, type JSX } from \"react\";\nimport { format, isValid, parseISO } from \"date-fns\";\nimport {\n GoabAutoCapitalize,\n GoabDate,\n GoabIconType,\n GoabInputOnBlurDetail,\n GoabInputOnChangeDetail,\n GoabInputOnFocusDetail,\n GoabInputOnKeyPressDetail,\n GoabInputSize,\n GoabInputType,\n Margins, DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\nexport interface IgnoreMe {\n ignore: string;\n}\n\ninterface WCProps extends Margins {\n type?: GoabInputType;\n name: string;\n value?: string;\n id?: string;\n autocapitalize?: GoabAutoCapitalize;\n autocomplete?: string;\n debounce?: number;\n placeholder?: string;\n leadingicon?: string;\n trailingicon?: string;\n variant: string;\n disabled?: string;\n error?: string;\n readonly?: string;\n focused?: string;\n handletrailingiconclick: string;\n width?: string;\n prefix?: string;\n suffix?: string;\n arialabel?: string;\n testid?: string;\n textalign?: string;\n size?: GoabInputSize;\n\n // type=number\n min?: string | number;\n max?: string | number;\n step?: number;\n maxlength?: number;\n\n trailingiconarialabel?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-input\": WCProps & React.HTMLAttributes<HTMLInputElement> & {\n ref?: React.RefObject<HTMLInputElement | null>;\n };\n }\n }\n}\n\ninterface BaseProps extends Margins, DataAttributes {\n // required\n name: string;\n\n // optional\n id?: string;\n debounce?: number;\n disabled?: boolean;\n autoCapitalize?: GoabAutoCapitalize;\n autoComplete?: string;\n placeholder?: string;\n leadingIcon?: GoabIconType;\n trailingIcon?: GoabIconType;\n onTrailingIconClick?: () => void;\n variant?: \"goa\" | \"bare\";\n focused?: boolean;\n readonly?: boolean;\n error?: boolean;\n width?: string;\n prefix?: string;\n suffix?: string;\n testId?: string;\n ariaLabel?: string;\n leadingContent?: React.ReactNode;\n trailingContent?: React.ReactNode;\n maxLength?: number;\n trailingIconAriaLabel?: string;\n textAlign?: \"left\" | \"right\";\n size?: GoabInputSize;\n version?: string;\n}\n\ntype OnChange<T = string> = (detail: GoabInputOnChangeDetail<T>) => void;\ntype OnFocus<T = string> = (detail: GoabInputOnFocusDetail<T>) => void;\ntype OnBlur<T = string> = (detail: GoabInputOnBlurDetail<T>) => void;\ntype OnKeyPress<T = string> = (detail: GoabInputOnKeyPressDetail<T>) => void;\n\nexport interface GoabxInputProps extends BaseProps {\n onChange?: OnChange<string>;\n value?: string;\n min?: number | string;\n max?: number | string;\n step?: number;\n onFocus?: OnFocus<string>;\n onBlur?: OnBlur<string>;\n onKeyPress?: OnKeyPress<string>;\n}\n\ninterface GoabxNumberInputProps extends BaseProps {\n onChange?: OnChange<number>;\n value?: number;\n min?: number;\n max?: number;\n step?: number;\n onFocus?: OnFocus<number>;\n onBlur?: OnBlur<number>;\n onKeyPress?: OnKeyPress<number>;\n}\n\ninterface GoabxDateInputProps extends BaseProps {\n onChange?: OnChange<GoabDate>;\n value?: GoabDate;\n min?: GoabDate;\n max?: GoabDate;\n step?: number;\n onFocus?: OnFocus<GoabDate>;\n onBlur?: OnBlur<GoabDate>;\n onKeyPress?: OnKeyPress<GoabDate>;\n}\n\nexport function GoabxInput({\n variant = \"goa\",\n textAlign = \"left\",\n size = \"default\",\n focused,\n disabled,\n readonly,\n error,\n leadingContent,\n trailingContent,\n onTrailingIconClick,\n onChange,\n onFocus,\n onBlur,\n onKeyPress,\n version = \"2\",\n ...rest\n}: GoabxInputProps & { type?: GoabInputType }): JSX.Element {\n const ref = useRef<HTMLInputElement>(null);\n\n const _props = transformProps<WCProps>(\n { variant, textalign: textAlign, size, ...rest },\n lowercase\n );\n\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n const current = ref.current;\n const changeListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabInputOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n const clickListener = () => {\n onTrailingIconClick?.();\n };\n\n const focusListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabInputOnFocusDetail>).detail;\n onFocus?.({ ...detail, event: e });\n };\n\n const blurListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabInputOnBlurDetail>).detail;\n onBlur?.({ ...detail, event: e });\n };\n\n const keypressListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabInputOnKeyPressDetail>).detail;\n onKeyPress?.({ ...detail, event: e });\n };\n\n current.addEventListener(\"_change\", changeListener);\n current.addEventListener(\"_trailingIconClick\", clickListener);\n current.addEventListener(\"_focus\", focusListener);\n current.addEventListener(\"_blur\", blurListener);\n current.addEventListener(\"_keyPress\", keypressListener);\n\n return () => {\n current.removeEventListener(\"_change\", changeListener);\n current.removeEventListener(\"_trailingIconClick\", clickListener);\n current.removeEventListener(\"_focus\", focusListener);\n current.removeEventListener(\"_blur\", blurListener);\n current.removeEventListener(\"_keyPress\", keypressListener);\n };\n }, [ref, onChange, onTrailingIconClick, onFocus, onBlur, onKeyPress]);\n\n return (\n <goa-input\n ref={ref}\n {..._props}\n focused={focused ? \"true\" : undefined}\n disabled={disabled ? \"true\" : undefined}\n readonly={readonly ? \"true\" : undefined}\n error={error ? \"true\" : undefined}\n handletrailingiconclick={onTrailingIconClick ? \"true\" : \"false\"}\n version={version}\n >\n {leadingContent && <div slot=\"leadingContent\">{leadingContent}</div>}\n {trailingContent && <div slot=\"trailingContent\">{trailingContent}</div>}\n </goa-input>\n );\n}\n\nconst onDateChangeHandler = (onChange?: OnChange<GoabDate>) => {\n return ({ name, value, event }: GoabInputOnChangeDetail<string | Date>) => {\n if (!value) {\n onChange?.({ name, value: \"\", event });\n return;\n }\n // valid string date\n if (typeof value === \"string\" && isValid(new Date(value))) {\n onChange?.({ name, value: parseISO(value), event });\n return;\n }\n // valid date\n if (isValid(value)) {\n onChange?.({ name, value, event });\n return;\n }\n };\n};\n\nconst onTimeChangeHandler = (onChange?: OnChange) => {\n return ({ name, value, event }: GoabInputOnChangeDetail) => {\n if (!value) {\n onChange?.({ name, value: \"\", event });\n return;\n }\n onChange?.({ name, value, event });\n };\n};\n\nfunction toString(value: GoabDate | null | undefined, tmpl = \"yyyy-MM-dd\"): string {\n if (!value) {\n return \"\";\n }\n if (typeof value === \"string\") {\n return format(parseISO(value), tmpl);\n }\n if (value.toISOString() === new Date(0).toISOString()) {\n return \"\";\n }\n return format(value, tmpl);\n}\n\nexport function GoabxInputText(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"text\" />;\n}\n\nexport function GoabxInputPassword(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"password\" />;\n}\n\nexport function GoabxInputDate({\n value,\n min = \"\",\n max = \"\",\n ...props\n}: GoabxDateInputProps): JSX.Element {\n return (\n <GoabxInput\n {...props}\n type=\"date\"\n onChange={onDateChangeHandler(props.onChange)}\n min={toString(min)}\n max={toString(max)}\n value={toString(value)}\n />\n );\n}\n\nexport function GoabxInputTime({\n value,\n min = \"\",\n max = \"\",\n ...props\n}: GoabxInputProps): JSX.Element {\n return (\n <GoabxInput\n {...props}\n onChange={onTimeChangeHandler(props.onChange)}\n value={value}\n type=\"time\"\n />\n );\n}\n\nexport function GoabxInputDateTime({\n value,\n min = \"\",\n max = \"\",\n ...props\n}: GoabxDateInputProps): JSX.Element {\n return (\n <GoabxInput\n {...props}\n onChange={onDateChangeHandler(props.onChange)}\n value={toString(value, \"yyyy-MM-dd'T'HH:mm\")}\n type=\"datetime-local\"\n />\n );\n}\n\nexport function GoabxInputEmail(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"email\" />;\n}\n\nexport function GoabxInputSearch(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"search\" trailingIcon=\"search\" />;\n}\n\nexport function GoabxInputUrl(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"url\" />;\n}\n\nexport function GoabxInputTel(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"tel\" />;\n}\n\nexport function GoabxInputFile(props: GoabxInputProps): JSX.Element {\n return (\n <input\n id={props.id}\n name={props.name}\n type=\"file\"\n onChange={(e) =>\n props.onChange?.({\n name: e.target.name,\n value: e.target.value,\n event: e.nativeEvent,\n })\n }\n style={{ backgroundColor: \"revert\" }}\n />\n );\n}\n\nexport function GoabxInputMonth(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"month\" />;\n}\n\nexport function GoabxInputNumber({\n min = Number.MIN_VALUE,\n max = Number.MAX_VALUE,\n value,\n textAlign = \"right\",\n ...props\n}: GoabxNumberInputProps): JSX.Element {\n const onNumberChange = ({ name, value, event }: GoabInputOnChangeDetail) => {\n props.onChange?.({ name, value: parseFloat(value), event });\n };\n const onFocus = ({ name, value, event }: GoabInputOnFocusDetail) => {\n props.onFocus?.({ name, value: parseFloat(value), event });\n };\n const onBlur = ({ name, value, event }: GoabInputOnBlurDetail) => {\n props.onBlur?.({ name, value: parseFloat(value), event });\n };\n const onKeyPress = ({ name, value, key, event }: GoabInputOnKeyPressDetail) => {\n props.onKeyPress?.({ name, value: parseFloat(value), key: parseInt(key), event });\n };\n return (\n <GoabxInput\n {...props}\n onChange={onNumberChange}\n min={min?.toString()}\n max={max?.toString()}\n value={value?.toString()}\n onFocus={onFocus}\n onBlur={onBlur}\n type=\"number\"\n onKeyPress={onKeyPress}\n textAlign={textAlign}\n />\n );\n}\n\nexport function GoabxInputRange(props: GoabxInputProps): JSX.Element {\n return <GoabxInput {...props} type=\"range\" />;\n}\n\nexport default GoabxInput;\n","import { ReactNode } from \"react\";\nimport {\n GoabIconType,\n GoabLinkColor,\n GoabLinkSize,\n Margins,\n DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n leadingicon?: GoabIconType;\n trailingicon?: GoabIconType;\n action?: string;\n actionArgs?: string;\n actionArg?: string;\n testid?: string;\n color?: GoabLinkColor;\n size?: GoabLinkSize;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-link\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\ninterface GoabxLinkProps extends Margins, DataAttributes {\n leadingIcon?: GoabIconType;\n trailingIcon?: GoabIconType;\n action?: string;\n actionArgs?: Record<string, unknown>;\n actionArg?: string;\n color?: GoabLinkColor;\n size?: GoabLinkSize;\n testId?: string;\n children: ReactNode;\n}\n\nexport function GoabxLink({\n actionArgs,\n actionArg,\n color = \"interactive\",\n size = \"medium\",\n children,\n ...rest\n}: GoabxLinkProps) {\n const _props = transformProps<WCProps>({ color, size, ...rest }, lowercase);\n\n return (\n <goa-link\n action-arg={actionArg}\n action-args={JSON.stringify(actionArgs)}\n {..._props}\n >\n {children}\n </goa-link>\n );\n}\n\nexport default GoabxLink;\n","import {\n GoabModalCalloutVariant,\n GoabModalRole,\n GoabModalTransition,\n} from \"@abgov/ui-components-common\";\nimport { ReactElement, ReactNode, RefObject, useEffect, useRef, type JSX } from \"react\";\n\ninterface WCProps {\n ref: RefObject<HTMLElement | null>;\n heading?: ReactNode;\n open?: string;\n maxwidth?: string;\n closable: string;\n /**\n * @deprecated The role property is deprecated and will be removed in a future version.\n * The modal will always use role=\"dialog\".\n */\n role?: GoabModalRole;\n transition?: GoabModalTransition;\n calloutvariant?: GoabModalCalloutVariant;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-modal\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxModalProps {\n heading?: ReactNode;\n maxWidth?: string;\n actions?: ReactElement<any>;\n onClose?: () => void;\n transition?: GoabModalTransition;\n children?: ReactNode;\n open?: boolean;\n calloutVariant?: GoabModalCalloutVariant;\n testId?: string;\n version?: string;\n /**\n * @deprecated The role property is deprecated and will be removed in a future version.\n * The modal will always use role=\"dialog\".\n */\n role?: GoabModalRole;\n}\n\nexport function GoabxModal({\n heading,\n children,\n maxWidth,\n open,\n actions,\n transition,\n calloutVariant,\n onClose,\n testId,\n version = \"2\",\n}: GoabxModalProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n const current = el.current;\n const listener = () => {\n onClose?.();\n };\n\n current.addEventListener(\"_close\", listener);\n return () => {\n current.removeEventListener(\"_close\", listener);\n };\n }, [el, onClose]);\n\n return (\n <goa-modal\n ref={el}\n open={open ? \"true\" : undefined}\n closable={onClose ? \"true\" : \"false\"}\n heading={typeof heading === \"string\" ? heading : undefined}\n maxwidth={maxWidth}\n transition={transition}\n calloutvariant={calloutVariant}\n testid={testId}\n version={version}\n >\n {heading && typeof heading !== \"string\" && <div slot=\"heading\">{heading}</div>}\n {actions && <div slot=\"actions\">{actions}</div>}\n {children}\n </goa-modal>\n );\n}\n\nexport default GoabxModal;\n","import {\n GoabAriaLiveType,\n GoabNotificationEmphasis,\n GoabNotificationType,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef } from \"react\";\n\ninterface WCProps {\n ref: React.RefObject<HTMLElement | null>;\n type: GoabNotificationType;\n maxcontentwidth?: string;\n arialive?: GoabAriaLiveType;\n testid?: string;\n emphasis?: GoabNotificationEmphasis;\n compact?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-notification\": WCProps & React.HTMLAttributes<HTMLButtonElement>;\n }\n }\n}\n\nexport interface GoabxNotificationProps {\n type?: GoabNotificationType;\n ariaLive?: GoabAriaLiveType;\n maxContentWidth?: string;\n emphasis?: GoabNotificationEmphasis;\n compact?: boolean;\n children?: React.ReactNode;\n onDismiss?: () => void;\n testId?: string;\n version?: string;\n}\n\nexport const GoabxNotification = ({\n type = \"information\",\n emphasis = \"high\",\n compact,\n ariaLive,\n maxContentWidth,\n children,\n testId,\n onDismiss,\n version = \"2\",\n}: GoabxNotificationProps) => {\n const el = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n const current = el.current;\n const listener = () => {\n onDismiss?.();\n };\n\n current.addEventListener(\"_dismiss\", listener);\n return () => {\n current.removeEventListener(\"_dismiss\", listener);\n };\n }, [el, onDismiss]);\n\n return (\n <goa-notification\n ref={el}\n type={type}\n testid={testId}\n maxcontentwidth={maxContentWidth}\n arialive={ariaLive}\n emphasis={emphasis}\n compact={compact ? \"true\" : undefined}\n version={version}\n >\n {children}\n </goa-notification>\n );\n};\n\nexport default GoabxNotification;\n","import { GoabPaginationOnChangeDetail, Margins } from \"@abgov/ui-components-common\";\nimport { useEffect, useRef } from \"react\";\n\ninterface WCProps extends Margins {\n ref?: React.RefObject<HTMLElement | null>;\n itemcount: number;\n perpagecount?: number;\n pagenumber: number;\n variant?: \"all\" | \"links-only\";\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-pagination\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxPaginationProps extends Margins {\n itemCount: number;\n perPageCount?: number;\n pageNumber: number;\n variant?: \"all\" | \"links-only\";\n onChange: (detail: GoabPaginationOnChangeDetail) => void;\n testId?: string;\n version?: string;\n}\n\n// legacy\nexport type PaginationProps = GoabxPaginationProps;\n\nexport function GoabxPagination({\n onChange,\n version = \"2\",\n ...props\n}: GoabxPaginationProps) {\n const ref = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n const current = ref.current;\n const changeListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabPaginationOnChangeDetail>).detail;\n onChange(detail);\n };\n\n current.addEventListener(\"_change\", changeListener);\n return () => {\n current.removeEventListener(\"_change\", changeListener);\n };\n }, [ref, onChange]);\n\n return (\n <goa-pagination\n ref={ref}\n itemcount={props.itemCount}\n perpagecount={props.perPageCount}\n pagenumber={props.pageNumber}\n variant={props.variant}\n mt={props.mt}\n mb={props.mb}\n ml={props.ml}\n mr={props.mr}\n testid={props.testId}\n version={version}\n />\n );\n}\n\nexport default GoabxPagination;\n","import { Margins } from \"@abgov/ui-components-common\";\n\nimport type { JSX } from \"react\";\n\ninterface WCProps extends Margins {\n name?: string;\n value?: string;\n description?: string | React.ReactNode;\n reveal?: React.ReactNode;\n revealarialabel?: string;\n label?: string;\n maxwidth?: string;\n disabled?: string;\n checked?: string;\n error?: string;\n arialabel?: string;\n compact?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-radio-item\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxRadioItemProps extends Margins {\n value?: string;\n label?: string;\n name?: string;\n description?: string | React.ReactNode;\n reveal?: React.ReactNode;\n revealAriaLabel?: string;\n maxWidth?: string;\n disabled?: boolean;\n checked?: boolean;\n error?: boolean;\n compact?: boolean;\n children?: React.ReactNode;\n ariaLabel?: string;\n version?: string;\n}\n\nexport function GoabxRadioItem({\n name,\n label,\n value,\n description,\n reveal,\n revealAriaLabel,\n maxWidth,\n disabled,\n checked,\n error,\n compact,\n ariaLabel,\n children,\n version = \"2\",\n mt,\n mr,\n mb,\n ml,\n}: GoabxRadioItemProps): JSX.Element {\n return (\n <goa-radio-item\n name={name}\n label={label}\n value={value}\n description={typeof description === \"string\" ? description : undefined}\n maxwidth={maxWidth}\n error={error ? \"true\" : undefined}\n disabled={disabled ? \"true\" : undefined}\n checked={checked ? \"true\" : undefined}\n compact={compact ? \"true\" : undefined}\n arialabel={ariaLabel}\n revealarialabel={revealAriaLabel}\n mt={mt}\n mr={mr}\n mb={mb}\n ml={ml}\n version={version}\n >\n {description && typeof description !== \"string\" && (\n <div slot=\"description\">{description}</div>\n )}\n {reveal && <div slot=\"reveal\">{reveal}</div>}\n {children}\n </goa-radio-item>\n );\n}\n\nexport default GoabxRadioItem;\n","import { useEffect, useRef, type JSX } from \"react\";\nimport {\n GoabRadioGroupOnChangeDetail,\n GoabRadioGroupOrientation,\n GoabRadioGroupSize,\n Margins, DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\nexport * from \"./radio\";\n\ninterface WCProps extends Margins {\n name: string;\n value?: string;\n id?: string;\n orientation?: GoabRadioGroupOrientation;\n disabled?: string;\n error?: string;\n arialabel?: string;\n testid?: string;\n size?: GoabRadioGroupSize;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-radio-group\": WCProps & React.HTMLAttributes<HTMLElement> & {\n ref: React.RefObject<HTMLElement | null>;\n };\n }\n }\n}\n\nexport interface GoabxRadioGroupProps extends Margins, DataAttributes {\n name: string;\n value?: string;\n id?: string;\n disabled?: boolean;\n orientation?: GoabRadioGroupOrientation;\n size?: GoabRadioGroupSize;\n testId?: string;\n error?: boolean;\n ariaLabel?: string;\n children?: React.ReactNode;\n version?: string;\n onChange?: (detail: GoabRadioGroupOnChangeDetail) => void;\n}\n\nexport function GoabxRadioGroup({\n disabled,\n error,\n onChange,\n name,\n children,\n size = \"default\",\n version = \"2\",\n ...rest\n}: GoabxRadioGroupProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n const _props = transformProps<WCProps>({ size, ...rest }, lowercase);\n\n useEffect(() => {\n if (!el.current) return;\n\n const listener = (e: Event) => {\n const detail = (e as CustomEvent<GoabRadioGroupOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n\n const currentEl = el.current;\n if (onChange) {\n currentEl.addEventListener(\"_change\", listener);\n }\n\n return () => {\n if (onChange) {\n currentEl.removeEventListener(\"_change\", listener);\n }\n };\n }, [name, onChange]);\n\n return (\n <goa-radio-group\n ref={el}\n {..._props}\n name={name}\n disabled={disabled ? \"true\" : undefined}\n error={error ? \"true\" : undefined}\n version={version}\n >\n {children}\n </goa-radio-group>\n );\n}\n\nexport default GoabxRadioGroup;\n","import { ReactNode, type JSX } from \"react\";\n\ninterface WCProps {\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-side-menu\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxSideMenuProps {\n testId?: string;\n children: ReactNode;\n version?: string;\n}\n\nexport function GoabxSideMenu({\n testId,\n children,\n version = \"2\",\n}: GoabxSideMenuProps): JSX.Element {\n return (\n <goa-side-menu testid={testId} version={version}>\n {children}\n </goa-side-menu>\n );\n}\n\nexport default GoabxSideMenu;\n","import { ReactNode, type JSX } from \"react\";\nimport { GoabIconType, Margins } from \"@abgov/ui-components-common\";\n\ninterface WCProps extends Margins {\n heading: string;\n icon?: GoabIconType;\n testid?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-side-menu-group\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxSideMenuGroupProps extends Margins {\n heading: string;\n icon?: GoabIconType;\n testId?: string;\n children?: ReactNode;\n version?: string;\n}\n\nexport function GoabxSideMenuGroup({\n heading,\n icon,\n testId,\n children,\n mt,\n mr,\n mb,\n ml,\n version = \"2\",\n}: GoabxSideMenuGroupProps): JSX.Element {\n return (\n <goa-side-menu-group\n heading={heading}\n icon={icon}\n testid={testId}\n mt={mt}\n mr={mr}\n mb={mb}\n ml={ml}\n version={version}\n >\n {children}\n </goa-side-menu-group>\n );\n}\n\nexport default GoabxSideMenuGroup;\n","import { GoabIconType } from \"@abgov/ui-components-common\";\nimport { ReactNode } from \"react\";\n\ninterface WCProps {\n testid?: string;\n icon?: GoabIconType;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-side-menu-heading\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxSideMenuHeadingProps {\n meta?: ReactNode;\n testId?: string;\n icon?: GoabIconType;\n children?: ReactNode;\n version?: string;\n}\n\nexport function GoabxSideMenuHeading({\n meta,\n testId,\n icon,\n children,\n version = \"2\",\n}: GoabxSideMenuHeadingProps) {\n return (\n <goa-side-menu-heading icon={icon} testid={testId} version={version}>\n {children}\n {meta && <span slot=\"meta\">{meta}</span>}\n </goa-side-menu-heading>\n );\n}\n\nexport default GoabxSideMenuHeading;\n","import {\n GoabTableOnSortDetail,\n GoabTableVariant,\n Margins,\n} from \"@abgov/ui-components-common\";\nimport { ReactNode, useEffect, useRef } from \"react\";\n\ninterface WCProps extends Margins {\n ref?: React.RefObject<HTMLElement | null>;\n width?: string;\n stickyheader?: string;\n variant?: GoabTableVariant;\n testid?: string;\n striped?: string;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-table\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxTableProps extends Margins {\n width?: string;\n onSort?: (detail: GoabTableOnSortDetail) => void;\n // stickyHeader?: boolean; TODO: enable this later\n variant?: GoabTableVariant;\n striped?: boolean;\n testId?: string;\n version?: string;\n children?: ReactNode;\n}\n\n// legacy name\nexport type TableProps = GoabxTableProps;\n\nexport function GoabxTable({ onSort, version = \"2\", ...props }: GoabxTableProps) {\n const ref = useRef<HTMLTableElement>(null);\n useEffect(() => {\n if (!ref.current) {\n return;\n }\n const current = ref.current;\n const sortListener = (e: unknown) => {\n const detail = (e as CustomEvent<GoabTableOnSortDetail>).detail;\n onSort?.(detail);\n };\n\n current.addEventListener(\"_sort\", sortListener);\n return () => {\n current.removeEventListener(\"_sort\", sortListener);\n };\n }, [ref, onSort]);\n\n return (\n <goa-table\n ref={ref}\n width={props.width}\n // TODO: Enable this later if needed\n // stickyheader={props.stickyHeader ? \"true\" : undefined}\n variant={props.variant}\n striped={props.striped ? \"true\" : undefined}\n testid={props.testId}\n mt={props.mt}\n mb={props.mb}\n ml={props.ml}\n mr={props.mr}\n version={version}\n >\n <table style={{ width: \"100%\" }}>{props.children}</table>\n </goa-table>\n );\n}\n\nexport default GoabxTable;\n","import { DataAttributes, GoabTableSortDirection } from \"@abgov/ui-components-common\";\n\nimport type { JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps {\n name?: string;\n direction?: GoabTableSortDirection;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-table-sort-header\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabxTableSortProps extends DataAttributes {\n name?: string;\n direction?: GoabTableSortDirection;\n children?: React.ReactNode;\n}\n\nexport function GoabxTableSortHeader({\n children,\n ...rest\n}: GoabxTableSortProps): JSX.Element {\n const _props = transformProps<WCProps>(rest, lowercase);\n\n return <goa-table-sort-header {..._props}>{children}</goa-table-sort-header>;\n}\n\nexport default GoabxTableSortHeader;\n","import React, { useEffect, useRef, type JSX } from \"react\";\nimport { GoabTabsOnChangeDetail, GoabTabsVariant } from \"@abgov/ui-components-common\";\n\ninterface WCProps {\n initialtab?: number;\n ref: React.RefObject<HTMLElement | null>;\n onChange?: (tab: number) => void;\n testid?: string;\n variant?: GoabTabsVariant;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-tabs\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabxTabsProps {\n initialTab?: number;\n children?: React.ReactNode;\n testId?: string;\n variant?: GoabTabsVariant;\n onChange?: (detail: GoabTabsOnChangeDetail) => void;\n version?: string;\n}\n\nexport function GoabxTabs({\n initialTab,\n children,\n testId,\n onChange,\n variant,\n version = \"2\",\n}: GoabxTabsProps): JSX.Element {\n const ref = useRef<HTMLElement>(null);\n\n useEffect(() => {\n const element = ref.current;\n if (element && onChange) {\n const handler = (event: Event) => {\n const detail = (event as CustomEvent<GoabTabsOnChangeDetail>).detail;\n onChange(detail);\n };\n element.addEventListener(\"_change\", handler);\n return () => {\n element.removeEventListener(\"_change\", handler);\n };\n }\n }, [onChange]);\n\n return (\n <goa-tabs\n ref={ref}\n initialtab={initialTab}\n testid={testId}\n variant={variant}\n version={version}\n >\n {children}\n </goa-tabs>\n );\n}\n\nexport default GoabxTabs;\n","import {\n GoabTextAreaCountBy,\n GoabTextAreaOnChangeDetail,\n GoabTextAreaOnKeyPressDetail,\n GoabTextAreaOnBlurDetail,\n GoabTextAreaSize,\n Margins,\n DataAttributes,\n} from \"@abgov/ui-components-common\";\nimport { useEffect, useRef, type JSX } from \"react\";\nimport { transformProps, lowercase } from \"../../lib/common/extract-props\";\n\ninterface WCProps extends Margins {\n name: string;\n value?: string;\n placeholder?: string;\n rows?: number;\n error?: string;\n readOnly?: string;\n disabled?: string;\n width?: string;\n maxwidth?: string;\n arialabel?: string;\n countby?: GoabTextAreaCountBy;\n maxcount?: number;\n autocomplete?: string;\n testid?: string;\n size?: GoabTextAreaSize;\n version?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-textarea\": WCProps &\n React.HTMLAttributes<HTMLElement> & {\n ref: React.Ref<HTMLTextAreaElement>;\n };\n }\n }\n}\n\nexport interface GoabxTextAreaProps extends Margins, DataAttributes {\n name: string;\n value?: string;\n id?: string;\n placeholder?: string;\n rows?: number;\n error?: boolean;\n readOnly?: boolean;\n disabled?: boolean;\n width?: string;\n maxWidth?: string;\n testId?: string;\n ariaLabel?: string;\n countBy?: GoabTextAreaCountBy;\n maxCount?: number;\n autoComplete?: string;\n size?: GoabTextAreaSize;\n version?: string;\n\n onChange?: (event: GoabTextAreaOnChangeDetail) => void;\n onKeyPress?: (event: GoabTextAreaOnKeyPressDetail) => void;\n onBlur?: (event: GoabTextAreaOnBlurDetail) => void;\n}\n\nexport function GoabxTextArea({\n readOnly,\n disabled,\n error,\n onChange,\n onKeyPress,\n onBlur,\n version = \"2\",\n ...rest\n}: GoabxTextAreaProps): JSX.Element {\n const el = useRef<HTMLTextAreaElement>(null);\n\n const _props = transformProps<WCProps>(rest, lowercase);\n\n useEffect(() => {\n if (!el.current) {\n return;\n }\n const current = el.current;\n\n const changeListener: EventListener = (e: Event) => {\n const detail = (e as CustomEvent<GoabTextAreaOnChangeDetail>).detail;\n onChange?.({ ...detail, event: e });\n };\n\n const keypressListener = (e: unknown) => {\n const detail = (e as CustomEvent<GoabTextAreaOnKeyPressDetail>).detail;\n onKeyPress?.({ ...detail, event: e as Event });\n };\n\n const blurListener = (e: unknown) => {\n const detail = (e as CustomEvent<GoabTextAreaOnBlurDetail>).detail;\n onBlur?.({ ...detail, event: e as Event });\n };\n\n current.addEventListener(\"_change\", changeListener);\n current.addEventListener(\"_keyPress\", keypressListener);\n current.addEventListener(\"_blur\", blurListener);\n\n return () => {\n current.removeEventListener(\"_change\", changeListener);\n current.removeEventListener(\"_keyPress\", keypressListener);\n current.removeEventListener(\"_blur\", blurListener);\n };\n }, [el, onChange, onKeyPress, onBlur]);\n\n return (\n <goa-textarea\n ref={el}\n readOnly={readOnly ? \"true\" : undefined}\n disabled={disabled ? \"true\" : undefined}\n error={error ? \"true\" : undefined}\n version={version}\n {..._props}\n ></goa-textarea>\n );\n}\n\nexport default GoabxTextArea;\n","import { ReactNode, useEffect, useRef, type JSX } from \"react\";\n\ninterface WCProps {\n heading: string;\n url: string;\n \"user-name\"?: string;\n \"user-secondary-text\"?: string;\n testid?: string;\n primaryContent?: ReactNode;\n secondaryContent?: ReactNode;\n accountContent?: ReactNode;\n open?: boolean;\n ref: React.RefObject<HTMLElement | null>;\n}\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-work-side-menu\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\n/* eslint-disable-next-line */\nexport interface GoabWorkSideMenuProps {\n heading: string;\n url: string;\n userName?: string;\n userSecondaryText?: string;\n testId?: string;\n primaryContent?: ReactNode;\n secondaryContent?: ReactNode;\n accountContent?: ReactNode;\n open?: boolean;\n onToggle?: () => void;\n}\n\nexport function GoabxWorkSideMenu({\n heading,\n url,\n userName,\n userSecondaryText,\n testId,\n primaryContent,\n secondaryContent,\n accountContent,\n open,\n onToggle,\n}: GoabWorkSideMenuProps): JSX.Element {\n const el = useRef<HTMLElement>(null);\n\n useEffect(() => {\n if (!el?.current || !onToggle) {\n return;\n }\n el.current?.addEventListener(\"_toggle\", onToggle);\n return () => {\n el.current?.removeEventListener(\"_toggle\", onToggle);\n };\n }, [el, onToggle]);\n return (\n <goa-work-side-menu\n ref={el}\n heading={heading}\n url={url}\n user-name={userName}\n user-secondary-text={userSecondaryText}\n open={open ? true : false}\n testid={testId}\n >\n {primaryContent && <div slot=\"primary\">{primaryContent}</div>}\n {secondaryContent && <div slot=\"secondary\">{secondaryContent}</div>}\n {accountContent && <div slot=\"account\">{accountContent}</div>}\n </goa-work-side-menu>\n );\n}\n\nexport default GoabxWorkSideMenu;\n","import { type JSX } from \"react\";\nimport { GoabWorkSideMenuItemType } from \"@abgov/ui-components-common\";\ninterface WCProps {\n label: string;\n url: string;\n badge?: string;\n current?: string;\n divider?: string;\n icon?: string;\n testid?: string;\n type?: GoabWorkSideMenuItemType;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-work-side-menu-item\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabWorkSideMenuItemProps {\n label: string;\n url: string;\n badge?: string;\n current?: boolean;\n divider?: boolean;\n icon?: string;\n testId?: string;\n type?: GoabWorkSideMenuItemType;\n children?: React.ReactNode;\n}\n\nexport function GoabxWorkSideMenuItem(props: GoabWorkSideMenuItemProps): JSX.Element {\n return (\n <goa-work-side-menu-item\n label={props.label}\n url={props.url}\n badge={props.badge}\n current={props.current ? \"true\" : undefined}\n divider={props.divider ? \"true\" : undefined}\n icon={props.icon}\n testid={props.testId}\n type={props.type}\n >\n {props.children}\n </goa-work-side-menu-item>\n );\n}\n\nexport default GoabxWorkSideMenuItem;\n","import { type JSX } from \"react\";\nimport { GoabIconType } from \"@abgov/ui-components-common\";\n\ninterface WCProps {\n heading: string;\n icon: GoabIconType;\n testid?: string;\n}\n\ndeclare module \"react\" {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n \"goa-work-side-menu-group\": WCProps & React.HTMLAttributes<HTMLElement>;\n }\n }\n}\n\nexport interface GoabWorkSideMenuGroupProps {\n heading: string;\n icon: GoabIconType;\n testId?: string;\n children?: React.ReactNode;\n}\n\nexport function GoabxWorkSideMenuGroup(props: GoabWorkSideMenuGroupProps): JSX.Element {\n return (\n <goa-work-side-menu-group\n heading={props.heading}\n icon={props.icon}\n testid={props.testId}\n >\n {props.children}\n </goa-work-side-menu-group>\n );\n}\n\nexport default GoabxWorkSideMenuGroup;\n"],"names":["_a","value"],"mappings":";;;AAqDA,SAAS,aAAa,MAAgB,UAA2C;AAE/E,MAAI,SAAS,QAAW;AACtB,WAAO,OAAO,SAAS;AAAA,EACzB;AAGA,SAAO,WAAW,SAAS;AAC7B;AAEO,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,WAAW;AAAA,EACX,UAAU;AAAA,EACV,GAAG;AACL,GAAiC;AAC/B,QAAM,SAAS,eAAwB,EAAE,MAAM,UAAU,GAAG,KAAA,GAAQ,SAAS;AAE7E,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MAEC,MAAM,aAAa,MAAM,QAAQ;AAAA,MACjC,UAAU;AAAA,MACT,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,IAAA;AAAA,EAAA;AAGN;AC7BO,SAAS,YAAY;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAAkC;AAChC,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,QAAI,CAAC,SAAS;AACZ;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AACnB,UAAM,WAAW,MAAM;AACrB;AAAA,IACF;AAEA,YAAQ,iBAAiB,UAAU,QAAQ;AAC3C,WAAO,MAAM;AACX,cAAQ,oBAAoB,UAAU,QAAQ;AAAA,IAChD;AAAA,EACF,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,UAAU,WAAW,SAAS;AAAA,MAC9B,cAAY;AAAA,MACZ,eAAa,KAAK,UAAU,UAAU;AAAA,MACrC,GAAG;AAAA,MACJ;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;AC5DO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAAoC;AAClC,QAAM,MAAM,OAAyB,IAAI;AAEzC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,SAAS;AAChB;AAAA,IACF;AACA,UAAM,UAAU,IAAI;AACpB,UAAM,WAAW,CAAC,MAAa;AAC7B,eAAS;AAAA,QACP,MAAM,QAAQ;AAAA,QACd,OAAQ,EAAkB,OAAO;AAAA,MAAA,CAClC;AAAA,IACH;AACA,YAAQ,iBAAiB,WAAW,QAAQ;AAE5C,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,QAAQ;AAAA,IACjD;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,KAAK,OAAO;AAAA,MACZ,KAAK,OAAO;AAAA,MACZ;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;AClCO,MAAM,eAAe,CAAC;AAAA,EAC3B,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,MAAyB;AACvB,QAAM,SAAS;AAAA,IACb,EAAE,MAAM,WAAW,WAAW,MAAM,UAAU,UAAU,UAAU,GAAG,KAAA;AAAA,IACrE;AAAA,EAAA;AAGF,SACE,oBAAC,eAAA,EAAa,GAAG,QAAQ,SACtB,UACH;AAEJ;ACAO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,GAAG;AACL,GAAoC;AAClC,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,EAAE,MAAM,GAAG,KAAA,GAAQ,SAAS;AAEnE,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AACnB,UAAM,WAAW,CAAC,MAAa;AAC7B,YAAM,SAAU,EAA8C;AAC9D,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AAEA,YAAQ,iBAAiB,WAAW,QAAQ;AAE5C,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,QAAQ;AAAA,IACjD;AAAA,EACF,GAAG,CAAC,MAAM,QAAQ,CAAC;AAEnB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACJ,GAAG;AAAA,MACJ;AAAA,MACA,OAAO,QAAQ,SAAS;AAAA,MACxB,SAAS,UAAU,SAAS;AAAA,MAC5B,eAAe,gBAAgB,SAAS;AAAA,MACxC,UAAU,WAAW,SAAS;AAAA,MAC9B,OAAO,OAAO,UAAU,YAAa,QAAQ,SAAS,SAAa;AAAA,MACnE,aAAa,OAAO,gBAAgB,WAAW,cAAc;AAAA,MAC7D;AAAA,MAEC,UAAA;AAAA,QAAA;AAAA,QACA,OAAO,gBAAgB,YAAY,mCACjC,OAAA,EAAI,MAAK,eAAe,UAAA,aAAY;AAAA,QAEtC,UAAU,oBAAC,OAAA,EAAI,MAAK,UAAU,UAAA,OAAA,CAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG5C;ACnEO,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA,GAAG;AACL,GAAsC;AACpC,QAAM,MAAM,OAAyB,IAAI;AAEzC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,YAAU,MAAM;AACd,QAAI,SAAS,OAAO,UAAU,UAAU;AACtC,cAAQ;AAAA,QACN;AAAA,MAAA;AAAA,IAEJ;AAAA,EACF,GAAG,CAAA,CAAE;AAEL,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,SAAS;AAChB;AAAA,IACF;AACA,UAAM,UAAU,IAAI;AAEpB,UAAM,eAAe,CAAC,MAAa;AACjC,YAAM,SAAU,EAAgD;AAChE,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AAEA,QAAI,UAAU;AACZ,cAAQ,iBAAiB,WAAW,YAAY;AAAA,IAClD;AAEA,WAAO,MAAM;AACX,UAAI,UAAU;AACZ,gBAAQ,oBAAoB,WAAW,YAAY;AAAA,MACrD;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AAEb,QAAM,cAAc,CAAC,QAAmC;AACtD,QAAI,CAAC,IAAK,QAAO;AAEjB,QAAI,eAAe,MAAM;AACvB,aAAO,IAAI,YAAA;AAAA,IACb;AAEA,WAAO;AAAA,EACT;AAEA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,OAAO,YAAY,KAAK,KAAK;AAAA,MAC7B,OAAO,QAAQ,SAAS;AAAA,MACxB,UAAU,WAAW,SAAS;AAAA,MAC9B,KAAK,YAAY,GAAG,KAAK;AAAA,MACzB,KAAK,YAAY,GAAG,KAAK;AAAA,MACzB,UAAU,WAAW,SAAS;AAAA,MAC9B;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;ACvFO,SAAS,YAAY;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAkC;AAChC,QAAM,KAAK,OAAoB,IAAI;AAEnC,YAAU,MAAM;;AACd,QAAI,EAAC,yBAAI,YAAW,CAAC,SAAS;AAC5B;AAAA,IACF;AACA,aAAG,YAAH,mBAAY,iBAAiB,UAAU;AACvC,WAAO,MAAM;;AACX,OAAAA,MAAA,GAAG,YAAH,gBAAAA,IAAY,oBAAoB,UAAU;AAAA,IAC5C;AAAA,EACF,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL;AAAA,MACA,MAAM,OAAO,OAAO;AAAA,MACpB,SAAS,OAAO,YAAY,WAAW,UAAU;AAAA,MACjD,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MAEC,UAAA;AAAA,QAAA,WAAW,OAAO,YAAY,gCAAa,OAAA,EAAI,MAAK,WAAW,UAAA,SAAQ;AAAA,QACvE,WAAW,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,SAAQ;AAAA,QACxC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;ACEA,SAAS,UAAU,OAA8C;AAC/D,MAAI,OAAO,UAAU,aAAa;AAChC,WAAO;AAAA,EACT;AACA,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO;AAAA,EACT;AACA,SAAO,KAAK,UAAU,KAAK;AAC7B;AAEO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,GAAG;AACL,GAAoC;AAClC,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,EAAE,MAAM,GAAG,KAAA,GAAQ,SAAS;AAEnE,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AACnB,UAAM,UAAU,CAAC,MAAa;AAC5B,YAAM,SAAU,EAA8C;AAC9D,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AACA,QAAI,UAAU;AACZ,cAAQ,iBAAiB,WAAW,OAAO;AAAA,IAC7C;AACA,WAAO,MAAM;AACX,UAAI,UAAU;AACZ,gBAAQ,oBAAoB,WAAW,OAAO;AAAA,MAChD;AAAA,IACF;AAAA,EACF,GAAG,CAAC,IAAI,QAAQ,CAAC;AAEjB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,OAAO,UAAU,KAAK;AAAA,MACtB,UAAU,WAAW,SAAS;AAAA,MAC9B,OAAO,QAAQ,SAAS;AAAA,MACxB,YAAY,aAAa,SAAS;AAAA,MAClC,aAAa,cAAc,SAAS;AAAA,MACpC,QAAQ,SAAS,SAAS;AAAA,MAC1B,UAAU,WAAW,SAAS;AAAA,MAC7B,GAAG;AAAA,MACJ;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;ACxGO,SAAS,oBAAoB,OAA+B;AACjE,YAAU,MAAM;AACd,YAAQ,KAAK,iEAAiE;AAAA,EAChF,GAAG,CAAA,CAAE;AAEL,SAAO,oBAAC,mBAAA,EAAmB,GAAG,MAAA,CAAO;AACvC;AAEO,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,GAA2B;AACzB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,IAAA;AAAA,EAAA;AAGb;ACdO,SAAS,oBAAoB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAA6B;AAC3B,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,EAAE,UAAU,GAAG,KAAA,GAAQ,SAAS;AAEvE,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,QAAS;AAEjB,UAAM,UAAU,GAAG;AACnB,UAAM,gBAAgB,CAAC,UAAiB,qCAAW,EAAE,UAAU;AAC/D,UAAM,gBAAgB,CAAC,UAAiB,qCAAW,EAAE,UAAU;AAC/D,YAAQ,iBAAiB,WAAW,aAAa;AACjD,YAAQ,iBAAiB,WAAW,aAAa;AACjD,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,aAAa;AACpD,cAAQ,oBAAoB,WAAW,aAAa;AAAA,IACtD;AAAA,EACF,GAAG,CAAC,IAAI,UAAU,UAAU,QAAQ,CAAC;AAErC,6BAAQ,wBAAA,EAAqB,KAAK,IAAK,GAAG,QAAQ,SAAkB;AACtE;AChCO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAA8B;AAC5B,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,QAAS;AAEjB,UAAM,UAAU,GAAG;AACnB,UAAM,UAAU,CAAC,MAAa;AAC5B,YAAM,SAAU,EAAyD;AACzE,mBAAa,EAAE,GAAG,QAAQ,OAAO,GAAG;AAAA,IACtC;AACA,YAAQ,iBAAiB,eAAe,OAAO;AAC/C,WAAO,MAAM;AACX,cAAQ,oBAAoB,eAAe,OAAO;AAAA,IACpD;AAAA,EACF,GAAG,CAAC,IAAI,YAAY,CAAC;AAErB,6BACG,yBAAA,EAAsB,KAAK,IAAK,GAAG,QAAQ,SAAkB;AAElE;ACtBO,MAAM,kBAAkB,CAAC;AAAA,EAC9B,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,MAA4B;AAC1B,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS;AAAA,IACb,EAAE,WAAW,WAAW,GAAG,KAAA;AAAA,IAC3B;AAAA,EAAA;AAGF,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,QAAS;AACjB,QAAI,CAAC,QAAS;AAEd,UAAM,UAAU,GAAG;AAEnB,YAAQ,iBAAiB,UAAU,OAAO;AAC1C,WAAO,MAAM;AACX,cAAQ,oBAAoB,UAAU,OAAQ;AAAA,IAChD;AAAA,EACF,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,OAAO,QAAQ,SAAS;AAAA,MACxB;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;ACnBO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,GAAG;AACL,GAAoC;AAClC,QAAM,SAAS,eAAwB,EAAE,MAAM,GAAG,KAAA,GAAQ,SAAS;AAEnE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO,OAAO,UAAU,WAAW,QAAQ;AAAA,MAC3C,UAAU,OAAO,aAAa,WAAW,WAAW;AAAA,MACpD,6BAA2B;AAAA,MAC1B,GAAG;AAAA,MACJ;AAAA,MAEC,UAAA;AAAA,QAAA,SAAS,OAAO,UAAU,gCAAa,OAAA,EAAI,MAAK,SAAS,UAAA,OAAM;AAAA,QAC/D,YAAY,OAAO,aAAa,gCAAa,OAAA,EAAI,MAAK,YAAY,UAAA,UAAS;AAAA,QAC3E;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;ACnDO,SAAS,eAAe,EAAE,UAAU,GAAG,QAA0C;AACtF,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,6BACG,kBAAA,EAAgB,GAAG,QAAQ,SAAS,KAClC,UACH;AAEJ;ACdO,SAAS,0BAA0B;AAAA,EACxC;AAAA,EACA,GAAG;AACL,GAAmC;AACjC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,6BACG,+BAAA,EAA4B,MAAK,QAAQ,GAAG,QAC1C,UACH;AAEJ;ACPO,SAAS,yBAAyB;AAAA,EACvC;AAAA,EACA,GAAG;AACL,GAA+B;AAC7B,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,6BACG,8BAAA,EAA2B,MAAK,OAAO,GAAG,QACxC,UACH;AAEJ;ACkGO,SAAS,WAAW;AAAA,EACzB,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAA4D;AAC1D,QAAM,MAAM,OAAyB,IAAI;AAEzC,QAAM,SAAS;AAAA,IACb,EAAE,SAAS,WAAW,WAAW,MAAM,GAAG,KAAA;AAAA,IAC1C;AAAA,EAAA;AAGF,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,SAAS;AAChB;AAAA,IACF;AACA,UAAM,UAAU,IAAI;AACpB,UAAM,iBAAiB,CAAC,MAAa;AACnC,YAAM,SAAU,EAA2C;AAC3D,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AACA,UAAM,gBAAgB,MAAM;AAC1B;AAAA,IACF;AAEA,UAAM,gBAAgB,CAAC,MAAa;AAClC,YAAM,SAAU,EAA0C;AAC1D,yCAAU,EAAE,GAAG,QAAQ,OAAO;IAChC;AAEA,UAAM,eAAe,CAAC,MAAa;AACjC,YAAM,SAAU,EAAyC;AACzD,uCAAS,EAAE,GAAG,QAAQ,OAAO;IAC/B;AAEA,UAAM,mBAAmB,CAAC,MAAa;AACrC,YAAM,SAAU,EAA6C;AAC7D,+CAAa,EAAE,GAAG,QAAQ,OAAO;IACnC;AAEA,YAAQ,iBAAiB,WAAW,cAAc;AAClD,YAAQ,iBAAiB,sBAAsB,aAAa;AAC5D,YAAQ,iBAAiB,UAAU,aAAa;AAChD,YAAQ,iBAAiB,SAAS,YAAY;AAC9C,YAAQ,iBAAiB,aAAa,gBAAgB;AAEtD,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,cAAc;AACrD,cAAQ,oBAAoB,sBAAsB,aAAa;AAC/D,cAAQ,oBAAoB,UAAU,aAAa;AACnD,cAAQ,oBAAoB,SAAS,YAAY;AACjD,cAAQ,oBAAoB,aAAa,gBAAgB;AAAA,IAC3D;AAAA,EACF,GAAG,CAAC,KAAK,UAAU,qBAAqB,SAAS,QAAQ,UAAU,CAAC;AAEpE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACC,GAAG;AAAA,MACJ,SAAS,UAAU,SAAS;AAAA,MAC5B,UAAU,WAAW,SAAS;AAAA,MAC9B,UAAU,WAAW,SAAS;AAAA,MAC9B,OAAO,QAAQ,SAAS;AAAA,MACxB,yBAAyB,sBAAsB,SAAS;AAAA,MACxD;AAAA,MAEC,UAAA;AAAA,QAAA,kBAAkB,oBAAC,OAAA,EAAI,MAAK,kBAAkB,UAAA,gBAAe;AAAA,QAC7D,mBAAmB,oBAAC,OAAA,EAAI,MAAK,mBAAmB,UAAA,gBAAA,CAAgB;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGvE;AAEA,MAAM,sBAAsB,CAAC,aAAkC;AAC7D,SAAO,CAAC,EAAE,MAAM,OAAO,YAAoD;AACzE,QAAI,CAAC,OAAO;AACV,2CAAW,EAAE,MAAM,OAAO,IAAI;AAC9B;AAAA,IACF;AAEA,QAAI,OAAO,UAAU,YAAY,QAAQ,IAAI,KAAK,KAAK,CAAC,GAAG;AACzD,2CAAW,EAAE,MAAM,OAAO,SAAS,KAAK,GAAG;AAC3C;AAAA,IACF;AAEA,QAAI,QAAQ,KAAK,GAAG;AAClB,2CAAW,EAAE,MAAM,OAAO,MAAA;AAC1B;AAAA,IACF;AAAA,EACF;AACF;AAEA,MAAM,sBAAsB,CAAC,aAAwB;AACnD,SAAO,CAAC,EAAE,MAAM,OAAO,YAAqC;AAC1D,QAAI,CAAC,OAAO;AACV,2CAAW,EAAE,MAAM,OAAO,IAAI;AAC9B;AAAA,IACF;AACA,yCAAW,EAAE,MAAM,OAAO,MAAA;AAAA,EAC5B;AACF;AAEA,SAAS,SAAS,OAAoC,OAAO,cAAsB;AACjF,MAAI,CAAC,OAAO;AACV,WAAO;AAAA,EACT;AACA,MAAI,OAAO,UAAU,UAAU;AAC7B,WAAO,OAAO,SAAS,KAAK,GAAG,IAAI;AAAA,EACrC;AACA,MAAI,MAAM,mBAAkB,oBAAI,KAAK,CAAC,GAAE,eAAe;AACrD,WAAO;AAAA,EACT;AACA,SAAO,OAAO,OAAO,IAAI;AAC3B;AAEO,SAAS,eAAe,OAAqC;AAClE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,QAAO;AAC5C;AAEO,SAAS,mBAAmB,OAAqC;AACtE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,YAAW;AAChD;AAEO,SAAS,eAAe;AAAA,EAC7B;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AAAA,EACN,GAAG;AACL,GAAqC;AACnC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,MAAK;AAAA,MACL,UAAU,oBAAoB,MAAM,QAAQ;AAAA,MAC5C,KAAK,SAAS,GAAG;AAAA,MACjB,KAAK,SAAS,GAAG;AAAA,MACjB,OAAO,SAAS,KAAK;AAAA,IAAA;AAAA,EAAA;AAG3B;AAEO,SAAS,eAAe;AAAA,EAC7B;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AAAA,EACN,GAAG;AACL,GAAiC;AAC/B,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,UAAU,oBAAoB,MAAM,QAAQ;AAAA,MAC5C;AAAA,MACA,MAAK;AAAA,IAAA;AAAA,EAAA;AAGX;AAEO,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA,MAAM;AAAA,EACN,MAAM;AAAA,EACN,GAAG;AACL,GAAqC;AACnC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,UAAU,oBAAoB,MAAM,QAAQ;AAAA,MAC5C,OAAO,SAAS,OAAO,oBAAoB;AAAA,MAC3C,MAAK;AAAA,IAAA;AAAA,EAAA;AAGX;AAEO,SAAS,gBAAgB,OAAqC;AACnE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,SAAQ;AAC7C;AAEO,SAAS,iBAAiB,OAAqC;AACpE,6BAAQ,YAAA,EAAY,GAAG,OAAO,MAAK,UAAS,cAAa,UAAS;AACpE;AAEO,SAAS,cAAc,OAAqC;AACjE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,OAAM;AAC3C;AAEO,SAAS,cAAc,OAAqC;AACjE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,OAAM;AAC3C;AAEO,SAAS,eAAe,OAAqC;AAClE,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,IAAI,MAAM;AAAA,MACV,MAAM,MAAM;AAAA,MACZ,MAAK;AAAA,MACL,UAAU,CAAC;;AACT,2BAAM,aAAN,+BAAiB;AAAA,UACf,MAAM,EAAE,OAAO;AAAA,UACf,OAAO,EAAE,OAAO;AAAA,UAChB,OAAO,EAAE;AAAA,QAAA;AAAA;AAAA,MAGb,OAAO,EAAE,iBAAiB,SAAA;AAAA,IAAS;AAAA,EAAA;AAGzC;AAEO,SAAS,gBAAgB,OAAqC;AACnE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,SAAQ;AAC7C;AAEO,SAAS,iBAAiB;AAAA,EAC/B,MAAM,OAAO;AAAA,EACb,MAAM,OAAO;AAAA,EACb;AAAA,EACA,YAAY;AAAA,EACZ,GAAG;AACL,GAAuC;AACrC,QAAM,iBAAiB,CAAC,EAAE,MAAM,OAAAC,QAAO,YAAqC;;AAC1E,gBAAM,aAAN,+BAAiB,EAAE,MAAM,OAAO,WAAWA,MAAK,GAAG;EACrD;AACA,QAAM,UAAU,CAAC,EAAE,MAAM,OAAAA,QAAO,YAAoC;;AAClE,gBAAM,YAAN,+BAAgB,EAAE,MAAM,OAAO,WAAWA,MAAK,GAAG;EACpD;AACA,QAAM,SAAS,CAAC,EAAE,MAAM,OAAAA,QAAO,YAAmC;;AAChE,gBAAM,WAAN,+BAAe,EAAE,MAAM,OAAO,WAAWA,MAAK,GAAG;EACnD;AACA,QAAM,aAAa,CAAC,EAAE,MAAM,OAAAA,QAAO,KAAK,YAAuC;;AAC7E,gBAAM,eAAN,+BAAmB,EAAE,MAAM,OAAO,WAAWA,MAAK,GAAG,KAAK,SAAS,GAAG,GAAG,MAAA;AAAA,EAC3E;AACA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG;AAAA,MACJ,UAAU;AAAA,MACV,KAAK,2BAAK;AAAA,MACV,KAAK,2BAAK;AAAA,MACV,OAAO,+BAAO;AAAA,MACd;AAAA,MACA;AAAA,MACA,MAAK;AAAA,MACL;AAAA,MACA;AAAA,IAAA;AAAA,EAAA;AAGN;AAEO,SAAS,gBAAgB,OAAqC;AACnE,SAAO,oBAAC,YAAA,EAAY,GAAG,OAAO,MAAK,SAAQ;AAC7C;AClWO,SAAS,UAAU;AAAA,EACxB;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,OAAO;AAAA,EACP;AAAA,EACA,GAAG;AACL,GAAmB;AACjB,QAAM,SAAS,eAAwB,EAAE,OAAO,MAAM,GAAG,KAAA,GAAQ,SAAS;AAE1E,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,cAAY;AAAA,MACZ,eAAa,KAAK,UAAU,UAAU;AAAA,MACrC,GAAG;AAAA,MAEH;AAAA,IAAA;AAAA,EAAA;AAGP;ACVO,SAAS,WAAW;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAiC;AAC/B,QAAM,KAAK,OAAoB,IAAI;AAEnC,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AACnB,UAAM,WAAW,MAAM;AACrB;AAAA,IACF;AAEA,YAAQ,iBAAiB,UAAU,QAAQ;AAC3C,WAAO,MAAM;AACX,cAAQ,oBAAoB,UAAU,QAAQ;AAAA,IAChD;AAAA,EACF,GAAG,CAAC,IAAI,OAAO,CAAC;AAEhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,MAAM,OAAO,SAAS;AAAA,MACtB,UAAU,UAAU,SAAS;AAAA,MAC7B,SAAS,OAAO,YAAY,WAAW,UAAU;AAAA,MACjD,UAAU;AAAA,MACV;AAAA,MACA,gBAAgB;AAAA,MAChB,QAAQ;AAAA,MACR;AAAA,MAEC,UAAA;AAAA,QAAA,WAAW,OAAO,YAAY,gCAAa,OAAA,EAAI,MAAK,WAAW,UAAA,SAAQ;AAAA,QACvE,WAAW,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,SAAQ;AAAA,QACxC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;AC1DO,MAAM,oBAAoB,CAAC;AAAA,EAChC,OAAO;AAAA,EACP,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,MAA8B;AAC5B,QAAM,KAAK,OAAoB,IAAI;AAEnC,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AACnB,UAAM,WAAW,MAAM;AACrB;AAAA,IACF;AAEA,YAAQ,iBAAiB,YAAY,QAAQ;AAC7C,WAAO,MAAM;AACX,cAAQ,oBAAoB,YAAY,QAAQ;AAAA,IAClD;AAAA,EACF,GAAG,CAAC,IAAI,SAAS,CAAC;AAElB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL;AAAA,MACA,QAAQ;AAAA,MACR,iBAAiB;AAAA,MACjB,UAAU;AAAA,MACV;AAAA,MACA,SAAS,UAAU,SAAS;AAAA,MAC5B;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;AC7CO,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAAyB;AACvB,QAAM,MAAM,OAAoB,IAAI;AAEpC,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,SAAS;AAChB;AAAA,IACF;AACA,UAAM,UAAU,IAAI;AACpB,UAAM,iBAAiB,CAAC,MAAa;AACnC,YAAM,SAAU,EAAgD;AAChE,eAAS,MAAM;AAAA,IACjB;AAEA,YAAQ,iBAAiB,WAAW,cAAc;AAClD,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,cAAc;AAAA,IACvD;AAAA,EACF,GAAG,CAAC,KAAK,QAAQ,CAAC;AAElB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,WAAW,MAAM;AAAA,MACjB,cAAc,MAAM;AAAA,MACpB,YAAY,MAAM;AAAA,MAClB,SAAS,MAAM;AAAA,MACf,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV,QAAQ,MAAM;AAAA,MACd;AAAA,IAAA;AAAA,EAAA;AAGN;AC5BO,SAAS,eAAe;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAqC;AACnC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa,OAAO,gBAAgB,WAAW,cAAc;AAAA,MAC7D,UAAU;AAAA,MACV,OAAO,QAAQ,SAAS;AAAA,MACxB,UAAU,WAAW,SAAS;AAAA,MAC9B,SAAS,UAAU,SAAS;AAAA,MAC5B,SAAS,UAAU,SAAS;AAAA,MAC5B,WAAW;AAAA,MACX,iBAAiB;AAAA,MACjB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEC,UAAA;AAAA,QAAA,eAAe,OAAO,gBAAgB,gCACpC,OAAA,EAAI,MAAK,eAAe,UAAA,aAAY;AAAA,QAEtC,UAAU,oBAAC,OAAA,EAAI,MAAK,UAAU,UAAA,QAAO;AAAA,QACrC;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;AC1CO,SAAS,gBAAgB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP,UAAU;AAAA,EACV,GAAG;AACL,GAAsC;AACpC,QAAM,KAAK,OAAoB,IAAI;AAEnC,QAAM,SAAS,eAAwB,EAAE,MAAM,GAAG,KAAA,GAAQ,SAAS;AAEnE,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,QAAS;AAEjB,UAAM,WAAW,CAAC,MAAa;AAC7B,YAAM,SAAU,EAAgD;AAChE,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AAEA,UAAM,YAAY,GAAG;AACrB,QAAI,UAAU;AACZ,gBAAU,iBAAiB,WAAW,QAAQ;AAAA,IAChD;AAEA,WAAO,MAAM;AACX,UAAI,UAAU;AACZ,kBAAU,oBAAoB,WAAW,QAAQ;AAAA,MACnD;AAAA,IACF;AAAA,EACF,GAAG,CAAC,MAAM,QAAQ,CAAC;AAEnB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACJ,GAAG;AAAA,MACJ;AAAA,MACA,UAAU,WAAW,SAAS;AAAA,MAC9B,OAAO,QAAQ,SAAS;AAAA,MACxB;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;ACzEO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAoC;AAClC,SACE,oBAAC,iBAAA,EAAc,QAAQ,QAAQ,SAC5B,UACH;AAEJ;ACLO,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAyC;AACvC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;AC1BO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAA8B;AAC5B,SACE,qBAAC,yBAAA,EAAsB,MAAY,QAAQ,QAAQ,SAChD,UAAA;AAAA,IAAA;AAAA,IACA,QAAQ,oBAAC,QAAA,EAAK,MAAK,QAAQ,UAAA,KAAA,CAAK;AAAA,EAAA,GACnC;AAEJ;ACCO,SAAS,WAAW,EAAE,QAAQ,UAAU,KAAK,GAAG,SAA0B;AAC/E,QAAM,MAAM,OAAyB,IAAI;AACzC,YAAU,MAAM;AACd,QAAI,CAAC,IAAI,SAAS;AAChB;AAAA,IACF;AACA,UAAM,UAAU,IAAI;AACpB,UAAM,eAAe,CAAC,MAAe;AACnC,YAAM,SAAU,EAAyC;AACzD,uCAAS;AAAA,IACX;AAEA,YAAQ,iBAAiB,SAAS,YAAY;AAC9C,WAAO,MAAM;AACX,cAAQ,oBAAoB,SAAS,YAAY;AAAA,IACnD;AAAA,EACF,GAAG,CAAC,KAAK,MAAM,CAAC;AAEhB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,OAAO,MAAM;AAAA,MAGb,SAAS,MAAM;AAAA,MACf,SAAS,MAAM,UAAU,SAAS;AAAA,MAClC,QAAQ,MAAM;AAAA,MACd,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV,IAAI,MAAM;AAAA,MACV;AAAA,MAEA,UAAA,oBAAC,WAAM,OAAO,EAAE,OAAO,UAAW,gBAAM,SAAA,CAAS;AAAA,IAAA;AAAA,EAAA;AAGvD;ACnDO,SAAS,qBAAqB;AAAA,EACnC;AAAA,EACA,GAAG;AACL,GAAqC;AACnC,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,SAAO,oBAAC,yBAAA,EAAuB,GAAG,QAAS,SAAA,CAAS;AACtD;ACHO,SAAS,UAAU;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AACZ,GAAgC;AAC9B,QAAM,MAAM,OAAoB,IAAI;AAEpC,YAAU,MAAM;AACd,UAAM,UAAU,IAAI;AACpB,QAAI,WAAW,UAAU;AACvB,YAAM,UAAU,CAAC,UAAiB;AAChC,cAAM,SAAU,MAA8C;AAC9D,iBAAS,MAAM;AAAA,MACjB;AACA,cAAQ,iBAAiB,WAAW,OAAO;AAC3C,aAAO,MAAM;AACX,gBAAQ,oBAAoB,WAAW,OAAO;AAAA,MAChD;AAAA,IACF;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AAEb,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;ACEO,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,GAAG;AACL,GAAoC;AAClC,QAAM,KAAK,OAA4B,IAAI;AAE3C,QAAM,SAAS,eAAwB,MAAM,SAAS;AAEtD,YAAU,MAAM;AACd,QAAI,CAAC,GAAG,SAAS;AACf;AAAA,IACF;AACA,UAAM,UAAU,GAAG;AAEnB,UAAM,iBAAgC,CAAC,MAAa;AAClD,YAAM,SAAU,EAA8C;AAC9D,2CAAW,EAAE,GAAG,QAAQ,OAAO;IACjC;AAEA,UAAM,mBAAmB,CAAC,MAAe;AACvC,YAAM,SAAU,EAAgD;AAChE,+CAAa,EAAE,GAAG,QAAQ,OAAO;IACnC;AAEA,UAAM,eAAe,CAAC,MAAe;AACnC,YAAM,SAAU,EAA4C;AAC5D,uCAAS,EAAE,GAAG,QAAQ,OAAO;IAC/B;AAEA,YAAQ,iBAAiB,WAAW,cAAc;AAClD,YAAQ,iBAAiB,aAAa,gBAAgB;AACtD,YAAQ,iBAAiB,SAAS,YAAY;AAE9C,WAAO,MAAM;AACX,cAAQ,oBAAoB,WAAW,cAAc;AACrD,cAAQ,oBAAoB,aAAa,gBAAgB;AACzD,cAAQ,oBAAoB,SAAS,YAAY;AAAA,IACnD;AAAA,EACF,GAAG,CAAC,IAAI,UAAU,YAAY,MAAM,CAAC;AAErC,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL,UAAU,WAAW,SAAS;AAAA,MAC9B,UAAU,WAAW,SAAS;AAAA,MAC9B,OAAO,QAAQ,SAAS;AAAA,MACxB;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;ACtFO,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAuC;AACrC,QAAM,KAAK,OAAoB,IAAI;AAEnC,YAAU,MAAM;;AACd,QAAI,EAAC,yBAAI,YAAW,CAAC,UAAU;AAC7B;AAAA,IACF;AACA,aAAG,YAAH,mBAAY,iBAAiB,WAAW;AACxC,WAAO,MAAM;;AACX,OAAAD,MAAA,GAAG,YAAH,gBAAAA,IAAY,oBAAoB,WAAW;AAAA,IAC7C;AAAA,EACF,GAAG,CAAC,IAAI,QAAQ,CAAC;AACjB,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,aAAW;AAAA,MACX,uBAAqB;AAAA,MACrB,MAAM,OAAO,OAAO;AAAA,MACpB,QAAQ;AAAA,MAEP,UAAA;AAAA,QAAA,kBAAkB,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,gBAAe;AAAA,QACtD,oBAAoB,oBAAC,OAAA,EAAI,MAAK,aAAa,UAAA,kBAAiB;AAAA,QAC5D,kBAAkB,oBAAC,OAAA,EAAI,MAAK,WAAW,UAAA,eAAA,CAAe;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG7D;ACzCO,SAAS,sBAAsB,OAA+C;AACnF,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAO,MAAM;AAAA,MACb,KAAK,MAAM;AAAA,MACX,OAAO,MAAM;AAAA,MACb,SAAS,MAAM,UAAU,SAAS;AAAA,MAClC,SAAS,MAAM,UAAU,SAAS;AAAA,MAClC,MAAM,MAAM;AAAA,MACZ,QAAQ,MAAM;AAAA,MACd,MAAM,MAAM;AAAA,MAEX,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;ACxBO,SAAS,uBAAuB,OAAgD;AACrF,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,SAAS,MAAM;AAAA,MACf,MAAM,MAAM;AAAA,MACZ,QAAQ,MAAM;AAAA,MAEb,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;"}
|