meticulous-ui 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,62 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("react/jsx-runtime"),A=require("react"),B=require("styled-components"),H=require("prop-types"),$=require("../../colors/grey.cjs"),x=require("../../colors/green.cjs"),_=e=>e&&e.__esModule?e:{default:e},c=_(B),t=_(H),n=1.9,i=.28,w=n+i*2,I=.7,k=i+n,S=c.default.button`
2
+ position: relative;
3
+ isolation: isolate;
4
+ height: ${w}rem;
5
+ width: ${({$hasLabel:e})=>e?"max-content":"4.8rem"};
6
+ min-width: 4.8rem;
7
+ max-width: 20rem;
8
+ border-radius: ${w/2}rem;
9
+ border: 1.5px solid rgba(0, 0, 0, 0.08);
10
+ display: flex;
11
+ align-items: center;
12
+ box-sizing: border-box;
13
+ flex-shrink: 0;
14
+ overflow: hidden;
15
+ cursor: ${({disabled:e})=>e?"not-allowed":"pointer"};
16
+ outline: none;
17
+
18
+ padding-left: ${({$checked:e,$hasLabel:r})=>r?e?`${i}rem`:`${k}rem`:"0"};
19
+ padding-right: ${({$checked:e,$hasLabel:r})=>r?e?`${k}rem`:`${i}rem`:"0"};
20
+
21
+ transition:
22
+ background-color 0.3s ease,
23
+ box-shadow 0.3s ease,
24
+ padding-left 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
25
+ padding-right 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
26
+
27
+ background-color: ${({$checked:e,$onColor:r,$offColor:l,disabled:s})=>s?$.default.m300:e?r||x.default.m500:l||$.default.m400};
28
+
29
+ &:focus-visible {
30
+ outline: 3px solid ${({$onColor:e})=>e?`${e}88`:`${x.default.m500}88`};
31
+ outline-offset: 2px;
32
+ }
33
+ `,U=c.default.div`
34
+ position: absolute;
35
+ top: calc(50% - ${n/2}rem);
36
+ left: ${({$checked:e})=>e?`calc(100% - ${n+i}rem)`:`${i}rem`};
37
+ width: ${n}rem;
38
+ height: ${n}rem;
39
+ border-radius: 50%;
40
+ background: white;
41
+ display: flex;
42
+ align-items: center;
43
+ justify-content: center;
44
+ flex-shrink: 0;
45
+ transition: left 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
46
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
47
+ z-index: 1;
48
+ `,E=c.default.span`
49
+ position: relative;
50
+ z-index: 2;
51
+ font-size: 0.9rem;
52
+ font-weight: 700;
53
+ text-transform: uppercase;
54
+ letter-spacing: 0.05em;
55
+ white-space: nowrap;
56
+ overflow: hidden;
57
+ text-overflow: ellipsis;
58
+ user-select: none;
59
+ pointer-events: none;
60
+ padding: 0 ${I}rem;
61
+ color: rgba(255, 255, 255, 0.95);
62
+ `,v=({checked:e,defaultChecked:r=!1,onChange:l,onIcon:s,offIcon:u,onColor:y,offColor:T,onLabel:f,offLabel:b,label:z,id:j,disabled:a=!1})=>{const[q,L]=A.useState(r),p=e!==void 0,o=p?e:q,M=P=>{if(P.preventDefault(),a)return;const g=!o;p||L(g),l==null||l(g)},C=s!=null||u!=null,h=f!=null||b!=null,D=o?s:u,m=o?f:b;return d.jsxs(S,{id:j,type:"button",role:"switch","aria-checked":o,"aria-label":z,"aria-disabled":a,onClick:M,disabled:a,$checked:o,$onColor:y,$offColor:T,$hasLabel:h,children:[d.jsx(U,{"aria-hidden":"true",$checked:o,children:C&&D}),h&&m&&d.jsx(E,{children:m})]})};v.propTypes={checked:t.default.bool,defaultChecked:t.default.bool,onChange:t.default.func,onIcon:t.default.node,offIcon:t.default.node,onColor:t.default.string,offColor:t.default.string,onLabel:t.default.string,offLabel:t.default.string,label:t.default.string,id:t.default.string,disabled:t.default.bool};exports.default=v;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./Switch.cjs");exports.default=e.default;
package/cjs/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./components/Pagination/Pagination.cjs"),e=require("./components/Toast/Toast.cjs"),u=require("./components/Spinner/Spinner.cjs"),r=require("./components/Loader/Loader.cjs"),i=require("./components/PageLoader/PageLoader.cjs"),s=require("./components/OtpInput/OtpInput.cjs"),o=require("./components/Dropdown/Dropdown.cjs"),a=require("./components/RootComponent/RootComponent.cjs"),l=require("./components/Selectbox/Selectbox.cjs"),n=require("./components/Button/Button.cjs"),c=require("./components/Link/Link.cjs"),d=require("./components/Modal/Modal.cjs"),f=require("./components/Timer/Timer.cjs"),q=require("./components/Shimmer/Shimmer.cjs"),_=require("./components/VideoPlayer/VideoPlayer.cjs"),m=require("./components/Image/Image.cjs"),g=require("./components/Carousel/Carousel.cjs"),p=require("./components/Typography/Headings/index.cjs"),y=require("./components/Typography/P/P.cjs"),S=require("./components/DatePicker/DatePicker.cjs"),T=require("./utils/capFirstLetter.cjs"),P=require("./utils/capitalize.cjs"),k=require("./utils/camelCase.cjs"),b=require("./utils/chunk.cjs"),h=require("./utils/clamp.cjs"),C=require("./utils/compose.cjs"),E=require("./utils/deepClone.cjs"),I=require("./utils/flattenObject.cjs"),L=require("./utils/formatCompactNumber.cjs"),v=require("./utils/formatCurrency.cjs"),w=require("./utils/formatDate.cjs"),O=require("./utils/formatNumber.cjs"),B=require("./utils/formatTime.cjs"),z=require("./utils/generateInitials.cjs"),A=require("./utils/getGreetingByTime.cjs"),F=require("./utils/groupBy.cjs"),N=require("./utils/hasEqualProps.cjs"),D=require("./utils/addDays.cjs"),R=require("./utils/countdown.cjs"),x=require("./utils/differenceInDays.cjs"),M=require("./utils/isEmpty.cjs"),G=require("./utils/isEqual.cjs"),Q=require("./utils/isNonEmptyArray.cjs"),U=require("./utils/isPast.cjs"),V=require("./utils/isToday.cjs"),J=require("./utils/kebabCase.cjs"),W=require("./utils/keyBy.cjs"),K=require("./utils/maskEmail.cjs"),j=require("./utils/maskPhone.cjs"),H=require("./utils/mergeDeep.cjs"),X=require("./utils/omit.cjs"),Y=require("./utils/percentage.cjs"),Z=require("./utils/pick.cjs"),$=require("./utils/randomBetween.cjs"),ee=require("./utils/randomInt.cjs"),te=require("./utils/randomValue.cjs"),ue=require("./utils/removeExtraSpaces.cjs"),re=require("./utils/roundTo.cjs"),ie=require("./utils/slugify.cjs"),se=require("./utils/snakeCase.cjs"),oe=require("./utils/sortBy.cjs"),ae=require("./utils/timeAgo.cjs"),le=require("./utils/titleCase.cjs"),ne=require("./utils/truncate.cjs"),ce=require("./utils/uniqueBy.cjs"),de=require("./utils/isEmail.cjs"),fe=require("./utils/isPhone.cjs"),qe=require("./utils/isURL.cjs"),_e=require("./utils/isPasswordStrong.cjs"),me=require("./utils/isPAN.cjs"),ge=require("./utils/isAadhaar.cjs"),pe=require("./utils/isGST.cjs"),ye=require("./utils/isRequired.cjs"),Se=require("./utils/minLength.cjs"),Te=require("./utils/maxLength.cjs"),Pe=require("./utils/isMobile.cjs"),ke=require("./utils/isIOS.cjs"),be=require("./utils/isAndroid.cjs"),he=require("./utils/isSafari.cjs"),Ce=require("./utils/isDarkMode.cjs"),Ee=require("./utils/isOnline.cjs"),Ie=require("./utils/copyToClipboard.cjs"),Le=require("./utils/downloadFile.cjs"),ve=require("./utils/openInNewTab.cjs"),we=require("./utils/getScreenSize.cjs"),Oe=require("./utils/getQueryParams.cjs"),Be=require("./utils/setQueryParam.cjs"),ze=require("./utils/removeQueryParam.cjs"),Ae=require("./utils/buildURL.cjs"),Fe=require("./utils/redirectTo.cjs"),Ne=require("./utils/getCurrentPath.cjs"),De=require("./utils/isActiveRoute.cjs"),Re=require("./utils/setLocalStorage.cjs"),xe=require("./utils/getLocalStorage.cjs"),Me=require("./utils/removeLocalStorage.cjs"),Ge=require("./utils/setSessionStorage.cjs"),Qe=require("./utils/getSessionStorage.cjs"),Ue=require("./utils/clearStorage.cjs"),Ve=require("./utils/debounce.cjs"),Je=require("./utils/throttle.cjs"),We=require("./utils/memoize.cjs"),Ke=require("./utils/lazyLoadComponent.cjs"),je=require("./utils/requestIdleTask.cjs"),He=require("./utils/rafThrottle.cjs"),Xe=require("./utils/scrollToTop.cjs"),Ye=require("./utils/scrollToElement.cjs"),Ze=require("./utils/lockBodyScroll.cjs"),$e=require("./utils/unlockBodyScroll.cjs"),et=require("./utils/toggleFullscreen.cjs"),tt=require("./utils/focusElement.cjs"),ut=require("./utils/detectOutsideClick.cjs"),rt=require("./utils/measureElement.cjs"),it=require("./utils/announceToScreenReader.cjs"),st=require("./utils/trapFocus.cjs"),ot=require("./utils/generateAriaId.cjs"),at=require("./utils/handleKeyboardNavigation.cjs"),lt=require("./utils/logError.cjs"),nt=require("./utils/captureException.cjs"),ct=require("./utils/safeJSONParse.cjs"),dt=require("./utils/safeJSONStringify.cjs"),ft=require("./utils/fallback.cjs"),qt=require("./utils/isAuthenticated.cjs"),_t=require("./utils/getToken.cjs"),mt=require("./utils/setToken.cjs"),gt=require("./utils/removeToken.cjs"),pt=require("./utils/decodeJWT.cjs"),yt=require("./utils/hasPermission.cjs"),St=require("./utils/isFeatureEnabled.cjs"),Tt=require("./utils/getVariant.cjs"),Pt=require("./utils/retry.cjs"),kt=require("./utils/sleep.cjs"),bt=require("./utils/withTimeout.cjs"),ht=require("./utils/parallel.cjs"),Ct=require("./utils/sequential.cjs"),Et=require("./utils/safeAsync.cjs"),It=require("./utils/cancelablePromise.cjs"),Lt=require("./utils/fuzzySearch.cjs"),vt=require("./utils/filterByKey.cjs"),wt=require("./utils/multiSort.cjs"),Ot=require("./utils/paginate.cjs"),Bt=require("./utils/fadeIn.cjs"),zt=require("./utils/fadeOut.cjs"),At=require("./utils/smoothScroll.cjs"),Ft=require("./utils/waitForTransitionEnd.cjs"),Nt=require("./utils/trackEvent.cjs"),Dt=require("./utils/trackPageView.cjs"),Rt=require("./utils/measurePerformance.cjs"),xt=require("./utils/featureGate.cjs"),Mt=require("./utils/permissionGuard.cjs"),Gt=require("./utils/auditLog.cjs"),Qt=require("./utils/logInfo.cjs"),Ut=require("./utils/logWarn.cjs"),Vt=require("./utils/once.cjs"),Jt=require("./utils/noop.cjs"),Wt=require("./utils/identity.cjs"),Kt=require("./utils/pipe.cjs"),jt=require("./utils/singleton.cjs"),Ht=require("./utils/createPubSub.cjs"),Xt=require("./utils/deepFreeze.cjs"),Yt=require("./hooks/usePrevious.cjs"),Zt=require("./hooks/useDebounce.cjs"),$t=require("./hooks/useThrottle.cjs"),eu=require("./hooks/useIsMounted.cjs"),tu=require("./hooks/useEventListener.cjs"),uu=require("./hooks/useIntersectionObserver.cjs"),ru=require("./hooks/useMediaQuery.cjs"),iu=require("./hooks/useLocalStorage.cjs"),su=require("./hooks/useSessionStorage.cjs"),ou=require("./hooks/useOutsideClick.cjs"),au=require("./hooks/useWindowSize.cjs"),lu=require("./hooks/useOnlineStatus.cjs"),nu=require("./hooks/useCopyToClipboard.cjs"),cu=require("./hooks/useToggle.cjs"),du=require("./hooks/useTimeout.cjs"),fu=require("./hooks/useInterval.cjs"),qu=require("./hooks/useUnmount.cjs"),_u=require("./hooks/useFirstRender.cjs"),mu=require("./reactUtils/createContextHook.cjs"),gu=require("./reactUtils/composeProviders.cjs"),pu=require("./reactUtils/lazyImport.cjs"),yu=require("./reactUtils/withErrorBoundary.cjs"),Su=require("./reactUtils/withSuspense.cjs"),Tu=require("./reactUtils/memoCompare.cjs"),Pu=require("./reactUtils/createPortalNode.cjs"),ku=require("./components/Input/Input/Input.cjs"),bu=require("./components/Input/Textarea/Textarea.cjs"),hu=require("./components/Input/Checkbox/Checkbox.cjs"),Cu=require("./components/Input/RadioGroup/RadioGroup.cjs"),Eu=require("./components/Input/FileUploader/FileUploader.cjs");exports.Pagination=t.default;exports.Toast=e.default;exports.ToastContainer=e.ToastContainer;exports.Spinner=u.default;exports.Loader=r.default;exports.PageLoader=i.default;exports.OtpInput=s.default;exports.Dropdown=o.default;exports.RootComponent=a.default;exports.Selectbox=l.default;exports.Button=n.default;exports.Link=c.default;exports.Modal=d.default;exports.Timer=f.default;exports.Shimmer=q.default;exports.VideoPlayer=_.default;exports.Image=m.default;exports.Carousel=g.default;exports.Headings=p.default;exports.P=y.default;exports.DatePicker=S.default;exports.capFirstLetter=T.default;exports.capitalize=P.default;exports.camelCase=k.default;exports.chunk=b.default;exports.clamp=h.default;exports.compose=C.default;exports.deepClone=E.default;exports.flattenObject=I.default;exports.formatCompactNumber=L.default;exports.formatCurrency=v.default;exports.formatDate=w.default;exports.formatNumber=O.default;exports.formatTime=B.default;exports.generateInitials=z.default;exports.getGreetingByTime=A.default;exports.groupBy=F.default;exports.hasEqualProps=N.default;exports.addDays=D.default;exports.countdown=R.default;exports.differenceInDays=x.default;exports.isEmpty=M.default;exports.isEqual=G.default;exports.isNonEmptyArray=Q.default;exports.isPast=U.default;exports.isToday=V.default;exports.kebabCase=J.default;exports.keyBy=W.default;exports.maskEmail=K.default;exports.maskPhone=j.default;exports.mergeDeep=H.default;exports.omit=X.default;exports.percentage=Y.default;exports.pick=Z.default;exports.randomBetween=$.default;exports.randomInt=ee.default;exports.randomValue=te.default;exports.removeExtraSpaces=ue.default;exports.roundTo=re.default;exports.slugify=ie.default;exports.snakeCase=se.default;exports.sortBy=oe.default;exports.timeAgo=ae.default;exports.titleCase=le.default;exports.truncate=ne.default;exports.uniqueBy=ce.default;exports.isEmail=de.default;exports.isPhone=fe.default;exports.isURL=qe.default;exports.isPasswordStrong=_e.default;exports.isPAN=me.default;exports.isAadhaar=ge.default;exports.isGST=pe.default;exports.isRequired=ye.default;exports.minLength=Se.default;exports.maxLength=Te.default;exports.isMobile=Pe.default;exports.isIOS=ke.default;exports.isAndroid=be.default;exports.isSafari=he.default;exports.isDarkMode=Ce.default;exports.isOnline=Ee.default;exports.copyToClipboard=Ie.default;exports.downloadFile=Le.default;exports.openInNewTab=ve.default;exports.getScreenSize=we.default;exports.getQueryParams=Oe.default;exports.setQueryParam=Be.default;exports.removeQueryParam=ze.default;exports.buildURL=Ae.default;exports.redirectTo=Fe.default;exports.getCurrentPath=Ne.default;exports.isActiveRoute=De.default;exports.setLocalStorage=Re.default;exports.getLocalStorage=xe.default;exports.removeLocalStorage=Me.default;exports.setSessionStorage=Ge.default;exports.getSessionStorage=Qe.default;exports.clearStorage=Ue.default;exports.debounce=Ve.default;exports.throttle=Je.default;exports.memoize=We.default;exports.lazyLoadComponent=Ke.default;exports.requestIdleTask=je.default;exports.rafThrottle=He.default;exports.scrollToTop=Xe.default;exports.scrollToElement=Ye.default;exports.lockBodyScroll=Ze.default;exports.unlockBodyScroll=$e.default;exports.toggleFullscreen=et.default;exports.focusElement=tt.default;exports.detectOutsideClick=ut.default;exports.measureElement=rt.default;exports.announceToScreenReader=it.default;exports.trapFocus=st.default;exports.generateAriaId=ot.default;exports.handleKeyboardNavigation=at.default;exports.logError=lt.default;exports.captureException=nt.default;exports.safeJSONParse=ct.default;exports.safeJSONStringify=dt.default;exports.fallback=ft.default;exports.isAuthenticated=qt.default;exports.getToken=_t.default;exports.setToken=mt.default;exports.removeToken=gt.default;exports.decodeJWT=pt.default;exports.hasPermission=yt.default;exports.isFeatureEnabled=St.default;exports.getVariant=Tt.default;exports.retry=Pt.default;exports.sleep=kt.default;exports.withTimeout=bt.default;exports.parallel=ht.default;exports.sequential=Ct.default;exports.safeAsync=Et.default;exports.cancelablePromise=It.default;exports.fuzzySearch=Lt.default;exports.filterByKey=vt.default;exports.multiSort=wt.default;exports.paginate=Ot.default;exports.fadeIn=Bt.default;exports.fadeOut=zt.default;exports.smoothScroll=At.default;exports.waitForTransitionEnd=Ft.default;exports.trackEvent=Nt.default;exports.trackPageView=Dt.default;exports.measurePerformance=Rt.default;exports.featureGate=xt.default;exports.permissionGuard=Mt.default;exports.auditLog=Gt.default;exports.logInfo=Qt.default;exports.logWarn=Ut.default;exports.once=Vt.default;exports.noop=Jt.default;exports.identity=Wt.default;exports.pipe=Kt.default;exports.singleton=jt.default;exports.createPubSub=Ht.default;exports.deepFreeze=Xt.default;exports.usePrevious=Yt.default;exports.useDebounce=Zt.default;exports.useThrottle=$t.default;exports.useIsMounted=eu.default;exports.useEventListener=tu.default;exports.useIntersectionObserver=uu.default;exports.useMediaQuery=ru.default;exports.useLocalStorage=iu.default;exports.useSessionStorage=su.default;exports.useOutsideClick=ou.default;exports.useWindowSize=au.default;exports.useOnlineStatus=lu.default;exports.useCopyToClipboard=nu.default;exports.useToggle=cu.default;exports.useTimeout=du.default;exports.useInterval=fu.default;exports.useUnmount=qu.default;exports.useFirstRender=_u.default;exports.createContextHook=mu.default;exports.composeProviders=gu.default;exports.lazyImport=pu.default;exports.withErrorBoundary=yu.default;exports.withSuspense=Su.default;exports.memoCompare=Tu.default;exports.createPortalNode=Pu.default;exports.Input=ku.default;exports.Textarea=bu.default;exports.Checkbox=hu.default;exports.RadioGroup=Cu.default;exports.FileUploader=Eu.default;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./components/Pagination/Pagination.cjs"),e=require("./components/Toast/Toast.cjs"),u=require("./components/Spinner/Spinner.cjs"),r=require("./components/Loader/Loader.cjs"),i=require("./components/PageLoader/PageLoader.cjs"),s=require("./components/OtpInput/OtpInput.cjs"),o=require("./components/Dropdown/Dropdown.cjs"),a=require("./components/RootComponent/RootComponent.cjs"),l=require("./components/Selectbox/Selectbox.cjs"),n=require("./components/Button/Button.cjs"),c=require("./components/Link/Link.cjs"),d=require("./components/Modal/Modal.cjs"),f=require("./components/Timer/Timer.cjs"),q=require("./components/Shimmer/Shimmer.cjs"),_=require("./components/VideoPlayer/VideoPlayer.cjs"),m=require("./components/Image/Image.cjs"),g=require("./components/Carousel/Carousel.cjs"),p=require("./components/Typography/Headings/index.cjs"),S=require("./components/Typography/P/P.cjs"),y=require("./components/DatePicker/DatePicker.cjs"),T=require("./utils/capFirstLetter.cjs"),P=require("./utils/capitalize.cjs"),k=require("./utils/camelCase.cjs"),b=require("./utils/chunk.cjs"),h=require("./utils/clamp.cjs"),C=require("./utils/compose.cjs"),E=require("./utils/deepClone.cjs"),I=require("./utils/flattenObject.cjs"),L=require("./utils/formatCompactNumber.cjs"),w=require("./utils/formatCurrency.cjs"),v=require("./utils/formatDate.cjs"),O=require("./utils/formatNumber.cjs"),B=require("./utils/formatTime.cjs"),z=require("./utils/generateInitials.cjs"),A=require("./utils/getGreetingByTime.cjs"),F=require("./utils/groupBy.cjs"),N=require("./utils/hasEqualProps.cjs"),D=require("./utils/addDays.cjs"),R=require("./utils/countdown.cjs"),x=require("./utils/differenceInDays.cjs"),M=require("./utils/isEmpty.cjs"),G=require("./utils/isEqual.cjs"),Q=require("./utils/isNonEmptyArray.cjs"),U=require("./utils/isPast.cjs"),V=require("./utils/isToday.cjs"),J=require("./utils/kebabCase.cjs"),W=require("./utils/keyBy.cjs"),K=require("./utils/maskEmail.cjs"),j=require("./utils/maskPhone.cjs"),H=require("./utils/mergeDeep.cjs"),X=require("./utils/omit.cjs"),Y=require("./utils/percentage.cjs"),Z=require("./utils/pick.cjs"),$=require("./utils/randomBetween.cjs"),ee=require("./utils/randomInt.cjs"),te=require("./utils/randomValue.cjs"),ue=require("./utils/removeExtraSpaces.cjs"),re=require("./utils/roundTo.cjs"),ie=require("./utils/slugify.cjs"),se=require("./utils/snakeCase.cjs"),oe=require("./utils/sortBy.cjs"),ae=require("./utils/timeAgo.cjs"),le=require("./utils/titleCase.cjs"),ne=require("./utils/truncate.cjs"),ce=require("./utils/uniqueBy.cjs"),de=require("./utils/isEmail.cjs"),fe=require("./utils/isPhone.cjs"),qe=require("./utils/isURL.cjs"),_e=require("./utils/isPasswordStrong.cjs"),me=require("./utils/isPAN.cjs"),ge=require("./utils/isAadhaar.cjs"),pe=require("./utils/isGST.cjs"),Se=require("./utils/isRequired.cjs"),ye=require("./utils/minLength.cjs"),Te=require("./utils/maxLength.cjs"),Pe=require("./utils/isMobile.cjs"),ke=require("./utils/isIOS.cjs"),be=require("./utils/isAndroid.cjs"),he=require("./utils/isSafari.cjs"),Ce=require("./utils/isDarkMode.cjs"),Ee=require("./utils/isOnline.cjs"),Ie=require("./utils/copyToClipboard.cjs"),Le=require("./utils/downloadFile.cjs"),we=require("./utils/openInNewTab.cjs"),ve=require("./utils/getScreenSize.cjs"),Oe=require("./utils/getQueryParams.cjs"),Be=require("./utils/setQueryParam.cjs"),ze=require("./utils/removeQueryParam.cjs"),Ae=require("./utils/buildURL.cjs"),Fe=require("./utils/redirectTo.cjs"),Ne=require("./utils/getCurrentPath.cjs"),De=require("./utils/isActiveRoute.cjs"),Re=require("./utils/setLocalStorage.cjs"),xe=require("./utils/getLocalStorage.cjs"),Me=require("./utils/removeLocalStorage.cjs"),Ge=require("./utils/setSessionStorage.cjs"),Qe=require("./utils/getSessionStorage.cjs"),Ue=require("./utils/clearStorage.cjs"),Ve=require("./utils/debounce.cjs"),Je=require("./utils/throttle.cjs"),We=require("./utils/memoize.cjs"),Ke=require("./utils/lazyLoadComponent.cjs"),je=require("./utils/requestIdleTask.cjs"),He=require("./utils/rafThrottle.cjs"),Xe=require("./utils/scrollToTop.cjs"),Ye=require("./utils/scrollToElement.cjs"),Ze=require("./utils/lockBodyScroll.cjs"),$e=require("./utils/unlockBodyScroll.cjs"),et=require("./utils/toggleFullscreen.cjs"),tt=require("./utils/focusElement.cjs"),ut=require("./utils/detectOutsideClick.cjs"),rt=require("./utils/measureElement.cjs"),it=require("./utils/announceToScreenReader.cjs"),st=require("./utils/trapFocus.cjs"),ot=require("./utils/generateAriaId.cjs"),at=require("./utils/handleKeyboardNavigation.cjs"),lt=require("./utils/logError.cjs"),nt=require("./utils/captureException.cjs"),ct=require("./utils/safeJSONParse.cjs"),dt=require("./utils/safeJSONStringify.cjs"),ft=require("./utils/fallback.cjs"),qt=require("./utils/isAuthenticated.cjs"),_t=require("./utils/getToken.cjs"),mt=require("./utils/setToken.cjs"),gt=require("./utils/removeToken.cjs"),pt=require("./utils/decodeJWT.cjs"),St=require("./utils/hasPermission.cjs"),yt=require("./utils/isFeatureEnabled.cjs"),Tt=require("./utils/getVariant.cjs"),Pt=require("./utils/retry.cjs"),kt=require("./utils/sleep.cjs"),bt=require("./utils/withTimeout.cjs"),ht=require("./utils/parallel.cjs"),Ct=require("./utils/sequential.cjs"),Et=require("./utils/safeAsync.cjs"),It=require("./utils/cancelablePromise.cjs"),Lt=require("./utils/fuzzySearch.cjs"),wt=require("./utils/filterByKey.cjs"),vt=require("./utils/multiSort.cjs"),Ot=require("./utils/paginate.cjs"),Bt=require("./utils/fadeIn.cjs"),zt=require("./utils/fadeOut.cjs"),At=require("./utils/smoothScroll.cjs"),Ft=require("./utils/waitForTransitionEnd.cjs"),Nt=require("./utils/trackEvent.cjs"),Dt=require("./utils/trackPageView.cjs"),Rt=require("./utils/measurePerformance.cjs"),xt=require("./utils/featureGate.cjs"),Mt=require("./utils/permissionGuard.cjs"),Gt=require("./utils/auditLog.cjs"),Qt=require("./utils/logInfo.cjs"),Ut=require("./utils/logWarn.cjs"),Vt=require("./utils/once.cjs"),Jt=require("./utils/noop.cjs"),Wt=require("./utils/identity.cjs"),Kt=require("./utils/pipe.cjs"),jt=require("./utils/singleton.cjs"),Ht=require("./utils/createPubSub.cjs"),Xt=require("./utils/deepFreeze.cjs"),Yt=require("./hooks/usePrevious.cjs"),Zt=require("./hooks/useDebounce.cjs"),$t=require("./hooks/useThrottle.cjs"),eu=require("./hooks/useIsMounted.cjs"),tu=require("./hooks/useEventListener.cjs"),uu=require("./hooks/useIntersectionObserver.cjs"),ru=require("./hooks/useMediaQuery.cjs"),iu=require("./hooks/useLocalStorage.cjs"),su=require("./hooks/useSessionStorage.cjs"),ou=require("./hooks/useOutsideClick.cjs"),au=require("./hooks/useWindowSize.cjs"),lu=require("./hooks/useOnlineStatus.cjs"),nu=require("./hooks/useCopyToClipboard.cjs"),cu=require("./hooks/useToggle.cjs"),du=require("./hooks/useTimeout.cjs"),fu=require("./hooks/useInterval.cjs"),qu=require("./hooks/useUnmount.cjs"),_u=require("./hooks/useFirstRender.cjs"),mu=require("./reactUtils/createContextHook.cjs"),gu=require("./reactUtils/composeProviders.cjs"),pu=require("./reactUtils/lazyImport.cjs"),Su=require("./reactUtils/withErrorBoundary.cjs"),yu=require("./reactUtils/withSuspense.cjs"),Tu=require("./reactUtils/memoCompare.cjs"),Pu=require("./reactUtils/createPortalNode.cjs"),ku=require("./components/Input/Input/Input.cjs"),bu=require("./components/Input/Textarea/Textarea.cjs"),hu=require("./components/Input/Checkbox/Checkbox.cjs"),Cu=require("./components/Input/RadioGroup/RadioGroup.cjs"),Eu=require("./components/Input/FileUploader/FileUploader.cjs"),Iu=require("./components/Switch/Switch.cjs");exports.Pagination=t.default;exports.Toast=e.default;exports.ToastContainer=e.ToastContainer;exports.Spinner=u.default;exports.Loader=r.default;exports.PageLoader=i.default;exports.OtpInput=s.default;exports.Dropdown=o.default;exports.RootComponent=a.default;exports.Selectbox=l.default;exports.Button=n.default;exports.Link=c.default;exports.Modal=d.default;exports.Timer=f.default;exports.Shimmer=q.default;exports.VideoPlayer=_.default;exports.Image=m.default;exports.Carousel=g.default;exports.Headings=p.default;exports.P=S.default;exports.DatePicker=y.default;exports.capFirstLetter=T.default;exports.capitalize=P.default;exports.camelCase=k.default;exports.chunk=b.default;exports.clamp=h.default;exports.compose=C.default;exports.deepClone=E.default;exports.flattenObject=I.default;exports.formatCompactNumber=L.default;exports.formatCurrency=w.default;exports.formatDate=v.default;exports.formatNumber=O.default;exports.formatTime=B.default;exports.generateInitials=z.default;exports.getGreetingByTime=A.default;exports.groupBy=F.default;exports.hasEqualProps=N.default;exports.addDays=D.default;exports.countdown=R.default;exports.differenceInDays=x.default;exports.isEmpty=M.default;exports.isEqual=G.default;exports.isNonEmptyArray=Q.default;exports.isPast=U.default;exports.isToday=V.default;exports.kebabCase=J.default;exports.keyBy=W.default;exports.maskEmail=K.default;exports.maskPhone=j.default;exports.mergeDeep=H.default;exports.omit=X.default;exports.percentage=Y.default;exports.pick=Z.default;exports.randomBetween=$.default;exports.randomInt=ee.default;exports.randomValue=te.default;exports.removeExtraSpaces=ue.default;exports.roundTo=re.default;exports.slugify=ie.default;exports.snakeCase=se.default;exports.sortBy=oe.default;exports.timeAgo=ae.default;exports.titleCase=le.default;exports.truncate=ne.default;exports.uniqueBy=ce.default;exports.isEmail=de.default;exports.isPhone=fe.default;exports.isURL=qe.default;exports.isPasswordStrong=_e.default;exports.isPAN=me.default;exports.isAadhaar=ge.default;exports.isGST=pe.default;exports.isRequired=Se.default;exports.minLength=ye.default;exports.maxLength=Te.default;exports.isMobile=Pe.default;exports.isIOS=ke.default;exports.isAndroid=be.default;exports.isSafari=he.default;exports.isDarkMode=Ce.default;exports.isOnline=Ee.default;exports.copyToClipboard=Ie.default;exports.downloadFile=Le.default;exports.openInNewTab=we.default;exports.getScreenSize=ve.default;exports.getQueryParams=Oe.default;exports.setQueryParam=Be.default;exports.removeQueryParam=ze.default;exports.buildURL=Ae.default;exports.redirectTo=Fe.default;exports.getCurrentPath=Ne.default;exports.isActiveRoute=De.default;exports.setLocalStorage=Re.default;exports.getLocalStorage=xe.default;exports.removeLocalStorage=Me.default;exports.setSessionStorage=Ge.default;exports.getSessionStorage=Qe.default;exports.clearStorage=Ue.default;exports.debounce=Ve.default;exports.throttle=Je.default;exports.memoize=We.default;exports.lazyLoadComponent=Ke.default;exports.requestIdleTask=je.default;exports.rafThrottle=He.default;exports.scrollToTop=Xe.default;exports.scrollToElement=Ye.default;exports.lockBodyScroll=Ze.default;exports.unlockBodyScroll=$e.default;exports.toggleFullscreen=et.default;exports.focusElement=tt.default;exports.detectOutsideClick=ut.default;exports.measureElement=rt.default;exports.announceToScreenReader=it.default;exports.trapFocus=st.default;exports.generateAriaId=ot.default;exports.handleKeyboardNavigation=at.default;exports.logError=lt.default;exports.captureException=nt.default;exports.safeJSONParse=ct.default;exports.safeJSONStringify=dt.default;exports.fallback=ft.default;exports.isAuthenticated=qt.default;exports.getToken=_t.default;exports.setToken=mt.default;exports.removeToken=gt.default;exports.decodeJWT=pt.default;exports.hasPermission=St.default;exports.isFeatureEnabled=yt.default;exports.getVariant=Tt.default;exports.retry=Pt.default;exports.sleep=kt.default;exports.withTimeout=bt.default;exports.parallel=ht.default;exports.sequential=Ct.default;exports.safeAsync=Et.default;exports.cancelablePromise=It.default;exports.fuzzySearch=Lt.default;exports.filterByKey=wt.default;exports.multiSort=vt.default;exports.paginate=Ot.default;exports.fadeIn=Bt.default;exports.fadeOut=zt.default;exports.smoothScroll=At.default;exports.waitForTransitionEnd=Ft.default;exports.trackEvent=Nt.default;exports.trackPageView=Dt.default;exports.measurePerformance=Rt.default;exports.featureGate=xt.default;exports.permissionGuard=Mt.default;exports.auditLog=Gt.default;exports.logInfo=Qt.default;exports.logWarn=Ut.default;exports.once=Vt.default;exports.noop=Jt.default;exports.identity=Wt.default;exports.pipe=Kt.default;exports.singleton=jt.default;exports.createPubSub=Ht.default;exports.deepFreeze=Xt.default;exports.usePrevious=Yt.default;exports.useDebounce=Zt.default;exports.useThrottle=$t.default;exports.useIsMounted=eu.default;exports.useEventListener=tu.default;exports.useIntersectionObserver=uu.default;exports.useMediaQuery=ru.default;exports.useLocalStorage=iu.default;exports.useSessionStorage=su.default;exports.useOutsideClick=ou.default;exports.useWindowSize=au.default;exports.useOnlineStatus=lu.default;exports.useCopyToClipboard=nu.default;exports.useToggle=cu.default;exports.useTimeout=du.default;exports.useInterval=fu.default;exports.useUnmount=qu.default;exports.useFirstRender=_u.default;exports.createContextHook=mu.default;exports.composeProviders=gu.default;exports.lazyImport=pu.default;exports.withErrorBoundary=Su.default;exports.withSuspense=yu.default;exports.memoCompare=Tu.default;exports.createPortalNode=Pu.default;exports.Input=ku.default;exports.Textarea=bu.default;exports.Checkbox=hu.default;exports.RadioGroup=Cu.default;exports.FileUploader=Eu.default;exports.Switch=Iu.default;
@@ -0,0 +1,125 @@
1
+ import { jsxs as H, jsx as g } from "react/jsx-runtime";
2
+ import { useState as I } from "react";
3
+ import a from "styled-components";
4
+ import o from "prop-types";
5
+ import $ from "../../colors/grey.js";
6
+ import x from "../../colors/green.js";
7
+ const n = 1.9, i = 0.28, w = n + i * 2, j = 0.7, k = i + n, M = a.button`
8
+ position: relative;
9
+ isolation: isolate;
10
+ height: ${w}rem;
11
+ width: ${({ $hasLabel: e }) => e ? "max-content" : "4.8rem"};
12
+ min-width: 4.8rem;
13
+ max-width: 20rem;
14
+ border-radius: ${w / 2}rem;
15
+ border: 1.5px solid rgba(0, 0, 0, 0.08);
16
+ display: flex;
17
+ align-items: center;
18
+ box-sizing: border-box;
19
+ flex-shrink: 0;
20
+ overflow: hidden;
21
+ cursor: ${({ disabled: e }) => e ? "not-allowed" : "pointer"};
22
+ outline: none;
23
+
24
+ padding-left: ${({ $checked: e, $hasLabel: r }) => r ? e ? `${i}rem` : `${k}rem` : "0"};
25
+ padding-right: ${({ $checked: e, $hasLabel: r }) => r ? e ? `${k}rem` : `${i}rem` : "0"};
26
+
27
+ transition:
28
+ background-color 0.3s ease,
29
+ box-shadow 0.3s ease,
30
+ padding-left 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
31
+ padding-right 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
32
+
33
+ background-color: ${({ $checked: e, $onColor: r, $offColor: s, disabled: l }) => l ? $.m300 : e ? r || x.m500 : s || $.m400};
34
+
35
+ &:focus-visible {
36
+ outline: 3px solid ${({ $onColor: e }) => e ? `${e}88` : `${x.m500}88`};
37
+ outline-offset: 2px;
38
+ }
39
+ `, P = a.div`
40
+ position: absolute;
41
+ top: calc(50% - ${n / 2}rem);
42
+ left: ${({ $checked: e }) => e ? `calc(100% - ${n + i}rem)` : `${i}rem`};
43
+ width: ${n}rem;
44
+ height: ${n}rem;
45
+ border-radius: 50%;
46
+ background: white;
47
+ display: flex;
48
+ align-items: center;
49
+ justify-content: center;
50
+ flex-shrink: 0;
51
+ transition: left 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
52
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
53
+ z-index: 1;
54
+ `, U = a.span`
55
+ position: relative;
56
+ z-index: 2;
57
+ font-size: 0.9rem;
58
+ font-weight: 700;
59
+ text-transform: uppercase;
60
+ letter-spacing: 0.05em;
61
+ white-space: nowrap;
62
+ overflow: hidden;
63
+ text-overflow: ellipsis;
64
+ user-select: none;
65
+ pointer-events: none;
66
+ padding: 0 ${j}rem;
67
+ color: rgba(255, 255, 255, 0.95);
68
+ `, E = ({
69
+ checked: e,
70
+ defaultChecked: r = !1,
71
+ onChange: s,
72
+ onIcon: l,
73
+ offIcon: d,
74
+ onColor: v,
75
+ offColor: T,
76
+ onLabel: m,
77
+ offLabel: p,
78
+ label: y,
79
+ id: z,
80
+ disabled: c = !1
81
+ }) => {
82
+ const [L, C] = I(r), f = e !== void 0, t = f ? e : L, _ = (D) => {
83
+ if (D.preventDefault(), c) return;
84
+ const b = !t;
85
+ f || C(b), s == null || s(b);
86
+ }, A = l != null || d != null, u = m != null || p != null, B = t ? l : d, h = t ? m : p;
87
+ return /* @__PURE__ */ H(
88
+ M,
89
+ {
90
+ id: z,
91
+ type: "button",
92
+ role: "switch",
93
+ "aria-checked": t,
94
+ "aria-label": y,
95
+ "aria-disabled": c,
96
+ onClick: _,
97
+ disabled: c,
98
+ $checked: t,
99
+ $onColor: v,
100
+ $offColor: T,
101
+ $hasLabel: u,
102
+ children: [
103
+ /* @__PURE__ */ g(P, { "aria-hidden": "true", $checked: t, children: A && B }),
104
+ u && h && /* @__PURE__ */ g(U, { children: h })
105
+ ]
106
+ }
107
+ );
108
+ };
109
+ E.propTypes = {
110
+ checked: o.bool,
111
+ defaultChecked: o.bool,
112
+ onChange: o.func,
113
+ onIcon: o.node,
114
+ offIcon: o.node,
115
+ onColor: o.string,
116
+ offColor: o.string,
117
+ onLabel: o.string,
118
+ offLabel: o.string,
119
+ label: o.string,
120
+ id: o.string,
121
+ disabled: o.bool
122
+ };
123
+ export {
124
+ E as default
125
+ };
@@ -0,0 +1,4 @@
1
+ import o from "./Switch.js";
2
+ export {
3
+ o as default
4
+ };
package/index.d.ts CHANGED
@@ -507,6 +507,38 @@ export interface RootComponentProps extends React.HTMLAttributes<HTMLDivElement>
507
507
 
