@skbkontur/react-ui 4.13.3 → 4.13.4-fix-auto-batch-react18.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.
Files changed (88) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/cjs/components/Button/Button.styles.js +2 -1
  3. package/cjs/components/Button/Button.styles.js.map +1 -1
  4. package/cjs/components/Input/Input.d.ts +8 -4
  5. package/cjs/components/Input/Input.js +32 -6
  6. package/cjs/components/Input/Input.js.map +1 -1
  7. package/cjs/components/Input/Input.md +49 -0
  8. package/cjs/components/Input/Input.styles.js +2 -1
  9. package/cjs/components/Input/Input.styles.js.map +1 -1
  10. package/cjs/components/Loader/Loader.js +1 -3
  11. package/cjs/components/Loader/Loader.js.map +1 -1
  12. package/cjs/components/Modal/Modal.js +1 -2
  13. package/cjs/components/Modal/Modal.js.map +1 -1
  14. package/cjs/components/Modal/Modal.styles.d.ts +0 -2
  15. package/cjs/components/Modal/Modal.styles.js +22 -33
  16. package/cjs/components/Modal/Modal.styles.js.map +1 -1
  17. package/cjs/components/Modal/ModalBody.js +0 -2
  18. package/cjs/components/Modal/ModalBody.js.map +1 -1
  19. package/cjs/components/Modal/ModalFooter.js +2 -5
  20. package/cjs/components/Modal/ModalFooter.js.map +1 -1
  21. package/cjs/components/Modal/ModalHeader.js +1 -6
  22. package/cjs/components/Modal/ModalHeader.js.map +1 -1
  23. package/cjs/components/PasswordInput/PasswordInput.js +5 -5
  24. package/cjs/components/PasswordInput/PasswordInput.js.map +1 -1
  25. package/cjs/components/Toast/Toast.md +2 -2
  26. package/cjs/internal/CustomComboBox/CustomComboBox.js +12 -9
  27. package/cjs/internal/CustomComboBox/CustomComboBox.js.map +1 -1
  28. package/cjs/internal/InputLikeText/InputLikeText.js +4 -1
  29. package/cjs/internal/InputLikeText/InputLikeText.js.map +1 -1
  30. package/cjs/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  31. package/cjs/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  32. package/cjs/internal/ZIndex/ZIndexStorage.js +1 -6
  33. package/cjs/internal/ZIndex/ZIndexStorage.js.map +1 -1
  34. package/cjs/internal/themes/DarkTheme.d.ts +1 -0
  35. package/cjs/internal/themes/DarkTheme.js +6 -5
  36. package/cjs/internal/themes/DarkTheme.js.map +1 -1
  37. package/cjs/internal/themes/DefaultTheme.d.ts +1 -0
  38. package/cjs/internal/themes/DefaultTheme.js +4 -3
  39. package/cjs/internal/themes/DefaultTheme.js.map +1 -1
  40. package/cjs/lib/ModalStack.js +4 -2
  41. package/cjs/lib/ModalStack.js.map +1 -1
  42. package/cjs/lib/net/fetch.js +4 -4
  43. package/cjs/lib/net/fetch.js.map +1 -1
  44. package/cjs/typings/global.d.ts +4 -0
  45. package/components/Button/Button.styles/Button.styles.js +1 -1
  46. package/components/Button/Button.styles/Button.styles.js.map +1 -1
  47. package/components/Input/Input/Input.js +18 -5
  48. package/components/Input/Input/Input.js.map +1 -1
  49. package/components/Input/Input.d.ts +8 -4
  50. package/components/Input/Input.md +49 -0
  51. package/components/Input/Input.styles/Input.styles.js +1 -1
  52. package/components/Input/Input.styles/Input.styles.js.map +1 -1
  53. package/components/Loader/Loader/Loader.js +0 -2
  54. package/components/Loader/Loader/Loader.js.map +1 -1
  55. package/components/Modal/Modal/Modal.js +0 -1
  56. package/components/Modal/Modal/Modal.js.map +1 -1
  57. package/components/Modal/Modal.styles/Modal.styles.js +21 -27
  58. package/components/Modal/Modal.styles/Modal.styles.js.map +1 -1
  59. package/components/Modal/Modal.styles.d.ts +0 -2
  60. package/components/Modal/ModalBody/ModalBody.js +0 -2
  61. package/components/Modal/ModalBody/ModalBody.js.map +1 -1
  62. package/components/Modal/ModalFooter/ModalFooter.js +2 -6
  63. package/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
  64. package/components/Modal/ModalHeader/ModalHeader.js +2 -6
  65. package/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
  66. package/components/PasswordInput/PasswordInput/PasswordInput.js +6 -5
  67. package/components/PasswordInput/PasswordInput/PasswordInput.js.map +1 -1
  68. package/components/Toast/Toast.md +2 -2
  69. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js +11 -9
  70. package/internal/CustomComboBox/CustomComboBox/CustomComboBox.js.map +1 -1
  71. package/internal/InputLikeText/InputLikeText/InputLikeText.js +5 -2
  72. package/internal/InputLikeText/InputLikeText/InputLikeText.js.map +1 -1
  73. package/internal/ThemeShowcase/VariablesCollector.d.ts +1 -1
  74. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js +1 -6
  75. package/internal/ZIndex/ZIndexStorage/ZIndexStorage.js.map +1 -1
  76. package/internal/ZIndex/ZIndexStorage.d.ts +0 -5
  77. package/internal/themes/DarkTheme/DarkTheme.js +2 -3
  78. package/internal/themes/DarkTheme/DarkTheme.js.map +1 -1
  79. package/internal/themes/DarkTheme.d.ts +1 -0
  80. package/internal/themes/DefaultTheme/DefaultTheme.js +5 -4
  81. package/internal/themes/DefaultTheme/DefaultTheme.js.map +1 -1
  82. package/internal/themes/DefaultTheme.d.ts +1 -0
  83. package/lib/ModalStack/ModalStack.js +2 -1
  84. package/lib/ModalStack/ModalStack.js.map +1 -1
  85. package/lib/net/fetch/fetch.js +2 -3
  86. package/lib/net/fetch/fetch.js.map +1 -1
  87. package/package.json +2 -5
  88. package/typings/global.d.ts +4 -0
@@ -1,9 +1,11 @@
1
1
  "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");exports.__esModule = true;exports.ModalStack = void 0;
2
- var _eventemitter = _interopRequireDefault(require("eventemitter3"));var
2
+ var _eventemitter = _interopRequireDefault(require("eventemitter3"));
3
3
 
4
4
 
5
5
 
6
6
 
7
+ var _SSRSafe = require("./SSRSafe");var
8
+
7
9
 
8
10
 
9
11
 
@@ -66,7 +68,7 @@ ModalStack = /*#__PURE__*/function () {function ModalStack() {}ModalStack.
66
68
  };ModalStack.
67
69
 
