@utilitywarehouse/hearth-react 0.14.3 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-6MRJQADN.cjs → chunk-25UCKJJF.cjs} +2 -2
- package/dist/{chunk-6MRJQADN.cjs.map → chunk-25UCKJJF.cjs.map} +1 -1
- package/dist/chunk-33AP6UFJ.cjs +2 -0
- package/dist/chunk-33AP6UFJ.cjs.map +1 -0
- package/dist/chunk-3BHHP2YV.js +2 -0
- package/dist/chunk-3BHHP2YV.js.map +1 -0
- package/dist/chunk-6CNWAXC3.cjs +2 -0
- package/dist/chunk-6CNWAXC3.cjs.map +1 -0
- package/dist/chunk-AL6UTVKT.cjs +2 -0
- package/dist/chunk-AL6UTVKT.cjs.map +1 -0
- package/dist/chunk-BUXP6LBE.cjs +2 -0
- package/dist/chunk-BUXP6LBE.cjs.map +1 -0
- package/dist/{chunk-V4F5UXHM.js → chunk-C74Y2OZV.js} +2 -2
- package/dist/chunk-CAMD4TVE.js +2 -0
- package/dist/chunk-CAMD4TVE.js.map +1 -0
- package/dist/chunk-CBNYX6DN.cjs +2 -0
- package/dist/chunk-CBNYX6DN.cjs.map +1 -0
- package/dist/{chunk-Y3DBTNAY.cjs → chunk-DGNL3EUT.cjs} +2 -2
- package/dist/{chunk-Y3DBTNAY.cjs.map → chunk-DGNL3EUT.cjs.map} +1 -1
- package/dist/{chunk-6CEZGDCL.cjs → chunk-DHJWGC4W.cjs} +2 -2
- package/dist/{chunk-6CEZGDCL.cjs.map → chunk-DHJWGC4W.cjs.map} +1 -1
- package/dist/{chunk-PCTKPYCK.js → chunk-EL6IHZSP.js} +2 -2
- package/dist/{chunk-7SY4BOUA.js → chunk-ESHTU5J4.js} +2 -2
- package/dist/chunk-GDU5LSVU.js +2 -0
- package/dist/chunk-GDU5LSVU.js.map +1 -0
- package/dist/{chunk-YJGGRTVT.js → chunk-HJRHREYC.js} +2 -2
- package/dist/{chunk-E4WVGEGK.cjs → chunk-HTLSKUZO.cjs} +2 -2
- package/dist/{chunk-E4WVGEGK.cjs.map → chunk-HTLSKUZO.cjs.map} +1 -1
- package/dist/{chunk-MZ6Z4GXQ.cjs → chunk-LCGQBVB7.cjs} +2 -2
- package/dist/{chunk-MZ6Z4GXQ.cjs.map → chunk-LCGQBVB7.cjs.map} +1 -1
- package/dist/{chunk-N7NZGE33.js → chunk-LHD2GY6R.js} +2 -2
- package/dist/{chunk-MDAZ5BIR.cjs → chunk-LSDQYW7O.cjs} +2 -2
- package/dist/{chunk-MDAZ5BIR.cjs.map → chunk-LSDQYW7O.cjs.map} +1 -1
- package/dist/chunk-M7Y6BXHP.js +2 -0
- package/dist/chunk-M7Y6BXHP.js.map +1 -0
- package/dist/chunk-NG3NR6UN.js +2 -0
- package/dist/chunk-NG3NR6UN.js.map +1 -0
- package/dist/{chunk-EO7DPEA6.cjs → chunk-OK4BKJ52.cjs} +2 -2
- package/dist/{chunk-EO7DPEA6.cjs.map → chunk-OK4BKJ52.cjs.map} +1 -1
- package/dist/{chunk-P7QZQWEH.js → chunk-OSYFJRSS.js} +2 -2
- package/dist/{chunk-NWZ6NUCG.js → chunk-PCSPVEX2.js} +2 -2
- package/dist/chunk-PLVHBGPL.js +2 -0
- package/dist/{chunk-BGD5B5GB.js.map → chunk-PLVHBGPL.js.map} +1 -1
- package/dist/{chunk-5ELBM7C7.cjs → chunk-SNOFZS77.cjs} +2 -2
- package/dist/{chunk-5ELBM7C7.cjs.map → chunk-SNOFZS77.cjs.map} +1 -1
- package/dist/{chunk-CX3PDUH4.js → chunk-SU5U2QUB.js} +2 -2
- package/dist/{chunk-FRE74QIN.cjs → chunk-U44NFEY3.cjs} +2 -2
- package/dist/{chunk-FRE74QIN.cjs.map → chunk-U44NFEY3.cjs.map} +1 -1
- package/dist/{chunk-JIDVGIL5.cjs → chunk-Y5GXJ36Z.cjs} +2 -2
- package/dist/{chunk-JIDVGIL5.cjs.map → chunk-Y5GXJ36Z.cjs.map} +1 -1
- package/dist/{chunk-3STGSHUA.js → chunk-ZFR534Y7.js} +2 -2
- package/dist/components/Alert/Alert.cjs +1 -1
- package/dist/components/Alert/Alert.js +1 -1
- package/dist/components/Alert/AlertIconButton.cjs +1 -1
- package/dist/components/Alert/AlertIconButton.js +1 -1
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.js +1 -1
- package/dist/components/Container/Container.cjs +1 -1
- package/dist/components/Container/Container.js +1 -1
- package/dist/components/IconButton/IconButton.cjs +1 -1
- package/dist/components/IconButton/IconButton.js +1 -1
- package/dist/components/Modal/Modal.cjs +1 -1
- package/dist/components/Modal/Modal.js +1 -1
- package/dist/components/PasswordInput/PasswordInput.cjs +1 -1
- package/dist/components/PasswordInput/PasswordInput.js +1 -1
- package/dist/components/SearchInput/SearchInput.cjs +1 -1
- package/dist/components/SearchInput/SearchInput.js +1 -1
- package/dist/components/Select/Select.d.cts +1 -1
- package/dist/components/Select/Select.d.ts +1 -1
- package/dist/components/Tabs/Tab.cjs +2 -0
- package/dist/components/Tabs/Tab.cjs.map +1 -0
- package/dist/components/Tabs/Tab.d.cts +7 -0
- package/dist/components/Tabs/Tab.d.ts +7 -0
- package/dist/components/Tabs/Tab.js +2 -0
- package/dist/components/Tabs/Tab.js.map +1 -0
- package/dist/components/Tabs/Tab.props.cjs +1 -0
- package/dist/components/Tabs/Tab.props.cjs.map +1 -0
- package/dist/components/Tabs/Tab.props.d.cts +5 -0
- package/dist/components/Tabs/Tab.props.d.ts +5 -0
- package/dist/components/Tabs/Tab.props.js +1 -0
- package/dist/components/Tabs/Tab.props.js.map +1 -0
- package/dist/components/Tabs/TabContent.cjs +2 -0
- package/dist/components/Tabs/TabContent.cjs.map +1 -0
- package/dist/components/Tabs/TabContent.d.cts +7 -0
- package/dist/components/Tabs/TabContent.d.ts +7 -0
- package/dist/components/Tabs/TabContent.js +2 -0
- package/dist/components/Tabs/TabContent.js.map +1 -0
- package/dist/components/Tabs/TabContent.props.cjs +1 -0
- package/dist/components/Tabs/TabContent.props.cjs.map +1 -0
- package/dist/components/Tabs/TabContent.props.d.cts +5 -0
- package/dist/components/Tabs/TabContent.props.d.ts +5 -0
- package/dist/components/Tabs/TabContent.props.js +1 -0
- package/dist/components/Tabs/TabContent.props.js.map +1 -0
- package/dist/components/Tabs/Tabs.cjs +2 -0
- package/dist/components/Tabs/Tabs.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.d.cts +8 -0
- package/dist/components/Tabs/Tabs.d.ts +8 -0
- package/dist/components/Tabs/Tabs.js +2 -0
- package/dist/components/Tabs/Tabs.js.map +1 -0
- package/dist/components/Tabs/Tabs.props.cjs +2 -0
- package/dist/components/Tabs/Tabs.props.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.props.d.cts +20 -0
- package/dist/components/Tabs/Tabs.props.d.ts +20 -0
- package/dist/components/Tabs/Tabs.props.js +2 -0
- package/dist/components/Tabs/Tabs.props.js.map +1 -0
- package/dist/components/Tabs/TabsList.cjs +2 -0
- package/dist/components/Tabs/TabsList.cjs.map +1 -0
- package/dist/components/Tabs/TabsList.d.cts +7 -0
- package/dist/components/Tabs/TabsList.d.ts +7 -0
- package/dist/components/Tabs/TabsList.js +2 -0
- package/dist/components/Tabs/TabsList.js.map +1 -0
- package/dist/components/Tabs/TabsList.props.cjs +1 -0
- package/dist/components/Tabs/TabsList.props.cjs.map +1 -0
- package/dist/components/Tabs/TabsList.props.d.cts +5 -0
- package/dist/components/Tabs/TabsList.props.d.ts +5 -0
- package/dist/components/Tabs/TabsList.props.js +1 -0
- package/dist/components/Tabs/TabsList.props.js.map +1 -0
- package/dist/components/UnstyledIconButton/UnstyledIconButton.cjs +1 -1
- package/dist/components/UnstyledIconButton/UnstyledIconButton.js +1 -1
- package/dist/helpers/get-subtree.cjs +1 -1
- package/dist/helpers/get-subtree.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +1 -1
- package/package.json +2 -2
- package/styles.css +1 -1
- package/dist/chunk-BGD5B5GB.js +0 -2
- /package/dist/{chunk-V4F5UXHM.js.map → chunk-C74Y2OZV.js.map} +0 -0
- /package/dist/{chunk-PCTKPYCK.js.map → chunk-EL6IHZSP.js.map} +0 -0
- /package/dist/{chunk-7SY4BOUA.js.map → chunk-ESHTU5J4.js.map} +0 -0
- /package/dist/{chunk-YJGGRTVT.js.map → chunk-HJRHREYC.js.map} +0 -0
- /package/dist/{chunk-N7NZGE33.js.map → chunk-LHD2GY6R.js.map} +0 -0
- /package/dist/{chunk-P7QZQWEH.js.map → chunk-OSYFJRSS.js.map} +0 -0
- /package/dist/{chunk-NWZ6NUCG.js.map → chunk-PCSPVEX2.js.map} +0 -0
- /package/dist/{chunk-CX3PDUH4.js.map → chunk-SU5U2QUB.js.map} +0 -0
- /package/dist/{chunk-3STGSHUA.js.map → chunk-ZFR534Y7.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk5C3I4LATcjs = require('./chunk-5C3I4LAT.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk5C3I4LATcjs = require('./chunk-5C3I4LAT.cjs');var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunkBIHS7WFXcjs = require('./chunk-BIHS7WFX.cjs');var _chunkGPN7W24Gcjs = require('./chunk-GPN7W24G.cjs');var _chunkQ3LBBWQZcjs = require('./chunk-Q3LBBWQZ.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var a = _interopRequireWildcard(_react);var _radixui = require('radix-ui');var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var m="Modal",D=_chunk5AK4QM2Gcjs.b.call(void 0, m),B= exports.a =a.forwardRef(({className:c,image:e,forceMount:p,container:f,heading:h,description:M,hideCloseButton:v,fullScreen:C,children:N,...g},u)=>{let x={forceMount:p,container:f},l=!!e;return a.createElement(_radixui.Dialog.Portal,{...x},a.createElement(_radixui.Dialog.Overlay,{className:"hearth-Overlay"},a.createElement("div",{className:"hearth-ModalScroll"},a.createElement("div",{className:"hearth-ModalScrollPadding"},a.createElement(_radixui.Dialog.Content,{ref:u,className:_clsx2.default.call(void 0, D,c),"data-contains-image":l?"":void 0,"data-full-screen":C?"":void 0,...g},a.createElement("div",{className:"hearth-ModalOuterContainer"},a.createElement(_chunk5C3I4LATcjs.a,null,a.createElement(_chunkSNOFZS77cjs.a,{type:"button",label:"Close","data-visually-hidden":v?"":void 0,className:"hearth-ModalCloseIconButton"},a.createElement(_hearthreacticons.CloseMediumIcon,null))),a.createElement("div",{className:"hearth-ModalInnerContainer"},l?a.createElement("div",{className:"hearth-ModalImage"},e):null,a.createElement("div",{className:"hearth-ModalHeader"},a.createElement(_chunkBIHS7WFXcjs.a,{asChild:!0},a.createElement(_radixui.Dialog.Title,{asChild:!0},a.createElement(_chunkGPN7W24Gcjs.a,{size:"lg"},h))),a.createElement(_radixui.Dialog.Description,{asChild:!0},a.createElement(_chunkQ3LBBWQZcjs.a,{size:"md",as:"span"},M)))),N))))))});B.displayName=m;exports.a = B;
|
|
2
|
+
//# sourceMappingURL=chunk-25UCKJJF.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-25UCKJJF.cjs","../src/components/Modal/Modal.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Modal","className","image","forceMount","container","heading","description","hideCloseButton","fullScreen","children","props","ref","portalProps","containsImage","RadixDialog","clsx","ModalClose","UnstyledIconButton","CloseMediumIcon","Box","Heading","BodyText"],"mappings":"AAAA,mfAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,uECA9N,mCAEe,wEACrB,wEAKe,IAK1BA,CAAAA,CAAiB,OAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAI7CC,CAAAA,aAAc,CAAA,CAAA,UAAA,CACzB,CACE,CACE,SAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,eAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CACAC,CAAAA,CAAAA,EACG,CACH,IAAMC,CAAAA,CAAc,CAAE,UAAA,CAAAT,CAAAA,CAAY,SAAA,CAAAC,CAAU,CAAA,CACtCS,CAAAA,CAAgB,CAAA,CAAQX,CAAAA,CAE9B,OACE,CAAA,CAAA,aAAA,CAACY,eAAAA,CAAY,MAAA,CAAZ,CAAoB,GAAGF,CAAAA,CAAAA,CACtB,CAAA,CAAA,aAAA,CAACE,eAAAA,CAAY,OAAA,CAAZ,CAAoB,SAAA,CAAU,gBAAA,CAAA,CAC7B,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,oBAAA,CAAA,CACb,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,2BAAA,CAAA,CACb,CAAA,CAAA,aAAA,CAACA,eAAAA,CAAY,OAAA,CAAZ,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWI,4BAAAA,CAAKjB,CAAoBG,CAAS,CAAA,CAC7C,qBAAA,CAAqBY,CAAAA,CAAgB,EAAA,CAAK,KAAA,CAAA,CAC1C,kBAAA,CAAkBL,CAAAA,CAAa,EAAA,CAAK,KAAA,CAAA,CACnC,GAAGE,CAAAA,CAAAA,CAEJ,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,4BAAA,CAAA,CACb,CAAA,CAAA,aAAA,CAACM,mBAAAA,CAAA,IAAA,CACC,CAAA,CAAA,aAAA,CAACC,mBAAAA,CAAA,CACC,IAAA,CAAK,QAAA,CACL,KAAA,CAAM,OAAA,CACN,sBAAA,CAAsBV,CAAAA,CAAkB,EAAA,CAAK,KAAA,CAAA,CAC7C,SAAA,CAAU,6BAAA,CAAA,CAEV,CAAA,CAAA,aAAA,CAACW,iCAAAA,CAAA,IAAgB,CACnB,CACF,CAAA,CAEA,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,4BAAA,CAAA,CACZL,CAAAA,CAAgB,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,mBAAA,CAAA,CAAqBX,CAAM,CAAA,CAAS,IAAA,CACpE,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAU,oBAAA,CAAA,CACb,CAAA,CAAA,aAAA,CAACiB,mBAAAA,CAAA,CAAI,OAAA,CAAO,CAAA,CAAA,CAAA,CACV,CAAA,CAAA,aAAA,CAACL,eAAAA,CAAY,KAAA,CAAZ,CAAkB,OAAA,CAAO,CAAA,CAAA,CAAA,CACxB,CAAA,CAAA,aAAA,CAACM,mBAAAA,CAAA,CAAQ,IAAA,CAAK,IAAA,CAAA,CAAMf,CAAQ,CAC9B,CACF,CAAA,CACA,CAAA,CAAA,aAAA,CAACS,eAAAA,CAAY,WAAA,CAAZ,CAAwB,OAAA,CAAO,CAAA,CAAA,CAAA,CAC9B,CAAA,CAAA,aAAA,CAACO,mBAAAA,CAAA,CAAS,IAAA,CAAK,IAAA,CAAK,EAAA,CAAG,MAAA,CAAA,CACpBf,CACH,CACF,CACF,CACF,CAAA,CAECG,CACH,CACF,CACF,CACF,CACF,CACF,CAEJ,CACF,CAAA,CAEAT,CAAAA,CAAM,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-25UCKJJF.cjs","sourcesContent":[null,"import * as React from 'react';\nimport type { ElementRef } from 'react';\nimport { Dialog as RadixDialog } from 'radix-ui';\nimport clsx from 'clsx';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { ModalProps } from './Modal.props';\nimport { Heading } from '../Heading/Heading';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport { CloseMediumIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { BodyText } from '../BodyText/BodyText';\nimport { ModalClose } from './ModalClose';\nimport { Box } from '../Box/Box';\n\nconst COMPONENT_NAME = 'Modal';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype ModalElement = ElementRef<'div'>;\n\nexport const Modal = React.forwardRef<ModalElement, ModalProps>(\n (\n {\n className,\n image,\n forceMount,\n container,\n heading,\n description,\n hideCloseButton,\n fullScreen,\n children,\n ...props\n },\n ref\n ) => {\n const portalProps = { forceMount, container };\n const containsImage = Boolean(image);\n\n return (\n <RadixDialog.Portal {...portalProps}>\n <RadixDialog.Overlay className=\"hearth-Overlay\">\n <div className=\"hearth-ModalScroll\">\n <div className=\"hearth-ModalScrollPadding\">\n <RadixDialog.Content\n ref={ref}\n className={clsx(componentClassName, className)}\n data-contains-image={containsImage ? '' : undefined}\n data-full-screen={fullScreen ? '' : undefined}\n {...props}\n >\n <div className=\"hearth-ModalOuterContainer\">\n <ModalClose>\n <UnstyledIconButton\n type=\"button\"\n label=\"Close\"\n data-visually-hidden={hideCloseButton ? '' : undefined}\n className=\"hearth-ModalCloseIconButton\"\n >\n <CloseMediumIcon />\n </UnstyledIconButton>\n </ModalClose>\n\n <div className=\"hearth-ModalInnerContainer\">\n {containsImage ? <div className=\"hearth-ModalImage\">{image}</div> : null}\n <div className=\"hearth-ModalHeader\">\n <Box asChild>\n <RadixDialog.Title asChild>\n <Heading size=\"lg\">{heading}</Heading>\n </RadixDialog.Title>\n </Box>\n <RadixDialog.Description asChild>\n <BodyText size=\"md\" as=\"span\">\n {description}\n </BodyText>\n </RadixDialog.Description>\n </div>\n </div>\n\n {children}\n </div>\n </RadixDialog.Content>\n </div>\n </div>\n </RadixDialog.Overlay>\n </RadixDialog.Portal>\n );\n }\n);\n\nModal.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var o = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var r="Tab",i=_chunk5AK4QM2Gcjs.b.call(void 0, r),T= exports.a =({className:s,value:m,...t})=>o.createElement(_radixui.Tabs.Trigger,{className:_clsx2.default.call(void 0, i,s),value:m,...t});T.displayName=r;exports.a = T;
|
|
2
|
+
//# sourceMappingURL=chunk-33AP6UFJ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-33AP6UFJ.cjs","../src/components/Tabs/Tab.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Tab","className","value","rest","RadixTabs","clsx"],"mappings":"AAAA,mfAAwC,uECAjB,wEACN,mCACiB,IAI5BA,CAAAA,CAAiB,KAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAE7CC,CAAAA,aAA0B,CAAC,CAAE,SAAA,CAAAC,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,GAAGC,CAAK,CAAA,CAAA,EAClE,CAAA,CAAA,aAAA,CAACC,aAAAA,CAAU,OAAA,CAAV,CAAkB,SAAA,CAAWC,4BAAAA,CAAKP,CAAoBG,CAAS,CAAA,CAAG,KAAA,CAAOC,CAAAA,CAAQ,GAAGC,CAAAA,CAAM,CAAA,CAG7FH,CAAAA,CAAI,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-33AP6UFJ.cjs","sourcesContent":[null,"import * as React from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabProps } from './Tab.props';\n\nconst COMPONENT_NAME = 'Tab';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const Tab: React.FC<TabProps> = ({ className, value, ...rest }) => (\n <RadixTabs.Trigger className={clsx(componentClassName, className)} value={value} {...rest} />\n);\n\nTab.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{b as o}from"./chunk-JTQWB7E2.js";import*as t from"react";import m from"clsx";import{Tabs as p}from"radix-ui";var a="TabPanel",c=o(a),i=t.forwardRef((e,r)=>{let{className:s,...n}=e;return t.createElement(p.Content,{ref:r,className:m(c,s),...n})});i.displayName=a;export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-3BHHP2YV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/TabContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabContentProps } from './TabContent.props';\n\nconst COMPONENT_NAME = 'TabPanel';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const TabContent = React.forwardRef<HTMLDivElement, TabContentProps>((props, ref) => {\n const { className, ...rest } = props;\n return <RadixTabs.Content ref={ref} className={clsx(componentClassName, className)} {...rest} />;\n});\n\nTabContent.displayName = COMPONENT_NAME;\n"],"mappings":"wCAAA,UAAYA,MAAW,QACvB,OAAOC,MAAU,OACjB,OAAS,QAAQC,MAAiB,WAIlC,IAAMC,EAAiB,WACjBC,EAAqBC,EAAiBF,CAAc,EAE7CG,EAAmB,aAA4C,CAACC,EAAOC,IAAQ,CAC1F,GAAM,CAAE,UAAAC,EAAW,GAAGC,CAAK,EAAIH,EAC/B,OAAO,gBAACI,EAAU,QAAV,CAAkB,IAAKH,EAAK,UAAWI,EAAKR,EAAoBK,CAAS,EAAI,GAAGC,EAAM,CAChG,CAAC,EAEDJ,EAAW,YAAcH","names":["React","clsx","RadixTabs","COMPONENT_NAME","componentClassName","withGlobalPrefix","TabContent","props","ref","className","rest","RadixTabs","clsx"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/Tabs.props.ts"],"names":["sizes","tabsPropDefs"],"mappings":"AAIA,6EAAMA,CAAAA,CAAQ,CAAC,IAAA,CAAM,IAAI,CAAA,CAEZC,CAAAA,aAAe,CAC1B,IAAA,CAAM,CAAE,SAAA,CAAW,MAAA,CAAQ,MAAA,CAAQD,CAAAA,CAAO,UAAA,CAAY,CAAA,CAAA,CAAM,OAAA,CAAS,IAAK,CAC5E,CAAA,CAAA,cAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-6CNWAXC3.cjs","sourcesContent":["import { Tabs as RadixTabs } from 'radix-ui';\nimport { PropDef } from '../../props/prop-def';\nimport { Responsive } from '../../types/responsive';\n\nconst sizes = ['md', 'lg'] as const;\n\nexport const tabsPropDefs = {\n size: { className: 'size', tokens: sizes, responsive: true, default: 'md' },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n};\n\nexport interface TabsProps extends Omit<RadixTabs.TabsProps, 'asChild' | 'dir' | 'orientation'> {\n /** Size variant */\n size?: Responsive<(typeof sizes)[number]>;\n /** Activation mode for tabs */\n activationMode?: 'automatic' | 'manual';\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var t = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var a="TabPanel",c=_chunk5AK4QM2Gcjs.b.call(void 0, a),i= exports.a =t.forwardRef((e,r)=>{let{className:s,...n}=e;return t.createElement(_radixui.Tabs.Content,{ref:r,className:_clsx2.default.call(void 0, c,s),...n})});i.displayName=a;exports.a = i;
|
|
2
|
+
//# sourceMappingURL=chunk-AL6UTVKT.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-AL6UTVKT.cjs","../src/components/Tabs/TabContent.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","TabContent","props","ref","className","rest","RadixTabs","clsx"],"mappings":"AAAA,mfAAwC,uECAjB,wEACN,mCACiB,IAI5BA,CAAAA,CAAiB,UAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAE7CC,CAAAA,aAAmB,CAAA,CAAA,UAAA,CAA4C,CAACC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CAC1F,GAAM,CAAE,SAAA,CAAAC,CAAAA,CAAW,GAAGC,CAAK,CAAA,CAAIH,CAAAA,CAC/B,OAAO,CAAA,CAAA,aAAA,CAACI,aAAAA,CAAU,OAAA,CAAV,CAAkB,GAAA,CAAKH,CAAAA,CAAK,SAAA,CAAWI,4BAAAA,CAAKR,CAAoBK,CAAS,CAAA,CAAI,GAAGC,CAAAA,CAAM,CAChG,CAAC,CAAA,CAEDJ,CAAAA,CAAW,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-AL6UTVKT.cjs","sourcesContent":[null,"import * as React from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabContentProps } from './TabContent.props';\n\nconst COMPONENT_NAME = 'TabPanel';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const TabContent = React.forwardRef<HTMLDivElement, TabContentProps>((props, ref) => {\n const { className, ...rest } = props;\n return <RadixTabs.Content ref={ref} className={clsx(componentClassName, className)} {...rest} />;\n});\n\nTabContent.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var r = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var S="TabsList",o=_chunk5AK4QM2Gcjs.b.call(void 0, S),A= exports.a =({className:R,children:g,...I})=>{let u=_react.useRef.call(void 0, null),c=_react.useRef.call(void 0, null),[C,N]=_react.useState.call(void 0, 0),[x,y]=_react.useState.call(void 0, 0),[m,W]=_react.useState.call(void 0, !1),[v,w]=_react.useState.call(void 0, !1),a=_react.useCallback.call(void 0, ()=>{let e=u.current;if(!e)return;let t=e.querySelector('.hearth-Tab[data-state="active"]');t&&(N(t.offsetLeft),y(t.offsetWidth))},[]),l=_react.useCallback.call(void 0, ()=>{let e=c.current;if(!e)return;let t=e.scrollWidth>e.clientWidth+1,n=t&&e.scrollLeft>0,s=t&&e.scrollLeft+e.clientWidth<e.scrollWidth-1;W(n),w(s)},[]);_react.useLayoutEffect.call(void 0, ()=>{a(),l();let e=u.current,t=c.current;if(!e&&!t)return;let n=new ResizeObserver(()=>{a(),l()});e&&n.observe(e),t&&n.observe(t);let s=new MutationObserver(()=>{a(),l()});e&&s.observe(e,{subtree:!0,attributes:!0,attributeFilter:["data-state"],childList:!0});let b=()=>l();return _optionalChain([t, 'optionalAccess', _ => _.addEventListener, 'call', _2 => _2("scroll",b,{passive:!0})]),()=>{n.disconnect(),s.disconnect(),_optionalChain([t, 'optionalAccess', _3 => _3.removeEventListener, 'call', _4 => _4("scroll",b)])}},[a,l]);let d=_react.useCallback.call(void 0, e=>{let t=c.current;if(!t)return;let n=t.clientWidth*.6,s=Math.max(0,Math.min(t.scrollLeft+e*n,t.scrollWidth-t.clientWidth));t.scrollTo({left:s,behavior:"smooth"})},[]),E=_react.useCallback.call(void 0, ()=>d(-1),[d]),$=_react.useCallback.call(void 0, ()=>d(1),[d]);return r.createElement(_radixui.Tabs.List,{className:_clsx2.default.call(void 0, o,R),...I},m?r.createElement("div",{className:`${o}ScrollButtonLeft`,"aria-hidden":!0},r.createElement(_chunkSNOFZS77cjs.a,{label:"scroll left",tabIndex:-1,onClick:E},r.createElement(_hearthreacticons.ChevronLeftSmallIcon,null))):null,r.createElement("div",{className:_clsx2.default.call(void 0, `${o}Scroll`,{[`${o}Scroll-with-left`]:m,[`${o}Scroll-with-right`]:v}),ref:c},r.createElement("div",{className:`${o}Container`,ref:u},g,r.createElement("div",{className:`${o}Indicator`,style:{transform:`translateX(${C}px)`,width:`${x}px`}}))),v?r.createElement("div",{className:`${o}ScrollButtonRight`,"aria-hidden":!0},r.createElement(_chunkSNOFZS77cjs.a,{label:"scroll right",tabIndex:-1,onClick:$},r.createElement(_hearthreacticons.ChevronRightSmallIcon,null))):null)};A.displayName=S;exports.a = A;
|
|
2
|
+
//# sourceMappingURL=chunk-BUXP6LBE.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-BUXP6LBE.cjs","../src/components/Tabs/TabsList.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","TabsList","className","children","rest","containerRef","useRef","scrollRef","activeTabIndicatorX","setActiveTabIndicatorX","useState","activeTabIndicatorWidth","setActiveTabIndicatorWidth","canScrollLeft","setCanScrollLeft","canScrollRight","setCanScrollRight","updateIndicator","useCallback","container","activeTrigger","checkOverflow","el","overflow","canLeft","canRight","useLayoutEffect","scrollEl","resizeObserver","mutationObserver","onScroll","scrollBy","direction","step","target","handleScrollLeft","handleScrollRight","RadixTabs","clsx"],"mappings":"AAAA,u/BAAwC,wDAAyC,uECA1D,wEAEN,mCACiB,wEAG0B,IAGtDA,CAAAA,CAAiB,UAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAE7CC,CAAAA,aAAoC,CAAC,CAAE,SAAA,CAAAC,CAAAA,CAAW,QAAA,CAAAC,CAAAA,CAAU,GAAGC,CAAK,CAAA,CAAA,EAAM,CACrF,IAAMC,CAAAA,CAAeC,2BAAAA,IAAkC,CAAA,CACjDC,CAAAA,CAAYD,2BAAAA,IAAkC,CAAA,CAG9C,CAACE,CAAAA,CAAqBC,CAAsB,CAAA,CAAIC,6BAAAA,CAAU,CAAA,CAC1D,CAACC,CAAAA,CAAyBC,CAA0B,CAAA,CAAIF,6BAAAA,CAAU,CAAA,CAGlE,CAACG,CAAAA,CAAeC,CAAgB,CAAA,CAAIJ,6BAAAA,CAAS,CAAK,CAAA,CAClD,CAACK,CAAAA,CAAgBC,CAAiB,CAAA,CAAIN,6BAAAA,CAAS,CAAK,CAAA,CAGpDO,CAAAA,CAAkBC,gCAAAA,CAAY,CAAA,EAAM,CACxC,IAAMC,CAAAA,CAAYd,CAAAA,CAAa,OAAA,CAC/B,EAAA,CAAI,CAACc,CAAAA,CAAW,MAAA,CAEhB,IAAMC,CAAAA,CAAgBD,CAAAA,CAAU,aAAA,CAA2B,kCAAkC,CAAA,CACxFC,CAAAA,EAAAA,CAELX,CAAAA,CAAuBW,CAAAA,CAAc,UAAU,CAAA,CAC/CR,CAAAA,CAA2BQ,CAAAA,CAAc,WAAW,CAAA,CACtD,CAAA,CAAG,CAAC,CAAC,CAAA,CAGCC,CAAAA,CAAgBH,gCAAAA,CAAY,CAAA,EAAM,CACtC,IAAMI,CAAAA,CAAKf,CAAAA,CAAU,OAAA,CACrB,EAAA,CAAI,CAACe,CAAAA,CAAI,MAAA,CAET,IAAMC,CAAAA,CAAWD,CAAAA,CAAG,WAAA,CAAcA,CAAAA,CAAG,WAAA,CAAc,CAAA,CAC7CE,CAAAA,CAAUD,CAAAA,EAAYD,CAAAA,CAAG,UAAA,CAAa,CAAA,CACtCG,CAAAA,CAAWF,CAAAA,EAAYD,CAAAA,CAAG,UAAA,CAAaA,CAAAA,CAAG,WAAA,CAAcA,CAAAA,CAAG,WAAA,CAAc,CAAA,CAE/ER,CAAAA,CAAiBU,CAAO,CAAA,CACxBR,CAAAA,CAAkBS,CAAQ,CAC5B,CAAA,CAAG,CAAC,CAAC,CAAA,CAGLC,oCAAAA,CAAgB,CAAA,EAAM,CACpBT,CAAAA,CAAgB,CAAA,CAChBI,CAAAA,CAAc,CAAA,CAEd,IAAMF,CAAAA,CAAYd,CAAAA,CAAa,OAAA,CACzBsB,CAAAA,CAAWpB,CAAAA,CAAU,OAAA,CAC3B,EAAA,CAAI,CAACY,CAAAA,EAAa,CAACQ,CAAAA,CAAU,MAAA,CAG7B,IAAMC,CAAAA,CAAiB,IAAI,cAAA,CAAe,CAAA,CAAA,EAAM,CAC9CX,CAAAA,CAAgB,CAAA,CAChBI,CAAAA,CAAc,CAChB,CAAC,CAAA,CAEGF,CAAAA,EAAWS,CAAAA,CAAe,OAAA,CAAQT,CAAS,CAAA,CAC3CQ,CAAAA,EAAUC,CAAAA,CAAe,OAAA,CAAQD,CAAQ,CAAA,CAG7C,IAAME,CAAAA,CAAmB,IAAI,gBAAA,CAAiB,CAAA,CAAA,EAAM,CAClDZ,CAAAA,CAAgB,CAAA,CAChBI,CAAAA,CAAc,CAChB,CAAC,CAAA,CAEGF,CAAAA,EACFU,CAAAA,CAAiB,OAAA,CAAQV,CAAAA,CAAW,CAClC,OAAA,CAAS,CAAA,CAAA,CACT,UAAA,CAAY,CAAA,CAAA,CACZ,eAAA,CAAiB,CAAC,YAAY,CAAA,CAC9B,SAAA,CAAW,CAAA,CACb,CAAC,CAAA,CAIH,IAAMW,CAAAA,CAAW,CAAA,CAAA,EAAMT,CAAAA,CAAc,CAAA,CACrC,uBAAAM,CAAAA,2BAAU,gBAAA,mBAAiB,QAAA,CAAUG,CAAAA,CAAU,CAAE,OAAA,CAAS,CAAA,CAAK,CAAC,GAAA,CAEzD,CAAA,CAAA,EAAM,CACXF,CAAAA,CAAe,UAAA,CAAW,CAAA,CAC1BC,CAAAA,CAAiB,UAAA,CAAW,CAAA,iBAC5BF,CAAAA,6BAAU,mBAAA,mBAAoB,QAAA,CAAUG,CAAQ,GAClD,CACF,CAAA,CAAG,CAACb,CAAAA,CAAiBI,CAAa,CAAC,CAAA,CAGnC,IAAMU,CAAAA,CAAWb,gCAAAA,CAAac,EAAsB,CAClD,IAAMV,CAAAA,CAAKf,CAAAA,CAAU,OAAA,CACrB,EAAA,CAAI,CAACe,CAAAA,CAAI,MAAA,CAET,IAAMW,CAAAA,CAAOX,CAAAA,CAAG,WAAA,CAAc,EAAA,CACxBY,CAAAA,CAAS,IAAA,CAAK,GAAA,CAClB,CAAA,CACA,IAAA,CAAK,GAAA,CAAIZ,CAAAA,CAAG,UAAA,CAAaU,CAAAA,CAAYC,CAAAA,CAAMX,CAAAA,CAAG,WAAA,CAAcA,CAAAA,CAAG,WAAW,CAC5E,CAAA,CACAA,CAAAA,CAAG,QAAA,CAAS,CAAE,IAAA,CAAMY,CAAAA,CAAQ,QAAA,CAAU,QAAS,CAAC,CAClD,CAAA,CAAG,CAAC,CAAC,CAAA,CAECC,CAAAA,CAAmBjB,gCAAAA,CAAY,CAAA,EAAMa,CAAAA,CAAS,CAAA,CAAE,CAAA,CAAG,CAACA,CAAQ,CAAC,CAAA,CAC7DK,CAAAA,CAAoBlB,gCAAAA,CAAY,CAAA,EAAMa,CAAAA,CAAS,CAAC,CAAA,CAAG,CAACA,CAAQ,CAAC,CAAA,CAEnE,OACE,CAAA,CAAA,aAAA,CAACM,aAAAA,CAAU,IAAA,CAAV,CAAe,SAAA,CAAWC,4BAAAA,CAAKvC,CAAoBG,CAAS,CAAA,CAAI,GAAGE,CAAAA,CAAAA,CACjES,CAAAA,CACC,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-BUXP6LBE.cjs","sourcesContent":[null,"import * as React from 'react';\nimport { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabsListProps } from './TabsList.props';\nimport { ChevronLeftSmallIcon, ChevronRightSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\n\nconst COMPONENT_NAME = 'TabsList';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const TabsList: React.FC<TabsListProps> = ({ className, children, ...rest }) => {\n const containerRef = useRef<HTMLDivElement | null>(null);\n const scrollRef = useRef<HTMLDivElement | null>(null);\n\n // Underline indicator that animates to match the active tab trigger\n const [activeTabIndicatorX, setActiveTabIndicatorX] = useState(0);\n const [activeTabIndicatorWidth, setActiveTabIndicatorWidth] = useState(0);\n\n // Whether horizontal scroll icons should be shown\n const [canScrollLeft, setCanScrollLeft] = useState(false);\n const [canScrollRight, setCanScrollRight] = useState(false);\n\n // Sync indicator position/size to the current active tab trigger\n const updateIndicator = useCallback(() => {\n const container = containerRef.current;\n if (!container) return;\n\n const activeTrigger = container.querySelector<HTMLElement>('.hearth-Tab[data-state=\"active\"]');\n if (!activeTrigger) return;\n\n setActiveTabIndicatorX(activeTrigger.offsetLeft);\n setActiveTabIndicatorWidth(activeTrigger.offsetWidth);\n }, []);\n\n // Compute overflow and whether we can scroll left/right to show scroll icons\n const checkOverflow = useCallback(() => {\n const el = scrollRef.current;\n if (!el) return;\n\n const overflow = el.scrollWidth > el.clientWidth + 1;\n const canLeft = overflow && el.scrollLeft > 0;\n const canRight = overflow && el.scrollLeft + el.clientWidth < el.scrollWidth - 1;\n\n setCanScrollLeft(canLeft);\n setCanScrollRight(canRight);\n }, []);\n\n // Keep indicator and scroll buttons in sync with DOM/layout changes\n useLayoutEffect(() => {\n updateIndicator();\n checkOverflow();\n\n const container = containerRef.current;\n const scrollEl = scrollRef.current;\n if (!container && !scrollEl) return;\n\n // Watch size changes (container and scroll viewport)\n const resizeObserver = new ResizeObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) resizeObserver.observe(container);\n if (scrollEl) resizeObserver.observe(scrollEl);\n\n // Watch DOM mutations that can affect which tab is active or present\n const mutationObserver = new MutationObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) {\n mutationObserver.observe(container, {\n subtree: true,\n attributes: true,\n attributeFilter: ['data-state'],\n childList: true,\n });\n }\n\n // Update scroll icons as the user scrolls\n const onScroll = () => checkOverflow();\n scrollEl?.addEventListener('scroll', onScroll, { passive: true });\n\n return () => {\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n scrollEl?.removeEventListener('scroll', onScroll);\n };\n }, [updateIndicator, checkOverflow]);\n\n // Smoothly scroll the tab section by ~60% of the viewport width\n const scrollBy = useCallback((direction: 1 | -1) => {\n const el = scrollRef.current;\n if (!el) return;\n\n const step = el.clientWidth * 0.6;\n const target = Math.max(\n 0,\n Math.min(el.scrollLeft + direction * step, el.scrollWidth - el.clientWidth)\n );\n el.scrollTo({ left: target, behavior: 'smooth' });\n }, []);\n\n const handleScrollLeft = useCallback(() => scrollBy(-1), [scrollBy]);\n const handleScrollRight = useCallback(() => scrollBy(1), [scrollBy]);\n\n return (\n <RadixTabs.List className={clsx(componentClassName, className)} {...rest}>\n {canScrollLeft ? (\n <div className={`${componentClassName}ScrollButtonLeft`} aria-hidden>\n <UnstyledIconButton label=\"scroll left\" tabIndex={-1} onClick={handleScrollLeft}>\n <ChevronLeftSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n <div\n className={clsx(`${componentClassName}Scroll`, {\n [`${componentClassName}Scroll-with-left`]: canScrollLeft,\n [`${componentClassName}Scroll-with-right`]: canScrollRight,\n })}\n ref={scrollRef}\n >\n <div className={`${componentClassName}Container`} ref={containerRef}>\n {children}\n <div\n className={`${componentClassName}Indicator`}\n // Animated underline: position and width driven by active trigger\n style={{\n transform: `translateX(${activeTabIndicatorX}px)`,\n width: `${activeTabIndicatorWidth}px`,\n }}\n />\n </div>\n </div>\n {canScrollRight ? (\n <div className={`${componentClassName}ScrollButtonRight`} aria-hidden>\n <UnstyledIconButton label=\"scroll right\" tabIndex={-1} onClick={handleScrollRight}>\n <ChevronRightSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n </RadixTabs.List>\n );\n};\n\nTabsList.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as n}from"./chunk-TYEQVZWY.js";import{a as f}from"./chunk-XFPVC65O.js";import{a as m}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as n}from"./chunk-TYEQVZWY.js";import{a as f}from"./chunk-XFPVC65O.js";import{a as m}from"./chunk-OSYFJRSS.js";import{a as u}from"./chunk-6EBW3DKV.js";import{b as p}from"./chunk-JTQWB7E2.js";import d from"clsx";import t from"react";import{CloseSmallIcon as y,SearchMediumIcon as E}from"@utilitywarehouse/hearth-react-icons";var c="SearchInput",T=p(c),b=t.forwardRef(({className:i,disabled:l,value:o,onClear:r,loading:s,...a},I)=>{let h=t.useRef(null),e=I||h,S=t.useCallback(x=>{typeof r!="function"||x.button!==0||(r(),e&&typeof e=="object"&&e.current&&e.current.focus())},[e,r]);return t.createElement(f,{ref:e,className:d(T,i),type:"search",role:"search",enterKeyHint:"search",disabled:l,hideLabel:!0,value:o,...a},t.createElement(n,{placement:"prefix"},t.createElement(E,null)),s?t.createElement(n,{placement:"suffix"},t.createElement(u,{size:"xs",color:"primary"})):null,o!==void 0&&String(o).length>0?t.createElement(n,{placement:"suffix"},t.createElement(m,{type:"button",label:"clear search",onClick:S,disabled:l},t.createElement(y,null))):null)});b.displayName=c;export{b as a};
|
|
2
|
+
//# sourceMappingURL=chunk-C74Y2OZV.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{b as a}from"./chunk-JTQWB7E2.js";import*as o from"react";import p from"clsx";import{Tabs as e}from"radix-ui";var r="Tab",i=a(r),T=({className:s,value:m,...t})=>o.createElement(e.Trigger,{className:p(i,s),value:m,...t});T.displayName=r;export{T as a};
|
|
2
|
+
//# sourceMappingURL=chunk-CAMD4TVE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/Tab.tsx"],"sourcesContent":["import * as React from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabProps } from './Tab.props';\n\nconst COMPONENT_NAME = 'Tab';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const Tab: React.FC<TabProps> = ({ className, value, ...rest }) => (\n <RadixTabs.Trigger className={clsx(componentClassName, className)} value={value} {...rest} />\n);\n\nTab.displayName = COMPONENT_NAME;\n"],"mappings":"wCAAA,UAAYA,MAAW,QACvB,OAAOC,MAAU,OACjB,OAAS,QAAQC,MAAiB,WAIlC,IAAMC,EAAiB,MACjBC,EAAqBC,EAAiBF,CAAc,EAE7CG,EAA0B,CAAC,CAAE,UAAAC,EAAW,MAAAC,EAAO,GAAGC,CAAK,IAClE,gBAACC,EAAU,QAAV,CAAkB,UAAWC,EAAKP,EAAoBG,CAAS,EAAG,MAAOC,EAAQ,GAAGC,EAAM,EAG7FH,EAAI,YAAcH","names":["React","clsx","RadixTabs","COMPONENT_NAME","componentClassName","withGlobalPrefix","Tab","className","value","rest","RadixTabs","clsx"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunk6CNWAXC3cjs = require('./chunk-6CNWAXC3.cjs');var _chunk4HAN4WSZcjs = require('./chunk-4HAN4WSZ.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var t = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var s="Tabs",b=_chunk5AK4QM2Gcjs.b.call(void 0, s),l= exports.a =t.forwardRef((r,m)=>{let{className:p,activationMode:i="automatic",...c}=_chunk4HAN4WSZcjs.a.call(void 0, r,_chunk6CNWAXC3cjs.a);return t.createElement(_radixui.Tabs.Root,{ref:m,className:_clsx2.default.call(void 0, b,p),activationMode:i,...c})});l.displayName=s;exports.a = l;
|
|
2
|
+
//# sourceMappingURL=chunk-CBNYX6DN.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-CBNYX6DN.cjs","../src/components/Tabs/Tabs.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Tabs","props","ref","className","activationMode","tabsProps","extractProps","tabsPropDefs","RadixTabs","clsx"],"mappings":"AAAA,mfAAwC,wDAAoC,wDAAyC,uECA9F,wEACN,mCAEiB,IAK5BA,CAAAA,CAAiB,MAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAI7CC,CAAAA,aAAa,CAAA,CAAA,UAAA,CAAmC,CAACC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CAC3E,GAAM,CACJ,SAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CAAiB,WAAA,CACjB,GAAGC,CACL,CAAA,CAAIC,iCAAAA,CAAaL,CAAOM,mBAAY,CAAA,CAEpC,OACE,CAAA,CAAA,aAAA,CAACC,aAAAA,CAAU,IAAA,CAAV,CACC,GAAA,CAAKN,CAAAA,CACL,SAAA,CAAWO,4BAAAA,CAAKX,CAAoBK,CAAS,CAAA,CAC7C,cAAA,CAAgBC,CAAAA,CACf,GAAGC,CAAAA,CACN,CAEJ,CAAC,CAAA,CAEDL,CAAAA,CAAK,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-CBNYX6DN.cjs","sourcesContent":[null,"import * as React from 'react';\nimport clsx from 'clsx';\nimport type { ElementRef } from 'react';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { tabsPropDefs, type TabsProps } from './Tabs.props';\n\nconst COMPONENT_NAME = 'Tabs';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype TabsElement = ElementRef<'div'>;\n\nexport const Tabs = React.forwardRef<TabsElement, TabsProps>((props, ref) => {\n const {\n className,\n activationMode = 'automatic',\n ...tabsProps\n } = extractProps(props, tabsPropDefs);\n\n return (\n <RadixTabs.Root\n ref={ref}\n className={clsx(componentClassName, className)}\n activationMode={activationMode}\n {...tabsProps}\n />\n );\n});\n\nTabs.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkFNQSPLEHcjs = require('./chunk-FNQSPLEH.cjs');var _chunk7DMSYUZVcjs = require('./chunk-7DMSYUZV.cjs');var _chunkETIIJRSFcjs = require('./chunk-ETIIJRSF.cjs');var _chunk4HAN4WSZcjs = require('./chunk-4HAN4WSZ.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _chunkA7QCHPE4cjs = require('./chunk-A7QCHPE4.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkFNQSPLEHcjs = require('./chunk-FNQSPLEH.cjs');var _chunk7DMSYUZVcjs = require('./chunk-7DMSYUZV.cjs');var _chunkETIIJRSFcjs = require('./chunk-ETIIJRSF.cjs');var _chunk4HAN4WSZcjs = require('./chunk-4HAN4WSZ.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _chunkA7QCHPE4cjs = require('./chunk-A7QCHPE4.cjs');var _chunkU44NFEY3cjs = require('./chunk-U44NFEY3.cjs');var _react = require('react'); var o = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var B="IconButton",z=_chunk5AK4QM2Gcjs.b.call(void 0, B),R= exports.a =o.forwardRef((t,f)=>{let{className:u,label:d,disabled:P,loading:n,children:r,asChild:e,...S}=_chunk4HAN4WSZcjs.a.call(void 0, t,_chunkFNQSPLEHcjs.a),b=_chunkA7QCHPE4cjs.a.call(void 0, t.size||"md",{md:"sm",sm:"xs"}),C=e?_radixui.Slot.Root:"button";return o.createElement(_chunk7DMSYUZVcjs.a,{ref:f,className:_clsx2.default.call(void 0, z,u),"aria-label":d,disabled:P||n,asChild:!0,...S},o.createElement(C,null,n?_chunkU44NFEY3cjs.a.call(void 0, {asChild:e,children:r},()=>o.createElement(_chunkETIIJRSFcjs.a,{size:b,currentColor:!0})):r))});R.displayName=B;exports.a = R;
|
|
2
|
+
//# sourceMappingURL=chunk-DGNL3EUT.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-DGNL3EUT.cjs","../src/components/IconButton/IconButton.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","IconButton","props","forwardedRef","className","label","disabled","loading","children","asChild","iconButtonProps","extractProps","iconButtonPropDefs","spinnerSize","getResponsiveSizeTranslation","Component","Slot","ButtonBase","clsx","getSubtree","Spinner"],"mappings":"AAAA,mfAAwC,wDAAyC,wDAAoC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,uECAlQ,wEAEN,mCASI,IAGfA,CAAAA,CAAiB,YAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAE7CC,CAAAA,aAAmB,CAAA,CAAA,UAAA,CAC9B,CAACC,CAAAA,CAAOC,CAAAA,CAAAA,EAAiB,CACvB,GAAM,CAAE,SAAA,CAAAC,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,QAAA,CAAAC,CAAAA,CAAU,OAAA,CAAAC,CAAAA,CAAS,QAAA,CAAAC,CAAAA,CAAU,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAgB,CAAA,CACjFC,iCAAAA,CAAaT,CAAOU,mBAAkB,CAAA,CAElCC,CAAAA,CAAcC,iCAAAA,CAA6BZ,CAAM,IAAA,EAAQ,IAAA,CAAM,CAAE,EAAA,CAAI,IAAA,CAAM,EAAA,CAAI,IAAK,CAAC,CAAA,CACrFa,CAAAA,CAAYN,CAAAA,CAAUO,aAAAA,CAAK,IAAA,CAAO,QAAA,CAExC,OACE,CAAA,CAAA,aAAA,CAACC,mBAAAA,CAAA,CACC,GAAA,CAAKd,CAAAA,CACL,SAAA,CAAWe,4BAAAA,CAAKnB,CAAoBK,CAAS,CAAA,CAC7C,YAAA,CAAYC,CAAAA,CACZ,QAAA,CAAUC,CAAAA,EAAYC,CAAAA,CACtB,OAAA,CAAO,CAAA,CAAA,CACN,GAAGG,CAAAA,CAAAA,CAEJ,CAAA,CAAA,aAAA,CAACK,CAAAA,CAAA,IAAA,CACER,CAAAA,CACGY,iCAAAA,CAAa,OAAA,CAAAV,CAAAA,CAAS,QAAA,CAAAD,CAAS,CAAA,CAAG,CAAA,CAAA,EAChC,CAAA,CAAA,aAAA,CAACY,mBAAAA,CAAA,CAAQ,IAAA,CAAMP,CAAAA,CAAqC,YAAA,CAAY,CAAA,CAAA,CAAC,CAClE,CAAA,CACDL,CACN,CACF,CAEJ,CACF,CAAA,CAEAP,CAAAA,CAAW,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-DGNL3EUT.cjs","sourcesContent":[null,"import * as React from 'react';\n\nimport clsx from 'clsx';\nimport { iconButtonPropDefs, IconButtonProps } from './IconButton.props';\nimport { ButtonBase } from '../ButtonBase/ButtonBase';\nimport type { ButtonBaseElement } from '../ButtonBase/ButtonBase';\nimport { extractProps } from '../../helpers/extract-props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { Spinner } from '../Spinner/Spinner';\nimport { getResponsiveSizeTranslation } from '../../helpers/get-responsive-size-translation';\nimport type { SpinnerProps } from '../Spinner/Spinner.props';\nimport { Slot } from 'radix-ui';\nimport { getSubtree } from '../../helpers/get-subtree';\n\nconst COMPONENT_NAME = 'IconButton';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const IconButton = React.forwardRef<ButtonBaseElement, IconButtonProps>(\n (props, forwardedRef) => {\n const { className, label, disabled, loading, children, asChild, ...iconButtonProps } =\n extractProps(props, iconButtonPropDefs);\n\n const spinnerSize = getResponsiveSizeTranslation(props.size || 'md', { md: 'sm', sm: 'xs' });\n const Component = asChild ? Slot.Root : 'button';\n\n return (\n <ButtonBase\n ref={forwardedRef}\n className={clsx(componentClassName, className)}\n aria-label={label}\n disabled={disabled || loading}\n asChild\n {...iconButtonProps}\n >\n <Component>\n {loading\n ? getSubtree({ asChild, children }, () => (\n <Spinner size={spinnerSize as SpinnerProps['size']} currentColor />\n ))\n : children}\n </Component>\n </ButtonBase>\n );\n }\n);\n\nIconButton.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkZ3IVUIU2cjs = require('./chunk-Z3IVUIU2.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkZ3IVUIU2cjs = require('./chunk-Z3IVUIU2.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _chunkU44NFEY3cjs = require('./chunk-U44NFEY3.cjs');var _react = require('react'); var e = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _radixui = require('radix-ui');var i="Container",m=_chunk5AK4QM2Gcjs.b.call(void 0, i),A= exports.a =e.forwardRef(({className:a,spacing:p,direction:s,alignItems:f,alignContent:l,justifyContent:c,wrap:C,gap:N,maxWidth:x,children:E,align:R="center",asChild:t,padding:P,paddingTop:d,paddingRight:y,paddingBottom:u,paddingLeft:F,paddingInline:b,paddingBlock:v,...w},M)=>{let O={spacing:p,direction:s,alignItems:f,alignContent:l,justifyContent:c,wrap:C,gap:N,maxWidth:x,padding:P,paddingTop:d,paddingRight:y,paddingBottom:u,paddingLeft:F,paddingInline:b,paddingBlock:v},S=t?_radixui.Slot.Root:"div";return e.createElement(_chunkZ3IVUIU2cjs.a,{ref:M,className:_clsx2.default.call(void 0, m,a),...w,justifyContent:R,asChild:!0},e.createElement(S,null,_chunkU44NFEY3cjs.a.call(void 0, {asChild:t,children:E},g=>e.createElement(_chunkZ3IVUIU2cjs.a,{className:`${m}Inner`,...O},g))))});A.displayName=i;exports.a = A;
|
|
2
|
+
//# sourceMappingURL=chunk-DHJWGC4W.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-DHJWGC4W.cjs","../src/components/Container/Container.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Container","className","spacing","direction","alignItems","alignContent","justifyContent","wrap","gap","maxWidth","children","align","asChild","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingInline","paddingBlock","props","ref","innerProps","Component","Slot","Flex","clsx","getSubtree"],"mappings":"AAAA,mfAAwC,wDAAyC,wDAAyC,uECAnG,wEACN,mCAKI,IAGfA,CAAAA,CAAiB,WAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAI7CC,CAAAA,aAAkB,CAAA,CAAA,UAAA,CAC7B,CACE,CACE,SAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,GAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CAAQ,QAAA,CACR,OAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CACAC,CAAAA,CAAAA,EACG,CACH,IAAMC,CAAAA,CAAa,CACjB,OAAA,CAAApB,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,cAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,GAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CAAAA,CACA,OAAA,CAAAI,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CACA,aAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CACF,CAAA,CACMI,CAAAA,CAAYX,CAAAA,CAAUY,aAAAA,CAAK,IAAA,CAAO,KAAA,CAExC,OACE,CAAA,CAAA,aAAA,CAACC,mBAAAA,CAAA,CACC,GAAA,CAAKJ,CAAAA,CACL,SAAA,CAAWK,4BAAAA,CAAK5B,CAAoBG,CAAS,CAAA,CAC5C,GAAGmB,CAAAA,CACJ,cAAA,CAAgBT,CAAAA,CAChB,OAAA,CAAO,CAAA,CAAA,CAAA,CAEP,CAAA,CAAA,aAAA,CAACY,CAAAA,CAAA,IAAA,CACEI,iCAAAA,CAAa,OAAA,CAAAf,CAAAA,CAAS,QAAA,CAAAF,CAAS,CAAA,CAAGA,CAAAA,EACjC,CAAA,CAAA,aAAA,CAACe,mBAAAA,CAAA,CAAK,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-DHJWGC4W.cjs","sourcesContent":[null,"import * as React from 'react';\nimport clsx from 'clsx';\nimport type { ElementRef } from 'react';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { ContainerProps } from './Container.props';\nimport { Flex } from '../Flex/Flex';\nimport { Slot } from 'radix-ui';\nimport { getSubtree } from '../../helpers/get-subtree';\n\nconst COMPONENT_NAME = 'Container';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype ContainerElement = ElementRef<'div'>;\n\nexport const Container = React.forwardRef<ContainerElement, ContainerProps>(\n (\n {\n className,\n spacing,\n direction,\n alignItems,\n alignContent,\n justifyContent,\n wrap,\n gap,\n maxWidth,\n children,\n align = 'center',\n asChild,\n padding,\n paddingTop,\n paddingRight,\n paddingBottom,\n paddingLeft,\n paddingInline,\n paddingBlock,\n ...props\n },\n ref\n ) => {\n const innerProps = {\n spacing,\n direction,\n alignItems,\n alignContent,\n justifyContent,\n wrap,\n gap,\n maxWidth,\n padding,\n paddingTop,\n paddingRight,\n paddingBottom,\n paddingLeft,\n paddingInline,\n paddingBlock,\n };\n const Component = asChild ? Slot.Root : 'div';\n\n return (\n <Flex\n ref={ref}\n className={clsx(componentClassName, className)}\n {...props}\n justifyContent={align}\n asChild\n >\n <Component>\n {getSubtree({ asChild, children }, children => (\n <Flex className={`${componentClassName}Inner`} {...innerProps}>\n {children}\n </Flex>\n ))}\n </Component>\n </Flex>\n );\n }\n);\n\nContainer.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as l}from"./chunk-X5H7DCWE.js";import{a as p}from"./chunk-UBGLNSJY.js";import{a}from"./chunk-6EBW3DKV.js";import{a as i}from"./chunk-P3SXCN4J.js";import{b as s}from"./chunk-JTQWB7E2.js";import{a as c}from"./chunk-BPLBZ4OW.js";import{a as m}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as l}from"./chunk-X5H7DCWE.js";import{a as p}from"./chunk-UBGLNSJY.js";import{a}from"./chunk-6EBW3DKV.js";import{a as i}from"./chunk-P3SXCN4J.js";import{b as s}from"./chunk-JTQWB7E2.js";import{a as c}from"./chunk-BPLBZ4OW.js";import{a as m}from"./chunk-PLVHBGPL.js";import*as o from"react";import N from"clsx";import{Slot as x}from"radix-ui";var B="IconButton",z=s(B),R=o.forwardRef((t,f)=>{let{className:u,label:d,disabled:P,loading:n,children:r,asChild:e,...S}=i(t,l),b=c(t.size||"md",{md:"sm",sm:"xs"}),C=e?x.Root:"button";return o.createElement(p,{ref:f,className:N(z,u),"aria-label":d,disabled:P||n,asChild:!0,...S},o.createElement(C,null,n?m({asChild:e,children:r},()=>o.createElement(a,{size:b,currentColor:!0})):r))});R.displayName=B;export{R as a};
|
|
2
|
+
//# sourceMappingURL=chunk-EL6IHZSP.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as c}from"./chunk-BQPMK7UV.js";import{a as d}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as c}from"./chunk-BQPMK7UV.js";import{a as d}from"./chunk-OSYFJRSS.js";import{a as o}from"./chunk-2V3XMEZL.js";import{a as s}from"./chunk-HZKPLNEZ.js";import{a as m}from"./chunk-P3SXCN4J.js";import{b as a}from"./chunk-JTQWB7E2.js";import*as e from"react";import g from"clsx";import{CloseSmallIcon as h,InfoMediumIcon as I,TickCircleMediumIcon as E,WarningMediumIcon as p}from"@utilitywarehouse/hearth-react-icons";var f="Alert",t=a(f),P=e.forwardRef((u,x)=>{let y={info:I,positive:E,warning:p,danger:p},{children:C,className:v,colorScheme:r="info",onClose:i,text:l,title:n,...A}=m(u,s),N=y[r];return e.createElement("div",{ref:x,className:g(t,v),role:"alert","aria-live":"assertive","aria-atomic":"true","data-colorScheme":r,...A},e.createElement(N,{"aria-hidden":"true"}),e.createElement("div",{className:`${t}Content`},e.createElement(c,{direction:"column"},n?e.createElement(o,{as:"span",size:"md",weight:"semibold"},n):null,l?e.createElement(o,{as:"div"},l):null),C),i?e.createElement(d,{onClick:i,className:`${t}CloseButton`,title:"Close",label:"Close alert"},e.createElement(h,null)):null)});P.displayName=f;export{P as a};
|
|
2
|
+
//# sourceMappingURL=chunk-ESHTU5J4.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as h}from"./chunk-OSYFJRSS.js";import{b as L}from"./chunk-JTQWB7E2.js";import*as r from"react";import{useCallback as i,useLayoutEffect as M,useRef as p,useState as f}from"react";import T from"clsx";import{Tabs as O}from"radix-ui";import{ChevronLeftSmallIcon as B,ChevronRightSmallIcon as k}from"@utilitywarehouse/hearth-react-icons";var S="TabsList",o=L(S),A=({className:R,children:g,...I})=>{let u=p(null),c=p(null),[C,N]=f(0),[x,y]=f(0),[m,W]=f(!1),[v,w]=f(!1),a=i(()=>{let e=u.current;if(!e)return;let t=e.querySelector('.hearth-Tab[data-state="active"]');t&&(N(t.offsetLeft),y(t.offsetWidth))},[]),l=i(()=>{let e=c.current;if(!e)return;let t=e.scrollWidth>e.clientWidth+1,n=t&&e.scrollLeft>0,s=t&&e.scrollLeft+e.clientWidth<e.scrollWidth-1;W(n),w(s)},[]);M(()=>{a(),l();let e=u.current,t=c.current;if(!e&&!t)return;let n=new ResizeObserver(()=>{a(),l()});e&&n.observe(e),t&&n.observe(t);let s=new MutationObserver(()=>{a(),l()});e&&s.observe(e,{subtree:!0,attributes:!0,attributeFilter:["data-state"],childList:!0});let b=()=>l();return t?.addEventListener("scroll",b,{passive:!0}),()=>{n.disconnect(),s.disconnect(),t?.removeEventListener("scroll",b)}},[a,l]);let d=i(e=>{let t=c.current;if(!t)return;let n=t.clientWidth*.6,s=Math.max(0,Math.min(t.scrollLeft+e*n,t.scrollWidth-t.clientWidth));t.scrollTo({left:s,behavior:"smooth"})},[]),E=i(()=>d(-1),[d]),$=i(()=>d(1),[d]);return r.createElement(O.List,{className:T(o,R),...I},m?r.createElement("div",{className:`${o}ScrollButtonLeft`,"aria-hidden":!0},r.createElement(h,{label:"scroll left",tabIndex:-1,onClick:E},r.createElement(B,null))):null,r.createElement("div",{className:T(`${o}Scroll`,{[`${o}Scroll-with-left`]:m,[`${o}Scroll-with-right`]:v}),ref:c},r.createElement("div",{className:`${o}Container`,ref:u},g,r.createElement("div",{className:`${o}Indicator`,style:{transform:`translateX(${C}px)`,width:`${x}px`}}))),v?r.createElement("div",{className:`${o}ScrollButtonRight`,"aria-hidden":!0},r.createElement(h,{label:"scroll right",tabIndex:-1,onClick:$},r.createElement(k,null))):null)};A.displayName=S;export{A as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GDU5LSVU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/TabsList.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport type { TabsListProps } from './TabsList.props';\nimport { ChevronLeftSmallIcon, ChevronRightSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\n\nconst COMPONENT_NAME = 'TabsList';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport const TabsList: React.FC<TabsListProps> = ({ className, children, ...rest }) => {\n const containerRef = useRef<HTMLDivElement | null>(null);\n const scrollRef = useRef<HTMLDivElement | null>(null);\n\n // Underline indicator that animates to match the active tab trigger\n const [activeTabIndicatorX, setActiveTabIndicatorX] = useState(0);\n const [activeTabIndicatorWidth, setActiveTabIndicatorWidth] = useState(0);\n\n // Whether horizontal scroll icons should be shown\n const [canScrollLeft, setCanScrollLeft] = useState(false);\n const [canScrollRight, setCanScrollRight] = useState(false);\n\n // Sync indicator position/size to the current active tab trigger\n const updateIndicator = useCallback(() => {\n const container = containerRef.current;\n if (!container) return;\n\n const activeTrigger = container.querySelector<HTMLElement>('.hearth-Tab[data-state=\"active\"]');\n if (!activeTrigger) return;\n\n setActiveTabIndicatorX(activeTrigger.offsetLeft);\n setActiveTabIndicatorWidth(activeTrigger.offsetWidth);\n }, []);\n\n // Compute overflow and whether we can scroll left/right to show scroll icons\n const checkOverflow = useCallback(() => {\n const el = scrollRef.current;\n if (!el) return;\n\n const overflow = el.scrollWidth > el.clientWidth + 1;\n const canLeft = overflow && el.scrollLeft > 0;\n const canRight = overflow && el.scrollLeft + el.clientWidth < el.scrollWidth - 1;\n\n setCanScrollLeft(canLeft);\n setCanScrollRight(canRight);\n }, []);\n\n // Keep indicator and scroll buttons in sync with DOM/layout changes\n useLayoutEffect(() => {\n updateIndicator();\n checkOverflow();\n\n const container = containerRef.current;\n const scrollEl = scrollRef.current;\n if (!container && !scrollEl) return;\n\n // Watch size changes (container and scroll viewport)\n const resizeObserver = new ResizeObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) resizeObserver.observe(container);\n if (scrollEl) resizeObserver.observe(scrollEl);\n\n // Watch DOM mutations that can affect which tab is active or present\n const mutationObserver = new MutationObserver(() => {\n updateIndicator();\n checkOverflow();\n });\n\n if (container) {\n mutationObserver.observe(container, {\n subtree: true,\n attributes: true,\n attributeFilter: ['data-state'],\n childList: true,\n });\n }\n\n // Update scroll icons as the user scrolls\n const onScroll = () => checkOverflow();\n scrollEl?.addEventListener('scroll', onScroll, { passive: true });\n\n return () => {\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n scrollEl?.removeEventListener('scroll', onScroll);\n };\n }, [updateIndicator, checkOverflow]);\n\n // Smoothly scroll the tab section by ~60% of the viewport width\n const scrollBy = useCallback((direction: 1 | -1) => {\n const el = scrollRef.current;\n if (!el) return;\n\n const step = el.clientWidth * 0.6;\n const target = Math.max(\n 0,\n Math.min(el.scrollLeft + direction * step, el.scrollWidth - el.clientWidth)\n );\n el.scrollTo({ left: target, behavior: 'smooth' });\n }, []);\n\n const handleScrollLeft = useCallback(() => scrollBy(-1), [scrollBy]);\n const handleScrollRight = useCallback(() => scrollBy(1), [scrollBy]);\n\n return (\n <RadixTabs.List className={clsx(componentClassName, className)} {...rest}>\n {canScrollLeft ? (\n <div className={`${componentClassName}ScrollButtonLeft`} aria-hidden>\n <UnstyledIconButton label=\"scroll left\" tabIndex={-1} onClick={handleScrollLeft}>\n <ChevronLeftSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n <div\n className={clsx(`${componentClassName}Scroll`, {\n [`${componentClassName}Scroll-with-left`]: canScrollLeft,\n [`${componentClassName}Scroll-with-right`]: canScrollRight,\n })}\n ref={scrollRef}\n >\n <div className={`${componentClassName}Container`} ref={containerRef}>\n {children}\n <div\n className={`${componentClassName}Indicator`}\n // Animated underline: position and width driven by active trigger\n style={{\n transform: `translateX(${activeTabIndicatorX}px)`,\n width: `${activeTabIndicatorWidth}px`,\n }}\n />\n </div>\n </div>\n {canScrollRight ? (\n <div className={`${componentClassName}ScrollButtonRight`} aria-hidden>\n <UnstyledIconButton label=\"scroll right\" tabIndex={-1} onClick={handleScrollRight}>\n <ChevronRightSmallIcon />\n </UnstyledIconButton>\n </div>\n ) : null}\n </RadixTabs.List>\n );\n};\n\nTabsList.displayName = COMPONENT_NAME;\n"],"mappings":"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","names":["React","useCallback","useLayoutEffect","useRef","useState","clsx","RadixTabs","ChevronLeftSmallIcon","ChevronRightSmallIcon","COMPONENT_NAME","componentClassName","withGlobalPrefix","TabsList","className","children","rest","containerRef","useRef","scrollRef","activeTabIndicatorX","setActiveTabIndicatorX","useState","activeTabIndicatorWidth","setActiveTabIndicatorWidth","canScrollLeft","setCanScrollLeft","canScrollRight","setCanScrollRight","updateIndicator","useCallback","container","activeTrigger","checkOverflow","el","overflow","canLeft","canRight","useLayoutEffect","scrollEl","resizeObserver","mutationObserver","onScroll","scrollBy","direction","step","target","handleScrollLeft","handleScrollRight","RadixTabs","clsx","UnstyledIconButton","ChevronLeftSmallIcon","ChevronRightSmallIcon"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as s}from"./chunk-BT6CFWJI.js";import{a as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as s}from"./chunk-BT6CFWJI.js";import{a as n}from"./chunk-OSYFJRSS.js";import{a as i}from"./chunk-M3BUOOAQ.js";import{a as r}from"./chunk-4H7PK4QP.js";import{a as d}from"./chunk-2V3XMEZL.js";import{b as t}from"./chunk-JTQWB7E2.js";import*as a from"react";import{Dialog as o}from"radix-ui";import y from"clsx";import{CloseMediumIcon as R}from"@utilitywarehouse/hearth-react-icons";var m="Modal",D=t(m),B=a.forwardRef(({className:c,image:e,forceMount:p,container:f,heading:h,description:M,hideCloseButton:v,fullScreen:C,children:N,...g},u)=>{let x={forceMount:p,container:f},l=!!e;return a.createElement(o.Portal,{...x},a.createElement(o.Overlay,{className:"hearth-Overlay"},a.createElement("div",{className:"hearth-ModalScroll"},a.createElement("div",{className:"hearth-ModalScrollPadding"},a.createElement(o.Content,{ref:u,className:y(D,c),"data-contains-image":l?"":void 0,"data-full-screen":C?"":void 0,...g},a.createElement("div",{className:"hearth-ModalOuterContainer"},a.createElement(s,null,a.createElement(n,{type:"button",label:"Close","data-visually-hidden":v?"":void 0,className:"hearth-ModalCloseIconButton"},a.createElement(R,null))),a.createElement("div",{className:"hearth-ModalInnerContainer"},l?a.createElement("div",{className:"hearth-ModalImage"},e):null,a.createElement("div",{className:"hearth-ModalHeader"},a.createElement(i,{asChild:!0},a.createElement(o.Title,{asChild:!0},a.createElement(r,{size:"lg"},h))),a.createElement(o.Description,{asChild:!0},a.createElement(d,{size:"md",as:"span"},M)))),N))))))});B.displayName=m;export{B as a};
|
|
2
|
+
//# sourceMappingURL=chunk-HJRHREYC.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkS5AHVYPDcjs = require('./chunk-S5AHVYPD.cjs');var _chunkFOJNI4AWcjs = require('./chunk-FOJNI4AW.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkS5AHVYPDcjs = require('./chunk-S5AHVYPD.cjs');var _chunkFOJNI4AWcjs = require('./chunk-FOJNI4AW.cjs');var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunkETIIJRSFcjs = require('./chunk-ETIIJRSF.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _react = require('react'); var _react2 = _interopRequireDefault(_react);var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var c="SearchInput",T=_chunk5AK4QM2Gcjs.b.call(void 0, c),b= exports.a =_react2.default.forwardRef(({className:i,disabled:l,value:o,onClear:r,loading:s,...a},I)=>{let h=_react2.default.useRef(null),e=I||h,S=_react2.default.useCallback(x=>{typeof r!="function"||x.button!==0||(r(),e&&typeof e=="object"&&e.current&&e.current.focus())},[e,r]);return _react2.default.createElement(_chunkFOJNI4AWcjs.a,{ref:e,className:_clsx2.default.call(void 0, T,i),type:"search",role:"search",enterKeyHint:"search",disabled:l,hideLabel:!0,value:o,...a},_react2.default.createElement(_chunkS5AHVYPDcjs.a,{placement:"prefix"},_react2.default.createElement(_hearthreacticons.SearchMediumIcon,null)),s?_react2.default.createElement(_chunkS5AHVYPDcjs.a,{placement:"suffix"},_react2.default.createElement(_chunkETIIJRSFcjs.a,{size:"xs",color:"primary"})):null,o!==void 0&&String(o).length>0?_react2.default.createElement(_chunkS5AHVYPDcjs.a,{placement:"suffix"},_react2.default.createElement(_chunkSNOFZS77cjs.a,{type:"button",label:"clear search",onClick:S,disabled:l},_react2.default.createElement(_hearthreacticons.CloseSmallIcon,null))):null)});b.displayName=c;exports.a = b;
|
|
2
|
+
//# sourceMappingURL=chunk-HTLSKUZO.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-HTLSKUZO.cjs","../src/components/SearchInput/SearchInput.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","SearchInput","React","className","disabled","value","onClear","loading","props","forwardedRef","defaultRef","inputRef","handleClear","event","TextInput","clsx","TextInputSlot","SearchMediumIcon","Spinner","UnstyledIconButton","CloseSmallIcon"],"mappings":"AAAA,iOAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wECE3L,4EACC,wEAM+B,IAE3CA,CAAAA,CAAiB,aAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAI7CC,CAAAA,aAAcC,eAAAA,CAAM,UAAA,CAC/B,CAAC,CAAE,SAAA,CAAAC,CAAAA,CAAW,QAAA,CAAAC,CAAAA,CAAU,KAAA,CAAAC,CAAAA,CAAO,OAAA,CAAAC,CAAAA,CAAS,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAAiB,CAC5E,IAAMC,CAAAA,CAAaR,eAAAA,CAAM,MAAA,CAAgC,IAAI,CAAA,CACvDS,CAAAA,CAAWF,CAAAA,EAAgBC,CAAAA,CAE3BE,CAAAA,CAAcV,eAAAA,CAAM,WAAA,CACvBW,CAAAA,EAA+C,CAC1C,OAAOP,CAAAA,EAAY,UAAA,EAAcO,CAAAA,CAAM,MAAA,GAAW,CAAA,EAAA,CAGtDP,CAAAA,CAAQ,CAAA,CAEJK,CAAAA,EAAY,OAAOA,CAAAA,EAAa,QAAA,EAAYA,CAAAA,CAAS,OAAA,EACvDA,CAAAA,CAAS,OAAA,CAAQ,KAAA,CAAM,CAAA,CAE3B,CAAA,CACA,CAACA,CAAAA,CAAUL,CAAO,CACpB,CAAA,CAEA,OACEJ,eAAAA,CAAA,aAAA,CAACY,mBAAAA,CAAA,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWI,4BAAAA,CAAKhB,CAAoBI,CAAS,CAAA,CAC7C,IAAA,CAAK,QAAA,CACL,IAAA,CAAK,QAAA,CACL,YAAA,CAAa,QAAA,CACb,QAAA,CAAUC,CAAAA,CACV,SAAA,CAAS,CAAA,CAAA,CACT,KAAA,CAAOC,CAAAA,CACN,GAAGG,CAAAA,CAAAA,CAEJN,eAAAA,CAAA,aAAA,CAACc,mBAAAA,CAAA,CAAc,SAAA,CAAU,QAAA,CAAA,CACvBd,eAAAA,CAAA,aAAA,CAACe,kCAAAA,CAAA,IAAiB,CACpB,CAAA,CACCV,CAAAA,CACCL,eAAAA,CAAA,aAAA,CAACc,mBAAAA,CAAA,CAAc,SAAA,CAAU,QAAA,CAAA,CACvBd,eAAAA,CAAA,aAAA,CAACgB,mBAAAA,CAAA,CAAQ,IAAA,CAAK,IAAA,CAAK,KAAA,CAAM,SAAA,CAAU,CACrC,CAAA,CACE,IAAA,CACHb,CAAAA,GAAU,KAAA,CAAA,EAAa,MAAA,CAAOA,CAAK,CAAA,CAAE,MAAA,CAAS,CAAA,CAC7CH,eAAAA,CAAA,aAAA,CAACc,mBAAAA,CAAA,CAAc,SAAA,CAAU,QAAA,CAAA,CACvBd,eAAAA,CAAA,aAAA,CAACiB,mBAAAA,CAAA,CACC,IAAA,CAAK,QAAA,CACL,KAAA,CAAM,cAAA,CACN,OAAA,CAASP,CAAAA,CACT,QAAA,CAAUR,CAAAA,CAAAA,CAEVF,eAAAA,CAAA,aAAA,CAACkB,gCAAAA,CAAA,IAAe,CAClB,CACF,CAAA,CACE,IACN,CAEJ,CACF,CAAA,CAEAnB,CAAAA,CAAY,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-HTLSKUZO.cjs","sourcesContent":[null,"import type { ElementRef } from 'react';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport clsx from 'clsx';\nimport React from 'react';\nimport { TextInput } from '../TextInput/TextInput';\nimport { TextInputSlot } from '../TextInputSlot/TextInputSlot';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport { SearchInputProps } from './SearchInput.props';\nimport { Spinner } from '../Spinner/Spinner';\nimport { CloseSmallIcon, SearchMediumIcon } from '@utilitywarehouse/hearth-react-icons';\n\nconst COMPONENT_NAME = 'SearchInput';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype SearchInputElement = ElementRef<'input'>;\n\nexport const SearchInput = React.forwardRef<SearchInputElement, SearchInputProps>(\n ({ className, disabled, value, onClear, loading, ...props }, forwardedRef) => {\n const defaultRef = React.useRef<HTMLInputElement | null>(null);\n const inputRef = forwardedRef || defaultRef;\n\n const handleClear = React.useCallback(\n (event: React.MouseEvent<HTMLButtonElement>) => {\n if (typeof onClear !== 'function' || event.button !== 0) {\n return;\n }\n onClear();\n\n if (inputRef && typeof inputRef === 'object' && inputRef.current) {\n inputRef.current.focus();\n }\n },\n [inputRef, onClear]\n );\n\n return (\n <TextInput\n ref={inputRef}\n className={clsx(componentClassName, className)}\n type=\"search\"\n role=\"search\"\n enterKeyHint=\"search\"\n disabled={disabled}\n hideLabel\n value={value}\n {...props}\n >\n <TextInputSlot placement=\"prefix\">\n <SearchMediumIcon />\n </TextInputSlot>\n {loading ? (\n <TextInputSlot placement=\"suffix\">\n <Spinner size=\"xs\" color=\"primary\" />\n </TextInputSlot>\n ) : null}\n {value !== undefined && String(value).length > 0 ? (\n <TextInputSlot placement=\"suffix\">\n <UnstyledIconButton\n type=\"button\"\n label=\"clear search\"\n onClick={handleClear}\n disabled={disabled}\n >\n <CloseSmallIcon />\n </UnstyledIconButton>\n </TextInputSlot>\n ) : null}\n </TextInput>\n );\n }\n);\n\nSearchInput.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkS5AHVYPDcjs = require('./chunk-S5AHVYPD.cjs');var _chunkFOJNI4AWcjs = require('./chunk-FOJNI4AW.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkS5AHVYPDcjs = require('./chunk-S5AHVYPD.cjs');var _chunkFOJNI4AWcjs = require('./chunk-FOJNI4AW.cjs');var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _react = require('react'); var _react2 = _interopRequireDefault(_react);var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var p="PasswordInput",x=_chunk5AK4QM2Gcjs.b.call(void 0, p),M= exports.a =_react2.default.forwardRef(({className:d,disabled:r,...c},b)=>{let y=_react2.default.useRef(null),s=b||y,[o,w]=_react2.default.useState(!1),[n,l]=_react2.default.useState(!1),I=_react2.default.useCallback(()=>{let e=!o,i=!n;w(e),l(i)},[o,n]);_react2.default.useEffect(()=>{let e=null;s&&typeof s=="object"&&s.current&&(e=s.current);let i=()=>{_optionalChain([e, 'optionalAccess', _ => _.type])&&(e.type="password")};return e&&e.form!==null&&e.form.addEventListener("submit",i),()=>{_optionalChain([e, 'optionalAccess', _2 => _2.form])&&e.form.removeEventListener("submit",i)}},[s]);let E=`Your password is ${o?"shown":"hidden"}!`;return _react2.default.useEffect(()=>{setTimeout(()=>{l(!1)},1500)},[n]),_react2.default.createElement(_react2.default.Fragment,null,_react2.default.createElement(_chunkFOJNI4AWcjs.a,{ref:s,className:_clsx2.default.call(void 0, x,d),type:o?"text":"password",disabled:r,...c},_react2.default.createElement(_chunkS5AHVYPDcjs.a,{placement:"suffix"},_react2.default.createElement(_chunkSNOFZS77cjs.a,{type:"button",label:"toggle password visibility",onClick:I,disabled:r,"aria-pressed":o},o?_react2.default.createElement(_hearthreacticons.EyeSmallIcon,null):_react2.default.createElement(_hearthreacticons.EyeOffSmallIcon,null)))),_react2.default.createElement("div",{"data-visually-hidden":!0,"aria-live":"assertive",role:"status"},n?E:""))});M.displayName=p;exports.a = M;
|
|
2
|
+
//# sourceMappingURL=chunk-LCGQBVB7.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-LCGQBVB7.cjs","../src/components/PasswordInput/PasswordInput.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","PasswordInput","React","className","disabled","props","forwardedRef","defaultRef","inputRef","visible","setVisible","showVisibilityMessage","setShowVisibilityMessage","handleVisibility","newVisibilityState","newVisibilityMessageState","currentElement","handleSubmit","visibilityMessage","TextInput","clsx","TextInputSlot","UnstyledIconButton","EyeSmallIcon","EyeOffSmallIcon"],"mappings":"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","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-LCGQBVB7.cjs","sourcesContent":[null,"import type { ElementRef } from 'react';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport clsx from 'clsx';\nimport React from 'react';\nimport { PasswordInputProps } from './PasswordInput.props';\nimport { TextInput } from '../TextInput/TextInput';\nimport { TextInputSlot } from '../TextInputSlot/TextInputSlot';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport { EyeOffSmallIcon, EyeSmallIcon } from '@utilitywarehouse/hearth-react-icons';\n\nconst COMPONENT_NAME = 'PasswordInput';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype PasswordInputElement = ElementRef<'input'>;\n\nexport const PasswordInput = React.forwardRef<PasswordInputElement, PasswordInputProps>(\n ({ className, disabled, ...props }, forwardedRef) => {\n const defaultRef = React.useRef<HTMLInputElement | null>(null);\n const inputRef = forwardedRef || defaultRef;\n const [visible, setVisible] = React.useState(false);\n const [showVisibilityMessage, setShowVisibilityMessage] = React.useState(false);\n\n const handleVisibility = React.useCallback(() => {\n const newVisibilityState = !visible;\n const newVisibilityMessageState = !showVisibilityMessage;\n setVisible(newVisibilityState);\n setShowVisibilityMessage(newVisibilityMessageState);\n }, [visible, showVisibilityMessage]);\n\n // If the PasswordInput is inside a form we should switch the input type\n // back to password when its parent form is submitted\n React.useEffect(() => {\n // Get the ref value and ensure proper typing\n let currentElement: HTMLInputElement | null = null;\n if (inputRef && typeof inputRef === 'object' && inputRef.current) {\n // Type assertion to ensure TypeScript understands this is a valid ref object\n const refObject = inputRef as React.RefObject<HTMLInputElement>;\n currentElement = refObject.current;\n }\n\n const handleSubmit = () => {\n if (currentElement?.type) {\n currentElement.type = 'password';\n }\n };\n\n if (currentElement && currentElement.form !== null) {\n currentElement.form.addEventListener('submit', handleSubmit);\n }\n return () => {\n if (currentElement?.form) {\n currentElement.form.removeEventListener('submit', handleSubmit);\n }\n };\n }, [inputRef]);\n\n const visibilityMessage = `Your password is ${visible ? 'shown' : 'hidden'}!`;\n\n React.useEffect(() => {\n setTimeout(() => {\n setShowVisibilityMessage(false);\n }, 1500);\n }, [showVisibilityMessage]);\n\n return (\n <>\n <TextInput\n ref={inputRef}\n className={clsx(componentClassName, className)}\n type={visible ? 'text' : 'password'}\n disabled={disabled}\n {...props}\n >\n <TextInputSlot placement=\"suffix\">\n <UnstyledIconButton\n type=\"button\"\n label=\"toggle password visibility\"\n onClick={handleVisibility}\n disabled={disabled}\n aria-pressed={visible}\n >\n {visible ? <EyeSmallIcon /> : <EyeOffSmallIcon />}\n </UnstyledIconButton>\n </TextInputSlot>\n </TextInput>\n <div data-visually-hidden aria-live=\"assertive\" role=\"status\">\n {showVisibilityMessage ? visibilityMessage : ''}\n </div>\n </>\n );\n }\n);\n\nPasswordInput.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as i}from"./chunk-XZNPGGRR.js";import{a as m}from"./chunk-UBGLNSJY.js";import{a as p}from"./chunk-6EBW3DKV.js";import{a as n}from"./chunk-P3SXCN4J.js";import{b as s}from"./chunk-JTQWB7E2.js";import{a}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as i}from"./chunk-XZNPGGRR.js";import{a as m}from"./chunk-UBGLNSJY.js";import{a as p}from"./chunk-6EBW3DKV.js";import{a as n}from"./chunk-P3SXCN4J.js";import{b as s}from"./chunk-JTQWB7E2.js";import{a}from"./chunk-PLVHBGPL.js";import*as o from"react";import b from"clsx";import{Slot as C}from"radix-ui";var l="Button",P=s(l),x=o.forwardRef((d,c)=>{let{className:f,children:t,disabled:u,loading:r,asChild:e,...B}=n(d,i),h=e?C.Root:"button";return o.createElement(m,{ref:c,className:b(P,f),disabled:u||r,asChild:!0,...B},o.createElement(h,null,r?a({asChild:e,children:t},N=>o.createElement("div",{className:"hearth-loading"},o.createElement("div",null,o.createElement(p,{size:"xs",currentColor:!0})),o.createElement("span",{className:"hearth-hidden"},N))):t))});x.displayName=l;export{x as a};
|
|
2
|
+
//# sourceMappingURL=chunk-LHD2GY6R.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _react = require('react'); var t = _interopRequireWildcard(_react);var e="AlertIconButton",u=_chunk5AK4QM2Gcjs.b.call(void 0, e),f= exports.a =t.forwardRef(({children:r,label:l="Alert action",title:c="Alert action",className:m,...p},s)=>t.createElement(_chunkSNOFZS77cjs.a,{ref:s,className:_clsx2.default.call(void 0, u,m),label:l,title:c,...p},r||t.createElement(_hearthreacticons.ChevronRightSmallIcon,null)));f.displayName=e;exports.a = f;
|
|
2
|
+
//# sourceMappingURL=chunk-LSDQYW7O.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-LSDQYW7O.cjs","../src/components/Alert/AlertIconButton.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","AlertIconButton","children","label","title","className","props","ref","UnstyledIconButton","clsx","ChevronRightSmallIcon"],"mappings":"AAAA,mfAAwC,wDAAyC,wECA3C,wEACrB,uEAEM,IAKjBA,CAAAA,CAAiB,iBAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAM7CC,CAAAA,aAAwB,CAAA,CAAA,UAAA,CACnC,CAAC,CAAE,QAAA,CAAAC,CAAAA,CAAU,KAAA,CAAAC,CAAAA,CAAQ,cAAA,CAAgB,KAAA,CAAAC,CAAAA,CAAQ,cAAA,CAAgB,SAAA,CAAAC,CAAAA,CAAW,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAEhF,CAAA,CAAA,aAAA,CAACC,mBAAAA,CAAA,CACC,GAAA,CAAKD,CAAAA,CACL,SAAA,CAAWE,4BAAAA,CAAKV,CAAoBM,CAAS,CAAA,CAC7C,KAAA,CAAOF,CAAAA,CACP,KAAA,CAAOC,CAAAA,CACN,GAAGE,CAAAA,CAAAA,CAEHJ,CAAAA,EAAY,CAAA,CAAA,aAAA,CAACQ,uCAAAA,CAAA,IAAsB,CACtC,CAGN,CAAA,CAEAT,CAAAA,CAAgB,WAAA,CAAcH,CAAAA,CAAAA,cAAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-LSDQYW7O.cjs","sourcesContent":[null,"import { ChevronRightSmallIcon } from '@utilitywarehouse/hearth-react-icons';\nimport clsx from 'clsx';\nimport type { ElementRef } from 'react';\nimport * as React from 'react';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\nimport type { UnstyledIconButtonProps } from '../UnstyledIconButton/UnstyledIconButton.props';\n\nconst COMPONENT_NAME = 'AlertIconButton';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\nexport type AlertIconButtonProps = UnstyledIconButtonProps;\n\ntype AlertIconButtonElement = ElementRef<'button'>;\n\nexport const AlertIconButton = React.forwardRef<AlertIconButtonElement, AlertIconButtonProps>(\n ({ children, label = 'Alert action', title = 'Alert action', className, ...props }, ref) => {\n return (\n <UnstyledIconButton\n ref={ref}\n className={clsx(componentClassName, className)}\n label={label}\n title={title}\n {...props}\n >\n {children || <ChevronRightSmallIcon />}\n </UnstyledIconButton>\n );\n }\n);\n\nAlertIconButton.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./chunk-NG3NR6UN.js";import{a}from"./chunk-P3SXCN4J.js";import{b as o}from"./chunk-JTQWB7E2.js";import*as t from"react";import f from"clsx";import{Tabs as n}from"radix-ui";var s="Tabs",b=o(s),l=t.forwardRef((r,m)=>{let{className:p,activationMode:i="automatic",...c}=a(r,e);return t.createElement(n.Root,{ref:m,className:f(b,p),activationMode:i,...c})});l.displayName=s;export{l as a};
|
|
2
|
+
//# sourceMappingURL=chunk-M7Y6BXHP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import * as React from 'react';\nimport clsx from 'clsx';\nimport type { ElementRef } from 'react';\nimport { Tabs as RadixTabs } from 'radix-ui';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { extractProps } from '../../helpers/extract-props';\nimport { tabsPropDefs, type TabsProps } from './Tabs.props';\n\nconst COMPONENT_NAME = 'Tabs';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype TabsElement = ElementRef<'div'>;\n\nexport const Tabs = React.forwardRef<TabsElement, TabsProps>((props, ref) => {\n const {\n className,\n activationMode = 'automatic',\n ...tabsProps\n } = extractProps(props, tabsPropDefs);\n\n return (\n <RadixTabs.Root\n ref={ref}\n className={clsx(componentClassName, className)}\n activationMode={activationMode}\n {...tabsProps}\n />\n );\n});\n\nTabs.displayName = COMPONENT_NAME;\n"],"mappings":"mHAAA,UAAYA,MAAW,QACvB,OAAOC,MAAU,OAEjB,OAAS,QAAQC,MAAiB,WAKlC,IAAMC,EAAiB,OACjBC,EAAqBC,EAAiBF,CAAc,EAI7CG,EAAa,aAAmC,CAACC,EAAOC,IAAQ,CAC3E,GAAM,CACJ,UAAAC,EACA,eAAAC,EAAiB,YACjB,GAAGC,CACL,EAAIC,EAAaL,EAAOM,CAAY,EAEpC,OACE,gBAACC,EAAU,KAAV,CACC,IAAKN,EACL,UAAWO,EAAKX,EAAoBK,CAAS,EAC7C,eAAgBC,EACf,GAAGC,EACN,CAEJ,CAAC,EAEDL,EAAK,YAAcH","names":["React","clsx","RadixTabs","COMPONENT_NAME","componentClassName","withGlobalPrefix","Tabs","props","ref","className","activationMode","tabsProps","extractProps","tabsPropDefs","RadixTabs","clsx"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Tabs/Tabs.props.ts"],"sourcesContent":["import { Tabs as RadixTabs } from 'radix-ui';\nimport { PropDef } from '../../props/prop-def';\nimport { Responsive } from '../../types/responsive';\n\nconst sizes = ['md', 'lg'] as const;\n\nexport const tabsPropDefs = {\n size: { className: 'size', tokens: sizes, responsive: true, default: 'md' },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n};\n\nexport interface TabsProps extends Omit<RadixTabs.TabsProps, 'asChild' | 'dir' | 'orientation'> {\n /** Size variant */\n size?: Responsive<(typeof sizes)[number]>;\n /** Activation mode for tabs */\n activationMode?: 'automatic' | 'manual';\n}\n"],"mappings":"AAIA,IAAMA,EAAQ,CAAC,KAAM,IAAI,EAEZC,EAAe,CAC1B,KAAM,CAAE,UAAW,OAAQ,OAAQD,EAAO,WAAY,GAAM,QAAS,IAAK,CAC5E","names":["sizes","tabsPropDefs"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkZ3IVUIU2cjs = require('./chunk-Z3IVUIU2.cjs');var
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkZ3IVUIU2cjs = require('./chunk-Z3IVUIU2.cjs');var _chunkSNOFZS77cjs = require('./chunk-SNOFZS77.cjs');var _chunkQ3LBBWQZcjs = require('./chunk-Q3LBBWQZ.cjs');var _chunkHW74KDL7cjs = require('./chunk-HW74KDL7.cjs');var _chunk4HAN4WSZcjs = require('./chunk-4HAN4WSZ.cjs');var _chunk5AK4QM2Gcjs = require('./chunk-5AK4QM2G.cjs');var _react = require('react'); var e = _interopRequireWildcard(_react);var _clsx = require('clsx'); var _clsx2 = _interopRequireDefault(_clsx);var _hearthreacticons = require('@utilitywarehouse/hearth-react-icons');var f="Alert",t=_chunk5AK4QM2Gcjs.b.call(void 0, f),P= exports.a =e.forwardRef((u,x)=>{let y={info:_hearthreacticons.InfoMediumIcon,positive:_hearthreacticons.TickCircleMediumIcon,warning:_hearthreacticons.WarningMediumIcon,danger:_hearthreacticons.WarningMediumIcon},{children:C,className:v,colorScheme:r="info",onClose:i,text:l,title:n,...A}=_chunk4HAN4WSZcjs.a.call(void 0, u,_chunkHW74KDL7cjs.a),N=y[r];return e.createElement("div",{ref:x,className:_clsx2.default.call(void 0, t,v),role:"alert","aria-live":"assertive","aria-atomic":"true","data-colorScheme":r,...A},e.createElement(N,{"aria-hidden":"true"}),e.createElement("div",{className:`${t}Content`},e.createElement(_chunkZ3IVUIU2cjs.a,{direction:"column"},n?e.createElement(_chunkQ3LBBWQZcjs.a,{as:"span",size:"md",weight:"semibold"},n):null,l?e.createElement(_chunkQ3LBBWQZcjs.a,{as:"div"},l):null),C),i?e.createElement(_chunkSNOFZS77cjs.a,{onClick:i,className:`${t}CloseButton`,title:"Close",label:"Close alert"},e.createElement(_hearthreacticons.CloseSmallIcon,null)):null)});P.displayName=f;exports.a = P;
|
|
2
|
+
//# sourceMappingURL=chunk-OK4BKJ52.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/hearth/hearth/packages/react/dist/chunk-OK4BKJ52.cjs","../src/components/Alert/Alert.tsx"],"names":["COMPONENT_NAME","componentClassName","withGlobalPrefix","Alert","props","ref","icons","InfoMediumIcon","TickCircleMediumIcon","WarningMediumIcon","children","className","colorScheme","onClose","text","title","alertProps","extractProps","marginPropDefs","AlertIcon","clsx"],"mappings":"AAAA,mfAAwC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,wDAAyC,uECC9N,wEACN,wEASV,IAMDA,CAAAA,CAAiB,OAAA,CACjBC,CAAAA,CAAqBC,iCAAAA,CAA+B,CAAA,CAI7CC,CAAAA,aAAc,CAAA,CAAA,UAAA,CAAqC,CAACC,CAAAA,CAAOC,CAAAA,CAAAA,EAAQ,CAC9E,IAAMC,CAAAA,CAAQ,CACZ,IAAA,CAAMC,gCAAAA,CACN,QAAA,CAAUC,sCAAAA,CACV,OAAA,CAASC,mCAAAA,CACT,MAAA,CAAQA,mCACV,CAAA,CACM,CACJ,QAAA,CAAAC,CAAAA,CACA,SAAA,CAAAC,CAAAA,CACA,WAAA,CAAAC,CAAAA,CAAc,MAAA,CACd,OAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CAAIC,iCAAAA,CAAab,CAAOc,mBAAc,CAAA,CAEhCC,CAAAA,CAAYb,CAAAA,CAAMM,CAAW,CAAA,CAEnC,OACE,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CACC,GAAA,CAAKP,CAAAA,CACL,SAAA,CAAWe,4BAAAA,CAAKnB,CAAoBU,CAAS,CAAA,CAC7C,IAAA,CAAK,OAAA,CACL,WAAA,CAAU,WAAA,CACV,aAAA,CAAY,MAAA,CACZ,kBAAA,CAAkBC,CAAAA,CACjB,GAAGI,CAAAA,CAAAA,CAEJ,CAAA,CAAA,aAAA,CAACG,CAAAA,CAAA,CAAU,aAAA,CAAY,MAAA,CAAO,CAAA,CAC9B,CAAA,CAAA,aAAA,CAAC,KAAA,CAAA,CAAI,SAAA,CAAW,CAAA,EAAA","file":"/home/runner/work/hearth/hearth/packages/react/dist/chunk-OK4BKJ52.cjs","sourcesContent":[null,"import type { ElementRef } from 'react';\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport { extractProps } from '../../helpers/extract-props';\nimport { withGlobalPrefix } from '../../helpers/with-global-prefix';\nimport { AlertProps } from './Alert.props';\nimport {\n CloseSmallIcon,\n InfoMediumIcon,\n TickCircleMediumIcon,\n WarningMediumIcon,\n} from '@utilitywarehouse/hearth-react-icons';\nimport { marginPropDefs } from '../../props/margin.props';\nimport { BodyText } from '../BodyText/BodyText';\nimport { Flex } from '../Flex/Flex';\nimport { UnstyledIconButton } from '../UnstyledIconButton/UnstyledIconButton';\n\nconst COMPONENT_NAME = 'Alert';\nconst componentClassName = withGlobalPrefix(COMPONENT_NAME);\n\ntype AlertElement = ElementRef<'div'>;\n\nexport const Alert = React.forwardRef<AlertElement, AlertProps>((props, ref) => {\n const icons = {\n info: InfoMediumIcon,\n positive: TickCircleMediumIcon,\n warning: WarningMediumIcon,\n danger: WarningMediumIcon,\n };\n const {\n children,\n className,\n colorScheme = 'info',\n onClose,\n text,\n title,\n ...alertProps\n } = extractProps(props, marginPropDefs);\n\n const AlertIcon = icons[colorScheme];\n\n return (\n <div\n ref={ref}\n className={clsx(componentClassName, className)}\n role=\"alert\" // Adding role for dynamic alerts\n aria-live=\"assertive\" // Making it announced immediately\n aria-atomic=\"true\" // Ensuring the entire alert is read as a whole\n data-colorScheme={colorScheme}\n {...alertProps}\n >\n <AlertIcon aria-hidden=\"true\" />\n <div className={`${componentClassName}Content`}>\n <Flex direction=\"column\">\n {title ? (\n <BodyText as=\"span\" size=\"md\" weight=\"semibold\">\n {title}\n </BodyText>\n ) : null}\n {text ? <BodyText as=\"div\">{text}</BodyText> : null}\n </Flex>\n {children}\n </div>\n {onClose ? (\n <UnstyledIconButton\n onClick={onClose}\n className={`${componentClassName}CloseButton`}\n title=\"Close\"\n label=\"Close alert\"\n >\n <CloseSmallIcon />\n </UnstyledIconButton>\n ) : null}\n </div>\n );\n});\n\nAlert.displayName = COMPONENT_NAME;\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as c}from"./chunk-CAZKLHT2.js";import{a as l}from"./chunk-6EBW3DKV.js";import{a as m}from"./chunk-P3SXCN4J.js";import{b as i}from"./chunk-JTQWB7E2.js";import{a}from"./chunk-BPLBZ4OW.js";import{a as p}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as c}from"./chunk-CAZKLHT2.js";import{a as l}from"./chunk-6EBW3DKV.js";import{a as m}from"./chunk-P3SXCN4J.js";import{b as i}from"./chunk-JTQWB7E2.js";import{a}from"./chunk-BPLBZ4OW.js";import{a as p}from"./chunk-PLVHBGPL.js";import*as t from"react";import C from"clsx";import{Slot as N}from"radix-ui";var d="UnstyledIconButton",R=i(d),U=t.forwardRef((o,f)=>{let{className:u,children:e,label:y,disabled:n,inverted:B,loading:r,onClick:I,asChild:s,...P}=m(o,c),S=a(o.size||"md",{md:"sm",sm:"xs"}),b=s?N.Root:"button";return t.createElement(b,{ref:f,className:C(R,u),"aria-label":y,"aria-disabled":n||r,"data-inverted":B?"":void 0,onClick:n?void 0:I,...P},r?p({asChild:s,children:e},()=>t.createElement(l,{size:S,currentColor:!0})):e)});U.displayName=d;export{U as a};
|
|
2
|
+
//# sourceMappingURL=chunk-OSYFJRSS.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as o}from"./chunk-BQPMK7UV.js";import{b as r}from"./chunk-JTQWB7E2.js";import{a as n}from"./chunk-
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{a as o}from"./chunk-BQPMK7UV.js";import{b as r}from"./chunk-JTQWB7E2.js";import{a as n}from"./chunk-PLVHBGPL.js";import*as e from"react";import h from"clsx";import{Slot as j}from"radix-ui";var i="Container",m=r(i),A=e.forwardRef(({className:a,spacing:p,direction:s,alignItems:f,alignContent:l,justifyContent:c,wrap:C,gap:N,maxWidth:x,children:E,align:R="center",asChild:t,padding:P,paddingTop:d,paddingRight:y,paddingBottom:u,paddingLeft:F,paddingInline:b,paddingBlock:v,...w},M)=>{let O={spacing:p,direction:s,alignItems:f,alignContent:l,justifyContent:c,wrap:C,gap:N,maxWidth:x,padding:P,paddingTop:d,paddingRight:y,paddingBottom:u,paddingLeft:F,paddingInline:b,paddingBlock:v},S=t?j.Root:"div";return e.createElement(o,{ref:M,className:h(m,a),...w,justifyContent:R,asChild:!0},e.createElement(S,null,n({asChild:t,children:E},g=>e.createElement(o,{className:`${m}Inner`,...O},g))))});A.displayName=i;export{A as a};
|
|
2
|
+
//# sourceMappingURL=chunk-PCSPVEX2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/helpers/get-subtree.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n// https://github.com/radix-ui/themes/blob/main/packages/radix-ui-themes/src/helpers/get-subtree.ts\nimport * as React from 'react';\n\n/**\n * This is a helper function that is used when a component supports `asChild`\n * using the `Slot` component but its implementation contains nested DOM elements.\n *\n * Using it ensures if a consumer uses the `asChild` prop, the elements are in\n * correct order in the DOM, adopting the intended consumer `children`.\n */\nexport function getSubtree(\n options: { asChild: boolean | undefined; children: React.ReactNode },\n content: React.ReactNode | ((children: React.ReactNode) => React.ReactNode)\n) {\n const { asChild, children } = options;\n if (!asChild) return typeof content === 'function' ? content(children) : content;\n\n const firstChild = React.Children.only(children) as React.ReactElement;\n return React.cloneElement(firstChild, {\n children: typeof content === 'function' ? content(firstChild.props.children) : content,\n });\n}\n"],"mappings":"AAGA,UAAYA,MAAW,QAShB,SAASC,EACdC,EACAC,EACA,CACA,GAAM,CAAE,QAAAC,EAAS,SAAAC,CAAS,EAAIH,EAC9B,GAAI,CAACE,EAAS,OAAO,OAAOD,GAAY,WAAaA,EAAQE,CAAQ,EAAIF,EAEzE,IAAMG,EAAmB,WAAS,KAAKD,CAAQ,
|
|
1
|
+
{"version":3,"sources":["../src/helpers/get-subtree.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unsafe-member-access */\n/* eslint-disable @typescript-eslint/no-unsafe-argument */\n// https://github.com/radix-ui/themes/blob/main/packages/radix-ui-themes/src/helpers/get-subtree.ts\nimport * as React from 'react';\n\n/**\n * This is a helper function that is used when a component supports `asChild`\n * using the `Slot` component but its implementation contains nested DOM elements.\n *\n * Using it ensures if a consumer uses the `asChild` prop, the elements are in\n * correct order in the DOM, adopting the intended consumer `children`.\n */\nexport function getSubtree(\n options: { asChild: boolean | undefined; children: React.ReactNode },\n content: React.ReactNode | ((children: React.ReactNode) => React.ReactNode)\n) {\n const { asChild, children } = options;\n if (!asChild) return typeof content === 'function' ? content(children) : content;\n\n const firstChild = React.Children.only(children) as React.ReactElement<{\n children?: React.ReactNode;\n }>;\n return React.cloneElement(firstChild, {\n children: typeof content === 'function' ? content(firstChild.props.children) : content,\n });\n}\n"],"mappings":"AAGA,UAAYA,MAAW,QAShB,SAASC,EACdC,EACAC,EACA,CACA,GAAM,CAAE,QAAAC,EAAS,SAAAC,CAAS,EAAIH,EAC9B,GAAI,CAACE,EAAS,OAAO,OAAOD,GAAY,WAAaA,EAAQE,CAAQ,EAAIF,EAEzE,IAAMG,EAAmB,WAAS,KAAKD,CAAQ,EAG/C,OAAa,eAAaC,EAAY,CACpC,SAAU,OAAOH,GAAY,WAAaA,EAAQG,EAAW,MAAM,QAAQ,EAAIH,CACjF,CAAC,CACH","names":["React","getSubtree","options","content","asChild","children","firstChild"]}
|