@procore/core-react 12.21.0-cdn.9 → 12.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/AnchorNavigation/AnchorNavigation.styles.js +3 -3
- package/dist/Avatar/Avatar.styles.js +5 -5
- package/dist/AvatarStack/AvatarStack.styles.js +7 -7
- package/dist/Badge/Badge.styles.js +2 -2
- package/dist/Banner/Banner.styles.js +10 -10
- package/dist/Box/Box.styles.js +1 -1
- package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
- package/dist/Button/Button.styles.js +5 -5
- package/dist/Calendar/Calendar.styles.js +8 -8
- package/dist/Card/Card.styles.js +1 -1
- package/dist/Checkbox/Checkbox.styles.js +6 -6
- package/dist/Checkbox/CheckboxTooltip.js +1 -1
- package/dist/ContactItem/ContactItem.styles.js +5 -5
- package/dist/Content/Content.styles.js +2 -2
- package/dist/DateInput/DateInput.styles.js +6 -6
- package/dist/DetailPage/DetailPage.styles.js +7 -7
- package/dist/Dropdown/Dropdown.styles.js +3 -3
- package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
- package/dist/Dropzone/Dropzone.js +1 -1
- package/dist/Dropzone/Dropzone.styles.js +9 -9
- package/dist/EmptyState/EmptyState.styles.js +6 -6
- package/dist/Field/Field.styles.js +3 -3
- package/dist/FileList/FileList.styles.js +4 -4
- package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
- package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
- package/dist/FileSelect/FileSelect.styles.js +2 -2
- package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
- package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
- package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
- package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
- package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
- package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
- package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
- package/dist/FileToken/FileToken.styles.js +4 -4
- package/dist/FilterToken/FilterToken.styles.js +5 -5
- package/dist/FlexList/FlexList.styles.js +1 -1
- package/dist/Form/Form.styles.js +14 -14
- package/dist/Form/StyledFormikForm.styles.d.ts +1 -1
- package/dist/Form/StyledFormikForm.styles.js +2 -2
- package/dist/GhostPlaceholder/GhostPlaceholder.styles.js +2 -2
- package/dist/Grid/Grid.styles.js +2 -2
- package/dist/GroupSelect/GroupSelect.styles.js +1 -1
- package/dist/Input/Input.styles.js +1 -1
- package/dist/Link/Link.styles.js +1 -1
- package/dist/ListPage/ListPage.styles.js +8 -8
- package/dist/Loader/Loader.styles.js +2 -2
- package/dist/MenuImperative/MenuImperative.styles.js +10 -10
- package/dist/Modal/Modal.styles.js +13 -13
- package/dist/MultiSelect/MultiSelect.styles.js +6 -6
- package/dist/NextMenu/NextMenu.styles.js +3 -3
- package/dist/Notation/Notation.js +1 -1
- package/dist/NumberInput/NumberInput.styles.js +7 -7
- package/dist/NumberInput/NumberInput.utils.js +8 -0
- package/dist/NumberInput/NumberInput.utils.js.map +1 -1
- package/dist/Overlay/OverlayArrow.styles.js +1 -1
- package/dist/PageLayout/PageLayout.styles.js +16 -16
- package/dist/PageTemplate/PageFooterTemplate/PageFooterTemplate.styles.js +1 -1
- package/dist/PageTemplate/PageHeaderTemplate/PageHeaderTemplate.styles.js +3 -3
- package/dist/PageTemplate/PagePaneTemplate/PagePaneTemplate.styles.js +2 -2
- package/dist/PageTemplate/PageTemplate/PageTemplate.styles.js +3 -3
- package/dist/Pagination/Pagination.styles.js +5 -5
- package/dist/Panel/Panel.styles.js +11 -11
- package/dist/Pill/Pill.styles.js +2 -2
- package/dist/PillSelect/PillSelect.styles.js +4 -4
- package/dist/Popover/Popover.styles.js +2 -2
- package/dist/Portal/Portal.styles.js +1 -1
- package/dist/ProgressBar/ProgressBar.styles.js +2 -2
- package/dist/RadioButton/RadioButton.styles.js +3 -3
- package/dist/Required/Required.styles.js +3 -3
- package/dist/Search/Search.styles.js +5 -5
- package/dist/Search/Search.types.d.ts +2 -7
- package/dist/Search/Search.types.js.map +1 -1
- package/dist/Section/Section.styles.js +7 -7
- package/dist/SegmentedController/SegmentedController.styles.js +4 -4
- package/dist/Select/Select.styles.js +7 -7
- package/dist/Semantic/Semantic.styles.js +9 -9
- package/dist/Slider/Slider.styles.js +5 -5
- package/dist/Spinner/Spinner.styles.js +7 -7
- package/dist/SplitViewCard/SplitViewCard.styles.js +8 -8
- package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
- package/dist/SuperSelect/SuperSelect.styles.js +37 -37
- package/dist/Switch/Switch.styles.js +4 -4
- package/dist/Table/Table.styles.js +28 -28
- package/dist/TableShelf/TableShelf.styles.js +5 -5
- package/dist/Tabs/Tabs.styles.js +15 -15
- package/dist/Tearsheet/Tearsheet.styles.js +5 -5
- package/dist/TextArea/TextArea.styles.js +1 -1
- package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
- package/dist/Thumbnail/Thumbnail.hooks.d.ts +6 -6
- package/dist/Thumbnail/Thumbnail.styles.js +17 -17
- package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
- package/dist/TieredSelect/TieredSelect.styles.js +9 -9
- package/dist/Tile/Tile.styles.js +8 -8
- package/dist/Title/Title.styles.js +7 -7
- package/dist/Toast/Toast.styles.js +3 -3
- package/dist/ToggleButton/ToggleButton.styles.js +1 -1
- package/dist/Token/Token.styles.js +3 -3
- package/dist/ToolHeader/ToolHeader.styles.js +6 -6
- package/dist/ToolLandingPage/ToolLandingPage.styles.js +3 -3
- package/dist/Tooltip/Tooltip.styles.js +2 -2
- package/dist/Tree/Tree.styles.js +9 -9
- package/dist/Typeahead/Typeahead.styles.js +3 -3
- package/dist/Typography/Typography.styles.js +1 -1
- package/dist/Typography/Typography.table.story.js +2 -2
- package/dist/_hooks/I18n.d.ts +9 -18
- package/dist/_hooks/I18n.js +29 -46
- package/dist/_hooks/I18n.js.map +1 -1
- package/dist/_typedoc/AnchorNavigation/AnchorNavigation.types.json +3 -3
- package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
- package/dist/_typedoc/AvatarStack/AvatarStack.types.json +24 -24
- package/dist/_typedoc/Badge/Badge.types.json +6 -6
- package/dist/_typedoc/Banner/Banner.types.json +13 -13
- package/dist/_typedoc/Box/Box.types.json +68 -68
- package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
- package/dist/_typedoc/Button/Button.types.json +13 -13
- package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
- package/dist/_typedoc/Card/Card.types.json +6 -6
- package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
- package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
- package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
- package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
- package/dist/_typedoc/DetailPage/DetailPage.types.json +5 -5
- package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
- package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
- package/dist/_typedoc/Dropzone/Dropzone.types.json +44 -44
- package/dist/_typedoc/EmptyState/EmptyState.types.json +16 -16
- package/dist/_typedoc/FileList/FileList.types.json +9 -9
- package/dist/_typedoc/FileSelect/FileSelect.types.json +27 -27
- package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
- package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
- package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
- package/dist/_typedoc/Flex/Flex.types.json +27 -27
- package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
- package/dist/_typedoc/Form/Form.types.json +741 -741
- package/dist/_typedoc/GhostPlaceholder/GhostPlaceholder.types.json +12 -12
- package/dist/_typedoc/Grid/Grid.types.json +8 -8
- package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
- package/dist/_typedoc/Input/Input.types.json +2 -2
- package/dist/_typedoc/Link/Link.types.json +4 -4
- package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
- package/dist/_typedoc/Menu/Menu.types.json +62 -62
- package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
- package/dist/_typedoc/Modal/Modal.types.json +46 -46
- package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
- package/dist/_typedoc/Notation/Notation.types.json +4 -4
- package/dist/_typedoc/NumberInput/NumberInput.types.json +37 -37
- package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
- package/dist/_typedoc/PageLayout/PageLayout.types.json +29 -29
- package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
- package/dist/_typedoc/Panel/Panel.types.json +28 -28
- package/dist/_typedoc/Pill/Pill.types.json +2 -2
- package/dist/_typedoc/PillSelect/PillSelect.types.json +49 -49
- package/dist/_typedoc/Popover/Popover.types.json +15 -15
- package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
- package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
- package/dist/_typedoc/Required/Required.types.json +5 -5
- package/dist/_typedoc/Search/Search.types.json +20 -32
- package/dist/_typedoc/Section/Section.types.json +15 -15
- package/dist/_typedoc/SegmentedController/SegmentedController.types.json +21 -21
- package/dist/_typedoc/Select/Select.types.json +60 -60
- package/dist/_typedoc/SettingsPage/SettingsPage.types.json +10 -10
- package/dist/_typedoc/Slider/Slider.types.json +6 -6
- package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
- package/dist/_typedoc/SplitViewCard/SplitViewCard.types.json +12 -12
- package/dist/_typedoc/Switch/Switch.types.json +3 -3
- package/dist/_typedoc/Table/Table.types.json +101 -101
- package/dist/_typedoc/Tabs/Tabs.types.json +20 -20
- package/dist/_typedoc/Tearsheet/Tearsheet.types.json +17 -17
- package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
- package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
- package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
- package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
- package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
- package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
- package/dist/_typedoc/Tile/Tile.types.json +30 -30
- package/dist/_typedoc/Title/Title.types.json +1 -1
- package/dist/_typedoc/Toast/Toast.types.json +4 -4
- package/dist/_typedoc/ToggleButton/ToggleButton.types.json +4 -4
- package/dist/_typedoc/Token/Token.types.json +4 -4
- package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
- package/dist/_typedoc/ToolLandingPage/ToolLandingPage.types.json +7 -7
- package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
- package/dist/_typedoc/Tree/Tree.types.json +86 -86
- package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
- package/dist/_typedoc/Typography/Typography.types.json +9 -9
- package/dist/_typedoc/_utils/types.json +3 -3
- package/dist/_typedoc/deprecations.json +1 -1
- package/package.json +1 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberInput.utils.js","names":["NumberFormatter","getFormatterLocale","defaultLocale","minus","emptyString","leftBrace","rightBrace","backspaceKey","deleteKey","numericKeypadDel","periodKey","numericKeypadDecimal","numericKeypadKey","androidUnidentifiedKey","maxDigitLength","maxDecimalScale","commaKey","metaKeyIdentifier","controlKey","highlightAllKey","copyKey","toFixed","value","precision","isExponentialRecord","toString","includes","Number","Math","round","formatterFactory","options","error","console","concat","locale","_objectSpread","getSeparators","formatterLocale","separators","getNumberSeparators","group","decimal","isValidNegative","_value$match","String","minusRegExp","RegExp","numberOfMinuses","match","length","containsValidParenthesis","indexOf","isNegative","verifyDecimalScale","decimalScale","warn","unformat","isNumericString","arguments","undefined","isValueNegative","numericRegExp","strValue","replace","_strValue$split","split","_strValue$split2","_toArray","integer","fractions","slice","fraction","join","parsedNumber","parseFloat","refineIntegerFromLeadingZeroes","isNegativeValue","refinedFromMinus","hasLeadingZeroes","refinedFromLeadingZeroes","zeroPadded","getLengthInfo","fillDecimalScale","_unformat","integerRefinedFromLeadingZeros","getIntegerLength","accountEmptyInteger","accountEmptyNegativeInteger","accountInteger","integerLength","fractionLength","safeLength","isSafeLength","isDecimalScaleNonFillable","safeIntegerLength","safeFractionLength","min","isSafeIntegerLength","isSafeFractionLength","safelyTruncatedInteger","safelyTruncatedFraction","safelyTruncatedValue","format","fixedDecimalScale","fillDecimalScaleOnBlur","autoFilledScale","_getLengthInfo","isTruncatedBeforeFormatting","valueOfVerifiedLength","_unformat2","minimumFractionDigits","max","maximumFractionDigits","formatter","isDecimalAllowed","isEmptyValue","isMinusValue","isDecimalValue","isMinusDecimalValue","isFractionValueWithEmptyInteger","numberOfZerosToPad","preparedFraction","Array","from","_","formatNumber","number","isNaN","parseInt","formatted","isDecimalAvailable","identifyPressedKey","decimalSeparatorKey","inputType","pressedKey","prevValue","diff","find","char","i","getPressedKeyInfo","prevCursorPosition","verifiedDecimalScale","selectionStart","selectionEnd","selection","backspaceWasPressed","backspacedChar","decimalWasPressed","decimalPressedForInteger","deleteWasPressed","deletedChar","thousandsSeparatorWasBackspaced","thousandsSeparatorWasDeleted","prepareValueToFormatting","_getPressedKeyInfo","getCursorShift","deletedAsSelection","indexOfIntegerDigitToRemove","filter","getNewCursorPosition","newValue","_getLengthInfo2","prevLength","prevFractionLength","_getLengthInfo3","newLength","newSafeLength","newIntegerLength","newSafeIntegerLength","newFractionLength","newSafeFractionLength","_getPressedKeyInfo2","digitTyped","test","digitBackspaced","decimalBackspaced","defaultPosition","isPrevValueNegative","isNewValueNegative","digitTypedBeforeMinus","leadingZeroAdded","prevIndexOfDecimalSeparator","prevCursorPositionInDecimalArea","prevCursorPositionInIntegerArea","filledIntegerScaleDigitWasChanged","isDecimalScaleFilled","filledDecimalScaleDigitWasBackspaced","filledDecimalScaleDigitWasChanged","decimalNewPosition","restructuredByDecimal","fixedDecimalScaleFirstTyping","charAt","isLeadingZerosRemovedOnPrecedingDigitBackspace","keepCursorBeforeNegativeSign","getPositionOnRestructuringByDecimal","getPositionOnDecimalBackspace","removedCharShift","valueLength","delta","anchorDigitIndexFromTheEnd","reverse","forEach","getPositionOnDelete","firstSymbolDeleted","anchorDigitIndex","cursorPosition","getPositionOnFilledIntegerScaleDigitChange","getGroupsNumber","start","end","_value$slice$match","numberOfGroupsBeforeCursorPrevValue","numberOfGroupsBeforeCursorNewValue","groupsDiffBeforeCursor","typedDigitShift","getPositionOnSelectionChange","getPasteText","beforeSelectionPartLength","afterSelectionPartLength","valueWithoutBeforePart","pasteText","_unformat3","pasteInteger","pasteDecimal","pasteFraction","refinedPasteText","refinedPasteTextLength","anchorDigitIndexRaw","anchorDigitIndexBase","anchorDigitIndexShift","anchorIndex","getCursorPositionShift","negativeToPositiveConversion","integerZeroBasedSelectionRemoval","integerPartRemoved","fractionZeroBasedSelectionRemoval","groupSelectionBackspaced","isDeltaIncrementer","getNewPosition","identicalLocales","one","two","array1","isArray","array2"],"sources":["../../src/NumberInput/NumberInput.utils.ts"],"sourcesContent":["import type { NumberOptions } from '@procore/globalization-toolkit'\nimport { NumberFormatter } from '@procore/globalization-toolkit'\nimport { getFormatterLocale } from '../_utils/i18n'\nimport type {\n CursorPosition,\n FillDecimalScaleVariant,\n InputValue,\n Locale,\n ParsedInputValue,\n PressedKey,\n Separators,\n} from './NumberInput.types'\n\nexport const defaultLocale = 'en-US'\nexport const minus = '-'\nexport const emptyString = ''\nexport const leftBrace = '('\nexport const rightBrace = ')'\nexport const backspaceKey = 'Backspace'\nexport const deleteKey = 'Delete'\nexport const numericKeypadDel = 'Del' // for delete key from numeric keypad in IE\nexport const periodKey = '.'\nexport const numericKeypadDecimal = 'Decimal' // for period key from numeric keypad in IE\nexport const numericKeypadKey = 'Del' // for delete key from numeric keypad in IE\nexport const androidUnidentifiedKey = 'Unidentified'\nexport const maxDigitLength = 15 // Safe length to avoid the loss of precision\nexport const maxDecimalScale = maxDigitLength - 1\nexport const commaKey = ','\nexport const metaKeyIdentifier = 'Meta'\nexport const controlKey = 'Control'\nexport const highlightAllKey = 'a'\nexport const copyKey = 'c'\n\n// fixes binary rounding issues (e.g: (0.615).toFixed(2) returns 0.61)\nexport function toFixed(value: number, precision: number): number {\n const isExponentialRecord = value.toString().includes('e')\n\n if (isExponentialRecord) return value\n\n return Number(\n Number(\n Math.round(Number(value + 'e' + precision)) + 'e-' + precision\n ).toFixed(precision)\n )\n}\n\nexport function formatterFactory(options: NumberOptions): NumberFormatter {\n try {\n return new NumberFormatter(options)\n } catch (error) {\n console.error(\n `Deprecated. @procore/core-react Intl.NumberFormat error for locale ${options.locale}. Will fall back to en-US. In a future major, this will become an error and not provide a fallback.`,\n error\n )\n return new NumberFormatter({ ...options, locale: 'en-US' })\n }\n}\n\nexport function getSeparators(locale: Locale): Separators {\n const formatterLocale = getFormatterLocale(locale as string)\n const separators = new NumberFormatter({\n locale: formatterLocale,\n }).getNumberSeparators()\n\n return { group: separators.group, decimal: separators.decimal || '' }\n}\n\n// Check if a valid numeric string is a negative value\nexport const isValidNegative = (value: InputValue) => {\n value = String(value)\n\n const minusRegExp = new RegExp(`${minus}`, 'g')\n const numberOfMinuses = value.match(minusRegExp)?.length\n const containsValidParenthesis =\n value.indexOf(leftBrace) === 0 &&\n value.indexOf(rightBrace) === value.length - 1\n const isNegative =\n (numberOfMinuses === 1 && !containsValidParenthesis) ||\n (!numberOfMinuses && containsValidParenthesis)\n return isNegative\n}\n\nexport function verifyDecimalScale(decimalScale: boolean | number): number {\n if (decimalScale === true) {\n return maxDecimalScale\n }\n if (decimalScale === false) {\n return 0\n }\n if (decimalScale < 0) {\n console.warn(\n `WARNING: Decimal scale (${decimalScale}) is out of range. It was reset to 0. Possible values are from 0 to ${maxDecimalScale}.`\n )\n return 0\n }\n if (decimalScale > maxDecimalScale) {\n console.warn(\n `WARNING: Decimal scale (${decimalScale}) is out of range. It was reset to the max value of ${maxDecimalScale}. Possible values are from 0 to ${maxDecimalScale}.`\n )\n return maxDecimalScale\n }\n return decimalScale\n}\n\nexport function unformat(\n locale: Locale,\n value: InputValue,\n isNumericString = false\n): ParsedInputValue {\n const isValueNegative = isValidNegative(value)\n const decimal =\n isNumericString || typeof value === 'number'\n ? periodKey\n : getSeparators(locale).decimal\n const numericRegExp = new RegExp(`[^0-9${decimal}]`, 'g')\n\n let strValue = String(value)\n\n // Normalize value with numeric characters\n strValue = strValue.replace(numericRegExp, emptyString)\n\n // Normalize \"minus\" sign for negatives\n if (isValueNegative) {\n strValue = `${minus}${strValue}`\n }\n\n // Normalize integer and fraction parts of the value\n const [integer, ...fractions] = strValue.split(decimal)\n const fraction = fractions.join(emptyString)\n\n return {\n integer,\n decimal: strValue.includes(decimal) ? decimal : emptyString,\n fraction,\n parsedNumber: parseFloat(`${integer}${periodKey}${fraction}`),\n }\n}\n\nexport function refineIntegerFromLeadingZeroes(integer: string) {\n const isNegativeValue = isValidNegative(integer)\n const refinedFromMinus = integer.replace(minus, emptyString)\n const hasLeadingZeroes = refinedFromMinus.slice(0, 1)\n const refinedFromLeadingZeroes = refinedFromMinus.replace(/^0+/, emptyString)\n const zeroPadded =\n hasLeadingZeroes && refinedFromLeadingZeroes === emptyString\n\n return `${isNegativeValue ? minus : emptyString}${\n zeroPadded ? 0 : refinedFromLeadingZeroes\n }`\n}\n\nexport function getLengthInfo(\n locale: Locale,\n value: InputValue,\n decimalScale: number = 0,\n fillDecimalScale: FillDecimalScaleVariant = 'none',\n isNumericString = false\n) {\n const isNegativeValue = isValidNegative(value)\n\n const { integer, decimal, fraction } = unformat(\n locale,\n value,\n isNumericString\n )\n\n const integerRefinedFromLeadingZeros = refineIntegerFromLeadingZeroes(integer)\n\n const getIntegerLength = () => {\n const accountEmptyInteger =\n integer === emptyString && decimal && fraction.length > 0\n\n if (accountEmptyInteger) return 1\n\n const accountEmptyNegativeInteger =\n integer === minus && decimal && fraction.length > 0\n\n if (accountEmptyNegativeInteger) return 2\n\n const accountInteger =\n integer.length > 0 && integer !== emptyString && integer !== minus\n\n if (accountInteger) return integerRefinedFromLeadingZeros.length\n\n return 0\n }\n\n const integerLength = getIntegerLength()\n const fractionLength = fraction.length\n const length = integerLength + fractionLength\n\n const safeLength = maxDigitLength + (isNegativeValue ? 1 : 0)\n const isSafeLength = safeLength - length > -1\n\n const isDecimalScaleNonFillable = fillDecimalScale === 'none'\n\n const safeIntegerLength = isDecimalScaleNonFillable\n ? safeLength\n : safeLength - decimalScale\n const safeFractionLength = isDecimalScaleNonFillable\n ? Math.min(\n safeLength -\n integerRefinedFromLeadingZeros.slice(0, safeIntegerLength).length,\n decimalScale\n )\n : decimalScale\n\n const isSafeIntegerLength = safeIntegerLength - integerLength > -1\n const isSafeFractionLength = safeFractionLength - fractionLength > -1\n\n const safelyTruncatedInteger = isSafeIntegerLength\n ? integerRefinedFromLeadingZeros\n : integerRefinedFromLeadingZeros.slice(0, safeIntegerLength)\n const safelyTruncatedFraction = isSafeFractionLength\n ? fraction\n : fraction.slice(0, safeFractionLength)\n\n const safelyTruncatedValue = `${safelyTruncatedInteger}${decimal}${safelyTruncatedFraction}`\n\n return {\n length,\n safeLength,\n isSafeLength,\n safelyTruncatedValue,\n integerLength,\n safeIntegerLength,\n isSafeIntegerLength,\n fractionLength,\n safeFractionLength,\n isSafeFractionLength,\n }\n}\n\nexport function format(\n locale: Locale,\n decimalScale: number,\n fillDecimalScale: FillDecimalScaleVariant,\n value: InputValue,\n isNumericString = false\n): string {\n const fixedDecimalScale = fillDecimalScale === 'always'\n\n const fillDecimalScaleOnBlur = fillDecimalScale === 'onBlur'\n\n const autoFilledScale = fixedDecimalScale || fillDecimalScaleOnBlur\n\n const { length, safeLength, isSafeLength, safelyTruncatedValue } =\n getLengthInfo(\n locale,\n value,\n decimalScale,\n fillDecimalScale,\n isNumericString\n )\n\n const isTruncatedBeforeFormatting = autoFilledScale || !isSafeLength\n\n const valueOfVerifiedLength = isTruncatedBeforeFormatting\n ? safelyTruncatedValue\n : value\n\n const { integer, decimal, fraction } = unformat(\n locale,\n valueOfVerifiedLength,\n isNumericString || typeof value === 'number'\n )\n\n const options = {\n minimumFractionDigits: fixedDecimalScale\n ? decimalScale\n : Math.min(Math.max(0, fraction?.length || 0), decimalScale),\n maximumFractionDigits: decimalScale,\n }\n\n const formatterLocale = getFormatterLocale(locale as string)\n const formatter = formatterFactory({ locale: formatterLocale, ...options })\n\n const isDecimalAllowed = decimalScale > 0\n\n const isEmptyValue = integer === emptyString && !decimal && !fraction\n\n if (isEmptyValue) return emptyString\n\n const isMinusValue = integer === minus && !decimal && !fraction\n\n if (isMinusValue) return minus\n\n const isDecimalValue =\n integer === emptyString && decimal && !fraction && !fixedDecimalScale\n\n if (isDecimalValue) return isDecimalAllowed ? decimal : emptyString\n\n const isMinusDecimalValue =\n integer === minus && decimal && !fraction && !fixedDecimalScale\n\n if (isMinusDecimalValue)\n return `${minus}${isDecimalAllowed ? decimal : emptyString}`\n\n const isFractionValueWithEmptyInteger =\n (integer === minus || integer === emptyString) &&\n decimal &&\n (fraction || (!fraction && fixedDecimalScale))\n\n if (isFractionValueWithEmptyInteger) {\n const numberOfZerosToPad = decimalScale - fraction.length\n\n const preparedFraction =\n numberOfZerosToPad > 0 && fixedDecimalScale\n ? fraction.concat(\n Array.from({ length: numberOfZerosToPad }, (_) => '0').join(\n emptyString\n )\n )\n : fraction.slice(0, decimalScale)\n\n return `${integer}${\n isDecimalAllowed ? decimal : emptyString\n }${preparedFraction}`\n }\n\n if (typeof valueOfVerifiedLength === 'number') {\n return formatter.formatNumber(valueOfVerifiedLength)\n }\n\n if (fraction) {\n const number = parseFloat(\n `${integer}${periodKey}${fraction.slice(\n 0,\n options.maximumFractionDigits\n )}`\n )\n\n if (isNaN(number)) return emptyString\n\n return formatter.formatNumber(number)\n }\n\n if (integer) {\n const number = parseInt(integer, 10)\n\n if (isNaN(number)) return emptyString\n\n const formatted = formatter.formatNumber(number)\n const isDecimalAllowed = !(\n options.minimumFractionDigits === 0 && options.maximumFractionDigits === 0\n )\n const isDecimalAvailable =\n decimal && !formatted.includes(decimal) && length < safeLength\n\n return isDecimalAllowed && isDecimalAvailable\n ? `${formatted}${decimal}`\n : formatted\n }\n\n return emptyString\n}\n\nexport function identifyPressedKey(\n decimalSeparatorKey: string,\n inputType: string,\n pressedKey: PressedKey,\n prevValue: string,\n value: string\n) {\n if (pressedKey !== androidUnidentifiedKey) return pressedKey\n\n if (inputType === 'deleteContentBackward') return backspaceKey\n\n if (inputType === 'insertText') {\n const diff = value\n .split(emptyString)\n .find(\n (char: string, i: number) => char !== prevValue.split(emptyString)[i]\n )\n\n switch (diff) {\n case decimalSeparatorKey:\n return decimalSeparatorKey\n case minus:\n return minus\n default:\n return pressedKey\n }\n }\n\n return pressedKey\n}\n\nexport function getPressedKeyInfo(\n decimalSeparatorKey: string,\n group: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n verifiedDecimalScale: number\n) {\n const { selectionStart, selectionEnd, selection } = prevCursorPosition\n\n const backspaceWasPressed = pressedKey === backspaceKey\n const backspacedChar = backspaceWasPressed\n ? prevValue.slice(selectionStart + (selection ? 0 : -1), selectionEnd)\n : null\n const decimalWasPressed = [\n decimalSeparatorKey,\n numericKeypadDecimal,\n ].includes(pressedKey as string)\n const decimalPressedForInteger =\n decimalWasPressed && verifiedDecimalScale === 0\n const deleteWasPressed = [deleteKey, numericKeypadDel].includes(\n pressedKey as string\n )\n const deletedChar = deleteWasPressed\n ? prevValue.slice(selectionStart, selectionEnd + (selection ? 0 : 1))\n : null\n\n const thousandsSeparatorWasBackspaced =\n backspaceWasPressed && backspacedChar === group\n const thousandsSeparatorWasDeleted = deleteWasPressed && deletedChar === group\n\n return {\n backspaceWasPressed,\n backspacedChar,\n decimalWasPressed,\n decimalPressedForInteger,\n deleteWasPressed,\n deletedChar,\n thousandsSeparatorWasBackspaced,\n thousandsSeparatorWasDeleted,\n }\n}\n\nexport function prepareValueToFormatting(\n decimal: string,\n decimalSeparatorKey: string,\n group: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n verifiedDecimalScale: number,\n value: string\n) {\n const {\n decimalPressedForInteger,\n thousandsSeparatorWasBackspaced,\n thousandsSeparatorWasDeleted,\n } = getPressedKeyInfo(\n decimalSeparatorKey,\n group,\n pressedKey,\n prevCursorPosition,\n prevValue,\n verifiedDecimalScale\n )\n\n // Remove preceding/following integer digit instead of thousands separator\n if (thousandsSeparatorWasBackspaced || thousandsSeparatorWasDeleted) {\n const { selectionEnd, selection } = prevCursorPosition\n\n const getCursorShift = () => {\n if (thousandsSeparatorWasDeleted) {\n const deletedAsSelection = selection === group\n return deletedAsSelection ? 0 : 1\n }\n if (thousandsSeparatorWasBackspaced) return -2\n return 0\n }\n\n const indexOfIntegerDigitToRemove = selectionEnd + getCursorShift()\n\n return prevValue\n .split(emptyString)\n .filter((_, i) => i !== indexOfIntegerDigitToRemove)\n .join(emptyString)\n }\n\n // Ignore typing decimal separator for integer\n if (decimalPressedForInteger) {\n return value.replace(new RegExp(`[${decimal}]`, 'g'), emptyString)\n }\n\n return value\n}\n\nexport function getNewCursorPosition(\n decimal: string,\n decimalSeparatorKey: string,\n group: string,\n newValue: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n value: string,\n verifiedDecimalScale: number,\n locale: Locale,\n fillDecimalScale: FillDecimalScaleVariant\n) {\n const fixedDecimalScale = fillDecimalScale === 'always'\n\n const { length: prevLength, fractionLength: prevFractionLength } =\n getLengthInfo(locale, prevValue, verifiedDecimalScale, fillDecimalScale)\n\n const {\n length: newLength,\n safeLength: newSafeLength,\n integerLength: newIntegerLength,\n safeIntegerLength: newSafeIntegerLength,\n fractionLength: newFractionLength,\n safeFractionLength: newSafeFractionLength,\n } = getLengthInfo(locale, newValue, verifiedDecimalScale, fillDecimalScale)\n\n const {\n backspaceWasPressed,\n backspacedChar,\n decimalWasPressed,\n deleteWasPressed,\n thousandsSeparatorWasBackspaced,\n } = getPressedKeyInfo(\n decimalSeparatorKey,\n group,\n pressedKey,\n prevCursorPosition,\n prevValue,\n verifiedDecimalScale\n )\n\n const digitTyped = pressedKey && /\\d/g.test(pressedKey)\n const digitBackspaced =\n backspaceWasPressed && backspacedChar && /\\d/g.test(backspacedChar)\n const decimalBackspaced = backspaceWasPressed && backspacedChar === decimal\n\n const { selectionStart, selectionEnd, selection } = prevCursorPosition\n\n const defaultPosition = Math.max(\n selectionEnd + (newValue.length - prevValue.length),\n 0\n )\n\n const isPrevValueNegative = isValidNegative(prevValue)\n\n const isNewValueNegative = isValidNegative(newValue)\n\n const isDecimalAllowed = verifiedDecimalScale > 0\n\n const digitTypedBeforeMinus =\n isPrevValueNegative && selectionEnd === 0 && digitTyped\n\n const leadingZeroAdded =\n pressedKey === '0' && selectionEnd === (isPrevValueNegative ? 1 : 0)\n\n const prevIndexOfDecimalSeparator = prevValue.indexOf(decimal)\n const prevCursorPositionInDecimalArea =\n prevIndexOfDecimalSeparator > -1 &&\n prevIndexOfDecimalSeparator < selectionEnd\n const prevCursorPositionInIntegerArea =\n prevIndexOfDecimalSeparator === -1 ||\n prevIndexOfDecimalSeparator >= selectionEnd\n\n const filledIntegerScaleDigitWasChanged =\n digitTyped &&\n prevCursorPositionInIntegerArea &&\n selectionEnd !== prevValue.length &&\n newLength === prevLength &&\n (newLength === newSafeLength || newIntegerLength === newSafeIntegerLength)\n\n const isDecimalScaleFilled =\n isDecimalAllowed &&\n newFractionLength === prevFractionLength &&\n newFractionLength === newSafeFractionLength\n\n const filledDecimalScaleDigitWasBackspaced =\n isDecimalScaleFilled && prevCursorPositionInDecimalArea && digitBackspaced\n\n const filledDecimalScaleDigitWasChanged =\n isDecimalScaleFilled && prevCursorPositionInDecimalArea && digitTyped\n\n // Manage cursor when decimalSeparator typed in a new place of a decimal-allowed number\n const decimalNewPosition = newValue.indexOf(decimal)\n const restructuredByDecimal =\n isDecimalAllowed && decimalWasPressed && decimalNewPosition > -1\n\n // Preserve cursor after first typed digit and before decimal separator\n const fixedDecimalScaleFirstTyping =\n fixedDecimalScale &&\n value.length === (isNewValueNegative ? 2 : 1) &&\n newValue.charAt(isNewValueNegative ? 1 : 0) === pressedKey\n\n // Preserve cursor before \"negative\" sign\n const isLeadingZerosRemovedOnPrecedingDigitBackspace =\n backspaceWasPressed &&\n defaultPosition === 0 &&\n selectionEnd - defaultPosition > 1\n const keepCursorBeforeNegativeSign =\n isNewValueNegative && isLeadingZerosRemovedOnPrecedingDigitBackspace\n\n const getPositionOnRestructuringByDecimal = () => {\n return prevCursorPositionInDecimalArea\n ? newValue.length\n : decimalNewPosition + 1\n }\n\n const getPositionOnDecimalBackspace = () => {\n const removedCharShift = 1\n const valueLength = newValue.length\n\n if (prevFractionLength === 0) {\n return valueLength\n }\n\n let delta = 0\n let anchorDigitIndexFromTheEnd = 0\n\n newValue\n .split(emptyString)\n .reverse()\n .forEach((char, i) => {\n if (char === group) {\n delta++\n }\n if (i - delta === prevFractionLength - 1) {\n anchorDigitIndexFromTheEnd = i\n }\n })\n\n return valueLength - removedCharShift - anchorDigitIndexFromTheEnd\n }\n\n const getPositionOnDelete = () => {\n const firstSymbolDeleted = selectionEnd === 0\n\n if (firstSymbolDeleted) {\n return 0\n }\n\n const removedCharShift = 1\n const anchorDigitIndex =\n prevValue\n .slice(0, selectionEnd)\n .replace(new RegExp(`[${group}]`, 'g'), emptyString).length - 1\n\n let delta = 0\n let cursorPosition = 0\n\n newValue.split(emptyString).forEach((char, i) => {\n if (char === group) {\n delta++\n }\n if (i - delta === anchorDigitIndex) {\n cursorPosition = i\n }\n })\n\n return cursorPosition + removedCharShift\n }\n\n const getPositionOnFilledIntegerScaleDigitChange = () => {\n const getGroupsNumber = (value: string, start?: number, end?: number) => {\n return (\n value.slice(start, end).match(new RegExp(`[${group}]`, 'g'))?.length ||\n 0\n )\n }\n\n const numberOfGroupsBeforeCursorPrevValue = getGroupsNumber(\n prevValue,\n 0,\n selectionEnd\n )\n const numberOfGroupsBeforeCursorNewValue = getGroupsNumber(\n newValue,\n 0,\n selectionEnd + 1\n )\n const groupsDiffBeforeCursor =\n numberOfGroupsBeforeCursorNewValue - numberOfGroupsBeforeCursorPrevValue\n\n const typedDigitShift = leadingZeroAdded ? 0 : 1\n\n return selectionEnd + groupsDiffBeforeCursor + typedDigitShift\n }\n\n const getPositionOnSelectionChange = () => {\n if (restructuredByDecimal) return getPositionOnRestructuringByDecimal()\n\n const getPasteText = () => {\n const beforeSelectionPartLength = prevValue.slice(\n 0,\n selectionStart\n ).length\n const afterSelectionPartLength = prevValue.slice(selectionEnd).length\n const valueWithoutBeforePart = value.slice(beforeSelectionPartLength)\n\n const pasteText = valueWithoutBeforePart.slice(\n 0,\n valueWithoutBeforePart.length - afterSelectionPartLength\n )\n\n return pasteText\n }\n\n const {\n integer: pasteInteger,\n decimal: pasteDecimal,\n fraction: pasteFraction,\n } = unformat(locale, getPasteText())\n\n const refinedPasteText = `${\n selectionStart === 0\n ? refineIntegerFromLeadingZeroes(pasteInteger)\n : pasteInteger\n }${pasteDecimal}${pasteFraction}`\n\n const refinedPasteTextLength = refinedPasteText.length\n\n const anchorDigitIndexRaw =\n prevValue\n .slice(0, selectionStart)\n .replace(new RegExp(`[${group}${decimal}]`, 'g'), emptyString).length -\n 1\n\n const anchorDigitIndexBase =\n anchorDigitIndexRaw > -1 ? anchorDigitIndexRaw : 0\n\n const anchorDigitIndexShift =\n anchorDigitIndexRaw > -1\n ? refinedPasteTextLength\n : Math.max(refinedPasteTextLength - 1, 0)\n\n const anchorIndex = anchorDigitIndexBase + anchorDigitIndexShift\n\n const getCursorPositionShift = () => {\n const negativeToPositiveConversion =\n isValidNegative(refinedPasteText) && isPrevValueNegative\n\n const integerZeroBasedSelectionRemoval =\n refinedPasteTextLength === 0 && selectionStart === 0\n\n const integerPartRemoved =\n integerZeroBasedSelectionRemoval &&\n selectionEnd === prevIndexOfDecimalSeparator\n\n const fractionZeroBasedSelectionRemoval =\n (refinedPasteTextLength === 0 || refinedPasteText === minus) &&\n selectionStart === prevIndexOfDecimalSeparator + 1\n\n const groupSelectionBackspaced =\n selection === group && thousandsSeparatorWasBackspaced\n\n if (negativeToPositiveConversion || integerPartRemoved) return -1\n if (integerZeroBasedSelectionRemoval || groupSelectionBackspaced) return 0\n if (fractionZeroBasedSelectionRemoval) return 2\n\n return 1\n }\n\n let delta = 0\n let cursorPosition = 0\n\n for (let i = 0; i < newValue.length; i++) {\n const char = newValue.charAt(i)\n\n const isDeltaIncrementer =\n char === group || (char === decimal && !pasteDecimal)\n\n if (isDeltaIncrementer) {\n delta++\n }\n\n if (i - delta === anchorIndex) {\n cursorPosition = i + getCursorPositionShift()\n break\n }\n\n if (i + 1 === newValue.length) {\n cursorPosition = newValue.length\n }\n }\n\n return cursorPosition\n }\n\n const getNewPosition = () => {\n if (selection) {\n return getPositionOnSelectionChange()\n }\n\n if (digitTypedBeforeMinus) {\n return 2\n }\n\n if (filledIntegerScaleDigitWasChanged) {\n return getPositionOnFilledIntegerScaleDigitChange()\n }\n\n if (deleteWasPressed) {\n return getPositionOnDelete()\n }\n\n if (decimalBackspaced) {\n return getPositionOnDecimalBackspace()\n }\n\n if (filledDecimalScaleDigitWasBackspaced) {\n return selectionEnd - 1\n }\n\n if (filledDecimalScaleDigitWasChanged) {\n return selectionEnd + 1\n }\n\n if (restructuredByDecimal) {\n return getPositionOnRestructuringByDecimal()\n }\n\n if (fixedDecimalScaleFirstTyping) {\n return isNewValueNegative ? 2 : 1\n }\n\n if (keepCursorBeforeNegativeSign) {\n return 1\n }\n\n return defaultPosition\n }\n\n return getNewPosition()\n}\n\nexport function identicalLocales(one: Locale, two: Locale) {\n const array1 = Array.isArray(one) ? one : [one]\n const array2 = Array.isArray(two) ? two : [two]\n\n return array1.join() === array2.join()\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NumberInput.utils.js","names":["NumberFormatter","getFormatterLocale","defaultLocale","minus","emptyString","leftBrace","rightBrace","backspaceKey","deleteKey","numericKeypadDel","periodKey","numericKeypadDecimal","numericKeypadKey","androidUnidentifiedKey","maxDigitLength","maxDecimalScale","commaKey","metaKeyIdentifier","controlKey","highlightAllKey","copyKey","toFixed","value","precision","isExponentialRecord","toString","includes","Number","Math","round","formatterFactory","options","error","console","concat","locale","_objectSpread","getSeparators","formatterLocale","separators","getNumberSeparators","group","decimal","isValidNegative","_value$match","String","minusRegExp","RegExp","numberOfMinuses","match","length","containsValidParenthesis","indexOf","isNegative","verifyDecimalScale","decimalScale","warn","unformat","isNumericString","arguments","undefined","isValueNegative","numericRegExp","strValue","replace","_strValue$split","split","_strValue$split2","_toArray","integer","fractions","slice","fraction","join","parsedNumber","parseFloat","refineIntegerFromLeadingZeroes","isNegativeValue","refinedFromMinus","hasLeadingZeroes","refinedFromLeadingZeroes","zeroPadded","getLengthInfo","fillDecimalScale","_unformat","integerRefinedFromLeadingZeros","getIntegerLength","accountEmptyInteger","accountEmptyNegativeInteger","accountInteger","integerLength","fractionLength","safeLength","isSafeLength","isDecimalScaleNonFillable","safeIntegerLength","safeFractionLength","min","isSafeIntegerLength","isSafeFractionLength","safelyTruncatedInteger","safelyTruncatedFraction","safelyTruncatedValue","format","fixedDecimalScale","fillDecimalScaleOnBlur","autoFilledScale","_getLengthInfo","isTruncatedBeforeFormatting","valueOfVerifiedLength","_unformat2","minimumFractionDigits","max","maximumFractionDigits","formatter","isDecimalAllowed","isEmptyValue","isMinusValue","isDecimalValue","isMinusDecimalValue","isFractionValueWithEmptyInteger","numberOfZerosToPad","preparedFraction","Array","from","_","formatNumber","number","isNaN","parseInt","formatted","isDecimalAvailable","identifyPressedKey","decimalSeparatorKey","inputType","pressedKey","prevValue","diff","find","char","i","getPressedKeyInfo","prevCursorPosition","verifiedDecimalScale","selectionStart","selectionEnd","selection","backspaceWasPressed","backspacedChar","decimalWasPressed","decimalPressedForInteger","deleteWasPressed","deletedChar","thousandsSeparatorWasBackspaced","thousandsSeparatorWasDeleted","prepareValueToFormatting","_getPressedKeyInfo","getCursorShift","deletedAsSelection","indexOfIntegerDigitToRemove","filter","getNewCursorPosition","newValue","_getLengthInfo2","prevLength","prevFractionLength","_getLengthInfo3","newLength","newSafeLength","newIntegerLength","newSafeIntegerLength","newFractionLength","newSafeFractionLength","_getPressedKeyInfo2","digitTyped","test","digitBackspaced","decimalBackspaced","defaultPosition","isPrevValueNegative","isNewValueNegative","digitTypedBeforeMinus","dotWithoutAnyDigitBefore","startsWith","minusWithDotWithoutAnyDigitBefore","leadingZeroAdded","prevIndexOfDecimalSeparator","prevCursorPositionInDecimalArea","prevCursorPositionInIntegerArea","filledIntegerScaleDigitWasChanged","isDecimalScaleFilled","filledDecimalScaleDigitWasBackspaced","filledDecimalScaleDigitWasChanged","decimalNewPosition","restructuredByDecimal","fixedDecimalScaleFirstTyping","charAt","isLeadingZerosRemovedOnPrecedingDigitBackspace","keepCursorBeforeNegativeSign","getPositionOnRestructuringByDecimal","getPositionOnDecimalBackspace","removedCharShift","valueLength","delta","anchorDigitIndexFromTheEnd","reverse","forEach","getPositionOnDelete","firstSymbolDeleted","anchorDigitIndex","cursorPosition","getPositionOnFilledIntegerScaleDigitChange","getGroupsNumber","start","end","_value$slice$match","numberOfGroupsBeforeCursorPrevValue","numberOfGroupsBeforeCursorNewValue","groupsDiffBeforeCursor","typedDigitShift","getPositionOnSelectionChange","getPasteText","beforeSelectionPartLength","afterSelectionPartLength","valueWithoutBeforePart","pasteText","_unformat3","pasteInteger","pasteDecimal","pasteFraction","refinedPasteText","refinedPasteTextLength","anchorDigitIndexRaw","anchorDigitIndexBase","anchorDigitIndexShift","anchorIndex","getCursorPositionShift","negativeToPositiveConversion","integerZeroBasedSelectionRemoval","integerPartRemoved","fractionZeroBasedSelectionRemoval","groupSelectionBackspaced","isDeltaIncrementer","getNewPosition","identicalLocales","one","two","array1","isArray","array2"],"sources":["../../src/NumberInput/NumberInput.utils.ts"],"sourcesContent":["import type { NumberOptions } from '@procore/globalization-toolkit'\nimport { NumberFormatter } from '@procore/globalization-toolkit'\nimport { getFormatterLocale } from '../_utils/i18n'\nimport type {\n CursorPosition,\n FillDecimalScaleVariant,\n InputValue,\n Locale,\n ParsedInputValue,\n PressedKey,\n Separators,\n} from './NumberInput.types'\n\nexport const defaultLocale = 'en-US'\nexport const minus = '-'\nexport const emptyString = ''\nexport const leftBrace = '('\nexport const rightBrace = ')'\nexport const backspaceKey = 'Backspace'\nexport const deleteKey = 'Delete'\nexport const numericKeypadDel = 'Del' // for delete key from numeric keypad in IE\nexport const periodKey = '.'\nexport const numericKeypadDecimal = 'Decimal' // for period key from numeric keypad in IE\nexport const numericKeypadKey = 'Del' // for delete key from numeric keypad in IE\nexport const androidUnidentifiedKey = 'Unidentified'\nexport const maxDigitLength = 15 // Safe length to avoid the loss of precision\nexport const maxDecimalScale = maxDigitLength - 1\nexport const commaKey = ','\nexport const metaKeyIdentifier = 'Meta'\nexport const controlKey = 'Control'\nexport const highlightAllKey = 'a'\nexport const copyKey = 'c'\n\n// fixes binary rounding issues (e.g: (0.615).toFixed(2) returns 0.61)\nexport function toFixed(value: number, precision: number): number {\n const isExponentialRecord = value.toString().includes('e')\n\n if (isExponentialRecord) return value\n\n return Number(\n Number(\n Math.round(Number(value + 'e' + precision)) + 'e-' + precision\n ).toFixed(precision)\n )\n}\n\nexport function formatterFactory(options: NumberOptions): NumberFormatter {\n try {\n return new NumberFormatter(options)\n } catch (error) {\n console.error(\n `Deprecated. @procore/core-react Intl.NumberFormat error for locale ${options.locale}. Will fall back to en-US. In a future major, this will become an error and not provide a fallback.`,\n error\n )\n return new NumberFormatter({ ...options, locale: 'en-US' })\n }\n}\n\nexport function getSeparators(locale: Locale): Separators {\n const formatterLocale = getFormatterLocale(locale as string)\n const separators = new NumberFormatter({\n locale: formatterLocale,\n }).getNumberSeparators()\n\n return { group: separators.group, decimal: separators.decimal || '' }\n}\n\n// Check if a valid numeric string is a negative value\nexport const isValidNegative = (value: InputValue) => {\n value = String(value)\n\n const minusRegExp = new RegExp(`${minus}`, 'g')\n const numberOfMinuses = value.match(minusRegExp)?.length\n const containsValidParenthesis =\n value.indexOf(leftBrace) === 0 &&\n value.indexOf(rightBrace) === value.length - 1\n const isNegative =\n (numberOfMinuses === 1 && !containsValidParenthesis) ||\n (!numberOfMinuses && containsValidParenthesis)\n return isNegative\n}\n\nexport function verifyDecimalScale(decimalScale: boolean | number): number {\n if (decimalScale === true) {\n return maxDecimalScale\n }\n if (decimalScale === false) {\n return 0\n }\n if (decimalScale < 0) {\n console.warn(\n `WARNING: Decimal scale (${decimalScale}) is out of range. It was reset to 0. Possible values are from 0 to ${maxDecimalScale}.`\n )\n return 0\n }\n if (decimalScale > maxDecimalScale) {\n console.warn(\n `WARNING: Decimal scale (${decimalScale}) is out of range. It was reset to the max value of ${maxDecimalScale}. Possible values are from 0 to ${maxDecimalScale}.`\n )\n return maxDecimalScale\n }\n return decimalScale\n}\n\nexport function unformat(\n locale: Locale,\n value: InputValue,\n isNumericString = false\n): ParsedInputValue {\n const isValueNegative = isValidNegative(value)\n const decimal =\n isNumericString || typeof value === 'number'\n ? periodKey\n : getSeparators(locale).decimal\n const numericRegExp = new RegExp(`[^0-9${decimal}]`, 'g')\n\n let strValue = String(value)\n\n // Normalize value with numeric characters\n strValue = strValue.replace(numericRegExp, emptyString)\n\n // Normalize \"minus\" sign for negatives\n if (isValueNegative) {\n strValue = `${minus}${strValue}`\n }\n\n // Normalize integer and fraction parts of the value\n const [integer, ...fractions] = strValue.split(decimal)\n const fraction = fractions.join(emptyString)\n\n return {\n integer,\n decimal: strValue.includes(decimal) ? decimal : emptyString,\n fraction,\n parsedNumber: parseFloat(`${integer}${periodKey}${fraction}`),\n }\n}\n\nexport function refineIntegerFromLeadingZeroes(integer: string) {\n const isNegativeValue = isValidNegative(integer)\n const refinedFromMinus = integer.replace(minus, emptyString)\n const hasLeadingZeroes = refinedFromMinus.slice(0, 1)\n const refinedFromLeadingZeroes = refinedFromMinus.replace(/^0+/, emptyString)\n const zeroPadded =\n hasLeadingZeroes && refinedFromLeadingZeroes === emptyString\n\n return `${isNegativeValue ? minus : emptyString}${\n zeroPadded ? 0 : refinedFromLeadingZeroes\n }`\n}\n\nexport function getLengthInfo(\n locale: Locale,\n value: InputValue,\n decimalScale: number = 0,\n fillDecimalScale: FillDecimalScaleVariant = 'none',\n isNumericString = false\n) {\n const isNegativeValue = isValidNegative(value)\n\n const { integer, decimal, fraction } = unformat(\n locale,\n value,\n isNumericString\n )\n\n const integerRefinedFromLeadingZeros = refineIntegerFromLeadingZeroes(integer)\n\n const getIntegerLength = () => {\n const accountEmptyInteger =\n integer === emptyString && decimal && fraction.length > 0\n\n if (accountEmptyInteger) return 1\n\n const accountEmptyNegativeInteger =\n integer === minus && decimal && fraction.length > 0\n\n if (accountEmptyNegativeInteger) return 2\n\n const accountInteger =\n integer.length > 0 && integer !== emptyString && integer !== minus\n\n if (accountInteger) return integerRefinedFromLeadingZeros.length\n\n return 0\n }\n\n const integerLength = getIntegerLength()\n const fractionLength = fraction.length\n const length = integerLength + fractionLength\n\n const safeLength = maxDigitLength + (isNegativeValue ? 1 : 0)\n const isSafeLength = safeLength - length > -1\n\n const isDecimalScaleNonFillable = fillDecimalScale === 'none'\n\n const safeIntegerLength = isDecimalScaleNonFillable\n ? safeLength\n : safeLength - decimalScale\n const safeFractionLength = isDecimalScaleNonFillable\n ? Math.min(\n safeLength -\n integerRefinedFromLeadingZeros.slice(0, safeIntegerLength).length,\n decimalScale\n )\n : decimalScale\n\n const isSafeIntegerLength = safeIntegerLength - integerLength > -1\n const isSafeFractionLength = safeFractionLength - fractionLength > -1\n\n const safelyTruncatedInteger = isSafeIntegerLength\n ? integerRefinedFromLeadingZeros\n : integerRefinedFromLeadingZeros.slice(0, safeIntegerLength)\n const safelyTruncatedFraction = isSafeFractionLength\n ? fraction\n : fraction.slice(0, safeFractionLength)\n\n const safelyTruncatedValue = `${safelyTruncatedInteger}${decimal}${safelyTruncatedFraction}`\n\n return {\n length,\n safeLength,\n isSafeLength,\n safelyTruncatedValue,\n integerLength,\n safeIntegerLength,\n isSafeIntegerLength,\n fractionLength,\n safeFractionLength,\n isSafeFractionLength,\n }\n}\n\nexport function format(\n locale: Locale,\n decimalScale: number,\n fillDecimalScale: FillDecimalScaleVariant,\n value: InputValue,\n isNumericString = false\n): string {\n const fixedDecimalScale = fillDecimalScale === 'always'\n\n const fillDecimalScaleOnBlur = fillDecimalScale === 'onBlur'\n\n const autoFilledScale = fixedDecimalScale || fillDecimalScaleOnBlur\n\n const { length, safeLength, isSafeLength, safelyTruncatedValue } =\n getLengthInfo(\n locale,\n value,\n decimalScale,\n fillDecimalScale,\n isNumericString\n )\n\n const isTruncatedBeforeFormatting = autoFilledScale || !isSafeLength\n\n const valueOfVerifiedLength = isTruncatedBeforeFormatting\n ? safelyTruncatedValue\n : value\n\n const { integer, decimal, fraction } = unformat(\n locale,\n valueOfVerifiedLength,\n isNumericString || typeof value === 'number'\n )\n\n const options = {\n minimumFractionDigits: fixedDecimalScale\n ? decimalScale\n : Math.min(Math.max(0, fraction?.length || 0), decimalScale),\n maximumFractionDigits: decimalScale,\n }\n\n const formatterLocale = getFormatterLocale(locale as string)\n const formatter = formatterFactory({ locale: formatterLocale, ...options })\n\n const isDecimalAllowed = decimalScale > 0\n\n const isEmptyValue = integer === emptyString && !decimal && !fraction\n\n if (isEmptyValue) return emptyString\n\n const isMinusValue = integer === minus && !decimal && !fraction\n\n if (isMinusValue) return minus\n\n const isDecimalValue =\n integer === emptyString && decimal && !fraction && !fixedDecimalScale\n\n if (isDecimalValue) return isDecimalAllowed ? decimal : emptyString\n\n const isMinusDecimalValue =\n integer === minus && decimal && !fraction && !fixedDecimalScale\n\n if (isMinusDecimalValue)\n return `${minus}${isDecimalAllowed ? decimal : emptyString}`\n\n const isFractionValueWithEmptyInteger =\n (integer === minus || integer === emptyString) &&\n decimal &&\n (fraction || (!fraction && fixedDecimalScale))\n\n if (isFractionValueWithEmptyInteger) {\n const numberOfZerosToPad = decimalScale - fraction.length\n\n const preparedFraction =\n numberOfZerosToPad > 0 && fixedDecimalScale\n ? fraction.concat(\n Array.from({ length: numberOfZerosToPad }, (_) => '0').join(\n emptyString\n )\n )\n : fraction.slice(0, decimalScale)\n\n return `${integer}${\n isDecimalAllowed ? decimal : emptyString\n }${preparedFraction}`\n }\n\n if (typeof valueOfVerifiedLength === 'number') {\n return formatter.formatNumber(valueOfVerifiedLength)\n }\n\n if (fraction) {\n const number = parseFloat(\n `${integer}${periodKey}${fraction.slice(\n 0,\n options.maximumFractionDigits\n )}`\n )\n\n if (isNaN(number)) return emptyString\n\n return formatter.formatNumber(number)\n }\n\n if (integer) {\n const number = parseInt(integer, 10)\n\n if (isNaN(number)) return emptyString\n\n const formatted = formatter.formatNumber(number)\n const isDecimalAllowed = !(\n options.minimumFractionDigits === 0 && options.maximumFractionDigits === 0\n )\n const isDecimalAvailable =\n decimal && !formatted.includes(decimal) && length < safeLength\n\n return isDecimalAllowed && isDecimalAvailable\n ? `${formatted}${decimal}`\n : formatted\n }\n\n return emptyString\n}\n\nexport function identifyPressedKey(\n decimalSeparatorKey: string,\n inputType: string,\n pressedKey: PressedKey,\n prevValue: string,\n value: string\n) {\n if (pressedKey !== androidUnidentifiedKey) return pressedKey\n\n if (inputType === 'deleteContentBackward') return backspaceKey\n\n if (inputType === 'insertText') {\n const diff = value\n .split(emptyString)\n .find(\n (char: string, i: number) => char !== prevValue.split(emptyString)[i]\n )\n\n switch (diff) {\n case decimalSeparatorKey:\n return decimalSeparatorKey\n case minus:\n return minus\n default:\n return pressedKey\n }\n }\n\n return pressedKey\n}\n\nexport function getPressedKeyInfo(\n decimalSeparatorKey: string,\n group: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n verifiedDecimalScale: number\n) {\n const { selectionStart, selectionEnd, selection } = prevCursorPosition\n\n const backspaceWasPressed = pressedKey === backspaceKey\n const backspacedChar = backspaceWasPressed\n ? prevValue.slice(selectionStart + (selection ? 0 : -1), selectionEnd)\n : null\n const decimalWasPressed = [\n decimalSeparatorKey,\n numericKeypadDecimal,\n ].includes(pressedKey as string)\n const decimalPressedForInteger =\n decimalWasPressed && verifiedDecimalScale === 0\n const deleteWasPressed = [deleteKey, numericKeypadDel].includes(\n pressedKey as string\n )\n const deletedChar = deleteWasPressed\n ? prevValue.slice(selectionStart, selectionEnd + (selection ? 0 : 1))\n : null\n\n const thousandsSeparatorWasBackspaced =\n backspaceWasPressed && backspacedChar === group\n const thousandsSeparatorWasDeleted = deleteWasPressed && deletedChar === group\n\n return {\n backspaceWasPressed,\n backspacedChar,\n decimalWasPressed,\n decimalPressedForInteger,\n deleteWasPressed,\n deletedChar,\n thousandsSeparatorWasBackspaced,\n thousandsSeparatorWasDeleted,\n }\n}\n\nexport function prepareValueToFormatting(\n decimal: string,\n decimalSeparatorKey: string,\n group: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n verifiedDecimalScale: number,\n value: string\n) {\n const {\n decimalPressedForInteger,\n thousandsSeparatorWasBackspaced,\n thousandsSeparatorWasDeleted,\n } = getPressedKeyInfo(\n decimalSeparatorKey,\n group,\n pressedKey,\n prevCursorPosition,\n prevValue,\n verifiedDecimalScale\n )\n\n // Remove preceding/following integer digit instead of thousands separator\n if (thousandsSeparatorWasBackspaced || thousandsSeparatorWasDeleted) {\n const { selectionEnd, selection } = prevCursorPosition\n\n const getCursorShift = () => {\n if (thousandsSeparatorWasDeleted) {\n const deletedAsSelection = selection === group\n return deletedAsSelection ? 0 : 1\n }\n if (thousandsSeparatorWasBackspaced) return -2\n return 0\n }\n\n const indexOfIntegerDigitToRemove = selectionEnd + getCursorShift()\n\n return prevValue\n .split(emptyString)\n .filter((_, i) => i !== indexOfIntegerDigitToRemove)\n .join(emptyString)\n }\n\n // Ignore typing decimal separator for integer\n if (decimalPressedForInteger) {\n return value.replace(new RegExp(`[${decimal}]`, 'g'), emptyString)\n }\n\n return value\n}\n\nexport function getNewCursorPosition(\n decimal: string,\n decimalSeparatorKey: string,\n group: string,\n newValue: string,\n pressedKey: PressedKey,\n prevCursorPosition: CursorPosition,\n prevValue: string,\n value: string,\n verifiedDecimalScale: number,\n locale: Locale,\n fillDecimalScale: FillDecimalScaleVariant\n) {\n const fixedDecimalScale = fillDecimalScale === 'always'\n\n const { length: prevLength, fractionLength: prevFractionLength } =\n getLengthInfo(locale, prevValue, verifiedDecimalScale, fillDecimalScale)\n\n const {\n length: newLength,\n safeLength: newSafeLength,\n integerLength: newIntegerLength,\n safeIntegerLength: newSafeIntegerLength,\n fractionLength: newFractionLength,\n safeFractionLength: newSafeFractionLength,\n } = getLengthInfo(locale, newValue, verifiedDecimalScale, fillDecimalScale)\n\n const {\n backspaceWasPressed,\n backspacedChar,\n decimalWasPressed,\n deleteWasPressed,\n thousandsSeparatorWasBackspaced,\n } = getPressedKeyInfo(\n decimalSeparatorKey,\n group,\n pressedKey,\n prevCursorPosition,\n prevValue,\n verifiedDecimalScale\n )\n\n const digitTyped = pressedKey && /\\d/g.test(pressedKey)\n const digitBackspaced =\n backspaceWasPressed && backspacedChar && /\\d/g.test(backspacedChar)\n const decimalBackspaced = backspaceWasPressed && backspacedChar === decimal\n\n const { selectionStart, selectionEnd, selection } = prevCursorPosition\n\n const defaultPosition = Math.max(\n selectionEnd + (newValue.length - prevValue.length),\n 0\n )\n\n const isPrevValueNegative = isValidNegative(prevValue)\n\n const isNewValueNegative = isValidNegative(newValue)\n\n const isDecimalAllowed = verifiedDecimalScale > 0\n\n const digitTypedBeforeMinus =\n isPrevValueNegative && selectionEnd === 0 && digitTyped\n\n const dotWithoutAnyDigitBefore = value.startsWith(decimal) && digitTyped\n const minusWithDotWithoutAnyDigitBefore =\n value.startsWith(minus + decimal) && digitTyped\n\n const leadingZeroAdded =\n pressedKey === '0' && selectionEnd === (isPrevValueNegative ? 1 : 0)\n\n const prevIndexOfDecimalSeparator = prevValue.indexOf(decimal)\n const prevCursorPositionInDecimalArea =\n prevIndexOfDecimalSeparator > -1 &&\n prevIndexOfDecimalSeparator < selectionEnd\n const prevCursorPositionInIntegerArea =\n prevIndexOfDecimalSeparator === -1 ||\n prevIndexOfDecimalSeparator >= selectionEnd\n\n const filledIntegerScaleDigitWasChanged =\n digitTyped &&\n prevCursorPositionInIntegerArea &&\n selectionEnd !== prevValue.length &&\n newLength === prevLength &&\n (newLength === newSafeLength || newIntegerLength === newSafeIntegerLength)\n\n const isDecimalScaleFilled =\n isDecimalAllowed &&\n newFractionLength === prevFractionLength &&\n newFractionLength === newSafeFractionLength\n\n const filledDecimalScaleDigitWasBackspaced =\n isDecimalScaleFilled && prevCursorPositionInDecimalArea && digitBackspaced\n\n const filledDecimalScaleDigitWasChanged =\n isDecimalScaleFilled && prevCursorPositionInDecimalArea && digitTyped\n\n // Manage cursor when decimalSeparator typed in a new place of a decimal-allowed number\n const decimalNewPosition = newValue.indexOf(decimal)\n const restructuredByDecimal =\n isDecimalAllowed && decimalWasPressed && decimalNewPosition > -1\n\n // Preserve cursor after first typed digit and before decimal separator\n const fixedDecimalScaleFirstTyping =\n fixedDecimalScale &&\n value.length === (isNewValueNegative ? 2 : 1) &&\n newValue.charAt(isNewValueNegative ? 1 : 0) === pressedKey\n\n // Preserve cursor before \"negative\" sign\n const isLeadingZerosRemovedOnPrecedingDigitBackspace =\n backspaceWasPressed &&\n defaultPosition === 0 &&\n selectionEnd - defaultPosition > 1\n const keepCursorBeforeNegativeSign =\n isNewValueNegative && isLeadingZerosRemovedOnPrecedingDigitBackspace\n\n const getPositionOnRestructuringByDecimal = () => {\n return prevCursorPositionInDecimalArea\n ? newValue.length\n : decimalNewPosition + 1\n }\n\n const getPositionOnDecimalBackspace = () => {\n const removedCharShift = 1\n const valueLength = newValue.length\n\n if (prevFractionLength === 0) {\n return valueLength\n }\n\n let delta = 0\n let anchorDigitIndexFromTheEnd = 0\n\n newValue\n .split(emptyString)\n .reverse()\n .forEach((char, i) => {\n if (char === group) {\n delta++\n }\n if (i - delta === prevFractionLength - 1) {\n anchorDigitIndexFromTheEnd = i\n }\n })\n\n return valueLength - removedCharShift - anchorDigitIndexFromTheEnd\n }\n\n const getPositionOnDelete = () => {\n const firstSymbolDeleted = selectionEnd === 0\n\n if (firstSymbolDeleted) {\n return 0\n }\n\n const removedCharShift = 1\n const anchorDigitIndex =\n prevValue\n .slice(0, selectionEnd)\n .replace(new RegExp(`[${group}]`, 'g'), emptyString).length - 1\n\n let delta = 0\n let cursorPosition = 0\n\n newValue.split(emptyString).forEach((char, i) => {\n if (char === group) {\n delta++\n }\n if (i - delta === anchorDigitIndex) {\n cursorPosition = i\n }\n })\n\n return cursorPosition + removedCharShift\n }\n\n const getPositionOnFilledIntegerScaleDigitChange = () => {\n const getGroupsNumber = (value: string, start?: number, end?: number) => {\n return (\n value.slice(start, end).match(new RegExp(`[${group}]`, 'g'))?.length ||\n 0\n )\n }\n\n const numberOfGroupsBeforeCursorPrevValue = getGroupsNumber(\n prevValue,\n 0,\n selectionEnd\n )\n const numberOfGroupsBeforeCursorNewValue = getGroupsNumber(\n newValue,\n 0,\n selectionEnd + 1\n )\n const groupsDiffBeforeCursor =\n numberOfGroupsBeforeCursorNewValue - numberOfGroupsBeforeCursorPrevValue\n\n const typedDigitShift = leadingZeroAdded ? 0 : 1\n\n return selectionEnd + groupsDiffBeforeCursor + typedDigitShift\n }\n\n const getPositionOnSelectionChange = () => {\n if (restructuredByDecimal) return getPositionOnRestructuringByDecimal()\n\n const getPasteText = () => {\n const beforeSelectionPartLength = prevValue.slice(\n 0,\n selectionStart\n ).length\n const afterSelectionPartLength = prevValue.slice(selectionEnd).length\n const valueWithoutBeforePart = value.slice(beforeSelectionPartLength)\n\n const pasteText = valueWithoutBeforePart.slice(\n 0,\n valueWithoutBeforePart.length - afterSelectionPartLength\n )\n\n return pasteText\n }\n\n const {\n integer: pasteInteger,\n decimal: pasteDecimal,\n fraction: pasteFraction,\n } = unformat(locale, getPasteText())\n\n const refinedPasteText = `${\n selectionStart === 0\n ? refineIntegerFromLeadingZeroes(pasteInteger)\n : pasteInteger\n }${pasteDecimal}${pasteFraction}`\n\n const refinedPasteTextLength = refinedPasteText.length\n\n const anchorDigitIndexRaw =\n prevValue\n .slice(0, selectionStart)\n .replace(new RegExp(`[${group}${decimal}]`, 'g'), emptyString).length -\n 1\n\n const anchorDigitIndexBase =\n anchorDigitIndexRaw > -1 ? anchorDigitIndexRaw : 0\n\n const anchorDigitIndexShift =\n anchorDigitIndexRaw > -1\n ? refinedPasteTextLength\n : Math.max(refinedPasteTextLength - 1, 0)\n\n const anchorIndex = anchorDigitIndexBase + anchorDigitIndexShift\n\n const getCursorPositionShift = () => {\n const negativeToPositiveConversion =\n isValidNegative(refinedPasteText) && isPrevValueNegative\n\n const integerZeroBasedSelectionRemoval =\n refinedPasteTextLength === 0 && selectionStart === 0\n\n const integerPartRemoved =\n integerZeroBasedSelectionRemoval &&\n selectionEnd === prevIndexOfDecimalSeparator\n\n const fractionZeroBasedSelectionRemoval =\n (refinedPasteTextLength === 0 || refinedPasteText === minus) &&\n selectionStart === prevIndexOfDecimalSeparator + 1\n\n const groupSelectionBackspaced =\n selection === group && thousandsSeparatorWasBackspaced\n\n if (negativeToPositiveConversion || integerPartRemoved) return -1\n if (integerZeroBasedSelectionRemoval || groupSelectionBackspaced) return 0\n if (fractionZeroBasedSelectionRemoval) return 2\n\n return 1\n }\n\n let delta = 0\n let cursorPosition = 0\n\n for (let i = 0; i < newValue.length; i++) {\n const char = newValue.charAt(i)\n\n const isDeltaIncrementer =\n char === group || (char === decimal && !pasteDecimal)\n\n if (isDeltaIncrementer) {\n delta++\n }\n\n if (i - delta === anchorIndex) {\n cursorPosition = i + getCursorPositionShift()\n break\n }\n\n if (i + 1 === newValue.length) {\n cursorPosition = newValue.length\n }\n }\n\n return cursorPosition\n }\n\n const getNewPosition = () => {\n if (selection) {\n return getPositionOnSelectionChange()\n }\n\n if (digitTypedBeforeMinus) {\n return 2\n }\n if (dotWithoutAnyDigitBefore) {\n return 3\n }\n if (minusWithDotWithoutAnyDigitBefore) {\n return 4\n }\n\n if (filledIntegerScaleDigitWasChanged) {\n return getPositionOnFilledIntegerScaleDigitChange()\n }\n\n if (deleteWasPressed) {\n return getPositionOnDelete()\n }\n\n if (decimalBackspaced) {\n return getPositionOnDecimalBackspace()\n }\n\n if (filledDecimalScaleDigitWasBackspaced) {\n return selectionEnd - 1\n }\n\n if (filledDecimalScaleDigitWasChanged) {\n return selectionEnd + 1\n }\n\n if (restructuredByDecimal) {\n return getPositionOnRestructuringByDecimal()\n }\n\n if (fixedDecimalScaleFirstTyping) {\n return isNewValueNegative ? 2 : 1\n }\n\n if (keepCursorBeforeNegativeSign) {\n return 1\n }\n\n return defaultPosition\n }\n\n return getNewPosition()\n}\n\nexport function identicalLocales(one: Locale, two: Locale) {\n const array1 = Array.isArray(one) ? one : [one]\n const array2 = Array.isArray(two) ? two : [two]\n\n return array1.join() === array2.join()\n}\n"],"mappings":"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"}
|
|
@@ -2,6 +2,6 @@ import styled from 'styled-components';
|
|
|
2
2
|
export var arrowSize = 8;
|
|
3
3
|
export var StyledArrow = /*#__PURE__*/styled.div.withConfig({
|
|
4
4
|
displayName: "StyledArrow",
|
|
5
|
-
componentId: "core-
|
|
5
|
+
componentId: "core-12_21_1__sc-1epxw7u-0"
|
|
6
6
|
})(["position:absolute;background:inherit;width:", "px;height:", "px;transform:rotate(45deg);"], arrowSize, arrowSize);
|
|
7
7
|
//# sourceMappingURL=OverlayArrow.styles.js.map
|
|
@@ -11,52 +11,52 @@ var outerPageSpacing = spacing.lg;
|
|
|
11
11
|
var outerPageSpacingSmaller = spacing.md;
|
|
12
12
|
export var StyledPageHeader = /*#__PURE__*/styled.div.withConfig({
|
|
13
13
|
displayName: "StyledPageHeader",
|
|
14
|
-
componentId: "core-
|
|
14
|
+
componentId: "core-12_21_1__sc-1cvdbsv-0"
|
|
15
15
|
})(["padding-top:", "px;padding-right:", "px;padding-left:", "px;@media ", "{padding-right:", "px;padding-left:", "px;}", ""], headerVerticalSpacing, outerPageSpacing, outerPageSpacing, mediaBreakpointsDown.tabletMd, outerPageSpacingSmaller, outerPageSpacingSmaller, function (_ref) {
|
|
16
16
|
var $transparent = _ref.$transparent;
|
|
17
17
|
return !$transparent && css(["", " background-color:", ";"], getShadow(1.5), colors.white);
|
|
18
18
|
});
|
|
19
19
|
var StyledPageHeaderItem = /*#__PURE__*/styled.div.withConfig({
|
|
20
20
|
displayName: "StyledPageHeaderItem",
|
|
21
|
-
componentId: "core-
|
|
21
|
+
componentId: "core-12_21_1__sc-1cvdbsv-1"
|
|
22
22
|
})(["margin-top:", "px;&:first-child{margin-top:0;}"], headerVerticalSpacing);
|
|
23
23
|
export var StyledPageTitle = /*#__PURE__*/styled(StyledPageHeaderItem).withConfig({
|
|
24
24
|
displayName: "StyledPageTitle",
|
|
25
|
-
componentId: "core-
|
|
25
|
+
componentId: "core-12_21_1__sc-1cvdbsv-2"
|
|
26
26
|
})(["&:last-child{padding-bottom:", "px;}"], headerVerticalSpacing);
|
|
27
27
|
export var StyledPageBreadcrumbs = /*#__PURE__*/styled(StyledPageHeaderItem).attrs({
|
|
28
28
|
as: 'nav'
|
|
29
29
|
}).withConfig({
|
|
30
30
|
displayName: "StyledPageBreadcrumbs",
|
|
31
|
-
componentId: "core-
|
|
31
|
+
componentId: "core-12_21_1__sc-1cvdbsv-3"
|
|
32
32
|
})([""]);
|
|
33
33
|
export var StyledPageBanner = /*#__PURE__*/styled(StyledPageHeaderItem).withConfig({
|
|
34
34
|
displayName: "StyledPageBanner",
|
|
35
|
-
componentId: "core-
|
|
35
|
+
componentId: "core-12_21_1__sc-1cvdbsv-4"
|
|
36
36
|
})([""]);
|
|
37
37
|
export var getActions = function getActions() {
|
|
38
38
|
return css(["flex-shrink:0;padding-left:", "px;> button,> a{&:first-child{margin-left:0;}margin-left:", "px;}"], spacing.xl, spacing.sm);
|
|
39
39
|
};
|
|
40
40
|
export var StyledPageActions = /*#__PURE__*/styled.div.withConfig({
|
|
41
41
|
displayName: "StyledPageActions",
|
|
42
|
-
componentId: "core-
|
|
42
|
+
componentId: "core-12_21_1__sc-1cvdbsv-5"
|
|
43
43
|
})(["", ""], getActions());
|
|
44
44
|
export var StyledPageTabs = /*#__PURE__*/styled(StyledPageHeaderItem).withConfig({
|
|
45
45
|
displayName: "StyledPageTabs",
|
|
46
|
-
componentId: "core-
|
|
46
|
+
componentId: "core-12_21_1__sc-1cvdbsv-6"
|
|
47
47
|
})([""]);
|
|
48
48
|
export var StyledBody = /*#__PURE__*/styled.div.withConfig({
|
|
49
49
|
displayName: "StyledBody",
|
|
50
|
-
componentId: "core-
|
|
50
|
+
componentId: "core-12_21_1__sc-1cvdbsv-7"
|
|
51
51
|
})(["padding-top:", "px;padding-left:", "px;padding-right:", "px;@media ", "{padding-top:", "px;padding-left:", "px;padding-right:", "px;}"], outerPageSpacing, outerPageSpacing, outerPageSpacing, mediaBreakpointsDown.tabletMd, outerPageSpacingSmaller, outerPageSpacingSmaller, outerPageSpacingSmaller);
|
|
52
52
|
var navigationWidth = 200;
|
|
53
53
|
export var StyledNavigation = /*#__PURE__*/styled.div.withConfig({
|
|
54
54
|
displayName: "StyledNavigation",
|
|
55
|
-
componentId: "core-
|
|
55
|
+
componentId: "core-12_21_1__sc-1cvdbsv-8"
|
|
56
56
|
})(["float:left;max-height:100vh;min-width:", "px;overflow-y:auto;position:sticky;top:0;width:", "px;", "{padding:20px ", "px 0 0;}@media screen and (max-width:1024px){display:none;}"], navigationWidth, navigationWidth, StyledAnchorNavigation, spacing.sm);
|
|
57
57
|
export var StyledContent = /*#__PURE__*/styled.div.withConfig({
|
|
58
58
|
displayName: "StyledContent",
|
|
59
|
-
componentId: "core-
|
|
59
|
+
componentId: "core-12_21_1__sc-1cvdbsv-9"
|
|
60
60
|
})([""]);
|
|
61
61
|
var panelWidth = 400;
|
|
62
62
|
var zIndexes = {
|
|
@@ -69,7 +69,7 @@ export var animationDuration = {
|
|
|
69
69
|
};
|
|
70
70
|
export var StyledFooter = /*#__PURE__*/styled.div.withConfig({
|
|
71
71
|
displayName: "StyledFooter",
|
|
72
|
-
componentId: "core-
|
|
72
|
+
componentId: "core-12_21_1__sc-1cvdbsv-10"
|
|
73
73
|
})(["background-color:", ";", " position:sticky;bottom:0;z-index:", ";", ""], colors.white, function (_ref2) {
|
|
74
74
|
var $hasShadow = _ref2.$hasShadow;
|
|
75
75
|
return $hasShadow && getShadow(2, 'top');
|
|
@@ -79,7 +79,7 @@ export var StyledFooter = /*#__PURE__*/styled.div.withConfig({
|
|
|
79
79
|
});
|
|
80
80
|
export var StyledAside = /*#__PURE__*/styled.div.withConfig({
|
|
81
81
|
displayName: "StyledAside",
|
|
82
|
-
componentId: "core-
|
|
82
|
+
componentId: "core-12_21_1__sc-1cvdbsv-11"
|
|
83
83
|
})(["", " @media ", "{position:absolute;right:0;}"], function (_ref4) {
|
|
84
84
|
var $closed = _ref4.$closed,
|
|
85
85
|
$open = _ref4.$open;
|
|
@@ -99,7 +99,7 @@ var getPanelAnimation = function getPanelAnimation() {
|
|
|
99
99
|
};
|
|
100
100
|
export var StyledAsidePanel = /*#__PURE__*/styled.div.withConfig({
|
|
101
101
|
displayName: "StyledAsidePanel",
|
|
102
|
-
componentId: "core-
|
|
102
|
+
componentId: "core-12_21_1__sc-1cvdbsv-12"
|
|
103
103
|
})(["", " @media ", "{", "}", " ", " border-left:1px solid ", ";width:", "px;position:fixed;background-color:", ";overflow:auto;z-index:", ";", " ", ""], function (_ref7) {
|
|
104
104
|
var $rightOffset = _ref7.$rightOffset;
|
|
105
105
|
return css(["@media ", "{", " border-left:0;z-index:", ";right:", "px;}"], mediaBreakpointsDown.tabletMd, getShadow(2), zIndexes.panelNarrowScreen, $rightOffset);
|
|
@@ -118,7 +118,7 @@ export var StyledAsidePanel = /*#__PURE__*/styled.div.withConfig({
|
|
|
118
118
|
});
|
|
119
119
|
export var StyledPageMain = /*#__PURE__*/styled.div.withConfig({
|
|
120
120
|
displayName: "StyledPageMain",
|
|
121
|
-
componentId: "core-
|
|
121
|
+
componentId: "core-12_21_1__sc-1cvdbsv-13"
|
|
122
122
|
})(["position:relative;max-width:100%;background-color:", ";", " ", ""], colors.gray96, function () {
|
|
123
123
|
return isIE11() && css(["flex:1 0 0%;"]);
|
|
124
124
|
}, function (_ref10) {
|
|
@@ -133,13 +133,13 @@ export var StyledPageMain = /*#__PURE__*/styled.div.withConfig({
|
|
|
133
133
|
});
|
|
134
134
|
export var StyledPageContainer = /*#__PURE__*/styled.div.withConfig({
|
|
135
135
|
displayName: "StyledPageContainer",
|
|
136
|
-
componentId: "core-
|
|
136
|
+
componentId: "core-12_21_1__sc-1cvdbsv-14"
|
|
137
137
|
})(["display:grid;grid-template-columns:1fr auto;", ""], function () {
|
|
138
138
|
return isIE11() && css(["display:flex;flex-wrap:wrap;"]);
|
|
139
139
|
});
|
|
140
140
|
export var StyledAsideFluidContainer = /*#__PURE__*/styled.div.withConfig({
|
|
141
141
|
displayName: "StyledAsideFluidContainer",
|
|
142
|
-
componentId: "core-
|
|
142
|
+
componentId: "core-12_21_1__sc-1cvdbsv-15"
|
|
143
143
|
})(["", ""], function (_ref11) {
|
|
144
144
|
var $closed = _ref11.$closed,
|
|
145
145
|
$open = _ref11.$open;
|
|
@@ -3,6 +3,6 @@ import { colors } from '../../_styles/colors';
|
|
|
3
3
|
import { spacing } from '../../_styles/spacing';
|
|
4
4
|
export var StyledPageFooter = /*#__PURE__*/styled.footer.withConfig({
|
|
5
5
|
displayName: "StyledPageFooter",
|
|
6
|
-
componentId: "core-
|
|
6
|
+
componentId: "core-12_21_1__sc-1f0zfyf-0"
|
|
7
7
|
})(["display:flex;align-items:center;justify-content:space-between;background-color:", ";padding:", "px;width:100%;box-shadow:0 -2px 6px 0 rgba(0,0,0,0.1);position:sticky;bottom:0;"], colors.white, spacing.lg);
|
|
8
8
|
//# sourceMappingURL=PageFooterTemplate.styles.js.map
|
|
@@ -5,17 +5,17 @@ import { colors } from '../../_styles/colors';
|
|
|
5
5
|
import { spacing } from '../../_styles/spacing';
|
|
6
6
|
export var StyledPageHeader = /*#__PURE__*/styled(Page.Header).withConfig({
|
|
7
7
|
displayName: "StyledPageHeader",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_21_1__sc-1d5kop0-0"
|
|
9
9
|
})(["border-bottom:1px solid ", ";padding-top:", "px;", ""], colors.gray85, spacing.lg, function (p) {
|
|
10
10
|
return p.$hasPaddingBottom && "padding-bottom: ".concat(spacing.lg, "px;");
|
|
11
11
|
});
|
|
12
12
|
export var StyledActions = /*#__PURE__*/styled(Box).withConfig({
|
|
13
13
|
displayName: "StyledActions",
|
|
14
|
-
componentId: "core-
|
|
14
|
+
componentId: "core-12_21_1__sc-1d5kop0-1"
|
|
15
15
|
})(["width:fit-content;"]);
|
|
16
16
|
export var StyledToggleActionBox = /*#__PURE__*/styled(Box).withConfig({
|
|
17
17
|
displayName: "StyledToggleActionBox",
|
|
18
|
-
componentId: "core-
|
|
18
|
+
componentId: "core-12_21_1__sc-1d5kop0-2"
|
|
19
19
|
})(["bottom:", "px;position:relative;padding-left:48px;"], function (p) {
|
|
20
20
|
return p.$moveCloserToBottom ? 6 : spacing.lg;
|
|
21
21
|
});
|
|
@@ -10,10 +10,10 @@ var panelWidthSmall = 360;
|
|
|
10
10
|
export var mobileBreakpoint = 440;
|
|
11
11
|
export var StyledPageAside = /*#__PURE__*/styled(Page.Aside).withConfig({
|
|
12
12
|
displayName: "StyledPageAside",
|
|
13
|
-
componentId: "core-
|
|
13
|
+
componentId: "core-12_21_1__sc-1p7nu53-0"
|
|
14
14
|
})(["position:sticky;top:0;right:0;max-height:100vh;width:100%;height:100%;@media ", "{position:sticky;max-width:", "px;flex-basis:", "px;}", "{@media ", "{max-width:", "px;}}", "{position:sticky;top:0;right:0;box-shadow:none;animation:none;padding-bottom:68px;@media ", "{width:", "px;}@media (max-width:", "px){padding-bottom:0;}}", "{position:fixed;bottom:0;display:flex;width:100%;max-width:400px;@media ", "{max-width:", "px;}}"], mediaBreakpointsDown.tabletLg, panelWidthSmall, panelWidthSmall, StyledAsideFluidContainer, mediaBreakpointsDown.tabletLg, panelWidthSmall, StyledAsidePanel, mediaBreakpointsDown.tabletLg, panelWidthSmall, mobileBreakpoint, StyledPanelFooter, mediaBreakpointsDown.tabletLg, panelWidthSmall);
|
|
15
15
|
export var StyledModal = /*#__PURE__*/styled(Modal).withConfig({
|
|
16
16
|
displayName: "StyledModal",
|
|
17
|
-
componentId: "core-
|
|
17
|
+
componentId: "core-12_21_1__sc-1p7nu53-1"
|
|
18
18
|
})(["top:", "px;bottom:", "px;max-width:416px;transform:none;", "{max-height:100vh;}@media (max-width:", "px){top:0;bottom:0;left:0;right:0;max-width:100%;}"], spacing.md, spacing.md, StyledModalContent, mobileBreakpoint);
|
|
19
19
|
//# sourceMappingURL=PagePaneTemplate.styles.js.map
|
|
@@ -5,14 +5,14 @@ import { spacing } from '../../_styles/spacing';
|
|
|
5
5
|
export var mobileBreakpoint = 440;
|
|
6
6
|
export var StyledPageWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
7
7
|
displayName: "StyledPageWrapper",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_21_1__sc-uuo7st-0"
|
|
9
9
|
})(["display:flex;flex-direction:column;"]);
|
|
10
10
|
export var StyledPageBodyWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
11
11
|
displayName: "StyledPageBodyWrapper",
|
|
12
|
-
componentId: "core-
|
|
12
|
+
componentId: "core-12_21_1__sc-uuo7st-1"
|
|
13
13
|
})(["display:grid;grid-template-columns:1fr auto;"]);
|
|
14
14
|
export var StyledPageBody = /*#__PURE__*/styled(Page.Body).withConfig({
|
|
15
15
|
displayName: "StyledPageBody",
|
|
16
|
-
componentId: "core-
|
|
16
|
+
componentId: "core-12_21_1__sc-uuo7st-2"
|
|
17
17
|
})(["padding-bottom:", "px;@media ", "{padding:", "px;}"], spacing.lg, mediaBreakpointsDown.desktopMd, spacing.md);
|
|
18
18
|
//# sourceMappingURL=PageTemplate.styles.js.map
|
|
@@ -5,22 +5,22 @@ import { Typography } from '../Typography/Typography';
|
|
|
5
5
|
import { spacing } from '../_styles/spacing';
|
|
6
6
|
export var StyledContainer = /*#__PURE__*/styled.div.withConfig({
|
|
7
7
|
displayName: "StyledContainer",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_21_1__sc-fy34i1-0"
|
|
9
9
|
})(["display:flex;align-items:center;"]);
|
|
10
10
|
export var StyledPageCount = /*#__PURE__*/styled(Typography).withConfig({
|
|
11
11
|
displayName: "StyledPageCount",
|
|
12
|
-
componentId: "core-
|
|
12
|
+
componentId: "core-12_21_1__sc-fy34i1-1"
|
|
13
13
|
})(["margin-right:", "px;"], spacing.xl);
|
|
14
14
|
export var StyledCurrentPage = /*#__PURE__*/styled(Typography).withConfig({
|
|
15
15
|
displayName: "StyledCurrentPage",
|
|
16
|
-
componentId: "core-
|
|
16
|
+
componentId: "core-12_21_1__sc-fy34i1-2"
|
|
17
17
|
})(["margin-right:", "px;"], spacing.sm);
|
|
18
18
|
export var StyledButton = /*#__PURE__*/styled(Button).withConfig({
|
|
19
19
|
displayName: "StyledButton",
|
|
20
|
-
componentId: "core-
|
|
20
|
+
componentId: "core-12_21_1__sc-fy34i1-3"
|
|
21
21
|
})(["margin-left:", "px;"], spacing.sm);
|
|
22
22
|
export var StyledOverlay = /*#__PURE__*/styled(Card).withConfig({
|
|
23
23
|
displayName: "StyledOverlay",
|
|
24
|
-
componentId: "core-
|
|
24
|
+
componentId: "core-12_21_1__sc-fy34i1-4"
|
|
25
25
|
})(["max-height:300px;max-width:248px;"]);
|
|
26
26
|
//# sourceMappingURL=Pagination.styles.js.map
|
|
@@ -10,15 +10,15 @@ var gutter = /*#__PURE__*/css(["> * + *{margin-left:", "px;}"], spacing.sm);
|
|
|
10
10
|
var panel = /*#__PURE__*/css(["display:flex;align-items:center;padding:", "px;background:", ";"], spacing.lg, colors.white);
|
|
11
11
|
export var StyledHeader = /*#__PURE__*/styled.div.withConfig({
|
|
12
12
|
displayName: "StyledHeader",
|
|
13
|
-
componentId: "core-
|
|
13
|
+
componentId: "core-12_21_1__sc-lidix2-0"
|
|
14
14
|
})(["border-bottom:1px solid ", ";", ""], colors.gray85, panel);
|
|
15
15
|
export var StyledTitle = /*#__PURE__*/styled(Typography).withConfig({
|
|
16
16
|
displayName: "StyledTitle",
|
|
17
|
-
componentId: "core-
|
|
17
|
+
componentId: "core-12_21_1__sc-lidix2-1"
|
|
18
18
|
})(["flex-grow:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;"]);
|
|
19
19
|
export var StyledHeaderBackAction = /*#__PURE__*/styled.div.withConfig({
|
|
20
20
|
displayName: "StyledHeaderBackAction",
|
|
21
|
-
componentId: "core-
|
|
21
|
+
componentId: "core-12_21_1__sc-lidix2-2"
|
|
22
22
|
})(["transition:all 300ms ease-out;flex-shrink:0;width:", "px;margin-right:", "px;opacity:", ";transform:translateX( ", "px );"], function (_ref) {
|
|
23
23
|
var active = _ref.active;
|
|
24
24
|
return active ? headerActionSize : 0;
|
|
@@ -34,38 +34,38 @@ export var StyledHeaderBackAction = /*#__PURE__*/styled.div.withConfig({
|
|
|
34
34
|
});
|
|
35
35
|
export var StyledMoreMenu = /*#__PURE__*/styled(Card).withConfig({
|
|
36
36
|
displayName: "StyledMoreMenu",
|
|
37
|
-
componentId: "core-
|
|
37
|
+
componentId: "core-12_21_1__sc-lidix2-3"
|
|
38
38
|
})(["max-height:128px;"]);
|
|
39
39
|
export var StyledHeaderActions = /*#__PURE__*/styled.div.withConfig({
|
|
40
40
|
displayName: "StyledHeaderActions",
|
|
41
|
-
componentId: "core-
|
|
41
|
+
componentId: "core-12_21_1__sc-lidix2-4"
|
|
42
42
|
})(["display:flex;margin-left:", "px;flex-shrink:0;", ""], spacing.lg, gutter);
|
|
43
43
|
export var StyledCloseButton = /*#__PURE__*/styled.div.withConfig({
|
|
44
44
|
displayName: "StyledCloseButton",
|
|
45
|
-
componentId: "core-
|
|
45
|
+
componentId: "core-12_21_1__sc-lidix2-5"
|
|
46
46
|
})(["margin-left:", "px;"], spacing.sm);
|
|
47
47
|
export var StyledBody = /*#__PURE__*/styled.div.withConfig({
|
|
48
48
|
displayName: "StyledBody",
|
|
49
|
-
componentId: "core-
|
|
49
|
+
componentId: "core-12_21_1__sc-lidix2-6"
|
|
50
50
|
})(["height:100%;background:", ";overflow-y:auto;> ", "{padding-left:", "px;padding-right:", "px;", "{padding-left:0;padding-right:0;}&:first-child > ", "{padding-top:", "px;}}"], function (_ref5) {
|
|
51
51
|
var secondaryBgColor = _ref5.secondaryBgColor;
|
|
52
52
|
return secondaryBgColor ? colors.gray96 : colors.white;
|
|
53
53
|
}, StyledSection, spacing.lg, spacing.lg, StyledSection, StyledSectionInner, spacing.lg);
|
|
54
54
|
export var StyledPanel = /*#__PURE__*/styled.aside.withConfig({
|
|
55
55
|
displayName: "StyledPanel",
|
|
56
|
-
componentId: "core-
|
|
56
|
+
componentId: "core-12_21_1__sc-lidix2-7"
|
|
57
57
|
})(["display:flex;flex-direction:column;width:100%;height:100%;background:", ";overflow:hidden;"], colors.white);
|
|
58
58
|
export var StyledFooterNotation = /*#__PURE__*/styled.div.withConfig({
|
|
59
59
|
displayName: "StyledFooterNotation",
|
|
60
|
-
componentId: "core-
|
|
60
|
+
componentId: "core-12_21_1__sc-lidix2-8"
|
|
61
61
|
})(["flex-grow:1;"]);
|
|
62
62
|
export var StyledFooterActions = /*#__PURE__*/styled.div.withConfig({
|
|
63
63
|
displayName: "StyledFooterActions",
|
|
64
|
-
componentId: "core-
|
|
64
|
+
componentId: "core-12_21_1__sc-lidix2-9"
|
|
65
65
|
})(["", ""], gutter);
|
|
66
66
|
export var StyledFooter = /*#__PURE__*/styled.div.withConfig({
|
|
67
67
|
displayName: "StyledFooter",
|
|
68
|
-
componentId: "core-
|
|
68
|
+
componentId: "core-12_21_1__sc-lidix2-10"
|
|
69
69
|
})(["border-top:1px solid ", ";justify-content:flex-end;", " ", ""], colors.gray85, panel, function (_ref6) {
|
|
70
70
|
var $hasShadow = _ref6.$hasShadow;
|
|
71
71
|
return $hasShadow && css(["box-shadow:0 -4px 6px 0 #0000001a;z-index:1;"]);
|
package/dist/Pill/Pill.styles.js
CHANGED
|
@@ -6,14 +6,14 @@ import { PillColorPalets } from './Pill.colorPalette';
|
|
|
6
6
|
var pillButtonSize = 16;
|
|
7
7
|
export var StyledPill = /*#__PURE__*/styled.span.withConfig({
|
|
8
8
|
displayName: "StyledPill",
|
|
9
|
-
componentId: "core-
|
|
9
|
+
componentId: "core-12_21_1__sc-99e1t5-0"
|
|
10
10
|
})(["", " display:inline-block;padding:1px ", "px;border:1px solid;border-radius:10px;font-weight:600;& + &{margin-left:", "px;}", ""], getTypographyIntent('small'), spacing.sm, spacing.xs, function (_ref) {
|
|
11
11
|
var $color = _ref.$color;
|
|
12
12
|
return css(["background-color:", ";border-color:", ";color:", ";"], PillColorPalets[$color].backgroundColor, PillColorPalets[$color].borderColor, PillColorPalets[$color].color);
|
|
13
13
|
});
|
|
14
14
|
export var StyledRemove = /*#__PURE__*/styled(Clear).withConfig({
|
|
15
15
|
displayName: "StyledRemove",
|
|
16
|
-
componentId: "core-
|
|
16
|
+
componentId: "core-12_21_1__sc-99e1t5-1"
|
|
17
17
|
})(["border-radius:100%;cursor:pointer;flex:0 0 auto;height:", "px;margin:0 -", "px 0 ", "px;width:", "px;vertical-align:top;", ""], pillButtonSize, pillButtonSize / 2 - spacing.xxs, spacing.xxs, pillButtonSize, function (_ref2) {
|
|
18
18
|
var $color = _ref2.$color;
|
|
19
19
|
return css(["&:hover{background:", ";color:", ";}"], PillColorPalets[$color].color, PillColorPalets[$color].backgroundColor);
|
|
@@ -6,19 +6,19 @@ import { spacing } from '../_styles/spacing';
|
|
|
6
6
|
var checkedIconPlaceholderWidth = 32;
|
|
7
7
|
export var PillSelectOptionWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
8
8
|
displayName: "PillSelectOptionWrapper",
|
|
9
|
-
componentId: "core-
|
|
9
|
+
componentId: "core-12_21_1__sc-1ai2ze0-0"
|
|
10
10
|
})(["display:flex;align-items:center;justify-content:space-between;"]);
|
|
11
11
|
export var PillSelectCheckedContainer = /*#__PURE__*/styled.div.withConfig({
|
|
12
12
|
displayName: "PillSelectCheckedContainer",
|
|
13
|
-
componentId: "core-
|
|
13
|
+
componentId: "core-12_21_1__sc-1ai2ze0-1"
|
|
14
14
|
})(["align-items:center;color:", ";display:inline-flex;padding-left:", "px;width:", "px;"], colors.blue50, spacing.sm, checkedIconPlaceholderWidth);
|
|
15
15
|
export var PillSelectLabel = /*#__PURE__*/styled(Pill).withConfig({
|
|
16
16
|
displayName: "PillSelectLabel",
|
|
17
|
-
componentId: "core-
|
|
17
|
+
componentId: "core-12_21_1__sc-1ai2ze0-2"
|
|
18
18
|
})(["", ""], getEllipsis);
|
|
19
19
|
export var PillSelectLabelWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
20
20
|
displayName: "PillSelectLabelWrapper",
|
|
21
|
-
componentId: "core-
|
|
21
|
+
componentId: "core-12_21_1__sc-1ai2ze0-3"
|
|
22
22
|
})(["display:flex;max-width:100%;pointer-events:auto;", ""], function (_ref) {
|
|
23
23
|
var disabled = _ref.disabled;
|
|
24
24
|
return disabled && css(["pointer-events:none;"]);
|
|
@@ -5,7 +5,7 @@ import { getShadow } from '../_styles/shadows';
|
|
|
5
5
|
export var popoverArrowSize = 6;
|
|
6
6
|
export var StyledPopoverContent = /*#__PURE__*/styled.span.withConfig({
|
|
7
7
|
displayName: "StyledPopoverContent",
|
|
8
|
-
componentId: "core-
|
|
8
|
+
componentId: "core-12_21_1__sc-1cd0ihn-0"
|
|
9
9
|
})(["background-color:", ";border-radius:", "px;color:", ";display:inline-block;max-width:250px;position:relative;", ""], colors.white, borderRadius.md, colors.gray15, function (_ref) {
|
|
10
10
|
var $block = _ref.$block,
|
|
11
11
|
$fluid = _ref.$fluid;
|
|
@@ -15,6 +15,6 @@ export var StyledPopoverContent = /*#__PURE__*/styled.span.withConfig({
|
|
|
15
15
|
});
|
|
16
16
|
export var StyledPopover = /*#__PURE__*/styled.div.withConfig({
|
|
17
17
|
displayName: "StyledPopover",
|
|
18
|
-
componentId: "core-
|
|
18
|
+
componentId: "core-12_21_1__sc-1cd0ihn-1"
|
|
19
19
|
})(["display:inline-block;", " & + [data-overlay-arrow]{background:", ";}"], getShadow(3), colors.white);
|
|
20
20
|
//# sourceMappingURL=Popover.styles.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import styled from 'styled-components';
|
|
2
2
|
export var StyledPortal = /*#__PURE__*/styled.div.withConfig({
|
|
3
3
|
displayName: "StyledPortal",
|
|
4
|
-
componentId: "core-
|
|
4
|
+
componentId: "core-12_21_1__sc-15o1h2-0"
|
|
5
5
|
})(["left:0;pointer-events:none;position:fixed;top:0;> *{pointer-events:all;}"]);
|
|
6
6
|
//# sourceMappingURL=Portal.styles.js.map
|