508
508
  export declare const RootComponent: React.FC<RootComponentProps>;
509
509
 
510
+ // ---------------------------------------------------------------------------
511
+ // Switch
512
+ // ---------------------------------------------------------------------------
513
+
514
+ export interface SwitchProps {
515
+ /** Controlled checked state */
516
+ checked?: boolean;
517
+ /** Initial state for uncontrolled usage */
518
+ defaultChecked?: boolean;
519
+ /** Called with the new boolean value on every toggle */
520
+ onChange?: (value: boolean) => void;
521
+ /** Icon rendered inside the thumb when ON */
522
+ onIcon?: React.ReactNode;
523
+ /** Icon rendered inside the thumb when OFF */
524
+ offIcon?: React.ReactNode;
525
+ /** Track background colour when ON (any CSS colour string) */
526
+ onColor?: string;
527
+ /** Track background colour when OFF (any CSS colour string) */
528
+ offColor?: string;
529
+ /** Label text displayed inside the track when ON */
530
+ onLabel?: string;
531
+ /** Label text displayed inside the track when OFF */
532
+ offLabel?: string;
533
+ /** Accessible name for screen readers when no visible label is present */
534
+ label?: string;
535
+ /** id forwarded to the underlying button element */
536
+ id?: string;
537
+ disabled?: boolean;
538
+ }
539
+
540
+ export declare const Switch: React.FC<SwitchProps>;
541
+
510
542
  // ---------------------------------------------------------------------------
