@razorpay/blade 12.26.0 → 12.28.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/build/lib/native/components/Amount/Amount.js +1 -1
- package/build/lib/native/components/Amount/Amount.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/useTaggedInput.js +1 -1
- package/build/lib/native/components/Input/BaseInput/useTaggedInput.js.map +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js +1 -1
- package/build/lib/native/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/native/tokens/theme/createTheme.js +1 -1
- package/build/lib/native/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/development/components/Amount/Amount.js +10 -5
- package/build/lib/web/development/components/Amount/Amount.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/useTaggedInput.js +8 -32
- package/build/lib/web/development/components/Input/BaseInput/useTaggedInput.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepItem.web.js +9 -5
- package/build/lib/web/development/components/StepGroup/StepItem.web.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js +4 -2
- package/build/lib/web/development/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepLine.web.js +2 -10
- package/build/lib/web/development/components/StepGroup/StepLine.web.js.map +1 -1
- package/build/lib/web/development/tokens/theme/createTheme.js +4 -4
- package/build/lib/web/development/tokens/theme/createTheme.js.map +1 -1
- package/build/lib/web/production/components/Amount/Amount.js +10 -5
- package/build/lib/web/production/components/Amount/Amount.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/useTaggedInput.js +8 -32
- package/build/lib/web/production/components/Input/BaseInput/useTaggedInput.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepItem.web.js +9 -5
- package/build/lib/web/production/components/StepGroup/StepItem.web.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js +4 -2
- package/build/lib/web/production/components/StepGroup/StepItemMarker.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepLine.web.js +2 -10
- package/build/lib/web/production/components/StepGroup/StepLine.web.js.map +1 -1
- package/build/lib/web/production/tokens/theme/createTheme.js +4 -4
- package/build/lib/web/production/tokens/theme/createTheme.js.map +1 -1
- package/build/types/components/index.d.ts +8 -1
- package/build/types/components/index.native.d.ts +8 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTaggedInput.js","sources":["../../../../../../../src/components/Input/BaseInput/useTaggedInput.ts"],"sourcesContent":["import React from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport type { BladeElementRefWithValue } from '~utils/types';\nimport type { FormInputOnEvent, FormInputOnKeyDownEvent } from '~components/Form/FormTypes';\n// import { isReactNative } from '~utils';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport { isReactNative } from '~utils';\nimport { useControllableState } from '~utils/useControllable';\n\ntype TaggedInputProps = {\n isTaggedInput?: boolean;\n tags?: string[];\n onTagChange?: ({ tags }: { tags: string[] }) => void;\n};\n\ntype UseTaggedInputProps = TaggedInputProps &\n Pick<BaseInputProps, 'isDisabled' | 'onChange' | 'name' | 'value' | 'defaultValue'> & {\n inputRef: React.RefObject<BladeElementRefWithValue | null>;\n };\n\ntype UseTaggedInputReturn = {\n activeTagIndex: number;\n setActiveTagIndex: (activeTagIndex: number) => void;\n getTags: ({ size }: { size: NonNullable<BaseInputProps['size']> }) => React.ReactElement[];\n handleTaggedInputKeydown: (e: FormInputOnKeyDownEvent) => void;\n handleTaggedInputChange: FormInputOnEvent;\n handleTagsClear: () => void;\n};\n\nconst useTaggedInput = ({\n tags,\n isDisabled,\n onTagChange,\n isTaggedInput,\n inputRef,\n onChange,\n name,\n value,\n defaultValue,\n}: UseTaggedInputProps): UseTaggedInputReturn => {\n const [activeTagIndex, setActiveTagIndex] = React.useState(-1);\n const [inputValueUncontrolled, setInputValueUncontrolled] = React.useState(defaultValue ?? '');\n const [tagsValue, setTagsValue] = useControllableState({\n value: tags,\n defaultValue: [],\n onChange: (tags) => {\n onTagChange?.({ tags });\n },\n });\n\n const isTagsControlled = Boolean(tags);\n\n const getNewTagsArray = (indexToRemove: number): string[] => {\n const currentTags = tagsValue;\n\n if (!currentTags) {\n return [];\n }\n\n // Check if the index is valid\n if (indexToRemove < 0 || indexToRemove >= currentTags.length) {\n return currentTags; // Return the original array\n }\n\n // Create a new array without the element at the specified index\n const newArray = currentTags\n .slice(0, indexToRemove)\n .concat(currentTags.slice(indexToRemove + 1));\n\n return newArray;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }): React.ReactElement[] => {\n return getTagsGroup({\n size,\n tags: tagsValue,\n activeTagIndex,\n isDisabled,\n onDismiss: ({ tagIndex }) => {\n console.log('dismiss', { tagIndex });\n if (!isTagsControlled) {\n setTagsValue(() => getNewTagsArray(tagIndex));\n }\n onTagChange?.({ tags: getNewTagsArray(tagIndex) });\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [activeTagIndex, tags, tagsValue, isDisabled],\n );\n\n const handleTaggedInputChange: FormInputOnEvent = ({ value }) => {\n if (!isTaggedInput) {\n return;\n }\n setInputValueUncontrolled(value ?? '');\n };\n\n const handleTagsClear = (): void => {\n if (!isTaggedInput) {\n return;\n }\n\n if (!isTagsControlled) {\n setTagsValue(() => []);\n }\n\n onTagChange?.({ tags: [] });\n };\n\n const clearInput = (): void => {\n const isControlledValue = value !== undefined;\n\n if (isControlledValue) {\n // In Controlled component, we don't clear input ourselves. We just call onChange with empty value\n onChange?.({ name, value: '' });\n return;\n }\n\n if (!inputRef.current) {\n return;\n }\n\n setInputValueUncontrolled('');\n\n if (isReactNative()) {\n setTimeout(() => {\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: clear does exist in react native\n inputRef.current?.clear();\n }, 10);\n return;\n }\n\n inputRef.current.value = '';\n };\n\n const handleTaggedInputKeydown = (e: FormInputOnKeyDownEvent): void => {\n if (!isTaggedInput) {\n return;\n }\n\n const currentTags = tagsValue;\n const isControlledValue = value !== undefined;\n const inputValue = isControlledValue ? value?.trim() : inputValueUncontrolled.trim();\n if (e.key === 'Enter' || e.key === ',') {\n e.event.preventDefault?.(); // we don't want textarea to treat enter as line break in tagged inputs\n if (inputValue) {\n if (!isTagsControlled) {\n setTagsValue(() => [...currentTags, inputValue]);\n }\n onTagChange?.({ tags: [...currentTags, inputValue] });\n clearInput();\n setActiveTagIndex(-1);\n }\n }\n if (e.key === 'Backspace' && !inputValue && activeTagIndex < 0 && currentTags.length > 0) {\n if (!isTagsControlled) {\n setTagsValue(() => currentTags.slice(0, -1));\n }\n onTagChange?.({ tags: currentTags.slice(0, -1) });\n }\n };\n\n return {\n activeTagIndex,\n setActiveTagIndex,\n getTags,\n handleTaggedInputKeydown,\n handleTaggedInputChange,\n handleTagsClear,\n };\n};\n\nexport type { TaggedInputProps };\nexport { useTaggedInput };\n"],"names":["useTaggedInput","_ref","tags","isDisabled","onTagChange","isTaggedInput","inputRef","onChange","name","value","defaultValue","_React$useState","React","useState","_React$useState2","_slicedToArray","activeTagIndex","setActiveTagIndex","_React$useState3","_React$useState4","inputValueUncontrolled","setInputValueUncontrolled","_useControllableState","useControllableState","_useControllableState2","tagsValue","setTagsValue","isTagsControlled","Boolean","getNewTagsArray","indexToRemove","currentTags","length","newArray","slice","concat","getTags","useMemo","_ref2","size","getTagsGroup","onDismiss","_ref3","tagIndex","console","log","handleTaggedInputChange","_ref4","handleTagsClear","clearInput","isControlledValue","undefined","current","isReactNative","setTimeout","_inputRef$current","clear","handleTaggedInputKeydown","e","inputValue","trim","key","_e$event$preventDefau","_e$event","event","preventDefault","call","_toConsumableArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useTaggedInput.js","sources":["../../../../../../../src/components/Input/BaseInput/useTaggedInput.ts"],"sourcesContent":["import React from 'react';\nimport type { BaseInputProps } from './BaseInput';\nimport type { BladeElementRefWithValue } from '~utils/types';\nimport type { FormInputOnEvent, FormInputOnKeyDownEvent } from '~components/Form/FormTypes';\nimport { getTagsGroup } from '~components/Tag/getTagsGroup';\nimport { isReactNative } from '~utils';\nimport { useControllableState } from '~utils/useControllable';\n\ntype TaggedInputProps = {\n isTaggedInput?: boolean;\n tags?: string[];\n onTagChange?: ({ tags }: { tags: string[] }) => void;\n};\n\ntype UseTaggedInputProps = TaggedInputProps &\n Pick<BaseInputProps, 'isDisabled' | 'onChange' | 'name' | 'value' | 'defaultValue'> & {\n inputRef: React.RefObject<BladeElementRefWithValue | null>;\n };\n\ntype UseTaggedInputReturn = {\n activeTagIndex: number;\n setActiveTagIndex: (activeTagIndex: number) => void;\n getTags: ({ size }: { size: NonNullable<BaseInputProps['size']> }) => React.ReactElement[];\n handleTaggedInputKeydown: (e: FormInputOnKeyDownEvent) => void;\n handleTaggedInputChange: FormInputOnEvent;\n handleTagsClear: () => void;\n};\n\nconst useTaggedInput = ({\n tags,\n isDisabled,\n onTagChange,\n isTaggedInput,\n inputRef,\n onChange,\n name,\n value,\n defaultValue,\n}: UseTaggedInputProps): UseTaggedInputReturn => {\n const [activeTagIndex, setActiveTagIndex] = React.useState(-1);\n const [inputValueUncontrolled, setInputValueUncontrolled] = React.useState(defaultValue ?? '');\n const [tagsValue, setTagsValue] = useControllableState({\n value: tags,\n defaultValue: [],\n onChange: (tags) => {\n onTagChange?.({ tags });\n },\n });\n\n const getNewTagsArray = (indexToRemove: number): string[] => {\n const currentTags = tagsValue;\n\n if (!currentTags) {\n return [];\n }\n\n // Check if the index is valid\n if (indexToRemove < 0 || indexToRemove >= currentTags.length) {\n return currentTags; // Return the original array\n }\n\n // Create a new array without the element at the specified index\n const newArray = currentTags\n .slice(0, indexToRemove)\n .concat(currentTags.slice(indexToRemove + 1));\n\n return newArray;\n };\n\n const getTags = React.useMemo(\n () => ({ size }: { size: NonNullable<BaseInputProps['size']> }): React.ReactElement[] => {\n return getTagsGroup({\n size,\n tags: tagsValue,\n activeTagIndex,\n isDisabled,\n onDismiss: ({ tagIndex }) => {\n setTagsValue(() => getNewTagsArray(tagIndex));\n },\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [activeTagIndex, tags, tagsValue, isDisabled],\n );\n\n const handleTaggedInputChange: FormInputOnEvent = ({ value }) => {\n if (!isTaggedInput) {\n return;\n }\n setInputValueUncontrolled(value ?? '');\n };\n\n const handleTagsClear = (): void => {\n if (!isTaggedInput) {\n return;\n }\n\n setTagsValue(() => []);\n };\n\n const clearInput = (): void => {\n const isControlledValue = value !== undefined;\n\n if (isControlledValue) {\n // In Controlled component, we don't clear input ourselves. We just call onChange with empty value\n onChange?.({ name, value: '' });\n return;\n }\n\n if (!inputRef.current) {\n return;\n }\n\n setInputValueUncontrolled('');\n\n if (isReactNative()) {\n setTimeout(() => {\n // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error\n // @ts-ignore: clear does exist in react native\n inputRef.current?.clear();\n }, 10);\n return;\n }\n\n inputRef.current.value = '';\n };\n\n const handleTaggedInputKeydown = (e: FormInputOnKeyDownEvent): void => {\n if (!isTaggedInput) {\n return;\n }\n\n const currentTags = tagsValue;\n const isControlledValue = value !== undefined;\n const inputValue = isControlledValue ? value?.trim() : inputValueUncontrolled.trim();\n if (e.key === 'Enter' || e.key === ',') {\n e.event.preventDefault?.(); // we don't want textarea to treat enter as line break in tagged inputs\n if (inputValue) {\n setTagsValue(() => [...currentTags, inputValue]);\n clearInput();\n setActiveTagIndex(-1);\n }\n }\n if (e.key === 'Backspace' && !inputValue && activeTagIndex < 0 && currentTags.length > 0) {\n setTagsValue(() => currentTags.slice(0, -1));\n }\n };\n\n return {\n activeTagIndex,\n setActiveTagIndex,\n getTags,\n handleTaggedInputKeydown,\n handleTaggedInputChange,\n handleTagsClear,\n };\n};\n\nexport type { TaggedInputProps };\nexport { useTaggedInput };\n"],"names":["useTaggedInput","_ref","tags","isDisabled","onTagChange","isTaggedInput","inputRef","onChange","name","value","defaultValue","_React$useState","React","useState","_React$useState2","_slicedToArray","activeTagIndex","setActiveTagIndex","_React$useState3","_React$useState4","inputValueUncontrolled","setInputValueUncontrolled","_useControllableState","useControllableState","_useControllableState2","tagsValue","setTagsValue","getNewTagsArray","indexToRemove","currentTags","length","newArray","slice","concat","getTags","useMemo","_ref2","size","getTagsGroup","onDismiss","_ref3","tagIndex","handleTaggedInputChange","_ref4","handleTagsClear","clearInput","isControlledValue","undefined","current","isReactNative","setTimeout","_inputRef$current","clear","handleTaggedInputKeydown","e","inputValue","trim","key","_e$event$preventDefau","_e$event","event","preventDefault","call","_toConsumableArray"],"mappings":";;;;;;;;AA4BA,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAU6B;AAAA,EAAA,IAT/CC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IACVC,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,aAAa,GAAAJ,IAAA,CAAbI,aAAa;IACbC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IACRC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;IACRC,IAAI,GAAAP,IAAA,CAAJO,IAAI;IACJC,KAAK,GAAAR,IAAA,CAALQ,KAAK;IACLC,YAAY,GAAAT,IAAA,CAAZS,YAAY,CAAA;EAEZ,IAAAC,eAAA,GAA4CC,cAAK,CAACC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAAAC,gBAAA,GAAAC,cAAA,CAAAJ,eAAA,EAAA,CAAA,CAAA;AAAvDK,IAAAA,cAAc,GAAAF,gBAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,iBAAiB,GAAAH,gBAAA,CAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAI,gBAAA,GAA4DN,cAAK,CAACC,QAAQ,CAACH,YAAY,KAAA,IAAA,IAAZA,YAAY,KAAA,KAAA,CAAA,GAAZA,YAAY,GAAI,EAAE,CAAC;IAAAS,gBAAA,GAAAJ,cAAA,CAAAG,gBAAA,EAAA,CAAA,CAAA;AAAvFE,IAAAA,sBAAsB,GAAAD,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,yBAAyB,GAAAF,gBAAA,CAAA,CAAA,CAAA,CAAA;EACxD,IAAAG,qBAAA,GAAkCC,oBAAoB,CAAC;AACrDd,MAAAA,KAAK,EAAEP,IAAI;AACXQ,MAAAA,YAAY,EAAE,EAAE;AAChBH,MAAAA,QAAQ,EAAE,SAAAA,QAACL,CAAAA,IAAI,EAAK;AAClBE,QAAAA,WAAW,KAAXA,IAAAA,IAAAA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAG;AAAEF,UAAAA,IAAI,EAAJA,IAAAA;AAAK,SAAC,CAAC,CAAA;AACzB,OAAA;AACF,KAAC,CAAC;IAAAsB,sBAAA,GAAAT,cAAA,CAAAO,qBAAA,EAAA,CAAA,CAAA;AANKG,IAAAA,SAAS,GAAAD,sBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,YAAY,GAAAF,sBAAA,CAAA,CAAA,CAAA,CAAA;AAQ9B,EAAA,IAAMG,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,aAAqB,EAAe;IAC3D,IAAMC,WAAW,GAAGJ,SAAS,CAAA;IAE7B,IAAI,CAACI,WAAW,EAAE;AAChB,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;;AAEA;IACA,IAAID,aAAa,GAAG,CAAC,IAAIA,aAAa,IAAIC,WAAW,CAACC,MAAM,EAAE;MAC5D,OAAOD,WAAW,CAAC;AACrB,KAAA;;AAEA;IACA,IAAME,QAAQ,GAAGF,WAAW,CACzBG,KAAK,CAAC,CAAC,EAAEJ,aAAa,CAAC,CACvBK,MAAM,CAACJ,WAAW,CAACG,KAAK,CAACJ,aAAa,GAAG,CAAC,CAAC,CAAC,CAAA;AAE/C,IAAA,OAAOG,QAAQ,CAAA;GAChB,CAAA;AAED,EAAA,IAAMG,OAAO,GAAGtB,cAAK,CAACuB,OAAO,CAC3B,YAAA;IAAA,OAAM,UAAAC,KAAA,EAAmF;AAAA,MAAA,IAAhFC,IAAI,GAAAD,KAAA,CAAJC,IAAI,CAAA;AACX,MAAA,OAAOC,YAAY,CAAC;AAClBD,QAAAA,IAAI,EAAJA,IAAI;AACJnC,QAAAA,IAAI,EAAEuB,SAAS;AACfT,QAAAA,cAAc,EAAdA,cAAc;AACdb,QAAAA,UAAU,EAAVA,UAAU;AACVoC,QAAAA,SAAS,EAAE,SAAAA,SAAAC,CAAAA,KAAA,EAAkB;AAAA,UAAA,IAAfC,QAAQ,GAAAD,KAAA,CAARC,QAAQ,CAAA;AACpBf,UAAAA,YAAY,CAAC,YAAA;YAAA,OAAMC,eAAe,CAACc,QAAQ,CAAC,CAAA;WAAC,CAAA,CAAA;AAC/C,SAAA;AACF,OAAC,CAAC,CAAA;KACH,CAAA;AAAA,GAAA;AACD;EACA,CAACzB,cAAc,EAAEd,IAAI,EAAEuB,SAAS,EAAEtB,UAAU,CAC9C,CAAC,CAAA;AAED,EAAA,IAAMuC,uBAAyC,GAAG,SAA5CA,uBAAyCA,CAAAC,KAAA,EAAkB;AAAA,IAAA,IAAZlC,KAAK,GAAAkC,KAAA,CAALlC,KAAK,CAAA;IACxD,IAAI,CAACJ,aAAa,EAAE;AAClB,MAAA,OAAA;AACF,KAAA;IACAgB,yBAAyB,CAACZ,KAAK,KAALA,IAAAA,IAAAA,KAAK,cAALA,KAAK,GAAI,EAAE,CAAC,CAAA;GACvC,CAAA;AAED,EAAA,IAAMmC,eAAe,GAAG,SAAlBA,eAAeA,GAAe;IAClC,IAAI,CAACvC,aAAa,EAAE;AAClB,MAAA,OAAA;AACF,KAAA;AAEAqB,IAAAA,YAAY,CAAC,YAAA;AAAA,MAAA,OAAM,EAAE,CAAA;KAAC,CAAA,CAAA;GACvB,CAAA;AAED,EAAA,IAAMmB,UAAU,GAAG,SAAbA,UAAUA,GAAe;AAC7B,IAAA,IAAMC,iBAAiB,GAAGrC,KAAK,KAAKsC,SAAS,CAAA;AAE7C,IAAA,IAAID,iBAAiB,EAAE;AACrB;AACAvC,MAAAA,QAAQ,KAARA,IAAAA,IAAAA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAG;AAAEC,QAAAA,IAAI,EAAJA,IAAI;AAAEC,QAAAA,KAAK,EAAE,EAAA;AAAG,OAAC,CAAC,CAAA;AAC/B,MAAA,OAAA;AACF,KAAA;AAEA,IAAA,IAAI,CAACH,QAAQ,CAAC0C,OAAO,EAAE;AACrB,MAAA,OAAA;AACF,KAAA;IAEA3B,yBAAyB,CAAC,EAAE,CAAC,CAAA;IAE7B,IAAI4B,aAAa,EAAE,EAAE;AACnBC,MAAAA,UAAU,CAAC,YAAM;AAAA,QAAA,IAAAC,iBAAA,CAAA;AACf;AACA;AACA,QAAA,CAAAA,iBAAA,GAAA7C,QAAQ,CAAC0C,OAAO,MAAA,IAAA,IAAAG,iBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,iBAAA,CAAkBC,KAAK,EAAE,CAAA;OAC1B,EAAE,EAAE,CAAC,CAAA;AACN,MAAA,OAAA;AACF,KAAA;AAEA9C,IAAAA,QAAQ,CAAC0C,OAAO,CAACvC,KAAK,GAAG,EAAE,CAAA;GAC5B,CAAA;AAED,EAAA,IAAM4C,wBAAwB,GAAG,SAA3BA,wBAAwBA,CAAIC,CAA0B,EAAW;IACrE,IAAI,CAACjD,aAAa,EAAE;AAClB,MAAA,OAAA;AACF,KAAA;IAEA,IAAMwB,WAAW,GAAGJ,SAAS,CAAA;AAC7B,IAAA,IAAMqB,iBAAiB,GAAGrC,KAAK,KAAKsC,SAAS,CAAA;AAC7C,IAAA,IAAMQ,UAAU,GAAGT,iBAAiB,GAAGrC,KAAK,KAAA,IAAA,IAALA,KAAK,KAALA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,KAAK,CAAE+C,IAAI,EAAE,GAAGpC,sBAAsB,CAACoC,IAAI,EAAE,CAAA;IACpF,IAAIF,CAAC,CAACG,GAAG,KAAK,OAAO,IAAIH,CAAC,CAACG,GAAG,KAAK,GAAG,EAAE;MAAA,IAAAC,qBAAA,EAAAC,QAAA,CAAA;AACtC,MAAA,CAAAD,qBAAA,GAAAC,CAAAA,QAAA,GAAAL,CAAC,CAACM,KAAK,EAACC,cAAc,cAAAH,qBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAtBA,qBAAA,CAAAI,IAAA,CAAAH,QAAyB,CAAC,CAAC;AAC3B,MAAA,IAAIJ,UAAU,EAAE;AACd7B,QAAAA,YAAY,CAAC,YAAA;AAAA,UAAA,OAAA,EAAA,CAAAO,MAAA,CAAA8B,kBAAA,CAAUlC,WAAW,IAAE0B,UAAU,CAAA,CAAA,CAAA;AAAA,SAAC,CAAC,CAAA;AAChDV,QAAAA,UAAU,EAAE,CAAA;QACZ5B,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;AACvB,OAAA;AACF,KAAA;AACA,IAAA,IAAIqC,CAAC,CAACG,GAAG,KAAK,WAAW,IAAI,CAACF,UAAU,IAAIvC,cAAc,GAAG,CAAC,IAAIa,WAAW,CAACC,MAAM,GAAG,CAAC,EAAE;AACxFJ,MAAAA,YAAY,CAAC,YAAA;QAAA,OAAMG,WAAW,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;OAAC,CAAA,CAAA;AAC9C,KAAA;GACD,CAAA;EAED,OAAO;AACLhB,IAAAA,cAAc,EAAdA,cAAc;AACdC,IAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBiB,IAAAA,OAAO,EAAPA,OAAO;AACPmB,IAAAA,wBAAwB,EAAxBA,wBAAwB;AACxBX,IAAAA,uBAAuB,EAAvBA,uBAAuB;AACvBE,IAAAA,eAAe,EAAfA,eAAAA;GACD,CAAA;AACH;;;;"}
|
|
@@ -45,12 +45,12 @@ var InteractiveItemHeaderBox = /*#__PURE__*/styled.button.withConfig({
|
|
|
45
45
|
textDecoration: 'none',
|
|
46
46
|
border: 'none',
|
|
47
47
|
textAlign: 'inherit',
|
|
48
|
-
backgroundColor: props.
|
|
48
|
+
backgroundColor: props.theme.colors.transparent,
|
|
49
49
|
borderRadius: props.theme.border.radius.medium,
|
|
50
50
|
width: '100%',
|
|
51
51
|
transition: "background-color ".concat(props.theme.motion.duration.xquick, " ").concat(props.theme.motion.easing.standard),
|
|
52
52
|
':not([disabled]):hover': {
|
|
53
|
-
backgroundColor: props.isSelected ? props.theme.colors.interactive.background.primary.
|
|
53
|
+
backgroundColor: props.isSelected ? props.theme.colors.interactive.background.primary.faded : props.theme.colors.interactive.background.gray["default"]
|
|
54
54
|
},
|
|
55
55
|
':not([disabled]):focus-visible': _objectSpread({}, getFocusRingStyles({
|
|
56
56
|
theme: props.theme
|
|
@@ -79,6 +79,7 @@ var getStepTypeFromIndex = function getStepTypeFromIndex(_ref) {
|
|
|
79
79
|
return 'middle';
|
|
80
80
|
};
|
|
81
81
|
var _StepItem = function _StepItem(_ref2) {
|
|
82
|
+
var _marker$props;
|
|
82
83
|
var title = _ref2.title,
|
|
83
84
|
titleColor = _ref2.titleColor,
|
|
84
85
|
timestamp = _ref2.timestamp,
|
|
@@ -140,8 +141,8 @@ var _StepItem = function _StepItem(_ref2) {
|
|
|
140
141
|
children: [/*#__PURE__*/jsxs(Box, {
|
|
141
142
|
children: [/*#__PURE__*/jsx(Text, {
|
|
142
143
|
size: stepItemHeaderTokens[size$1].title,
|
|
143
|
-
color: isDisabled ? 'surface.text.gray.disabled' : titleColor !== null && titleColor !== void 0 ? titleColor : 'surface.text.gray.subtle',
|
|
144
|
-
weight: isNested ? 'regular' : '
|
|
144
|
+
color: isDisabled ? 'surface.text.gray.disabled' : isSelected ? 'surface.text.primary.normal' : titleColor !== null && titleColor !== void 0 ? titleColor : 'surface.text.gray.subtle',
|
|
145
|
+
weight: isNested ? 'regular' : 'medium',
|
|
145
146
|
children: title
|
|
146
147
|
}), /*#__PURE__*/jsx(Text, {
|
|
147
148
|
size: stepItemHeaderTokens[size$1].timestamp,
|
|
@@ -162,6 +163,9 @@ var _StepItem = function _StepItem(_ref2) {
|
|
|
162
163
|
paddingY: 'spacing.3',
|
|
163
164
|
paddingX: 'spacing.4'
|
|
164
165
|
};
|
|
166
|
+
var enhancedMarker = marker ? /*#__PURE__*/React__default.cloneElement(marker, {
|
|
167
|
+
isDisabled: isDisabled !== null && isDisabled !== void 0 ? isDisabled : marker === null || marker === void 0 ? void 0 : (_marker$props = marker.props) === null || _marker$props === void 0 ? void 0 : _marker$props.isDisabled
|
|
168
|
+
}) : undefined;
|
|
165
169
|
return /*#__PURE__*/jsxs(BaseBox, _objectSpread(_objectSpread(_objectSpread({
|
|
166
170
|
display: "flex",
|
|
167
171
|
flexDirection: isVertical ? 'row' : 'column',
|
|
@@ -181,7 +185,7 @@ var _StepItem = function _StepItem(_ref2) {
|
|
|
181
185
|
shouldShowStartBranch: !isFirstItem,
|
|
182
186
|
shouldShowEndBranch: !isLastItem,
|
|
183
187
|
stepType: stepType,
|
|
184
|
-
marker:
|
|
188
|
+
marker: enhancedMarker,
|
|
185
189
|
stepProgress: stepProgress
|
|
186
190
|
}), /*#__PURE__*/jsxs(Box, {
|
|
187
191
|
flex: "1",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepItem.web.js","sources":["../../../../../../src/components/StepGroup/StepItem.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { StepLine } from './StepLine';\nimport type { StepLineProps } from './StepLine';\nimport { useStepGroup } from './StepGroupContext';\nimport type {\n InteractiveItemHeaderProps,\n StepGroupContextType,\n StepGroupProps,\n StepItemProps,\n} from './types';\nimport { componentIds } from './componentIds';\nimport { itemLineGap, stepItemHeaderTokens } from './tokens';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport BaseBox from '~components/Box/BaseBox';\nimport { makeSize, makeSpace } from '~utils';\nimport { size as sizeTokens } from '~tokens/global';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { throwBladeError } from '~utils/logger';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype GetStepTypeFromIndexProps = {\n _index: StepItemProps['_index'];\n _nestingLevel: StepGroupProps['_nestingLevel'];\n itemsCount: StepGroupContextType['itemsInGroupCount'];\n};\n\nconst InteractiveItemHeaderBox = styled.button<InteractiveItemHeaderProps>((props) => {\n return {\n padding: `${makeSpace(getIn(props.theme, props.paddingY))} ${makeSpace(\n getIn(props.theme, props.paddingX),\n )}`,\n cursor: 'pointer',\n display: 'inline-block',\n textDecoration: 'none',\n border: 'none',\n textAlign: 'inherit',\n backgroundColor: props.isSelected\n ? props.theme.colors.interactive.background.primary.faded\n : props.theme.colors.transparent,\n borderRadius: props.theme.border.radius.medium,\n width: '100%',\n transition: `background-color ${props.theme.motion.duration.xquick} ${props.theme.motion.easing.standard}`,\n ':not([disabled]):hover': {\n backgroundColor: props.isSelected\n ? props.theme.colors.interactive.background.primary.fadedHighlighted\n : props.theme.colors.interactive.background.gray.fadedHighlighted,\n },\n ':not([disabled]):focus-visible': {\n ...getFocusRingStyles({ theme: props.theme }),\n },\n '&[disabled]': {\n cursor: 'not-allowed',\n },\n };\n});\n\nconst getStepTypeFromIndex = ({\n _index,\n _nestingLevel,\n itemsCount,\n}: GetStepTypeFromIndexProps): StepLineProps['stepType'] => {\n if (_nestingLevel === 0) {\n return 'default';\n }\n\n if (itemsCount === 1) {\n return 'single-item';\n }\n\n if (_index === 0) {\n return 'start';\n }\n\n if (_index === itemsCount - 1) {\n return 'end';\n }\n\n return 'middle';\n};\n\nconst _StepItem = ({\n title,\n titleColor,\n timestamp,\n description,\n stepProgress = 'none',\n marker,\n trailing,\n isSelected,\n isDisabled,\n href,\n target,\n onClick,\n children,\n _index = 0,\n _totalIndex = 0,\n _nestingLevel = 0,\n ...rest\n}: StepItemProps): React.ReactElement => {\n const {\n itemsInGroupCount: itemsCount,\n totalItemsInParentGroupCount,\n orientation,\n size,\n } = useStepGroup();\n const stepType = React.useMemo(\n () => getStepTypeFromIndex({ _index, _nestingLevel, itemsCount }),\n [_index, _nestingLevel, itemsCount],\n );\n\n const itemRef = React.useRef<HTMLDivElement>(null);\n\n const isFirstItem = _totalIndex === 0;\n const isLastItem = _totalIndex === totalItemsInParentGroupCount - 1;\n const isInteractive = Boolean(href) || Boolean(onClick);\n const isVertical = orientation === 'vertical';\n const isNested = _nestingLevel > 0;\n\n if (__DEV__) {\n if (trailing && orientation === 'horizontal') {\n throwBladeError({\n message: 'trailing is not allowed in horizontal StepGroup',\n moduleName: 'StepItem',\n });\n }\n\n if (_nestingLevel >= 1 && orientation === 'horizontal') {\n throwBladeError({\n message: 'Nested StepGroup components are not allowed in horizontal orientation',\n moduleName: 'StepItem',\n });\n }\n }\n\n const stepItemHeaderJSX = (\n <Box display=\"flex\" flexDirection=\"row\" justifyContent=\"space-between\" gap=\"spacing.4\">\n <Box>\n <Text\n size={stepItemHeaderTokens[size].title}\n color={\n isDisabled ? 'surface.text.gray.disabled' : titleColor ?? 'surface.text.gray.subtle'\n }\n weight={isNested ? 'regular' : 'semibold'}\n >\n {title}\n </Text>\n <Text\n size={stepItemHeaderTokens[size].timestamp}\n marginY=\"spacing.2\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.muted'}\n variant=\"caption\"\n >\n {timestamp}\n </Text>\n <Text\n size={stepItemHeaderTokens[size].description}\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.muted'}\n >\n {description}\n </Text>\n </Box>\n {trailing ? <Box>{trailing}</Box> : null}\n </Box>\n );\n\n const stepItemHeaderPaddings: Omit<InteractiveItemHeaderProps, 'isSelected'> = {\n paddingY: 'spacing.3',\n paddingX: 'spacing.4',\n } as const;\n\n return (\n <BaseBox\n display=\"flex\"\n flexDirection={isVertical ? 'row' : 'column'}\n gap={itemLineGap[size]}\n className={`step-item step-index-${_index} step-nesting-level-${_nestingLevel}`}\n textAlign={isVertical ? 'left' : 'center'}\n alignItems={isVertical ? undefined : 'center'}\n minWidth={isVertical ? undefined : `min(${makeSize(sizeTokens['120'])}, 100%)`}\n width={isVertical ? '100%' : undefined}\n flex={isVertical ? undefined : '1'}\n marginX={isVertical ? 'spacing.4' : 'spacing.0'}\n {...metaAttribute({ name: MetaConstants.StepItem })}\n {...makeAnalyticsAttribute(rest)}\n ref={itemRef}\n >\n <StepLine\n shouldShowStartBranch={!isFirstItem}\n shouldShowEndBranch={!isLastItem}\n stepType={stepType}\n marker={marker}\n stepProgress={stepProgress}\n />\n <Box flex=\"1\" marginRight={isVertical ? undefined : undefined}>\n {isInteractive ? (\n <InteractiveItemHeaderBox\n {...stepItemHeaderPaddings}\n as={href ? 'a' : 'button'}\n href={href}\n target={target}\n isSelected={isSelected}\n onClick={onClick}\n disabled={isDisabled}\n >\n {stepItemHeaderJSX}\n </InteractiveItemHeaderBox>\n ) : (\n <Box {...stepItemHeaderPaddings}>{stepItemHeaderJSX}</Box>\n )}\n {children ? (\n <Box paddingX=\"spacing.4\" paddingBottom=\"spacing.3\">\n {children}\n </Box>\n ) : null}\n </Box>\n </BaseBox>\n );\n};\n\n/**\n * ## StepItem\n *\n * Component meant to be used inside the StepGroup parent component\n *\n * ### Usage\n *\n * ```jsx\n * <StepGroup orientation=\"vertical\" size=\"medium\">\n * <StepItem\n * title=\"Personal Details\"\n * timestamp=\"Thu 15th Oct'23 | 12:00pm\"\n * description=\"Fill your personal details here\"\n * marker={<StepItemIndicator color=\"negative\" />}\n * />\n * </StepGroup>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-stepgroup--docs StepGroup Documentation}\n */\nconst StepItem = assignWithoutSideEffects(_StepItem, {\n componentId: componentIds.StepItem,\n displayName: componentIds.StepItem,\n});\n\nexport { StepLine, StepItem };\n"],"names":["InteractiveItemHeaderBox","styled","button","withConfig","displayName","componentId","props","padding","concat","makeSpace","getIn","theme","paddingY","paddingX","cursor","display","textDecoration","border","textAlign","backgroundColor","isSelected","colors","interactive","background","primary","faded","transparent","borderRadius","radius","medium","width","transition","motion","duration","xquick","easing","standard","fadedHighlighted","gray","_objectSpread","getFocusRingStyles","getStepTypeFromIndex","_ref","_index","_nestingLevel","itemsCount","_StepItem","_ref2","title","titleColor","timestamp","description","_ref2$stepProgress","stepProgress","marker","trailing","isDisabled","href","target","onClick","children","_ref2$_index","_ref2$_totalIndex","_totalIndex","_ref2$_nestingLevel","rest","_objectWithoutProperties","_excluded","_useStepGroup","useStepGroup","itemsInGroupCount","totalItemsInParentGroupCount","orientation","size","stepType","React","useMemo","itemRef","useRef","isFirstItem","isLastItem","isInteractive","Boolean","isVertical","isNested","throwBladeError","message","moduleName","stepItemHeaderJSX","_jsxs","Box","flexDirection","justifyContent","gap","_jsx","Text","stepItemHeaderTokens","color","weight","marginY","variant","stepItemHeaderPaddings","BaseBox","itemLineGap","className","alignItems","undefined","minWidth","makeSize","sizeTokens","flex","marginX","metaAttribute","name","MetaConstants","StepItem","makeAnalyticsAttribute","ref","StepLine","shouldShowStartBranch","shouldShowEndBranch","marginRight","as","disabled","paddingBottom","assignWithoutSideEffects","componentIds"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StepItem.web.js","sources":["../../../../../../src/components/StepGroup/StepItem.web.tsx"],"sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { StepLine } from './StepLine';\nimport type { StepLineProps } from './StepLine';\nimport { useStepGroup } from './StepGroupContext';\nimport type {\n InteractiveItemHeaderProps,\n StepGroupContextType,\n StepGroupProps,\n StepItemProps,\n} from './types';\nimport { componentIds } from './componentIds';\nimport { itemLineGap, stepItemHeaderTokens } from './tokens';\nimport { Box } from '~components/Box';\nimport { Text } from '~components/Typography';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport BaseBox from '~components/Box/BaseBox';\nimport { makeSize, makeSpace } from '~utils';\nimport { size as sizeTokens } from '~tokens/global';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport getIn from '~utils/lodashButBetter/get';\nimport { throwBladeError } from '~utils/logger';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\ntype GetStepTypeFromIndexProps = {\n _index: StepItemProps['_index'];\n _nestingLevel: StepGroupProps['_nestingLevel'];\n itemsCount: StepGroupContextType['itemsInGroupCount'];\n};\n\nconst InteractiveItemHeaderBox = styled.button<InteractiveItemHeaderProps>((props) => {\n return {\n padding: `${makeSpace(getIn(props.theme, props.paddingY))} ${makeSpace(\n getIn(props.theme, props.paddingX),\n )}`,\n cursor: 'pointer',\n display: 'inline-block',\n textDecoration: 'none',\n border: 'none',\n textAlign: 'inherit',\n backgroundColor: props.theme.colors.transparent,\n borderRadius: props.theme.border.radius.medium,\n width: '100%',\n transition: `background-color ${props.theme.motion.duration.xquick} ${props.theme.motion.easing.standard}`,\n ':not([disabled]):hover': {\n backgroundColor: props.isSelected\n ? props.theme.colors.interactive.background.primary.faded\n : props.theme.colors.interactive.background.gray.default,\n },\n ':not([disabled]):focus-visible': {\n ...getFocusRingStyles({ theme: props.theme }),\n },\n '&[disabled]': {\n cursor: 'not-allowed',\n },\n };\n});\n\nconst getStepTypeFromIndex = ({\n _index,\n _nestingLevel,\n itemsCount,\n}: GetStepTypeFromIndexProps): StepLineProps['stepType'] => {\n if (_nestingLevel === 0) {\n return 'default';\n }\n\n if (itemsCount === 1) {\n return 'single-item';\n }\n\n if (_index === 0) {\n return 'start';\n }\n\n if (_index === itemsCount - 1) {\n return 'end';\n }\n\n return 'middle';\n};\n\nconst _StepItem = ({\n title,\n titleColor,\n timestamp,\n description,\n stepProgress = 'none',\n marker,\n trailing,\n isSelected,\n isDisabled,\n href,\n target,\n onClick,\n children,\n _index = 0,\n _totalIndex = 0,\n _nestingLevel = 0,\n ...rest\n}: StepItemProps): React.ReactElement => {\n const {\n itemsInGroupCount: itemsCount,\n totalItemsInParentGroupCount,\n orientation,\n size,\n } = useStepGroup();\n const stepType = React.useMemo(\n () => getStepTypeFromIndex({ _index, _nestingLevel, itemsCount }),\n [_index, _nestingLevel, itemsCount],\n );\n\n const itemRef = React.useRef<HTMLDivElement>(null);\n\n const isFirstItem = _totalIndex === 0;\n const isLastItem = _totalIndex === totalItemsInParentGroupCount - 1;\n const isInteractive = Boolean(href) || Boolean(onClick);\n const isVertical = orientation === 'vertical';\n const isNested = _nestingLevel > 0;\n\n if (__DEV__) {\n if (trailing && orientation === 'horizontal') {\n throwBladeError({\n message: 'trailing is not allowed in horizontal StepGroup',\n moduleName: 'StepItem',\n });\n }\n\n if (_nestingLevel >= 1 && orientation === 'horizontal') {\n throwBladeError({\n message: 'Nested StepGroup components are not allowed in horizontal orientation',\n moduleName: 'StepItem',\n });\n }\n }\n\n const stepItemHeaderJSX = (\n <Box display=\"flex\" flexDirection=\"row\" justifyContent=\"space-between\" gap=\"spacing.4\">\n <Box>\n <Text\n size={stepItemHeaderTokens[size].title}\n color={\n isDisabled\n ? 'surface.text.gray.disabled'\n : isSelected\n ? 'surface.text.primary.normal'\n : titleColor ?? 'surface.text.gray.subtle'\n }\n weight={isNested ? 'regular' : 'medium'}\n >\n {title}\n </Text>\n <Text\n size={stepItemHeaderTokens[size].timestamp}\n marginY=\"spacing.2\"\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.muted'}\n variant=\"caption\"\n >\n {timestamp}\n </Text>\n <Text\n size={stepItemHeaderTokens[size].description}\n color={isDisabled ? 'surface.text.gray.disabled' : 'surface.text.gray.muted'}\n >\n {description}\n </Text>\n </Box>\n {trailing ? <Box>{trailing}</Box> : null}\n </Box>\n );\n\n const stepItemHeaderPaddings: Omit<InteractiveItemHeaderProps, 'isSelected'> = {\n paddingY: 'spacing.3',\n paddingX: 'spacing.4',\n } as const;\n\n const enhancedMarker = marker\n ? React.cloneElement(marker, {\n isDisabled: isDisabled ?? marker?.props?.isDisabled,\n })\n : undefined;\n\n return (\n <BaseBox\n display=\"flex\"\n flexDirection={isVertical ? 'row' : 'column'}\n gap={itemLineGap[size]}\n className={`step-item step-index-${_index} step-nesting-level-${_nestingLevel}`}\n textAlign={isVertical ? 'left' : 'center'}\n alignItems={isVertical ? undefined : 'center'}\n minWidth={isVertical ? undefined : `min(${makeSize(sizeTokens['120'])}, 100%)`}\n width={isVertical ? '100%' : undefined}\n flex={isVertical ? undefined : '1'}\n marginX={isVertical ? 'spacing.4' : 'spacing.0'}\n {...metaAttribute({ name: MetaConstants.StepItem })}\n {...makeAnalyticsAttribute(rest)}\n ref={itemRef}\n >\n <StepLine\n shouldShowStartBranch={!isFirstItem}\n shouldShowEndBranch={!isLastItem}\n stepType={stepType}\n marker={enhancedMarker}\n stepProgress={stepProgress}\n />\n <Box flex=\"1\" marginRight={isVertical ? undefined : undefined}>\n {isInteractive ? (\n <InteractiveItemHeaderBox\n {...stepItemHeaderPaddings}\n as={href ? 'a' : 'button'}\n href={href}\n target={target}\n isSelected={isSelected}\n onClick={onClick}\n disabled={isDisabled}\n >\n {stepItemHeaderJSX}\n </InteractiveItemHeaderBox>\n ) : (\n <Box {...stepItemHeaderPaddings}>{stepItemHeaderJSX}</Box>\n )}\n {children ? (\n <Box paddingX=\"spacing.4\" paddingBottom=\"spacing.3\">\n {children}\n </Box>\n ) : null}\n </Box>\n </BaseBox>\n );\n};\n\n/**\n * ## StepItem\n *\n * Component meant to be used inside the StepGroup parent component\n *\n * ### Usage\n *\n * ```jsx\n * <StepGroup orientation=\"vertical\" size=\"medium\">\n * <StepItem\n * title=\"Personal Details\"\n * timestamp=\"Thu 15th Oct'23 | 12:00pm\"\n * description=\"Fill your personal details here\"\n * marker={<StepItemIndicator color=\"negative\" />}\n * />\n * </StepGroup>\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-stepgroup--docs StepGroup Documentation}\n */\nconst StepItem = assignWithoutSideEffects(_StepItem, {\n componentId: componentIds.StepItem,\n displayName: componentIds.StepItem,\n});\n\nexport { StepLine, StepItem };\n"],"names":["InteractiveItemHeaderBox","styled","button","withConfig","displayName","componentId","props","padding","concat","makeSpace","getIn","theme","paddingY","paddingX","cursor","display","textDecoration","border","textAlign","backgroundColor","colors","transparent","borderRadius","radius","medium","width","transition","motion","duration","xquick","easing","standard","isSelected","interactive","background","primary","faded","gray","_objectSpread","getFocusRingStyles","getStepTypeFromIndex","_ref","_index","_nestingLevel","itemsCount","_StepItem","_ref2","_marker$props","title","titleColor","timestamp","description","_ref2$stepProgress","stepProgress","marker","trailing","isDisabled","href","target","onClick","children","_ref2$_index","_ref2$_totalIndex","_totalIndex","_ref2$_nestingLevel","rest","_objectWithoutProperties","_excluded","_useStepGroup","useStepGroup","itemsInGroupCount","totalItemsInParentGroupCount","orientation","size","stepType","React","useMemo","itemRef","useRef","isFirstItem","isLastItem","isInteractive","Boolean","isVertical","isNested","throwBladeError","message","moduleName","stepItemHeaderJSX","_jsxs","Box","flexDirection","justifyContent","gap","_jsx","Text","stepItemHeaderTokens","color","weight","marginY","variant","stepItemHeaderPaddings","enhancedMarker","cloneElement","undefined","BaseBox","itemLineGap","className","alignItems","minWidth","makeSize","sizeTokens","flex","marginX","metaAttribute","name","MetaConstants","StepItem","makeAnalyticsAttribute","ref","StepLine","shouldShowStartBranch","shouldShowEndBranch","marginRight","as","disabled","paddingBottom","assignWithoutSideEffects","componentIds"],"mappings":"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"}
|
|
@@ -45,7 +45,9 @@ var StepItemIndicator = function StepItemIndicator(_ref2) {
|
|
|
45
45
|
var StepItemIcon = function StepItemIcon(_ref3) {
|
|
46
46
|
var Icon = _ref3.icon,
|
|
47
47
|
_ref3$color = _ref3.color,
|
|
48
|
-
color = _ref3$color === void 0 ? 'neutral' : _ref3$color
|
|
48
|
+
color = _ref3$color === void 0 ? 'neutral' : _ref3$color,
|
|
49
|
+
_ref3$isDisabled = _ref3.isDisabled,
|
|
50
|
+
isDisabled = _ref3$isDisabled === void 0 ? false : _ref3$isDisabled;
|
|
49
51
|
var _useStepGroup2 = useStepGroup(),
|
|
50
52
|
size = _useStepGroup2.size;
|
|
51
53
|
var spacingTokens = getMarkerLineSpacings(size);
|
|
@@ -55,7 +57,7 @@ var StepItemIcon = function StepItemIcon(_ref3) {
|
|
|
55
57
|
margin: makeSize(spacingTokens.markerMargin),
|
|
56
58
|
children: /*#__PURE__*/jsx(Icon, {
|
|
57
59
|
size: iconSizeTokens[size],
|
|
58
|
-
color: color === 'primary' ? 'surface.icon.primary.normal' : "feedback.icon.".concat(color, ".intense")
|
|
60
|
+
color: isDisabled ? 'surface.icon.gray.disabled' : color === 'primary' ? 'surface.icon.primary.normal' : "feedback.icon.".concat(color, ".intense")
|
|
59
61
|
})
|
|
60
62
|
});
|
|
61
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepItemMarker.js","sources":["../../../../../../src/components/StepGroup/StepItemMarker.tsx"],"sourcesContent":["import { useStepGroup } from './StepGroupContext';\nimport { getMarkerLineSpacings, iconSizeTokens } from './tokens';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { IconComponent } from '~components/Icons';\nimport type { IndicatorProps } from '~components/Indicator';\nimport { Indicator } from '~components/Indicator';\nimport { makeSize } from '~utils';\n\ntype MarkerBackgroundCircleProps = {\n color: IndicatorProps['color'];\n size: BaseBoxProps['width'];\n margin: BaseBoxProps['margin'];\n children: BaseBoxProps['children'];\n};\n\nconst MarkerBackgroundCircle = ({\n color,\n size,\n margin,\n children,\n}: MarkerBackgroundCircleProps): React.ReactElement => {\n return (\n <BaseBox\n backgroundColor={\n color === 'primary'\n ? 'surface.background.primary.subtle'\n : `feedback.background.${color}.subtle`\n }\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n height={size}\n width={size}\n borderRadius=\"round\"\n margin={margin}\n >\n {children}\n </BaseBox>\n );\n};\n\nconst StepItemIndicator = ({ color }: { color: IndicatorProps['color'] }): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <MarkerBackgroundCircle\n color={color}\n size={makeSize(spacingTokens.markerBackgroundSize)}\n margin={makeSize(spacingTokens.markerMargin)}\n >\n <Indicator\n position=\"relative\"\n color={color}\n size={size}\n accessibilityLabel={`${color} indicator`}\n />\n </MarkerBackgroundCircle>\n );\n};\n\ntype StepItemIconProps = {\n icon: IconComponent;\n color: IndicatorProps['color'];\n};\n\nconst StepItemIcon = ({
|
|
1
|
+
{"version":3,"file":"StepItemMarker.js","sources":["../../../../../../src/components/StepGroup/StepItemMarker.tsx"],"sourcesContent":["import { useStepGroup } from './StepGroupContext';\nimport { getMarkerLineSpacings, iconSizeTokens } from './tokens';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { IconComponent } from '~components/Icons';\nimport type { IndicatorProps } from '~components/Indicator';\nimport { Indicator } from '~components/Indicator';\nimport { makeSize } from '~utils';\n\ntype MarkerBackgroundCircleProps = {\n color: IndicatorProps['color'];\n size: BaseBoxProps['width'];\n margin: BaseBoxProps['margin'];\n children: BaseBoxProps['children'];\n};\n\nconst MarkerBackgroundCircle = ({\n color,\n size,\n margin,\n children,\n}: MarkerBackgroundCircleProps): React.ReactElement => {\n return (\n <BaseBox\n backgroundColor={\n color === 'primary'\n ? 'surface.background.primary.subtle'\n : `feedback.background.${color}.subtle`\n }\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n height={size}\n width={size}\n borderRadius=\"round\"\n margin={margin}\n >\n {children}\n </BaseBox>\n );\n};\n\nconst StepItemIndicator = ({ color }: { color: IndicatorProps['color'] }): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <MarkerBackgroundCircle\n color={color}\n size={makeSize(spacingTokens.markerBackgroundSize)}\n margin={makeSize(spacingTokens.markerMargin)}\n >\n <Indicator\n position=\"relative\"\n color={color}\n size={size}\n accessibilityLabel={`${color} indicator`}\n />\n </MarkerBackgroundCircle>\n );\n};\n\ntype StepItemIconProps = {\n icon: IconComponent;\n color: IndicatorProps['color'];\n isDisabled?: boolean;\n};\n\nconst StepItemIcon = ({\n icon: Icon,\n color = 'neutral',\n isDisabled = false,\n}: StepItemIconProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <MarkerBackgroundCircle\n color={color}\n size={makeSize(spacingTokens.markerBackgroundSize)}\n margin={makeSize(spacingTokens.markerMargin)}\n >\n <Icon\n size={iconSizeTokens[size]}\n color={\n isDisabled\n ? 'surface.icon.gray.disabled'\n : color === 'primary'\n ? 'surface.icon.primary.normal'\n : `feedback.icon.${color}.intense`\n }\n />\n </MarkerBackgroundCircle>\n );\n};\n\nexport { StepItemIndicator, StepItemIcon };\n"],"names":["MarkerBackgroundCircle","_ref","color","size","margin","children","_jsx","BaseBox","backgroundColor","concat","display","alignItems","justifyContent","height","width","borderRadius","StepItemIndicator","_ref2","_useStepGroup","useStepGroup","spacingTokens","getMarkerLineSpacings","makeSize","markerBackgroundSize","markerMargin","Indicator","position","accessibilityLabel","StepItemIcon","_ref3","Icon","icon","_ref3$color","_ref3$isDisabled","isDisabled","_useStepGroup2","iconSizeTokens"],"mappings":"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"}
|
|
@@ -240,11 +240,7 @@ var StepLineStart = function StepLineStart(_ref7) {
|
|
|
240
240
|
position: "relative",
|
|
241
241
|
display: "flex",
|
|
242
242
|
flexDirection: "column",
|
|
243
|
-
children: [/*#__PURE__*/jsx(
|
|
244
|
-
height: itemTopMargin,
|
|
245
|
-
visibility: shouldShowStartBranch ? 'visible' : 'hidden',
|
|
246
|
-
isDotted: stepProgress === 'none' || stepProgress === 'end'
|
|
247
|
-
}), /*#__PURE__*/jsx(StepTopCurveVertical, {
|
|
243
|
+
children: [/*#__PURE__*/jsx(StepTopCurveVertical, {
|
|
248
244
|
visibility: shouldShowStartBranch ? 'visible' : 'hidden',
|
|
249
245
|
isDotted: stepProgress === 'none' || stepProgress === 'end'
|
|
250
246
|
}), /*#__PURE__*/jsx(Box, {
|
|
@@ -326,11 +322,7 @@ var StepLineSingleItem = function StepLineSingleItem(_ref10) {
|
|
|
326
322
|
position: "relative",
|
|
327
323
|
display: "flex",
|
|
328
324
|
flexDirection: "column",
|
|
329
|
-
children: [/*#__PURE__*/jsx(
|
|
330
|
-
visibility: shouldShowStartBranch ? 'visible' : 'hidden',
|
|
331
|
-
height: itemTopMargin,
|
|
332
|
-
isDotted: stepProgress === 'none' || stepProgress === 'end'
|
|
333
|
-
}), /*#__PURE__*/jsx(StepTopCurveVertical, {
|
|
325
|
+
children: [/*#__PURE__*/jsx(StepTopCurveVertical, {
|
|
334
326
|
visibility: shouldShowStartBranch ? 'visible' : 'hidden',
|
|
335
327
|
isDotted: stepProgress === 'none' || stepProgress === 'end'
|
|
336
328
|
}), /*#__PURE__*/jsx(Box
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepLine.web.js","sources":["../../../../../../src/components/StepGroup/StepLine.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\nimport type { StepItemProps } from './types';\nimport { StepItemIndicator } from './StepItemMarker';\nimport { useStepGroup } from './StepGroupContext';\nimport {\n getMarkerLineSpacings,\n itemTopMargin,\n markerLineDotSpacing,\n markerLineDotWidth,\n markerLineWidth,\n} from './tokens';\nimport { Box } from '~components/Box';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport Svg, { Path } from '~components/Icons/_Svg';\nimport { makeSize, useTheme } from '~utils';\nimport { throwBladeError } from '~utils/logger';\n\n// universal base64 encode\nconst encode = (svgString: string): string => {\n try {\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(svgString).toString('base64');\n }\n\n return window.btoa(svgString);\n } catch (error: unknown) {\n throwBladeError({\n message: `Failed to encode SVG string: ${error}`,\n moduleName: 'StepLine',\n });\n\n return '';\n }\n};\n\ntype StepLineSvgProps = {\n isDotted?: boolean;\n} & StyledPropsBlade;\n\nconst useDottedLineStyles = ({ isHorizontal }: { isHorizontal?: boolean } = {}): BaseBoxProps => {\n const { theme } = useTheme();\n\n const svgString = `<svg width=\"2\" height=\"2\" viewBox=\"0 0 2 2\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1Z\"\n fill=\"${theme.colors.surface.border.gray.subtle}\"\n />\n </svg>\n `;\n\n const backgroundURL = `url(data:image/svg+xml;base64,${encode(svgString)})`;\n\n return {\n backgroundImage: backgroundURL,\n backgroundPosition: isHorizontal ? 'left' : 'top',\n backgroundSize: isHorizontal\n ? `${makeSize(markerLineDotWidth + markerLineDotSpacing)} ${makeSize(markerLineDotWidth)}`\n : `${makeSize(markerLineDotWidth)} ${makeSize(markerLineDotWidth + markerLineDotSpacing)} `,\n backgroundRepeat: isHorizontal ? 'round no-repeat' : 'no-repeat round',\n };\n};\n\nconst StepStraightLineHorizontal = ({\n isDotted,\n width,\n ...styledProps\n}: StepLineSvgProps & {\n width?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles({ isHorizontal: true });\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderTopWidth: 'thicker',\n borderTopColor: 'surface.border.gray.subtle',\n };\n\n return <BaseBox height={makeSize(markerLineWidth)} flex=\"1\" {...borderStyles} {...styledProps} />;\n};\n\nconst StepStraightLineVertical = ({\n height,\n isDotted,\n ...styledProps\n}: StepLineSvgProps & {\n height?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles();\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderLeftWidth: 'thicker',\n borderLeftColor: 'surface.border.gray.subtle',\n };\n return (\n <BaseBox\n height={height ? makeSize(height) : undefined}\n flex={height ? undefined : '1'}\n width={makeSize(markerLineWidth)}\n {...borderStyles}\n {...styledProps}\n />\n );\n};\n\nconst StepTopCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n\n return isDotted ? (\n <Svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1Z\" />\n <Path d=\"M2 6C2 6.55228 1.55228 7 1 7C0.447715 7 0 6.55228 0 6C0 5.44772 0.447715 5 1 5C1.55228 5 2 5.44772 2 6Z\" />\n <Path d=\"M1 12C1.55228 12 2 11.5523 2 11C2 10.4477 1.55228 10 1 10C0.447715 10 0 10.4477 0 11C0 11.5523 0.447715 12 1 12Z\" />\n <Path d=\"M3 16C3 16.5523 2.55228 17 2 17C1.44772 17 1 16.5523 1 16C1 15.4477 1.44772 15 2 15C2.55228 15 3 15.4477 3 16Z\" />\n <Path d=\"M7 20C7.55228 20 8 19.5523 8 19C8 18.4477 7.55228 18 7 18C6.44772 18 6 18.4477 6 19C6 19.5523 6.44772 20 7 20Z\" />\n <Path d=\"M14 19C14 19.5523 13.5523 20 13 20C12.4477 20 12 19.5523 12 19C12 18.4477 12.4477 18 13 18C13.5523 18 14 18.4477 14 19Z\" />\n <Path d=\"M19 20C19.5523 20 20 19.5523 20 19C20 18.4477 19.5523 18 19 18C18.4477 18 18 18.4477 18 19C18 19.5523 18.4477 20 19 20Z\" />\n </Svg>\n ) : (\n <Svg width=\"20\" height=\"14\" viewBox=\"0 0 20 14\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 0V5C1 9.41828 4.58172 13 9 13H20\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\nconst StepBottomCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n const { size } = useStepGroup();\n\n if (size === 'medium') {\n return isDotted ? (\n <Svg\n width=\"42\"\n height=\"5\"\n viewBox=\"0 0 42 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M32 1C32 1.55228 31.5523 2 31 2C30.4477 2 30 1.55228 30 1C30 0.447715 30.4477 0 31 0C31.5523 0 32 0.447715 32 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M27.5 3.5C28.0523 3.5 28.5 3.05228 28.5 2.5C28.5 1.94772 28.0523 1.5 27.5 1.5C26.9477 1.5 26.5 1.94772 26.5 2.5C26.5 3.05228 26.9477 3.5 27.5 3.5Z\" />\n <Path d=\"M5.5 2.5C5.5 3.05228 5.05228 3.5 4.5 3.5C3.94772 3.5 3.5 3.05228 3.5 2.5C3.5 1.94772 3.94772 1.5 4.5 1.5C5.05228 1.5 5.5 1.94772 5.5 2.5Z\" />\n <Path d=\"M16.5 3.5C17.0523 3.5 17.5 3.05228 17.5 2.5C17.5 1.94772 17.0523 1.5 16.5 1.5C15.9477 1.5 15.5 1.94772 15.5 2.5C15.5 3.05228 15.9477 3.5 16.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M22.5 3.5C23.0523 3.5 23.5 3.05228 23.5 2.5C23.5 1.94772 23.0523 1.5 22.5 1.5C21.9477 1.5 21.5 1.94772 21.5 2.5C21.5 3.05228 21.9477 3.5 22.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"33\" height=\"5\" viewBox=\"0 0 33 5\" fill=\"none\">\n <Path\n d=\"M1 5V5C1 3.63251 2.108 2.52363 3.47549 2.52255L29.5 2.50198C30.881 2.50088 32 1.38103 32 1.19209e-07V1.19209e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n }\n\n return isDotted ? (\n <Svg\n width=\"46\"\n height=\"5\"\n viewBox=\"0 0 46 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M35 1C35 1.55228 34.5523 2 34 2C33.4477 2 33 1.55228 33 1C33 0.447715 33.4477 0 34 0C34.5523 0 35 0.447715 35 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M31.5 3.5C32.0523 3.5 32.5 3.05228 32.5 2.5C32.5 1.94772 32.0523 1.5 31.5 1.5C30.9477 1.5 30.5 1.94772 30.5 2.5C30.5 3.05228 30.9477 3.5 31.5 3.5Z\" />\n <Path d=\"M4.5 2.5C4.5 3.05228 4.05228 3.5 3.5 3.5C2.94772 3.5 2.5 3.05228 2.5 2.5C2.5 1.94772 2.94772 1.5 3.5 1.5C4.05228 1.5 4.5 1.94772 4.5 2.5Z\" />\n <Path d=\"M17.5 3.5C18.0523 3.5 18.5 3.05228 18.5 2.5C18.5 1.94772 18.0523 1.5 17.5 1.5C16.9477 1.5 16.5 1.94772 16.5 2.5C16.5 3.05228 16.9477 3.5 17.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M24.5 3.5C25.0523 3.5 25.5 3.05228 25.5 2.5C25.5 1.94772 25.0523 1.5 24.5 1.5C23.9477 1.5 23.5 1.94772 23.5 2.5C23.5 3.05228 23.9477 3.5 24.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"35\" height=\"6\" viewBox=\"0 0 35 6\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 6V6C1 4.36914 2.31973 3.04584 3.95058 3.04142L31.04 2.96802C32.6761 2.96359 34 1.63606 34 1.3411e-07V1.3411e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\ntype StepLineProps = {\n stepType: 'single-item' | 'start' | 'middle' | 'end' | 'default';\n shouldShowStartBranch: boolean;\n shouldShowEndBranch: boolean;\n} & Pick<StepItemProps, 'stepProgress' | 'marker'>;\n\ntype StepLineSubComponentProps = Pick<\n StepLineProps,\n 'shouldShowStartBranch' | 'shouldShowEndBranch' | 'marker' | 'stepProgress'\n>;\n\nconst defaultMarker = <StepItemIndicator color=\"neutral\" />;\n\nconst StepLineVertical = ({\n marker = defaultMarker,\n stepProgress,\n isIndented,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps & {\n isIndented?: boolean;\n}): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box\n position=\"relative\"\n marginLeft={isIndented ? makeSize(spacingTokens.indentationWidth) : undefined}\n display=\"flex\"\n flexDirection=\"column\"\n >\n <StepStraightLineVertical\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box marginLeft={makeSize(-spacingTokens.markerLeftAlignment)}>{marker}</Box>\n <StepStraightLineVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineStart = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n height={itemTopMargin}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLineEnd = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineHorizontal = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n return (\n <Box\n position=\"relative\"\n display=\"flex\"\n flexDirection=\"row\"\n width=\"100%\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box>{marker}</Box>\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineSingleItem = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowEndBranch,\n shouldShowStartBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n // -12 (markerLeftAlginment) + 33 (indentationWidth)\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLine = ({\n stepType = 'default',\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n}: StepLineProps): React.ReactElement => {\n const { orientation } = useStepGroup();\n const commonProps = {\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n };\n\n if (orientation === 'horizontal') {\n return <StepLineHorizontal {...commonProps} />;\n }\n\n if (stepType === 'start') {\n return <StepLineStart {...commonProps} />;\n }\n\n if (stepType === 'middle') {\n return <StepLineVertical {...commonProps} isIndented={true} />;\n }\n\n if (stepType === 'end') {\n return <StepLineEnd {...commonProps} />;\n }\n\n if (stepType === 'single-item') {\n return <StepLineSingleItem {...commonProps} />;\n }\n\n return <StepLineVertical {...commonProps} />;\n};\n\nexport type { StepLineProps };\nexport { StepLine };\n"],"names":["encode","svgString","Buffer","from","toString","window","btoa","error","throwBladeError","message","concat","moduleName","useDottedLineStyles","_ref","arguments","length","undefined","isHorizontal","_useTheme","useTheme","theme","colors","surface","border","gray","subtle","backgroundURL","backgroundImage","backgroundPosition","backgroundSize","makeSize","markerLineDotWidth","markerLineDotSpacing","backgroundRepeat","StepStraightLineHorizontal","_ref2","isDotted","width","styledProps","_objectWithoutProperties","_excluded","dottedStyles","borderStyles","borderTopWidth","borderTopColor","_jsx","BaseBox","_objectSpread","height","markerLineWidth","flex","StepStraightLineVertical","_ref3","_excluded2","borderLeftWidth","borderLeftColor","StepTopCurveVertical","_ref4","_excluded3","_useTheme2","_jsxs","Svg","viewBox","fill","children","Path","d","stroke","strokeWidth","StepBottomCurveVertical","_ref5","_excluded4","_useTheme3","_useStepGroup","useStepGroup","size","defaultMarker","StepItemIndicator","color","StepLineVertical","_ref6","_ref6$marker","marker","stepProgress","isIndented","shouldShowStartBranch","shouldShowEndBranch","_useStepGroup2","spacingTokens","getMarkerLineSpacings","Box","position","marginLeft","indentationWidth","display","flexDirection","itemTopMargin","visibility","markerLeftAlignment","StepLineStart","_ref7","_ref7$marker","_useStepGroup3","marginTop","markerTopAlignment","StepLineEnd","_ref8","_ref8$marker","_useStepGroup4","StepLineHorizontal","_ref9","_ref9$marker","justifyContent","alignItems","StepLineSingleItem","_ref10","_ref10$marker","_useStepGroup5","StepLine","_ref11","_ref11$stepType","stepType","_useStepGroup6","orientation","commonProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StepLine.web.js","sources":["../../../../../../src/components/StepGroup/StepLine.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\nimport type { StepItemProps } from './types';\nimport { StepItemIndicator } from './StepItemMarker';\nimport { useStepGroup } from './StepGroupContext';\nimport {\n getMarkerLineSpacings,\n itemTopMargin,\n markerLineDotSpacing,\n markerLineDotWidth,\n markerLineWidth,\n} from './tokens';\nimport { Box } from '~components/Box';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport Svg, { Path } from '~components/Icons/_Svg';\nimport { makeSize, useTheme } from '~utils';\nimport { throwBladeError } from '~utils/logger';\n\n// universal base64 encode\nconst encode = (svgString: string): string => {\n try {\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(svgString).toString('base64');\n }\n\n return window.btoa(svgString);\n } catch (error: unknown) {\n throwBladeError({\n message: `Failed to encode SVG string: ${error}`,\n moduleName: 'StepLine',\n });\n\n return '';\n }\n};\n\ntype StepLineSvgProps = {\n isDotted?: boolean;\n} & StyledPropsBlade;\n\nconst useDottedLineStyles = ({ isHorizontal }: { isHorizontal?: boolean } = {}): BaseBoxProps => {\n const { theme } = useTheme();\n\n const svgString = `<svg width=\"2\" height=\"2\" viewBox=\"0 0 2 2\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1Z\"\n fill=\"${theme.colors.surface.border.gray.subtle}\"\n />\n </svg>\n `;\n\n const backgroundURL = `url(data:image/svg+xml;base64,${encode(svgString)})`;\n\n return {\n backgroundImage: backgroundURL,\n backgroundPosition: isHorizontal ? 'left' : 'top',\n backgroundSize: isHorizontal\n ? `${makeSize(markerLineDotWidth + markerLineDotSpacing)} ${makeSize(markerLineDotWidth)}`\n : `${makeSize(markerLineDotWidth)} ${makeSize(markerLineDotWidth + markerLineDotSpacing)} `,\n backgroundRepeat: isHorizontal ? 'round no-repeat' : 'no-repeat round',\n };\n};\n\nconst StepStraightLineHorizontal = ({\n isDotted,\n width,\n ...styledProps\n}: StepLineSvgProps & {\n width?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles({ isHorizontal: true });\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderTopWidth: 'thicker',\n borderTopColor: 'surface.border.gray.subtle',\n };\n\n return <BaseBox height={makeSize(markerLineWidth)} flex=\"1\" {...borderStyles} {...styledProps} />;\n};\n\nconst StepStraightLineVertical = ({\n height,\n isDotted,\n ...styledProps\n}: StepLineSvgProps & {\n height?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles();\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderLeftWidth: 'thicker',\n borderLeftColor: 'surface.border.gray.subtle',\n };\n return (\n <BaseBox\n height={height ? makeSize(height) : undefined}\n flex={height ? undefined : '1'}\n width={makeSize(markerLineWidth)}\n {...borderStyles}\n {...styledProps}\n />\n );\n};\n\nconst StepTopCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n\n return isDotted ? (\n <Svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1Z\" />\n <Path d=\"M2 6C2 6.55228 1.55228 7 1 7C0.447715 7 0 6.55228 0 6C0 5.44772 0.447715 5 1 5C1.55228 5 2 5.44772 2 6Z\" />\n <Path d=\"M1 12C1.55228 12 2 11.5523 2 11C2 10.4477 1.55228 10 1 10C0.447715 10 0 10.4477 0 11C0 11.5523 0.447715 12 1 12Z\" />\n <Path d=\"M3 16C3 16.5523 2.55228 17 2 17C1.44772 17 1 16.5523 1 16C1 15.4477 1.44772 15 2 15C2.55228 15 3 15.4477 3 16Z\" />\n <Path d=\"M7 20C7.55228 20 8 19.5523 8 19C8 18.4477 7.55228 18 7 18C6.44772 18 6 18.4477 6 19C6 19.5523 6.44772 20 7 20Z\" />\n <Path d=\"M14 19C14 19.5523 13.5523 20 13 20C12.4477 20 12 19.5523 12 19C12 18.4477 12.4477 18 13 18C13.5523 18 14 18.4477 14 19Z\" />\n <Path d=\"M19 20C19.5523 20 20 19.5523 20 19C20 18.4477 19.5523 18 19 18C18.4477 18 18 18.4477 18 19C18 19.5523 18.4477 20 19 20Z\" />\n </Svg>\n ) : (\n <Svg width=\"20\" height=\"14\" viewBox=\"0 0 20 14\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 0V5C1 9.41828 4.58172 13 9 13H20\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\nconst StepBottomCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n const { size } = useStepGroup();\n\n if (size === 'medium') {\n return isDotted ? (\n <Svg\n width=\"42\"\n height=\"5\"\n viewBox=\"0 0 42 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M32 1C32 1.55228 31.5523 2 31 2C30.4477 2 30 1.55228 30 1C30 0.447715 30.4477 0 31 0C31.5523 0 32 0.447715 32 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M27.5 3.5C28.0523 3.5 28.5 3.05228 28.5 2.5C28.5 1.94772 28.0523 1.5 27.5 1.5C26.9477 1.5 26.5 1.94772 26.5 2.5C26.5 3.05228 26.9477 3.5 27.5 3.5Z\" />\n <Path d=\"M5.5 2.5C5.5 3.05228 5.05228 3.5 4.5 3.5C3.94772 3.5 3.5 3.05228 3.5 2.5C3.5 1.94772 3.94772 1.5 4.5 1.5C5.05228 1.5 5.5 1.94772 5.5 2.5Z\" />\n <Path d=\"M16.5 3.5C17.0523 3.5 17.5 3.05228 17.5 2.5C17.5 1.94772 17.0523 1.5 16.5 1.5C15.9477 1.5 15.5 1.94772 15.5 2.5C15.5 3.05228 15.9477 3.5 16.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M22.5 3.5C23.0523 3.5 23.5 3.05228 23.5 2.5C23.5 1.94772 23.0523 1.5 22.5 1.5C21.9477 1.5 21.5 1.94772 21.5 2.5C21.5 3.05228 21.9477 3.5 22.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"33\" height=\"5\" viewBox=\"0 0 33 5\" fill=\"none\">\n <Path\n d=\"M1 5V5C1 3.63251 2.108 2.52363 3.47549 2.52255L29.5 2.50198C30.881 2.50088 32 1.38103 32 1.19209e-07V1.19209e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n }\n\n return isDotted ? (\n <Svg\n width=\"46\"\n height=\"5\"\n viewBox=\"0 0 46 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M35 1C35 1.55228 34.5523 2 34 2C33.4477 2 33 1.55228 33 1C33 0.447715 33.4477 0 34 0C34.5523 0 35 0.447715 35 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M31.5 3.5C32.0523 3.5 32.5 3.05228 32.5 2.5C32.5 1.94772 32.0523 1.5 31.5 1.5C30.9477 1.5 30.5 1.94772 30.5 2.5C30.5 3.05228 30.9477 3.5 31.5 3.5Z\" />\n <Path d=\"M4.5 2.5C4.5 3.05228 4.05228 3.5 3.5 3.5C2.94772 3.5 2.5 3.05228 2.5 2.5C2.5 1.94772 2.94772 1.5 3.5 1.5C4.05228 1.5 4.5 1.94772 4.5 2.5Z\" />\n <Path d=\"M17.5 3.5C18.0523 3.5 18.5 3.05228 18.5 2.5C18.5 1.94772 18.0523 1.5 17.5 1.5C16.9477 1.5 16.5 1.94772 16.5 2.5C16.5 3.05228 16.9477 3.5 17.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M24.5 3.5C25.0523 3.5 25.5 3.05228 25.5 2.5C25.5 1.94772 25.0523 1.5 24.5 1.5C23.9477 1.5 23.5 1.94772 23.5 2.5C23.5 3.05228 23.9477 3.5 24.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"35\" height=\"6\" viewBox=\"0 0 35 6\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 6V6C1 4.36914 2.31973 3.04584 3.95058 3.04142L31.04 2.96802C32.6761 2.96359 34 1.63606 34 1.3411e-07V1.3411e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\ntype StepLineProps = {\n stepType: 'single-item' | 'start' | 'middle' | 'end' | 'default';\n shouldShowStartBranch: boolean;\n shouldShowEndBranch: boolean;\n} & Pick<StepItemProps, 'stepProgress' | 'marker'>;\n\ntype StepLineSubComponentProps = Pick<\n StepLineProps,\n 'shouldShowStartBranch' | 'shouldShowEndBranch' | 'marker' | 'stepProgress'\n>;\n\nconst defaultMarker = <StepItemIndicator color=\"neutral\" />;\n\nconst StepLineVertical = ({\n marker = defaultMarker,\n stepProgress,\n isIndented,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps & {\n isIndented?: boolean;\n}): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box\n position=\"relative\"\n marginLeft={isIndented ? makeSize(spacingTokens.indentationWidth) : undefined}\n display=\"flex\"\n flexDirection=\"column\"\n >\n <StepStraightLineVertical\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box marginLeft={makeSize(-spacingTokens.markerLeftAlignment)}>{marker}</Box>\n <StepStraightLineVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineStart = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLineEnd = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineHorizontal = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n return (\n <Box\n position=\"relative\"\n display=\"flex\"\n flexDirection=\"row\"\n width=\"100%\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box>{marker}</Box>\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineSingleItem = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowEndBranch,\n shouldShowStartBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n // -12 (markerLeftAlginment) + 33 (indentationWidth)\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLine = ({\n stepType = 'default',\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n}: StepLineProps): React.ReactElement => {\n const { orientation } = useStepGroup();\n const commonProps = {\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n };\n\n if (orientation === 'horizontal') {\n return <StepLineHorizontal {...commonProps} />;\n }\n\n if (stepType === 'start') {\n return <StepLineStart {...commonProps} />;\n }\n\n if (stepType === 'middle') {\n return <StepLineVertical {...commonProps} isIndented={true} />;\n }\n\n if (stepType === 'end') {\n return <StepLineEnd {...commonProps} />;\n }\n\n if (stepType === 'single-item') {\n return <StepLineSingleItem {...commonProps} />;\n }\n\n return <StepLineVertical {...commonProps} />;\n};\n\nexport type { StepLineProps };\nexport { StepLine };\n"],"names":["encode","svgString","Buffer","from","toString","window","btoa","error","throwBladeError","message","concat","moduleName","useDottedLineStyles","_ref","arguments","length","undefined","isHorizontal","_useTheme","useTheme","theme","colors","surface","border","gray","subtle","backgroundURL","backgroundImage","backgroundPosition","backgroundSize","makeSize","markerLineDotWidth","markerLineDotSpacing","backgroundRepeat","StepStraightLineHorizontal","_ref2","isDotted","width","styledProps","_objectWithoutProperties","_excluded","dottedStyles","borderStyles","borderTopWidth","borderTopColor","_jsx","BaseBox","_objectSpread","height","markerLineWidth","flex","StepStraightLineVertical","_ref3","_excluded2","borderLeftWidth","borderLeftColor","StepTopCurveVertical","_ref4","_excluded3","_useTheme2","_jsxs","Svg","viewBox","fill","children","Path","d","stroke","strokeWidth","StepBottomCurveVertical","_ref5","_excluded4","_useTheme3","_useStepGroup","useStepGroup","size","defaultMarker","StepItemIndicator","color","StepLineVertical","_ref6","_ref6$marker","marker","stepProgress","isIndented","shouldShowStartBranch","shouldShowEndBranch","_useStepGroup2","spacingTokens","getMarkerLineSpacings","Box","position","marginLeft","indentationWidth","display","flexDirection","itemTopMargin","visibility","markerLeftAlignment","StepLineStart","_ref7","_ref7$marker","_useStepGroup3","marginTop","markerTopAlignment","StepLineEnd","_ref8","_ref8$marker","_useStepGroup4","StepLineHorizontal","_ref9","_ref9$marker","justifyContent","alignItems","StepLineSingleItem","_ref10","_ref10$marker","_useStepGroup5","StepLine","_ref11","_ref11$stepType","stepType","_useStepGroup6","orientation","commonProps"],"mappings":"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"}
|
|
@@ -125,7 +125,7 @@ var getOnLightOverrides = function getOnLightOverrides(brandColors) {
|
|
|
125
125
|
text: {
|
|
126
126
|
primary: {
|
|
127
127
|
normal: foregroundOnSurface,
|
|
128
|
-
disabled:
|
|
128
|
+
disabled: brandColors.a200,
|
|
129
129
|
muted: foregroundOnSurface,
|
|
130
130
|
subtle: foregroundOnSurface
|
|
131
131
|
},
|
|
@@ -139,7 +139,7 @@ var getOnLightOverrides = function getOnLightOverrides(brandColors) {
|
|
|
139
139
|
icon: {
|
|
140
140
|
primary: {
|
|
141
141
|
normal: foregroundOnSurface,
|
|
142
|
-
disabled:
|
|
142
|
+
disabled: brandColors.a200,
|
|
143
143
|
muted: foregroundOnSurface,
|
|
144
144
|
subtle: foregroundOnSurface
|
|
145
145
|
},
|
|
@@ -208,7 +208,7 @@ var getOnDarkOverrides = function getOnDarkOverrides(brandColors) {
|
|
|
208
208
|
text: {
|
|
209
209
|
primary: {
|
|
210
210
|
normal: foregroundOnSurface,
|
|
211
|
-
disabled:
|
|
211
|
+
disabled: brandColors.a400,
|
|
212
212
|
muted: foregroundOnSurface,
|
|
213
213
|
subtle: foregroundOnSurface
|
|
214
214
|
},
|
|
@@ -222,7 +222,7 @@ var getOnDarkOverrides = function getOnDarkOverrides(brandColors) {
|
|
|
222
222
|
icon: {
|
|
223
223
|
primary: {
|
|
224
224
|
normal: foregroundOnSurface,
|
|
225
|
-
disabled:
|
|
225
|
+
disabled: brandColors.a400,
|
|
226
226
|
muted: foregroundOnSurface,
|
|
227
227
|
subtle: foregroundOnSurface
|
|
228
228
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createTheme.js","sources":["../../../../../../src/tokens/theme/createTheme.ts"],"sourcesContent":["import tinycolor from 'tinycolor2';\nimport type { WCAG2Options, ColorInput } from 'tinycolor2';\nimport type { ThemeTokens } from './theme';\nimport overrideTheme from './overrideTheme';\nimport bladeTheme from './bladeTheme';\nimport { colors as globalColors, opacity } from '~tokens/global';\nimport type { ColorChromaticScale } from '~tokens/global/colors';\nimport { throwBladeError } from '~utils/logger';\nimport type { DeepPartial } from '~utils/isPartialMatchObjectKeys';\n\n// WCAG2ContrastOptions are the options used to determine if a color is readable\nconst WCAG2ContrastOptions: WCAG2Options = {\n level: 'AAA',\n size: 'large',\n};\n\n/**\n * getColorWithOpacity\n * @param color - The color to add opacity to\n * @param opacity - The opacity to add to the color\n * @returns The color with the opacity added\n * @example\n * getColorWithOpacity('#fff', 0.5) // returns 'hsla(0, 0%, 100%, 0.5)'\n *\n **/\nconst getColorWithOpacity = (color: ColorInput, opacity: number): string => {\n return tinycolor(color).setAlpha(opacity).toHslString();\n};\n\n/**\n *\n * @description\n * Generates a chromatic color palette based on the base color passed in.\n * The base color is used to generate a palette of 11 colors, 5 shades lighter and 5 shades darker than the base color.\n * @param baseColorInput - The base color to generate the chromatic color palette from in hex, rgb, or hsl format\n * @returns Array of chromatic color palette\n */\nconst generateChromaticBrandColors = (baseColorInput: ColorInput): ColorChromaticScale => {\n const baseColor = tinycolor(baseColorInput);\n const baseColorHslString = baseColor.toHslString();\n if (__DEV__) {\n if (!baseColor.isValid()) {\n throwBladeError({\n message: 'Invalid brandColor passed',\n moduleName: 'createTheme',\n });\n }\n }\n\n const palette = [baseColorHslString]; // Include the original color\n const brightness = tinycolor(baseColor).getBrightness();\n // Determine how much to lighten or darken the colors depending on the brightness of the base color\n const lightnessFactor = brightness > 150 ? 3 : 6;\n const darknessFactor = brightness < 50 ? 3 : 5;\n\n let currentColor = baseColor;\n\n // Generate shades lighter\n for (let lightShadeIndex = 0; lightShadeIndex < 6; lightShadeIndex++) {\n currentColor = currentColor.brighten(lightnessFactor);\n palette.push(currentColor.toHslString());\n }\n\n currentColor = tinycolor(baseColorHslString); // Reset to the base color\n\n // Generate shades darker\n for (let darkShadeIndex = 0; darkShadeIndex < 4; darkShadeIndex++) {\n currentColor = currentColor.darken(darknessFactor);\n palette.unshift(currentColor.toHslString()); // Add shades at the beginning of the palette\n }\n\n const colorPalette = palette.reverse();\n const brandPrimaryColor = colorPalette[6];\n\n const brandColors: ColorChromaticScale = {\n '50': colorPalette[0],\n '100': colorPalette[1],\n '200': colorPalette[2],\n '300': colorPalette[3],\n '400': colorPalette[4],\n '500': colorPalette[5],\n '600': brandPrimaryColor,\n '700': colorPalette[7],\n '800': colorPalette[8],\n '900': colorPalette[9],\n '1000': colorPalette[10],\n a50: getColorWithOpacity(brandPrimaryColor, opacity[100]),\n a150: getColorWithOpacity(brandPrimaryColor, opacity[100]),\n a100: getColorWithOpacity(brandPrimaryColor, opacity[200]),\n a200: getColorWithOpacity(brandPrimaryColor, opacity[300]),\n a400: getColorWithOpacity(brandPrimaryColor, opacity[400]),\n };\n\n return brandColors;\n};\n\n/**\n *\n * @param brandColors - The brand colors to use to override the light theme\n * @description Returns overrides for the light theme with the brand colors passed in\n * @returns Overrides for the light theme with the custom brand colors\n */\nconst getOnLightOverrides = (\n brandColors: ColorChromaticScale,\n): DeepPartial<ThemeTokens['colors']['onLight']> => {\n // Select the most readable color to use as the foreground color on top of surface color\n // For example: On Secondary Button where the background color is surface color, the text color should be either the brand color or dark color depending on which is more readable on top of that surface color\n const foregroundOnSurface = tinycolor.isReadable(\n globalColors.neutral.blueGrayLight[50],\n brandColors[600],\n WCAG2ContrastOptions,\n )\n ? brandColors[600]\n : globalColors.neutral.blueGrayLight[1100];\n\n const foregroundOnBrand = tinycolor\n .mostReadable(\n brandColors[900],\n [globalColors.neutral.white[500], globalColors.neutral.black[500]],\n WCAG2ContrastOptions,\n )\n .toHslString();\n\n // Overrides for the light theme with the brand colors passed in\n const lightThemeOverrides: DeepPartial<ThemeTokens['colors']['onLight']> = {\n interactive: {\n background: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n fadedHighlighted: brandColors.a150,\n },\n },\n border: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n },\n },\n text: {\n primary: {\n normal: foregroundOnSurface,\n disabled: foregroundOnSurface,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n icon: {\n primary: {\n normal: foregroundOnSurface,\n disabled: foregroundOnSurface,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n },\n surface: {\n background: {\n primary: {\n intense: brandColors[600],\n subtle: brandColors[200],\n },\n },\n icon: {\n primary: {\n normal: brandColors[600],\n },\n },\n text: {\n primary: {\n normal: brandColors[600],\n },\n },\n },\n };\n\n return lightThemeOverrides;\n};\n\n/**\n *\n * @param brandColors - The brand colors to use to override the dark theme\n * @description Returns overrides for the dark theme with the brand colors passed in\n * @returns Overrides for the dark theme with the custom brand colors\n */\nconst getOnDarkOverrides = (\n brandColors: ColorChromaticScale,\n): DeepPartial<ThemeTokens['colors']['onDark']> => {\n // Select the most readable color to use as the foreground color on top of surface color\n // For example: On Secondary Button where the background color is surface color, the text color should be either the brand color or dark color depending on which is more readable on top of that surface color\n const foregroundOnSurface = tinycolor.isReadable(\n globalColors.neutral.blueGrayDark[1100],\n brandColors[400],\n WCAG2ContrastOptions,\n )\n ? brandColors[400]\n : globalColors.neutral.blueGrayDark[0];\n\n const foregroundOnBrand = tinycolor\n .mostReadable(\n brandColors[900],\n [globalColors.neutral.white[500], globalColors.neutral.black[500]],\n WCAG2ContrastOptions,\n )\n .toHslString();\n\n // Overrides for the dark theme with the brand colors passed in\n const darkThemeOverrides: DeepPartial<ThemeTokens['colors']['onDark']> = {\n interactive: {\n background: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n fadedHighlighted: brandColors.a150,\n },\n },\n border: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n },\n },\n text: {\n primary: {\n normal: foregroundOnSurface,\n disabled: foregroundOnSurface,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n icon: {\n primary: {\n normal: foregroundOnSurface,\n disabled: foregroundOnSurface,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n },\n surface: {\n background: {\n primary: {\n intense: brandColors[600],\n subtle: brandColors[200],\n },\n },\n icon: {\n primary: {\n normal: brandColors[600],\n },\n },\n },\n };\n\n return darkThemeOverrides;\n};\n\n/**\n * @param {Object} themeConfig - The brand color and overrides to apply to the theme\n * @param {string} themeConfig.brandColor - The brand color to use to generate the theme. Can be in hex, rgb, or hsl format.\n * @description\n * Creates a Blade Theme based on the custom brand color\n * @returns The Theme Tokens with the custom brand colors\n * @example\n * const { theme, brandColors } = createTheme({ brandColor: '#19BEA2'})\n **/\nexport const createTheme = ({\n brandColor,\n}: {\n brandColor: ColorInput;\n}): { theme: ThemeTokens; brandColors: ColorChromaticScale } => {\n const chromaticBrandColors = generateChromaticBrandColors(brandColor);\n // Get onLight overrides\n const brandedLightTheme = getOnLightOverrides(chromaticBrandColors);\n // Get onDark overrides\n const brandedDarkTheme = getOnDarkOverrides(chromaticBrandColors);\n // Override the payment theme with the brand colors\n const brandedThemeTokens = overrideTheme({\n baseThemeTokens: bladeTheme,\n overrides: {\n name: `custom-${tinycolor(brandColor).toHex()}`,\n colors: {\n onLight: {\n ...brandedLightTheme,\n },\n onDark: {\n ...brandedDarkTheme,\n },\n },\n },\n });\n\n return { theme: brandedThemeTokens, brandColors: chromaticBrandColors };\n};\n"],"names":["WCAG2ContrastOptions","level","size","getColorWithOpacity","color","opacity","tinycolor","setAlpha","toHslString","generateChromaticBrandColors","baseColorInput","baseColor","baseColorHslString","isValid","throwBladeError","message","moduleName","palette","brightness","getBrightness","lightnessFactor","darknessFactor","currentColor","lightShadeIndex","brighten","push","darkShadeIndex","darken","unshift","colorPalette","reverse","brandPrimaryColor","brandColors","a50","a150","a100","a200","a400","getOnLightOverrides","foregroundOnSurface","isReadable","globalColors","neutral","blueGrayLight","foregroundOnBrand","mostReadable","white","black","lightThemeOverrides","interactive","background","primary","highlighted","disabled","faded","fadedHighlighted","border","text","normal","muted","subtle","onPrimary","icon","surface","intense","getOnDarkOverrides","blueGrayDark","darkThemeOverrides","createTheme","_ref","brandColor","chromaticBrandColors","brandedLightTheme","brandedDarkTheme","brandedThemeTokens","overrideTheme","baseThemeTokens","bladeTheme","overrides","name","concat","toHex","colors","onLight","_objectSpread","onDark","theme"],"mappings":";;;;;;;;;;;;AAUA;AACA,IAAMA,oBAAkC,GAAG;AACzCC,EAAAA,KAAK,EAAE,KAAK;AACZC,EAAAA,IAAI,EAAE,OAAA;AACR,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,KAAiB,EAAEC,OAAe,EAAa;AAC1E,EAAA,OAAOC,SAAS,CAACF,KAAK,CAAC,CAACG,QAAQ,CAACF,OAAO,CAAC,CAACG,WAAW,EAAE,CAAA;AACzD,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMC,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAIC,cAA0B,EAA0B;AACxF,EAAA,IAAMC,SAAS,GAAGL,SAAS,CAACI,cAAc,CAAC,CAAA;AAC3C,EAAA,IAAME,kBAAkB,GAAGD,SAAS,CAACH,WAAW,EAAE,CAAA;AAClD,EAAA,IAAI,KAAO,EAAE;AACX,IAAA,IAAI,CAACG,SAAS,CAACE,OAAO,EAAE,EAAE;AACxBC,MAAAA,eAAe,CAAC;AACdC,QAAAA,OAAO,EAAE,2BAA2B;AACpCC,QAAAA,UAAU,EAAE,aAAA;AACd,OAAC,CAAC,CAAA;AACJ,KAAA;AACF,GAAA;AAEA,EAAA,IAAMC,OAAO,GAAG,CAACL,kBAAkB,CAAC,CAAC;EACrC,IAAMM,UAAU,GAAGZ,SAAS,CAACK,SAAS,CAAC,CAACQ,aAAa,EAAE,CAAA;AACvD;EACA,IAAMC,eAAe,GAAGF,UAAU,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;EAChD,IAAMG,cAAc,GAAGH,UAAU,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;EAE9C,IAAII,YAAY,GAAGX,SAAS,CAAA;;AAE5B;EACA,KAAK,IAAIY,eAAe,GAAG,CAAC,EAAEA,eAAe,GAAG,CAAC,EAAEA,eAAe,EAAE,EAAE;AACpED,IAAAA,YAAY,GAAGA,YAAY,CAACE,QAAQ,CAACJ,eAAe,CAAC,CAAA;IACrDH,OAAO,CAACQ,IAAI,CAACH,YAAY,CAACd,WAAW,EAAE,CAAC,CAAA;AAC1C,GAAA;AAEAc,EAAAA,YAAY,GAAGhB,SAAS,CAACM,kBAAkB,CAAC,CAAC;;AAE7C;EACA,KAAK,IAAIc,cAAc,GAAG,CAAC,EAAEA,cAAc,GAAG,CAAC,EAAEA,cAAc,EAAE,EAAE;AACjEJ,IAAAA,YAAY,GAAGA,YAAY,CAACK,MAAM,CAACN,cAAc,CAAC,CAAA;IAClDJ,OAAO,CAACW,OAAO,CAACN,YAAY,CAACd,WAAW,EAAE,CAAC,CAAC;AAC9C,GAAA;AAEA,EAAA,IAAMqB,YAAY,GAAGZ,OAAO,CAACa,OAAO,EAAE,CAAA;AACtC,EAAA,IAAMC,iBAAiB,GAAGF,YAAY,CAAC,CAAC,CAAC,CAAA;AAEzC,EAAA,IAAMG,WAAgC,GAAG;AACvC,IAAA,IAAI,EAAEH,YAAY,CAAC,CAAC,CAAC;AACrB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEE,iBAAiB;AACxB,IAAA,KAAK,EAAEF,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,KAAK,EAAEA,YAAY,CAAC,CAAC,CAAC;AACtB,IAAA,MAAM,EAAEA,YAAY,CAAC,EAAE,CAAC;IACxBI,GAAG,EAAE9B,mBAAmB,CAAC4B,iBAAiB,EAAE1B,OAAO,CAAC,GAAG,CAAC,CAAC;IACzD6B,IAAI,EAAE/B,mBAAmB,CAAC4B,iBAAiB,EAAE1B,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1D8B,IAAI,EAAEhC,mBAAmB,CAAC4B,iBAAiB,EAAE1B,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1D+B,IAAI,EAAEjC,mBAAmB,CAAC4B,iBAAiB,EAAE1B,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1DgC,IAAI,EAAElC,mBAAmB,CAAC4B,iBAAiB,EAAE1B,OAAO,CAAC,GAAG,CAAC,CAAA;GAC1D,CAAA;AAED,EAAA,OAAO2B,WAAW,CAAA;AACpB,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,IAAMM,mBAAmB,GAAG,SAAtBA,mBAAmBA,CACvBN,WAAgC,EACkB;AAClD;AACA;AACA,EAAA,IAAMO,mBAAmB,GAAGjC,SAAS,CAACkC,UAAU,CAC9CC,MAAY,CAACC,OAAO,CAACC,aAAa,CAAC,EAAE,CAAC,EACtCX,WAAW,CAAC,GAAG,CAAC,EAChBhC,oBACF,CAAC,GACGgC,WAAW,CAAC,GAAG,CAAC,GAChBS,MAAY,CAACC,OAAO,CAACC,aAAa,CAAC,IAAI,CAAC,CAAA;AAE5C,EAAA,IAAMC,iBAAiB,GAAGtC,SAAS,CAChCuC,YAAY,CACXb,WAAW,CAAC,GAAG,CAAC,EAChB,CAACS,MAAY,CAACC,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC,EAAEL,MAAY,CAACC,OAAO,CAACK,KAAK,CAAC,GAAG,CAAC,CAAC,EAClE/C,oBACF,CAAC,CACAQ,WAAW,EAAE,CAAA;;AAEhB;AACA,EAAA,IAAMwC,mBAAkE,GAAG;AACzEC,IAAAA,WAAW,EAAE;AACXC,MAAAA,UAAU,EAAE;AACVC,QAAAA,OAAO,EAAE;UACP,SAASnB,EAAAA,WAAW,CAAC,GAAG,CAAC;AACzBoB,UAAAA,WAAW,EAAEpB,WAAW,CAAC,GAAG,CAAC;UAC7BqB,QAAQ,EAAErB,WAAW,CAACG,IAAI;UAC1BmB,KAAK,EAAEtB,WAAW,CAACG,IAAI;UACvBoB,gBAAgB,EAAEvB,WAAW,CAACE,IAAAA;AAChC,SAAA;OACD;AACDsB,MAAAA,MAAM,EAAE;AACNL,QAAAA,OAAO,EAAE;UACP,SAASnB,EAAAA,WAAW,CAAC,GAAG,CAAC;AACzBoB,UAAAA,WAAW,EAAEpB,WAAW,CAAC,GAAG,CAAC;UAC7BqB,QAAQ,EAAErB,WAAW,CAACG,IAAI;UAC1BmB,KAAK,EAAEtB,WAAW,CAACG,IAAAA;AACrB,SAAA;OACD;AACDsB,MAAAA,IAAI,EAAE;AACJN,QAAAA,OAAO,EAAE;AACPO,UAAAA,MAAM,EAAEnB,mBAAmB;AAC3Bc,UAAAA,QAAQ,EAAEd,mBAAmB;AAC7BoB,UAAAA,KAAK,EAAEpB,mBAAmB;AAC1BqB,UAAAA,MAAM,EAAErB,mBAAAA;SACT;AACDsB,QAAAA,SAAS,EAAE;AACTH,UAAAA,MAAM,EAAEd,iBAAiB;AACzBS,UAAAA,QAAQ,EAAET,iBAAiB;AAC3Be,UAAAA,KAAK,EAAEf,iBAAiB;AACxBgB,UAAAA,MAAM,EAAEhB,iBAAAA;AACV,SAAA;OACD;AACDkB,MAAAA,IAAI,EAAE;AACJX,QAAAA,OAAO,EAAE;AACPO,UAAAA,MAAM,EAAEnB,mBAAmB;AAC3Bc,UAAAA,QAAQ,EAAEd,mBAAmB;AAC7BoB,UAAAA,KAAK,EAAEpB,mBAAmB;AAC1BqB,UAAAA,MAAM,EAAErB,mBAAAA;SACT;AACDsB,QAAAA,SAAS,EAAE;AACTH,UAAAA,MAAM,EAAEd,iBAAiB;AACzBS,UAAAA,QAAQ,EAAET,iBAAiB;AAC3Be,UAAAA,KAAK,EAAEf,iBAAiB;AACxBgB,UAAAA,MAAM,EAAEhB,iBAAAA;AACV,SAAA;AACF,OAAA;KACD;AACDmB,IAAAA,OAAO,EAAE;AACPb,MAAAA,UAAU,EAAE;AACVC,QAAAA,OAAO,EAAE;AACPa,UAAAA,OAAO,EAAEhC,WAAW,CAAC,GAAG,CAAC;UACzB4B,MAAM,EAAE5B,WAAW,CAAC,GAAG,CAAA;AACzB,SAAA;OACD;AACD8B,MAAAA,IAAI,EAAE;AACJX,QAAAA,OAAO,EAAE;UACPO,MAAM,EAAE1B,WAAW,CAAC,GAAG,CAAA;AACzB,SAAA;OACD;AACDyB,MAAAA,IAAI,EAAE;AACJN,QAAAA,OAAO,EAAE;UACPO,MAAM,EAAE1B,WAAW,CAAC,GAAG,CAAA;AACzB,SAAA;AACF,OAAA;AACF,KAAA;GACD,CAAA;AAED,EAAA,OAAOgB,mBAAmB,CAAA;AAC5B,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,IAAMiB,kBAAkB,GAAG,SAArBA,kBAAkBA,CACtBjC,WAAgC,EACiB;AACjD;AACA;AACA,EAAA,IAAMO,mBAAmB,GAAGjC,SAAS,CAACkC,UAAU,CAC9CC,MAAY,CAACC,OAAO,CAACwB,YAAY,CAAC,IAAI,CAAC,EACvClC,WAAW,CAAC,GAAG,CAAC,EAChBhC,oBACF,CAAC,GACGgC,WAAW,CAAC,GAAG,CAAC,GAChBS,MAAY,CAACC,OAAO,CAACwB,YAAY,CAAC,CAAC,CAAC,CAAA;AAExC,EAAA,IAAMtB,iBAAiB,GAAGtC,SAAS,CAChCuC,YAAY,CACXb,WAAW,CAAC,GAAG,CAAC,EAChB,CAACS,MAAY,CAACC,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC,EAAEL,MAAY,CAACC,OAAO,CAACK,KAAK,CAAC,GAAG,CAAC,CAAC,EAClE/C,oBACF,CAAC,CACAQ,WAAW,EAAE,CAAA;;AAEhB;AACA,EAAA,IAAM2D,kBAAgE,GAAG;AACvElB,IAAAA,WAAW,EAAE;AACXC,MAAAA,UAAU,EAAE;AACVC,QAAAA,OAAO,EAAE;UACP,SAASnB,EAAAA,WAAW,CAAC,GAAG,CAAC;AACzBoB,UAAAA,WAAW,EAAEpB,WAAW,CAAC,GAAG,CAAC;UAC7BqB,QAAQ,EAAErB,WAAW,CAACG,IAAI;UAC1BmB,KAAK,EAAEtB,WAAW,CAACG,IAAI;UACvBoB,gBAAgB,EAAEvB,WAAW,CAACE,IAAAA;AAChC,SAAA;OACD;AACDsB,MAAAA,MAAM,EAAE;AACNL,QAAAA,OAAO,EAAE;UACP,SAASnB,EAAAA,WAAW,CAAC,GAAG,CAAC;AACzBoB,UAAAA,WAAW,EAAEpB,WAAW,CAAC,GAAG,CAAC;UAC7BqB,QAAQ,EAAErB,WAAW,CAACG,IAAI;UAC1BmB,KAAK,EAAEtB,WAAW,CAACG,IAAAA;AACrB,SAAA;OACD;AACDsB,MAAAA,IAAI,EAAE;AACJN,QAAAA,OAAO,EAAE;AACPO,UAAAA,MAAM,EAAEnB,mBAAmB;AAC3Bc,UAAAA,QAAQ,EAAEd,mBAAmB;AAC7BoB,UAAAA,KAAK,EAAEpB,mBAAmB;AAC1BqB,UAAAA,MAAM,EAAErB,mBAAAA;SACT;AACDsB,QAAAA,SAAS,EAAE;AACTH,UAAAA,MAAM,EAAEd,iBAAiB;AACzBS,UAAAA,QAAQ,EAAET,iBAAiB;AAC3Be,UAAAA,KAAK,EAAEf,iBAAiB;AACxBgB,UAAAA,MAAM,EAAEhB,iBAAAA;AACV,SAAA;OACD;AACDkB,MAAAA,IAAI,EAAE;AACJX,QAAAA,OAAO,EAAE;AACPO,UAAAA,MAAM,EAAEnB,mBAAmB;AAC3Bc,UAAAA,QAAQ,EAAEd,mBAAmB;AAC7BoB,UAAAA,KAAK,EAAEpB,mBAAmB;AAC1BqB,UAAAA,MAAM,EAAErB,mBAAAA;SACT;AACDsB,QAAAA,SAAS,EAAE;AACTH,UAAAA,MAAM,EAAEd,iBAAiB;AACzBS,UAAAA,QAAQ,EAAET,iBAAiB;AAC3Be,UAAAA,KAAK,EAAEf,iBAAiB;AACxBgB,UAAAA,MAAM,EAAEhB,iBAAAA;AACV,SAAA;AACF,OAAA;KACD;AACDmB,IAAAA,OAAO,EAAE;AACPb,MAAAA,UAAU,EAAE;AACVC,QAAAA,OAAO,EAAE;AACPa,UAAAA,OAAO,EAAEhC,WAAW,CAAC,GAAG,CAAC;UACzB4B,MAAM,EAAE5B,WAAW,CAAC,GAAG,CAAA;AACzB,SAAA;OACD;AACD8B,MAAAA,IAAI,EAAE;AACJX,QAAAA,OAAO,EAAE;UACPO,MAAM,EAAE1B,WAAW,CAAC,GAAG,CAAA;AACzB,SAAA;AACF,OAAA;AACF,KAAA;GACD,CAAA;AAED,EAAA,OAAOmC,kBAAkB,CAAA;AAC3B,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaC,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAIwC;AAAA,EAAA,IAH9DC,UAAU,GAAAD,IAAA,CAAVC,UAAU,CAAA;AAIV,EAAA,IAAMC,oBAAoB,GAAG9D,4BAA4B,CAAC6D,UAAU,CAAC,CAAA;AACrE;AACA,EAAA,IAAME,iBAAiB,GAAGlC,mBAAmB,CAACiC,oBAAoB,CAAC,CAAA;AACnE;AACA,EAAA,IAAME,gBAAgB,GAAGR,kBAAkB,CAACM,oBAAoB,CAAC,CAAA;AACjE;EACA,IAAMG,kBAAkB,GAAGC,aAAa,CAAC;AACvCC,IAAAA,eAAe,EAAEC,UAAU;AAC3BC,IAAAA,SAAS,EAAE;MACTC,IAAI,EAAA,SAAA,CAAAC,MAAA,CAAY1E,SAAS,CAACgE,UAAU,CAAC,CAACW,KAAK,EAAE,CAAE;AAC/CC,MAAAA,MAAM,EAAE;AACNC,QAAAA,OAAO,EAAAC,aAAA,CACFZ,EAAAA,EAAAA,iBAAiB,CACrB;QACDa,MAAM,EAAAD,aAAA,CAAA,EAAA,EACDX,gBAAgB,CAAA;AAEvB,OAAA;AACF,KAAA;AACF,GAAC,CAAC,CAAA;EAEF,OAAO;AAAEa,IAAAA,KAAK,EAAEZ,kBAAkB;AAAE1C,IAAAA,WAAW,EAAEuC,oBAAAA;GAAsB,CAAA;AACzE;;;;"}
|
|
1
|
+
{"version":3,"file":"createTheme.js","sources":["../../../../../../src/tokens/theme/createTheme.ts"],"sourcesContent":["import tinycolor from 'tinycolor2';\nimport type { WCAG2Options, ColorInput } from 'tinycolor2';\nimport type { ThemeTokens } from './theme';\nimport overrideTheme from './overrideTheme';\nimport bladeTheme from './bladeTheme';\nimport { colors as globalColors, opacity } from '~tokens/global';\nimport type { ColorChromaticScale } from '~tokens/global/colors';\nimport { throwBladeError } from '~utils/logger';\nimport type { DeepPartial } from '~utils/isPartialMatchObjectKeys';\n\n// WCAG2ContrastOptions are the options used to determine if a color is readable\nconst WCAG2ContrastOptions: WCAG2Options = {\n level: 'AAA',\n size: 'large',\n};\n\n/**\n * getColorWithOpacity\n * @param color - The color to add opacity to\n * @param opacity - The opacity to add to the color\n * @returns The color with the opacity added\n * @example\n * getColorWithOpacity('#fff', 0.5) // returns 'hsla(0, 0%, 100%, 0.5)'\n *\n **/\nconst getColorWithOpacity = (color: ColorInput, opacity: number): string => {\n return tinycolor(color).setAlpha(opacity).toHslString();\n};\n\n/**\n *\n * @description\n * Generates a chromatic color palette based on the base color passed in.\n * The base color is used to generate a palette of 11 colors, 5 shades lighter and 5 shades darker than the base color.\n * @param baseColorInput - The base color to generate the chromatic color palette from in hex, rgb, or hsl format\n * @returns Array of chromatic color palette\n */\nconst generateChromaticBrandColors = (baseColorInput: ColorInput): ColorChromaticScale => {\n const baseColor = tinycolor(baseColorInput);\n const baseColorHslString = baseColor.toHslString();\n if (__DEV__) {\n if (!baseColor.isValid()) {\n throwBladeError({\n message: 'Invalid brandColor passed',\n moduleName: 'createTheme',\n });\n }\n }\n\n const palette = [baseColorHslString]; // Include the original color\n const brightness = tinycolor(baseColor).getBrightness();\n // Determine how much to lighten or darken the colors depending on the brightness of the base color\n const lightnessFactor = brightness > 150 ? 3 : 6;\n const darknessFactor = brightness < 50 ? 3 : 5;\n\n let currentColor = baseColor;\n\n // Generate shades lighter\n for (let lightShadeIndex = 0; lightShadeIndex < 6; lightShadeIndex++) {\n currentColor = currentColor.brighten(lightnessFactor);\n palette.push(currentColor.toHslString());\n }\n\n currentColor = tinycolor(baseColorHslString); // Reset to the base color\n\n // Generate shades darker\n for (let darkShadeIndex = 0; darkShadeIndex < 4; darkShadeIndex++) {\n currentColor = currentColor.darken(darknessFactor);\n palette.unshift(currentColor.toHslString()); // Add shades at the beginning of the palette\n }\n\n const colorPalette = palette.reverse();\n const brandPrimaryColor = colorPalette[6];\n\n const brandColors: ColorChromaticScale = {\n '50': colorPalette[0],\n '100': colorPalette[1],\n '200': colorPalette[2],\n '300': colorPalette[3],\n '400': colorPalette[4],\n '500': colorPalette[5],\n '600': brandPrimaryColor,\n '700': colorPalette[7],\n '800': colorPalette[8],\n '900': colorPalette[9],\n '1000': colorPalette[10],\n a50: getColorWithOpacity(brandPrimaryColor, opacity[100]),\n a150: getColorWithOpacity(brandPrimaryColor, opacity[100]),\n a100: getColorWithOpacity(brandPrimaryColor, opacity[200]),\n a200: getColorWithOpacity(brandPrimaryColor, opacity[300]),\n a400: getColorWithOpacity(brandPrimaryColor, opacity[400]),\n };\n\n return brandColors;\n};\n\n/**\n *\n * @param brandColors - The brand colors to use to override the light theme\n * @description Returns overrides for the light theme with the brand colors passed in\n * @returns Overrides for the light theme with the custom brand colors\n */\nconst getOnLightOverrides = (\n brandColors: ColorChromaticScale,\n): DeepPartial<ThemeTokens['colors']['onLight']> => {\n // Select the most readable color to use as the foreground color on top of surface color\n // For example: On Secondary Button where the background color is surface color, the text color should be either the brand color or dark color depending on which is more readable on top of that surface color\n const foregroundOnSurface = tinycolor.isReadable(\n globalColors.neutral.blueGrayLight[50],\n brandColors[600],\n WCAG2ContrastOptions,\n )\n ? brandColors[600]\n : globalColors.neutral.blueGrayLight[1100];\n\n const foregroundOnBrand = tinycolor\n .mostReadable(\n brandColors[900],\n [globalColors.neutral.white[500], globalColors.neutral.black[500]],\n WCAG2ContrastOptions,\n )\n .toHslString();\n\n // Overrides for the light theme with the brand colors passed in\n const lightThemeOverrides: DeepPartial<ThemeTokens['colors']['onLight']> = {\n interactive: {\n background: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n fadedHighlighted: brandColors.a150,\n },\n },\n border: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n },\n },\n text: {\n primary: {\n normal: foregroundOnSurface,\n disabled: brandColors.a200,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n icon: {\n primary: {\n normal: foregroundOnSurface,\n disabled: brandColors.a200,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n },\n surface: {\n background: {\n primary: {\n intense: brandColors[600],\n subtle: brandColors[200],\n },\n },\n icon: {\n primary: {\n normal: brandColors[600],\n },\n },\n text: {\n primary: {\n normal: brandColors[600],\n },\n },\n },\n };\n\n return lightThemeOverrides;\n};\n\n/**\n *\n * @param brandColors - The brand colors to use to override the dark theme\n * @description Returns overrides for the dark theme with the brand colors passed in\n * @returns Overrides for the dark theme with the custom brand colors\n */\nconst getOnDarkOverrides = (\n brandColors: ColorChromaticScale,\n): DeepPartial<ThemeTokens['colors']['onDark']> => {\n // Select the most readable color to use as the foreground color on top of surface color\n // For example: On Secondary Button where the background color is surface color, the text color should be either the brand color or dark color depending on which is more readable on top of that surface color\n const foregroundOnSurface = tinycolor.isReadable(\n globalColors.neutral.blueGrayDark[1100],\n brandColors[400],\n WCAG2ContrastOptions,\n )\n ? brandColors[400]\n : globalColors.neutral.blueGrayDark[0];\n\n const foregroundOnBrand = tinycolor\n .mostReadable(\n brandColors[900],\n [globalColors.neutral.white[500], globalColors.neutral.black[500]],\n WCAG2ContrastOptions,\n )\n .toHslString();\n\n // Overrides for the dark theme with the brand colors passed in\n const darkThemeOverrides: DeepPartial<ThemeTokens['colors']['onDark']> = {\n interactive: {\n background: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n fadedHighlighted: brandColors.a150,\n },\n },\n border: {\n primary: {\n default: brandColors[600],\n highlighted: brandColors[700],\n disabled: brandColors.a100,\n faded: brandColors.a100,\n },\n },\n text: {\n primary: {\n normal: foregroundOnSurface,\n disabled: brandColors.a400,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n icon: {\n primary: {\n normal: foregroundOnSurface,\n disabled: brandColors.a400,\n muted: foregroundOnSurface,\n subtle: foregroundOnSurface,\n },\n onPrimary: {\n normal: foregroundOnBrand,\n disabled: foregroundOnBrand,\n muted: foregroundOnBrand,\n subtle: foregroundOnBrand,\n },\n },\n },\n surface: {\n background: {\n primary: {\n intense: brandColors[600],\n subtle: brandColors[200],\n },\n },\n icon: {\n primary: {\n normal: brandColors[600],\n },\n },\n },\n };\n\n return darkThemeOverrides;\n};\n\n/**\n * @param {Object} themeConfig - The brand color and overrides to apply to the theme\n * @param {string} themeConfig.brandColor - The brand color to use to generate the theme. Can be in hex, rgb, or hsl format.\n * @description\n * Creates a Blade Theme based on the custom brand color\n * @returns The Theme Tokens with the custom brand colors\n * @example\n * const { theme, brandColors } = createTheme({ brandColor: '#19BEA2'})\n **/\nexport const createTheme = ({\n brandColor,\n}: {\n brandColor: ColorInput;\n}): { theme: ThemeTokens; brandColors: ColorChromaticScale } => {\n const chromaticBrandColors = generateChromaticBrandColors(brandColor);\n // Get onLight overrides\n const brandedLightTheme = getOnLightOverrides(chromaticBrandColors);\n // Get onDark overrides\n const brandedDarkTheme = getOnDarkOverrides(chromaticBrandColors);\n // Override the payment theme with the brand colors\n const brandedThemeTokens = overrideTheme({\n baseThemeTokens: bladeTheme,\n overrides: {\n name: `custom-${tinycolor(brandColor).toHex()}`,\n colors: {\n onLight: {\n ...brandedLightTheme,\n },\n onDark: {\n ...brandedDarkTheme,\n },\n },\n },\n });\n\n return { theme: brandedThemeTokens, brandColors: chromaticBrandColors };\n};\n"],"names":["WCAG2ContrastOptions","level","size","getColorWithOpacity","color","opacity","tinycolor","setAlpha","toHslString","generateChromaticBrandColors","baseColorInput","baseColor","baseColorHslString","isValid","throwBladeError","message","moduleName","palette","brightness","getBrightness","lightnessFactor","darknessFactor","currentColor","lightShadeIndex","brighten","push","darkShadeIndex","darken","unshift","colorPalette","reverse","brandPrimaryColor","brandColors","a50","a150","a100","a200","a400","getOnLightOverrides","foregroundOnSurface","isReadable","globalColors","neutral","blueGrayLight","foregroundOnBrand","mostReadable","white","black","lightThemeOverrides","interactive","background","primary","highlighted","disabled","faded","fadedHighlighted","border","text","normal","muted","subtle","onPrimary","icon","surface","intense","getOnDarkOverrides","blueGrayDark","darkThemeOverrides","createTheme","_ref","brandColor","chromaticBrandColors","brandedLightTheme","brandedDarkTheme","brandedThemeTokens","overrideTheme","baseThemeTokens","bladeTheme","overrides","name","concat","toHex","colors","onLight","_objectSpread","onDark","theme"],"mappings":"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"}
|