68
70
  getStackInfo = function getStackInfo() {
69
- var globalWithStack = global;
71
+ var globalWithStack = _SSRSafe.globalThat;
70
72
  return (
71
73
  globalWithStack.__ReactUIStackInfo || (
72
74
  globalWithStack.__ReactUIStackInfo = {
@@ -1 +1 @@
1
- {"version":3,"sources":["ModalStack.ts"],"names":["ModalStack","add","component","onChange","getStackInfo","emitter","mounted","unshift","changeHandler","_token","addListener","emit","remove","removeListener","index","indexOf","splice","isBlocking","length","wantsToBlock","globalWithStack","global","__ReactUIStackInfo","EventEmitter","isModal","isSidePage","deepestSidePages","filter","i","pop","props","blockBackground","isReactUIInstance","componentName","instance","constructor","Object","prototype","hasOwnProperty","call","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["import React from 'react';\nimport EventEmitter from 'eventemitter3';\n\nimport { SidePageProps } from '../components/SidePage';\nimport { ModalProps } from '../components/Modal';\n\ninterface StackInfo {\n emitter: EventEmitter;\n mounted: React.Component[];\n}\n\ninterface GlobalWithStackInfo {\n __ReactUIStackInfo?: StackInfo;\n}\n\nexport interface ModalStackSubscription {\n remove: () => void;\n}\n\nexport class ModalStack {\n public static add(\n component: React.Component,\n onChange: (stack: readonly React.Component[]) => void,\n ): ModalStackSubscription {\n const { emitter, mounted } = ModalStack.getStackInfo();\n mounted.unshift(component);\n const changeHandler = () => onChange([...mounted]);\n const _token = emitter.addListener('change', changeHandler);\n emitter.emit('change');\n return {\n remove: () => {\n // Backwards compatible with versions 0.x and 1.w which using the fbemitter package\n if ('remove' in _token) {\n // @ts-expect-error: `remove` is method of `ModalStack`.\n _token.remove();\n return;\n }\n\n emitter.removeListener('change', changeHandler);\n },\n };\n }\n\n public static remove(component: React.Component) {\n const { emitter, mounted } = ModalStack.getStackInfo();\n const index = mounted.indexOf(component);\n if (index !== -1) {\n mounted.splice(index, 1);\n }\n emitter.emit('change');\n }\n\n /**\n * Determines if stack component is allowed to block background\n */\n public static isBlocking(component: React.Component): boolean {\n const { mounted } = ModalStack.getStackInfo();\n for (let index = 0; index < mounted.length; index++) {\n if (ModalStack.wantsToBlock(mounted[index])) {\n // only the highest component in stack\n // that wants to block is allowed to do it\n return component === mounted[index];\n }\n }\n return false;\n }\n\n private static getStackInfo(): StackInfo {\n const globalWithStack = global as GlobalWithStackInfo;\n return (\n globalWithStack.__ReactUIStackInfo ||\n (globalWithStack.__ReactUIStackInfo = {\n emitter: new EventEmitter(),\n mounted: [],\n })\n );\n }\n\n private static wantsToBlock(component: React.Component): boolean {\n if (isModal(component)) {\n return true;\n }\n\n if (isSidePage(component)) {\n const { mounted } = ModalStack.getStackInfo();\n const deepestSidePages = mounted.filter((i) => isSidePage(i)).pop();\n return !!component.props.blockBackground && component === deepestSidePages;\n }\n\n return false;\n }\n}\n\n/**\n * Specific check for component type by its instance\n */\nconst isReactUIInstance = <T>(componentName: string) => {\n return (instance: React.Component): instance is React.Component<T> => {\n const { constructor } = instance;\n\n return (\n Object.prototype.hasOwnProperty.call(constructor, '__KONTUR_REACT_UI__') &&\n // @ts-expect-error: React doesn't know about existence of __KONTUR_REACT_UI__.\n constructor.__KONTUR_REACT_UI__ === componentName\n );\n };\n};\n\nconst isSidePage = isReactUIInstance<SidePageProps>('SidePage');\n\nconst isModal = isReactUIInstance<ModalProps>('Modal');\n"]}
1
+ {"version":3,"sources":["ModalStack.ts"],"names":["ModalStack","add","component","onChange","getStackInfo","emitter","mounted","unshift","changeHandler","_token","addListener","emit","remove","removeListener","index","indexOf","splice","isBlocking","length","wantsToBlock","globalWithStack","globalThat","__ReactUIStackInfo","EventEmitter","isModal","isSidePage","deepestSidePages","filter","i","pop","props","blockBackground","isReactUIInstance","componentName","instance","constructor","Object","prototype","hasOwnProperty","call","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["import React from 'react';\nimport EventEmitter from 'eventemitter3';\n\nimport { SidePageProps } from '../components/SidePage';\nimport { ModalProps } from '../components/Modal';\n\nimport { globalThat } from './SSRSafe';\n\ninterface StackInfo {\n emitter: EventEmitter;\n mounted: React.Component[];\n}\n\ninterface GlobalWithStackInfo {\n __ReactUIStackInfo?: StackInfo;\n}\n\nexport interface ModalStackSubscription {\n remove: () => void;\n}\n\nexport class ModalStack {\n public static add(\n component: React.Component,\n onChange: (stack: readonly React.Component[]) => void,\n ): ModalStackSubscription {\n const { emitter, mounted } = ModalStack.getStackInfo();\n mounted.unshift(component);\n const changeHandler = () => onChange([...mounted]);\n const _token = emitter.addListener('change', changeHandler);\n emitter.emit('change');\n return {\n remove: () => {\n // Backwards compatible with versions 0.x and 1.w which using the fbemitter package\n if ('remove' in _token) {\n // @ts-expect-error: `remove` is method of `ModalStack`.\n _token.remove();\n return;\n }\n\n emitter.removeListener('change', changeHandler);\n },\n };\n }\n\n public static remove(component: React.Component) {\n const { emitter, mounted } = ModalStack.getStackInfo();\n const index = mounted.indexOf(component);\n if (index !== -1) {\n mounted.splice(index, 1);\n }\n emitter.emit('change');\n }\n\n /**\n * Determines if stack component is allowed to block background\n */\n public static isBlocking(component: React.Component): boolean {\n const { mounted } = ModalStack.getStackInfo();\n for (let index = 0; index < mounted.length; index++) {\n if (ModalStack.wantsToBlock(mounted[index])) {\n // only the highest component in stack\n // that wants to block is allowed to do it\n return component === mounted[index];\n }\n }\n return false;\n }\n\n private static getStackInfo(): StackInfo {\n const globalWithStack = globalThat as GlobalWithStackInfo;\n return (\n globalWithStack.__ReactUIStackInfo ||\n (globalWithStack.__ReactUIStackInfo = {\n emitter: new EventEmitter(),\n mounted: [],\n })\n );\n }\n\n private static wantsToBlock(component: React.Component): boolean {\n if (isModal(component)) {\n return true;\n }\n\n if (isSidePage(component)) {\n const { mounted } = ModalStack.getStackInfo();\n const deepestSidePages = mounted.filter((i) => isSidePage(i)).pop();\n return !!component.props.blockBackground && component === deepestSidePages;\n }\n\n return false;\n }\n}\n\n/**\n * Specific check for component type by its instance\n */\nconst isReactUIInstance = <T>(componentName: string) => {\n return (instance: React.Component): instance is React.Component<T> => {\n const { constructor } = instance;\n\n return (\n Object.prototype.hasOwnProperty.call(constructor, '__KONTUR_REACT_UI__') &&\n // @ts-expect-error: React doesn't know about existence of __KONTUR_REACT_UI__.\n constructor.__KONTUR_REACT_UI__ === componentName\n );\n };\n};\n\nconst isSidePage = isReactUIInstance<SidePageProps>('SidePage');\n\nconst isModal = isReactUIInstance<ModalProps>('Modal');\n"]}
@@ -1,4 +1,6 @@
1
- "use strict";exports.__esModule = true;exports.fetch = fetch;
1
+ "use strict";exports.__esModule = true;exports.fetch = fetch;var _SSRSafe = require("../SSRSafe");
2
+
3
+
2
4
 
3
5
 
4
6
 
@@ -34,9 +36,7 @@ function fetch(uri, options) {if (options === void 0) {options = {};}
34
36
  }
35
37
 
36
38
  function createXHR() {
37
- // @ts-expect-error: XDomainRequest is IE-specific API, therefore it was removed from `lib.d.ts`. See: https://github.com/Microsoft/TypeScript/issues/2927.
38
- if (global.XDomainRequest) {
39
- // @ts-expect-error: Read the comment above.
39
+ if ('XDomainRequest' in _SSRSafe.globalThat) {
40
40
  return new XDomainRequest();
41
41
  }
42
42
  return new XMLHttpRequest();
@@ -1 +1 @@
1
- {"version":3,"sources":["fetch.ts"],"names":["fetch","uri","options","method","xhr","createXHR","promise","Promise","resolve","reject","onerror","ontimeout","onload","ok","status","statusText","text","responseText","json","JSON","parse","open","send","body","global","XDomainRequest","XMLHttpRequest"],"mappings":";;;;;;;;;;AAUO,SAASA,KAAT,CAAeC,GAAf,EAA4BC,OAA5B,EAA8F,KAAlEA,OAAkE,cAAlEA,OAAkE,GAAZ,EAAY;AACnG,MAAMC,MAAM,GAAGD,OAAO,CAACC,MAAR,IAAkB,KAAjC;AACA,MAAMC,GAAG,GAAGC,SAAS,EAArB;;AAEA,MAAMC,OAAO,GAAG,IAAIC,OAAJ,CAA6B,UAACC,OAAD,EAAUC,MAAV,EAAqB;AAChEL,IAAAA,GAAG,CAACM,OAAJ,GAAcD,MAAd;AACAL,IAAAA,GAAG,CAACO,SAAJ,GAAgBF,MAAhB;;AAEAL,IAAAA,GAAG,CAACQ,MAAJ,GAAa,YAAM;AACjBJ,MAAAA,OAAO,CAAC;AACNK,QAAAA,EAAE,EAAET,GAAG,CAACU,MAAJ,IAAc,GAAd,IAAqBV,GAAG,CAACU,MAAJ,GAAa,GADhC;AAENA,QAAAA,MAAM,EAAEV,GAAG,CAACU,MAFN;AAGNC,QAAAA,UAAU,EAAEX,GAAG,CAACW,UAHV;AAINC,QAAAA,IAAI,EAAE,wBAAMT,OAAO,CAACC,OAAR,CAAgBJ,GAAG,CAACa,YAApB,CAAN,EAJA;AAKNC,QAAAA,IAAI,EAAE,wBAAMX,OAAO,CAACC,OAAR,CAAgBW,IAAI,CAACC,KAAL,CAAWhB,GAAG,CAACa,YAAf,CAAhB,CAAN,EALA,EAAD,CAAP;;AAOD,KARD;AASD,GAbe,CAAhB;;AAeAb,EAAAA,GAAG,CAACiB,IAAJ,CAASlB,MAAT,EAAiBF,GAAjB;AACAG,EAAAA,GAAG,CAACkB,IAAJ,CAASpB,OAAO,CAACqB,IAAjB;;AAEA,SAAOjB,OAAP;AACD;;AAED,SAASD,SAAT,GAAqB;AACnB;AACA,MAAImB,MAAM,CAACC,cAAX,EAA2B;AACzB;AACA,WAAO,IAAIA,cAAJ,EAAP;AACD;AACD,SAAO,IAAIC,cAAJ,EAAP;AACD","sourcesContent":["interface ApiResponseType {\n ok: boolean;\n status: number;\n statusText: string;\n text: () => Promise<string>;\n json: () => Promise<Record<string, any>>;\n}\n\ntype Result = Promise<ApiResponseType>;\n\nexport function fetch(uri: string, options: { method?: 'GET' | 'POST'; body?: string } = {}): Result {\n const method = options.method || 'GET';\n const xhr = createXHR();\n\n const promise = new Promise<ApiResponseType>((resolve, reject) => {\n xhr.onerror = reject;\n xhr.ontimeout = reject;\n\n xhr.onload = () => {\n resolve({\n ok: xhr.status >= 200 && xhr.status < 300,\n status: xhr.status,\n statusText: xhr.statusText,\n text: () => Promise.resolve(xhr.responseText),\n json: () => Promise.resolve(JSON.parse(xhr.responseText)),\n });\n };\n });\n\n xhr.open(method, uri);\n xhr.send(options.body);\n\n return promise;\n}\n\nfunction createXHR() {\n // @ts-expect-error: XDomainRequest is IE-specific API, therefore it was removed from `lib.d.ts`. See: https://github.com/Microsoft/TypeScript/issues/2927.\n if (global.XDomainRequest) {\n // @ts-expect-error: Read the comment above.\n return new XDomainRequest();\n }\n return new XMLHttpRequest();\n}\n"]}
1
+ {"version":3,"sources":["fetch.ts"],"names":["fetch","uri","options","method","xhr","createXHR","promise","Promise","resolve","reject","onerror","ontimeout","onload","ok","status","statusText","text","responseText","json","JSON","parse","open","send","body","globalThat","XDomainRequest","XMLHttpRequest"],"mappings":"6DAAA;;;;;;;;;;;;AAYO,SAASA,KAAT,CAAeC,GAAf,EAA4BC,OAA5B,EAA8F,KAAlEA,OAAkE,cAAlEA,OAAkE,GAAZ,EAAY;AACnG,MAAMC,MAAM,GAAGD,OAAO,CAACC,MAAR,IAAkB,KAAjC;AACA,MAAMC,GAAG,GAAGC,SAAS,EAArB;;AAEA,MAAMC,OAAO,GAAG,IAAIC,OAAJ,CAA6B,UAACC,OAAD,EAAUC,MAAV,EAAqB;AAChEL,IAAAA,GAAG,CAACM,OAAJ,GAAcD,MAAd;AACAL,IAAAA,GAAG,CAACO,SAAJ,GAAgBF,MAAhB;;AAEAL,IAAAA,GAAG,CAACQ,MAAJ,GAAa,YAAM;AACjBJ,MAAAA,OAAO,CAAC;AACNK,QAAAA,EAAE,EAAET,GAAG,CAACU,MAAJ,IAAc,GAAd,IAAqBV,GAAG,CAACU,MAAJ,GAAa,GADhC;AAENA,QAAAA,MAAM,EAAEV,GAAG,CAACU,MAFN;AAGNC,QAAAA,UAAU,EAAEX,GAAG,CAACW,UAHV;AAINC,QAAAA,IAAI,EAAE,wBAAMT,OAAO,CAACC,OAAR,CAAgBJ,GAAG,CAACa,YAApB,CAAN,EAJA;AAKNC,QAAAA,IAAI,EAAE,wBAAMX,OAAO,CAACC,OAAR,CAAgBW,IAAI,CAACC,KAAL,CAAWhB,GAAG,CAACa,YAAf,CAAhB,CAAN,EALA,EAAD,CAAP;;AAOD,KARD;AASD,GAbe,CAAhB;;AAeAb,EAAAA,GAAG,CAACiB,IAAJ,CAASlB,MAAT,EAAiBF,GAAjB;AACAG,EAAAA,GAAG,CAACkB,IAAJ,CAASpB,OAAO,CAACqB,IAAjB;;AAEA,SAAOjB,OAAP;AACD;;AAED,SAASD,SAAT,GAAqB;AACnB,MAAI,oBAAoBmB,mBAAxB,EAAoC;AAClC,WAAO,IAAIC,cAAJ,EAAP;AACD;AACD,SAAO,IAAIC,cAAJ,EAAP;AACD","sourcesContent":["import { globalThat } from '../SSRSafe';\n\ninterface ApiResponseType {\n ok: boolean;\n status: number;\n statusText: string;\n text: () => Promise<string>;\n json: () => Promise<Record<string, any>>;\n}\n\ntype Result = Promise<ApiResponseType>;\n\nexport function fetch(uri: string, options: { method?: 'GET' | 'POST'; body?: string } = {}): Result {\n const method = options.method || 'GET';\n const xhr = createXHR();\n\n const promise = new Promise<ApiResponseType>((resolve, reject) => {\n xhr.onerror = reject;\n xhr.ontimeout = reject;\n\n xhr.onload = () => {\n resolve({\n ok: xhr.status >= 200 && xhr.status < 300,\n status: xhr.status,\n statusText: xhr.statusText,\n text: () => Promise.resolve(xhr.responseText),\n json: () => Promise.resolve(JSON.parse(xhr.responseText)),\n });\n };\n });\n\n xhr.open(method, uri);\n xhr.send(options.body);\n\n return promise;\n}\n\nfunction createXHR() {\n if ('XDomainRequest' in globalThat) {\n return new XDomainRequest();\n }\n return new XMLHttpRequest();\n}\n"]}
@@ -4,3 +4,7 @@ declare interface Window {
4
4
  }
5
5
 
6
6
  declare var __RetailUiZIndexes: number[];
7
+
8
+ // XDomainRequest is IE-specific API, therefore it was removed from `lib.d.ts`
9
+ // See: https://github.com/Microsoft/TypeScript/issues/2927
10
+ declare var XDomainRequest: typeof XMLHttpRequest;
@@ -27,7 +27,7 @@ export var styles = memoizeStyle({
27
27
  return css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteralLoose(["\n box-shadow: 0 0 0 ", " ", ", inset 0 0 0 ", " ", ";\n "])), t.btnOutlineWidth, t.btnBorderColorError, t.btnInsetWidth, t.btnInsetColor);
28
28
  },
29
29
  outlineLink: function outlineLink() {
30
- return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n "])));
30
+ return css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteralLoose(["\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n top: -2px;\n "])));
31
31
  },
32
32
  outlineLinkWarning: function outlineLinkWarning(t) {
33
33
  return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteralLoose(["\n background-color: ", ";\n "])), t.btnWarningSecondary);
@@ -1 +1 @@
1
- {"version":3,"sources":["Button.styles.ts"],"names":["css","memoizeStyle","prefix","resetButton","resetText","isFirefox","buttonUseMixin","buttonHoverMixin","buttonActiveMixin","buttonSizeMixin","arrowOutlineMixin","buttonSizeMixinIE11","globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","arrowLeft","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedFocused","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightMargin","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","btnLinkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active:enabled .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover:enabled {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active:enabled {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover:enabled,\n &:active:enabled {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover:enabled,\n &:active:enabled,\n &:active:hover:enabled {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover:enabled,\n &:active:enabled,\n &:hover:active:enabled {\n ${checkedStyles}\n }\n `;\n },\n\n checkedFocused(t: Theme) {\n return css`\n &:hover:enabled {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightMargin() {\n return css`\n margin-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n margin-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n margin-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n margin-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n margin-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover:enabled,\n &:active:enabled {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n color: ${t.btnLinkActiveColor};\n }\n `;\n },\n});\n"]}
1
+ {"version":3,"sources":["Button.styles.ts"],"names":["css","memoizeStyle","prefix","resetButton","resetText","isFirefox","buttonUseMixin","buttonHoverMixin","buttonActiveMixin","buttonSizeMixin","arrowOutlineMixin","buttonSizeMixinIE11","globalClasses","arrowHelper","arrowHelperTop","arrowHelperBottom","caption","innerShadow","styles","root","t","btnBackgroundClip","outline","outlineWarning","btnOutlineWidth","btnBorderColorWarning","btnInsetWidth","btnInsetColor","outlineError","btnBorderColorError","outlineLink","outlineLinkWarning","btnWarningSecondary","outlineLinkError","btnErrorSecondary","sizeSmall","btnBorderRadiusSmall","btnFontSizeSmall","btnLineHeightSmall","btnPaddingXSmall","btnPaddingYSmall","fontFamilyCompensationBaseline","sizeSmallIE11","sizeMedium","btnBorderRadiusMedium","btnFontSizeMedium","btnLineHeightMedium","btnPaddingXMedium","btnPaddingYMedium","sizeMediumIE11","sizeLarge","btnBorderRadiusLarge","btnFontSizeLarge","btnLineHeightLarge","btnPaddingXLarge","btnPaddingYLarge","sizeLargeIE11","link","btnLinkBorderRadius","btnLinkColor","btnLinkHoverColor","btnLinkHoverTextDecoration","activeStyles","linkFocus","linkDisabled","btnLinkDisabledColor","focus","btnOutlineColorFocus","btnFocusShadowWidth","btnBorderColorFocus","disabled","btnBorderWidth","btnDisabledBorderColor","btnDisabledBg","btnDisabledTextColor","arrowWarning","arrowError","arrowFocus","arrow","arrowLeft","btnDefaultBg","btnDefaultBgStart","btnDefaultBgEnd","btnDefaultTextColor","btnDefaultBorderColor","btnDefaultBorderBottomColor","btnDefaultHoverBg","btnDefaultHoverBgStart","btnDefaultHoverBgEnd","btnDefaultHoverBorderColor","btnDefaultHoverBorderBottomColor","primary","btnPrimaryBg","btnPrimaryBgStart","btnPrimaryBgEnd","btnPrimaryTextColor","btnPrimaryBorderColor","btnPrimaryBorderBottomColor","btnPrimaryHoverBg","btnPrimaryHoverBgStart","btnPrimaryHoverBgEnd","btnPrimaryHoverBorderColor","btnPrimaryHoverBorderBottomColor","success","btnSuccessBg","btnSuccessBgStart","btnSuccessBgEnd","btnSuccessTextColor","btnSuccessBorderColor","btnSuccessBorderBottomColor","btnSuccessHoverBg","btnSuccessHoverBgStart","btnSuccessHoverBgEnd","btnSuccessHoverBorderColor","btnSuccessHoverBorderBottomColor","danger","btnDangerBg","btnDangerBgStart","btnDangerBgEnd","btnDangerTextColor","btnDangerBorderColor","btnDangerBorderBottomColor","btnDangerHoverBg","btnDangerHoverBgStart","btnDangerHoverBgEnd","btnDangerHoverBorderColor","btnDangerHoverBorderBottomColor","pay","btnPayBg","btnPayBgStart","btnPayBgEnd","btnPayTextColor","btnPayBorderColor","btnPayBorderBottomColor","btnPayHoverBg","btnPayHoverBgStart","btnPayHoverBgEnd","btnPayHoverBorderColor","btnPayHoverBorderBottomColor","checked","checkedStyles","btnDefaultCheckedBorderColor","btnCheckedBg","btnCheckedTextColor","btnCheckedShadow","btnArrowBgImageChecked","checkedFocused","checkedDisabled","btnCheckedDisabledBorderColor","btnCheckedDisabledBg","btnCheckedDisabledColor","btnCheckedDisabledShadow","captionLink","captionTranslated","captionDisabled","wrap","wrapSmall","btnHeightSmall","wrapMedium","btnHeightMedium","wrapLarge","btnHeightLarge","narrow","noPadding","noRightPadding","iconNoRightMargin","iconLink","btnLinkIconMarginRight","wrapLink","wrapArrow","wrapArrowLeft","icon","iconSmall","btnIconSizeSmall","btnIconGapSmall","iconMedium","btnIconSizeMedium","btnIconGapMedium","iconLarge","btnIconSizeLarge","btnIconGapLarge","borderless","loading","visibilityHidden","btnDefaultActiveBg","btnDefaultActiveShadow","btnDefaultActiveBorderColor","btnDefaultActiveBorderTopColor","btnArrowBgImageActive","btnPrimaryActiveBg","btnPrimaryActiveShadow","btnPrimaryActiveBorderColor","btnPrimaryActiveBorderTopColor","btnSuccessActiveBg","btnSuccessActiveShadow","btnSuccessActiveBorderColor","btnSuccessActiveBorderTopColor","btnDangerActiveBg","btnDangerActiveShadow","btnDangerActiveBorderColor","btnDangerActiveBorderTopColor","btnPayActiveBg","btnPayActiveShadow","btnPayActiveBorderColor","btnPayActiveBorderTopColor","btnLinkActiveColor"],"mappings":"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","sourcesContent":["import { css, memoizeStyle, prefix } from '../../lib/theming/Emotion';\nimport { Theme } from '../../lib/theming/Theme';\nimport { resetButton, resetText } from '../../lib/styles/Mixins';\nimport { isFirefox } from '../../lib/client';\n\nimport {\n buttonUseMixin,\n buttonHoverMixin,\n buttonActiveMixin,\n buttonSizeMixin,\n arrowOutlineMixin,\n buttonSizeMixinIE11,\n} from './Button.mixins';\n\nexport const globalClasses = prefix('button')({\n arrowHelper: 'arrow-helper',\n arrowHelperTop: 'arrow-helper-top',\n arrowHelperBottom: 'arrow-helper-bottom',\n caption: 'caption',\n innerShadow: 'inner-shadow',\n});\n\nexport const styles = memoizeStyle({\n root(t: Theme) {\n return css`\n ${resetButton()};\n ${resetText()};\n\n background-clip: ${t.btnBackgroundClip};\n background-position: center;\n background-repeat: no-repeat;\n background-size: contain;\n cursor: pointer;\n display: inline-block;\n position: relative;\n text-align: center;\n width: 100%;\n height: 100%; // fix height in ie11\n\n .${globalClasses.innerShadow} {\n content: '';\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n &::after {\n content: '';\n display: inline-block;\n vertical-align: baseline;\n width: 0;\n }\n\n &:active:enabled .${globalClasses.caption} {\n transform: translateY(1px);\n }\n `;\n },\n\n outline() {\n return css`\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n `;\n },\n\n outlineWarning(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorWarning},\n inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineError(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnOutlineWidth} ${t.btnBorderColorError}, inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n `;\n },\n\n outlineLink() {\n return css`\n box-shadow: none;\n left: -2px;\n right: -2px;\n bottom: -2px;\n top: -2px;\n `;\n },\n\n outlineLinkWarning(t: Theme) {\n return css`\n background-color: ${t.btnWarningSecondary};\n `;\n },\n\n outlineLinkError(t: Theme) {\n return css`\n background-color: ${t.btnErrorSecondary};\n `;\n },\n\n sizeSmall(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusSmall};\n\n ${buttonSizeMixin(\n t.btnFontSizeSmall,\n t.btnLineHeightSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeSmallIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeSmall,\n t.btnPaddingXSmall,\n t.btnPaddingYSmall,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMedium(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusMedium};\n\n ${buttonSizeMixin(\n t.btnFontSizeMedium,\n t.btnLineHeightMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeMediumIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeMedium,\n t.btnPaddingXMedium,\n t.btnPaddingYMedium,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLarge(t: Theme) {\n return css`\n border-radius: ${t.btnBorderRadiusLarge};\n\n ${buttonSizeMixin(\n t.btnFontSizeLarge,\n t.btnLineHeightLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n sizeLargeIE11(t: Theme) {\n return css`\n ${buttonSizeMixinIE11(\n t.btnFontSizeLarge,\n t.btnPaddingXLarge,\n t.btnPaddingYLarge,\n t.fontFamilyCompensationBaseline,\n )};\n `;\n },\n\n link(t: Theme) {\n return css`\n background: none;\n border-radius: ${t.btnLinkBorderRadius};\n border: none;\n box-shadow: none;\n white-space: nowrap;\n color: ${t.btnLinkColor};\n display: inline;\n line-height: inherit !important; // override size mixin\n margin: 0;\n padding: 0 !important; // override size mixin\n height: auto !important; // override size mixin\n\n &:hover:enabled {\n color: ${t.btnLinkHoverColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n }\n &:active:enabled {\n ${activeStyles.link(t)}\n }\n `;\n },\n\n linkFocus(t: Theme) {\n return css`\n color: ${t.btnLinkColor};\n text-decoration: ${t.btnLinkHoverTextDecoration};\n `;\n },\n\n linkDisabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n\n &,\n &:hover:enabled,\n &:active:enabled {\n color: ${t.btnLinkDisabledColor};\n }\n `;\n },\n\n focus(t: Theme) {\n return css`\n position: relative;\n z-index: 2;\n\n &,\n &:hover:enabled,\n &:active:enabled,\n &:active:hover:enabled {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n }\n `;\n },\n\n disabled(t: Theme) {\n return css`\n cursor: default;\n pointer-events: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDisabledBorderColor};\n\n background-image: none;\n background-color: ${t.btnDisabledBg};\n color: ${t.btnDisabledTextColor};\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 0 ${t.btnDisabledBorderColor};\n }\n `;\n },\n\n arrowWarning(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorWarning, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowError(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnInsetColor};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorError, t.btnOutlineWidth, t.btnInsetColor)}\n `;\n },\n\n arrowFocus(t: Theme) {\n return css`\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus};\n\n ${arrowOutlineMixin(t.btnInsetWidth, t.btnBorderColorFocus, t.btnOutlineWidth, t.btnOutlineColorFocus)}\n `;\n },\n\n arrow() {\n return css`\n background: inherit;\n border-radius: inherit;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n .${globalClasses.arrowHelper} {\n width: 100%;\n height: 50%;\n position: absolute;\n left: 0;\n background: inherit;\n background-size: 200% 200%;\n border-radius: inherit;\n background-clip: padding-box;\n\n // fix ugly arrow edge\n &:before {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background: inherit;\n border-radius: inherit;\n transform: translateX(${isFirefox ? `0.2px` : `0.3px`});\n }\n }\n\n .${globalClasses.arrowHelperTop} {\n top: 0;\n transform: skewX(30deg);\n transform-origin: top;\n background-position-y: top;\n border-bottom-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n bottom: -1px;\n }\n }\n\n .${globalClasses.arrowHelperBottom} {\n bottom: 0;\n transform: skewX(-30deg);\n transform-origin: bottom;\n background-position-y: bottom;\n border-top-right-radius: 1px;\n\n // fix ugly line in the\n // middle of the button\n &:before {\n top: -1px;\n }\n }\n `;\n },\n\n arrowLeft() {\n return css`\n transform: scaleX(-1);\n `;\n },\n\n default(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDefaultBg,\n t.btnDefaultBgStart,\n t.btnDefaultBgEnd,\n t.btnDefaultTextColor,\n t.btnDefaultBorderColor,\n t.btnDefaultBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDefaultHoverBg,\n t.btnDefaultHoverBgStart,\n t.btnDefaultHoverBgEnd,\n t.btnDefaultHoverBorderColor,\n t.btnDefaultHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.default(t)}\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPrimaryBg,\n t.btnPrimaryBgStart,\n t.btnPrimaryBgEnd,\n t.btnPrimaryTextColor,\n t.btnPrimaryBorderColor,\n t.btnPrimaryBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPrimaryHoverBg,\n t.btnPrimaryHoverBgStart,\n t.btnPrimaryHoverBgEnd,\n t.btnPrimaryHoverBorderColor,\n t.btnPrimaryHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.primary(t)}\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnSuccessBg,\n t.btnSuccessBgStart,\n t.btnSuccessBgEnd,\n t.btnSuccessTextColor,\n t.btnSuccessBorderColor,\n t.btnSuccessBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnSuccessHoverBg,\n t.btnSuccessHoverBgStart,\n t.btnSuccessHoverBgEnd,\n t.btnSuccessHoverBorderColor,\n t.btnSuccessHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.success(t)}\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnDangerBg,\n t.btnDangerBgStart,\n t.btnDangerBgEnd,\n t.btnDangerTextColor,\n t.btnDangerBorderColor,\n t.btnDangerBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnDangerHoverBg,\n t.btnDangerHoverBgStart,\n t.btnDangerHoverBgEnd,\n t.btnDangerHoverBorderColor,\n t.btnDangerHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.danger(t)}\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n ${buttonUseMixin(\n t.btnPayBg,\n t.btnPayBgStart,\n t.btnPayBgEnd,\n t.btnPayTextColor,\n t.btnPayBorderColor,\n t.btnPayBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n ${buttonHoverMixin(\n t.btnPayHoverBg,\n t.btnPayHoverBgStart,\n t.btnPayHoverBgEnd,\n t.btnPayHoverBorderColor,\n t.btnPayHoverBorderBottomColor,\n t.btnBorderWidth,\n )};\n\n &:active:enabled {\n ${activeStyles.pay(t)}\n }\n `;\n },\n\n checked(t: Theme) {\n const checkedStyles = `\n background-image: none;\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnDefaultCheckedBorderColor};\n background-color: ${t.btnCheckedBg};\n color: ${t.btnCheckedTextColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnDefaultCheckedBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: ${t.btnArrowBgImageChecked};\n }\n }\n `;\n\n return css`\n ${checkedStyles}\n\n &:hover:enabled,\n &:active:enabled,\n &:hover:active:enabled {\n ${checkedStyles}\n }\n `;\n },\n\n checkedFocused(t: Theme) {\n return css`\n &:hover:enabled {\n box-shadow: inset 0 0 0 ${t.btnInsetWidth} ${t.btnOutlineColorFocus},\n 0 0 0 ${t.btnFocusShadowWidth} ${t.btnBorderColorFocus};\n border-color: ${t.btnBorderColorFocus};\n }\n `;\n },\n\n checkedDisabled(t: Theme) {\n return css`\n box-shadow: 0 0 0 ${t.btnBorderWidth} ${t.btnCheckedDisabledBorderColor};\n background-color: ${t.btnCheckedDisabledBg};\n color: ${t.btnCheckedDisabledColor};\n\n .${globalClasses.innerShadow} {\n box-shadow: ${t.btnCheckedDisabledShadow};\n }\n\n .${globalClasses.arrowHelper} {\n box-shadow: ${t.btnBorderWidth} 0 0 ${t.btnCheckedDisabledBorderColor};\n\n &.${globalClasses.arrowHelperTop} {\n background-image: none;\n }\n }\n `;\n },\n\n caption() {\n return css`\n position: relative;\n white-space: nowrap;\n display: inline-block;\n width: 100%;\n vertical-align: top;\n `;\n },\n\n captionLink() {\n return css`\n display: inline;\n transform: none !important; // override root:active style\n `;\n },\n\n captionTranslated() {\n return css`\n transform: translateY(1px);\n `;\n },\n\n captionDisabled() {\n return css`\n transform: none !important; // override root:active style\n `;\n },\n\n wrap(t: Theme) {\n return css`\n box-sizing: border-box;\n display: inline-block;\n line-height: normal;\n padding: ${t.btnBorderWidth};\n `;\n },\n\n wrapSmall(t: Theme) {\n return css`\n height: ${t.btnHeightSmall};\n `;\n },\n\n wrapMedium(t: Theme) {\n return css`\n height: ${t.btnHeightMedium};\n `;\n },\n\n wrapLarge(t: Theme) {\n return css`\n height: ${t.btnHeightLarge};\n `;\n },\n\n narrow() {\n return css`\n padding-left: 5px;\n padding-right: 5px;\n `;\n },\n\n noPadding() {\n return css`\n padding-left: 0;\n padding-right: 0;\n `;\n },\n\n noRightPadding() {\n return css`\n padding-right: 0;\n `;\n },\n\n iconNoRightMargin() {\n return css`\n margin-right: 0;\n `;\n },\n\n iconLink(t: Theme) {\n return css`\n margin-right: ${t.btnLinkIconMarginRight};\n `;\n },\n\n wrapLink() {\n return css`\n padding: 0;\n `;\n },\n\n wrapArrow() {\n return css`\n margin-right: 10px;\n `;\n },\n\n wrapArrowLeft() {\n return css`\n margin-right: 0;\n margin-left: 10px;\n `;\n },\n\n icon() {\n return css`\n display: inline-block;\n `;\n },\n iconSmall(t: Theme) {\n return css`\n width: ${t.btnIconSizeSmall};\n margin-right: ${t.btnIconGapSmall};\n `;\n },\n iconMedium(t: Theme) {\n return css`\n width: ${t.btnIconSizeMedium};\n margin-right: ${t.btnIconGapMedium};\n `;\n },\n iconLarge(t: Theme) {\n return css`\n width: ${t.btnIconSizeLarge};\n margin-right: ${t.btnIconGapLarge};\n `;\n },\n\n borderless() {\n return css`\n &,\n &:hover:enabled,\n &:active:enabled {\n box-shadow: none;\n .${globalClasses.arrowHelperTop}, .${globalClasses.arrowHelperBottom} {\n box-shadow: none;\n }\n }\n `;\n },\n\n loading() {\n return css`\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: inherit;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 10;\n `;\n },\n\n visibilityHidden() {\n return css`\n visibility: hidden;\n `;\n },\n});\n\nexport const activeStyles = memoizeStyle({\n default(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnDefaultActiveBg,\n t.btnDefaultActiveShadow,\n t.btnDefaultActiveBorderColor,\n t.btnDefaultActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n primary(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnPrimaryActiveBg,\n t.btnPrimaryActiveShadow,\n t.btnPrimaryActiveBorderColor,\n t.btnPrimaryActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n success(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnSuccessActiveBg,\n t.btnSuccessActiveShadow,\n t.btnSuccessActiveBorderColor,\n t.btnSuccessActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n danger(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnDangerActiveBg,\n t.btnDangerActiveShadow,\n t.btnDangerActiveBorderColor,\n t.btnDangerActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n pay(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n ${buttonActiveMixin(\n t.btnPayActiveBg,\n t.btnPayActiveShadow,\n t.btnPayActiveBorderColor,\n t.btnPayActiveBorderTopColor,\n t.btnBorderWidth,\n t.btnArrowBgImageActive,\n )};\n }\n `;\n },\n\n link(t: Theme) {\n return css`\n &,\n &:hover:enabled {\n color: ${t.btnLinkActiveColor};\n }\n `;\n },\n});\n"]}
@@ -104,7 +104,8 @@ var Input = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$C
104
104
  borderless = props.borderless,
105
105
  value = props.value,
106
106
  align = props.align,
107
- type = props.type,
107
+ _props$type = props.type,
108
+ type = _props$type === void 0 ? 'text' : _props$type,
108
109
  mask = props.mask,
109
110
  maskChar = props.maskChar,
110
111
  alwaysShowMask = props.alwaysShowMask,
@@ -144,17 +145,19 @@ var Input = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$C
144
145
  textAlign: align
145
146
  },
146
147
  ref: _this.refInput,
147
- type: 'text',
148
+ type: type,
148
149
  placeholder: !_this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,
149
150
  disabled: disabled,
150
151
  'aria-describedby': ariaDescribedby
151
152
  });
152
153
 
153
- if (type === 'password') {
154
- inputProps.type = type;
154
+ var typesDisallowedWithMask = ['number', 'date', 'time', 'hidden'];
155
+ var input = mask && !typesDisallowedWithMask.includes(type) ? _this.renderMaskedInput(inputProps, mask) : /*#__PURE__*/React.createElement('input', inputProps);
156
+
157
+ if (type === 'hidden') {
158
+ return input;
155
159
  }
156
160
 
157
- var input = mask ? _this.renderMaskedInput(inputProps, mask) : /*#__PURE__*/React.createElement('input', inputProps);
158
161
  return /*#__PURE__*/React.createElement("label", _extends({
159
162
  "data-tid": InputDataTids.root
160
163
  }, labelProps), /*#__PURE__*/React.createElement("span", {
@@ -201,6 +204,14 @@ var Input = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$C
201
204
 
202
205
  if (_this.props.selectAllOnFocus) {
203
206
  // https://github.com/facebook/react/issues/7769
207
+ // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange
208
+ var allowedTypes = ['text', 'password', 'tel', 'search', 'url'];
209
+ var canBeSelected = !_this.props.type || _this.props.type && allowedTypes.includes(_this.props.type);
210
+
211
+ if (!canBeSelected) {
212
+ return;
213
+ }
214
+
204
215
  _this.input && !isIE11 ? _this.selectAll() : _this.delaySelectAll();
205
216
  }
206
217
 
@@ -397,6 +408,8 @@ var Input = rootNode(_class = (_temp = _class2 = /*#__PURE__*/function (_React$C
397
408
  });
398
409
  }
399
410
  /**
411
+ * Работает с типами `text`, `password`, `tel`, `search`, `url`
412
+ * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)
400
413
  * @public
401
414
  */
402
415
  ;
@@ -1 +1 @@
1
- {"version":3,"sources":["Input.tsx"],"names":["invariant","React","raf","isIE11","isEdge","isKeyBackspace","isKeyDelete","someKeys","needsPolyfillPlaceholder","MaskedInput","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","styles","InputDataTids","root","Input","getProps","defaultProps","state","blinking","focused","selectAllId","blinkTimeout","input","selectAll","setSelectionRange","value","length","delaySelectAll","cancelDelayedSelectAll","cancel","cancelBlink","callback","clearTimeout","setState","renderMain","props","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","warning","leftIcon","rightIcon","borderless","align","type","mask","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","disabled","onUnexpectedInput","prefix","suffix","formatChars","ariaDescribedby","rest","labelProps","className","theme","getSizeClassName","focus","blink","focusFallback","warningFallback","errorFallback","style","inputProps","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","ref","refInput","isMaskVisible","undefined","renderMaskedInput","createElement","sideContainer","renderLeftIcon","renderPrefix","wrapper","renderPlaceholder","rightContainer","renderSuffix","renderRightIcon","element","event","fieldIsEmpty","target","e","isDeleteKey","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","prefixDisabled","suffixDisabled","componentWillUnmount","blur","getNode","offsetWidth","window","setTimeout","start","end","Error","document","activeElement","render","setRootNode","getIconSizeClassname","right","rightIconLarge","leftIconLarge","rightIconMedium","leftIconMedium","rightIconSmall","leftIconSmall","renderIcon","icon","sizeClassName","iconNode","Function","useDefaultColor","iconFocus","iconDisabled","defaultValue","placeholderDisabled","placeholderFocus","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","Boolean","Component","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport invariant from 'invariant';\nimport React, { AriaAttributes } from 'react';\nimport raf from 'raf';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { MaskedInput } from '../../internal/MaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Input.styles';\n\nexport type InputSize = 'small' | 'medium' | 'large';\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type InputType = 'password' | 'text';\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport interface InputProps\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /**\n * Иконка слева\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n leftIcon?: InputIconType;\n /**\n * Иконка справа\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n rightIcon?: InputIconType;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /** Режим прозрачной рамки */\n borderless?: boolean;\n /** Выравнивание текста */\n align?: InputAlign;\n /** Паттерн маски */\n mask?: Nullable<string>;\n /** Символ маски */\n maskChar?: Nullable<string>;\n /**\n * Словарь символов-регулярок для задания маски\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }\n */\n formatChars?: Record<string, string>;\n /** Показывать символы маски */\n alwaysShowMask?: boolean;\n /** Размер */\n size?: InputSize;\n /** onValueChange */\n onValueChange?: (value: string) => void;\n /** Вызывается на label */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /** Тип */\n type?: InputType;\n /** Значение */\n value?: string;\n capture?: boolean;\n\n /**\n * Префикс\n * `ReactNode` перед значением, но после иконки\n */\n prefix?: React.ReactNode;\n /**\n * Суффикс\n * `ReactNode` после значения, но перед правой иконкой\n */\n suffix?: React.ReactNode;\n /** Выделять введенное значение при фокусе */\n selectAllOnFocus?: boolean;\n /**\n * Обработчик неправильного ввода.\n * По-умолчанию, инпут вспыхивает синим.\n * Если передан - вызывается переданный обработчик,\n * в таком случае вспыхивание можно вызвать\n * публичным методом инстанса `blink()`.\n *\n * @param value значение инпута.\n */\n onUnexpectedInput?: (value: string) => void;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n }\n > {}\n\nexport interface InputState {\n blinking: boolean;\n focused: boolean;\n needsPolyfillPlaceholder: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'size'>>;\n\n/**\n * Интерфейс пропсов наследуется от `React.InputHTMLAttributes<HTMLInputElement>`.\n * Все пропсы кроме перечисленных, `className` и `style` передаются в `<input>`\n */\n@rootNode\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n };\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n public state: InputState = {\n needsPolyfillPlaceholder,\n blinking: false,\n focused: false,\n };\n\n private selectAllId: number | null = null;\n private theme!: Theme;\n private blinkTimeout = 0;\n private input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n }\n this.cancelDelayedSelectAll();\n }\n\n /**\n * @public\n */\n public focus() {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /**\n * @public\n */\n public getNode() {\n return this.input;\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.blinkTimeout) {\n this.cancelBlink(() => {\n // trigger reflow to restart animation\n // @see https://css-tricks.com/restart-css-animation/#article-header-id-0\n void (this.input && this.input.offsetWidth);\n this.blink();\n });\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = window.setTimeout(this.cancelBlink, 150);\n });\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number) {\n if (!this.input) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (document.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * @public\n */\n public selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private delaySelectAll = (): number => (this.selectAllId = raf(this.selectAll));\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n raf.cancel(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private cancelBlink = (callback?: () => void): void => {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n this.blinkTimeout = 0;\n if (this.state.blinking) {\n this.setState({ blinking: false }, callback);\n return;\n }\n }\n if (callback) {\n callback();\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type,\n mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\n 'aria-describedby': ariaDescribedby,\n ...rest\n } = props;\n\n const { blinking, focused } = this.state;\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused,\n [styles.blink(this.theme)]: blinking,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\n }),\n style: { width },\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n };\n\n const inputProps = {\n ...rest,\n className: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type: 'text',\n placeholder: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\n disabled,\n 'aria-describedby': ariaDescribedby,\n };\n\n if (type === 'password') {\n inputProps.type = type;\n }\n\n const input = mask ? this.renderMaskedInput(inputProps, mask) : React.createElement('input', inputProps);\n\n return (\n <label data-tid={InputDataTids.root} {...labelProps}>\n <span className={styles.sideContainer()}>\n {this.renderLeftIcon()}\n {this.renderPrefix()}\n </span>\n <span className={styles.wrapper()}>\n {input}\n {this.renderPlaceholder()}\n </span>\n <span className={cx(styles.sideContainer(), styles.rightContainer())}>\n {this.renderSuffix()}\n {this.renderRightIcon()}\n </span>\n </label>\n );\n };\n\n private renderMaskedInput(\n inputProps: React.InputHTMLAttributes<HTMLInputElement> & {\n capture?: boolean;\n },\n mask: string,\n ) {\n return (\n <MaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getIconSizeClassname(right = false) {\n switch (this.getProps().size) {\n case 'large':\n return right ? styles.rightIconLarge(this.theme) : styles.leftIconLarge(this.theme);\n case 'medium':\n return right ? styles.rightIconMedium(this.theme) : styles.leftIconMedium(this.theme);\n case 'small':\n default:\n return right ? styles.rightIconSmall(this.theme) : styles.leftIconSmall(this.theme);\n }\n }\n\n private renderLeftIcon() {\n return this.renderIcon(this.props.leftIcon, this.getIconSizeClassname());\n }\n\n private renderRightIcon() {\n return this.renderIcon(this.props.rightIcon, this.getIconSizeClassname(true));\n }\n\n private renderIcon(icon: InputIconType, sizeClassName: string) {\n if (!icon) {\n return null;\n }\n const { disabled } = this.props;\n const iconNode = icon instanceof Function ? icon() : icon;\n\n return (\n <span\n className={cx(styles.icon(), sizeClassName, styles.useDefaultColor(this.theme), {\n [styles.iconFocus(this.theme)]: this.state.focused,\n [styles.iconDisabled()]: disabled,\n })}\n >\n {iconNode}\n </span>\n );\n }\n\n private renderPlaceholder() {\n const { disabled } = this.props;\n const { focused } = this.state;\n let placeholder = null;\n\n if (\n this.state.needsPolyfillPlaceholder &&\n this.props.placeholder &&\n !this.isMaskVisible &&\n !this.props.value &&\n !this.props.defaultValue\n ) {\n placeholder = (\n <div\n className={cx(styles.placeholder(this.theme), {\n [styles.placeholderDisabled(this.theme)]: disabled,\n [styles.placeholderFocus(this.theme)]: focused,\n })}\n style={{ textAlign: this.props.align || 'inherit' }}\n >\n {this.props.placeholder}\n </div>\n );\n }\n\n return placeholder;\n }\n\n private getSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | MaskedInput | null) => {\n if (element instanceof MaskedInput) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n });\n\n if (this.props.selectAllOnFocus) {\n // https://github.com/facebook/react/issues/7769\n this.input && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private renderPrefix = () => {\n const { prefix, disabled } = this.props;\n\n if (!prefix) {\n return null;\n }\n\n return (\n <span className={cx(styles.prefix(this.theme), { [styles.prefixDisabled(this.theme)]: disabled })}>{prefix}</span>\n );\n };\n\n private renderSuffix = () => {\n const { suffix, disabled } = this.props;\n\n if (!suffix) {\n return null;\n }\n\n return (\n <span className={cx(styles.suffix(this.theme), { [styles.suffixDisabled(this.theme)]: disabled })}>{suffix}</span>\n );\n };\n}\n"]}
1
+ {"version":3,"sources":["Input.tsx"],"names":["invariant","React","raf","isIE11","isEdge","isKeyBackspace","isKeyDelete","someKeys","needsPolyfillPlaceholder","MaskedInput","ThemeContext","CommonWrapper","cx","rootNode","createPropsGetter","styles","InputDataTids","root","Input","getProps","defaultProps","state","blinking","focused","selectAllId","blinkTimeout","input","selectAll","setSelectionRange","value","length","delaySelectAll","cancelDelayedSelectAll","cancel","cancelBlink","callback","clearTimeout","setState","renderMain","props","onMouseEnter","onMouseLeave","onMouseOver","onKeyDown","onKeyPress","onValueChange","width","error","warning","leftIcon","rightIcon","borderless","align","type","mask","maskChar","alwaysShowMask","size","placeholder","selectAllOnFocus","disabled","onUnexpectedInput","prefix","suffix","formatChars","ariaDescribedby","rest","labelProps","className","theme","getSizeClassName","focus","blink","focusFallback","warningFallback","errorFallback","style","inputProps","inputFocus","inputDisabled","onChange","handleChange","onFocus","handleFocus","handleKeyDown","handleKeyPress","onBlur","handleBlur","textAlign","ref","refInput","isMaskVisible","undefined","typesDisallowedWithMask","includes","renderMaskedInput","createElement","sideContainer","renderLeftIcon","renderPrefix","wrapper","renderPlaceholder","rightContainer","renderSuffix","renderRightIcon","element","event","fieldIsEmpty","target","allowedTypes","canBeSelected","e","isDeleteKey","currentTarget","repeat","handleUnexpectedInput","maxLength","handleMaskedValueChange","prefixDisabled","suffixDisabled","componentWillUnmount","blur","getNode","offsetWidth","window","setTimeout","start","end","Error","document","activeElement","render","setRootNode","getIconSizeClassname","right","rightIconLarge","leftIconLarge","rightIconMedium","leftIconMedium","rightIconSmall","leftIconSmall","renderIcon","icon","sizeClassName","iconNode","Function","useDefaultColor","iconFocus","iconDisabled","defaultValue","placeholderDisabled","placeholderFocus","sizeLarge","sizeLargeFallback","sizeMedium","sizeMediumFallback","sizeSmall","sizeSmallFallback","Boolean","Component","__KONTUR_REACT_UI__"],"mappings":"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","sourcesContent":["// TODO: Enable this rule in functional components.\n/* eslint-disable @typescript-eslint/no-unused-vars */\nimport invariant from 'invariant';\nimport React, { AriaAttributes } from 'react';\nimport raf from 'raf';\n\nimport { isIE11, isEdge } from '../../lib/client';\nimport { isKeyBackspace, isKeyDelete, someKeys } from '../../lib/events/keyboard/identifiers';\nimport { needsPolyfillPlaceholder } from '../../lib/needsPolyfillPlaceholder';\nimport { Nullable, Override } from '../../typings/utility-types';\nimport { MaskedInput } from '../../internal/MaskedInput';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { cx } from '../../lib/theming/Emotion';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\n\nimport { styles } from './Input.styles';\n\nexport type InputSize = 'small' | 'medium' | 'large';\nexport type InputAlign = 'left' | 'center' | 'right';\nexport type InputType =\n | 'password'\n | 'text'\n | 'number'\n | 'tel'\n | 'search'\n | 'time'\n | 'date'\n | 'url'\n | 'email'\n | 'hidden';\nexport type InputIconType = React.ReactNode | (() => React.ReactNode);\n\nexport interface InputProps\n extends CommonProps,\n Override<\n React.InputHTMLAttributes<HTMLInputElement>,\n {\n /**\n * Иконка слева\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n leftIcon?: InputIconType;\n /**\n * Иконка справа\n * Если `ReactNode` применяются дефолтные стили для иконки\n * Если `() => ReactNode` применяются только стили для позиционирование\n */\n rightIcon?: InputIconType;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n /** Режим прозрачной рамки */\n borderless?: boolean;\n /** Выравнивание текста */\n align?: InputAlign;\n /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url` */\n mask?: Nullable<string>;\n /** Символ маски */\n maskChar?: Nullable<string>;\n /**\n * Словарь символов-регулярок для задания маски\n * @default { '9': '[0-9]', 'a': '[A-Za-z]', '*': '[A-Za-z0-9]' }\n */\n formatChars?: Record<string, string>;\n /** Показывать символы маски */\n alwaysShowMask?: boolean;\n /** Размер */\n size?: InputSize;\n /** onValueChange */\n onValueChange?: (value: string) => void;\n /** Вызывается на label */\n onMouseEnter?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;\n /** Вызывается на label */\n onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;\n /**\n * Тип. Возможные значения: 'password' | 'text' | 'number' | 'tel' | 'search' | 'time' | 'date' | 'url' | 'email' | 'hidden'\n * */\n type?: InputType;\n /** Значение */\n value?: string;\n capture?: boolean;\n\n /**\n * Префикс\n * `ReactNode` перед значением, но после иконки\n */\n prefix?: React.ReactNode;\n /**\n * Суффикс\n * `ReactNode` после значения, но перед правой иконкой\n */\n suffix?: React.ReactNode;\n /** Выделять введенное значение при фокусе. Работает с типами `text`, `password`, `tel`, `search`, `url`. [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange) */\n selectAllOnFocus?: boolean;\n /**\n * Обработчик неправильного ввода.\n * По-умолчанию, инпут вспыхивает синим.\n * Если передан - вызывается переданный обработчик,\n * в таком случае вспыхивание можно вызвать\n * публичным методом инстанса `blink()`.\n *\n * @param value значение инпута.\n */\n onUnexpectedInput?: (value: string) => void;\n /**\n * Атрибут для указания id элемента(-ов), описывающих его\n */\n 'aria-describedby'?: AriaAttributes['aria-describedby'];\n }\n > {}\n\nexport interface InputState {\n blinking: boolean;\n focused: boolean;\n needsPolyfillPlaceholder: boolean;\n}\n\nexport const InputDataTids = {\n root: 'Input__root',\n} as const;\n\ntype DefaultProps = Required<Pick<InputProps, 'size'>>;\n\n/**\n * Интерфейс пропсов наследуется от `React.InputHTMLAttributes<HTMLInputElement>`.\n * Все пропсы кроме перечисленных, `className` и `style` передаются в `<input>`\n */\n@rootNode\nexport class Input extends React.Component<InputProps, InputState> {\n public static __KONTUR_REACT_UI__ = 'Input';\n\n public static defaultProps: DefaultProps = {\n size: 'small',\n };\n\n private getProps = createPropsGetter(Input.defaultProps);\n\n public state: InputState = {\n needsPolyfillPlaceholder,\n blinking: false,\n focused: false,\n };\n\n private selectAllId: number | null = null;\n private theme!: Theme;\n private blinkTimeout = 0;\n private input: HTMLInputElement | null = null;\n private setRootNode!: TSetRootNode;\n\n public componentWillUnmount() {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n }\n this.cancelDelayedSelectAll();\n }\n\n /**\n * @public\n */\n public focus() {\n invariant(this.input, 'Cannot call \"focus\" because Input is not mounted');\n this.input.focus();\n }\n\n /**\n * @public\n */\n public blur() {\n invariant(this.input, 'Cannot call \"blur\" because Input is not mounted');\n this.input.blur();\n }\n\n /**\n * @public\n */\n public getNode() {\n return this.input;\n }\n\n /**\n * @public\n */\n public blink() {\n if (this.blinkTimeout) {\n this.cancelBlink(() => {\n // trigger reflow to restart animation\n // @see https://css-tricks.com/restart-css-animation/#article-header-id-0\n void (this.input && this.input.offsetWidth);\n this.blink();\n });\n return;\n }\n this.setState({ blinking: true }, () => {\n this.blinkTimeout = window.setTimeout(this.cancelBlink, 150);\n });\n }\n\n /**\n * @public\n * @param {number} start\n * @param {number} end\n */\n public setSelectionRange(start: number, end: number) {\n if (!this.input) {\n throw new Error('Cannot call \"setSelectionRange\" on unmounted Input');\n }\n\n if (document.activeElement !== this.input) {\n this.focus();\n }\n if (this.props.mask && this.props.value && this.props.value?.length < this.props.mask.length) {\n setTimeout(() => {\n this.input?.setSelectionRange(start, end);\n }, 150);\n } else {\n this.input?.setSelectionRange(start, end);\n }\n }\n\n public get isMaskVisible(): boolean {\n const { mask, alwaysShowMask } = this.props;\n const { focused } = this.state;\n return Boolean(mask && (focused || alwaysShowMask));\n }\n\n public render(): JSX.Element {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n return (\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.props}>\n {this.renderMain}\n </CommonWrapper>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n /**\n * Работает с типами `text`, `password`, `tel`, `search`, `url`\n * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)\n * @public\n */\n public selectAll = (): void => {\n if (this.input) {\n this.setSelectionRange(0, this.input.value.length);\n }\n };\n\n private delaySelectAll = (): number => (this.selectAllId = raf(this.selectAll));\n\n private cancelDelayedSelectAll = (): void => {\n if (this.selectAllId) {\n raf.cancel(this.selectAllId);\n this.selectAllId = null;\n }\n };\n\n private cancelBlink = (callback?: () => void): void => {\n if (this.blinkTimeout) {\n clearTimeout(this.blinkTimeout);\n this.blinkTimeout = 0;\n if (this.state.blinking) {\n this.setState({ blinking: false }, callback);\n return;\n }\n }\n if (callback) {\n callback();\n }\n };\n\n private renderMain = (props: CommonWrapperRestProps<InputProps>) => {\n const {\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n onKeyDown,\n onKeyPress,\n onValueChange,\n width,\n error,\n warning,\n leftIcon,\n rightIcon,\n borderless,\n value,\n align,\n type = 'text',\n mask,\n maskChar,\n alwaysShowMask,\n size,\n placeholder,\n selectAllOnFocus,\n disabled,\n onUnexpectedInput,\n prefix,\n suffix,\n formatChars,\n 'aria-describedby': ariaDescribedby,\n ...rest\n } = props;\n\n const { blinking, focused } = this.state;\n\n const labelProps = {\n className: cx(styles.root(this.theme), this.getSizeClassName(), {\n [styles.focus(this.theme)]: focused,\n [styles.blink(this.theme)]: blinking,\n [styles.borderless()]: borderless && !focused,\n [styles.disabled(this.theme)]: disabled,\n [styles.warning(this.theme)]: warning,\n [styles.error(this.theme)]: error,\n [styles.focusFallback(this.theme)]: focused && (isIE11 || isEdge),\n [styles.warningFallback(this.theme)]: warning && (isIE11 || isEdge),\n [styles.errorFallback(this.theme)]: error && (isIE11 || isEdge),\n }),\n style: { width },\n onMouseEnter,\n onMouseLeave,\n onMouseOver,\n };\n\n const inputProps = {\n ...rest,\n className: cx(styles.input(this.theme), {\n [styles.inputFocus(this.theme)]: focused,\n [styles.inputDisabled(this.theme)]: disabled,\n }),\n value,\n onChange: this.handleChange,\n onFocus: this.handleFocus,\n onKeyDown: this.handleKeyDown,\n onKeyPress: this.handleKeyPress,\n onBlur: this.handleBlur,\n style: { textAlign: align },\n ref: this.refInput,\n type,\n placeholder: !this.isMaskVisible && !needsPolyfillPlaceholder ? placeholder : undefined,\n disabled,\n 'aria-describedby': ariaDescribedby,\n };\n\n const typesDisallowedWithMask: InputType[] = ['number', 'date', 'time', 'hidden'];\n const input =\n mask && !typesDisallowedWithMask.includes(type)\n ? this.renderMaskedInput(inputProps, mask)\n : React.createElement('input', inputProps);\n\n if (type === 'hidden') {\n return input;\n }\n\n return (\n <label data-tid={InputDataTids.root} {...labelProps}>\n <span className={styles.sideContainer()}>\n {this.renderLeftIcon()}\n {this.renderPrefix()}\n </span>\n <span className={styles.wrapper()}>\n {input}\n {this.renderPlaceholder()}\n </span>\n <span className={cx(styles.sideContainer(), styles.rightContainer())}>\n {this.renderSuffix()}\n {this.renderRightIcon()}\n </span>\n </label>\n );\n };\n\n private renderMaskedInput(\n inputProps: React.InputHTMLAttributes<HTMLInputElement> & {\n capture?: boolean;\n },\n mask: string,\n ) {\n return (\n <MaskedInput\n {...inputProps}\n mask={mask}\n maskChar={this.props.maskChar}\n alwaysShowMask={this.props.alwaysShowMask}\n formatChars={this.props.formatChars}\n onChange={this.props.onChange}\n onValueChange={this.handleMaskedValueChange}\n onUnexpectedInput={this.handleUnexpectedInput}\n />\n );\n }\n\n private getIconSizeClassname(right = false) {\n switch (this.getProps().size) {\n case 'large':\n return right ? styles.rightIconLarge(this.theme) : styles.leftIconLarge(this.theme);\n case 'medium':\n return right ? styles.rightIconMedium(this.theme) : styles.leftIconMedium(this.theme);\n case 'small':\n default:\n return right ? styles.rightIconSmall(this.theme) : styles.leftIconSmall(this.theme);\n }\n }\n\n private renderLeftIcon() {\n return this.renderIcon(this.props.leftIcon, this.getIconSizeClassname());\n }\n\n private renderRightIcon() {\n return this.renderIcon(this.props.rightIcon, this.getIconSizeClassname(true));\n }\n\n private renderIcon(icon: InputIconType, sizeClassName: string) {\n if (!icon) {\n return null;\n }\n const { disabled } = this.props;\n const iconNode = icon instanceof Function ? icon() : icon;\n\n return (\n <span\n className={cx(styles.icon(), sizeClassName, styles.useDefaultColor(this.theme), {\n [styles.iconFocus(this.theme)]: this.state.focused,\n [styles.iconDisabled()]: disabled,\n })}\n >\n {iconNode}\n </span>\n );\n }\n\n private renderPlaceholder() {\n const { disabled } = this.props;\n const { focused } = this.state;\n let placeholder = null;\n\n if (\n this.state.needsPolyfillPlaceholder &&\n this.props.placeholder &&\n !this.isMaskVisible &&\n !this.props.value &&\n !this.props.defaultValue\n ) {\n placeholder = (\n <div\n className={cx(styles.placeholder(this.theme), {\n [styles.placeholderDisabled(this.theme)]: disabled,\n [styles.placeholderFocus(this.theme)]: focused,\n })}\n style={{ textAlign: this.props.align || 'inherit' }}\n >\n {this.props.placeholder}\n </div>\n );\n }\n\n return placeholder;\n }\n\n private getSizeClassName() {\n switch (this.getProps().size) {\n case 'large':\n return cx({\n [styles.sizeLarge(this.theme)]: true,\n [styles.sizeLargeFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'medium':\n return cx({\n [styles.sizeMedium(this.theme)]: true,\n [styles.sizeMediumFallback(this.theme)]: isIE11 || isEdge,\n });\n case 'small':\n default:\n return cx({\n [styles.sizeSmall(this.theme)]: true,\n [styles.sizeSmallFallback(this.theme)]: isIE11 || isEdge,\n });\n }\n }\n\n private refInput = (element: HTMLInputElement | MaskedInput | null) => {\n if (element instanceof MaskedInput) {\n this.input = element.input;\n } else {\n this.input = element;\n }\n };\n\n private handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (needsPolyfillPlaceholder) {\n const fieldIsEmpty = event.target.value === '';\n if (this.state.needsPolyfillPlaceholder !== fieldIsEmpty) {\n this.setState({ needsPolyfillPlaceholder: fieldIsEmpty });\n }\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(event.target.value);\n }\n\n if (this.props.onChange) {\n this.props.onChange(event);\n }\n };\n\n private handleFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({\n focused: true,\n });\n\n if (this.props.selectAllOnFocus) {\n // https://github.com/facebook/react/issues/7769\n // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n const allowedTypes: InputType[] = ['text', 'password', 'tel', 'search', 'url'];\n const canBeSelected = !this.props.type || (this.props.type && allowedTypes.includes(this.props.type));\n if (!canBeSelected) {\n return;\n }\n this.input && !isIE11 ? this.selectAll() : this.delaySelectAll();\n }\n\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n\n private handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyDown) {\n this.props.onKeyDown(e);\n }\n\n const isDeleteKey = someKeys(isKeyBackspace, isKeyDelete)(e);\n\n if (!e.currentTarget.value && isDeleteKey && !e.repeat) {\n this.handleUnexpectedInput();\n }\n };\n\n private handleKeyPress = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (this.props.onKeyPress) {\n this.props.onKeyPress(event);\n }\n\n if (this.props.maxLength === event.currentTarget.value.length) {\n this.handleUnexpectedInput(event.currentTarget.value);\n }\n };\n\n private handleMaskedValueChange = (value: string) => {\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n\n private handleUnexpectedInput = (value: string = this.props.value || '') => {\n if (this.props.onUnexpectedInput) {\n this.props.onUnexpectedInput(value);\n } else {\n this.blink();\n }\n };\n\n private handleBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n this.setState({ focused: false });\n\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n\n private renderPrefix = () => {\n const { prefix, disabled } = this.props;\n\n if (!prefix) {\n return null;\n }\n\n return (\n <span className={cx(styles.prefix(this.theme), { [styles.prefixDisabled(this.theme)]: disabled })}>{prefix}</span>\n );\n };\n\n private renderSuffix = () => {\n const { suffix, disabled } = this.props;\n\n if (!suffix) {\n return null;\n }\n\n return (\n <span className={cx(styles.suffix(this.theme), { [styles.suffixDisabled(this.theme)]: disabled })}>{suffix}</span>\n );\n };\n}\n"]}
@@ -3,7 +3,7 @@ import { Nullable, Override } from '../../typings/utility-types';
3
3
  import { CommonProps } from '../../internal/CommonWrapper';
4
4
  export declare type InputSize = 'small' | 'medium' | 'large';
5
5
  export declare type InputAlign = 'left' | 'center' | 'right';
6
- export declare type InputType = 'password' | 'text';
6
+ export declare type InputType = 'password' | 'text' | 'number' | 'tel' | 'search' | 'time' | 'date' | 'url' | 'email' | 'hidden';
7
7
  export declare type InputIconType = React.ReactNode | (() => React.ReactNode);
8
8
  export interface InputProps extends CommonProps, Override<React.InputHTMLAttributes<HTMLInputElement>, {
9
9
  /**
@@ -30,7 +30,7 @@ export interface InputProps extends CommonProps, Override<React.InputHTMLAttribu
30
30
  borderless?: boolean;
31
31
  /** Выравнивание текста */
32
32
  align?: InputAlign;
33
- /** Паттерн маски */
33
+ /** Паттерн маски. Доступен для типов `text`, `password`, `email`, `tel`, `search`, `url` */
34
34
  mask?: Nullable<string>;
35
35
  /** Символ маски */
36
36
  maskChar?: Nullable<string>;
@@ -51,7 +51,9 @@ export interface InputProps extends CommonProps, Override<React.InputHTMLAttribu
51
51
  onMouseLeave?: React.MouseEventHandler<HTMLLabelElement>;
52
52
  /** Вызывается на label */
53
53
  onMouseOver?: React.MouseEventHandler<HTMLLabelElement>;
54
- /** Тип */
54
+ /**
55
+ * Тип. Возможные значения: 'password' | 'text' | 'number' | 'tel' | 'search' | 'time' | 'date' | 'url' | 'email' | 'hidden'
56
+ * */
55
57
  type?: InputType;
56
58
  /** Значение */
57
59
  value?: string;
@@ -66,7 +68,7 @@ export interface InputProps extends CommonProps, Override<React.InputHTMLAttribu
66
68
  * `ReactNode` после значения, но перед правой иконкой
67
69
  */
68
70
  suffix?: React.ReactNode;
69
- /** Выделять введенное значение при фокусе */
71
+ /** Выделять введенное значение при фокусе. Работает с типами `text`, `password`, `tel`, `search`, `url`. [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange) */
70
72
  selectAllOnFocus?: boolean;
71
73
  /**
72
74
  * Обработчик неправильного ввода.
@@ -133,6 +135,8 @@ export declare class Input extends React.Component<InputProps, InputState> {
133
135
  get isMaskVisible(): boolean;
134
136
  render(): JSX.Element;
135
137
  /**
138
+ * Работает с типами `text`, `password`, `tel`, `search`, `url`
139
+ * [Документация](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange)
136
140
  * @public
137
141
  */
138
142
  selectAll: () => void;