511
543
  // Hooks
512
544
  // ---------------------------------------------------------------------------
package/index.js CHANGED
@@ -5,13 +5,13 @@ import { default as m } from "./components/Loader/Loader.js";
5
5
  import { default as p } from "./components/PageLoader/PageLoader.js";
6
6
  import { default as i } from "./components/OtpInput/OtpInput.js";
7
7
  import { default as c } from "./components/Dropdown/Dropdown.js";
8
- import { default as y } from "./components/RootComponent/RootComponent.js";
8
+ import { default as S } from "./components/RootComponent/RootComponent.js";
9
9
  import { default as T } from "./components/Selectbox/Selectbox.js";
10
10
  import { default as k } from "./components/Button/Button.js";
11
- import { default as h } from "./components/Link/Link.js";
11
+ import { default as b } from "./components/Link/Link.js";
12
12
  import { default as E } from "./components/Modal/Modal.js";
13
13
  import { default as L } from "./components/Timer/Timer.js";
14
- import { default as w } from "./components/Shimmer/Shimmer.js";
14
+ import { default as v } from "./components/Shimmer/Shimmer.js";
15
15
  import { default as O } from "./components/VideoPlayer/VideoPlayer.js";
16
16
  import { default as A } from "./components/Image/Image.js";
17
17
  import { default as N } from "./components/Carousel/Carousel.js";
