@scbt-ecom/ui 0.89.1 → 0.89.2
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/api.js.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/hooks.js.map +1 -1
- package/dist/index-Bu5RfW_Z.js.map +1 -1
- package/dist/{index-BFZfRLgg.js → index-DM5UjNZl.js} +506 -506
- package/dist/{index-BFZfRLgg.js.map → index-DM5UjNZl.js.map} +1 -1
- package/dist/lib/shared/ui/chips/Chips.d.ts +11 -0
- package/dist/lib/shared/ui/chips/index.d.ts +1 -0
- package/dist/lib/shared/ui/index.d.ts +1 -0
- package/dist/mergeRefs-Danc3mp8.js.map +1 -1
- package/dist/next.js.map +1 -1
- package/dist/renderImage-ViVSYcgG.js.map +1 -1
- package/dist/typeGuards-BHbj394R.js.map +1 -1
- package/dist/ui.js +349 -334
- package/dist/ui.js.map +1 -1
- package/dist/useDebounce-5MeprqTX.js.map +1 -1
- package/dist/useFieldsProgress-C918amw-.js.map +1 -1
- package/dist/utils-BAhmwXLC.js.map +1 -1
- package/dist/utils.js.map +1 -1
- package/dist/validation.js.map +1 -1
- package/dist/widget.js +1 -1
- package/dist/widget.js.map +1 -1
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFieldsProgress-C918amw-.js","sources":["../lib/shared/hooks/useBoolean.ts","../lib/shared/hooks/useObserverWidgets.ts","../lib/shared/hooks/useFieldsProgress.ts"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\ntype UseBooleanReturn = [value: boolean, action: (val?: boolean) => void]\n\nexport const useBoolean = (initialValue = false): UseBooleanReturn => {\n const [value, setValue] = React.useState(initialValue)\n const action = (val?: boolean) => setValue((prevValue) => val ?? !prevValue)\n\n return [value, action]\n}\n","'use client'\n\nimport { useEffect, useState } from 'react'\nimport type { AllowedWidgets } from '$/widgets'\n\nexport type UseObserverWidgets = {\n ids: AllowedWidgets[]\n options?: IntersectionObserverInit\n initialState?: boolean\n}\n\nexport const useObserverWidgets = ({ ids, options, initialState = false }: UseObserverWidgets) => {\n const [isVisible, setIsVisible] = useState(initialState)\n\n useEffect(() => {\n const observer = new IntersectionObserver((entries) => {\n const visibleIds = entries.filter((entry) => entry.isIntersecting).map((entry) => entry.target.id) as AllowedWidgets[]\n setIsVisible(visibleIds.some((id) => ids.includes(id)))\n }, options)\n\n const elementsMap = new Map<string, HTMLElement | null>()\n\n ids.forEach((id) => {\n const element = document.getElementById(id)\n elementsMap.set(id, element)\n if (element) {\n observer.observe(element)\n }\n })\n\n return () => {\n observer.disconnect()\n }\n }, [ids, options])\n\n return isVisible\n}\n","'use client'\n\nimport { useEffect, useState } from 'react'\nimport { type Control, type FieldValues, type Path, useWatch } from 'react-hook-form'\nimport { type ZodObject, type ZodRawShape } from 'zod'\n\nexport interface ISubscribedField<T extends FieldValues> {\n name: Path<T>\n progress: number\n maxPercent: number\n}\n\ntype TUseFieldsProgress<T extends FieldValues, S extends ZodRawShape> = {\n control: Control<T>\n schema: ZodObject<S>\n fields: ISubscribedField<T>[]\n}\n\nconst formatProgress = <T extends FieldValues>(subscribeFields: ISubscribedField<T>[]) => {\n return Object.values(subscribeFields)?.reduce((acc, value) => {\n return acc + value?.progress\n }, 0)\n}\n\nexport const useFieldsProgress = <T extends FieldValues, S extends ZodRawShape>({\n control,\n schema,\n fields\n}: TUseFieldsProgress<T, S>): number => {\n const [subscribeFields, setSubscribeFields] = useState<ISubscribedField<T>[]>(fields)\n const watchedFields = useWatch({ control })\n\n useEffect(() => {\n setSubscribeFields((prevFields) =>\n prevFields?.map((field) => {\n const fieldSchema = schema.shape[field.name]\n const result = fieldSchema.safeParse(watchedFields[field.name])\n if (result.success && watchedFields[field.name] && watchedFields[field.name] !== '') {\n return { ...field, progress: field.maxPercent }\n } else {\n return { ...field, progress: 0 }\n }\n })\n )\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchedFields])\n\n return formatProgress(subscribeFields)\n}\n"],"names":["useBoolean","initialValue","value","setValue","React","val","prevValue","useObserverWidgets","ids","options","initialState","isVisible","setIsVisible","useState","useEffect","observer","entries","visibleIds","entry","id","elementsMap","element","formatProgress","subscribeFields","_a","acc","useFieldsProgress","control","schema","fields","setSubscribeFields","watchedFields","useWatch","prevFields","field"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"useFieldsProgress-C918amw-.js","sources":["../lib/shared/hooks/useBoolean.ts","../lib/shared/hooks/useObserverWidgets.ts","../lib/shared/hooks/useFieldsProgress.ts"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\ntype UseBooleanReturn = [value: boolean, action: (val?: boolean) => void]\n\nexport const useBoolean = (initialValue = false): UseBooleanReturn => {\n const [value, setValue] = React.useState(initialValue)\n const action = (val?: boolean) => setValue((prevValue) => val ?? !prevValue)\n\n return [value, action]\n}\n","'use client'\n\nimport { useEffect, useState } from 'react'\nimport type { AllowedWidgets } from '$/widgets'\n\nexport type UseObserverWidgets = {\n ids: AllowedWidgets[]\n options?: IntersectionObserverInit\n initialState?: boolean\n}\n\nexport const useObserverWidgets = ({ ids, options, initialState = false }: UseObserverWidgets) => {\n const [isVisible, setIsVisible] = useState(initialState)\n\n useEffect(() => {\n const observer = new IntersectionObserver((entries) => {\n const visibleIds = entries.filter((entry) => entry.isIntersecting).map((entry) => entry.target.id) as AllowedWidgets[]\n setIsVisible(visibleIds.some((id) => ids.includes(id)))\n }, options)\n\n const elementsMap = new Map<string, HTMLElement | null>()\n\n ids.forEach((id) => {\n const element = document.getElementById(id)\n elementsMap.set(id, element)\n if (element) {\n observer.observe(element)\n }\n })\n\n return () => {\n observer.disconnect()\n }\n }, [ids, options])\n\n return isVisible\n}\n","'use client'\n\nimport { useEffect, useState } from 'react'\nimport { type Control, type FieldValues, type Path, useWatch } from 'react-hook-form'\nimport { type ZodObject, type ZodRawShape } from 'zod'\n\nexport interface ISubscribedField<T extends FieldValues> {\n name: Path<T>\n progress: number\n maxPercent: number\n}\n\ntype TUseFieldsProgress<T extends FieldValues, S extends ZodRawShape> = {\n control: Control<T>\n schema: ZodObject<S>\n fields: ISubscribedField<T>[]\n}\n\nconst formatProgress = <T extends FieldValues>(subscribeFields: ISubscribedField<T>[]) => {\n return Object.values(subscribeFields)?.reduce((acc, value) => {\n return acc + value?.progress\n }, 0)\n}\n\nexport const useFieldsProgress = <T extends FieldValues, S extends ZodRawShape>({\n control,\n schema,\n fields\n}: TUseFieldsProgress<T, S>): number => {\n const [subscribeFields, setSubscribeFields] = useState<ISubscribedField<T>[]>(fields)\n const watchedFields = useWatch({ control })\n\n useEffect(() => {\n setSubscribeFields((prevFields) =>\n prevFields?.map((field) => {\n const fieldSchema = schema.shape[field.name]\n const result = fieldSchema.safeParse(watchedFields[field.name])\n if (result.success && watchedFields[field.name] && watchedFields[field.name] !== '') {\n return { ...field, progress: field.maxPercent }\n } else {\n return { ...field, progress: 0 }\n }\n })\n )\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [watchedFields])\n\n return formatProgress(subscribeFields)\n}\n"],"names":["useBoolean","initialValue","value","setValue","React","val","prevValue","useObserverWidgets","ids","options","initialState","isVisible","setIsVisible","useState","useEffect","observer","entries","visibleIds","entry","id","elementsMap","element","formatProgress","subscribeFields","_a","acc","useFieldsProgress","control","schema","fields","setSubscribeFields","watchedFields","useWatch","prevFields","field"],"mappings":";;;AAMO,MAAMA,IAAa,CAACC,IAAe,OAA4B;AACpE,QAAM,CAACC,GAAOC,CAAQ,IAAIC,EAAM,SAASH,CAAY;AAGrD,SAAO,CAACC,GAFO,CAACG,MAAkBF,EAAS,CAACG,MAAcD,KAAO,CAACC,CAAS,CAEtD;AACvB,GCAaC,IAAqB,CAAC,EAAE,KAAAC,GAAK,SAAAC,GAAS,cAAAC,IAAe,SAAgC;AAChG,QAAM,CAACC,GAAWC,CAAY,IAAIC,EAASH,CAAY;AAEvD,SAAAI,EAAU,MAAM;AACd,UAAMC,IAAW,IAAI,qBAAqB,CAACC,MAAY;AACrD,YAAMC,IAAaD,EAAQ,OAAO,CAACE,MAAUA,EAAM,cAAc,EAAE,IAAI,CAACA,MAAUA,EAAM,OAAO,EAAE;AACjG,MAAAN,EAAaK,EAAW,KAAK,CAACE,MAAOX,EAAI,SAASW,CAAE,CAAC,CAAC;AAAA,IAAA,GACrDV,CAAO,GAEJW,wBAAkB,IAAA;AAExB,WAAAZ,EAAI,QAAQ,CAACW,MAAO;AAClB,YAAME,IAAU,SAAS,eAAeF,CAAE;AAC1C,MAAAC,EAAY,IAAID,GAAIE,CAAO,GACvBA,KACFN,EAAS,QAAQM,CAAO;AAAA,IAC1B,CACD,GAEM,MAAM;AACX,MAAAN,EAAS,WAAA;AAAA,IAAW;AAAA,EACtB,GACC,CAACP,GAAKC,CAAO,CAAC,GAEVE;AACT,GClBMW,IAAiB,CAAwBC,MAA2C;;AACxF,UAAOC,IAAA,OAAO,OAAOD,CAAe,MAA7B,gBAAAC,EAAgC,OAAO,CAACC,GAAKvB,MAC3CuB,KAAMvB,KAAA,gBAAAA,EAAO,WACnB;AACL,GAEawB,IAAoB,CAA+C;AAAA,EAC9E,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,QAAAC;AACF,MAAwC;AACtC,QAAM,CAACN,GAAiBO,CAAkB,IAAIjB,EAAgCgB,CAAM,GAC9EE,IAAgBC,EAAS,EAAE,SAAAL,GAAS;AAE1C,SAAAb,EAAU,MAAM;AACd,IAAAgB;AAAA,MAAmB,CAACG,MAClBA,KAAA,gBAAAA,EAAY,IAAI,CAACC,MACKN,EAAO,MAAMM,EAAM,IAAI,EAChB,UAAUH,EAAcG,EAAM,IAAI,CAAC,EACnD,WAAWH,EAAcG,EAAM,IAAI,KAAKH,EAAcG,EAAM,IAAI,MAAM,KACxE,EAAE,GAAGA,GAAO,UAAUA,EAAM,WAAA,IAE5B,EAAE,GAAGA,GAAO,UAAU,EAAA;AAAA,IAEhC;AAAA,EACH,GAEC,CAACH,CAAa,CAAC,GAEXT,EAAeC,CAAe;AACvC;"}
|