@popsure/dirty-swan 0.32.0 → 0.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +62 -14
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/components/downloadButton/index.d.ts +3 -3
- package/dist/cjs/lib/components/downloadButton/index.stories.d.ts +36 -0
- package/dist/cjs/lib/components/input/checkbox/index.d.ts +17 -0
- package/dist/cjs/lib/components/input/checkbox/index.stories.d.ts +64 -0
- package/dist/cjs/lib/components/markdown/index.d.ts +9 -8
- package/dist/cjs/lib/components/markdown/index.stories.d.ts +44 -0
- package/dist/cjs/lib/components/signaturePad/index.d.ts +4 -4
- package/dist/cjs/lib/components/signaturePad/index.stories.d.ts +21 -0
- package/dist/cjs/lib/index.d.ts +5 -4
- package/dist/index.css +4 -0
- package/dist/index.css.map +1 -1
- package/dist/lib/scss/private/components/_input.scss +4 -0
- package/package.json +1 -1
- package/src/App.tsx +1 -1
- package/src/global.d.ts +1 -0
- package/src/index.tsx +1 -0
- package/src/lib/components/downloadButton/index.stories.tsx +58 -0
- package/src/lib/components/downloadButton/index.tsx +3 -3
- package/src/lib/components/input/checkbox/index.stories.tsx +214 -0
- package/src/lib/components/input/checkbox/index.test.tsx +110 -0
- package/src/lib/components/input/checkbox/index.tsx +129 -0
- package/src/lib/components/markdown/index.stories.tsx +69 -0
- package/src/lib/components/markdown/index.tsx +11 -9
- package/src/lib/components/signaturePad/index.stories.tsx +35 -0
- package/src/lib/components/signaturePad/index.tsx +6 -6
- package/src/lib/index.tsx +5 -3
- package/src/lib/scss/private/components/_input.scss +4 -0
- package/dist/esm/App.d.ts +0 -3
- package/dist/esm/_commonjsHelpers-e7f67fd8.js +0 -23
- package/dist/esm/_commonjsHelpers-e7f67fd8.js.map +0 -1
- package/dist/esm/components/autocompleteAddress/index.js +0 -2062
- package/dist/esm/components/autocompleteAddress/index.js.map +0 -1
- package/dist/esm/components/autocompleteAddress/index.stories.js +0 -110
- package/dist/esm/components/autocompleteAddress/index.stories.js.map +0 -1
- package/dist/esm/components/autocompleteAddress/index.test.js +0 -115
- package/dist/esm/components/autocompleteAddress/index.test.js.map +0 -1
- package/dist/esm/components/button/index.js +0 -26
- package/dist/esm/components/button/index.js.map +0 -1
- package/dist/esm/components/cards/cardButton/index.js +0 -6
- package/dist/esm/components/cards/cardButton/index.js.map +0 -1
- package/dist/esm/components/cards/cardWithLeftIcon/index.js +0 -7
- package/dist/esm/components/cards/cardWithLeftIcon/index.js.map +0 -1
- package/dist/esm/components/cards/cardWithTopIcon/index.js +0 -7
- package/dist/esm/components/cards/cardWithTopIcon/index.js.map +0 -1
- package/dist/esm/components/cards/cardWithTopLeftIcon/index.js +0 -7
- package/dist/esm/components/cards/cardWithTopLeftIcon/index.js.map +0 -1
- package/dist/esm/components/cards/index.js +0 -125
- package/dist/esm/components/cards/index.js.map +0 -1
- package/dist/esm/components/cards/infoCard/index.js +0 -7
- package/dist/esm/components/cards/infoCard/index.js.map +0 -1
- package/dist/esm/components/chip/index.js +0 -22
- package/dist/esm/components/chip/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/AccordionItem/AccordionItem.js +0 -32
- package/dist/esm/components/comparisonTable/components/AccordionItem/AccordionItem.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/AccordionItem/index.js +0 -8
- package/dist/esm/components/comparisonTable/components/AccordionItem/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/Chevron.js +0 -10
- package/dist/esm/components/comparisonTable/components/Chevron.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/Row/index.js +0 -36
- package/dist/esm/components/comparisonTable/components/Row/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableArrows/Arrow.js +0 -10
- package/dist/esm/components/comparisonTable/components/TableArrows/Arrow.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableArrows/index.js +0 -24
- package/dist/esm/components/comparisonTable/components/TableArrows/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableButton/index.js +0 -15
- package/dist/esm/components/comparisonTable/components/TableButton/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableButton/index.test.js +0 -37
- package/dist/esm/components/comparisonTable/components/TableButton/index.test.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableInfoButton/index.js +0 -22
- package/dist/esm/components/comparisonTable/components/TableInfoButton/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableRating/StarIcon.js +0 -10
- package/dist/esm/components/comparisonTable/components/TableRating/StarIcon.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableRating/ZapIcon.js +0 -10
- package/dist/esm/components/comparisonTable/components/TableRating/ZapIcon.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableRating/index.js +0 -27
- package/dist/esm/components/comparisonTable/components/TableRating/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableRowHeader/index.js +0 -18
- package/dist/esm/components/comparisonTable/components/TableRowHeader/index.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableRowHeader/index.test.js +0 -82
- package/dist/esm/components/comparisonTable/components/TableRowHeader/index.test.js.map +0 -1
- package/dist/esm/components/comparisonTable/components/TableTrueFalse.js +0 -13
- package/dist/esm/components/comparisonTable/components/TableTrueFalse.js.map +0 -1
- package/dist/esm/components/comparisonTable/index.js +0 -1683
- package/dist/esm/components/comparisonTable/index.js.map +0 -1
- package/dist/esm/components/dateSelector/index.js +0 -2180
- package/dist/esm/components/dateSelector/index.js.map +0 -1
- package/dist/esm/components/dateSelector/index.test.js +0 -65
- package/dist/esm/components/dateSelector/index.test.js.map +0 -1
- package/dist/esm/components/downloadButton/index.js +0 -36
- package/dist/esm/components/downloadButton/index.js.map +0 -1
- package/dist/esm/components/input/autoSuggestInput/index.js +0 -2157
- package/dist/esm/components/input/autoSuggestInput/index.js.map +0 -1
- package/dist/esm/components/input/autoSuggestMultiSelect/index.js +0 -41
- package/dist/esm/components/input/autoSuggestMultiSelect/index.js.map +0 -1
- package/dist/esm/components/input/currency/index.js +0 -63
- package/dist/esm/components/input/currency/index.js.map +0 -1
- package/dist/esm/components/input/currency/index.test.js +0 -209
- package/dist/esm/components/input/currency/index.test.js.map +0 -1
- package/dist/esm/components/input/iban/index.js +0 -33
- package/dist/esm/components/input/iban/index.js.map +0 -1
- package/dist/esm/components/input/index.js +0 -29
- package/dist/esm/components/input/index.js.map +0 -1
- package/dist/esm/components/markdown/index.js +0 -22178
- package/dist/esm/components/markdown/index.js.map +0 -1
- package/dist/esm/components/modal/bottomModal/index.js +0 -35
- package/dist/esm/components/modal/bottomModal/index.js.map +0 -1
- package/dist/esm/components/modal/bottomOrRegularModal/index.js +0 -36
- package/dist/esm/components/modal/bottomOrRegularModal/index.js.map +0 -1
- package/dist/esm/components/modal/regularModal/index.js +0 -28
- package/dist/esm/components/modal/regularModal/index.js.map +0 -1
- package/dist/esm/components/multiDropzone/UploadFileCell/index.js +0 -6
- package/dist/esm/components/multiDropzone/UploadFileCell/index.js.map +0 -1
- package/dist/esm/components/multiDropzone/index.js +0 -2862
- package/dist/esm/components/multiDropzone/index.js.map +0 -1
- package/dist/esm/components/multiDropzone/index.test.js +0 -201
- package/dist/esm/components/multiDropzone/index.test.js.map +0 -1
- package/dist/esm/components/segmentedControl/index.js +0 -42
- package/dist/esm/components/segmentedControl/index.js.map +0 -1
- package/dist/esm/components/segmentedControl/index.stories.js +0 -62
- package/dist/esm/components/segmentedControl/index.stories.js.map +0 -1
- package/dist/esm/components/segmentedControl/index.test.js +0 -63
- package/dist/esm/components/segmentedControl/index.test.js.map +0 -1
- package/dist/esm/components/signaturePad/index.js +0 -560
- package/dist/esm/components/signaturePad/index.js.map +0 -1
- package/dist/esm/customRender-4157fcff.js +0 -24102
- package/dist/esm/customRender-4157fcff.js.map +0 -1
- package/dist/esm/extend-expect-46bdce4a.js +0 -7406
- package/dist/esm/extend-expect-46bdce4a.js.map +0 -1
- package/dist/esm/index-1463d5e9.js +0 -382
- package/dist/esm/index-1463d5e9.js.map +0 -1
- package/dist/esm/index-171a0108.js +0 -997
- package/dist/esm/index-171a0108.js.map +0 -1
- package/dist/esm/index-21239ab0.js +0 -237
- package/dist/esm/index-21239ab0.js.map +0 -1
- package/dist/esm/index-47663d39.js +0 -48
- package/dist/esm/index-47663d39.js.map +0 -1
- package/dist/esm/index-6ced5532.js +0 -69
- package/dist/esm/index-6ced5532.js.map +0 -1
- package/dist/esm/index-db2e797f.js +0 -13
- package/dist/esm/index-db2e797f.js.map +0 -1
- package/dist/esm/index-dd80248b.js +0 -91
- package/dist/esm/index-dd80248b.js.map +0 -1
- package/dist/esm/index-e9e37a34.js +0 -62
- package/dist/esm/index-e9e37a34.js.map +0 -1
- package/dist/esm/index-fb46adf9.js +0 -12
- package/dist/esm/index-fb46adf9.js.map +0 -1
- package/dist/esm/index.d.ts +0 -2
- package/dist/esm/index.js +0 -49
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/lib/components/autocompleteAddress/index.d.ts +0 -20
- package/dist/esm/lib/components/autocompleteAddress/index.stories.d.ts +0 -66
- package/dist/esm/lib/components/autocompleteAddress/mapStyle.d.ts +0 -2
- package/dist/esm/lib/components/autocompleteAddress/util/index.d.ts +0 -4
- package/dist/esm/lib/components/button/icons/index.d.ts +0 -9
- package/dist/esm/lib/components/button/index.d.ts +0 -13
- package/dist/esm/lib/components/cards/cardButton/index.d.ts +0 -16
- package/dist/esm/lib/components/cards/cardWithLeftIcon/index.d.ts +0 -14
- package/dist/esm/lib/components/cards/cardWithTopIcon/index.d.ts +0 -15
- package/dist/esm/lib/components/cards/cardWithTopLeftIcon/index.d.ts +0 -14
- package/dist/esm/lib/components/cards/icons/index.d.ts +0 -13
- package/dist/esm/lib/components/cards/index.d.ts +0 -16
- package/dist/esm/lib/components/cards/infoCard/index.d.ts +0 -13
- package/dist/esm/lib/components/chip/index.d.ts +0 -6
- package/dist/esm/lib/components/comparisonTable/components/AccordionItem/AccordionItem.d.ts +0 -9
- package/dist/esm/lib/components/comparisonTable/components/AccordionItem/index.d.ts +0 -1
- package/dist/esm/lib/components/comparisonTable/components/Chevron.d.ts +0 -4
- package/dist/esm/lib/components/comparisonTable/components/Row/index.d.ts +0 -11
- package/dist/esm/lib/components/comparisonTable/components/TableArrows/Arrow.d.ts +0 -4
- package/dist/esm/lib/components/comparisonTable/components/TableArrows/index.d.ts +0 -10
- package/dist/esm/lib/components/comparisonTable/components/TableButton/index.d.ts +0 -8
- package/dist/esm/lib/components/comparisonTable/components/TableButton/index.test.d.ts +0 -1
- package/dist/esm/lib/components/comparisonTable/components/TableInfoButton/index.d.ts +0 -5
- package/dist/esm/lib/components/comparisonTable/components/TableRating/StarIcon.d.ts +0 -4
- package/dist/esm/lib/components/comparisonTable/components/TableRating/ZapIcon.d.ts +0 -4
- package/dist/esm/lib/components/comparisonTable/components/TableRating/index.d.ts +0 -7
- package/dist/esm/lib/components/comparisonTable/components/TableRowHeader/index.d.ts +0 -9
- package/dist/esm/lib/components/comparisonTable/components/TableRowHeader/index.test.d.ts +0 -1
- package/dist/esm/lib/components/comparisonTable/components/TableTrueFalse.d.ts +0 -5
- package/dist/esm/lib/components/comparisonTable/hooks/useComparisonTable.d.ts +0 -14
- package/dist/esm/lib/components/comparisonTable/index.d.ts +0 -52
- package/dist/esm/lib/components/dateSelector/index.d.ts +0 -23
- package/dist/esm/lib/components/dateSelector/index.test.d.ts +0 -1
- package/dist/esm/lib/components/downloadButton/index.d.ts +0 -10
- package/dist/esm/lib/components/input/autoSuggestInput/index.d.ts +0 -15
- package/dist/esm/lib/components/input/autoSuggestMultiSelect/index.d.ts +0 -11
- package/dist/esm/lib/components/input/currency/format/index.d.ts +0 -2
- package/dist/esm/lib/components/input/currency/index.d.ts +0 -7
- package/dist/esm/lib/components/input/currency/index.test.d.ts +0 -1
- package/dist/esm/lib/components/input/iban/formatIban/index.d.ts +0 -1
- package/dist/esm/lib/components/input/iban/index.d.ts +0 -6
- package/dist/esm/lib/components/input/index.d.ts +0 -16
- package/dist/esm/lib/components/markdown/index.d.ts +0 -9
- package/dist/esm/lib/components/modal/bottomModal/index.d.ts +0 -3
- package/dist/esm/lib/components/modal/bottomOrRegularModal/index.d.ts +0 -3
- package/dist/esm/lib/components/modal/hooks/useOnClose.d.ts +0 -9
- package/dist/esm/lib/components/modal/index.d.ts +0 -13
- package/dist/esm/lib/components/modal/regularModal/index.d.ts +0 -3
- package/dist/esm/lib/components/multiDropzone/UploadFileCell/index.d.ts +0 -10
- package/dist/esm/lib/components/multiDropzone/icons/index.d.ts +0 -11
- package/dist/esm/lib/components/multiDropzone/index.d.ts +0 -15
- package/dist/esm/lib/components/multiDropzone/index.test.d.ts +0 -1
- package/dist/esm/lib/components/multiDropzone/types.d.ts +0 -42
- package/dist/esm/lib/components/multiDropzone/utils/index.d.ts +0 -11
- package/dist/esm/lib/components/segmentedControl/index.d.ts +0 -12
- package/dist/esm/lib/components/segmentedControl/index.stories.d.ts +0 -37
- package/dist/esm/lib/components/segmentedControl/index.test.d.ts +0 -1
- package/dist/esm/lib/components/signaturePad/index.d.ts +0 -19
- package/dist/esm/lib/hooks/useOnClickOutside.d.ts +0 -2
- package/dist/esm/lib/index.d.ts +0 -21
- package/dist/esm/lib/models/autoSuggestInput/index.d.ts +0 -4
- package/dist/esm/lib/models/download.d.ts +0 -1
- package/dist/esm/lib/scss/private/base/demo.d.ts +0 -5
- package/dist/esm/lib/scss/public/demo.d.ts +0 -2
- package/dist/esm/lib/util/calendarDate/index.d.ts +0 -3
- package/dist/esm/lib/util/formatBytes/index.d.ts +0 -1
- package/dist/esm/lib/util/generateId/index.d.ts +0 -2
- package/dist/esm/lib/util/images/index.d.ts +0 -11
- package/dist/esm/lib/util/images/index.stories.d.ts +0 -12
- package/dist/esm/lib/util/testUtils/customRender.d.ts +0 -7
- package/dist/esm/lib/util/testUtils/index.d.ts +0 -2
- package/dist/esm/lib/util/zeroFill.d.ts +0 -1
- package/dist/esm/mapStyle-1288a869.js +0 -187
- package/dist/esm/mapStyle-1288a869.js.map +0 -1
- package/dist/esm/scss/private/base/demo.js +0 -80
- package/dist/esm/scss/private/base/demo.js.map +0 -1
- package/dist/esm/scss/public/demo.js +0 -290
- package/dist/esm/scss/public/demo.js.map +0 -1
- package/dist/esm/style-inject.es-1f59c1d0.js +0 -29
- package/dist/esm/style-inject.es-1f59c1d0.js.map +0 -1
- package/dist/esm/tslib.es6-5bc94358.js +0 -104
- package/dist/esm/tslib.es6-5bc94358.js.map +0 -1
- package/dist/esm/useOnClose-d818a54f.js +0 -46
- package/dist/esm/useOnClose-d818a54f.js.map +0 -1
- package/dist/esm/util/images/index.stories.js +0 -23
- package/dist/esm/util/images/index.stories.js.map +0 -1
- package/dist/esm/util/testUtils/customRender.js +0 -7
- package/dist/esm/util/testUtils/customRender.js.map +0 -1
- package/src/lib/components/downloadButton/index.stories.mdx +0 -59
- package/src/lib/components/markdown/index.stories.mdx +0 -22
- package/src/lib/components/signaturePad/index.stories.mdx +0 -17
- /package/dist/{esm/lib/components/autocompleteAddress → cjs/lib/components/input/checkbox}/index.test.d.ts +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/input/currency/format/index.ts","../../../../../../src/lib/components/input/currency/index.tsx"],"sourcesContent":["export const formatInput = (input: string): string => {\n const decimalSeparator = input.includes(',') ? ',' : '.';\n const parts = input.split(decimalSeparator);\n const floor = parts[0];\n const ceiling = parts[1];\n parts[0] = floor.replace(/\\B(?=(\\d{3})+(?!\\d))/g, ' ');\n if (ceiling) {\n parts[1] = ceiling.slice(0, Math.min(ceiling.length, 2));\n }\n return parts.join('.');\n};\n\nexport function reverseFormatInput(input: string): number {\n return Number(input.replace(/,/, '.').replace(/\\s/g, ''));\n}\n","import { useEffect, useRef, useState } from 'react';\n\nimport { formatInput, reverseFormatInput } from './format';\nimport Input, { InputProps } from '..';\n\nconst CurrencyInput = ({\n value,\n onChange,\n type,\n ...props\n}: {\n value?: number;\n placeholder?: string;\n onChange?: (value: number) => void;\n} & Omit<InputProps, 'onChange' | 'value' | 'ref'>) => {\n const inputRef = useRef<HTMLInputElement | null>(null);\n const [cursor, setCursor] = useState<number | null>(null);\n const [shadowValue, setShadowValue] = useState('');\n\n const formattedShadowValue = formatInput(\n shadowValue\n .replace(/ /g, '') // remove all whitespace\n .replace(',', '.') // change commas to dot for decimal separator\n .replace('.', 'DECIMAL_SEPARATOR') // Gymnastic to remove all the but the first decimal separators 🤸\n .replace(/\\./g, '')\n .replace('DECIMAL_SEPARATOR', '.') // End of the Gymnastic 🤸\n .replace(/[^\\d\\\\.]/g, '') // remove all non decimal and dot\n );\n\n useEffect(() => {\n if (value && value !== reverseFormatInput(shadowValue)) {\n setShadowValue(formatInput(value.toString()));\n }\n // eslint-disable-next-line\n }, [value]);\n\n useEffect(() => {\n onChange?.(reverseFormatInput(shadowValue));\n // eslint-disable-next-line\n }, [shadowValue]);\n\n useEffect(() => {\n if (!inputRef.current || !cursor) {\n return;\n }\n\n const cursorDiff = String(formattedShadowValue).length - String(shadowValue).length;\n const newCursor = cursorDiff + cursor;\n\n inputRef.current.selectionStart = newCursor;\n inputRef.current.selectionEnd = newCursor;\n },[cursor, formattedShadowValue, shadowValue])\n\n return (\n <Input\n prefix=\"€\"\n ref={inputRef}\n type=\"string\"\n value={formattedShadowValue}\n onChange={(e) => {\n setCursor(e.target.selectionStart);\n setShadowValue(e.target.value);\n }}\n {...props}\n />\n );\n};\n\nexport default CurrencyInput;\n"],"names":["_jsx"],"mappings":";;;;;;;;AAAO,IAAM,WAAW,GAAG,UAAC,KAAa;IACvC,IAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;IACzD,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC5C,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,IAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;IACvD,IAAI,OAAO,EAAE;QACX,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;KAC1D;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC,CAAC;SAEc,kBAAkB,CAAC,KAAa;IAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;AAC5D;;ICTM,aAAa,GAAG,UAAC,EAS2B;QARhD,KAAK,WAAA,EACL,QAAQ,cAAA,SACJ,MACD,KAAK,cAJa,6BAKtB;IAKC,IAAM,QAAQ,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IACjD,IAAA,KAAsB,QAAQ,CAAgB,IAAI,CAAC,EAAlD,MAAM,QAAA,EAAE,SAAS,QAAiC,CAAC;IACpD,IAAA,KAAgC,QAAQ,CAAC,EAAE,CAAC,EAA3C,WAAW,QAAA,EAAE,cAAc,QAAgB,CAAC;IAEnD,IAAM,oBAAoB,GAAG,WAAW,CACtC,WAAW;SACR,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;SACjB,OAAO,CAAC,GAAG,EAAE,mBAAmB,CAAC;SACjC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;SAClB,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC;SACjC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;KAC5B,CAAC;IAEF,SAAS,CAAC;QACR,IAAI,KAAK,IAAI,KAAK,KAAK,kBAAkB,CAAC,WAAW,CAAC,EAAE;YACtD,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;SAC/C;;KAEF,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,SAAS,CAAC;QACR,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;;KAE7C,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,SAAS,CAAC;QACR,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE;YAChC,OAAO;SACR;QAED,IAAM,UAAU,GAAI,MAAM,CAAC,oBAAoB,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;QACrF,IAAM,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;QAEtC,QAAQ,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;QAC5C,QAAQ,CAAC,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;KAC3C,EAAC,CAAC,MAAM,EAAE,oBAAoB,EAAE,WAAW,CAAC,CAAC,CAAA;IAE9C,QACEA,IAAC,KAAK,aACJ,MAAM,EAAC,QAAG,EACV,GAAG,EAAE,QAAQ,EACb,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,oBAAoB,EAC3B,QAAQ,EAAE,UAAC,CAAC;YACV,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACnC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAChC,IACG,KAAK,UACT,EACF;AACJ;;;;"}
|
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
import { b as __awaiter, c as __generator, _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
-
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { c as customRender } from '../../../customRender-4157fcff.js';
|
|
4
|
-
import CurrencyInput from './index.js';
|
|
5
|
-
import 'react';
|
|
6
|
-
import 'react-dom';
|
|
7
|
-
import '../../../_commonjsHelpers-e7f67fd8.js';
|
|
8
|
-
import 'react-dom/test-utils';
|
|
9
|
-
import '../index.js';
|
|
10
|
-
import '../../../index-e9e37a34.js';
|
|
11
|
-
import '../../../index-fb46adf9.js';
|
|
12
|
-
import '../../../style-inject.es-1f59c1d0.js';
|
|
13
|
-
|
|
14
|
-
var setup = function () {
|
|
15
|
-
var utils = customRender(jsx(CurrencyInput, {}, void 0));
|
|
16
|
-
var input = utils.getByTestId('ds-input-input');
|
|
17
|
-
return __assign({ input: input }, utils);
|
|
18
|
-
};
|
|
19
|
-
describe('Currency input component', function () {
|
|
20
|
-
it('Should correctly space thousands separators', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
21
|
-
var _a, input, user;
|
|
22
|
-
return __generator(this, function (_b) {
|
|
23
|
-
switch (_b.label) {
|
|
24
|
-
case 0:
|
|
25
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
26
|
-
return [4 /*yield*/, user.type(input, '1234567')];
|
|
27
|
-
case 1:
|
|
28
|
-
_b.sent();
|
|
29
|
-
expect(input.value).toBe('1 234 567');
|
|
30
|
-
return [2 /*return*/];
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
}); });
|
|
34
|
-
it('Should remove non numerical values', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
35
|
-
var _a, input, user;
|
|
36
|
-
return __generator(this, function (_b) {
|
|
37
|
-
switch (_b.label) {
|
|
38
|
-
case 0:
|
|
39
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
40
|
-
return [4 /*yield*/, user.type(input, '123asdf4567')];
|
|
41
|
-
case 1:
|
|
42
|
-
_b.sent();
|
|
43
|
-
expect(input.value).toBe('1 234 567');
|
|
44
|
-
return [2 /*return*/];
|
|
45
|
-
}
|
|
46
|
-
});
|
|
47
|
-
}); });
|
|
48
|
-
it('Should remove non numerical values', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
49
|
-
var _a, input, user;
|
|
50
|
-
return __generator(this, function (_b) {
|
|
51
|
-
switch (_b.label) {
|
|
52
|
-
case 0:
|
|
53
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
54
|
-
return [4 /*yield*/, user.type(input, '123asdf4567')];
|
|
55
|
-
case 1:
|
|
56
|
-
_b.sent();
|
|
57
|
-
expect(input.value).toBe('1 234 567');
|
|
58
|
-
return [2 /*return*/];
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}); });
|
|
62
|
-
it('Should allow decimal separator', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
63
|
-
var _a, input, user;
|
|
64
|
-
return __generator(this, function (_b) {
|
|
65
|
-
switch (_b.label) {
|
|
66
|
-
case 0:
|
|
67
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
68
|
-
return [4 /*yield*/, user.type(input, '1234567.34')];
|
|
69
|
-
case 1:
|
|
70
|
-
_b.sent();
|
|
71
|
-
expect(input.value).toBe('1 234 567.34');
|
|
72
|
-
return [2 /*return*/];
|
|
73
|
-
}
|
|
74
|
-
});
|
|
75
|
-
}); });
|
|
76
|
-
it('Should replace comma decimal seprator with a dot', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
77
|
-
var _a, input, user;
|
|
78
|
-
return __generator(this, function (_b) {
|
|
79
|
-
switch (_b.label) {
|
|
80
|
-
case 0:
|
|
81
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
82
|
-
return [4 /*yield*/, user.type(input, '1234567,34')];
|
|
83
|
-
case 1:
|
|
84
|
-
_b.sent();
|
|
85
|
-
expect(input.value).toBe('1 234 567.34');
|
|
86
|
-
return [2 /*return*/];
|
|
87
|
-
}
|
|
88
|
-
});
|
|
89
|
-
}); });
|
|
90
|
-
it('Should only allow one decimal separator', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
91
|
-
var _a, input, user;
|
|
92
|
-
return __generator(this, function (_b) {
|
|
93
|
-
switch (_b.label) {
|
|
94
|
-
case 0:
|
|
95
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
96
|
-
return [4 /*yield*/, user.type(input, '1234567..34')];
|
|
97
|
-
case 1:
|
|
98
|
-
_b.sent();
|
|
99
|
-
expect(input.value).toBe('1 234 567.34');
|
|
100
|
-
return [2 /*return*/];
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
}); });
|
|
104
|
-
it('Should only allow one decimal separator after a sequence of number', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
105
|
-
var _a, input, user;
|
|
106
|
-
return __generator(this, function (_b) {
|
|
107
|
-
switch (_b.label) {
|
|
108
|
-
case 0:
|
|
109
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
110
|
-
return [4 /*yield*/, user.type(input, '1234567..34.4')];
|
|
111
|
-
case 1:
|
|
112
|
-
_b.sent();
|
|
113
|
-
expect(input.value).toBe('1 234 567.34');
|
|
114
|
-
return [2 /*return*/];
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
}); });
|
|
118
|
-
it('Should have correct selection start when no spaces are added', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
119
|
-
var _a, input, user;
|
|
120
|
-
return __generator(this, function (_b) {
|
|
121
|
-
switch (_b.label) {
|
|
122
|
-
case 0:
|
|
123
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
124
|
-
return [4 /*yield*/, user.type(input, '123')];
|
|
125
|
-
case 1:
|
|
126
|
-
_b.sent();
|
|
127
|
-
// Should be: 123|
|
|
128
|
-
expect(input.selectionStart).toBe(3);
|
|
129
|
-
return [2 /*return*/];
|
|
130
|
-
}
|
|
131
|
-
});
|
|
132
|
-
}); });
|
|
133
|
-
it('Should have correct selection start when spaces are added', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
134
|
-
var _a, input, user;
|
|
135
|
-
return __generator(this, function (_b) {
|
|
136
|
-
switch (_b.label) {
|
|
137
|
-
case 0:
|
|
138
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
139
|
-
return [4 /*yield*/, user.type(input, '1234')];
|
|
140
|
-
case 1:
|
|
141
|
-
_b.sent();
|
|
142
|
-
// Should be: 123 4|
|
|
143
|
-
expect(input.selectionStart).toBe(5);
|
|
144
|
-
return [2 /*return*/];
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
}); });
|
|
148
|
-
it('Should have correct selection start when typing in middle of input', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
149
|
-
var _a, input, user;
|
|
150
|
-
return __generator(this, function (_b) {
|
|
151
|
-
switch (_b.label) {
|
|
152
|
-
case 0:
|
|
153
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
154
|
-
return [4 /*yield*/, user.type(input, '123{arrowleft}4')];
|
|
155
|
-
case 1:
|
|
156
|
-
_b.sent();
|
|
157
|
-
// Should be: 1 24|3
|
|
158
|
-
expect(input.selectionStart).toBe(4);
|
|
159
|
-
return [2 /*return*/];
|
|
160
|
-
}
|
|
161
|
-
});
|
|
162
|
-
}); });
|
|
163
|
-
it('Should have correct selection start when typing in beginning of input', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
164
|
-
var _a, input, user;
|
|
165
|
-
return __generator(this, function (_b) {
|
|
166
|
-
switch (_b.label) {
|
|
167
|
-
case 0:
|
|
168
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
169
|
-
return [4 /*yield*/, user.type(input, '123{arrowleft}{arrowleft}{arrowleft}4')];
|
|
170
|
-
case 1:
|
|
171
|
-
_b.sent();
|
|
172
|
-
// Should be: 4 |123
|
|
173
|
-
expect(input.selectionStart).toBe(2);
|
|
174
|
-
return [2 /*return*/];
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
|
-
}); });
|
|
178
|
-
it('Should have correct selection start when typing in input and has currency values', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
179
|
-
var _a, input, user;
|
|
180
|
-
return __generator(this, function (_b) {
|
|
181
|
-
switch (_b.label) {
|
|
182
|
-
case 0:
|
|
183
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
184
|
-
return [4 /*yield*/, user.type(input, '123.2{arrowleft}{arrowleft}{arrowleft}24')];
|
|
185
|
-
case 1:
|
|
186
|
-
_b.sent();
|
|
187
|
-
// Should be: 12 24|3.2
|
|
188
|
-
expect(input.selectionStart).toBe(5);
|
|
189
|
-
return [2 /*return*/];
|
|
190
|
-
}
|
|
191
|
-
});
|
|
192
|
-
}); });
|
|
193
|
-
it('Should have correct selection start when deleting', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
194
|
-
var _a, input, user;
|
|
195
|
-
return __generator(this, function (_b) {
|
|
196
|
-
switch (_b.label) {
|
|
197
|
-
case 0:
|
|
198
|
-
_a = setup(), input = _a.input, user = _a.user;
|
|
199
|
-
return [4 /*yield*/, user.type(input, '12345{arrowleft}{backspace}67')];
|
|
200
|
-
case 1:
|
|
201
|
-
_b.sent();
|
|
202
|
-
// Should be: 123 67|5
|
|
203
|
-
expect(input.selectionStart).toBe(6);
|
|
204
|
-
return [2 /*return*/];
|
|
205
|
-
}
|
|
206
|
-
});
|
|
207
|
-
}); });
|
|
208
|
-
});
|
|
209
|
-
//# sourceMappingURL=index.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sources":["../../../../../../src/lib/components/input/currency/index.test.tsx"],"sourcesContent":["import { render } from '../../../util/testUtils';\n\nimport CurrencyInput from '.';\n\nconst setup = () => {\n const utils = render(<CurrencyInput />);\n const input = utils.getByTestId('ds-input-input') as HTMLInputElement;\n return {\n input,\n ...utils,\n };\n};\n\ndescribe('Currency input component', () => {\n it('Should correctly space thousands separators', async () => {\n const { input, user } = setup();\n await user.type(input, '1234567');\n expect(input.value).toBe('1 234 567');\n });\n\n it('Should remove non numerical values', async () => {\n const { input, user } = setup();\n await user.type(input, '123asdf4567');\n expect(input.value).toBe('1 234 567');\n });\n\n it('Should remove non numerical values', async () => {\n const { input, user } = setup();\n await user.type(input, '123asdf4567');\n expect(input.value).toBe('1 234 567');\n });\n\n it('Should allow decimal separator', async () => {\n const { input, user } = setup();\n await user.type(input, '1234567.34');\n expect(input.value).toBe('1 234 567.34');\n });\n\n it('Should replace comma decimal seprator with a dot', async () => {\n const { input, user } = setup();\n await user.type(input, '1234567,34');\n expect(input.value).toBe('1 234 567.34');\n });\n\n it('Should only allow one decimal separator', async () => {\n const { input, user } = setup();\n await user.type(input, '1234567..34');\n expect(input.value).toBe('1 234 567.34');\n });\n\n it('Should only allow one decimal separator after a sequence of number', async () => {\n const { input, user } = setup();\n await user.type(input, '1234567..34.4');\n expect(input.value).toBe('1 234 567.34');\n });\n\n it('Should have correct selection start when no spaces are added', async () => {\n const { input, user } = setup();\n\n await user.type(input, '123');\n // Should be: 123|\n expect(input.selectionStart).toBe(3);\n });\n\n it('Should have correct selection start when spaces are added', async () => {\n const { input, user } = setup();\n\n await user.type(input, '1234');\n // Should be: 123 4|\n expect(input.selectionStart).toBe(5);\n });\n\n it('Should have correct selection start when typing in middle of input', async () => {\n const { input, user } = setup();\n\n await user.type(input, '123{arrowleft}4');\n\n // Should be: 1 24|3\n expect(input.selectionStart).toBe(4);\n });\n\n it('Should have correct selection start when typing in beginning of input', async () => {\n const { input, user } = setup();\n\n await user.type(input, '123{arrowleft}{arrowleft}{arrowleft}4');\n\n // Should be: 4 |123\n expect(input.selectionStart).toBe(2);\n });\n\n it('Should have correct selection start when typing in input and has currency values', async () => {\n const { input, user } = setup();\n\n await user.type(input, '123.2{arrowleft}{arrowleft}{arrowleft}24');\n\n // Should be: 12 24|3.2\n expect(input.selectionStart).toBe(5);\n });\n\n it('Should have correct selection start when deleting', async () => {\n const { input, user } = setup();\n\n await user.type(input, '12345{arrowleft}{backspace}67');\n\n // Should be: 123 67|5\n expect(input.selectionStart).toBe(6);\n });\n});\n"],"names":["render","_jsx"],"mappings":"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"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { a as __rest, _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
-
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import Input from '../index.js';
|
|
4
|
-
import 'react';
|
|
5
|
-
import '../../../index-e9e37a34.js';
|
|
6
|
-
import '../../../index-fb46adf9.js';
|
|
7
|
-
import '../../../style-inject.es-1f59c1d0.js';
|
|
8
|
-
|
|
9
|
-
var IBAN_CHAR_LIMIT = 4;
|
|
10
|
-
var formatIban = function (iban) {
|
|
11
|
-
if (iban) {
|
|
12
|
-
var cleanIban_1 = iban
|
|
13
|
-
.replace(/\s\s+/g, ' ')
|
|
14
|
-
.replace(/[^0-9a-zA-Z]/gi, '')
|
|
15
|
-
.toUpperCase();
|
|
16
|
-
var values_1 = [];
|
|
17
|
-
cleanIban_1.split('').forEach(function (char, idx) {
|
|
18
|
-
if (idx % IBAN_CHAR_LIMIT === 0) {
|
|
19
|
-
values_1.push(cleanIban_1.substring(idx, idx + IBAN_CHAR_LIMIT));
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
return values_1.join(' ');
|
|
23
|
-
}
|
|
24
|
-
return '';
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
var IbanInput = function (_a) {
|
|
28
|
-
var value = _a.value, onChange = _a.onChange, props = __rest(_a, ["value", "onChange"]);
|
|
29
|
-
return (jsx(Input, __assign({ value: formatIban(value), onChange: function (e) { return onChange(formatIban(e.target.value)); } }, props), void 0));
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export default IbanInput;
|
|
33
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/input/iban/formatIban/index.ts","../../../../../../src/lib/components/input/iban/index.tsx"],"sourcesContent":["const IBAN_CHAR_LIMIT = 4;\n\nexport const formatIban = (iban?: string): string => {\n if (iban) {\n const cleanIban = iban\n .replace(/\\s\\s+/g, ' ')\n .replace(/[^0-9a-zA-Z]/gi, '')\n .toUpperCase();\n\n const values: string[] = [];\n\n cleanIban.split('').forEach((char, idx) => {\n if (idx % IBAN_CHAR_LIMIT === 0) {\n values.push(cleanIban.substring(idx, idx + IBAN_CHAR_LIMIT));\n }\n });\n\n return values.join(' ');\n }\n\n return '';\n};\n","import Input, { InputProps } from '..';\n\nimport { formatIban } from './formatIban';\n\nconst IbanInput = ({\n value,\n onChange,\n ...props\n}: {\n value?: string;\n onChange: (value: string) => void;\n} & Omit<InputProps, 'onChange' | 'value' | 'ref'>) => (\n <Input\n value={formatIban(value)}\n onChange={(e) => onChange(formatIban(e.target.value))}\n {...props}\n />\n);\n\nexport default IbanInput;\n"],"names":["_jsx"],"mappings":";;;;;;;;AAAA,IAAM,eAAe,GAAG,CAAC,CAAC;AAEnB,IAAM,UAAU,GAAG,UAAC,IAAa;IACtC,IAAI,IAAI,EAAE;QACR,IAAM,WAAS,GAAG,IAAI;aACnB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;aACtB,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;aAC7B,WAAW,EAAE,CAAC;QAEjB,IAAM,QAAM,GAAa,EAAE,CAAC;QAE5B,WAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,IAAI,EAAE,GAAG;YACpC,IAAI,GAAG,GAAG,eAAe,KAAK,CAAC,EAAE;gBAC/B,QAAM,CAAC,IAAI,CAAC,WAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC;aAC9D;SACF,CAAC,CAAC;QAEH,OAAO,QAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;;ICjBK,SAAS,GAAG,UAAC,EAO+B;IANhD,IAAA,KAAK,WAAA,EACL,QAAQ,cAAA,EACL,KAAK,cAHS,qBAIlB,CADS;IAI6C,QACrDA,IAAC,KAAK,aACJ,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EACxB,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAA,IACjD,KAAK,UACT,EACH;;;;;"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { a as __rest, _ as __assign } from '../../tslib.es6-5bc94358.js';
|
|
2
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
-
import React__default, { useState } from 'react';
|
|
4
|
-
import { c as classnames } from '../../index-e9e37a34.js';
|
|
5
|
-
import { g as generateId } from '../../index-fb46adf9.js';
|
|
6
|
-
import { s as styleInject } from '../../style-inject.es-1f59c1d0.js';
|
|
7
|
-
|
|
8
|
-
var css_248z = ".style-module_container__2L4SP {\n position: relative;\n}\n\n.style-module_prefix__3jAFZ {\n position: absolute;\n left: 16px;\n top: 50%;\n transform: translateY(-50%);\n color: var(--ds-grey-500);\n transition: 0.3s top;\n}\n.style-module_prefix--with-error__1yTTM {\n color: var(--ds-red-500);\n}\n.style-module_prefix--disabled__2-gcw {\n color: var(--ds-grey-600);\n}\n\n.style-module_input__1eJO5:not(:placeholder-shown) ~ .style-module_placeholder__1U2z0,\n.style-module_input__1eJO5:focus ~ .style-module_placeholder__1U2z0 {\n top: 7px;\n left: 16px;\n transform: translateY(0);\n font-size: 10px;\n line-height: 12px;\n opacity: 1;\n}\n\n.style-module_input__1eJO5:focus ~ .style-module_placeholder__1U2z0 {\n color: var(--ds-primary-500);\n}\n.style-module_input__1eJO5:focus ~ .style-module_placeholder--with-error__2ieRU {\n color: var(--ds-red-500);\n}\n\n.style-module_input__1eJO5:focus ~ .style-module_prefix__3jAFZ {\n color: var(--ds-primary-500);\n}\n.style-module_input__1eJO5:focus ~ .style-module_prefix--with-error__1yTTM {\n color: var(--ds-red-500);\n}\n\n.style-module_input__1eJO5:not(:placeholder-shown) ~ .style-module_prefix__3jAFZ,\n.style-module_input__1eJO5:focus ~ .style-module_prefix__3jAFZ {\n top: 28px;\n}\n\n.style-module_input__1eJO5 {\n box-sizing: border-box;\n padding-top: 9px;\n font-family: inherit;\n}\n.style-module_input--no-placeholder__3EGwh {\n padding-top: 0px;\n}\n.style-module_input--with-prefix__38e0j {\n padding-left: 32px !important;\n}\n\n.style-module_placeholder__1U2z0 {\n position: absolute;\n pointer-events: none;\n left: 16px;\n top: 50%;\n transform: translateY(-50%);\n transition: 0.3s ease all;\n color: var(--ds-grey-500);\n}\n.style-module_placeholder--with-prefix__2PquQ {\n left: 32px;\n}\n.style-module_placeholder--with-error__2ieRU {\n color: var(--ds-red-500);\n}\n\n.style-module_label__3FEZ1 {\n display: inline-block;\n margin-bottom: 8px;\n color: var(--ds-grey-600);\n}\n.style-module_label--with-error__166bP {\n color: var(--ds-red-500);\n}\n\n.style-module_error__167Zc {\n margin-top: 4px;\n}";
|
|
9
|
-
var styles = {"container":"style-module_container__2L4SP","prefix":"style-module_prefix__3jAFZ","prefix--with-error":"style-module_prefix--with-error__1yTTM","prefix--disabled":"style-module_prefix--disabled__2-gcw","input":"style-module_input__1eJO5","placeholder":"style-module_placeholder__1U2z0","placeholder--with-error":"style-module_placeholder--with-error__2ieRU","input--no-placeholder":"style-module_input--no-placeholder__3EGwh","input--with-prefix":"style-module_input--with-prefix__38e0j","placeholder--with-prefix":"style-module_placeholder--with-prefix__2PquQ","label":"style-module_label__3FEZ1","label--with-error":"style-module_label--with-error__166bP","error":"style-module_error__167Zc"};
|
|
10
|
-
styleInject(css_248z);
|
|
11
|
-
|
|
12
|
-
var Input = React__default.forwardRef(function (_a, ref) {
|
|
13
|
-
var _b, _c, _d, _e, _f, _g;
|
|
14
|
-
var className = _a.className, placeholder = _a.placeholder, label = _a.label, id = _a.id, prefix = _a.prefix, error = _a.error, disabled = _a.disabled, _h = _a.hideLabel, hideLabel = _h === void 0 ? false : _h, props = __rest(_a, ["className", "placeholder", "label", "id", "prefix", "error", "disabled", "hideLabel"]);
|
|
15
|
-
var uniqueId = useState(id !== null && id !== void 0 ? id : generateId())[0];
|
|
16
|
-
return (jsxs("div", __assign({ className: styles.container + " " + (className !== null && className !== void 0 ? className : '') }, { children: [label && (jsx("label", __assign({ htmlFor: uniqueId, className: classnames('p-p', styles.label, (_b = {},
|
|
17
|
-
_b[styles['label--with-error']] = error,
|
|
18
|
-
_b['sr-only'] = hideLabel,
|
|
19
|
-
_b)) }, { children: label }), void 0)),
|
|
20
|
-
jsxs("div", __assign({ style: { position: 'relative' } }, { children: [jsx("input", __assign({ id: uniqueId, "data-testid": "ds-input-input", type: "text", ref: ref, className: classnames(error ? 'p-input--error' : 'p-input', !label && placeholder && placeholder.length > 0
|
|
21
|
-
? styles.input
|
|
22
|
-
: styles['input--no-placeholder'], (_c = {}, _c[styles['input--with-prefix']] = prefix, _c)), placeholder: label ? placeholder : ' ', disabled: disabled }, props), void 0),
|
|
23
|
-
prefix && (jsx("span", __assign({ className: classnames(styles.prefix, (_d = {}, _d[styles['prefix--with-error']] = error, _d), (_e = {}, _e[styles['prefix--disabled']] = disabled, _e)) }, { children: prefix }), void 0)),
|
|
24
|
-
!label && (jsx("label", __assign({ htmlFor: uniqueId, className: classnames(styles.placeholder, (_f = {}, _f[styles['placeholder--with-prefix']] = prefix, _f), (_g = {}, _g[styles['placeholder--with-error']] = error, _g)) }, { children: placeholder }), void 0))] }), void 0),
|
|
25
|
-
error && (jsx("p", __assign({ className: "p-p--small tc-red-500 w100 " + styles.error }, { children: error }), void 0))] }), void 0));
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
export default Input;
|
|
29
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/lib/components/input/index.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport classnames from 'classnames';\nimport generateId from '../../util/generateId';\n\nimport styles from './style.module.scss';\n\n// Something weird is going on with enterKeyHint that makes it a required field under certain circumstances. The & Omit<…> and & Pick<…> is a hacky way to go around that.\nexport type InputProps = {\n error?: string;\n prefix?: string;\n label?: string;\n id?: string;\n hideLabel?: boolean;\n} & Omit<JSX.IntrinsicElements['input'], 'enterKeyHint'> &\n Partial<Pick<JSX.IntrinsicElements['input'], 'enterKeyHint'>>;\n\nexport default React.forwardRef(\n (\n {\n className,\n placeholder,\n label,\n id,\n prefix,\n error,\n disabled,\n hideLabel = false,\n ...props\n }: InputProps,\n ref?: React.ForwardedRef<HTMLInputElement>\n ) => {\n const [uniqueId] = useState(id ?? generateId());\n return (\n <div className={`${styles.container} ${className ?? ''}`}>\n {label && (\n <label\n htmlFor={uniqueId}\n className={classnames('p-p', styles.label, {\n [styles['label--with-error']]: error,\n 'sr-only': hideLabel,\n })}\n >\n {label}\n </label>\n )}\n <div style={{ position: 'relative' }}>\n <input\n id={uniqueId}\n data-testid=\"ds-input-input\"\n type=\"text\"\n ref={ref}\n className={classnames(\n error ? 'p-input--error' : 'p-input',\n !label && placeholder && placeholder.length > 0\n ? styles.input\n : styles['input--no-placeholder'],\n { [styles['input--with-prefix']]: prefix }\n )}\n placeholder={label ? placeholder : ' '}\n disabled={disabled}\n {...props}\n />\n {prefix && (\n <span\n className={classnames(\n styles.prefix,\n { [styles['prefix--with-error']]: error },\n { [styles['prefix--disabled']]: disabled }\n )}\n >\n {prefix}\n </span>\n )}\n {!label && (\n <label\n htmlFor={uniqueId}\n className={classnames(\n styles.placeholder,\n { [styles['placeholder--with-prefix']]: prefix },\n { [styles['placeholder--with-error']]: error }\n )}\n >\n {placeholder}\n </label>\n )}\n </div>\n {error && (\n <p className={`p-p--small tc-red-500 w100 ${styles.error}`}>\n {error}\n </p>\n )}\n </div>\n );\n }\n);\n"],"names":["React","_jsxs","_jsx"],"mappings":";;;;;;;;;;;AAgBA,YAAeA,cAAK,CAAC,UAAU,CAC7B,UACE,EAUa,EACb,GAA0C;;IAVxC,IAAA,SAAS,eAAA,EACT,WAAW,iBAAA,EACX,KAAK,WAAA,EACL,EAAE,QAAA,EACF,MAAM,YAAA,EACN,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACd,KAAK,cATV,uFAUC,CADS;IAIH,IAAA,QAAQ,GAAI,QAAQ,CAAC,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,UAAU,EAAE,CAAC,GAAhC,CAAiC;IAChD,QACEC,uBAAK,SAAS,EAAK,MAAM,CAAC,SAAS,UAAI,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAE,iBACrD,KAAK,KACJC,wBACE,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAE,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK;oBACvC,GAAC,MAAM,CAAC,mBAAmB,CAAC,IAAG,KAAK;oBACpC,aAAS,GAAE,SAAS;wBACpB,gBAED,KAAK,YACA,CACT;YACDD,uBAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAClCC,wBACE,EAAE,EAAE,QAAQ,iBACA,gBAAgB,EAC5B,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,UAAU,CACnB,KAAK,GAAG,gBAAgB,GAAG,SAAS,EACpC,CAAC,KAAK,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;8BAC3C,MAAM,CAAC,KAAK;8BACZ,MAAM,CAAC,uBAAuB,CAAC,YACjC,GAAC,MAAM,CAAC,oBAAoB,CAAC,IAAG,MAAM,MACzC,EACD,WAAW,EAAE,KAAK,GAAG,WAAW,GAAG,GAAG,EACtC,QAAQ,EAAE,QAAQ,IACd,KAAK,UACT;oBACD,MAAM,KACLA,uBACE,SAAS,EAAE,UAAU,CACnB,MAAM,CAAC,MAAM,YACX,GAAC,MAAM,CAAC,oBAAoB,CAAC,IAAG,KAAK,iBACrC,GAAC,MAAM,CAAC,kBAAkB,CAAC,IAAG,QAAQ,MACzC,gBAEA,MAAM,YACF,CACR;oBACA,CAAC,KAAK,KACLA,wBACE,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAE,UAAU,CACnB,MAAM,CAAC,WAAW,YAChB,GAAC,MAAM,CAAC,0BAA0B,CAAC,IAAG,MAAM,iBAC5C,GAAC,MAAM,CAAC,yBAAyB,CAAC,IAAG,KAAK,MAC7C,gBAEA,WAAW,YACN,CACT,aACG;YACL,KAAK,KACJA,oBAAG,SAAS,EAAE,gCAA8B,MAAM,CAAC,KAAO,gBACvD,KAAK,YACJ,CACL,aACG,EACN;AACJ,CAAC,CACF;;;;"}
|