@@ -32,13 +32,13 @@ import { default as me } from "./utils/formatDate.js";
32
32
  import { default as pe } from "./utils/formatNumber.js";
33
33
  import { default as ie } from "./utils/formatTime.js";
34
34
  import { default as ce } from "./utils/generateInitials.js";
35
- import { default as ye } from "./utils/getGreetingByTime.js";
35
+ import { default as Se } from "./utils/getGreetingByTime.js";
36
36
  import { default as Te } from "./utils/groupBy.js";
37
37
  import { default as ke } from "./utils/hasEqualProps.js";
38
- import { default as he } from "./utils/addDays.js";
38
+ import { default as be } from "./utils/addDays.js";
39
39
  import { default as Ee } from "./utils/countdown.js";
40
40
  import { default as Le } from "./utils/differenceInDays.js";
41
- import { default as we } from "./utils/isEmpty.js";
41
+ import { default as ve } from "./utils/isEmpty.js";
42
42
  import { default as Oe } from "./utils/isEqual.js";
43
43
  import { default as Ae } from "./utils/isNonEmptyArray.js";
44
44
  import { default as Ne } from "./utils/isPast.js";
@@ -59,12 +59,12 @@ import { default as mo } from "./utils/roundTo.js";
59
59
  import { default as xo } from "./utils/slugify.js";
60
60
  import { default as no } from "./utils/snakeCase.js";
61
61
  import { default as go } from "./utils/sortBy.js";
62
- import { default as So } from "./utils/timeAgo.js";
62
+ import { default as yo } from "./utils/timeAgo.js";
63
63
  import { default as Po } from "./utils/titleCase.js";
64
- import { default as bo } from "./utils/truncate.js";
64
+ import { default as ho } from "./utils/truncate.js";
65
65
  import { default as Co } from "./utils/uniqueBy.js";
66
66
  import { default as Io } from "./utils/isEmail.js";
67
- import { default as vo } from "./utils/isPhone.js";
67
+ import { default as wo } from "./utils/isPhone.js";
68
68
  import { default as Bo } from "./utils/isURL.js";
69
69
  import { default as zo } from "./utils/isPasswordStrong.js";
70
70
  import { default as Fo } from "./utils/isPAN.js";
@@ -86,12 +86,12 @@ import { default as da } from "./utils/getScreenSize.js";
86
86
  import { default as xa } from "./utils/getQueryParams.js";
87
87
  import { default as na } from "./utils/setQueryParam.js";
88
88
  import { default as ga } from "./utils/removeQueryParam.js";
89
- import { default as Sa } from "./utils/buildURL.js";
89
+ import { default as ya } from "./utils/buildURL.js";
90
90
  import { default as Pa } from "./utils/redirectTo.js";
91
- import { default as ba } from "./utils/getCurrentPath.js";
91
+ import { default as ha } from "./utils/getCurrentPath.js";
92
92
  import { default as Ca } from "./utils/isActiveRoute.js";
93
93
  import { default as Ia } from "./utils/setLocalStorage.js";
94
- import { default as va } from "./utils/getLocalStorage.js";
94
+ import { default as wa } from "./utils/getLocalStorage.js";
95
95
  import { default as Ba } from "./utils/removeLocalStorage.js";
96
96
  import { default as za } from "./utils/setSessionStorage.js";
97
97
  import { default as Fa } from "./utils/getSessionStorage.js";
@@ -113,12 +113,12 @@ import { default as dt } from "./utils/measureElement.js";
113
113
  import { default as xt } from "./utils/announceToScreenReader.js";
114
114
  import { default as nt } from "./utils/trapFocus.js";
115
115
  import { default as gt } from "./utils/generateAriaId.js";
116
- import { default as St } from "./utils/handleKeyboardNavigation.js";
116
+ import { default as yt } from "./utils/handleKeyboardNavigation.js";
117
117
  import { default as Pt } from "./utils/logError.js";
118
- import { default as bt } from "./utils/captureException.js";
118
+ import { default as ht } from "./utils/captureException.js";
119
119
  import { default as Ct } from "./utils/safeJSONParse.js";
120
120
  import { default as It } from "./utils/safeJSONStringify.js";
121
- import { default as vt } from "./utils/fallback.js";
121
+ import { default as wt } from "./utils/fallback.js";
122
122
  import { default as Bt } from "./utils/isAuthenticated.js";
123
123
  import { default as zt } from "./utils/getToken.js";
124
124
  import { default as Ft } from "./utils/setToken.js";
@@ -140,12 +140,12 @@ import { default as dr } from "./utils/multiSort.js";
140
140
  import { default as xr } from "./utils/paginate.js";
141
141
  import { default as nr } from "./utils/fadeIn.js";
142
142
  import { default as gr } from "./utils/fadeOut.js";
143
- import { default as Sr } from "./utils/smoothScroll.js";
143
+ import { default as yr } from "./utils/smoothScroll.js";
144
144
  import { default as Pr } from "./utils/waitForTransitionEnd.js";
145
- import { default as br } from "./utils/trackEvent.js";
145
+ import { default as hr } from "./utils/trackEvent.js";
146
146
  import { default as Cr } from "./utils/trackPageView.js";
147
147
  import { default as Ir } from "./utils/measurePerformance.js";
148
- import { default as vr } from "./utils/featureGate.js";
148
+ import { default as wr } from "./utils/featureGate.js";
149
149
  import { default as Br } from "./utils/permissionGuard.js";
150
150
  import { default as zr } from "./utils/auditLog.js";
151
151
  import { default as Fr } from "./utils/logInfo.js";
@@ -166,13 +166,13 @@ import { default as uf } from "./hooks/useIntersectionObserver.js";
166
166
  import { default as df } from "./hooks/useMediaQuery.js";
167
167
  import { default as xf } from "./hooks/useLocalStorage.js";
168
168
  import { default as cf } from "./hooks/useSessionStorage.js";
169
- import { default as yf } from "./hooks/useOutsideClick.js";
169
+ import { default as Sf } from "./hooks/useOutsideClick.js";
170
170
  import { default as Tf } from "./hooks/useWindowSize.js";
171
171
  import { default as kf } from "./hooks/useOnlineStatus.js";
172
- import { default as hf } from "./hooks/useCopyToClipboard.js";
172
+ import { default as bf } from "./hooks/useCopyToClipboard.js";
173
173
  import { default as Ef } from "./hooks/useToggle.js";
174
174
  import { default as Lf } from "./hooks/useTimeout.js";
175
- import { default as wf } from "./hooks/useInterval.js";
175
+ import { default as vf } from "./hooks/useInterval.js";
176
176
  import { default as Of } from "./hooks/useUnmount.js";
177
177
  import { default as Af } from "./hooks/useFirstRender.js";
178
178
  import { default as Nf } from "./reactUtils/createContextHook.js";
@@ -187,6 +187,7 @@ import { default as Zf } from "./components/Input/Textarea/Textarea.js";
187
187
  import { default as $f } from "./components/Input/Checkbox/Checkbox.js";
188
188
  import { default as os } from "./components/Input/RadioGroup/RadioGroup.js";
189
189
  import { default as ts } from "./components/Input/FileUploader/FileUploader.js";
190
+ import { default as fs } from "./components/Switch/Switch.js";
190
191
  export {
191
192
  k as Button,
192
193
  N as Carousel,
@@ -197,7 +198,7 @@ export {
197
198
  R as Headings,
198
199
  A as Image,
199
200
  Xf as Input,
200
- h as Link,
201
+ b as Link,
201
202
  m as Loader,
202
203
  E as Modal,
203
204
  i as OtpInput,
@@ -205,24 +206,25 @@ export {
205
206
  p as PageLoader,
206
207
  a as Pagination,
207
208
  os as RadioGroup,
208
- y as RootComponent,
209
+ S as RootComponent,
209
210
  T as Selectbox,
210
- w as Shimmer,
211
+ v as Shimmer,
211
212
  l as Spinner,
213
+ fs as Switch,
212
214
  Zf as Textarea,
213
215
  L as Timer,
214
216
  r as Toast,
215
217
  f as ToastContainer,
216
218
  O as VideoPlayer,
217
- he as addDays,
219
+ be as addDays,
218
220
  xt as announceToScreenReader,
219
221
  zr as auditLog,
220
- Sa as buildURL,
222
+ ya as buildURL,
221
223
  K as camelCase,
222
224
  rr as cancelablePromise,
223
225
  V as capFirstLetter,
224
226
  W as capitalize,
225
- bt as captureException,
227
+ ht as captureException,
226
228
  X as chunk,
227
229
  Z as clamp,
228
230
  Da as clearStorage,
@@ -242,8 +244,8 @@ export {
242
244
  sa as downloadFile,
243
245
  nr as fadeIn,
244
246
  gr as fadeOut,
245
- vt as fallback,
246
- vr as featureGate,
247
+ wt as fallback,
248
+ wr as featureGate,
247
249
  ur as filterByKey,
248
250
  te as flattenObject,
249
251
  st as focusElement,
@@ -255,16 +257,16 @@ export {
255
257
  sr as fuzzySearch,
256
258
  gt as generateAriaId,
257
259
  ce as generateInitials,
258
- ba as getCurrentPath,
259
- ye as getGreetingByTime,
260
- va as getLocalStorage,
260
+ ha as getCurrentPath,
261
+ Se as getGreetingByTime,
262
+ wa as getLocalStorage,
261
263
  xa as getQueryParams,
262
264
  da as getScreenSize,
263
265
  Fa as getSessionStorage,
264
266
  zt as getToken,
265
267
  Jt as getVariant,
266
268
  Te as groupBy,
267
- St as handleKeyboardNavigation,
269
+ yt as handleKeyboardNavigation,
268
270
  ke as hasEqualProps,
269
271
  Mt as hasPermission,
270
272
  Ur as identity,
@@ -274,7 +276,7 @@ export {
274
276
  Bt as isAuthenticated,
275
277
  ea as isDarkMode,
276
278
  Io as isEmail,
277
- we as isEmpty,
279
+ ve as isEmpty,
278
280
  Oe as isEqual,
279
281
  Ut as isFeatureEnabled,
280
282
  qo as isGST,
@@ -285,7 +287,7 @@ export {
285
287
  Fo as isPAN,
286
288
  zo as isPasswordStrong,
287
289
  Ne as isPast,
288
- vo as isPhone,
290
+ wo as isPhone,
289
291
  Mo as isRequired,
290
292
  _o as isSafari,
291
293
  Re as isToday,
@@ -343,30 +345,30 @@ export {
343
345
  Hr as singleton,
344
346
  jt as sleep,
345
347
  xo as slugify,
346
- Sr as smoothScroll,
348
+ yr as smoothScroll,
347
349
  no as snakeCase,
348
350
  go as sortBy,
349
351
  Ma as throttle,
350
- So as timeAgo,
352
+ yo as timeAgo,
351
353
  Po as titleCase,
352
354
  rt as toggleFullscreen,
353
- br as trackEvent,
355
+ hr as trackEvent,
354
356
  Cr as trackPageView,
355
357
  nt as trapFocus,
356
- bo as truncate,
358
+ ho as truncate,
357
359
  Co as uniqueBy,
358
360
  at as unlockBodyScroll,
359
- hf as useCopyToClipboard,
361
+ bf as useCopyToClipboard,
360
362
  ef as useDebounce,
361
363
  sf as useEventListener,
362
364
  Af as useFirstRender,
363
365
  uf as useIntersectionObserver,
364
- wf as useInterval,
366
+ vf as useInterval,
365
367
  rf as useIsMounted,
366
368
  xf as useLocalStorage,
367
369
  df as useMediaQuery,
368
370
  kf as useOnlineStatus,
369
- yf as useOutsideClick,
371
+ Sf as useOutsideClick,
370
372
  _r as usePrevious,
371
373
  cf as useSessionStorage,
372
374
  af as useThrottle,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "meticulous-ui",
3
- "version": "3.8.0",
3
+ "version": "3.8.1",
4
4
  "license": "ISC",
5
5
  "description": "A comprehensive React UI component library with a wide range of customizable components, icons, colors, and utilities for building modern web applications.",
6
6
  "types": "./index.d.ts",